q2-tecton-elements 1.27.1 → 1.28.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 (162) hide show
  1. package/dist/cjs/click-elsewhere_2.cjs.entry.js +258 -0
  2. package/dist/cjs/{index-ffd19146.js → index-7a73e106.js} +12 -52
  3. package/dist/cjs/loader.cjs.js +1 -1
  4. package/dist/cjs/q2-action-sheet.cjs.entry.js +1 -1
  5. package/dist/cjs/q2-avatar.cjs.entry.js +1 -1
  6. package/dist/cjs/q2-badge_2.cjs.entry.js +1 -1
  7. package/dist/cjs/q2-btn_2.cjs.entry.js +1 -1
  8. package/dist/cjs/q2-calendar.cjs.entry.js +128 -83
  9. package/dist/cjs/q2-card.cjs.entry.js +1 -1
  10. package/dist/cjs/q2-carousel-pane.cjs.entry.js +1 -1
  11. package/dist/cjs/q2-carousel.cjs.entry.js +1 -1
  12. package/dist/cjs/q2-chart-area.cjs.entry.js +1 -1
  13. package/dist/cjs/q2-chart-bar.cjs.entry.js +1 -1
  14. package/dist/cjs/q2-chart-donut.cjs.entry.js +1 -1
  15. package/dist/cjs/q2-checkbox-group.cjs.entry.js +1 -1
  16. package/dist/cjs/q2-checkbox.cjs.entry.js +1 -1
  17. package/dist/cjs/q2-dropdown-item.cjs.entry.js +1 -1
  18. package/dist/cjs/q2-dropdown.cjs.entry.js +44 -45
  19. package/dist/cjs/q2-editable-field.cjs.entry.js +1 -1
  20. package/dist/cjs/q2-icon.cjs.entry.js +1 -1
  21. package/dist/cjs/q2-loc.cjs.entry.js +1 -1
  22. package/dist/cjs/q2-message.cjs.entry.js +1 -1
  23. package/dist/cjs/q2-month-picker.cjs.entry.js +1 -1
  24. package/dist/cjs/q2-optgroup_2.cjs.entry.js +1 -1
  25. package/dist/cjs/{q2-option-list_2.cjs.entry.js → q2-option-list.cjs.entry.js} +3 -167
  26. package/dist/cjs/q2-pagination.cjs.entry.js +1 -1
  27. package/dist/cjs/q2-pill.cjs.entry.js +1 -1
  28. package/dist/cjs/q2-radio-group.cjs.entry.js +1 -1
  29. package/dist/cjs/q2-radio.cjs.entry.js +1 -1
  30. package/dist/cjs/q2-section.cjs.entry.js +1 -1
  31. package/dist/cjs/q2-select.cjs.entry.js +11 -6
  32. package/dist/cjs/q2-stepper-pane.cjs.entry.js +1 -1
  33. package/dist/cjs/q2-stepper-vertical.cjs.entry.js +1 -1
  34. package/dist/cjs/q2-stepper.cjs.entry.js +1 -1
  35. package/dist/cjs/q2-tab-container.cjs.entry.js +1 -1
  36. package/dist/cjs/q2-tag.cjs.entry.js +1 -1
  37. package/dist/cjs/q2-tecton-elements.cjs.js +1 -1
  38. package/dist/cjs/q2-textarea.cjs.entry.js +1 -1
  39. package/dist/cjs/q2-tooltip.cjs.entry.js +1 -1
  40. package/dist/collection/components/q2-avatar/styles.css +3 -7
  41. package/dist/collection/components/q2-calendar/helpers.js +37 -11
  42. package/dist/collection/components/q2-calendar/index.js +174 -91
  43. package/dist/collection/components/q2-calendar/styles.css +5 -68
  44. package/dist/collection/components/q2-dropdown/index.js +123 -66
  45. package/dist/collection/components/q2-dropdown/styles.css +3 -89
  46. package/dist/collection/components/q2-select/index.js +10 -5
  47. package/dist/collection/utils/index.js +11 -51
  48. package/dist/components/index11.js +1 -1
  49. package/dist/components/index15.js +12 -52
  50. package/dist/components/index3.js +1 -1
  51. package/dist/components/index7.js +1 -1
  52. package/dist/components/index8.js +1 -1
  53. package/dist/components/q2-calendar.js +154 -101
  54. package/dist/components/q2-card.js +1 -1
  55. package/dist/components/q2-carousel.js +1 -1
  56. package/dist/components/q2-checkbox-group.js +1 -1
  57. package/dist/components/q2-checkbox.js +1 -1
  58. package/dist/components/q2-dropdown.js +66 -59
  59. package/dist/components/q2-radio-group.js +1 -1
  60. package/dist/components/q2-radio.js +1 -1
  61. package/dist/components/q2-select.js +11 -6
  62. package/dist/components/q2-stepper-pane.js +1 -1
  63. package/dist/components/q2-stepper-vertical.js +1 -1
  64. package/dist/components/q2-stepper.js +1 -1
  65. package/dist/components/q2-tab-container.js +1 -1
  66. package/dist/components/q2-textarea.js +1 -1
  67. package/dist/docs.json +144 -4
  68. package/dist/esm/click-elsewhere_2.entry.js +253 -0
  69. package/dist/esm/{index-a0cc60e3.js → index-576f618c.js} +12 -52
  70. package/dist/esm/loader.js +1 -1
  71. package/dist/esm/q2-action-sheet.entry.js +1 -1
  72. package/dist/esm/q2-avatar.entry.js +1 -1
  73. package/dist/esm/q2-badge_2.entry.js +1 -1
  74. package/dist/esm/q2-btn_2.entry.js +1 -1
  75. package/dist/esm/q2-calendar.entry.js +128 -83
  76. package/dist/esm/q2-card.entry.js +1 -1
  77. package/dist/esm/q2-carousel-pane.entry.js +1 -1
  78. package/dist/esm/q2-carousel.entry.js +1 -1
  79. package/dist/esm/q2-chart-area.entry.js +1 -1
  80. package/dist/esm/q2-chart-bar.entry.js +1 -1
  81. package/dist/esm/q2-chart-donut.entry.js +1 -1
  82. package/dist/esm/q2-checkbox-group.entry.js +1 -1
  83. package/dist/esm/q2-checkbox.entry.js +1 -1
  84. package/dist/esm/q2-dropdown-item.entry.js +1 -1
  85. package/dist/esm/q2-dropdown.entry.js +44 -45
  86. package/dist/esm/q2-editable-field.entry.js +1 -1
  87. package/dist/esm/q2-icon.entry.js +1 -1
  88. package/dist/esm/q2-loc.entry.js +1 -1
  89. package/dist/esm/q2-message.entry.js +1 -1
  90. package/dist/esm/q2-month-picker.entry.js +1 -1
  91. package/dist/esm/q2-optgroup_2.entry.js +1 -1
  92. package/dist/esm/{q2-option-list_2.entry.js → q2-option-list.entry.js} +4 -167
  93. package/dist/esm/q2-pagination.entry.js +1 -1
  94. package/dist/esm/q2-pill.entry.js +1 -1
  95. package/dist/esm/q2-radio-group.entry.js +1 -1
  96. package/dist/esm/q2-radio.entry.js +1 -1
  97. package/dist/esm/q2-section.entry.js +1 -1
  98. package/dist/esm/q2-select.entry.js +11 -6
  99. package/dist/esm/q2-stepper-pane.entry.js +1 -1
  100. package/dist/esm/q2-stepper-vertical.entry.js +1 -1
  101. package/dist/esm/q2-stepper.entry.js +1 -1
  102. package/dist/esm/q2-tab-container.entry.js +1 -1
  103. package/dist/esm/q2-tag.entry.js +1 -1
  104. package/dist/esm/q2-tecton-elements.js +1 -1
  105. package/dist/esm/q2-textarea.entry.js +1 -1
  106. package/dist/esm/q2-tooltip.entry.js +1 -1
  107. package/dist/q2-tecton-elements/p-0b7003c4.entry.js +1 -0
  108. package/dist/q2-tecton-elements/{p-0b8943da.entry.js → p-0d92ab4a.entry.js} +1 -1
  109. package/dist/q2-tecton-elements/p-138db98d.entry.js +1 -0
  110. package/dist/q2-tecton-elements/{p-a298cbfb.entry.js → p-1b9e07b4.entry.js} +1 -1
  111. package/dist/q2-tecton-elements/{p-bafb5e70.entry.js → p-1e57a843.entry.js} +1 -1
  112. package/dist/q2-tecton-elements/{p-ac6dd5b1.entry.js → p-2423b9a9.entry.js} +1 -1
  113. package/dist/q2-tecton-elements/{p-396fd275.entry.js → p-2bb447c3.entry.js} +1 -1
  114. package/dist/q2-tecton-elements/{p-85e780b2.entry.js → p-3422207a.entry.js} +1 -1
  115. package/dist/q2-tecton-elements/{p-edcf49fd.entry.js → p-39989362.entry.js} +1 -1
  116. package/dist/q2-tecton-elements/{p-3dca7465.entry.js → p-3aad6a45.entry.js} +1 -1
  117. package/dist/q2-tecton-elements/{p-ef657f8f.entry.js → p-4d2b7f2e.entry.js} +1 -1
  118. package/dist/q2-tecton-elements/{p-869e899c.entry.js → p-4ffde81a.entry.js} +1 -1
  119. package/dist/q2-tecton-elements/{p-d06d752f.entry.js → p-55bdd480.entry.js} +1 -1
  120. package/dist/q2-tecton-elements/p-590adc15.entry.js +1 -0
  121. package/dist/q2-tecton-elements/{p-949fa312.entry.js → p-5cd51157.entry.js} +1 -1
  122. package/dist/q2-tecton-elements/p-5e14a790.entry.js +1 -0
  123. package/dist/q2-tecton-elements/{p-12e65423.entry.js → p-6524d5f3.entry.js} +1 -1
  124. package/dist/q2-tecton-elements/{p-521c9085.entry.js → p-68908be9.entry.js} +1 -1
  125. package/dist/q2-tecton-elements/{p-9367dc29.entry.js → p-6975e5e4.entry.js} +1 -1
  126. package/dist/q2-tecton-elements/p-6bb3789b.entry.js +1 -0
  127. package/dist/q2-tecton-elements/{p-5a670d93.entry.js → p-6db208c7.entry.js} +1 -1
  128. package/dist/q2-tecton-elements/p-78b7ea4e.entry.js +1 -0
  129. package/dist/q2-tecton-elements/{p-2b8a8981.entry.js → p-7a702d92.entry.js} +1 -1
  130. package/dist/q2-tecton-elements/{p-fb768d19.entry.js → p-7e1a14ea.entry.js} +1 -1
  131. package/dist/q2-tecton-elements/p-921ea070.js +1 -0
  132. package/dist/q2-tecton-elements/{p-04b9a7ee.entry.js → p-a63e64f0.entry.js} +1 -1
  133. package/dist/q2-tecton-elements/p-b9bbfaf7.entry.js +1 -0
  134. package/dist/q2-tecton-elements/{p-d69cb7d1.entry.js → p-bbd2c530.entry.js} +1 -1
  135. package/dist/q2-tecton-elements/{p-05bdc0aa.entry.js → p-c19e143e.entry.js} +1 -1
  136. package/dist/q2-tecton-elements/{p-256e5161.entry.js → p-c8525f80.entry.js} +1 -1
  137. package/dist/q2-tecton-elements/{p-fcad1609.entry.js → p-c93341d5.entry.js} +1 -1
  138. package/dist/q2-tecton-elements/{p-8545c3cb.entry.js → p-d6824ce5.entry.js} +1 -1
  139. package/dist/q2-tecton-elements/{p-f3e4bb52.entry.js → p-ddfb393a.entry.js} +1 -1
  140. package/dist/q2-tecton-elements/{p-9292bd80.entry.js → p-df3fb1e7.entry.js} +1 -1
  141. package/dist/q2-tecton-elements/{p-fe3625ad.entry.js → p-ed77f0c2.entry.js} +1 -1
  142. package/dist/q2-tecton-elements/{p-25ea01d3.entry.js → p-ed91f837.entry.js} +1 -1
  143. package/dist/q2-tecton-elements/{p-1d28c600.entry.js → p-fa0e471c.entry.js} +1 -1
  144. package/dist/q2-tecton-elements/q2-tecton-elements.esm.js +1 -1
  145. package/dist/test/helpers.js +1 -1
  146. package/dist/types/components/q2-calendar/helpers.d.ts +1 -0
  147. package/dist/types/components/q2-calendar/index.d.ts +22 -12
  148. package/dist/types/components/q2-dropdown/index.d.ts +12 -8
  149. package/dist/types/components.d.ts +24 -0
  150. package/dist/types/utils/index.d.ts +4 -9
  151. package/dist/types/workspace/workspace/{tecton-production_release_1.27.x → tecton-production_release_1.28.x}/packages/q2-tecton-elements/.stencil/test/helpers.d.ts +1 -1
  152. package/package.json +3 -3
  153. package/dist/cjs/click-elsewhere.cjs.entry.js +0 -93
  154. package/dist/esm/click-elsewhere.entry.js +0 -89
  155. package/dist/q2-tecton-elements/p-2453cd92.js +0 -1
  156. package/dist/q2-tecton-elements/p-31b655b6.entry.js +0 -1
  157. package/dist/q2-tecton-elements/p-72374b8e.entry.js +0 -1
  158. package/dist/q2-tecton-elements/p-8e652d59.entry.js +0 -1
  159. package/dist/q2-tecton-elements/p-aae8b9fc.entry.js +0 -1
  160. package/dist/q2-tecton-elements/p-be0d3bfe.entry.js +0 -1
  161. package/dist/q2-tecton-elements/p-c1d33fd2.entry.js +0 -1
  162. package/dist/q2-tecton-elements/p-ee1f3114.entry.js +0 -1
@@ -96,9 +96,15 @@ export namespace Components {
96
96
  * @deprecated
97
97
  */
98
98
  "onsuccess": (e: CustomEvent) => void;
99
+ "open": boolean;
99
100
  "optional": boolean;
100
101
  "placeholder": string;
102
+ /**
103
+ * @deprecated
104
+ */
101
105
  "popDirection": 'up' | 'down';
106
+ "popoverDirection": 'up' | 'down';
107
+ "popoverMinHeight": number;
102
108
  "readonly": boolean;
103
109
  "startDate": string;
104
110
  "typeable": boolean;
@@ -251,7 +257,13 @@ export namespace Components {
251
257
  "icon": string;
252
258
  "label": string;
253
259
  "name": string;
260
+ "open": boolean;
261
+ /**
262
+ * @deprecated
263
+ */
254
264
  "popDirection": 'up' | 'down';
265
+ "popoverDirection": 'up' | 'down';
266
+ "popoverMinHeight": number;
255
267
  "resolvedType": string;
256
268
  "type": 'icon' | 'fab' | 'custom' | 'primary' | 'secondary' | 'neutral';
257
269
  }
@@ -1133,9 +1145,15 @@ declare namespace LocalJSX {
1133
1145
  * @deprecated
1134
1146
  */
1135
1147
  "onsuccess"?: (e: CustomEvent) => void;
1148
+ "open"?: boolean;
1136
1149
  "optional"?: boolean;
1137
1150
  "placeholder"?: string;
1151
+ /**
1152
+ * @deprecated
1153
+ */
1138
1154
  "popDirection"?: 'up' | 'down';
1155
+ "popoverDirection"?: 'up' | 'down';
1156
+ "popoverMinHeight"?: number;
1139
1157
  "readonly"?: boolean;
1140
1158
  "startDate"?: string;
1141
1159
  "typeable"?: boolean;
@@ -1293,7 +1311,13 @@ declare namespace LocalJSX {
1293
1311
  "icon"?: string;
1294
1312
  "label"?: string;
1295
1313
  "name"?: string;
1314
+ "open"?: boolean;
1315
+ /**
1316
+ * @deprecated
1317
+ */
1296
1318
  "popDirection"?: 'up' | 'down';
1319
+ "popoverDirection"?: 'up' | 'down';
1320
+ "popoverMinHeight"?: number;
1297
1321
  "resolvedType"?: string;
1298
1322
  "type"?: 'icon' | 'fab' | 'custom' | 'primary' | 'secondary' | 'neutral';
1299
1323
  }
@@ -27,16 +27,11 @@ export declare function pick(props: string[]): (obj: object) => object;
27
27
  export declare function loc(key: string, subs?: IDict<any> | string[]): string;
28
28
  export declare function labelDOM(target: FormFieldTypes): any;
29
29
  export declare function handleAriaLabel(target: Q2Input | Q2Select | Q2Radio | Q2Checkbox | Q2EditableField | Q2Dropdown | Q2DropdownItem | Q2Loading | Q2Carousel | Q2Calendar | Q2Btn): void;
30
+ /**
31
+ * Handles when a prop has been renamed on a component without introducing a breaking change.
32
+ */
33
+ export declare function handleRenamedProp(target: object, oldProp: string, newProp: string, removeOldProp?: boolean): void;
30
34
  export declare function messagesDOM(target: FormFieldTypes): any;
31
35
  export declare function setMessageHeight(target: FormFieldTypes): void;
32
- export interface ISetPopPropertiesTarget {
33
- popDirection: 'up' | 'down';
34
- privatePopDirection: 'up' | 'down';
35
- dropdownContainer?: HTMLDivElement;
36
- inputField?: HTMLQ2InputElement | HTMLButtonElement;
37
- controlElement?: HTMLQ2BtnElement;
38
- minPopHeight?: number;
39
- }
40
- export declare function setPopProperties(target: ISetPopPropertiesTarget): "up" | "down";
41
36
  export declare const resizeIframe: () => void;
42
37
  export declare const handleColor: (target: Q2Btn) => void;
@@ -15,4 +15,4 @@ export declare const getFocusedOptionValue: (page: E2EPage) => Promise<string>;
15
15
  export declare const getFocusedTagName: (page: E2EPage) => Promise<string>;
16
16
  export declare function getFocusedAttribute(page: E2EPage, attribute: string): Promise<string>;
17
17
  export declare const testDeprecatedAriaLabel: (element: E2EElement, label?: string) => Promise<void>;
18
- export declare const checkStylesForCompilationIssues: (page: E2EPage, selector: string) => Promise<any>;
18
+ export declare const checkStylesForCompilationIssues: (page: E2EPage, selector: string) => Promise<any[]>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "q2-tecton-elements",
3
- "version": "1.27.1",
3
+ "version": "1.28.1",
4
4
  "description": "Q2 Tecton Custom Elements",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",
@@ -50,9 +50,9 @@
50
50
  "dependencies": {
51
51
  "@stencil/core": "2.19.2",
52
52
  "puppeteer": "^10.4.0",
53
- "q2-tecton-common": "^1.27.1",
53
+ "q2-tecton-common": "1.28.1",
54
54
  "smoothscroll-polyfill": "^0.4.4",
55
55
  "swiper": "8.4.4"
56
56
  },
57
- "gitHead": "048346b1ade23b133b315ca9c2e6028f776f7042"
57
+ "gitHead": "a933a21150f46ae325eaf5742d2e43c0b752cdec"
58
58
  }
@@ -1,93 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- const index = require('./index-734296a7.js');
6
-
7
- const ClickElsewhere = class {
8
- constructor(hostRef) {
9
- index.registerInstance(this, hostRef);
10
- this.change = index.createEvent(this, "change", 7);
11
- /**
12
- * Listens for mouse and window events that happen outside this click-elsewhere element so we can close popovers when users click outside them
13
- */
14
- this.mouseEventList = ['mousedown', 'dragstart', 'touchstart'];
15
- this.isCurrentlyFocused = false;
16
- this.mouseHandler = (event) => {
17
- const isCurrentlyFocused = this.shadowContains(this.findActiveElement());
18
- const aboutToBeFocused = this.shadowContains(this.shadowEventTarget(event)) || this.originatesInSlots(event.target);
19
- if (!aboutToBeFocused && (this.isCurrentlyFocused || isCurrentlyFocused)) {
20
- this.isCurrentlyFocused = false;
21
- this.change.emit();
22
- return;
23
- }
24
- this.isCurrentlyFocused = aboutToBeFocused || isCurrentlyFocused;
25
- };
26
- this.windowBlurHandler = () => {
27
- const activeElement = this.findActiveElement();
28
- if (activeElement === document.body && this.isCurrentlyFocused) {
29
- this.isCurrentlyFocused = false;
30
- this.change.emit();
31
- return;
32
- }
33
- };
34
- }
35
- /* TODO: Stencil/Rollup is having issues compiling without this here. Will try to remove in future Stencil upgrade. */
36
- /* tslint:disable:no-empty */
37
- componentWillLoad() { }
38
- /* tslint:enable:no-empty */
39
- connectedCallback() {
40
- this.mouseEventList.forEach((eventName) => {
41
- document.addEventListener(eventName, this.mouseHandler);
42
- });
43
- window.addEventListener('blur', this.windowBlurHandler);
44
- }
45
- disconnectedCallback() {
46
- this.mouseEventList.forEach((eventName) => {
47
- document.removeEventListener(eventName, this.mouseHandler);
48
- });
49
- window.removeEventListener('blur', this.windowBlurHandler);
50
- }
51
- findActiveElement() {
52
- let workingElement = document.activeElement;
53
- while (true) {
54
- if (!workingElement || !workingElement.shadowRoot) {
55
- return workingElement;
56
- }
57
- workingElement = workingElement.shadowRoot.activeElement;
58
- }
59
- }
60
- shadowEventTarget(event) {
61
- return event.composedPath()[0] || event.target;
62
- }
63
- shadowContains(child) {
64
- /**
65
- * shadow-dom enabled version of Node.contains()
66
- */
67
- while (true) {
68
- if (child === this.hostElement) {
69
- return true;
70
- }
71
- if (!child) {
72
- return false;
73
- }
74
- child = child.parentNode || child.host;
75
- }
76
- }
77
- originatesInSlots(target) {
78
- const slots = this.hostElement.querySelectorAll('slot');
79
- for (const currentSlot of Array.from(slots)) {
80
- const lightNodes = (currentSlot && currentSlot.assignedNodes && currentSlot.assignedNodes()) ||
81
- this.hostElement.childNodes;
82
- for (const currentNode of Array.from(lightNodes)) {
83
- if (currentNode.contains(target)) {
84
- return true;
85
- }
86
- }
87
- }
88
- return false;
89
- }
90
- get hostElement() { return index.getElement(this); }
91
- };
92
-
93
- exports.click_elsewhere = ClickElsewhere;
@@ -1,89 +0,0 @@
1
- import { r as registerInstance, c as createEvent, g as getElement } from './index-bb1c8c7f.js';
2
-
3
- const ClickElsewhere = class {
4
- constructor(hostRef) {
5
- registerInstance(this, hostRef);
6
- this.change = createEvent(this, "change", 7);
7
- /**
8
- * Listens for mouse and window events that happen outside this click-elsewhere element so we can close popovers when users click outside them
9
- */
10
- this.mouseEventList = ['mousedown', 'dragstart', 'touchstart'];
11
- this.isCurrentlyFocused = false;
12
- this.mouseHandler = (event) => {
13
- const isCurrentlyFocused = this.shadowContains(this.findActiveElement());
14
- const aboutToBeFocused = this.shadowContains(this.shadowEventTarget(event)) || this.originatesInSlots(event.target);
15
- if (!aboutToBeFocused && (this.isCurrentlyFocused || isCurrentlyFocused)) {
16
- this.isCurrentlyFocused = false;
17
- this.change.emit();
18
- return;
19
- }
20
- this.isCurrentlyFocused = aboutToBeFocused || isCurrentlyFocused;
21
- };
22
- this.windowBlurHandler = () => {
23
- const activeElement = this.findActiveElement();
24
- if (activeElement === document.body && this.isCurrentlyFocused) {
25
- this.isCurrentlyFocused = false;
26
- this.change.emit();
27
- return;
28
- }
29
- };
30
- }
31
- /* TODO: Stencil/Rollup is having issues compiling without this here. Will try to remove in future Stencil upgrade. */
32
- /* tslint:disable:no-empty */
33
- componentWillLoad() { }
34
- /* tslint:enable:no-empty */
35
- connectedCallback() {
36
- this.mouseEventList.forEach((eventName) => {
37
- document.addEventListener(eventName, this.mouseHandler);
38
- });
39
- window.addEventListener('blur', this.windowBlurHandler);
40
- }
41
- disconnectedCallback() {
42
- this.mouseEventList.forEach((eventName) => {
43
- document.removeEventListener(eventName, this.mouseHandler);
44
- });
45
- window.removeEventListener('blur', this.windowBlurHandler);
46
- }
47
- findActiveElement() {
48
- let workingElement = document.activeElement;
49
- while (true) {
50
- if (!workingElement || !workingElement.shadowRoot) {
51
- return workingElement;
52
- }
53
- workingElement = workingElement.shadowRoot.activeElement;
54
- }
55
- }
56
- shadowEventTarget(event) {
57
- return event.composedPath()[0] || event.target;
58
- }
59
- shadowContains(child) {
60
- /**
61
- * shadow-dom enabled version of Node.contains()
62
- */
63
- while (true) {
64
- if (child === this.hostElement) {
65
- return true;
66
- }
67
- if (!child) {
68
- return false;
69
- }
70
- child = child.parentNode || child.host;
71
- }
72
- }
73
- originatesInSlots(target) {
74
- const slots = this.hostElement.querySelectorAll('slot');
75
- for (const currentSlot of Array.from(slots)) {
76
- const lightNodes = (currentSlot && currentSlot.assignedNodes && currentSlot.assignedNodes()) ||
77
- this.hostElement.childNodes;
78
- for (const currentNode of Array.from(lightNodes)) {
79
- if (currentNode.contains(target)) {
80
- return true;
81
- }
82
- }
83
- }
84
- return false;
85
- }
86
- get hostElement() { return getElement(this); }
87
- };
88
-
89
- export { ClickElsewhere as click_elsewhere };
@@ -1 +0,0 @@
1
- import{h as o}from"./p-926a3e80.js";var n,i=(function(o){o.exports={polyfill:function(){var o=window,n=document;if(!("scrollBehavior"in n.documentElement.style)||!0===o.__forceSmoothScrollPolyfill__){var i,t=o.HTMLElement||o.Element,e={scroll:o.scroll||o.scrollTo,scrollBy:o.scrollBy,elementScroll:t.prototype.scroll||a,scrollIntoView:t.prototype.scrollIntoView},r=o.performance&&o.performance.now?o.performance.now.bind(o.performance):Date.now,s=(i=o.navigator.userAgent,new RegExp(["MSIE ","Trident/","Edge/"].join("|")).test(i)?1:0);o.scroll=o.scrollTo=function(){void 0!==arguments[0]&&(!0!==u(arguments[0])?h.call(o,n.body,void 0!==arguments[0].left?~~arguments[0].left:o.scrollX||o.pageXOffset,void 0!==arguments[0].top?~~arguments[0].top:o.scrollY||o.pageYOffset):e.scroll.call(o,void 0!==arguments[0].left?arguments[0].left:"object"!=typeof arguments[0]?arguments[0]:o.scrollX||o.pageXOffset,void 0!==arguments[0].top?arguments[0].top:void 0!==arguments[1]?arguments[1]:o.scrollY||o.pageYOffset))},o.scrollBy=function(){void 0!==arguments[0]&&(u(arguments[0])?e.scrollBy.call(o,void 0!==arguments[0].left?arguments[0].left:"object"!=typeof arguments[0]?arguments[0]:0,void 0!==arguments[0].top?arguments[0].top:void 0!==arguments[1]?arguments[1]:0):h.call(o,n.body,~~arguments[0].left+(o.scrollX||o.pageXOffset),~~arguments[0].top+(o.scrollY||o.pageYOffset)))},t.prototype.scroll=t.prototype.scrollTo=function(){if(void 0!==arguments[0])if(!0!==u(arguments[0])){var o=arguments[0].left,n=arguments[0].top;h.call(this,this,void 0===o?this.scrollLeft:~~o,void 0===n?this.scrollTop:~~n)}else{if("number"==typeof arguments[0]&&void 0===arguments[1])throw new SyntaxError("Value could not be converted");e.elementScroll.call(this,void 0!==arguments[0].left?~~arguments[0].left:"object"!=typeof arguments[0]?~~arguments[0]:this.scrollLeft,void 0!==arguments[0].top?~~arguments[0].top:void 0!==arguments[1]?~~arguments[1]:this.scrollTop)}},t.prototype.scrollBy=function(){void 0!==arguments[0]&&(!0!==u(arguments[0])?this.scroll({left:~~arguments[0].left+this.scrollLeft,top:~~arguments[0].top+this.scrollTop,behavior:arguments[0].behavior}):e.elementScroll.call(this,void 0!==arguments[0].left?~~arguments[0].left+this.scrollLeft:~~arguments[0]+this.scrollLeft,void 0!==arguments[0].top?~~arguments[0].top+this.scrollTop:~~arguments[1]+this.scrollTop))},t.prototype.scrollIntoView=function(){if(!0!==u(arguments[0])){var i=v(this),t=i.getBoundingClientRect(),r=this.getBoundingClientRect();i!==n.body?(h.call(this,i,i.scrollLeft+r.left-t.left,i.scrollTop+r.top-t.top),"fixed"!==o.getComputedStyle(i).position&&o.scrollBy({left:t.left,top:t.top,behavior:"smooth"})):o.scrollBy({left:r.left,top:r.top,behavior:"smooth"})}else e.scrollIntoView.call(this,void 0===arguments[0]||arguments[0])}}function a(o,n){this.scrollLeft=o,this.scrollTop=n}function u(o){if(null===o||"object"!=typeof o||void 0===o.behavior||"auto"===o.behavior||"instant"===o.behavior)return!0;if("object"==typeof o&&"smooth"===o.behavior)return!1;throw new TypeError("behavior member of ScrollOptions "+o.behavior+" is not a valid value for enumeration ScrollBehavior.")}function l(o,n){return"Y"===n?o.clientHeight+s<o.scrollHeight:"X"===n?o.clientWidth+s<o.scrollWidth:void 0}function d(n,i){var t=o.getComputedStyle(n,null)["overflow"+i];return"auto"===t||"scroll"===t}function c(o){var n=l(o,"Y")&&d(o,"Y"),i=l(o,"X")&&d(o,"X");return n||i}function v(o){for(;o!==n.body&&!1===c(o);)o=o.parentNode||o.host;return o}function f(n){var i,t,e,s=(r()-n.startTime)/468;s=s>1?1:s,i=.5*(1-Math.cos(Math.PI*s)),n.method.call(n.scrollable,t=n.startX+(n.x-n.startX)*i,e=n.startY+(n.y-n.startY)*i),t===n.x&&e===n.y||o.requestAnimationFrame(f.bind(o,n))}function h(i,t,s){var u,l,d,c,v=r();i===n.body?(u=o,l=o.scrollX||o.pageXOffset,d=o.scrollY||o.pageYOffset,c=e.scroll):(u=i,l=i.scrollLeft,d=i.scrollTop,c=a),f({scrollable:u,method:c,startTime:v,startX:l,startY:d,x:t,y:s})}}}}(n={path:undefined,exports:{},require:function(){return function(){throw new Error("Dynamic requires are not currently supported by @rollup/plugin-commonjs")}()}}),n.exports);function t(){return/Android|webOS|iPhone|iPad|iPod|BlackBerry|Mobile|IEMobile|Windows Phone|Opera Mini/i.test(navigator.userAgent)}function e(o,n){const i=["focusin","focus"].includes(o.type)?o.target:o.relatedTarget,t=o=>o===n||!!o.parentElement&&t(o.parentElement);return!(i instanceof HTMLElement&&t(i))}function r(o,n){return o.relatedTarget!==n&&!n.contains(o.relatedTarget)}function s(o,n){var i;return(null===(i=o.composedPath)||void 0===i?void 0:i.call(o)[0])===n}function a(o){o.focus=()=>null==o?void 0:o.dispatchEvent(new FocusEvent("focus",{bubbles:!1}))}function u(){return!!function(){const o=navigator.userAgent.toLowerCase();return o.includes("safari")&&!o.includes("chrome")}()&&(i.polyfill(),window.__forceSmoothScrollPolyfill__=!0)}function l(){return navigator.userAgent.toLowerCase().includes("firefox")}function d(){return"ontouchstart"in window||navigator.maxTouchPoints>0}let c=1e3;function v(){return c++}function f(o){requestAnimationFrame((()=>{requestAnimationFrame(o)}))}function h(){return new Promise((o=>f(o)))}function p(o,n){var i,t,e;return o?!0===(null===(i=window.Tecton)||void 0===i?void 0:i.noStrings)?o:null!==(e=null===(t=null===window||void 0===window?void 0:window.TectonElements)||void 0===t?void 0:t.loc(o,n))&&void 0!==e?e:o:""}function w(n){const{label:i,hideLabel:t}=n;if(!i||t)return;let e="";return n.optional&&(e=o("span",{class:"optional-tag"},p("tecton.element.input.optional"))),n.readonly&&(e=o("span",{class:"optional-tag"},p("tecton.element.input.readonly"))),o("label",{htmlFor:n.inputId,class:n.readonly?"readonly-field":""},p(n.label),e)}function m(o){const{ariaLabel:n}=o;n&&("hideLabel"in o&&(o.hideLabel=!0),o.label=p(n),o.ariaLabel=void 0)}function b(n){return o("div",{class:"messages-container"},o("q2-message",{appearance:"minimal",description:!0,type:n.hasError?"danger":"info","test-id":"message"},o("ul",{id:n.inputDescribedBy},n.messages.map((n=>o("li",{"test-id":"messageListItem"},p(n)))))))}function g(o){const n=o.hostElement.shadowRoot.querySelector(".messages-container"),i=n.querySelector("q2-message");f((()=>{const t=o.showMessages&&o.hasFocus?i.getBoundingClientRect().height:0;n.style.getPropertyValue("height")!==`${t}px`&&(0===t?(i.classList.add("invisible"),n.style.removeProperty("height")):(i.classList.remove("invisible"),n.style.setProperty("height",`${t}px`)))}))}function y(o){var n,i,t,e;const{dropdownContainer:r,popDirection:s}=o;if(r&&(r.style.maxHeight=null),s)return o.privatePopDirection=s;const a=o.inputField||o.controlElement,u=o.minPopHeight||null;r.classList.add("sizable");const l=r.getBoundingClientRect().height;r.classList.remove("sizable");const{top:d,height:c}=a.getBoundingClientRect(),v=((null===(i=null===(n=window.Tecton)||void 0===n?void 0:n.platformDimensions)||void 0===i?void 0:i.scrollY)||0)+((null===(e=null===(t=window.Tecton)||void 0===t?void 0:t.platformDimensions)||void 0===e?void 0:e.innerHeight)||window.innerHeight)-d-c,f=l<=d;if(v>l)return o.privatePopDirection="down";if(f||!u)return x(o),o.privatePopDirection="up";if(v>=u+5){const n=Math.max(v-5,u);return r.style.maxHeight=`${n}px`,o.privatePopDirection="down"}{const n=Math.max(d,u);return r.style.maxHeight=`${n}px`,x(o),o.privatePopDirection="up"}}const x=({dropdownContainer:o,inputField:n})=>{var i,t;if(!n)return;const e=null===(t=null===(i=n.shadowRoot)||void 0===i?void 0:i.querySelector(".input-field"))||void 0===t?void 0:t.getBoundingClientRect().height;o.style.setProperty("--comp-dropup-offset",`${e}px`)},E=()=>{var o,n;return null===(n=null===(o=window.TectonElements)||void 0===o?void 0:o.resizeIframe)||void 0===n?void 0:n.call(o)},M=o=>{!o.intent&&["primary","secondary"].includes(o.color)&&(o.intent=`workflow-${o.color}`,o.color=void 0)};export{s as a,d as b,v as c,r as d,e,u as f,g,m as h,t as i,w as j,l as k,p as l,b as m,f as n,a as o,M as p,E as r,y as s,h as w}
@@ -1 +0,0 @@
1
- import{r as t,h as a,g as r}from"./p-926a3e80.js";import{i}from"./p-f23bcb4b.js";const e=class{constructor(a){t(this,a),this.onError=()=>{this.badSrc=!0},this.onLoad=()=>{this.isLoaded=!0},this.name=void 0,this.initials=void 0,this.src=void 0,this.icon="person",this.badSrc=!1,this.isLoaded=!1}srcDidUpdate(){this.badSrc=!1}get fallbackIcon(){return i[this.icon]&&i[this.icon].markup()||i.error.markup()}get computedInitials(){const{initials:t,name:a}=this;if(!t&&!a)return;let r="";if(t)r=t.substr(0,4);else if(a){const t=a.split(" "),i=t.length>1?t[t.length-1][0]:void 0;r+=t[0][0],i&&(r+=i)}return r=null==r?void 0:r.toUpperCase(),r}render(){const{computedInitials:t}=this,r=(this.name||this.initials)&&(!this.src||this.badSrc),i=!this.name&&!this.initials&&(!this.src||this.badSrc);return a("div",null,this.src&&!this.badSrc&&a("img",{class:this.isLoaded?"avatar-img":"avatar-img-default","test-id":"userImage",src:this.src,onError:this.onError,onLoad:this.onLoad,alt:this.name||""}),r&&a("svg",{viewBox:"0 0 100 100",preserveAspectRatio:"xMidYMid meet","test-id":"userInitials",class:`avatar-initials size-${t.length}`,"aria-label":this.name,"aria-hidden":!this.name&&"true"},a("text",{x:"50",y:"50","dominant-baseline":"central","text-anchor":"middle","aria-hidden":"true"},t)),i&&a("div",{"test-id":"fallbackIcon",class:"fallback"},a("q2-icon",{type:this.icon})))}get el(){return r(this)}static get watchers(){return{src:["srcDidUpdate"]}}};e.style="*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-double-focus-ring, 0 0 0 2px #ffffff, 0 0 0 4px #33b4ff #06C)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit;font-stretch: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}.avatar-img{object-fit:cover;height:var(--tct-avatar-img-height, var(--tct-avatar-height, 44px));width:var(--tct-avatar-img-width, var(--tct-avatar-width, 44px));border-radius:var(--tct-avatar-img-border-radius, --tct-avatar-img-br, --tct-avatar-border-radius, 50%);background-color:unset}.avatar-img-default{object-fit:cover;height:var(--tct-avatar-img-height, var(--tct-avatar-height, 44px));width:var(--tct-avatar-img-width, var(--tct-avatar-width, 44px));border-radius:var(--tct-avatar-img-border-radius, var(--tct-avatar-img-br, var(--tct-avatar-border-radius, 50%)));background:var(--tct-avatar-background, var(--tct-avatar-bg, #9e9e9e))}.avatar-initials{height:var(--tct-avatar-height, 44px);width:var(--tct-avatar-width, 44px);background:var(--tct-avatar-background, var(--tct-avatar-bg, var(--t-gray-8, #9e9e9e)));border-radius:var(--tct-avatar-br, 50%)}.size-1{--tct-avatar-font-size:var(--tct-avatar-size-1, 60px)}.size-2{--tct-avatar-font-size:var(--tct-avatar-size-2, 50px)}.size-3{--tct-avatar-font-size:var(--tct-avatar-size-3, 40px)}.size-4{--tct-avatar-font-size:var(--tct-avatar-size-4, 30px)}text{fill:var(--tct-avatar-text-color, var(--tct-avatar-color, #ffffff));font-weight:var(--tct-avatar-font-weight, 200);font-size:var(--tct-avatar-font-size, 40px)}.fallback{height:var(--tct-avatar-fallback-height, var(--tct-avatar-height, 44px));width:var(--tct-avatar-fallback-width, var(--tct-avatar-width, 44px));border-radius:var(--tct-avatar-fallback-border-radius, var(--tct-avatar-fallback-br, var(--tct-avatar-img-border-radius, var(--tct-avatar-img-br, 50%))));background:var(--tct-avatar-fallback-background, var(--tct-avatar-fallback-bg, var(--tct-avatar-background, var(--tct-avatar-bg, #9e9e9e))));display:flex;align-items:center;justify-content:center}q2-icon{--t-icon-size:var(--tct-avatar-icon-size, var(--tct-avatar-fallback-icon-size, 65%));--t-icon-fill:var(--tct-avatar-icon-fill, var(--tct-avatar-fallback-fill, transparent));--t-icon-stroke-primary:var(--tct-avatar-icon-stroke-primary, var(--tct-avatar-fallback-stroke-primary, currentcolor));--t-icon-stroke-secondary:var(--tct-avatar-icon-stroke-secondary, var(--tct-avatar-fallback-stroke-secondary, currentcolor));color:var(--tct-avatar-icon-color, var(--tct-avatar-fallback-color, var(--tct-avatar-color, var(--t-base, #ffffff))));width:var(--tct-avatar-icon-size, var(--t-icon-size));height:var(--tct-avatar-icon-size, var(--t-icon-size))}";export{e as q2_avatar}
@@ -1 +0,0 @@
1
- import{r as o,c,h as e,g as t}from"./p-926a3e80.js";import{c as r,h as i,o as a,a as h,l}from"./p-2453cd92.js";const s=class{constructor(e){o(this,e),this.change=c(this,"change",7),this._id=`checkbox-${r()}`,this.onInputClick=o=>{const c=this.disabled||this.readonly;if((c||!!this.hostElement.onchange)&&o.preventDefault(),c)return;if(!(o.target instanceof HTMLInputElement))return;const{value:e,checked:t}=o.target;this.change.emit({value:e,checked:t}),this.inputElement.focus()},this.checked=!1,this.type=void 0,this.label=void 0,this.hideLabel=void 0,this.indeterminate=void 0,this.disabled=void 0,this.readonly=void 0,this.value=void 0,this.name=void 0,this.groupDisabled=void 0,this.alignment=void 0,this.description=void 0,this.hasError=void 0,this.ariaLabel=void 0}componentWillLoad(){i(this)}componentDidLoad(){a(this.hostElement),this.hostElement.click=()=>this.inputElement.click()}defaultChangeHandler(o){this.readonly||o.target!==this.hostElement||this.hostElement.onchange||!o.detail||(this.checked=o.detail.checked)}delegateFocus(o){h(o,this.hostElement)&&this.hostElement.shadowRoot.querySelector("input").focus()}ariaLabelObserver(){i(this)}render(){const o=["label-text"];return this.hideLabel&&o.push("sr"),e("div",{class:"container"},e("input",{ref:o=>this.inputElement=o,id:this._id,type:"checkbox",checked:this.indeterminate||this.checked||!1,disabled:!!this.disabled||!!this.groupDisabled,class:"sr",value:this.value,name:this.name||this._id,"aria-describedby":this.description?"description":void 0,"test-id":"q2CheckboxInnerCheckBox",onClick:this.onInputClick}),e("label",{htmlFor:this._id,class:"label-control","test-id":"checkboxButton"},this.generateCheckboxSVG()),e("div",{class:o.join(" ")},e("label",{"test-id":"checkboxLabel",htmlFor:this._id},l(this.label),e("slot",null))),this.description&&e("div",{class:"description-text","test-id":"checkboxDescription",id:"description"},l(this.description)))}generateCheckboxSVG(){return"favorite"===this.type?e("q2-icon",{type:"star",class:"checkbox-icon"}):"toggle"===this.type?this.generateToggleSVG():e("svg",{"aria-hidden":"true",width:"20",height:"20",viewBox:"0 0 20 20",class:"checkbox-icon",focusable:"false"},e("rect",{x:"1",y:"1",width:"18",height:"18",rx:"3"}),(this.checked||this.indeterminate)&&this.generateCheckBoxSVGFill())}generateCheckBoxSVGFill(){return this.indeterminate?e("line",{class:"checkbox-fill indeterminate-fill",x1:"4",y1:"10",x2:"16",y2:"10"}):e("polyline",{class:"checkbox-fill checked-fill",points:"5 11 8.5 14.5 15 6"})}generateToggleSVG(){return e("div",{class:"toggle-svg"},e("svg",{"aria-hidden":"true",focusable:"false",viewBox:"0 0 46 14",class:"toggle-track","test-id":"toggleTrack"},e("rect",{width:"36",height:"14",rx:"7",x:"5"})),e("svg",{"aria-hidden":"true",focusable:"false",viewBox:"0 0 30 30",class:"toggle-indicator","test-id":"toggleIndicator"},e("circle",{class:"toggle-circle",width:"20",height:"20",cx:"15",cy:"15",r:"10"}),e("line",{class:"off checked-fill",x1:"12",y1:"18",x2:"18",y2:"12"}),e("line",{class:"off checked-fill",x1:"12",y1:"12",x2:"18",y2:"18"}),e("polyline",{class:"on checked-fill",points:"11,16 14,19 18,12 14,19"})))}get hostElement(){return t(this)}static get watchers(){return{ariaLabel:["ariaLabelObserver"]}}};s.style='*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-double-focus-ring, 0 0 0 2px #ffffff, 0 0 0 4px #33b4ff #06C)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit;font-stretch: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;position:relative;padding:var(--tct-checkbox-vertical-padding, var(--t-checkbox-vertical-padding, var(--tct-scale-2, var(--app-scale-2x, 10px)))) 0}.container{--comp-checkbox-size:var(--tct-checkbox-size, var(--t-checkbox-size, 20px));--comp-checkbox-default-column-gap:var(--app-scale-2x, 10px);--comp-checkbox-default-row-gap:0;--comp-checkbox-default-gap:var(--comp-checkbox-default-row-gap) var(--comp-checkbox-default-column-gap);--comp-checkbox-tween:var(--tct-tween-1, var(--app-tween-1, 0.2s ease));--comp-checkbox-toggle-width:var(--tct-checkbox-toggle-width, var(--t-checkbox-toggle-width, 46px));--comp-checkbox-gap:var(--tct-checkbox-gap, var(--t-checkbox-gap, var(--comp-checkbox-default-gap)));--comp-checkbox-outer-stroke-color:var(--tct-checkbox-outer-stroke-color, var(--t-checkbox-outer-stroke-color, var(--t-a11y-gray-color-AA, #949494)));--comp-checkbox-outer-fill-color:var(--tct-checkbox-outer-fill-color, var(--t-checkbox-outer-fill-color, var(--tct-white, var(--app-white, #ffffff))));--comp-checkbox-checked-color:var(--tct-checkbox-check-stroke-color, var(--t-checkbox-check-stroke-color, var(--t-checkbox-fill, var(--t-a11y-active-gray-color-AA, #404040))));--comp-control-width:var(--comp-checkbox-size);display:grid;grid-template-areas:"svg label" "svg description";align-items:center;gap:var(--comp-checkbox-gap);grid-template-columns:var(--comp-control-width) calc(100% - var(--comp-control-width) - var(--comp-checkbox-default-column-gap))}:host([type=favorite]) .container{--comp-checkbox-favorite-stroke-color:var(--tct-checkbox-favorite-stroke-color, var(--t-checkbox-favorite-stroke-color, var(--t-a11y-gray-color-AA, #949494)));--comp-checkbox-favorite-fill-color:var(--tct-checkbox-favorite-fill-color, var(--t-checkbox-favorite-fill-color, #db7d24))}:host([type=toggle]) .container{--comp-control-width:var(--comp-checkbox-toggle-width)}:host([alignment=right]) .container,:host([type=toggle]:not([alignment])) .container{grid-template-areas:"label svg" "description svg";grid-template-columns:calc(100% - var(--comp-control-width) - var(--comp-checkbox-default-column-gap)) var(--comp-control-width)}.label-control{align-items:center;display:flex}.label-text{grid-area:label}:host([description]) .label-text{font-weight:var(--tct-checkbox-label-font-weight, var(--t-checkbox-label-font-weight, 600))}:host([checked]) .label-text{font-weight:var(--tct-checkbox-checked-label-font-weight, var(--t-checkbox-checked-label-font-weight, 600))}.description-text{grid-area:description;font-weight:var(--tct-checkbox-description-font-weight, var(--t-checkbox-description-font-weight, 400))}label{color:var(--tct-checkbox-label-color);cursor:pointer}:host([disabled]:not([disabled=false])),:host([group-disabled]){opacity:var(--tct-checkbox-disabled-opacity, var(--t-checkbox-disabled-opacity, var(--tct-disabled-opacity, var(--app-disabled-opacity, 0.4))))}:host([disabled]:not([disabled=false])) label,:host([group-disabled]) label{cursor:not-allowed}.checkbox-icon{--t-icon-stroke-primary:var(--comp-checkbox-outer-stroke-color);width:var(--comp-checkbox-size);height:var(--comp-checkbox-size);border-radius:var(--tct-checkbox-outer-border-radius, var(--t-checkbox-outer-border-radius, var(--tct-border-radius-1, var(--app-border-radius-1, 3px))));stroke:var(--comp-checkbox-outer-stroke-color);color:var(--comp-checkbox-outer-stroke-color);stroke-width:var(--tct-checkbox-outer-stroke-width, var(--t-checkbox-outer-stroke-width, 2));fill:var(--comp-checkbox-outer-fill-color);flex-shrink:0}:host([checked]) .checkbox-icon{fill:var(--tct-checkbox-checked-outer-fill-color, var(--t-checkbox-checked-outer-fill-color, var(--comp-checkbox-outer-fill-color)));stroke:var(--tct-checkbox-checked-outer-stroke-color, var(--t-checkbox-checked-outer-stroke-color, var(--comp-checkbox-outer-stroke-color)))}:host(:focus-within) .checkbox-icon{box-shadow:var(--const-double-focus-ring), var(--tct-global-focus, 0 0 0 2px #33b4ff);stroke:var(--tct-checkbox-focused-outer-stroke-color, var(--t-checkbox-focused-outer-stroke-color, var(--comp-checkbox-checked-color)))}:host([type=favorite]) .checkbox-icon{--tct-icon-stroke-width:var(--tct-checkbox-favorite-stroke-width, var(--t-checkbox-favorite-stroke-width, 1));--tct-icon-stroke-primary:var(--comp-checkbox-favorite-stroke-color);transition:fill var(--comp-checkbox-tween), color var(--comp-checkbox-tween), stroke var(--comp-checkbox-tween)}:host([type=favorite]:focus-within) .checkbox-icon,:host([type=favorite]:hover) .checkbox-icon{--tct-icon-stroke-primary:var(--comp-checkbox-favorite-fill-color);--tct-icon-stroke-width:var(--tct-checkbox-favorite-hover-stroke-width, var(--t-checkbox-favorite-hover-stroke-width, 2))}:host([checked][type=favorite]) .checkbox-icon{--tct-icon-stroke-primary:var(--comp-checkbox-favorite-fill-color);fill:var(--comp-checkbox-favorite-fill-color);transition:fill var(--comp-checkbox-tween), color var(--comp-checkbox-tween), stroke var(--comp-checkbox-tween)}:host([checked][type=favorite]:focus-within) .checkbox-icon,:host([checked][type=favorite]:hover) .checkbox-icon{--tct-icon-stroke-primary:var(--comp-checkbox-favorite-stroke-color);--tct-icon-fill-primary:var(--comp-checkbox-favorite-fill-color);--tct-icon-stroke-width:var(--tct-checkbox-favorite-hover-stroke-width, var(--t-checkbox-favorite-hover-stroke-width, 2))}.checkbox-fill{stroke:var(--comp-checkbox-checked-color)}.checked-fill{stroke-width:var(--tct-checkbox-check-stroke-width, var(--t-checkbox-check-stroke-width, 2.5));stroke-linecap:round;stroke-linejoin:round}:host([type=toggle]) .checked-fill{stroke:var(--tct-checkbox-toggle-icon-stroke, var(--t-checkbox-toggle-icon-stroke, var(--tct-white, var(--app-white, #ffffff))));transition:opacity var(--comp-checkbox-tween)}:host([type=toggle][checked]) .checked-fill{stroke:var(--tct-checkbox-toggle-checked-icon-stroke, var(--t-checkbox-toggle-checked-icon-stroke, var(--t-checkbox-text, var(--tct-white, var(--app-white, #ffffff)))))}.indeterminate-fill{stroke-width:var(--tct-checkbox-indeterminate-stroke-width, var(--t-checkbox-indeterminate-stroke-width, 3.5))}.toggle-svg{height:30px;width:var(--comp-checkbox-toggle-width);position:relative;text-align:initial}.toggle-track,.toggle-indicator{position:absolute;top:50%;transform:translateY(-50%)}.toggle-track{fill:var(--tct-checkbox-toggle-track-color, var(--t-checkbox-toggle-track-color, var(--tct-gray-11, var(--t-gray-11, var(--tct-gray-l1, var(--app-gray-l1, #cccccc))))));height:14px;width:46px}:host([checked]) .toggle-track{fill:var(--tct-checkbox-toggle-checked-color, var(--t-checkbox-toggle-checked-color, var(--comp-checkbox-checked-color)));opacity:0.5}.toggle-indicator{transition:left var(--comp-checkbox-tween);height:30px;width:30px;left:0;border-radius:50%}:host([checked]) .toggle-indicator{left:21px}.toggle-circle{fill:var(--tct-checkbox-toggle-circle-color, var(--t-checkbox-toggle-circle-color, var(--t-a11y-gray-color-AA, #949494)))}:host([checked]) .toggle-circle{fill:var(--tct-checkbox-toggle-checked-color, var(--t-checkbox-toggle-checked-color, var(--comp-checkbox-checked-color)))}:host(:focus-within) .toggle-circle{stroke:var(--tct-checkbox-toggle-checked-color, var(--t-checkbox-toggle-checked-color, var(--comp-checkbox-checked-color)));stroke-width:10px;stroke-opacity:0.5}:host(:not([checked]):focus-within) .toggle-circle{stroke:var(--tct-checkbox-toggle-circle-color, var(--t-checkbox-toggle-circle-color, var(--t-a11y-gray-color-AA, #949494)))}:host([checked]) .off,:host(:not([checked])) .on{opacity:0}';export{s as q2_checkbox}
@@ -1 +0,0 @@
1
- import{r as t,c as i,h as e,H as s,g as o}from"./p-926a3e80.js";import{o as n,w as r,n as a,a as h,r as l}from"./p-2453cd92.js";const c=class{constructor(e){t(this,e),this.change=i(this,"change",7),this.popoverState=i(this,"popoverState",7),this.ready=i(this,"ready",3),this.scheduledAfterRender=[],this.keyStore={queue:[],lastPressedAt:new Date},this.searchAndFocus=(t,i)=>{(()=>{const i=new Date;i.getTime()-this.keyStore.lastPressedAt.getTime()>1e3&&(this.keyStore.queue.length=0),1===this.keyStore.queue.length&&this.keyStore.queue[0]===t||this.keyStore.queue.push(t),this.keyStore.lastPressedAt=i})();const e=(t=>{const i=this.keyStore.queue.join("");return t.find((t=>!t.element.disabled&&t.element.display&&(t.element.display.match(new RegExp(`^${i}`,"i"))||t.element.display.replace(/\s/g,"").match(new RegExp(`^${i}`,"i")))))})((()=>{this.pivotIndex=void 0===this.pivotIndex?0:(this.activeIndex||0)+1;const t=this.allOptions.map(((t,i)=>({element:t,index:i})));return[...t.slice(this.pivotIndex),...t.slice(0,this.pivotIndex)]})());e&&(({index:t})=>{this.multiple?this.openDropdownWithActiveElement(t):(this.activeIndex=t,i?this.selectOption(this.allOptions[t]):this.setActiveElement(t))})(e)},this.externalKeydownHandler=t=>{t.stopPropagation();const{activeIndex:i,customSearch:e,allOptions:s}=this,{key:o}=t;let n;switch(o){case" ":if(this.searchString){if(e)break;this.searchOptions(o,!0);break}"menu"===this.role?(this.activeIndex=0,this.openDropdownWithActiveElement(0)):this.setDefaultActiveElement();break;case"Enter":"menu"===this.role?(this.activeIndex=0,this.openDropdownWithActiveElement(0)):this.setDefaultActiveElement();break;case"ArrowUp":if(t.preventDefault(),this.activeIndex=0,n=this.selectedOptions.length?this.getDefaultActiveIndex():this.getNextVisibleIndex(-1),-1===n)break;this.openDropdownWithActiveElement(n);break;case"ArrowDown":if(t.preventDefault(),this.activeIndex=0,n=this.selectedOptions.length?this.getDefaultActiveIndex():this.getNextVisibleIndex(0),-1===n)break;this.openDropdownWithActiveElement(n);break;case"Home":t.preventDefault(),this.openDropdownWithActiveElement(0);break;case"End":t.preventDefault(),this.openDropdownWithActiveElement(s.length-1);break;case"PageUp":t.preventDefault(),this.openDropdownWithActiveElement(Math.max((i||0)-10,0));break;case"PageDown":t.preventDefault(),this.openDropdownWithActiveElement(Math.min((i||0)+10,s.length-1));break;case"Tab":this.popoverState.emit({open:!1,action:"close"});break;case"Esc":case"Escape":this.noSelect&&this.setActiveElement(null),this.popoverState.emit({open:!1,action:"close"});break;default:if(e)break;if(!o.match(/^[\w]$/))break;this.searchOptions(o,!0)}},this.internalKeydownHandler=t=>{t.stopPropagation();const{activeIndex:i,customSearch:e,allOptions:s}=this,{key:o,shiftKey:n}=t;let r;switch(o){case" ":if(this.searchString&&!this.multiple){if(e)break;this.searchOptions(o,!1);break}if(t.preventDefault(),r=s.find((t=>t.active)),!r||r.disabled)break;this.selectOption(r);break;case"Enter":if(t.preventDefault(),r=s.find((t=>t.active)),!r||r.disabled)break;this.selectOption(r);break;case"ArrowUp":if(t.preventDefault(),0===i)break;if(void 0===i){this.setDefaultActiveElement();break}{const t=this.getNextVisibleIndex(-1);if(-1===t)break;this.adjustActiveOptionAndScroll(t-i);break}case"ArrowDown":if(t.preventDefault(),i===s.length-1)break;if(void 0===i){this.setDefaultActiveElement();break}{const t=this.getNextVisibleIndex(1);if(-1===t)break;this.adjustActiveOptionAndScroll(t-i);break}case"Home":t.preventDefault(),this.openDropdownWithActiveElement(0);break;case"End":t.preventDefault(),this.openDropdownWithActiveElement(s.length-1);break;case"PageUp":t.preventDefault(),this.openDropdownWithActiveElement(Math.max(i-10,0));break;case"PageDown":t.preventDefault(),this.openDropdownWithActiveElement(Math.min(i+10,s.length-1));break;case"Tab":if(n)break;if(this.multiple&&"listbox"===this.role)break;if(r=s.find((t=>t.active)),!r||r.disabled)return;this.selectOption(r);break;case"Esc":case"Escape":this.noSelect&&this.setActiveElement(null),this.popoverState.emit({open:!1,action:"close"});break;default:if(e)break;if(!o.match(/^[\w]$/))break;this.searchOptions(o,!1)}},this.focusoutHandler=t=>{const{relatedTarget:i}=t,e=this.allOptions.includes(i),s=!e&&this.hostElement.contains(i);(e||s)&&t.stopPropagation()},this.clickHandler=t=>{const i=t.target.closest("q2-option");this.selectOption(i)},this.role="listbox",this.customSearch=void 0,this.noSelect=void 0,this.align=void 0,this.selectedOptions=[],this.multiple=void 0,this.disabled=void 0,this.showSelected=void 0,this.type=void 0,this.hasOptions=void 0}componentWillLoad(){this.hasOptions=!!this.hostElement.querySelectorAll("q2-option").length}componentDidLoad(){n(this.hostElement),this.checkOptions(),this.selectedOptionsUpdated(),this.ready.emit()}componentDidRender(){this.scheduledAfterRender.forEach((t=>t())),this.scheduledAfterRender=[]}get allContents(){const t=this.getRootSlot(this.hostElement),i=["Q2-OPTGROUP","Q2-OPTION"];return t.filter((t=>i.includes(t.tagName)))}get allOptions(){const t=i=>i.reduce(((i,e)=>"Q2-OPTGROUP"===e.tagName?[...i,...t(Array.from(e.children))]:"Q2-OPTION"===e.tagName?[...i,e]:i),[]);return t(this.allContents)}get allVisibleOptions(){return this.allOptions.filter((t=>!(t.hidden||t._multiSelectHidden||t.disabled||t.disabledGroup)))}async checkOptions(){const{type:t}=this,i=await this.getOptions();if(!t)return;const e="menu"===t?"menuitem":"option";i.forEach((t=>{t.role=e}))}getRootSlot(t){var i;const e=t.querySelector("slot"),s=null!==(i=null==e?void 0:e.assignedElements())&&void 0!==i?i:Array.from(t.children);return s.length&&"SLOT"===s[0].tagName?this.getRootSlot(s[0]):s}scrollToActiveOption(){const t=this.allOptions[this.activeIndex];null==t||t.scrollIntoView({block:"nearest"})}async openDropdownWithActiveElement(t){this.disabled||(this.activeIndex=t,this.popoverState.emit({open:!0,action:"open"}),await r(),this.setActiveOption(),await r(),this.setFocusedOption(),this.scrollToActiveOption())}getDefaultActiveIndex(){const{allOptions:t}=this,i=t.findIndex((t=>t.selected));if(i>-1)return i;const e=t.findIndex((t=>!t.hidden));return e>-1?e:0}updateSingleOptionAttrs(){var t;const{allOptions:i,selectedOptions:e}=this,s=(null===(t=e[0])||void 0===t?void 0:t.value)||void 0;i.forEach((t=>{t.selected=t.value===s}))}updateMultipleOptionAttrs(){const{allOptions:t,selectedOptions:i}=this,e=i.map((({value:t})=>t));t.forEach((t=>{t.selected=e.includes(t.value)}))}setActiveOption(){const t=this.activeIndex;this.allOptions.forEach(((i,e)=>{i.active=t===e}))}setFocusedOption(){const t=this.allOptions[this.activeIndex];t&&(this.hostElement.offsetParent?t.focus():a((()=>t.focus())))}getNextVisibleIndex(t){const{allVisibleOptions:i,allOptions:e,activeIndex:s}=this;let o=i.indexOf(e[s])+t;return o<0?o=i.length-1:o>i.length-1&&(o=0),e.indexOf(i[o])}focusSelectedSibling(t){const{allVisibleOptions:i,allOptions:e}=this;if(i.length<2)return void(this.showSelected=!1);const s=i.indexOf(t),o=e.indexOf(i[s?s-1:s+1]);this.activeIndex=o,this.setFocusedOption(),this.scheduledAfterRender.push((()=>{t._multiSelectHidden=!t.selected}))}selectOption(t){const{multiple:i,noSelect:e,showSelected:s}=this;if(!t||t.disabled||t.disabledGroup)return;const o=t.value,n={value:o,display:t.display||t.innerText.trim()};let r=[];if(i){const{selectedOptions:i}=this;r=i.find((t=>t.value===o))?i.filter((({value:t})=>t!==o)):[...i,n],s&&this.focusSelectedSibling(t)}else r=[n];e?this.setActiveElement(null):this.selectedOptions=r,this.change.emit({value:o,values:r}),i||this.popoverState.emit({open:!1,action:"select"})}adjustActiveOptionAndScroll(t){this.activeIndex+=t,this.setActiveOption(),this.setFocusedOption(),this.scrollToActiveOption()}resetTimer(){this.searchStringTimer&&clearTimeout(this.searchStringTimer),this.searchStringTimer=window.setTimeout((()=>{this.searchString=null}),2e3)}searchOptions(t,i){this.searchString=t,this.searchAndFocus(t,i)}showSelectedUpdated(t){t&&0===this.selectedOptions.length?this.showSelected=!1:this.allOptions.forEach((i=>i._multiSelectHidden=!!t&&!i.selected))}selectedOptionsUpdated(){this.multiple?this.updateMultipleOptionAttrs():this.updateSingleOptionAttrs()}delegateFocus(t){if(!h(t,this.hostElement))return;this.popoverState.emit({open:!0,action:"open"});const{activeIndex:i}=this;"number"==typeof i&&i>-1?(this.setActiveOption(),this.setFocusedOption()):this.setDefaultActiveElement()}handleClick(t){t.stopPropagation()}async setDefaultActiveElement(){this.activeIndex=this.getDefaultActiveIndex(),this.setActiveOption(),this.setFocusedOption()}async setActiveElement(t){this.activeIndex=t,this.setActiveOption(),this.setFocusedOption()}async handleExternalKeydown(t){this.externalKeydownHandler(t)}async getContents(){return this.allContents}async getOptions(){return this.allOptions}render(){return e(s,null,e("div",{class:"content",ref:t=>this.contentElement=t,onFocusout:this.focusoutHandler},e("div",{class:"options",role:this.type||"listbox",onKeyDown:this.internalKeydownHandler,onClick:this.clickHandler},e("slot",null))))}get hostElement(){return o(this)}static get watchers(){return{showSelected:["showSelectedUpdated"],selectedOptions:["selectedOptionsUpdated"]}}};c.style="*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-double-focus-ring, 0 0 0 2px #ffffff, 0 0 0 4px #33b4ff #06C)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit;font-stretch: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{position:relative;width:100%;display:block;line-height:var(--tct-option-list-line-height, var(--t-option-list-line-height, var(--app-line-height, 1.428571429em)))}.content{text-align:start}:host([is-sizeable]) .content{display:block;height:auto}";const d=class{constructor(e){t(this,e),this.popoverStateChanged=i(this,"popoverStateChanged",7),this.scheduledAfterRender=[],this.viewPortChanged=()=>{this.open&&this.determinePopDirection()},this.direction=void 0,this.align=void 0,this.open=void 0,this.block=void 0,this.minHeight=void 0,this.controlElement=void 0,this.currentDirection=void 0,this.show=!1}componentDidLoad(){this.open&&this.determinePopDirection()}componentDidRender(){setTimeout((()=>{this.scheduledAfterRender.forEach((t=>t())),this.scheduledAfterRender=[]}),25)}disconnectedCallback(){this.removeViewportListeners()}async toggle(){this.open=!this.open}openChanged(t){this.popoverStateChanged.emit({open:t}),this.scheduledAfterRender.push(l),t?(this.addViewportListeners(),this.determinePopDirection()):(this.removeViewportListeners(),this.containerElement.addEventListener("transitionend",(()=>{this.open||(this.currentDirection=void 0,this.containerElement.style.removeProperty("display"),this.containerElement.style.removeProperty("--comp-pop-max-height"))}),{once:!0}),this.show=!1)}popoverStateHandler(t){const{detail:{open:i}}=t;i!==this.open&&(this.open=i,t.stopPropagation())}addViewportListeners(){window.visualViewport.addEventListener("resize",this.viewPortChanged)}removeViewportListeners(){window.visualViewport.removeEventListener("resize",this.viewPortChanged)}async setDirectionAndShow(t){"up"===t&&this.determinePopOffset(),this.currentDirection=t,this.show=!0}async determinePopDirection(){var t,i,e,s,o,n,a;const{containerElement:h,contentElement:l,direction:c,controlElement:d,currentDirection:p}=this;h&&(h.style.maxHeight=null);const b=null!=c?c:p;h.style.setProperty("display","block"),await r();const{top:v,height:u}=null!==(t=null==d?void 0:d.getBoundingClientRect())&&void 0!==t?t:{top:0,height:0},w=l.clientHeight,f=(null===(e=null===(i=window.Tecton)||void 0===i?void 0:i.platformDimensions)||void 0===e?void 0:e.scrollY)||(null===(s=window.visualViewport)||void 0===s?void 0:s.offsetTop)||0,g=f+((null===(n=null===(o=window.Tecton)||void 0===o?void 0:o.platformDimensions)||void 0===n?void 0:n.innerHeight)||(null===(a=window.visualViewport)||void 0===a?void 0:a.height)||window.innerHeight)-v-u,m=g>w,x=w<=v;let k;if("down"===b&&m)return this.setDirectionAndShow("down");if("up"===b&&x)return this.setDirectionAndShow("up");if(void 0===b&&m?k="down":void 0===b&&x&&(k="up"),k)return this.setDirectionAndShow(k);const{minHeight:y=150}=this,O=g>=y+5;let E;return"down"===b?(E=Math.max(g-5,y),k="down"):"up"===b?(E=Math.max(v-5,y),k="up"):O?(E=Math.max(g-5,y),k="down"):(E=Math.max(v-f-5,y),k="up"),h.style.setProperty("--comp-pop-max-height",`${E}px`),this.setDirectionAndShow(k)}determinePopOffset(){var t;const{controlElement:i,containerElement:e}=this,s=null!==(t=null==i?void 0:i.getBoundingClientRect().height)&&void 0!==t?t:0;e.style.setProperty("--comp-pop-offset",`${s}px`)}render(){const t=["container",this.currentDirection];return this.show&&t.push("show"),e("div",{ref:t=>this.containerElement=t,class:t.join(" "),"test-id":"outerContainer"},e("div",{ref:t=>this.contentElement=t,class:"content"},e("slot",null)))}get hostElement(){return o(this)}static get watchers(){return{open:["openChanged"]}}};d.style="*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-double-focus-ring, 0 0 0 2px #ffffff, 0 0 0 4px #33b4ff #06C)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit;font-stretch: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;width:100%}:host([align=right]){display:block;position:absolute;right:0;text-align:end;left:unset}.container{display:none;overflow:hidden;opacity:0;height:0;position:absolute;top:var(--tct-popover-top, var(--t-popover-top, initial));visibility:hidden;background-color:var(--tct-popover-background-color, var(--t-popover-background-color, var(--app-white, #ffffff)));color:var(--tct-popover-text-color, var(--t-popover-text-color, var(--t-text, #4d4d4d)));z-index:var(--tct-popover-z-index, var(--t-popover-z-index, 100));width:max-content;min-width:var(--tct-popover-min-width, var(--t-popover-min-width, 135px));box-shadow:var(--tct-popover-box-shadow, var(--t-popover-box-shadow, var(--app-shadow-1, 0 2px 4px rgba(0, 0, 0, 0.3))));text-align:start;left:0;transition:opacity var(--app-tween-1, 0.2s ease), max-height var(--app-tween-1, 0.2s ease);border-radius:var(--tct-popover-border-radius, var(--t-popover-border-radius, 0));max-height:var(--comp-pop-max-height);--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}.container::-webkit-scrollbar{width:var(--comp-scrollbar-size);height:var(--comp-scrollbar-size);margin:5px}.container::-webkit-scrollbar-thumb{background:var(--comp-scrollbar-color);border-radius:var(--comp-scrollbar-border-radius)}.container::-webkit-scrollbar-track{background:transparent;border-radius:var(--comp-scrollbar-border-radius)}:host([block]) .container{left:unset;right:unset;width:100%;min-width:unset}:host([align=right]) .container{right:0;text-align:end;left:unset}.container :host([open]){display:block}:host([open]) .container.show{height:auto;overflow:auto;opacity:1;visibility:visible}.container.up{bottom:var(--comp-pop-offset)}click-elsewhere{position:relative;display:block}.content{height:auto}";export{c as q2_option_list,d as q2_popover}
@@ -1 +0,0 @@
1
- import{r as t,c as e,h as i,g as s}from"./p-926a3e80.js";import{l,h as o,o as a,d as r,a as n,e as c}from"./p-2453cd92.js";import{s as h,a as d}from"./p-a1926e65.js";const p=class{constructor(i){var s;t(this,i),this.change=e(this,"change",7),this.input=e(this,"input",7),this.scheduledAfterRender=[],this.showSelectedOptions=()=>{this.showSelected=!0},this.showAllOptions=()=>{this.showSelected=!1},this.onMutationObserved=()=>{const t=this.hostElement.querySelector(".custom-display-content"),e=this.hostElement.shadowRoot.querySelector('slot[name="q2-select-display"]'),i=e?e.assignedNodes().length>0:t.children.length>0;this.hasCustomDisplay!==i&&(this.hasCustomDisplay=i)},this.onOptionListChange=t=>{t.stopPropagation();const{values:e}=t.detail;0===e.length&&this.showAllOptions(),this.handleSelectionChanges(t.detail)},this.popoverStateChanged=({detail:{open:t}})=>{this.open!==t&&(this.open=t,t&&!this.searchText||(this.optionList.setActiveElement(null),this.inputField.focus()))},this.inputKeydownHandler=t=>{if(!this.readonly&&!this.disabled)return h(this,t)?this.executeActionSheet(t):void(this.searchable&&!["ArrowDown","ArrowUp","PageDown","PageUp","Home","End","Escape","Tab"].includes(t.key)||(this.shouldClearSearchText(t)&&this.clearSearchText(),this.optionList.handleExternalKeydown(t)))},this.visibilityToggleKeyDown=t=>{const e=t.key,i="Tab"===e&&t.shiftKey;["ArrowLeft","ArrowRight","ArrowUp","ArrowDown"].includes(e)&&t.stopPropagation(),i&&(t.stopPropagation(),this.optionList.setDefaultActiveElement())},this.inputClickHandler=async t=>{if(t.stopPropagation(),h(this))return this.executeActionSheet(t);this.toggleDropdown(),this.focusInput()},this.inputInputHandler=t=>{t.stopPropagation();const e=t.detail.value;!!this.value&&this.inputField.value!==e&&this.clearValue(),this.open||this.openDropdownWithoutActiveElement(),this.prioritizeSearch=!0,this.searchText=e,this.input.emit({query:e})},this.inputFocusHandler=()=>{this.inputFocused=!0},this.inputBlurHandler=()=>{this.inputFocused=!1},this.inputChangeHandler=t=>{t.stopPropagation()},this.clickedElsewhere=t=>{"click-elsewhere"===t.target.localName&&(t.stopPropagation(),this.open&&this.closeDropdown())},this.onCustomDisplayClick=t=>{t.stopPropagation(),this.focusInput(),this.toggleDropdown()},this.label=void 0,this.hideLabel=void 0,this.value=void 0,this.selectedOptions=[],this.disabled=!1,this.readonly=!1,this.invalid=void 0,this.listLabel=l("tecton.element.select.listLabel"),this.errors=void 0,this.multiple=!1,this.minRows=3,this.popDirection=void 0,this.searchable=!1,this.multilineOptions=!1,this.optional=!1,this.placeholder=void 0,this.hoist=!!(null===(s=window.Tecton)||void 0===s?void 0:s.useActionSheets),this.ariaLabel=void 0,this.open=!1,this.showSelected=!1,this.searchText="",this.hasCustomDisplay=!1,this.inputFocused=!1,this.statusMessage=void 0,this.prioritizeSearch=!1,this.structuredSelectedOptions=[]}componentWillLoad(){o(this),this.buildStructuredSelectedOptions(),this.handleMultilineOptionsUpdate(this.multilineOptions,!1)}componentDidLoad(){const t=new MutationObserver(this.onMutationObserved);t.observe(this.hostElement,{childList:!0,subtree:!0}),this.mutationObserver=t,this.onMutationObserved(),a(this.hostElement),setTimeout((()=>this.checkSelectedDisplay()),0)}componentDidRender(){setTimeout((()=>{this.scheduledAfterRender.forEach((t=>t())),this.scheduledAfterRender=[]}),25)}disconnectedCallback(){var t;null===(t=this.mutationObserver)||void 0===t||t.disconnect(),this.mutationObserver=null}get innerInputField(){var t,e;return null===(e=null===(t=this.inputField)||void 0===t?void 0:t.shadowRoot)||void 0===e?void 0:e.querySelector(".input-field")}get badgeValue(){var t,e;if(!this.multiple)return null;const i=null!==(e=null===(t=this.selectedOptions)||void 0===t?void 0:t.length)&&void 0!==e?e:0;return this.open&&this.searchable?i?`${i}`:null:i>1?"+"+(i-1):null}get popoverMinHeight(){const{minRows:t}=this,e=this.hostElement.querySelector("q2-option:not([hidden])");let i=e&&window.getComputedStyle(e).minHeight;return i&&"0px"!==i||(i="44px"),t*parseInt(i)}get selectedDisplay(){return this.prioritizeSearch||this.searchText?this.searchText:this.hasCustomDisplay?"":this.multiple?this.calculateMultiSelectSelectedDisplay():this.calculateSingleSelectSelectedDisplay()}get selectedDisplaySlot(){return this.hostElement.querySelector('[slot="_selected-display"]')}get firstSelectedValue(){var t;return this.multiple?null===(t=this.selectedOptions)||void 0===t?void 0:t[0]:this.value}get firstSelectedOptionElement(){const{firstSelectedValue:t}=this;return t?this.optionElements.find((({value:e})=>e===t)):null}get optionElements(){return Array.from(this.hostElement.querySelectorAll("q2-option"))}get wrapperClasses(){const{errors:t}=this,e=["q2-select-container"];return Array.isArray(t)&&t.length>0&&e.push("has-error"),this.inputFocused&&e.push("is-focused"),this.searchable&&e.push("is-searchable"),e.join(" ")}buildStructuredSelectedOptions(){const{multiple:t,selectedOptions:e,value:i}=this;this.structuredSelectedOptions=t?(null==e?void 0:e.length)?e.map((t=>"string"==typeof t?{value:t}:t)):[]:i?[{value:i}]:[]}ariaLabelObserver(){o(this)}valueUpdated(){this.multiple||this.clearSearchText()}handleMultilineOptionsUpdate(t,e){t!==e&&this.optionElements.forEach((e=>e.multiline=t))}openChanged(t){this.scheduledAfterRender.push((()=>{const{multiple:e,multiSelectHeader:i,popoverElement:s}=this,l=t&&e&&(null==i?void 0:i.offsetHeight)||0;l?s.style.setProperty("--comp-multi-select-header-height",`${l}px`):s.style.removeProperty("--comp-multi-select-header-height")}))}keydownHandler(t){this.inputKeydownHandler(t)}onHostElementChange(t){this.readonly||this.disabled||t.target!==this.hostElement||this.hostElement.onchange||(this.multiple?(this.value=null,this.selectedOptions=t.detail.selectedOptions):(this.value=t.detail.value,this.selectedOptions=[]))}onHostElementInput(t){if(!this.searchable||t.target!==this.hostElement||this.hostElement.oninput)return;const e=this.optionElements,i=this.searchText.trim().toLocaleLowerCase();let s=0;e.forEach((t=>{var e;if(""===i)return void(t.hidden=!1);const l="Q2-CARD"===(null===(e=t.firstElementChild)||void 0===e?void 0:e.tagName)?t.firstElementChild.title:null,{display:o="",innerText:a=""}=t,r=[o,l,a].some((t=>{var e;return null!==(e=null==t?void 0:t.toLocaleLowerCase().includes(i))&&void 0!==e&&e}));t.hidden=!r,r&&s++})),this.setStatusMessage(l(i?"tecton.element.select.searchable.results":"tecton.element.select.allOptions",[i?s:e.length]))}delegateFocus(t){const e=r(t,this.hostElement);(this.prioritizeSearch=e&&this.searchable)?this.clearSelectedDisplay():n(t,this.hostElement)&&this.inputField.shadowRoot.querySelector(".input-field").focus()}handleFocusout(t){const e=c(t,this.hostElement);e&&this.closeDropdown(),this.prioritizeSearch=!e&&this.searchable}async executeActionSheet(t){const e=await d(this,t);this.handleSelectionChanges(e)}handleSelectionChanges(t){const{value:e="",values:i=[]}=t,s=i.map((t=>t.value)),{multiple:l}=this;this.hostElement.onchange||(this.selectedOptions=s),this.change.emit({value:l?void 0:e,selectedOptions:l?s:void 0})}clearValue(){const{multiple:t}=this;this.value="",this.selectedOptions=[],this.change.emit({value:t?void 0:"",selectedOptions:t?[]:void 0})}calculateMultiSelectSelectedDisplay(){var t,e,i;const{firstSelectedOptionElement:s,firstSelectedValue:o,multilineOptions:a}=this;return o?(null==s?void 0:s.display)?l(s.display):a&&this.searchable?this.searchText:a?"":null!==(i=null!==(e=null===(t=null==s?void 0:s.textContent)||void 0===t?void 0:t.trim())&&void 0!==e?e:null==s?void 0:s.value)&&void 0!==i?i:o:""}calculateSingleSelectSelectedDisplay(){var t;const{firstSelectedOptionElement:e}=this;return(null==e?void 0:e.display)&&l(e.display)||(null===(t=null==e?void 0:e.textContent)||void 0===t?void 0:t.trim())||this.value||""}openDropdownWithoutActiveElement(){this.readonly||this.disabled||(this.optionList.setActiveElement(null),this.open=!0)}closeDropdown(){this.open=!1,this.clearSearchText()}clearSearchText(){this.searchText&&(this.searchText="",this.input.emit({query:""}))}toggleDropdown(){this.readonly||this.disabled||(this.open&&!this.searchText?this.closeDropdown():this.openDropdownWithoutActiveElement())}focusInput(){var t;null===(t=this.inputField)||void 0===t||t.dispatchEvent(new FocusEvent("focus"))}setStatusMessage(t){clearTimeout(this.statusMessageTimer),this.statusMessage="",this.statusMessageTimer=setTimeout((()=>{this.statusMessage=t}),1e3)}clearSelectedDisplay(){var t;null===(t=this.selectedDisplaySlot)||void 0===t||t.remove()}checkSelectedDisplay(){let t=this.selectedDisplaySlot;const{value:e,multiple:i,selectedOptions:s,multilineOptions:l,firstSelectedOptionElement:o,prioritizeSearch:a}=this;if(a||!l||!e&&i&&!(null==s?void 0:s.length))return this.clearSelectedDisplay();if(!o||o.display)return this.clearSelectedDisplay();const r=o.firstElementChild.cloneNode(!0);return r.querySelectorAll("[hide-on-select]").forEach((t=>t.remove())),t?(t.style.setProperty("--comp-selected-display-height",0===t.clientHeight?"auto":`${t.clientHeight}px`),t.firstElementChild.outerHTML!==r.outerHTML&&t.replaceChild(r,t.firstElementChild)):(t=document.createElement("div"),t.slot="_selected-display",t.appendChild(r),this.hostElement.appendChild(t)),t}checkSelectedDisplayHeight(){const{selectedDisplaySlot:t}=this;t&&t.style.setProperty("--comp-selected-display-height","44px")}shouldClearSearchText(t){return this.searchable&&!!this.searchText&&"Escape"===t.key}renderCustomDisplay(){if(this.checkSelectedDisplay())return this.checkSelectedDisplayHeight(),i("slot",{name:"_selected-display",slot:"custom-display"})}render(){const t=!this.searchable;return i("click-elsewhere",{class:this.wrapperClasses,onChange:this.clickedElsewhere},i("div",{"aria-live":"polite","aria-atomic":"true",role:"status",class:"sr"},this.statusMessage),i("q2-input",{ref:t=>this.inputField=t,class:"q2-select-input",label:this.label&&l(this.label)||"",value:this.selectedDisplay,errors:Array.isArray(this.errors)&&this.errors.length>0&&this.errors.map((t=>l(t)))||this.invalid&&["tecton.element.select.invalid"]||[],disabled:this.disabled,optional:this.optional,readonly:this.readonly,placeholder:this.placeholder||void 0,hideLabel:this.hideLabel,ariaExpanded:`${this.open}`,ariaControls:"option-list",ariaHaspopup:"listbox",role:this.searchable?"combobox":null,pseudo:t,"test-id":"toggleDropdown","hide-messages":!0,iconRight:"chevron-down",onClick:this.inputClickHandler,onInput:this.inputInputHandler,onKeyDown:this.inputKeydownHandler,onFocus:this.inputFocusHandler,onBlur:this.inputBlurHandler,onChange:this.inputChangeHandler,badgeValue:this.badgeValue,badgeTheme:this.inputFocused?"primary":void 0},this.renderCustomDisplay()),i("div",{class:"custom-display-content",hidden:!this.hasCustomDisplay||!!this.searchText,onClick:this.onCustomDisplayClick},i("slot",{name:"q2-select-display"})),this.optionsDropdown())}optionsDropdown(){return i("q2-popover",{ref:t=>this.popoverElement=t,controlElement:this.innerInputField,open:this.open,minHeight:this.popoverMinHeight,direction:this.popDirection,onPopoverStateChanged:this.popoverStateChanged,block:!0},i("div",{class:"popover-content",tabindex:"-1"},i("q2-option-list",{ref:t=>this.optionList=t,id:"option-list","show-selected":this.showSelected,"aria-label":this.listLabel,multiple:this.multiple,selectedOptions:this.structuredSelectedOptions,onChange:this.onOptionListChange},i("slot",null)),this.multiple&&this.visibilityToggle()))}visibilityToggle(){var t,e;const s=null!==(e=null===(t=this.selectedOptions)||void 0===t?void 0:t.length)&&void 0!==e?e:0,{showSelected:o}=this;return i("div",{class:"multi-select-header",ref:t=>this.multiSelectHeader=t},i("fieldset",null,i("legend",{"aria-label":l("tecton.element.select.multiHeader.showing")},l("tecton.element.select.multiHeader.showing")),i("div",null,i("input",{class:"sr",type:"radio",id:"all",name:"viewDisplay",value:"all",checked:!o,"aria-label":l("tecton.element.select.multiHeader.allAriaLabel"),"test-id":"allOptionsButton",onClick:this.showAllOptions,onKeyDown:this.visibilityToggleKeyDown}),i("label",{htmlFor:"all"},l("tecton.element.select.multiHeader.all"))),i("div",null,i("input",{class:"sr",type:"radio",id:"selected",disabled:0===s,name:"viewDisplay",value:"selected","aria-label":l("tecton.element.select.multiHeader.selectedAriaLabel",[s]),checked:o,"test-id":"selectedOptionsButton",onClick:this.showSelectedOptions,onKeyDown:this.visibilityToggleKeyDown}),i("label",{htmlFor:"selected"},l("tecton.element.select.multiHeader.selected",[s])))))}get hostElement(){return s(this)}static get watchers(){return{value:["buildStructuredSelectedOptions","valueUpdated"],selectedOptions:["buildStructuredSelectedOptions"],ariaLabel:["ariaLabelObserver"],multilineOptions:["handleMultilineOptionsUpdate"],open:["openChanged"]}}};p.style="*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-double-focus-ring, 0 0 0 2px #ffffff, 0 0 0 4px #33b4ff #06C)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit;font-stretch: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, #ffffff);color:var(--t-text, #4d4d4d);left:0;width:100%;z-index:100;margin-top:1px;box-shadow:var(--app-shadow-1, 0 2px 4px rgba(0, 0, 0, 0.3));height:0;overflow:hidden;opacity:0;visibility:hidden;transition:opacity var(--app-tween-1, 0.2s ease);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([block]) q2-btn,:host([block]){display:block}:host{display:block;margin-top:var(--tct-select-margin-top, var(--app-scale-4, 30px));margin-bottom:var(--tct-select-margin-bottom, var(--app-scale-4, 30px))}.q2-select-container{position:relative;display:block}.q2-select-input{margin:0;--tct-input-min-height:var(--tct-select-input-min-height, var(--t-select-input-min-height));--tct-input-max-height:var(--tct-select-input-max-height, var(--t-select-input-max-height, none))}::slotted([slot=_selected-display]){width:100%;min-height:var(--comp-selected-display-height, 44px)}.custom-display-content{position:absolute;bottom:0;left:calc(var(--tct-scale-2, var(--app-scale-2x, 10px)) + 1px);height:44px;width:calc(100% - 34px - var(--tct-scale-3, var(--app-scale-3x, 15px)));overflow:hidden;cursor:pointer;transition:left var(--tct-tween-2, var(--app-tween-1, 0.2s ease))}.custom-display-content:not([hidden]){display:flex;align-items:center}.is-searchable.is-focused .custom-display-content,.is-searchable .custom-display-content:active{left:calc(var(--tct-scale-3, var(--app-scale-3x, 15px)) + 1px)}.has-error .custom-display-content{width:calc(100% - 68px - var(--tct-scale-3, var(--app-scale-3x, 15px)))}.popover-content{display:flex;flex-direction:column-reverse}.multi-select-header{padding:var(--tct-scale-2, var(--app-scale-2x, 10px)) var(--tct-scale-2, var(--app-scale-2x, 10px));position:sticky;top:0;z-index:5;background:var(--app-white);display:flex;gap:var(--app-scale-2x, 10px);align-items:center}.multi-select-header fieldset{margin:0;padding:0;border:0;display:flex;gap:var(--app-scale-2x, 10px)}.multi-select-header legend{padding:0;float:left}.multi-select-header label{cursor:pointer;padding:var(--tct-select-multi-select-option-padding, var(--t-select-multi-select-option-padding, var(--tct-btn-badge-padding, var(--t-btn-badge-padding, 2px 5px))));font-size:var(--tct-select-multi-select-option-font-size, var(--t-select-multi-select-option-font-size, var(--tct-btn-badge-font-size, var(--t-btn-badge-font-size, inherit))));border-radius:var(--tct-select-multi-select-option-radius, var(--t-select-multi-select-option-radius, var(--tct-btn-badge-border-radius, var(--t-btn-badge-border-radius, var(--app-border-radius-1, 3px)))));background-color:var(--tct-select-multi-select-option-bg, var(--t-select-multi-select-option-bg, var(--tct-btn-badge-bg, var(--t-btn-badge-bg, transparent))));color:var(--tct-select-multi-select-option-color, var(--t-select-multi-select-option-color, var(--tct-btn-badge-font-color, var(--t-btn-badge-font-color, inherit))))}.multi-select-header label:hover{background-color:var(--tct-select-multi-select-option-hover-background-color, var(--t-select-multi-select-option-hover-background-color, var(--tct-btn-badge-hover-bg, var(--t-btn-badge-hover-bg, var(--tct-gray-14, var(--t-gray-14, var(--app-gray-l3, #f2f2f2)))))));color:var(--tct-select-multi-select-option-color, var(--t-select-multi-select-option-color, var(--tct-btn-badge-hover-font-color, var(--t-btn-badge-hover-font-color, var(--tct-gray-5, var(--t-gray-5, var(--app-gray-d2, #404040)))))))}.multi-select-header input:checked+label,.multi-select-header input:checked+label:enabled:hover{background-color:var(--tct-select-multi-select-option-active-background-color, var(--t-select-multi-select-option-active-background-color, var(--tct-btn-primary-bg, var(--t-btn-primary-bg, #2e2e2e))));color:var(--tct-select-multi-select-option-active-color, var(--t-select-multi-select-option-active-color, var(--tct-btn-primary-font-color, var(--t-btn-primary-font-color, var(--app-white, #ffffff)))))}.multi-select-header input:disabled+label{opacity:var(--tct-select-multi-select-option-active-color, var(--t-select-multi-select-option-active-color, var(--tct-btn-disabled-opacity, var(--t-btn-disabled-opacity, var(--app-disabled-opacity, 0.4)))));cursor:not-allowed}.multi-select-header input:focus+label{box-shadow:var(--const-double-focus-ring)}";export{p as q2_select}
@@ -1 +0,0 @@
1
- import{r as t,c as e,h as n,g as a}from"./p-926a3e80.js";import{l as r,s as i,h as o,o as s,i as d,a as l}from"./p-2453cd92.js";function c(t){if(null===t||!0===t||!1===t)return NaN;var e=Number(t);return isNaN(e)?e:e<0?Math.ceil(e):Math.floor(e)}function u(t,e){if(e.length<t)throw new TypeError(t+" argument"+(t>1?"s":"")+" required, but only "+e.length+" present")}function h(t){return(h="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function v(t){u(1,arguments);var e=Object.prototype.toString.call(t);return t instanceof Date||"object"===h(t)&&"[object Date]"===e?new Date(t.getTime()):"number"==typeof t||"[object Number]"===e?new Date(t):("string"!=typeof t&&"[object String]"!==e||"undefined"==typeof console||(console.warn("Starting with v2.0.0-beta.1 date-fns doesn't accept strings as date arguments. Please use `parseISO` to parse strings. See: https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#string-arguments"),console.warn((new Error).stack)),new Date(NaN))}function f(t,e){u(2,arguments);var n=v(t),a=c(e);return isNaN(a)?new Date(NaN):a?(n.setDate(n.getDate()+a),n):n}function m(t,e){u(2,arguments);var n=v(t).getTime(),a=c(e);return new Date(n+a)}var b={};function p(){return b}function y(t){var e=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return e.setUTCFullYear(t.getFullYear()),t.getTime()-e.getTime()}function g(t){u(1,arguments);var e=v(t);return e.setHours(0,0,0,0),e}function w(t,e){u(2,arguments);var n=g(t),a=g(e);return n.getTime()===a.getTime()}function x(t){return(x="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function D(t){return u(1,arguments),t instanceof Date||"object"===x(t)&&"[object Date]"===Object.prototype.toString.call(t)}function M(t){if(u(1,arguments),!D(t)&&"number"!=typeof t)return!1;var e=v(t);return!isNaN(Number(e))}function k(t,e){u(2,arguments);var n=c(e);return m(t,-n)}function E(t){u(1,arguments);var e=1,n=v(t),a=n.getUTCDay(),r=(a<e?7:0)+a-e;return n.setUTCDate(n.getUTCDate()-r),n.setUTCHours(0,0,0,0),n}function S(t){u(1,arguments);var e=v(t),n=e.getUTCFullYear(),a=new Date(0);a.setUTCFullYear(n+1,0,4),a.setUTCHours(0,0,0,0);var r=E(a),i=new Date(0);i.setUTCFullYear(n,0,4),i.setUTCHours(0,0,0,0);var o=E(i);return e.getTime()>=r.getTime()?n+1:e.getTime()>=o.getTime()?n:n-1}function P(t){u(1,arguments);var e=S(t),n=new Date(0);n.setUTCFullYear(e,0,4),n.setUTCHours(0,0,0,0);var a=E(n);return a}function $(t,e){var n,a,r,i,o,s,d,l;u(1,arguments);var h=p(),f=c(null!==(n=null!==(a=null!==(r=null!==(i=null==e?void 0:e.weekStartsOn)&&void 0!==i?i:null==e||null===(o=e.locale)||void 0===o||null===(s=o.options)||void 0===s?void 0:s.weekStartsOn)&&void 0!==r?r:h.weekStartsOn)&&void 0!==a?a:null===(d=h.locale)||void 0===d||null===(l=d.options)||void 0===l?void 0:l.weekStartsOn)&&void 0!==n?n:0);if(!(f>=0&&f<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var m=v(t),b=m.getUTCDay(),y=(b<f?7:0)+b-f;return m.setUTCDate(m.getUTCDate()-y),m.setUTCHours(0,0,0,0),m}function q(t,e){var n,a,r,i,o,s,d,l;u(1,arguments);var h=v(t),f=h.getUTCFullYear(),m=p(),b=c(null!==(n=null!==(a=null!==(r=null!==(i=null==e?void 0:e.firstWeekContainsDate)&&void 0!==i?i:null==e||null===(o=e.locale)||void 0===o||null===(s=o.options)||void 0===s?void 0:s.firstWeekContainsDate)&&void 0!==r?r:m.firstWeekContainsDate)&&void 0!==a?a:null===(d=m.locale)||void 0===d||null===(l=d.options)||void 0===l?void 0:l.firstWeekContainsDate)&&void 0!==n?n:1);if(!(b>=1&&b<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var y=new Date(0);y.setUTCFullYear(f+1,0,b),y.setUTCHours(0,0,0,0);var g=$(y,e),w=new Date(0);w.setUTCFullYear(f,0,b),w.setUTCHours(0,0,0,0);var x=$(w,e);return h.getTime()>=g.getTime()?f+1:h.getTime()>=x.getTime()?f:f-1}function T(t,e){var n,a,r,i,o,s,d,l;u(1,arguments);var h=p(),v=c(null!==(n=null!==(a=null!==(r=null!==(i=null==e?void 0:e.firstWeekContainsDate)&&void 0!==i?i:null==e||null===(o=e.locale)||void 0===o||null===(s=o.options)||void 0===s?void 0:s.firstWeekContainsDate)&&void 0!==r?r:h.firstWeekContainsDate)&&void 0!==a?a:null===(d=h.locale)||void 0===d||null===(l=d.options)||void 0===l?void 0:l.firstWeekContainsDate)&&void 0!==n?n:1),f=q(t,e),m=new Date(0);m.setUTCFullYear(f,0,v),m.setUTCHours(0,0,0,0);var b=$(m,e);return b}function O(t,e){for(var n=t<0?"-":"",a=Math.abs(t).toString();a.length<e;)a="0"+a;return n+a}var z={G:function(t,e,n){var a=t.getUTCFullYear()>0?1:0;switch(e){case"G":case"GG":case"GGG":return n.era(a,{width:"abbreviated"});case"GGGGG":return n.era(a,{width:"narrow"});case"GGGG":default:return n.era(a,{width:"wide"})}},y:function(t,e,n){if("yo"===e){var a=t.getUTCFullYear();return n.ordinalNumber(a>0?a:1-a,{unit:"year"})}return function(t,e){var n=t.getUTCFullYear(),a=n>0?n:1-n;return O("yy"===e?a%100:a,e.length)}(t,e)},Y:function(t,e,n,a){var r=q(t,a),i=r>0?r:1-r;return"YY"===e?O(i%100,2):"Yo"===e?n.ordinalNumber(i,{unit:"year"}):O(i,e.length)},R:function(t,e){return O(S(t),e.length)},u:function(t,e){return O(t.getUTCFullYear(),e.length)},Q:function(t,e,n){var a=Math.ceil((t.getUTCMonth()+1)/3);switch(e){case"Q":return String(a);case"QQ":return O(a,2);case"Qo":return n.ordinalNumber(a,{unit:"quarter"});case"QQQ":return n.quarter(a,{width:"abbreviated",context:"formatting"});case"QQQQQ":return n.quarter(a,{width:"narrow",context:"formatting"});case"QQQQ":default:return n.quarter(a,{width:"wide",context:"formatting"})}},q:function(t,e,n){var a=Math.ceil((t.getUTCMonth()+1)/3);switch(e){case"q":return String(a);case"qq":return O(a,2);case"qo":return n.ordinalNumber(a,{unit:"quarter"});case"qqq":return n.quarter(a,{width:"abbreviated",context:"standalone"});case"qqqqq":return n.quarter(a,{width:"narrow",context:"standalone"});case"qqqq":default:return n.quarter(a,{width:"wide",context:"standalone"})}},M:function(t,e,n){var a=t.getUTCMonth();switch(e){case"M":case"MM":return function(t,e){var n=t.getUTCMonth();return"M"===e?String(n+1):O(n+1,2)}(t,e);case"Mo":return n.ordinalNumber(a+1,{unit:"month"});case"MMM":return n.month(a,{width:"abbreviated",context:"formatting"});case"MMMMM":return n.month(a,{width:"narrow",context:"formatting"});case"MMMM":default:return n.month(a,{width:"wide",context:"formatting"})}},L:function(t,e,n){var a=t.getUTCMonth();switch(e){case"L":return String(a+1);case"LL":return O(a+1,2);case"Lo":return n.ordinalNumber(a+1,{unit:"month"});case"LLL":return n.month(a,{width:"abbreviated",context:"standalone"});case"LLLLL":return n.month(a,{width:"narrow",context:"standalone"});case"LLLL":default:return n.month(a,{width:"wide",context:"standalone"})}},w:function(t,e,n,a){var r=function(t,e){u(1,arguments);var n=v(t),a=$(n,e).getTime()-T(n,e).getTime();return Math.round(a/6048e5)+1}(t,a);return"wo"===e?n.ordinalNumber(r,{unit:"week"}):O(r,e.length)},I:function(t,e,n){var a=function(t){u(1,arguments);var e=v(t),n=E(e).getTime()-P(e).getTime();return Math.round(n/6048e5)+1}(t);return"Io"===e?n.ordinalNumber(a,{unit:"week"}):O(a,e.length)},d:function(t,e,n){return"do"===e?n.ordinalNumber(t.getUTCDate(),{unit:"date"}):function(t,e){return O(t.getUTCDate(),e.length)}(t,e)},D:function(t,e,n){var a=function(t){u(1,arguments);var e=v(t),n=e.getTime();e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0);var a=e.getTime();return Math.floor((n-a)/864e5)+1}(t);return"Do"===e?n.ordinalNumber(a,{unit:"dayOfYear"}):O(a,e.length)},E:function(t,e,n){var a=t.getUTCDay();switch(e){case"E":case"EE":case"EEE":return n.day(a,{width:"abbreviated",context:"formatting"});case"EEEEE":return n.day(a,{width:"narrow",context:"formatting"});case"EEEEEE":return n.day(a,{width:"short",context:"formatting"});case"EEEE":default:return n.day(a,{width:"wide",context:"formatting"})}},e:function(t,e,n,a){var r=t.getUTCDay(),i=(r-a.weekStartsOn+8)%7||7;switch(e){case"e":return String(i);case"ee":return O(i,2);case"eo":return n.ordinalNumber(i,{unit:"day"});case"eee":return n.day(r,{width:"abbreviated",context:"formatting"});case"eeeee":return n.day(r,{width:"narrow",context:"formatting"});case"eeeeee":return n.day(r,{width:"short",context:"formatting"});case"eeee":default:return n.day(r,{width:"wide",context:"formatting"})}},c:function(t,e,n,a){var r=t.getUTCDay(),i=(r-a.weekStartsOn+8)%7||7;switch(e){case"c":return String(i);case"cc":return O(i,e.length);case"co":return n.ordinalNumber(i,{unit:"day"});case"ccc":return n.day(r,{width:"abbreviated",context:"standalone"});case"ccccc":return n.day(r,{width:"narrow",context:"standalone"});case"cccccc":return n.day(r,{width:"short",context:"standalone"});case"cccc":default:return n.day(r,{width:"wide",context:"standalone"})}},i:function(t,e,n){var a=t.getUTCDay(),r=0===a?7:a;switch(e){case"i":return String(r);case"ii":return O(r,e.length);case"io":return n.ordinalNumber(r,{unit:"day"});case"iii":return n.day(a,{width:"abbreviated",context:"formatting"});case"iiiii":return n.day(a,{width:"narrow",context:"formatting"});case"iiiiii":return n.day(a,{width:"short",context:"formatting"});case"iiii":default:return n.day(a,{width:"wide",context:"formatting"})}},a:function(t,e,n){var a=t.getUTCHours()/12>=1?"pm":"am";switch(e){case"a":case"aa":return n.dayPeriod(a,{width:"abbreviated",context:"formatting"});case"aaa":return n.dayPeriod(a,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return n.dayPeriod(a,{width:"narrow",context:"formatting"});case"aaaa":default:return n.dayPeriod(a,{width:"wide",context:"formatting"})}},b:function(t,e,n){var a,r=t.getUTCHours();switch(a=12===r?"noon":0===r?"midnight":r/12>=1?"pm":"am",e){case"b":case"bb":return n.dayPeriod(a,{width:"abbreviated",context:"formatting"});case"bbb":return n.dayPeriod(a,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return n.dayPeriod(a,{width:"narrow",context:"formatting"});case"bbbb":default:return n.dayPeriod(a,{width:"wide",context:"formatting"})}},B:function(t,e,n){var a,r=t.getUTCHours();switch(a=r>=17?"evening":r>=12?"afternoon":r>=4?"morning":"night",e){case"B":case"BB":case"BBB":return n.dayPeriod(a,{width:"abbreviated",context:"formatting"});case"BBBBB":return n.dayPeriod(a,{width:"narrow",context:"formatting"});case"BBBB":default:return n.dayPeriod(a,{width:"wide",context:"formatting"})}},h:function(t,e,n){if("ho"===e){var a=t.getUTCHours()%12;return 0===a&&(a=12),n.ordinalNumber(a,{unit:"hour"})}return function(t,e){return O(t.getUTCHours()%12||12,e.length)}(t,e)},H:function(t,e,n){return"Ho"===e?n.ordinalNumber(t.getUTCHours(),{unit:"hour"}):function(t,e){return O(t.getUTCHours(),e.length)}(t,e)},K:function(t,e,n){var a=t.getUTCHours()%12;return"Ko"===e?n.ordinalNumber(a,{unit:"hour"}):O(a,e.length)},k:function(t,e,n){var a=t.getUTCHours();return 0===a&&(a=24),"ko"===e?n.ordinalNumber(a,{unit:"hour"}):O(a,e.length)},m:function(t,e,n){return"mo"===e?n.ordinalNumber(t.getUTCMinutes(),{unit:"minute"}):function(t,e){return O(t.getUTCMinutes(),e.length)}(t,e)},s:function(t,e,n){return"so"===e?n.ordinalNumber(t.getUTCSeconds(),{unit:"second"}):function(t,e){return O(t.getUTCSeconds(),e.length)}(t,e)},S:function(t,e){return function(t,e){var n=e.length,a=t.getUTCMilliseconds();return O(Math.floor(a*Math.pow(10,n-3)),e.length)}(t,e)},X:function(t,e,n,a){var r=(a._originalDate||t).getTimezoneOffset();if(0===r)return"Z";switch(e){case"X":return A(r);case"XXXX":case"XX":return W(r);case"XXXXX":case"XXX":default:return W(r,":")}},x:function(t,e,n,a){var r=(a._originalDate||t).getTimezoneOffset();switch(e){case"x":return A(r);case"xxxx":case"xx":return W(r);case"xxxxx":case"xxx":default:return W(r,":")}},O:function(t,e,n,a){var r=(a._originalDate||t).getTimezoneOffset();switch(e){case"O":case"OO":case"OOO":return"GMT"+Y(r,":");case"OOOO":default:return"GMT"+W(r,":")}},z:function(t,e,n,a){var r=(a._originalDate||t).getTimezoneOffset();switch(e){case"z":case"zz":case"zzz":return"GMT"+Y(r,":");case"zzzz":default:return"GMT"+W(r,":")}},t:function(t,e,n,a){return O(Math.floor((a._originalDate||t).getTime()/1e3),e.length)},T:function(t,e,n,a){return O((a._originalDate||t).getTime(),e.length)}};function Y(t,e){var n=t>0?"-":"+",a=Math.abs(t),r=Math.floor(a/60),i=a%60;if(0===i)return n+String(r);var o=e||"";return n+String(r)+o+O(i,2)}function A(t,e){return t%60==0?(t>0?"-":"+")+O(Math.abs(t)/60,2):W(t,e)}function W(t,e){var n=e||"",a=t>0?"-":"+",r=Math.abs(t);return a+O(Math.floor(r/60),2)+n+O(r%60,2)}var I=function(t,e){switch(t){case"P":return e.date({width:"short"});case"PP":return e.date({width:"medium"});case"PPP":return e.date({width:"long"});case"PPPP":default:return e.date({width:"full"})}},L=function(t,e){switch(t){case"p":return e.time({width:"short"});case"pp":return e.time({width:"medium"});case"ppp":return e.time({width:"long"});case"pppp":default:return e.time({width:"full"})}},j={p:L,P:function(t,e){var n,a=t.match(/(P+)(p+)?/)||[],r=a[1],i=a[2];if(!i)return I(t,e);switch(r){case"P":n=e.dateTime({width:"short"});break;case"PP":n=e.dateTime({width:"medium"});break;case"PPP":n=e.dateTime({width:"long"});break;case"PPPP":default:n=e.dateTime({width:"full"})}return n.replace("{{date}}",I(r,e)).replace("{{time}}",L(i,e))}},C=["D","DD"],N=["YY","YYYY"];function B(t){return-1!==C.indexOf(t)}function V(t){return-1!==N.indexOf(t)}function X(t,e,n){if("YYYY"===t)throw new RangeError("Use `yyyy` instead of `YYYY` (in `".concat(e,"`) for formatting years to the input `").concat(n,"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md"));if("YY"===t)throw new RangeError("Use `yy` instead of `YY` (in `".concat(e,"`) for formatting years to the input `").concat(n,"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md"));if("D"===t)throw new RangeError("Use `d` instead of `D` (in `".concat(e,"`) for formatting days of the month to the input `").concat(n,"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md"));if("DD"===t)throw new RangeError("Use `dd` instead of `DD` (in `".concat(e,"`) for formatting days of the month to the input `").concat(n,"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md"))}var G={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}};function Q(t){return function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=e.width?String(e.width):t.defaultWidth,a=t.formats[n]||t.formats[t.defaultWidth];return a}}var F={date:Q({formats:{full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},defaultWidth:"full"}),time:Q({formats:{full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},defaultWidth:"full"}),dateTime:Q({formats:{full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},R={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"};function J(t){return function(e,n){var a;if("formatting"===(null!=n&&n.context?String(n.context):"standalone")&&t.formattingValues){var r=t.defaultFormattingWidth||t.defaultWidth,i=null!=n&&n.width?String(n.width):r;a=t.formattingValues[i]||t.formattingValues[r]}else{var o=t.defaultWidth,s=null!=n&&n.width?String(n.width):t.defaultWidth;a=t.values[s]||t.values[o]}return a[t.argumentCallback?t.argumentCallback(e):e]}}function H(t){return function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},a=n.width,r=a&&t.matchPatterns[a]||t.matchPatterns[t.defaultMatchWidth],i=e.match(r);if(!i)return null;var o,s=i[0],d=a&&t.parsePatterns[a]||t.parsePatterns[t.defaultParseWidth],l=Array.isArray(d)?K(d,(function(t){return t.test(s)})):U(d,(function(t){return t.test(s)}));o=t.valueCallback?t.valueCallback(l):l,o=n.valueCallback?n.valueCallback(o):o;var c=e.slice(s.length);return{value:o,rest:c}}}function U(t,e){for(var n in t)if(t.hasOwnProperty(n)&&e(t[n]))return n}function K(t,e){for(var n=0;n<t.length;n++)if(e(t[n]))return n}var Z,_={code:"en-US",formatDistance:function(t,e,n){var a,r=G[t];return a="string"==typeof r?r:1===e?r.one:r.other.replace("{{count}}",e.toString()),null!=n&&n.addSuffix?n.comparison&&n.comparison>0?"in "+a:a+" ago":a},formatLong:F,formatRelative:function(t){return R[t]},localize:{ordinalNumber:function(t){var e=Number(t),n=e%100;if(n>20||n<10)switch(n%10){case 1:return e+"st";case 2:return e+"nd";case 3:return e+"rd"}return e+"th"},era:J({values:{narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},defaultWidth:"wide"}),quarter:J({values:{narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},defaultWidth:"wide",argumentCallback:function(t){return t-1}}),month:J({values:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},defaultWidth:"wide"}),day:J({values:{narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},defaultWidth:"wide"}),dayPeriod:J({values:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},defaultWidth:"wide",formattingValues:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},defaultFormattingWidth:"wide"})},match:{ordinalNumber:(Z={matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:function(t){return parseInt(t,10)}},function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=t.match(Z.matchPattern);if(!n)return null;var a=n[0],r=t.match(Z.parsePattern);if(!r)return null;var i=Z.valueCallback?Z.valueCallback(r[0]):r[0];i=e.valueCallback?e.valueCallback(i):i;var o=t.slice(a.length);return{value:i,rest:o}}),era:H({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:"any"}),quarter:H({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:"wide",parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:"any",valueCallback:function(t){return t+1}}),month:H({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:"any"}),day:H({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:"any"}),dayPeriod:H({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:"any"})},options:{weekStartsOn:0,firstWeekContainsDate:1}},tt=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,et=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,nt=/^'([^]*?)'?$/,at=/''/g,rt=/[a-zA-Z]/;function it(t){var e=t.match(nt);return e?e[1].replace(at,"'"):t}function ot(t,e){u(2,arguments);var n=v(t),a=v(e);return n.getTime()>a.getTime()}function st(t){const e=new Date(t);if(M(e))return function(t,e){var n,a;u(1,arguments);var r=v(t);if(isNaN(r.getTime()))throw new RangeError("Invalid time value");var i=String(null!==(n=null==e?void 0:e.format)&&void 0!==n?n:"extended"),o=String(null!==(a=null==e?void 0:e.representation)&&void 0!==a?a:"complete");if("extended"!==i&&"basic"!==i)throw new RangeError("format must be 'extended' or 'basic'");if("date"!==o&&"time"!==o&&"complete"!==o)throw new RangeError("representation must be 'date', 'time', or 'complete'");var s="",d="",l="extended"===i?"-":"",c="extended"===i?":":"";if("time"!==o){var h=O(r.getDate(),2),f=O(r.getMonth()+1,2),m=O(r.getFullYear(),4);s="".concat(m).concat(l).concat(f).concat(l).concat(h)}if("date"!==o){var b=r.getTimezoneOffset();if(0!==b){var p=Math.abs(b),y=O(Math.floor(p/60),2),g=O(p%60,2);d="".concat(b<0?"+":"-").concat(y,":").concat(g)}else d="Z";var w=""===s?"":"T",x=[O(r.getHours(),2),O(r.getMinutes(),2),O(r.getSeconds(),2)].join(c);s="".concat(s).concat(w).concat(x).concat(d)}return s}(e,{representation:"date"})}function dt(t){const e=new Date(t);if(!M(e))return;const n=e.toISOString();return new Intl.DateTimeFormat("default",{month:"2-digit",day:"2-digit",year:"numeric",timeZone:Intl.DateTimeFormat().resolvedOptions().timeZone}).format(new Date(n))}function lt(t){const e=new Date(t);if(M(e))return new Intl.DateTimeFormat("default",{month:"short",day:"numeric",year:"numeric"}).format(e)}function ct(t){const e="string"==typeof t;if(!e&&t&&M(new Date(t||void 0)))t=st(t);else if(!t||!M(new Date(t)))return;let n;const a=t.split(/[\/\-]/).map((t=>t.padStart(2,"0"))),r=3===a.length,i=a.length<3;if(e&&t.length>=24&&"T"===t[10])t=t.split("T")[0],n=new Date(t);else if(r)t.includes("/")&&4===a[2].length&&a.unshift(a.pop()),n=new Date(a.join("-"));else if(i){const t=new Date;let e,r,i;switch(a.length){case 1:e=t.getFullYear(),r=a[0],i="01";break;case 2:e=t.getFullYear(),r=a[0],i=a[1]}n=new Date(`${e}-${r}-${i}`)}if(M(n))return n=ut(n),M(n)?n:void 0}function ut(t){const e=t.getTimezoneOffset();return function(t,e){u(2,arguments);var n=v(t),a=c(e);return n.setMinutes(a),n}(t,e+Math.abs(e%60))}function ht(t){return Array.isArray(t)&&0!==t.length?t.map((t=>ct(t))):[]}function vt(t=new Date){return{monthIndex:t.getMonth(),selectedYear:t.getFullYear()}}function ft(t="",e=[],n=[],a=[],i,o,s="mm/dd/yyyy",d){let l=!0,c=!1,u="info",h=`${r("tecton.element.calendar.hint.format")}: ${s}`;if(!t)return{isValid:l,inputDate:new Date(""),isAvailable:c,messageType:u,message:h};const v=function(t,e){const n=new Date,[a,r,i]=t.split("/");if(10===t.length)return new Date(t);if(a&&r&&Number(r)>0){const t=Number(r)<10?`0${Number(r)}`:r,n=!i||i.length<4?function(t,e,n){const a=`${t}/${e}`,r=new Date,i=`${r.getMonth()<9?`0${r.getMonth()+1}`:`${r.getMonth()+1}`}/${r.getDate()<10?`0${r.getDate()}`:`${r.getDate()}`}/${r.getFullYear()}`;let o=r.getFullYear();return"future"===n&&i.slice(0,5)>a?o=r.getFullYear()+1:"past"===n&&i.slice(0,5)<a&&(o=r.getFullYear()-1),o.toString()}(a,r,e):i;return new Date(`${a}/${t}/${n}`)}return a&&r&&0===Number(r)?new Date(""):a?new Date(`${a}/01/${n.getFullYear()}`):void 0}(t,d),f=v.getMonth()+1,m=v.getDate(),b=v.getFullYear(),p=[f,m,b];if(M(v)){const d=mt()[v.getMonth()];10===t.length?(l=!0,u="success",h=`${r("tecton.element.calendar.hint.selection")}: ${lt(v)}`):(l=!1,u="error",h=`${r("tecton.element.calendar.hint.incompleteEntry")}: ${s}`),c=e.includes(v.getDay());const f=st(v);if(c){const t=n.length&&!n.includes(f),e=a.length&&a.includes(f),r=i&&i>f,s=o&&o<f;(t||e||r||s)&&(c=!1)}t.length>=5&&!c&&(l=!1,u="error",h=d&&m&&b?r("tecton.element.calendar.hint.notAvailableDate",[lt(v)]):`${r("tecton.element.calendar.hint.invalidDate")}: ${s}`)}else l=!1,u="error",h=`${r("tecton.element.calendar.hint.invalidDate")}: ${s}`;return{isValid:l,messageType:u,message:h,inputDate:v,isAvailable:c,calendarPosition:p}}function mt(){return[r("tecton.element.calendar.months.January"),r("tecton.element.calendar.months.February"),r("tecton.element.calendar.months.March"),r("tecton.element.calendar.months.April"),r("tecton.element.calendar.months.May"),r("tecton.element.calendar.months.June"),r("tecton.element.calendar.months.July"),r("tecton.element.calendar.months.August"),r("tecton.element.calendar.months.September"),r("tecton.element.calendar.months.October"),r("tecton.element.calendar.months.November"),r("tecton.element.calendar.months.December")]}function bt(t=127){const e=2&t,n=4&t,a=8&t,r=16&t,i=32&t,o=64&t,s=[];return t<=0||(1&t&&s.push(0),e&&s.push(1),n&&s.push(2),a&&s.push(3),r&&s.push(4),i&&s.push(5),o&&s.push(6)),s}function pt(t,e){return t.includes(e.getDay())}function yt(t,e){return!gt(t,e)}function gt(t,e){return t.some((t=>w(t,e)))}function wt(t,e,n,a,r,i,o){const s=[xt.bind(null,i,new Date)];return s.push((null==e?void 0:e.length)?gt.bind(null,e):pt.bind(null,t)),s.push(yt.bind(null,n)),function({monthIndex:t,selectedYear:e},n,a,r,i){const o=!M(new Date(i)),s=function(t,e){const n=function(t){u(1,arguments);var e=v(t),n=e.getFullYear(),a=e.getMonth(),r=new Date(0);return r.setFullYear(n,a+1,0),r.setHours(0,0,0,0),r.getDate()}(new Date(e,t));return[...Array(n).keys()].reduce(((n,a)=>(n.push(new Date(e,t,a+1)),n)),[])}(t,e).map(((t,e)=>{const i=r.some((e=>!e(t))),s=function(t,e,n){n||(n=new Date);return{isSelected:n&&w(n,t),isToday:w(t,new Date),isStartDate:w(t,null==e?void 0:e.startDate),isEndDate:w(t,null==e?void 0:e.endDate)}}(t,a,n),d=function({isInvalid:t,isSelected:e,isEndDate:n,isStartDate:a,isToday:r,isIncompleteDate:i}){const o=[];return t||o.push("is-valid"),e&&o.push("is-selected"),n&&o.push("is-end-date"),a&&o.push("is-start-date"),r&&o.push("is-today"),e&&t&&!i&&o.push("is-unavailable"),o.join(" ")}(Object.assign(Object.assign({},s),{isInvalid:i,isIncompleteDate:o}));return Object.assign(Object.assign({},s),{isValid:!i,date:t,integer:e+1,isEmpty:!1,isActivity:!1,classList:d})})),d=Mt(0,new Date(e,t,1,1,1,1,1).getDay()),l=0===(c=(d.length+s.length)%7)?[]:Mt(c,7);var c;return[...d,...s,...l]}(a,r,i,s,o)}function xt(t,e,n){const a=ot(null==t?void 0:t.startDate,n),r=function(t,e){u(2,arguments);var n=v(t),a=v(e);return n.getTime()<a.getTime()}(null==t?void 0:t.endDate,n),i=w(e,n)&&ot(e,null==t?void 0:t.cutOffTime);return!(a||i||r)}const Dt={date:null,integer:null,isActivity:!1,isEmpty:!0,isValid:!1,isToday:!1,isSelected:!1,isStartDate:!1,isEndDate:!1,classList:""};function Mt(t,e){return 7===t&&(t=0),[...Array(e-t).keys()].map((()=>Object.assign({},Dt)))}const kt=class{constructor(n){t(this,n),this.change=e(this,"change",7),this.error=e(this,"error",7),this.success=e(this,"success",7),this.formatModifier="M/D/YYYY",this.defaultFormatString="mm/dd/yyyy",this.defaultHintMessage=r("tecton.element.calendar.hint.format")+": "+this.defaultFormatString,this.scheduledAfterRender=[],this.dayAbbrStrings=[r("tecton.element.calendar.days.short.Sunday"),r("tecton.element.calendar.days.short.Monday"),r("tecton.element.calendar.days.short.Tuesday"),r("tecton.element.calendar.days.short.Wednesday"),r("tecton.element.calendar.days.short.Thursday"),r("tecton.element.calendar.days.short.Friday"),r("tecton.element.calendar.days.short.Saturday")],this.dayStrings=[r("tecton.element.calendar.days.Sunday"),r("tecton.element.calendar.days.Monday"),r("tecton.element.calendar.days.Tuesday"),r("tecton.element.calendar.days.Wednesday"),r("tecton.element.calendar.days.Thursday"),r("tecton.element.calendar.days.Friday"),r("tecton.element.calendar.days.Saturday")],this.monthStrings=mt(),this.closeCalendar=()=>{this.dropdownOpen&&(this.dropdownOpen=!1,this.focusInput(),this.scheduledAfterRender.push(this.resizeIframe))},this.openCalendar=()=>{this.readonly||this.dropdownOpen||(this.selectedMonthYear=vt(this.dateValue),this.dateList=this.buildDateList(this.selectedMonthYear),this.dropdownOpen=!0,this.focusInput(),this.scheduledAfterRender.push(this.resizeIframe))},this.toggleCalendar=()=>{this.readonly||(this.dropdownOpen=!this.dropdownOpen,this.scheduledAfterRender.push(this.resizeIframe),this.dropdownOpen?(this.selectedMonthYear=vt(this.dateValue),this.dateList=this.buildDateList(this.selectedMonthYear)):this.focusInput())},this.onClickElsewhere=t=>{"click-elsewhere"===t.target.localName&&(t.stopPropagation(),this.closeCalendar())},this.onPopupKeyup=t=>{"Escape"!==t.key&&"Esc"!==t.key||(this.onInputBlur(),this.closeCalendar())},this.onInputInput=({detail:{value:t}})=>{this.typedValue=t},this.onInputKeydown=t=>{const{dateValue:e}=this;switch(t.key){case"ArrowDown":t.preventDefault(),this.openCalendar(),this.activateDay(e||new Date)}},this.onInputKeyup=t=>{if(this.disabled)return;if("Escape"===t.key||"Esc"===t.key)return this.onInputBlur(),void this.closeCalendar();if(!this.isTypeable)return;this.typedValue=function(t){if(!t)return"";if(t.match(/^[1-9]\/$/))return`0${t}/`;if(t.match(/^[0-9]{2}\/[1-9]{1}\/$/)){const e=t.split("/");return`${e[0]}/0${e[1]}/`}return t}(this.typedValue);const{typedValue:e}=this,n=bt(this.daysOfWeekChecksum),{isValid:a,message:r,messageType:i,inputDate:o,isAvailable:s,calendarPosition:d}=ft(e,n,this.validDates,this.invalidDates,this.startDate,this.endDate,this.defaultFormatString,this.assume);if(d){const[t,e,n]=d,a=new Date(`${n}-${t}-${e}`);M(a)&&(this.selectedMonthYear=vt(a),this.dateList=this.buildDateList(this.selectedMonthYear),this.validateDate())}"Enter"===t.key?(a||e&&e.length>4&&o&&M(o)&&s?this.setCompleteInput(o):this.value&&(this.value=null,this.change.emit({value:null}),this.typedValue=e),this.keyboardSelection?(this.keyboardSelection=!1,this.closeCalendar()):this.toggleCalendar()):this.setHints({isValid:a,message:r,messageType:i})},this.onInputChange=t=>{this.isTypeable&&t.stopPropagation()},this.onInputBlur=()=>{if(!this.isTypeable)return;const t=bt(this.daysOfWeekChecksum),{typedValue:e}=this,{isValid:n,inputDate:a,isAvailable:r}=ft(this.typedValue,t,this.validDates,this.invalidDates,this.startDate,this.endDate,this.defaultFormatString,this.assume);e||"Invalid Date"!==(null==a?void 0:a.toString())?n||e&&e.length>4&&a&&M(a)&&r?this.setCompleteInput(a):this.value&&(this.value=null,this.change.emit({value:null}),this.typedValue=e):this.setHints({isValid:!0,message:this.defaultHintMessage,messageType:"info"})},this.onInputClick=()=>{this.disabled||(i(this),this.toggleCalendar())},this.onRefocus=()=>{var t;null===(t=this.btnPrevMonth)||void 0===t||t.dispatchEvent(new FocusEvent("focus"))},this.goToMonthYear=(t,e)=>{t<0?(t=11,e--):t>11&&(t=0,e++),this.selectedMonthYear={monthIndex:t,selectedYear:e},this.dateList=this.buildDateList(this.selectedMonthYear),this.scheduledAfterRender.push((()=>this.checkActiveCellForBlankness()))},this.selectDate=t=>{const{isValid:e}=this.dateList.find((({date:e})=>w(e,t)));e&&(this.change.emit({value:st(t)}),this.typedValue=dt(t),this.invalid=!1)},this.onDateSelection=t=>{const e=t.target.closest("td:not([aria-hidden])");if(!e)return;const n=ut(new Date(e.dataset.date));this.selectDate(n),this.isTypeable&&this.setHints({isValid:!0,message:`${r("tecton.element.calendar.hint.selection")}: ${lt(n)}`,messageType:"success"}),this.closeCalendar()},this.onDateKeydown=t=>{const{monthIndex:e,selectedYear:n}=this.selectedMonthYear,a=parseInt(t.target.dataset.day),r=this.generateDateFromDay(a);switch(t.key){case"ArrowUp":t.preventDefault(),this.activateDay(f(r,-7));break;case"ArrowDown":t.preventDefault(),this.activateDay(f(r,7));break;case"ArrowRight":t.preventDefault(),this.activateDay(f(r,1));break;case"ArrowLeft":t.preventDefault(),this.activateDay(f(r,-1));break;case"PageUp":t.preventDefault(),t.shiftKey?this.goToMonthYear(e,n-1):this.goToMonthYear(e-1,n);break;case"PageDown":t.preventDefault(),t.shiftKey?this.goToMonthYear(e,n+1):this.goToMonthYear(e+1,n);break;case"Home":t.preventDefault(),this.activateDay(f(r,-r.getDay()));break;case"End":t.preventDefault(),this.activateDay(f(r,6-r.getDay()));break;case"Escape":t.preventDefault(),this.closeCalendar(),this.focusInput();break;case"Enter":if(t.preventDefault(),!this.dateList.find((({date:t})=>w(t,r))).isValid)return;this.selectDate(r),this.closeCalendar(),this.focusInput();break;case" ":if(t.preventDefault(),!this.dateList.find((({date:t})=>w(t,r))).isValid)return;this.selectDate(r),this.focusInput()}},this.value=void 0,this.label=void 0,this.hideLabel=void 0,this.optional=void 0,this.disabled=void 0,this.readonly=void 0,this.invalid=void 0,this.typeable=void 0,this.clearable=void 0,this.placeholder=void 0,this.disabledMsg=void 0,this.calendarLabel=void 0,this.disclaimer=void 0,this.displayFormat=void 0,this.startDate=void 0,this.endDate=void 0,this.cutoffTime=void 0,this.daysOfWeekChecksum=void 0,this.popDirection=void 0,this.assume="current",this.errors=void 0,this.invalidDates=void 0,this.validDates=void 0,this.onsuccess=void 0,this.buttonLabel=void 0,this.ariaLabel=void 0,this.dropdownOpen=!1,this.keyboardSelection=!1,this.typedValue="",this.dateList=void 0,this.hintMessage=this.defaultHintMessage,this.hintMessageType="info"}resizeIframe(){return window.TectonElements&&window.TectonElements.resizeIframe&&window.TectonElements.resizeIframe()}connectedCallback(){this.selectedMonthYear=vt(this.dateValue),this.dateList=this.buildDateList(this.selectedMonthYear),this.value&&this.isTypeable&&!this.typedValue&&(this.typedValue=function(t){const e=(t||"").split("-");return 3!==e.length?"":`${e[1]}/${e[2]}/${e[0]}`}(this.value)),this.validateDate()}componentWillLoad(){o(this)}componentDidRender(){setTimeout((()=>{this.scheduledAfterRender.forEach((t=>t())),this.scheduledAfterRender=[]}),25)}componentDidLoad(){s(this.hostElement)}get canClear(){return this.isTypeable?this.clearable&&!!this.typedValue:this.clearable&&!!this.value}get currentWeeks(){return this.dateList.reduce(((t,e,n)=>{const a=Math.floor(n/7);return t[a]||(t[a]=[]),t[a].push(e),t}),[])}get localizedErrors(){return Array.isArray(this.errors)&&this.errors.filter((t=>t)).map((t=>t&&r(t)))||[]}get formattedValue(){const{typedValue:t,dateValue:e,displayFormat:n,isTypeable:a}=this;return a?t:void 0===e?"":n?function(t,e,n){var a,r,i,o,s,d,l,h,f,m,b,g,w,x,D,E,S,P;u(2,arguments);var $=String(e),q=p(),T=null!==(a=null!==(r=null==n?void 0:n.locale)&&void 0!==r?r:q.locale)&&void 0!==a?a:_,O=c(null!==(i=null!==(o=null!==(s=null!==(d=null==n?void 0:n.firstWeekContainsDate)&&void 0!==d?d:null==n||null===(l=n.locale)||void 0===l||null===(h=l.options)||void 0===h?void 0:h.firstWeekContainsDate)&&void 0!==s?s:q.firstWeekContainsDate)&&void 0!==o?o:null===(f=q.locale)||void 0===f||null===(m=f.options)||void 0===m?void 0:m.firstWeekContainsDate)&&void 0!==i?i:1);if(!(O>=1&&O<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var Y=c(null!==(b=null!==(g=null!==(w=null!==(x=null==n?void 0:n.weekStartsOn)&&void 0!==x?x:null==n||null===(D=n.locale)||void 0===D||null===(E=D.options)||void 0===E?void 0:E.weekStartsOn)&&void 0!==w?w:q.weekStartsOn)&&void 0!==g?g:null===(S=q.locale)||void 0===S||null===(P=S.options)||void 0===P?void 0:P.weekStartsOn)&&void 0!==b?b:0);if(!(Y>=0&&Y<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");if(!T.localize)throw new RangeError("locale must contain localize property");if(!T.formatLong)throw new RangeError("locale must contain formatLong property");var A=v(t);if(!M(A))throw new RangeError("Invalid time value");var W=y(A),I=k(A,W),L={firstWeekContainsDate:O,weekStartsOn:Y,locale:T,_originalDate:A};return $.match(et).map((function(t){var e=t[0];return"p"===e||"P"===e?(0,j[e])(t,T.formatLong):t})).join("").match(tt).map((function(a){if("''"===a)return"'";var r=a[0];if("'"===r)return it(a);var i=z[r];if(i)return null!=n&&n.useAdditionalWeekYearTokens||!V(a)||X(a,e,String(t)),null!=n&&n.useAdditionalDayOfYearTokens||!B(a)||X(a,e,String(t)),i(I,a,T.localize,L);if(r.match(rt))throw new RangeError("Format string contains an unescaped latin alphabet character `"+r+"`");return a})).join("")}(e,n.replace(/[d]/g,"E").replace(/[D]/g,"d").replace(/[Y]/g,"y").replace(/[l]/g,"P").replace(/[W]/g,"I")):new Intl.DateTimeFormat("default",{year:"numeric",month:"2-digit",day:"2-digit",timeZone:Intl.DateTimeFormat().resolvedOptions().timeZone}).format(e)}get computedPlaceholder(){return this.disabled&&this.disabledMsg?r(this.disabledMsg):this.buttonLabel&&(this.disabled||this.placeholder)?r(this.buttonLabel):this.placeholder&&r(this.placeholder)||""}get dateValue(){if(this.isTypeable)return ct(this.typedValue);{let{value:t}=this;return t&&"string"!=typeof t&&"toDate"in t?t.toDate():("string"==typeof t&&6===t.split(" ").length&&/GMT-\d{4}/g.test(t)&&(t=st(t)),ct(t))}}get dateValidators(){const t=new Date(this.cutoffTime||"");return{startDate:ct(this.startDate),endDate:ct(this.endDate),cutOffTime:M(t)?t:void 0}}get isTypeable(){var t;return this.typeable&&!(null===(t=window.Tecton)||void 0===t?void 0:t.inMobileApp)&&!d()}defaultChangeHandler(t){t.target===this.hostElement&&!this.hostElement.onchange&&t.detail&&(this.value=t.detail.value)}defaultErrorHandler(t){if(t.target===this.hostElement&&!this.hostElement.onerror){if(Array.isArray(this.errors)&&this.errors.includes("tecton.element.calendar.invalidDate"))return;this.errors=(this.errors||[]).concat(["tecton.element.calendar.invalidDate"])}}defaultSuccessHandler(t){t.target===this.hostElement&&("function"==typeof this.onsuccess?this.onsuccess(t):Array.isArray(this.errors)&&this.errors.includes("tecton.element.calendar.invalidDate")&&(this.errors=this.errors.filter((t=>"tecton.element.calendar.invalidDate"!==t))))}delegateFocus(t){l(t,this.hostElement)&&this.inputField.shadowRoot.querySelector(".input-field").focus()}handleClear(){this.value=null,this.typedValue="",this.setHints({isValid:!0,message:this.defaultHintMessage,messageType:"info"})}ariaLabelObserver(){o(this)}valueObserver(t){const e=t&&"string"!=typeof t&&"toDate"in t;if(this.isTypeable){const n=e?dt(t.toDate()):t;this.typedValue=n,n||this.invalid||this.setHints({isValid:!0,message:this.defaultHintMessage,messageType:"info"})}else{const n=e?t.toDate():ct(t);this.inputField.value=dt(n),this.selectedMonthYear=vt(n),this.dateList=this.buildDateList(this.selectedMonthYear),this.validateDate()}}daysOfWeekChecksumObserver(){this.dateList=this.buildDateList(this.selectedMonthYear),this.validateDate()}validDatesObserver(){this.dateList=this.buildDateList(this.selectedMonthYear),this.validateDate()}invalidDatesObserver(){this.dateList=this.buildDateList(this.selectedMonthYear),this.validateDate()}startDateObserver(){this.dateList=this.buildDateList(this.selectedMonthYear),this.validateDate()}endDateObserver(){this.dateList=this.buildDateList(this.selectedMonthYear),this.validateDate()}cutoffTimeObserver(){this.dateList=this.buildDateList(this.selectedMonthYear),this.validateDate()}buildDateList(t){const e=ht(this.invalidDates);return wt(bt(this.daysOfWeekChecksum),ht(this.validDates),e,t,this.dateValue,this.dateValidators,this.typedValue)}validateDate(){var t,e,n;try{if(this.value){const{dateValue:a}=this,r=null!==(t=null==a?void 0:a.getMonth())&&void 0!==t?t:void 0,i=null!==(e=null==a?void 0:a.getFullYear())&&void 0!==e?e:void 0,{monthIndex:o,selectedYear:s}=this.selectedMonthYear,d=r===o&&i===s;let l=[];l=a?d?this.dateList:this.buildDateList({monthIndex:r,selectedYear:i}):[];const c=null!==(n=null==a?void 0:a.getDate())&&void 0!==n?n:void 0;c&&l.find((({integer:t})=>t===c)).isValid?this.success.emit({value:st(a)}):this.error.emit({errors:[{message:`Value passed is invalid: The date ${this.value} is not valid`,errorCode:"generalInvalid"}]})}}catch(t){console.warn("Invalid moment value ",this.dateValue)}}focusInput(){var t;null===(t=this.inputField)||void 0===t||t.dispatchEvent(new FocusEvent("focus"))}checkActiveCellForBlankness(){const t=this.hostElement.shadowRoot.activeElement;if(!t||"TD"!==t.tagName||!t.hasAttribute("aria-hidden"))return;const{calendarBody:e}=this,n=Array.from(e.querySelectorAll("td")),a=Array.from(n).indexOf(t)<15?1:n.filter((t=>!t.hasAttribute("aria-hidden"))).length;this.focusDay(this.generateDateFromDay(a))}generateDateFromDay(t){const{monthIndex:e,selectedYear:n}=this.selectedMonthYear;return new Date(n,e,t)}activateDay(t){this.goToMonthYear(t.getMonth(),t.getFullYear()),this.scheduledAfterRender.push((()=>this.focusDay(t)))}focusDay(t){var e;null===(e=this.calendarBody.querySelector(`td[data-day="${t.getDate()}"]`))||void 0===e||e.focus()}render(){return n("click-elsewhere",{class:"calendar-container"+(this.dropdownOpen?" dropdown-open":""),onChange:this.onClickElsewhere},this.calendarField(),n("div",{ref:t=>this.dropdownContainer=t,"aria-modal":"true",role:"dialog","aria-label":r("tecton.element.calendar.dialogLabel"),class:"q2-element-dropdown "+("up"===this.privatePopDirection?"dropup":"")},this.isTypeable&&this.hintField(),this.calendarPopUp()))}hintField(){return n("q2-message",{type:this.hintMessageType,class:"calendar-hint"},this.hintMessage)}setHints({isValid:t,message:e,messageType:n}){this.invalid=!t,this.hintMessage=e,this.hintMessageType=n,this.invalid||(this.errors=[])}setCompleteInput(t){const e=dt(t);this.change.emit({value:st(t)}),this.typedValue=e,this.setHints({isValid:!0,message:`${r("tecton.element.calendar.hint.selection")}: ${lt(t)}`,messageType:"success"})}calendarField(){return n("q2-input",{ref:t=>this.inputField=t,class:"calendar-input-field",value:this.formattedValue,label:r(this.label),hideLabel:this.hideLabel,disabled:!!this.disabled,readonly:!!this.readonly,clearable:this.canClear,placeholder:this.computedPlaceholder,optional:!!this.optional,ariaExpanded:`${!!this.dropdownOpen}`,errors:this.localizedErrors.length>0&&this.localizedErrors||this.invalid&&["tecton.element.calendar.invalid"]||[],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":!0,"test-id":"inputAndCalendarToggle"})}calendarPopUp(){const{monthIndex:t,selectedYear:e}=this.selectedMonthYear;return n("div",{class:"calendar-field-popup",onKeyUp:this.onPopupKeyup},this.calendarLabel&&n("p",{class:"calendar-label"},r(this.calendarLabel)),n("div",{class:"cal-month-heading"},n("q2-btn",{label:r("tecton.element.calendar.previousMonth"),"hide-label":!0,ref:t=>this.btnPrevMonth=t,class:"cal-nav-btn prev-month","test-id":"previousMonthButton",onClick:()=>this.goToMonthYear(t-1,e)},n("q2-icon",{type:"chevron-left"})),n("span",{class:"cal-month-text"},this.monthStrings[t]),n("q2-btn",{label:r("tecton.element.calendar.nextMonth"),"hide-label":!0,class:"cal-nav-btn next-month",ref:t=>this.btnNextMonth=t,"test-id":"nextMonthButton",onClick:()=>this.goToMonthYear(t+1,e)},n("q2-icon",{type:"chevron-right"})),n("q2-btn",{label:r("tecton.element.calendar.previousYear"),"hide-label":!0,class:"cal-nav-btn prev-year",ref:t=>this.btnPrevYear=t,"test-id":"previousYearButton",onClick:()=>this.goToMonthYear(t,e-1)},n("q2-icon",{type:"chevron-left"})),n("span",{class:"cal-year-text"},this.selectedMonthYear.selectedYear),n("q2-btn",{label:r("tecton.element.calendar.nextYear"),"hide-label":!0,class:"cal-nav-btn next-year",ref:t=>this.btnNextYear=t,"test-id":"nextYearButton",onClick:()=>this.goToMonthYear(t,e+1)},n("q2-icon",{type:"chevron-right"}))),n("div",{class:"sr","aria-live":"polite",id:"table-label"},`${this.monthStrings[t]} ${e}`),this.calendarDays(),this.disclaimer&&n("div",{class:"calendar-disclaimer"},r(this.disclaimer)),n("q2-btn",{class:"sr refocus-popup",onFocus:this.onRefocus}))}calendarDays(){const t=this.monthStrings[this.selectedMonthYear.monthIndex];return n("table",{role:"grid","aria-labelledby":"table-label"},n("thead",null,n("tr",null,[...Array(7).keys()].map((t=>n("th",{scope:"col",abbr:this.dayStrings[t]},this.dayAbbrStrings[t]))))),n("tbody",{onClick:this.onDateSelection,onKeyDown:this.onDateKeydown,ref:t=>this.calendarBody=t,"test-id":"calendarTableBody"},this.currentWeeks.map((e=>n("tr",null,e.map((e=>{var a;let i=`${t} ${e.integer}`;return e.isSelected&&(i+=` (${r("tecton.element.calendar.selected")})`),n("td",{class:e.classList,"aria-hidden":e.isEmpty?"true":void 0,tabindex:e.isSelected?0:-1,role:e.isSelected?"gridcell":void 0,"aria-selected":e.isSelected?"true":void 0,"aria-disabled":e.isValid?void 0:"true","data-day":e.integer||void 0,"data-date":e.date?st(e.date):void 0},(null==e?void 0:e.isToday)&&n("div",{class:"today-decorator"},r("tecton.element.calendar.today")),n("div",{"aria-label":i},null!==(a=null==e?void 0:e.integer)&&void 0!==a?a:""))})))))))}get hostElement(){return a(this)}static get watchers(){return{ariaLabel:["ariaLabelObserver"],value:["valueObserver"],daysOfWeekChecksum:["daysOfWeekChecksumObserver"],validDates:["validDatesObserver"],invalidDates:["invalidDatesObserver"],startDate:["startDateObserver"],endDate:["endDateObserver"],cutoffTime:["cutoffTimeObserver"]}}};kt.style="*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-double-focus-ring, 0 0 0 2px #ffffff, 0 0 0 4px #33b4ff #06C)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit;font-stretch: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, #ffffff);color:var(--t-text, #4d4d4d);left:0;width:100%;z-index:100;margin-top:1px;box-shadow:var(--app-shadow-1, 0 2px 4px rgba(0, 0, 0, 0.3));height:0;overflow:hidden;opacity:0;visibility:hidden;transition:opacity var(--app-tween-1, 0.2s ease);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([block]) q2-btn,:host([block]){display:block}: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-2x, 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;border:var(--tct-calendar-day-border, var(--t-calendar-day-border, 0));border-radius:var(--tct-calendar-day-border-radius, var(--t-calendar-day-border-radius))}td.is-unavailable{border:1px solid var(--tct-input-error-border-color, var(--const-stoplight-alert, #c30000))}td.is-valid:hover{border:var(--tct-calendar-day-hover-border, var(--t-calendar-day-hover-border, var(--tct-calendar-day-border, var(--t-calendar-day-border, 0))));border-radius:var(--tct-calendar-day-hover-border-radius, var(--t-calendar-day-hover-border-radius, var(--tct-calendar-day-border-radius, var(--t-calendar-day-border-radius))));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]{border:var(--tct-calendar-day-selected-border, var(--t-calendar-day-selected-border, var(--tct-calendar-day-border, var(--t-calendar-day-border, 0))));border-radius:var(--tct-calendar-day-selected-border-radius, var(--t-calendar-day-selected-border-radius, var(--tct-calendar-day-border-radius, var(--t-calendar-day-border-radius))));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:0 0 0 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-2x, 10px)));text-align:left}";export{kt as q2_calendar}