q2-tecton-elements 1.14.2 → 1.15.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 (91) hide show
  1. package/dist/cjs/loader.cjs.js +1 -1
  2. package/dist/cjs/q2-avatar.cjs.entry.js +7 -2
  3. package/dist/cjs/q2-badge.cjs.entry.js +1 -3
  4. package/dist/cjs/q2-calendar.cjs.entry.js +3 -4
  5. package/dist/cjs/q2-chart-donut.cjs.entry.js +8 -3
  6. package/dist/cjs/q2-checkbox.cjs.entry.js +10 -11
  7. package/dist/cjs/q2-editable-field.cjs.entry.js +2 -2
  8. package/dist/cjs/q2-option-list.cjs.entry.js +4 -4
  9. package/dist/cjs/q2-pill.cjs.entry.js +8 -1
  10. package/dist/cjs/q2-radio.cjs.entry.js +1 -0
  11. package/dist/cjs/q2-select.cjs.entry.js +6 -0
  12. package/dist/cjs/q2-stepper.cjs.entry.js +20 -3
  13. package/dist/cjs/q2-tab-container.cjs.entry.js +15 -5
  14. package/dist/cjs/q2-tab-pane.cjs.entry.js +7 -0
  15. package/dist/cjs/q2-tecton-elements.cjs.js +1 -1
  16. package/dist/cjs/tecton-tab-pane.cjs.entry.js +5 -0
  17. package/dist/collection/components/q2-avatar/index.js +8 -2
  18. package/dist/collection/components/q2-avatar/styles.css +8 -0
  19. package/dist/collection/components/q2-badge/index.js +0 -2
  20. package/dist/collection/components/q2-badge/styles.css +2 -2
  21. package/dist/collection/components/q2-calendar/helpers.js +1 -1
  22. package/dist/collection/components/q2-calendar/index.js +2 -3
  23. package/dist/collection/components/q2-chart-donut/index.js +13 -6
  24. package/dist/collection/components/q2-chart-donut/styles.css +17 -8
  25. package/dist/collection/components/q2-checkbox/index.js +10 -11
  26. package/dist/collection/components/q2-editable-field/index.js +19 -2
  27. package/dist/collection/components/q2-option-list/index.js +22 -7
  28. package/dist/collection/components/q2-pill/index.js +26 -2
  29. package/dist/collection/components/q2-radio/index.js +1 -0
  30. package/dist/collection/components/q2-select/index.js +6 -0
  31. package/dist/collection/components/q2-stepper/index.js +30 -6
  32. package/dist/collection/components/q2-stepper/styles.css +45 -13
  33. package/dist/collection/components/q2-tab-container/index.js +22 -4
  34. package/dist/collection/components/q2-tab-container/styles.css +16 -2
  35. package/dist/collection/components/q2-tab-pane/index.js +58 -1
  36. package/dist/collection/components/tecton-tab-pane/index.js +57 -1
  37. package/dist/esm/loader.js +1 -1
  38. package/dist/esm/q2-avatar.entry.js +7 -2
  39. package/dist/esm/q2-badge.entry.js +1 -3
  40. package/dist/esm/q2-calendar.entry.js +3 -4
  41. package/dist/esm/q2-chart-donut.entry.js +8 -3
  42. package/dist/esm/q2-checkbox.entry.js +10 -11
  43. package/dist/esm/q2-editable-field.entry.js +2 -2
  44. package/dist/esm/q2-option-list.entry.js +4 -4
  45. package/dist/esm/q2-pill.entry.js +8 -1
  46. package/dist/esm/q2-radio.entry.js +1 -0
  47. package/dist/esm/q2-select.entry.js +6 -0
  48. package/dist/esm/q2-stepper.entry.js +20 -3
  49. package/dist/esm/q2-tab-container.entry.js +15 -5
  50. package/dist/esm/q2-tab-pane.entry.js +8 -1
  51. package/dist/esm/q2-tecton-elements.js +1 -1
  52. package/dist/esm/tecton-tab-pane.entry.js +6 -1
  53. package/dist/q2-tecton-elements/p-1b3c4cb2.entry.js +1 -0
  54. package/dist/q2-tecton-elements/p-2f13d873.entry.js +1 -0
  55. package/dist/q2-tecton-elements/p-50615a56.entry.js +1 -0
  56. package/dist/q2-tecton-elements/p-60400f59.entry.js +1 -0
  57. package/dist/q2-tecton-elements/p-704d7f41.entry.js +1 -0
  58. package/dist/q2-tecton-elements/p-77263ed4.entry.js +1 -0
  59. package/dist/q2-tecton-elements/p-8a8c6374.entry.js +1 -0
  60. package/dist/q2-tecton-elements/{p-92886dbe.entry.js → p-991d7d22.entry.js} +1 -1
  61. package/dist/q2-tecton-elements/{p-882eaf0f.entry.js → p-9b2bc894.entry.js} +1 -1
  62. package/dist/q2-tecton-elements/{p-eeb4a008.entry.js → p-b0dc920c.entry.js} +1 -1
  63. package/dist/q2-tecton-elements/p-d5ecb3ba.entry.js +1 -0
  64. package/dist/q2-tecton-elements/p-dc1ef3fa.entry.js +1 -0
  65. package/dist/q2-tecton-elements/p-e0ddf788.entry.js +1 -0
  66. package/dist/q2-tecton-elements/p-e3406026.entry.js +1 -0
  67. package/dist/q2-tecton-elements/q2-tecton-elements.esm.js +1 -1
  68. package/dist/types/components/q2-avatar/index.d.ts +2 -0
  69. package/dist/types/components/q2-checkbox/index.d.ts +0 -1
  70. package/dist/types/components/q2-editable-field/index.d.ts +1 -0
  71. package/dist/types/components/q2-option-list/index.d.ts +4 -4
  72. package/dist/types/components/q2-pill/index.d.ts +2 -0
  73. package/dist/types/components/q2-stepper/index.d.ts +1 -0
  74. package/dist/types/components/q2-tab-container/index.d.ts +4 -0
  75. package/dist/types/components/q2-tab-pane/index.d.ts +5 -1
  76. package/dist/types/components/tecton-tab-pane/index.d.ts +5 -1
  77. package/dist/types/components.d.ts +14 -0
  78. package/dist/types/workspace/workspace/{tecton-production_release_1.14.x → tecton-production_release_1.15.x}/packages/q2-tecton-elements/.stencil/test/elements/q2-tag-test.d.ts +0 -0
  79. package/dist/types/workspace/workspace/{tecton-production_release_1.14.x → tecton-production_release_1.15.x}/packages/q2-tecton-elements/.stencil/test/helpers.d.ts +0 -0
  80. package/package.json +2 -2
  81. package/dist/q2-tecton-elements/p-0675f9c8.entry.js +0 -1
  82. package/dist/q2-tecton-elements/p-09464226.entry.js +0 -1
  83. package/dist/q2-tecton-elements/p-1eed57aa.entry.js +0 -1
  84. package/dist/q2-tecton-elements/p-3796397e.entry.js +0 -1
  85. package/dist/q2-tecton-elements/p-65e2df25.entry.js +0 -1
  86. package/dist/q2-tecton-elements/p-6727f6d0.entry.js +0 -1
  87. package/dist/q2-tecton-elements/p-706249e1.entry.js +0 -1
  88. package/dist/q2-tecton-elements/p-7ddb159c.entry.js +0 -1
  89. package/dist/q2-tecton-elements/p-87f448ab.entry.js +0 -1
  90. package/dist/q2-tecton-elements/p-94303312.entry.js +0 -1
  91. package/dist/q2-tecton-elements/p-b066cdd1.entry.js +0 -1
@@ -11,23 +11,21 @@ const Q2Checkbox = class {
11
11
  this.id = `checkbox-${createGuid()}`;
12
12
  ///// Actions ////////
13
13
  this.onInputClick = (event) => {
14
- event.stopPropagation();
15
- event.preventDefault();
16
- if (this.disabled || this.readonly)
14
+ const hasCustomHandler = !!this.hostElement.onchange;
15
+ const isNotInteractive = this.disabled || this.readonly;
16
+ if (isNotInteractive || hasCustomHandler)
17
+ event.preventDefault();
18
+ if (isNotInteractive)
17
19
  return;
18
20
  if (!(event.target instanceof HTMLInputElement))
19
21
  return;
22
+ const { value, checked } = event.target;
20
23
  this.change.emit({
21
- value: event.target.value,
22
- checked: event.target.checked,
24
+ value,
25
+ checked,
23
26
  });
24
27
  this.inputElement.focus();
25
28
  };
26
- this.onKeyDown = (event) => {
27
- if (this.readonly && event.code === 'Space') {
28
- event.preventDefault();
29
- }
30
- };
31
29
  }
32
30
  ////////// LIFECYCLE HOOKS ////////
33
31
  componentWillLoad() {
@@ -35,6 +33,7 @@ const Q2Checkbox = class {
35
33
  }
36
34
  componentDidLoad() {
37
35
  overrideFocus(this.hostElement);
36
+ this.hostElement.click = () => this.inputElement.click();
38
37
  }
39
38
  //////// Host Element Events ////////
40
39
  defaultChangeHandler(event) {
@@ -56,7 +55,7 @@ const Q2Checkbox = class {
56
55
  const textLabelClasses = ['label-text'];
57
56
  if (this.hideLabel)
58
57
  textLabelClasses.push('sr');
59
- return (h("div", { class: "container" }, h("input", { ref: el => (this.inputElement = el), id: this.id, type: "checkbox", checked: this.indeterminate || this.checked || false, disabled: !!this.disabled || !!this.groupDisabled, class: "sr", value: this.value, name: this.name || this.id, "aria-label": this.label ? loc(this.label) : undefined, "aria-describedby": this.description ? 'description' : undefined, "test-id": "q2CheckboxInnerCheckBox", onKeyDown: this.onKeyDown, onClick: this.onInputClick }), h("label", { htmlFor: this.id, class: "label-control", "test-id": "checkboxButton" }, this.generateCheckboxSVG()), h("div", { class: textLabelClasses.join(' ') }, h("label", { "test-id": "checkboxLabel", htmlFor: this.id }, loc(this.label), h("slot", null))), this.description && (h("div", { class: "description-text", "test-id": "checkboxDescription", id: "description" }, loc(this.description)))));
58
+ return (h("div", { class: "container" }, h("input", { ref: el => (this.inputElement = el), id: this.id, type: "checkbox", checked: this.indeterminate || this.checked || false, disabled: !!this.disabled || !!this.groupDisabled, class: "sr", value: this.value, name: this.name || this.id, "aria-label": this.label ? loc(this.label) : undefined, "aria-describedby": this.description ? 'description' : undefined, "test-id": "q2CheckboxInnerCheckBox", onClick: this.onInputClick }), h("label", { htmlFor: this.id, class: "label-control", "test-id": "checkboxButton" }, this.generateCheckboxSVG()), h("div", { class: textLabelClasses.join(' ') }, h("label", { "test-id": "checkboxLabel", htmlFor: this.id }, loc(this.label), h("slot", null))), this.description && (h("div", { class: "description-text", "test-id": "checkboxDescription", id: "description" }, loc(this.description)))));
60
59
  }
61
60
  generateCheckboxSVG() {
62
61
  if (this.type === 'favorite') {
@@ -124,7 +124,7 @@ const Q2EditableField = class {
124
124
  return (h("div", null, this.generateEditStateDOM(), this.generateReadStateDOM()));
125
125
  }
126
126
  generateEditStateDOM() {
127
- return (h("div", { class: this.wrapperClass, hidden: !this.editing }, h("q2-input", { ref: el => (this.q2InputElement = el), label: this.locLabel, hideLabel: this.hideLabel, value: this.value, hints: (Array.isArray(this.hints) && this.hints.map(str => loc(str))) || undefined, errors: (Array.isArray(this.errors) && this.errors.map(str => loc(str))) || undefined, type: this.type, formatModifier: this.formatModifier, maxlength: this.maxlength, "test-id": "editableInput", onInput: this.inputInput, onChange: this.inputChange, onKeyDown: this.inputKeyDown, onClick: this.inputClick }), h("q2-btn", { class: "cancel-edit", label: `${loc('tecton.element.editableField.cancel')} ${this.locLabel}`, "hide-label": true, "test-id": "cancelButton", onClick: this.cancelClick }, h("q2-icon", { type: "close" })), h("q2-btn", { class: "save-edit", label: `${loc('tecton.element.editableField.save')} ${this.locLabel}`, "hide-label": true, "test-id": "saveButton", onClick: this.saveClick }, h("q2-icon", { type: "checkmark" }))));
127
+ return (h("div", { class: this.wrapperClass, hidden: !this.editing }, h("q2-input", { ref: el => (this.q2InputElement = el), label: this.locLabel, hideLabel: this.hideLabel, value: this.value, hints: (Array.isArray(this.hints) && this.hints.map(str => loc(str))) || undefined, errors: (Array.isArray(this.errors) && this.errors.map(str => loc(str))) || undefined, type: this.type, disabled: this.disabled, formatModifier: this.formatModifier, maxlength: this.maxlength, "test-id": "editableInput", onInput: this.inputInput, onChange: this.inputChange, onKeyDown: this.inputKeyDown, onClick: this.inputClick }), h("q2-btn", { class: "cancel-edit", label: `${loc('tecton.element.editableField.cancel')} ${this.locLabel}`, "hide-label": true, "test-id": "cancelButton", onClick: this.cancelClick }, h("q2-icon", { type: "close" })), h("q2-btn", { class: "save-edit", label: `${loc('tecton.element.editableField.save')} ${this.locLabel}`, "hide-label": true, "test-id": "saveButton", onClick: this.saveClick }, h("q2-icon", { type: "checkmark" }))));
128
128
  }
129
129
  generateReadStateDOM() {
130
130
  if (this.persistentLabel && this.locLabel) {
@@ -133,7 +133,7 @@ const Q2EditableField = class {
133
133
  return (h("div", { class: this.wrapperClass, hidden: this.editing }, h("div", { class: "text-wrapper" }, this.value), this.generateEditBtn()));
134
134
  }
135
135
  generateEditBtn() {
136
- return (h("q2-btn", { ref: el => (this.q2EditBtnElement = el), class: "begin-edit", label: `${loc('tecton.element.editableField.edit')} ${this.locLabel}`, "hide-label": true, "test-id": "editButton", onClick: this.editClick }, h("q2-icon", { type: "edit" })));
136
+ return (h("q2-btn", { ref: el => (this.q2EditBtnElement = el), class: "begin-edit", label: `${loc('tecton.element.editableField.edit')} ${this.locLabel}`, "hide-label": true, disabled: this.disabled, "test-id": "editButton", onClick: this.editClick }, h("q2-icon", { type: "edit" })));
137
137
  }
138
138
  get hostElement() { return getElement(this); }
139
139
  static get watchers() { return {
@@ -312,21 +312,21 @@ const Q2OptionList = class {
312
312
  event.stopPropagation();
313
313
  }
314
314
  /// Public Methods ///
315
- toggle() {
315
+ async toggle() {
316
316
  const isOpen = !this.open;
317
317
  this.open = isOpen;
318
318
  }
319
- setDefaultActiveElement() {
319
+ async setDefaultActiveElement() {
320
320
  this.activeIndex = this.getDefaultActiveIndex();
321
321
  this.setActiveOption();
322
322
  this.setFocusedOption();
323
323
  }
324
- setActiveElement(index) {
324
+ async setActiveElement(index) {
325
325
  this.activeIndex = index;
326
326
  this.setActiveOption();
327
327
  this.setFocusedOption();
328
328
  }
329
- handleExternalKeydown(event) {
329
+ async handleExternalKeydown(event) {
330
330
  const keysThatTriggerOpen = ['ArrowDown', 'ArrowUp', 'PageDown', 'PageUp', 'Home', 'End'];
331
331
  if (keysThatTriggerOpen.includes(event.key)) {
332
332
  this.open = true;
@@ -98,6 +98,13 @@ const Q2Pill = class {
98
98
  return selectedOptions[0].display;
99
99
  return loc('tecton.element.pill.activeCount', { count: selectedOptions.length });
100
100
  }
101
+ get truncatedButtonContent() {
102
+ const { maxLength, buttonContent } = this;
103
+ if (maxLength)
104
+ return buttonContent.length > maxLength ? `${buttonContent.substring(0, maxLength)}…` : buttonContent;
105
+ else
106
+ return buttonContent;
107
+ }
101
108
  /// Listeners ///
102
109
  delegateFocus(event) {
103
110
  if (!isEventFromElement(event, this.hostElement))
@@ -124,7 +131,7 @@ const Q2Pill = class {
124
131
  wrapperClassNames.push('has-icon');
125
132
  if (hasOptions)
126
133
  wrapperClassNames.push('has-options');
127
- return (h(Fragment, null, h("div", { class: wrapperClassNames.join(' ') }, h("div", { class: "btn-height-wrapper", onClick: this.handleWrapperClick, tabIndex: -1 }, h("button", { class: "btn-primary", type: "button", "test-id": "btn-control", ref: el => (this.primaryBtn = el), onClick: this.handleClick, onKeyDown: this.handleKeydown, disabled: this.disabled, onFocusout: this.handleFocusout, "aria-selected": !hasOptions && active ? 'true' : 'false', "aria-roledescription": !hasOptions && 'filter', "aria-controls": hasOptions && 'option-list', "aria-haspopup": hasOptions && 'true', "aria-expanded": hasOptions && open ? 'true' : 'false' }, this.buttonContent, !hasOptions && active && h("span", { class: "sr" }, "(", loc('tecton.element.pill.active'), ")"))), this.generateIcon()), this.hasOptions && (h("q2-option-list", { id: "option-list", ref: el => (this.optionList = el), open: this.open, onChange: this.handleChange, multiple: this.multiple, onFocusout: this.handleFocusout, selectedOptions: this.selectedOptions }, h("slot", null)))));
134
+ return (h(Fragment, null, h("div", { class: wrapperClassNames.join(' ') }, h("div", { class: "btn-height-wrapper", onClick: this.handleWrapperClick, tabIndex: -1 }, h("button", { class: "btn-primary", type: "button", "test-id": "btn-control", ref: el => (this.primaryBtn = el), onClick: this.handleClick, onKeyDown: this.handleKeydown, disabled: this.disabled, onFocusout: this.handleFocusout, "aria-selected": !hasOptions && active ? 'true' : 'false', "aria-roledescription": !hasOptions && 'filter', "aria-controls": hasOptions && 'option-list', "aria-haspopup": hasOptions && 'true', "aria-expanded": (hasOptions && `${!!open}`) || undefined, "aria-label": this.maxLength && this.buttonContent }, this.truncatedButtonContent, !hasOptions && active && h("span", { class: "sr" }, "(", loc('tecton.element.pill.active'), ")"))), this.generateIcon()), this.hasOptions && (h("q2-option-list", { id: "option-list", ref: el => (this.optionList = el), open: this.open, onChange: this.handleChange, multiple: this.multiple, onFocusout: this.handleFocusout, selectedOptions: this.selectedOptions }, h("slot", null)))));
128
135
  }
129
136
  get hostElement() { return getElement(this); }
130
137
  };
@@ -32,6 +32,7 @@ const Q2Radio = class {
32
32
  componentDidLoad() {
33
33
  this.isLoaded = true;
34
34
  overrideFocus(this.hostElement);
35
+ this.hostElement.click = () => this.inputField.click();
35
36
  }
36
37
  ////////// OBSERVERS //////////
37
38
  ariaLabelObserver() {
@@ -217,6 +217,11 @@ const Q2Select = class {
217
217
  this.searchText = '';
218
218
  }
219
219
  break;
220
+ case 'Tab':
221
+ if (dropdownOpen) {
222
+ this.closeDropdown();
223
+ }
224
+ break;
220
225
  default:
221
226
  if (searchable) {
222
227
  this.openDropdownWithoutActiveElement();
@@ -560,6 +565,7 @@ const Q2Select = class {
560
565
  options.forEach(option => {
561
566
  if (query === '') {
562
567
  option.style.display = '';
568
+ option.hidden = false;
563
569
  }
564
570
  else {
565
571
  const { display = '', innerText = '' } = option;
@@ -1,7 +1,7 @@
1
1
  import { r as registerInstance, c as createEvent, h, F as Fragment, g as getElement } from './index-6d5ed7cc.js';
2
2
  import { b as addSmoothScrollPolyfill, o as overrideFocus, i as isEventFromElement, l as loc } from './index-14e81efa.js';
3
3
 
4
- const stylesCss = "*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-global-focus)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}:host{display:block;position:relative}ul{--comp-bullet-bg:var(--tct-stepper-bullet-active-bg, var(--t-stepper-bullet-active-bg, var(--t-primary, #0079c1)));--comp-bullet-font-color:var(--tct-stepper-bullet-active-font-color, var(--t-stepper-bullet-active-font-color, var(--t-primary-font-color, #ffffff)));--comp-bullet-size:var(--tct-stepper-bullet-size, var(--t-stepper-bullet-size, 18px));--comp-bullet-gap:var(--tct-stepper-bullet-padding, var(--t-stepper-bullet-padding, var(--app-scale-2x, 10px)));--comp-bullet-border-offset:var(--tct-stepper-bullet-border-offset, var(--t-stepper-bullet-border-offset, 4px));--comp-bullet-border:var(--tct-stepper-bullet-border, var(--t-stepper-bullet-border, 2px solid var(--t-primary-l3)));--comp-bullet-font-size:var(--tct-stepper-bullet-font-size, var(--t-stepper-bullet-font-size, var(--app-font-size-small, 12px)));--comp-step-width:var(--tct-stepper-step-width, var(--t-stepper-step-width, var(--t-stepper-step-width, 80px)));--comp-step-gap:var(--tct-stepper-step-gap, var(--t-stepper-step-gap, 5px));--comp-tween:var(--tct-stepper-tween, var(--t-stepper-tween, var(--app-tween-1, 0.2s ease)));overflow-x:auto;display:flex;justify-content:center;list-style:none;padding:0;padding:var(--tct-stepper-list-padding, var(--t-stepper-list-padding, 2px));margin:0;gap:var(--comp-step-gap);--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}ul::-webkit-scrollbar{width:var(--comp-scrollbar-size);height:var(--comp-scrollbar-size);margin:5px}ul::-webkit-scrollbar-thumb{background:var(--comp-scrollbar-color);border-radius:var(--comp-scrollbar-border-radius)}ul::-webkit-scrollbar-track{background:transparent;border-radius:var(--comp-scrollbar-border-radius)}.has-scroll ul{justify-content:unset}li{min-height:var(--tct-stepper-min-height, var(--t-stepper-min-height, 50px));flex:0 0 auto;position:relative;width:var(--comp-step-width);text-align:center;max-width:150px;min-width:80px}.step-btn{position:relative;background:transparent;border:0;cursor:pointer;display:flex;flex-direction:column;align-items:center;height:calc(100% - 4px);width:100%;transition:var(--comp-tween);padding:0;transition-property:box-shadow;outline:none}.step-btn[aria-disabled]{cursor:default}.step-btn[aria-disabled],.step-btn[aria-disabled]+hr{--comp-bullet-font-color:var(--tct-stepper-bullet-inactive-font-color, var(--t-stepper-bullet-inactive-font-color, var(--t-text, #4d4d4d)));--comp-bullet-bg:var(--tct-stepper-bullet-inactive-bg, var(--t-stepper-bullet-inactive-bg, var(--t-gray-12, #d9d9d9)))}.step-bubble{margin:var(--comp-bullet-gap) auto;background:var(--comp-bullet-bg);color:var(--comp-bullet-font-color);width:var(--comp-bullet-size);height:var(--comp-bullet-size);min-height:var(--comp-bullet-size);font-size:var(--comp-bullet-font-size);transition:var(--comp-tween);transition-property:background, color;border-radius:50%;position:relative}[aria-selected] .step-bubble{font-weight:var(--tct-stepper-bullet-active-font-weight, var(--t-stepper-bullet-active-font-weight, 600))}[aria-selected] .step-bubble:before{content:\"\";position:absolute;inset:calc(var(--comp-bullet-border-offset) * -1);width:calc(var(--comp-bullet-size) + var(--comp-bullet-border-offset));height:calc(var(--comp-bullet-size) + var(--comp-bullet-border-offset));border-radius:50%;border:var(--comp-bullet-border)}hr{width:calc(var(--comp-step-width) - var(--comp-step-gap) - var(--comp-bullet-gap) - var(--comp-bullet-size));top:calc(var(--comp-bullet-size) / 2 + var(--comp-bullet-gap));left:calc(var(--comp-step-width) * -0.5 + var(--comp-step-gap) + var(--comp-bullet-gap));border:0;border-top:1px solid var(--comp-bullet-bg);height:0;position:absolute;margin:0;transition:border var(--comp-tween)}.step-container{position:relative}.step-label{color:var(--tct-stepper-title-color, var(--t-stepper-title-color, var(--t-text, #4d4d4d)));font-size:var(--tct-stepper-title-font-size, var(--t-stepper-title-font-size, var(--app-font-size-small, 12px)));height:1.5em;text-overflow:ellipsis;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}[aria-selected] .step-label{font-weight:var(--tct-stepper-active-font-weight, var(--t-stepper-active-font-weight, 600))}[aria-describedby] .step-label{-webkit-line-clamp:1}.step-description{color:var(--tct-stepper-description-color, var(--t-stepper-description-color, var(--t-textA, rgba(77, 77, 77, 0.77))));font-size:var(--tct-stepper-description-font-size, var(--t-stepper-description-font-size, var(--app-font-size-small, 12px)));text-overflow:ellipsis;overflow:hidden;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;padding-bottom:0.2em}.gradient-left,.gradient-right{z-index:1;position:absolute;top:0;height:100%;width:18px}.gradient-left{background-image:linear-gradient(to right, var(--t-base), var(--t-base-a0));left:0}.gradient-right{background-image:linear-gradient(to right, var(--t-base-a0), var(--t-base));right:0}.btn-left,.btn-right{--tct-icon-size:18px;--tct-btn-icon-hover-bg:transparent;--tct-btn-icon-width:22px;--tct-icon-stroke-primary:var(--tct-stepper-scroll-arrow-color, var(--t-stepper-scroll-arrow-color, var(--t-text, #4d4d4d)));position:absolute;top:calc(50% - 22px);z-index:2}.btn-left{left:0}.btn-right{right:0}";
4
+ const stylesCss = "*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-global-focus)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}:host{display:block;position:relative}ul{--comp-bullet-bg:var(--tct-stepper-bullet-active-bg, var(--t-stepper-bullet-active-bg, var(--t-primary, #0079c1)));--comp-bullet-font-color:var(--tct-stepper-bullet-active-font-color, var(--t-stepper-bullet-active-font-color, var(--t-primary-font-color, #ffffff)));--comp-bullet-size:var(--tct-stepper-btn-icon-size, var(--t-stepper-btn-icon-size, 24px));--comp-bullet-gap:var(--tct-stepper-btn-gap, var(--t-stepper-btn-gap, var(--app-scale-3x, 15px)));--comp-bullet-border-offset:var(--tct-stepper-bullet-border-offset, var(--t-stepper-bullet-border-offset, 4px));--comp-bullet-border:var(--tct-stepper-bullet-border, var(--t-stepper-bullet-border, 2px solid var(--t-primary-l3)));--comp-bullet-font-size:var-list(var-prefixer(stepper-btn-label-font-size), 16px);--comp-step-width:var(--tct-stepper-step-width, var(--t-stepper-step-width, var(--t-stepper-step-width, 80px)));--comp-step-gap:var(--tct-stepper-step-gap, var(--t-stepper-step-gap, 5px));--comp-top-btn-icon-size:var(--tct-stepper-btn-icon-size, var(--t-stepper-btn-icon-size, 24px));--comp-btn-icon-size:var(--comp-top-btn-icon-size);--comp-btn-content-gap:var(--tct-stepper-btn-gap, var(--t-stepper-btn-gap, var(--app-scale-3x, 15px)));--comp-btn-label-font-size:var-list(var-prefixer(stepper-btn-label-font-size), 16px);--comp-btn-label-color:var(--tct-stepper-label-color, var(--t-stepper-label-color, var(--t-text, #4d4d4d)));--comp-tween:var(--tct-stepper-tween, var(--t-stepper-tween, var(--app-tween-1, 0.2s ease)));overflow-x:auto;display:flex;justify-content:center;list-style:none;padding:0;padding:var(--tct-stepper-list-padding, var(--t-stepper-list-padding, 2px));margin:0;gap:var(--comp-step-gap);--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}ul::-webkit-scrollbar{width:var(--comp-scrollbar-size);height:var(--comp-scrollbar-size);margin:5px}ul::-webkit-scrollbar-thumb{background:var(--comp-scrollbar-color);border-radius:var(--comp-scrollbar-border-radius)}ul::-webkit-scrollbar-track{background:transparent;border-radius:var(--comp-scrollbar-border-radius)}.has-scroll ul{justify-content:unset}li{min-height:var(--tct-stepper-min-height, var(--t-stepper-min-height, 50px));flex:0 0 auto;position:relative;width:var(--comp-step-width);text-align:center;max-width:150px;min-width:80px}.step-btn{position:relative;background:transparent;border:0;cursor:pointer;display:flex;flex-direction:column;align-items:center;height:calc(100% - 4px);width:100%;transition:var(--comp-tween);padding:0;transition-property:box-shadow;outline:none;--comp-active-color:var(--t-primary)}.step-btn.status-complete{--comp-active-color:var(--const-stoplight-success)}.step-btn.status-error{--comp-active-color:var(--const-stoplight-alert)}.step-btn[aria-disabled]{cursor:not-allowed}.step-btn[aria-disabled],.step-btn[aria-disabled]+hr{--comp-bullet-font-color:var(--tct-stepper-bullet-inactive-font-color, var(--t-stepper-bullet-inactive-font-color, var(--t-text, #4d4d4d)));--comp-bullet-bg:var(--tct-stepper-bullet-inactive-bg, var(--t-stepper-bullet-inactive-bg, var(--t-gray-12, #d9d9d9)))}.step-icon,.step-bubble{display:flex;justify-content:center;align-items:center;line-height:0;margin:var(--comp-bullet-gap) auto;color:var(--comp-bullet-font-color);width:var(--comp-btn-icon-size);height:var(--comp-btn-icon-size);min-height:var(--comp-btn-icon-size);font-size:var(--comp-bullet-font-size);transition:var(--comp-tween);transition-property:background, color;border-radius:50%;position:relative}.step-icon q2-icon,.step-bubble q2-icon{fill:var(--comp-active-color);--tct-icon-stroke-primary:var(--comp-active-color);--tct-icon-stroke-secondary:var(--t-base)}.status-complete .step-icon,.status-error .step-icon,.status-complete .step-bubble,.status-error .step-bubble{background:var(--comp-active-color)}[aria-selected] .step-icon,[aria-selected] .step-bubble{font-weight:var(--tct-stepper-bullet-active-font-weight, var(--t-stepper-bullet-active-font-weight, 600))}[aria-selected] .step-icon:before,[aria-selected] .step-bubble:before{content:\"\";position:absolute;inset:calc(var(--comp-bullet-border-offset) * -1);width:calc(var(--comp-bullet-size) + var(--comp-bullet-border-offset));height:calc(var(--comp-bullet-size) + var(--comp-bullet-border-offset));border-radius:50%;border:var(--comp-bullet-border);border-color:var(--comp-active-color)}.step-bubble{background:var(--comp-bullet-bg)}hr{width:calc(var(--comp-step-width) - var(--comp-step-gap) - var(--comp-bullet-gap) - var(--comp-bullet-size));top:calc(var(--comp-bullet-size) / 2 + var(--comp-bullet-gap));left:calc(var(--comp-step-width) * -0.5 + var(--comp-step-gap) + var(--comp-bullet-gap));border:0;border-top:1px solid var(--comp-bullet-bg);height:0;position:absolute;margin:0;transition:border var(--comp-tween)}.step-container{position:relative}.step-label{color:var(--tct-stepper-title-color, var(--t-stepper-title-color, var(--t-text, #4d4d4d)));font-size:var(--tct-stepper-title-font-size, var(--t-stepper-title-font-size, var(--app-font-size-small, 12px)));height:1.5em;text-overflow:ellipsis;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}[aria-selected] .step-label{font-weight:var(--tct-stepper-active-font-weight, var(--t-stepper-active-font-weight, 600))}[aria-describedby] .step-label{-webkit-line-clamp:1}.step-description{color:var(--tct-stepper-description-color, var(--t-stepper-description-color, var(--t-textA, rgba(77, 77, 77, 0.77))));font-size:var(--tct-stepper-description-font-size, var(--t-stepper-description-font-size, var(--app-font-size-small, 12px)));text-overflow:ellipsis;overflow:hidden;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;padding-bottom:0.2em}.gradient-left,.gradient-right{z-index:1;position:absolute;top:0;height:100%;width:18px}.gradient-left{background-image:linear-gradient(to left, var(--t-base-a0), var(--t-base-a2) 10%, var(--t-base) 100%);left:0}.gradient-right{background-image:linear-gradient(to right, var(--t-base-a0), var(--t-base-a2) 10%, var(--t-base) 100%);right:0}.btn-left,.btn-right{--tct-icon-size:18px;--tct-btn-icon-hover-bg:transparent;--tct-btn-icon-width:22px;--tct-icon-stroke-primary:var(--tct-stepper-scroll-arrow-color, var(--t-stepper-scroll-arrow-color, var(--t-text, #4d4d4d)));position:absolute;top:calc(50% - 22px);z-index:2}.btn-left q2-icon,.btn-right q2-icon{--tct-icon-stroke-width:3}.btn-left{left:0}.btn-right{right:0}";
5
5
 
6
6
  addSmoothScrollPolyfill();
7
7
  const Q2Stepper = class {
@@ -114,6 +114,13 @@ const Q2Stepper = class {
114
114
  return;
115
115
  this.focusStep(this.currentStep, true, true);
116
116
  }
117
+ statusChangeHandler(event) {
118
+ const index = Array.from(this.allPanes).findIndex(el => event.detail.id === el.id);
119
+ if (index > -1) {
120
+ this.allPanes[index].status = event.detail.status;
121
+ this.renderStepBtn(index);
122
+ }
123
+ }
117
124
  ////////// GETTER METHODS ////////
118
125
  get allPanes() {
119
126
  return this.hostElement.querySelectorAll('q2-stepper-pane');
@@ -164,13 +171,23 @@ const Q2Stepper = class {
164
171
  renderStepBtn(stepIndex) {
165
172
  var _a;
166
173
  const { allPanes, stepCount, currentStep, lastEnabledStep } = this;
167
- const { id, label, description } = (_a = allPanes === null || allPanes === void 0 ? void 0 : allPanes[stepIndex]) !== null && _a !== void 0 ? _a : {};
174
+ const { id, label, description, status } = (_a = allPanes === null || allPanes === void 0 ? void 0 : allPanes[stepIndex]) !== null && _a !== void 0 ? _a : {};
168
175
  const stepNumber = stepIndex + 1;
169
176
  const isCurrentStep = stepNumber === currentStep;
170
177
  const labelId = label && `label-${id}`;
171
178
  const descriptionId = label && description && `description-${id}`;
172
179
  const btnLabel = !label && loc('tecton.element.stepper.number', [`${stepNumber}`, `${stepCount}`]);
173
- return (h("li", { role: "presentation" }, h("button", { class: "step-btn", type: "button", "aria-labelledby": labelId, "aria-describedBy": descriptionId, "aria-label": btnLabel, "aria-selected": isCurrentStep, "aria-controls": id, "aria-disabled": stepNumber > lastEnabledStep ? 'true' : null, role: "tab", tabIndex: isCurrentStep ? 0 : -1, onKeyDown: ev => this.onStepKeyDown(ev, stepNumber), onClick: ev => this.onStepClick(ev, stepNumber) }, h("div", { class: "step-bubble" }, stepNumber), label && (h(Fragment, null, h("div", { class: "step-label", id: labelId }, loc(label)), description && (h("div", { class: "step-description", id: descriptionId }, loc(description)))))), stepIndex ? h("hr", null) : ''));
180
+ let statusIcon;
181
+ if (status === 'complete')
182
+ statusIcon = 'success';
183
+ else if (status === 'error')
184
+ statusIcon = 'warning';
185
+ const stepClasses = ['step-btn'];
186
+ if (status)
187
+ stepClasses.push(`status-${status}`);
188
+ const isLocked = status === 'locked';
189
+ const disabled = isLocked || stepNumber > lastEnabledStep;
190
+ return (h("li", { role: "presentation" }, h("button", { class: stepClasses.join(' '), type: "button", "aria-labelledby": labelId, "aria-describedBy": descriptionId, "aria-label": btnLabel, "aria-selected": isCurrentStep, "aria-controls": id, "aria-disabled": disabled ? 'true' : null, role: "tab", tabIndex: isCurrentStep ? 0 : -1, onKeyDown: ev => this.onStepKeyDown(ev, stepNumber), onClick: ev => !isLocked && this.onStepClick(ev, stepNumber) }, h(Fragment, null, statusIcon ? (h("div", { class: "step-icon" }, h("q2-icon", { type: statusIcon }))) : (h("div", { class: "step-bubble" }, stepNumber)), label && (h("div", { class: "step-label", id: labelId }, loc(label))), label && description && (h("div", { class: "step-description", id: descriptionId }, loc(description))))), stepIndex ? h("hr", null) : ''));
174
191
  }
175
192
  render() {
176
193
  const { stepCount, scrollEnabled, showScrollLeft, showScrollRight } = this;
@@ -1,7 +1,7 @@
1
1
  import { r as registerInstance, c as createEvent, h, F as Fragment, g as getElement } from './index-6d5ed7cc.js';
2
2
  import { b as addSmoothScrollPolyfill, c as createGuid, l as loc, i as isEventFromElement, o as overrideFocus } from './index-14e81efa.js';
3
3
 
4
- const stylesCss = "*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-global-focus)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}:host{display:block;position:relative}button{cursor:pointer;margin:0}.tab-container{position:relative}ul{--comp-container-padding:var(--tct-scale-1, var(--app-scale-1, 5px)) var(--tct-scale-1, var(--app-scale-1, 5px)) 0;padding:var(--tct-tab-container-padding, var(--t-tab-container-padding, var(--comp-container-padding)));display:flex;gap:var(--tct-tab-gap, var(--t-tab-gap, var(--tct-scale-1, var(--app-scale-1, 5px))));list-style:none;border-bottom:1px solid var(--tct-tab-container-border-color, var(--t-tab-container-border-color, var(--tct-gray-11, var(--t-gray-11, var(--tct-gray-l1, var(--app-gray-l1, #cccccc))))));overflow-x:auto;align-items:center;scrollbar-width:none;scrollbar-color:transparent}ul::-webkit-scrollbar{width:0;height:0}ul::-webkit-scrollbar-thumb{background:transparent}ul::-webkit-scrollbar-track{background:transparent}@media print{ul.no-print{display:none}}li{flex:0 0 auto}li button{background:var(--tct-tab-inactive-bg-color, var(--t-tab-inactive-bg-color, transparent));border-width:var(--tct-tab-inactive-border-width, var(--t-tab-inactive-border-width, 0 0 3px 0));border-color:var(--tct-tab-inactive-border-color, var(--t-tab-inactive-border-color, transparent));border-style:var(--tct-tab-inactive-border-style, var(--t-tab-inactive-border-style, solid));border-radius:var(--tct-tab-border-radius, var(--t-tab-border-radius, 0));width:var(--tct-tab-width, var(--t-tab-width, 100%));text-align:var(--tct-tab-text-align, var(--t-tab-text-align, center));text-decoration:var(--tct-tab-text-decoration, var(--t-tab-text-decoration, none));padding:var(--tct-tab-padding, var(--t-tab-padding, var(--tct-scale-2, var(--app-scale-2, 10px))));color:var(--tct-tab-inactive-color, var(--t-tab-inactive-color, inherit));font-size:var(--tct-tab-font-size, var(--t-tab-font-size, 17px));display:block;transition:color var(--tct-tween-2, var(--app-tween-2, 0.4s ease)), border-color var(--tct-tween-1, var(--app-tween-1, 0.2s ease))}:host([type=section]) li button{--comp-tab-section-padding:var(--tct-scale-2, var(--app-scale-2, 10px)) var(--tct-scale-1, var(--app-scale-1, 5px));font-size:inherit;padding:var(--tct-tab-section-padding, var(--t-tab-section-padding, var(--comp-tab-section-padding)))}li button:hover{color:var(--tct-tab-hover-color, var(--t-tab-hover-color, var(--tct-tab-active-color, var(--t-tab-active-color, #2e2e2e))));background-color:var(--tct-tab-hover-bg-color, var(--t-tab-hover-bg-color, inherit));width:var(--tct-tab-hover-width, var(--t-tab-hover-width, 100%))}li button[aria-selected=true]{color:var(--tct-tab-active-color, var(--t-tab-active-color, #2e2e2e));border-color:var(--tct-tab-active-border-color, var(--t-tab-active-border-color, currentColor));border-style:var(--tct-tab-active-border-style, var(--t-tab-active-border-style, solid));width:var(--tct-tab-active-width, var(--t-tab-active-width, 100%));background-color:var(--tct-tab-active-bg-color, var(--t-tab-active-bg-color, inherit))}:host([color=alt]) li button{color:var(--tct-tab-alt-inactive-color, var(--t-tab-alt-inactive-color, inherit))}:host([color=alt]) li button:hover,:host([color=alt]) li button[aria-selected=true]{color:var(--tct-tab-alt-active-color, var(--t-tab-alt-active-color, inherit))}@media screen and (max-width: 767px){li button{--comp-tab-padding:var(--tct-scale-2, var(--app-scale-2, 10px)) var(--tct-scale-1, var(--app-scale-1, 5px));font-size:inherit;padding:var(--tct-tab-padding, var(--t-tab-padding, var(--comp-tab-padding)))}}.tab-content{--comp-tab-content-padding:var(--tct-scale-2, var(--app-scale-2, 10px)) 0;padding:var(--tct-tab-content-padding, var(--t-tab-content-padding, var(--comp-tab-content-padding)))}.tab-content:focus{outline:none;box-shadow:none}.gradient-left,.gradient-right{z-index:1;position:absolute;top:0;height:100%;width:44px}.gradient-left{background-image:linear-gradient(to right, var(--t-base), var(--t-base-a0));left:0}.gradient-right{background-image:linear-gradient(to right, var(--t-base-a0), var(--t-base));right:0}.btn-left,.btn-right{--tct-icon-size:18px;--tct-btn-icon-hover-bg:transparent;--tct-btn-icon-width:22px;--tct-icon-stroke-primary:var(--tct-stepper-scroll-arrow-color, var(--t-stepper-scroll-arrow-color, var(--t-text, #4d4d4d)));position:absolute;top:calc(50% - 22px);z-index:2}.btn-left{left:0}.btn-right{right:0}";
4
+ const stylesCss = "*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-global-focus)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}:host{display:block;position:relative}button{cursor:pointer;margin:0}.tab-container{position:relative}ul{--comp-container-padding:var(--tct-scale-1, var(--app-scale-1, 5px)) var(--tct-scale-1, var(--app-scale-1, 5px)) 0;padding:var(--tct-tab-container-padding, var(--t-tab-container-padding, var(--comp-container-padding)));display:flex;gap:var(--tct-tab-gap, var(--t-tab-gap, var(--tct-scale-1, var(--app-scale-1, 5px))));list-style:none;border-bottom:1px solid var(--tct-tab-container-border-color, var(--t-tab-container-border-color, var(--tct-gray-11, var(--t-gray-11, var(--tct-gray-l1, var(--app-gray-l1, #cccccc))))));overflow-x:auto;align-items:center;scrollbar-width:none;scrollbar-color:transparent}ul::-webkit-scrollbar{width:0;height:0}ul::-webkit-scrollbar-thumb{background:transparent}ul::-webkit-scrollbar-track{background:transparent}@media print{ul.no-print{display:none}}li{flex:0 0 auto}li button{background:var(--tct-tab-inactive-bg-color, var(--t-tab-inactive-bg-color, transparent));border-width:var(--tct-tab-inactive-border-width, var(--t-tab-inactive-border-width, 0 0 3px 0));border-color:var(--tct-tab-inactive-border-color, var(--t-tab-inactive-border-color, transparent));border-style:var(--tct-tab-inactive-border-style, var(--t-tab-inactive-border-style, solid));border-radius:var(--tct-tab-border-radius, var(--t-tab-border-radius, 0));width:var(--tct-tab-width, var(--t-tab-width, 100%));text-align:var(--tct-tab-text-align, var(--t-tab-text-align, center));text-decoration:var(--tct-tab-text-decoration, var(--t-tab-text-decoration, none));padding:var(--tct-tab-padding, var(--t-tab-padding, var(--tct-scale-2, var(--app-scale-2, 10px))));color:var(--tct-tab-inactive-color, var(--t-tab-inactive-color, inherit));font-size:var(--tct-tab-font-size, var(--t-tab-font-size, 17px));display:block;transition:color var(--tct-tween-2, var(--app-tween-2, 0.4s ease)), border-color var(--tct-tween-1, var(--app-tween-1, 0.2s ease))}:host([type=section]) li button{--comp-tab-section-padding:var(--tct-scale-2, var(--app-scale-2, 10px)) var(--tct-scale-1, var(--app-scale-1, 5px));font-size:inherit;padding:var(--tct-tab-section-padding, var(--t-tab-section-padding, var(--comp-tab-section-padding)))}li button:hover{color:var(--tct-tab-hover-color, var(--t-tab-hover-color, var(--tct-tab-active-color, var(--t-tab-active-color, #2e2e2e))));background-color:var(--tct-tab-hover-bg-color, var(--t-tab-hover-bg-color, inherit));width:var(--tct-tab-hover-width, var(--t-tab-hover-width, 100%))}li button[aria-selected=true]{color:var(--tct-tab-active-color, var(--t-tab-active-color, #2e2e2e));border-color:var(--tct-tab-active-border-color, var(--t-tab-active-border-color, currentColor));border-style:var(--tct-tab-active-border-style, var(--t-tab-active-border-style, solid));width:var(--tct-tab-active-width, var(--t-tab-active-width, 100%));background-color:var(--tct-tab-active-bg-color, var(--t-tab-active-bg-color, inherit))}:host([color=alt]) li button{color:var(--tct-tab-alt-inactive-color, var(--t-tab-alt-inactive-color, inherit))}:host([color=alt]) li button:hover,:host([color=alt]) li button[aria-selected=true]{color:var(--tct-tab-alt-active-color, var(--t-tab-alt-active-color, inherit))}@media screen and (max-width: 767px){li button{--comp-tab-padding:var(--tct-scale-2, var(--app-scale-2, 10px)) var(--tct-scale-1, var(--app-scale-1, 5px));font-size:inherit;padding:var(--tct-tab-padding, var(--t-tab-padding, var(--comp-tab-padding)))}}.tab-content{--comp-tab-content-padding:var(--tct-scale-2, var(--app-scale-2, 10px)) 0;padding:var(--tct-tab-content-padding, var(--t-tab-content-padding, var(--comp-tab-content-padding)))}.tab-content:focus{outline:none;box-shadow:none}.gradient-left,.gradient-right{z-index:1;position:absolute;top:0;height:100%;width:44px}.gradient-left{background-image:linear-gradient(to left, var(--t-base-a0), var(--t-base-a2) 10%, var(--t-base) 100%);left:0}.gradient-right{background-image:linear-gradient(to right, var(--t-base-a0), var(--t-base-a2) 10%, var(--t-base) 100%);right:0}.btn-left,.btn-right{--tct-icon-size:18px;--tct-btn-icon-hover-bg:transparent;--tct-btn-icon-width:22px;--tct-icon-stroke-primary:var(--tct-stepper-scroll-arrow-color, var(--t-stepper-scroll-arrow-color, var(--t-text, #4d4d4d)));position:absolute;top:calc(50% - 22px);z-index:2}.btn-left q2-icon,.btn-right q2-icon{--tct-icon-stroke-width:3}.btn-left{left:0}.btn-right{right:0}.tab-pane-badge{display:flex;justify-content:space-between;align-items:center}.tab-pane-badge q2-badge{margin-left:5px;margin-right:5px}";
5
5
 
6
6
  addSmoothScrollPolyfill();
7
7
  const Q2TabContainer = class {
@@ -31,17 +31,21 @@ const Q2TabContainer = class {
31
31
  });
32
32
  };
33
33
  this.setTabs = () => {
34
- this.tabs = this.tabPanes.map(({ label, value }) => ({
34
+ this.tabs = this.tabPanes.map(({ label, value, badgeCount, badgeDescription }) => ({
35
35
  label: (label && loc(label)) || '',
36
36
  value,
37
+ badgeCount,
38
+ badgeDescription,
37
39
  }));
38
40
  };
39
41
  this.onTabClick = (event) => {
40
- const isAlreadySelected = this.value === event.target.dataset.value;
42
+ const targetValue = event.target.closest('button[role="tab"]')
43
+ .dataset.value;
44
+ const isAlreadySelected = this.value === targetValue;
41
45
  if (isAlreadySelected)
42
46
  return;
43
47
  this.change.emit({
44
- value: event.target.dataset.value,
48
+ value: targetValue,
45
49
  });
46
50
  };
47
51
  this.onTabKeyDown = (event) => {
@@ -153,6 +157,9 @@ const Q2TabContainer = class {
153
157
  const index = this.tabs.findIndex(el => el.value === this.selectedTabValue);
154
158
  this.moveFocus(index);
155
159
  }
160
+ onBadge() {
161
+ this.setTabs();
162
+ }
156
163
  ///////// Lifecycle Hooks /////////
157
164
  componentWillLoad() {
158
165
  const observer = new MutationObserver(this.updateTabData);
@@ -205,7 +212,10 @@ const Q2TabContainer = class {
205
212
  generateTab(tab, index) {
206
213
  const { label, value } = tab;
207
214
  const isSelected = this.selectedTabValue === value;
208
- return (h("li", { role: "presentation" }, h("button", { id: `tab-${this.guid}-${index}`, "data-value": value, "test-id": "tabLink", tabIndex: isSelected ? 0 : -1, role: "tab", "aria-selected": isSelected ? 'true' : 'false', "aria-controls": `tab-pane-${this.guid}-${index}`, onClick: this.onTabClick, onKeyDown: this.onTabKeyDown }, label)));
215
+ return (h("li", { role: "presentation" }, h("button", { id: `tab-${this.guid}-${index}`, "data-value": value, "test-id": "tabLink", tabIndex: isSelected ? 0 : -1, role: "tab", "aria-selected": isSelected ? 'true' : 'false', "aria-controls": `tab-pane-${this.guid}-${index}`, onClick: this.onTabClick, onKeyDown: this.onTabKeyDown }, tab.badgeCount === undefined ? label : this.generateTabWithBadge(tab, isSelected))));
216
+ }
217
+ generateTabWithBadge(tab, isSelected) {
218
+ return (h("div", { class: "tab-pane-badge", "aria-label": `${tab.label}, ${tab.badgeCount} ${tab.badgeDescription || loc('tecton.element.tab.pane.new')}` }, tab.label, h("q2-badge", { value: tab.badgeCount, theme: isSelected ? 'primary' : undefined })));
209
219
  }
210
220
  get hostElement() { return getElement(this); }
211
221
  static get watchers() { return {
@@ -1,14 +1,21 @@
1
- import { r as registerInstance, h } from './index-6d5ed7cc.js';
1
+ import { r as registerInstance, c as createEvent, h } from './index-6d5ed7cc.js';
2
2
 
3
3
  const stylesCss = "*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-global-focus)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}.tab-pane[aria-hidden=true]{display:none}.tab-pane:focus{outline:none;box-shadow:none}";
4
4
 
5
5
  const Q2TabPane = class {
6
6
  constructor(hostRef) {
7
7
  registerInstance(this, hostRef);
8
+ this.badge = createEvent(this, "badge", 7);
9
+ }
10
+ badgeObserver() {
11
+ this.badge.emit();
8
12
  }
9
13
  render() {
10
14
  return (h("div", { id: `tab-pane-${this.guid}-${this.index}`, class: `tab-pane${this.selected ? '' : ' hidden'}`, role: "tabpanel", tabindex: "-1", "aria-hidden": `${!this.selected}`, "aria-labelledby": `tab-${this.guid}-${this.index}` }, h("slot", null)));
11
15
  }
16
+ static get watchers() { return {
17
+ "badgeCount": ["badgeObserver"]
18
+ }; }
12
19
  };
13
20
  Q2TabPane.style = stylesCss;
14
21
 
@@ -13,5 +13,5 @@ const patchBrowser = () => {
13
13
  };
14
14
 
15
15
  patchBrowser().then(options => {
16
- return bootstrapLazy(JSON.parse("[[\"q2-icon\",[[1,\"q2-icon\",{\"type\":[513],\"label\":[513]}]]],[\"q2-calendar\",[[1,\"q2-calendar\",{\"value\":[1537],\"label\":[513],\"hideLabel\":[516,\"hide-label\"],\"ariaLabel\":[513,\"aria-label\"],\"optional\":[516],\"disabled\":[516],\"readonly\":[516],\"invalid\":[1540],\"typeable\":[516],\"placeholder\":[513],\"buttonLabel\":[513,\"button-label\"],\"disabledMsg\":[513,\"disabled-msg\"],\"calendarLabel\":[513,\"calendar-label\"],\"disclaimer\":[513],\"displayFormat\":[513,\"display-format\"],\"startDate\":[513,\"start-date\"],\"endDate\":[513,\"end-date\"],\"cutoffTime\":[513,\"cutoff-time\"],\"daysOfWeekChecksum\":[514,\"days-of-week-checksum\"],\"popDirection\":[513,\"pop-direction\"],\"assume\":[513],\"errors\":[1040],\"invalidDates\":[16],\"validDates\":[16],\"onsuccess\":[16],\"dropdownOpen\":[32],\"keyboardSelection\":[32],\"typedValue\":[32],\"dateList\":[32],\"hintMessage\":[32],\"hintMessageType\":[32]},[[0,\"change\",\"defaultChangeHandler\"],[0,\"error\",\"defaultErrorHandler\"],[0,\"success\",\"defaultSuccessHandler\"],[0,\"focus\",\"delegateFocus\"]]]]],[\"q2-dropdown\",[[1,\"q2-dropdown\",{\"type\":[513],\"icon\":[513],\"label\":[513],\"hideLabel\":[516,\"hide-label\"],\"ariaLabel\":[513,\"aria-label\"],\"disabled\":[516],\"popDirection\":[513,\"pop-direction\"],\"name\":[513],\"context\":[513],\"contextValue\":[513,\"context-value\"],\"resolvedType\":[513,\"resolved-type\"],\"block\":[516],\"dropdownOpen\":[32]},[[0,\"focus\",\"delegateFocus\"]]]]],[\"q2-select\",[[1,\"q2-select\",{\"label\":[513],\"hideLabel\":[516,\"hide-label\"],\"value\":[1025],\"ariaLabel\":[513,\"aria-label\"],\"selectedOptions\":[1032,\"selected-options\"],\"disabled\":[516],\"readonly\":[516],\"invalid\":[516],\"errors\":[16],\"multiple\":[516],\"minRows\":[2,\"min-rows\"],\"popDirection\":[513,\"pop-direction\"],\"searchable\":[516],\"multilineOptions\":[516,\"multiline-options\"],\"optional\":[516],\"dropdownOpen\":[32],\"onlyShowingSelected\":[32],\"activeOptionId\":[32],\"searchText\":[32],\"hasCustomDisplay\":[32],\"inputFocused\":[32],\"statusMessage\":[32]},[[0,\"change\",\"onHostElementChange\"],[0,\"input\",\"onHostElementInput\"],[0,\"focus\",\"delegateFocus\"],[0,\"click\",\"clickHandler\"],[0,\"keydown\",\"keydownHandler\"]]]]],[\"q2-editable-field\",[[1,\"q2-editable-field\",{\"value\":[1537],\"editing\":[1540],\"label\":[1537],\"hideLabel\":[1540,\"hide-label\"],\"ariaLabel\":[1537,\"aria-label\"],\"type\":[513],\"formatModifier\":[513,\"format-modifier\"],\"truncated\":[513],\"maxlength\":[514],\"persistentLabel\":[516,\"persistent-label\"],\"hints\":[16],\"errors\":[16]},[[0,\"change\",\"onHostElementChange\"],[0,\"focus\",\"delegateFocus\"]]]]],[\"q2-pagination\",[[1,\"q2-pagination\",{\"recordType\":[1,\"record-type\"],\"perPage\":[2,\"per-page\"],\"total\":[514],\"page\":[1538],\"pages\":[1538],\"recordsOnly\":[1540,\"records-only\"],\"pagesOnly\":[1540,\"pages-only\"],\"isSmall\":[32]},[[0,\"focus\",\"onHostElementFocus\"]]]]],[\"q2-carousel\",[[4,\"q2-carousel\",{\"autoPlay\":[516,\"auto-play\"],\"fullWidthPanes\":[516,\"full-width-panes\"],\"hidePagination\":[516,\"hide-pagination\"],\"showNavigationArrows\":[516,\"show-navigation-arrows\"],\"ariaLabel\":[513,\"aria-label\"],\"label\":[513],\"index\":[1538],\"universalCarouselOptions\":[32],\"fullWidthDisplayOptions\":[32],\"activePaneIndex\":[32],\"applyFocus\":[32],\"applyPaginationFocus\":[32],\"autoPlayInProgress\":[32],\"compactMode\":[32],\"carouselWrapperWidth\":[32]},[[0,\"change\",\"onHostElementChange\"],[0,\"clickCarouselPane\",\"carouselPaneClicked\"],[0,\"focus\",\"delegateFocus\"]]]]],[\"q2-section\",[[1,\"q2-section\",{\"label\":[513],\"collapsible\":[516],\"noCollapseIcon\":[516,\"no-collapse-icon\"],\"expanded\":[1540],\"contentHeight\":[32],\"hasYieldedHeader\":[32]},[[0,\"change\",\"defaultChangeHandler\"],[0,\"focus\",\"delegateFocus\"]]]]],[\"q2-stepper\",[[1,\"q2-stepper\",{\"currentStep\":[1538,\"current-step\"],\"stepCount\":[1026,\"step-count\"],\"lastEnabledStep\":[1026,\"last-enabled-step\"],\"scrollEnabled\":[32],\"showScrollLeft\":[32],\"showScrollRight\":[32]},[[0,\"change\",\"defaultChangeHandler\"],[0,\"focus\",\"delegateFocus\"]]]]],[\"q2-tab-container\",[[1,\"q2-tab-container\",{\"value\":[1537],\"type\":[513],\"name\":[513],\"color\":[513],\"noPrint\":[516,\"no-print\"],\"hasLeft\":[32],\"hasRight\":[32],\"scrollEnabled\":[32],\"showScrollLeft\":[32],\"showScrollRight\":[32],\"tabs\":[32]},[[0,\"change\",\"defaultChangeHandler\"],[9,\"resize\",\"onResize\"],[0,\"focus\",\"onFocus\"]]]]],[\"q2-card\",[[1,\"q2-card\",{\"title\":[513],\"description\":[513],\"avatarName\":[513,\"avatar-name\"],\"avatarInitials\":[513,\"avatar-initials\"],\"avatarIcon\":[513,\"avatar-icon\"],\"avatarSrc\":[513,\"avatar-src\"],\"isSmall\":[516,\"is-small\"],\"bar\":[513],\"isTouch\":[516,\"is-touch\"],\"url\":[513],\"target\":[513],\"isAutoTouch\":[32],\"isAutoSmall\":[32]},[[0,\"focus\",\"onHostElementFocus\"]]]]],[\"q2-chart-donut\",[[1,\"q2-chart-donut\",{\"chartName\":[513,\"chart-name\"],\"summaryIcon\":[513,\"summary-icon\"],\"summaryName\":[513,\"summary-name\"],\"innerRadius\":[1025,\"inner-radius\"],\"outerRadius\":[1025,\"outer-radius\"],\"selectedOffset\":[2,\"selected-offset\"],\"hoverScaleSize\":[2,\"hover-scale-size\"],\"format\":[513],\"isClickable\":[516,\"is-clickable\"],\"data\":[16],\"selectedId\":[32],\"hoveredId\":[32],\"selectById\":[64],\"selectByIndex\":[64],\"clearSelection\":[64]},[[0,\"focus\",\"delegateFocus\"]]]]],[\"q2-pill\",[[1,\"q2-pill\",{\"disabled\":[516],\"active\":[1540],\"open\":[1540],\"multiple\":[516],\"label\":[513],\"value\":[513],\"theme\":[513],\"selectedOptions\":[1040],\"hasOptions\":[32]},[[0,\"focus\",\"delegateFocus\"],[0,\"optionListState\",\"optionListStateEvent\"]]]]],[\"q2-tag\",[[1,\"q2-tag\",{\"open\":[1540],\"role\":[513],\"label\":[513],\"theme\":[513],\"hasOptions\":[32]},[[0,\"focus\",\"delegateFocus\"],[0,\"optionListState\",\"optionListStateEvent\"]]]]],[\"q2-checkbox\",[[1,\"q2-checkbox\",{\"checked\":[1540],\"type\":[513],\"label\":[1537],\"hideLabel\":[1540,\"hide-label\"],\"ariaLabel\":[1537,\"aria-label\"],\"indeterminate\":[516],\"disabled\":[516],\"readonly\":[516],\"value\":[513],\"name\":[513],\"hasError\":[516,\"has-error\"],\"groupDisabled\":[516,\"group-disabled\"],\"alignment\":[513],\"description\":[513]},[[0,\"change\",\"defaultChangeHandler\"],[0,\"focus\",\"delegateFocus\"]]]]],[\"q2-checkbox-group\",[[1,\"q2-checkbox-group\",{\"label\":[513],\"value\":[1040],\"disabled\":[516],\"readonly\":[516],\"optional\":[516],\"hasError\":[516,\"has-error\"]},[[0,\"change\",\"onHostElementChange\"]]]]],[\"q2-option\",[[1,\"q2-option\",{\"role\":[513],\"tabindex\":[513],\"display\":[513],\"value\":[513],\"disabled\":[516],\"optionId\":[513,\"option-id\"],\"disabledGroup\":[516,\"disabled-group\"],\"selected\":[516],\"hidden\":[516],\"multiline\":[516],\"active\":[516],\"noSelect\":[516,\"_no-select\"],\"_multiSelectHidden\":[516,\"_multiselecthidden\"]}]]],[\"q2-radio-group\",[[1,\"q2-radio-group\",{\"label\":[513],\"value\":[1025],\"disabled\":[516],\"name\":[513],\"optional\":[516],\"readonly\":[516],\"tileLayout\":[516,\"tile-layout\"],\"tileAlignment\":[513,\"tile-alignment\"],\"hasError\":[516,\"has-error\"],\"tilelayout\":[516]},[[0,\"change\",\"onHostElementChange\"],[0,\"focus\",\"delegateFocus\"],[0,\"keydown\",\"keydownHandler\"]]]]],[\"q2-stepper-vertical\",[[1,\"q2-stepper-vertical\",{\"currentStepId\":[1537,\"current-step-id\"],\"structuredPanes\":[32]},[[0,\"change\",\"defaultChangeHandler\"],[0,\"focus\",\"delegateFocus\"],[0,\"statusChange\",\"statusChangeHandler\"]]]]],[\"q2-textarea\",[[1,\"q2-textarea\",{\"value\":[1025],\"label\":[513],\"hideLabel\":[516,\"hide-label\"],\"hideMessages\":[516,\"hide-messages\"],\"optional\":[516],\"placeholder\":[513],\"disabled\":[516],\"readonly\":[516],\"spellcheck\":[516],\"maxlength\":[1538],\"rows\":[514],\"cols\":[514],\"resize\":[513],\"errors\":[16],\"hints\":[16],\"hasFocus\":[32],\"downParams\":[32]},[[0,\"focus\",\"onHostElementFocus\"],[0,\"change\",\"onHostElementChange\"]]]]],[\"q2-badge\",[[1,\"q2-badge\",{\"value\":[514],\"maxLength\":[514,\"max-length\"],\"position\":[513],\"size\":[513],\"theme\":[513],\"status\":[513]}]]],[\"q2-carousel-pane\",[[4,\"q2-carousel-pane\",{\"index\":[2],\"siblingCount\":[2,\"sibling-count\"],\"isActivePane\":[516,\"is-active-pane\"],\"label\":[513]}]]],[\"q2-loading-element\",[[0,\"q2-loading-element\",{\"shape\":[513],\"width\":[513],\"height\":[513],\"borderRadius\":[513,\"border-radius\"]}]]],[\"q2-loc\",[[1,\"q2-loc\",{\"value\":[513],\"substitutions\":[16]}]]],[\"q2-optgroup\",[[1,\"q2-optgroup\",{\"disabled\":[516],\"label\":[513],\"hidden\":[32]}]]],[\"q2-radio\",[[1,\"q2-radio\",{\"label\":[513],\"hideLabel\":[516,\"hide-label\"],\"value\":[513],\"disabled\":[516],\"checked\":[516],\"name\":[513],\"ariaLabel\":[513,\"aria-label\"],\"groupDisabled\":[4,\"group-disabled\"],\"groupReadonly\":[4,\"group-readonly\"],\"groupTileLayout\":[4,\"group-tile-layout\"]},[[0,\"click\",\"onHostClick\"],[0,\"focus\",\"delegateFocus\"]]]]],[\"q2-stepper-pane\",[[1,\"q2-stepper-pane\",{\"label\":[513],\"description\":[513],\"isActive\":[516,\"is-active\"],\"showWithChildren\":[516,\"show-with-children\"],\"status\":[513],\"isChildActive\":[32]},[[0,\"activeChange\",\"checkForActiveChildren\"]]]]],[\"q2-tab-pane\",[[1,\"q2-tab-pane\",{\"value\":[513],\"label\":[513],\"name\":[513],\"selected\":[516],\"index\":[2],\"guid\":[2]}]]],[\"tecton-tab-pane\",[[1,\"tecton-tab-pane\",{\"value\":[513],\"label\":[513],\"name\":[513],\"selected\":[516],\"index\":[2],\"guid\":[2],\"provided\":[516],\"url\":[513],\"moduleId\":[513,\"module-id\"],\"minHeight\":[513,\"min-height\"],\"authPayload\":[16],\"showForm\":[4,\"show-form\"],\"_showForm\":[32]}]]],[\"q2-dropdown-item\",[[1,\"q2-dropdown-item\",{\"disabled\":[516],\"removable\":[516],\"separator\":[516],\"label\":[513],\"ariaLabel\":[513,\"aria-label\"],\"value\":[513]},[[0,\"focus\",\"onHostElementFocus\"]]]]],[\"q2-avatar\",[[1,\"q2-avatar\",{\"name\":[513],\"initials\":[513],\"src\":[513],\"icon\":[1],\"badSrc\":[32]}]]],[\"q2-message\",[[1,\"q2-message\",{\"type\":[513],\"appearance\":[513],\"description\":[516],\"presentToggle\":[32],\"present\":[64]},[[0,\"focus\",\"delegateFocus\"]]]]],[\"q2-option-list\",[[1,\"q2-option-list\",{\"role\":[513],\"direction\":[513],\"open\":[1540],\"customSearch\":[516,\"custom-search\"],\"noSelect\":[516,\"no-select\"],\"align\":[513],\"selectedOptions\":[1040],\"multiple\":[516],\"disabled\":[516],\"type\":[1],\"hasOptions\":[32],\"toggle\":[64],\"setDefaultActiveElement\":[64],\"setActiveElement\":[64],\"handleExternalKeydown\":[64]},[[0,\"focus\",\"delegateFocus\"],[0,\"click\",\"handleClick\"]]]]],[\"q2-btn_2\",[[1,\"q2-btn\",{\"ariaExpanded\":[1,\"aria-expanded\"],\"ariaHasPopup\":[1,\"aria-has-popup\"],\"ariaControls\":[1,\"aria-controls\"],\"ariaSelected\":[1,\"aria-selected\"],\"label\":[513],\"hideLabel\":[516,\"hide-label\"],\"ariaLabel\":[513,\"aria-label\"],\"tabIndex\":[2,\"tab-index\"],\"intent\":[513],\"disabled\":[516],\"type\":[513],\"loading\":[516],\"badge\":[516],\"active\":[516],\"fab\":[516],\"block\":[516],\"iconPosition\":[32]},[[2,\"click\",\"disable\"],[0,\"focus\",\"delegateFocus\"]]],[1,\"q2-loading\",{\"type\":[513],\"shape\":[513],\"modifiers\":[513],\"counts\":[513],\"label\":[513],\"ariaLabel\":[513,\"aria-label\"],\"inline\":[516]}]]],[\"q2-input\",[[1,\"q2-input\",{\"value\":[1025],\"label\":[513],\"hideLabel\":[516,\"hide-label\"],\"type\":[513],\"placeholder\":[513],\"disabled\":[516],\"autocomplete\":[513],\"autocorrect\":[513],\"autocapitalize\":[513],\"hideMessages\":[516,\"hide-messages\"],\"iconLeft\":[513,\"icon-left\"],\"iconRight\":[513,\"icon-right\"],\"readonly\":[516],\"clearable\":[516],\"optional\":[516],\"min\":[514],\"max\":[514],\"step\":[514],\"formatModifier\":[513,\"format-modifier\"],\"maxlength\":[1538],\"pseudo\":[516],\"showVisibilityToggle\":[516,\"show-visibility-toggle\"],\"textHidden\":[1540,\"text-hidden\"],\"ariaControls\":[1,\"aria-controls\"],\"role\":[1],\"ariaOwns\":[1,\"aria-owns\"],\"ariaLabel\":[513,\"aria-label\"],\"ariaHaspopup\":[1,\"aria-haspopup\"],\"ariaExpanded\":[1,\"aria-expanded\"],\"ariaActivedescendant\":[8,\"aria-activedescendant\"],\"current\":[1],\"errors\":[16],\"hints\":[16],\"formattedValueObject\":[32],\"hasFocus\":[32]},[[0,\"focus\",\"onHostElementFocus\"],[0,\"change\",\"onHostElementChange\"]]]]],[\"click-elsewhere\",[[0,\"click-elsewhere\"]]]]"), options);
16
+ return bootstrapLazy(JSON.parse("[[\"q2-icon\",[[1,\"q2-icon\",{\"type\":[513],\"label\":[513]}]]],[\"q2-calendar\",[[1,\"q2-calendar\",{\"value\":[1537],\"label\":[513],\"hideLabel\":[516,\"hide-label\"],\"ariaLabel\":[513,\"aria-label\"],\"optional\":[516],\"disabled\":[516],\"readonly\":[516],\"invalid\":[1540],\"typeable\":[516],\"placeholder\":[513],\"buttonLabel\":[513,\"button-label\"],\"disabledMsg\":[513,\"disabled-msg\"],\"calendarLabel\":[513,\"calendar-label\"],\"disclaimer\":[513],\"displayFormat\":[513,\"display-format\"],\"startDate\":[513,\"start-date\"],\"endDate\":[513,\"end-date\"],\"cutoffTime\":[513,\"cutoff-time\"],\"daysOfWeekChecksum\":[514,\"days-of-week-checksum\"],\"popDirection\":[513,\"pop-direction\"],\"assume\":[513],\"errors\":[1040],\"invalidDates\":[16],\"validDates\":[16],\"onsuccess\":[16],\"dropdownOpen\":[32],\"keyboardSelection\":[32],\"typedValue\":[32],\"dateList\":[32],\"hintMessage\":[32],\"hintMessageType\":[32]},[[0,\"change\",\"defaultChangeHandler\"],[0,\"error\",\"defaultErrorHandler\"],[0,\"success\",\"defaultSuccessHandler\"],[0,\"focus\",\"delegateFocus\"]]]]],[\"q2-dropdown\",[[1,\"q2-dropdown\",{\"type\":[513],\"icon\":[513],\"label\":[513],\"hideLabel\":[516,\"hide-label\"],\"ariaLabel\":[513,\"aria-label\"],\"disabled\":[516],\"popDirection\":[513,\"pop-direction\"],\"name\":[513],\"context\":[513],\"contextValue\":[513,\"context-value\"],\"resolvedType\":[513,\"resolved-type\"],\"block\":[516],\"dropdownOpen\":[32]},[[0,\"focus\",\"delegateFocus\"]]]]],[\"q2-select\",[[1,\"q2-select\",{\"label\":[513],\"hideLabel\":[516,\"hide-label\"],\"value\":[1025],\"ariaLabel\":[513,\"aria-label\"],\"selectedOptions\":[1032,\"selected-options\"],\"disabled\":[516],\"readonly\":[516],\"invalid\":[516],\"errors\":[16],\"multiple\":[516],\"minRows\":[2,\"min-rows\"],\"popDirection\":[513,\"pop-direction\"],\"searchable\":[516],\"multilineOptions\":[516,\"multiline-options\"],\"optional\":[516],\"dropdownOpen\":[32],\"onlyShowingSelected\":[32],\"activeOptionId\":[32],\"searchText\":[32],\"hasCustomDisplay\":[32],\"inputFocused\":[32],\"statusMessage\":[32]},[[0,\"change\",\"onHostElementChange\"],[0,\"input\",\"onHostElementInput\"],[0,\"focus\",\"delegateFocus\"],[0,\"click\",\"clickHandler\"],[0,\"keydown\",\"keydownHandler\"]]]]],[\"q2-editable-field\",[[1,\"q2-editable-field\",{\"value\":[1537],\"editing\":[1540],\"label\":[1537],\"hideLabel\":[1540,\"hide-label\"],\"ariaLabel\":[1537,\"aria-label\"],\"type\":[513],\"formatModifier\":[513,\"format-modifier\"],\"truncated\":[513],\"maxlength\":[514],\"persistentLabel\":[516,\"persistent-label\"],\"disabled\":[516],\"hints\":[16],\"errors\":[16]},[[0,\"change\",\"onHostElementChange\"],[0,\"focus\",\"delegateFocus\"]]]]],[\"q2-pagination\",[[1,\"q2-pagination\",{\"recordType\":[1,\"record-type\"],\"perPage\":[2,\"per-page\"],\"total\":[514],\"page\":[1538],\"pages\":[1538],\"recordsOnly\":[1540,\"records-only\"],\"pagesOnly\":[1540,\"pages-only\"],\"isSmall\":[32]},[[0,\"focus\",\"onHostElementFocus\"]]]]],[\"q2-tab-container\",[[1,\"q2-tab-container\",{\"value\":[1537],\"type\":[513],\"name\":[513],\"color\":[513],\"noPrint\":[516,\"no-print\"],\"hasLeft\":[32],\"hasRight\":[32],\"scrollEnabled\":[32],\"showScrollLeft\":[32],\"showScrollRight\":[32],\"tabs\":[32]},[[0,\"change\",\"defaultChangeHandler\"],[9,\"resize\",\"onResize\"],[0,\"focus\",\"onFocus\"],[0,\"badge\",\"onBadge\"]]]]],[\"q2-carousel\",[[4,\"q2-carousel\",{\"autoPlay\":[516,\"auto-play\"],\"fullWidthPanes\":[516,\"full-width-panes\"],\"hidePagination\":[516,\"hide-pagination\"],\"showNavigationArrows\":[516,\"show-navigation-arrows\"],\"ariaLabel\":[513,\"aria-label\"],\"label\":[513],\"index\":[1538],\"universalCarouselOptions\":[32],\"fullWidthDisplayOptions\":[32],\"activePaneIndex\":[32],\"applyFocus\":[32],\"applyPaginationFocus\":[32],\"autoPlayInProgress\":[32],\"compactMode\":[32],\"carouselWrapperWidth\":[32]},[[0,\"change\",\"onHostElementChange\"],[0,\"clickCarouselPane\",\"carouselPaneClicked\"],[0,\"focus\",\"delegateFocus\"]]]]],[\"q2-section\",[[1,\"q2-section\",{\"label\":[513],\"collapsible\":[516],\"noCollapseIcon\":[516,\"no-collapse-icon\"],\"expanded\":[1540],\"contentHeight\":[32],\"hasYieldedHeader\":[32]},[[0,\"change\",\"defaultChangeHandler\"],[0,\"focus\",\"delegateFocus\"]]]]],[\"q2-stepper\",[[1,\"q2-stepper\",{\"currentStep\":[1538,\"current-step\"],\"stepCount\":[1026,\"step-count\"],\"lastEnabledStep\":[1026,\"last-enabled-step\"],\"scrollEnabled\":[32],\"showScrollLeft\":[32],\"showScrollRight\":[32]},[[0,\"change\",\"defaultChangeHandler\"],[0,\"focus\",\"delegateFocus\"],[0,\"statusChange\",\"statusChangeHandler\"]]]]],[\"q2-card\",[[1,\"q2-card\",{\"title\":[513],\"description\":[513],\"avatarName\":[513,\"avatar-name\"],\"avatarInitials\":[513,\"avatar-initials\"],\"avatarIcon\":[513,\"avatar-icon\"],\"avatarSrc\":[513,\"avatar-src\"],\"isSmall\":[516,\"is-small\"],\"bar\":[513],\"isTouch\":[516,\"is-touch\"],\"url\":[513],\"target\":[513],\"isAutoTouch\":[32],\"isAutoSmall\":[32]},[[0,\"focus\",\"onHostElementFocus\"]]]]],[\"q2-chart-donut\",[[1,\"q2-chart-donut\",{\"chartName\":[513,\"chart-name\"],\"summaryIcon\":[513,\"summary-icon\"],\"summaryName\":[513,\"summary-name\"],\"innerRadius\":[1025,\"inner-radius\"],\"outerRadius\":[1025,\"outer-radius\"],\"selectedOffset\":[2,\"selected-offset\"],\"hoverScaleSize\":[2,\"hover-scale-size\"],\"format\":[513],\"isClickable\":[516,\"is-clickable\"],\"data\":[16],\"selectedId\":[32],\"hoveredId\":[32],\"selectById\":[64],\"selectByIndex\":[64],\"clearSelection\":[64]},[[0,\"focus\",\"delegateFocus\"]]]]],[\"q2-pill\",[[1,\"q2-pill\",{\"disabled\":[516],\"active\":[1540],\"open\":[1540],\"multiple\":[516],\"maxLength\":[514,\"max-length\"],\"label\":[513],\"value\":[513],\"theme\":[513],\"selectedOptions\":[1040],\"hasOptions\":[32]},[[0,\"focus\",\"delegateFocus\"],[0,\"optionListState\",\"optionListStateEvent\"]]]]],[\"q2-tag\",[[1,\"q2-tag\",{\"open\":[1540],\"role\":[513],\"label\":[513],\"theme\":[513],\"hasOptions\":[32]},[[0,\"focus\",\"delegateFocus\"],[0,\"optionListState\",\"optionListStateEvent\"]]]]],[\"q2-checkbox\",[[1,\"q2-checkbox\",{\"checked\":[1540],\"type\":[513],\"label\":[1537],\"hideLabel\":[1540,\"hide-label\"],\"ariaLabel\":[1537,\"aria-label\"],\"indeterminate\":[516],\"disabled\":[516],\"readonly\":[516],\"value\":[513],\"name\":[513],\"hasError\":[516,\"has-error\"],\"groupDisabled\":[516,\"group-disabled\"],\"alignment\":[513],\"description\":[513]},[[0,\"change\",\"defaultChangeHandler\"],[0,\"focus\",\"delegateFocus\"]]]]],[\"q2-checkbox-group\",[[1,\"q2-checkbox-group\",{\"label\":[513],\"value\":[1040],\"disabled\":[516],\"readonly\":[516],\"optional\":[516],\"hasError\":[516,\"has-error\"]},[[0,\"change\",\"onHostElementChange\"]]]]],[\"q2-option\",[[1,\"q2-option\",{\"role\":[513],\"tabindex\":[513],\"display\":[513],\"value\":[513],\"disabled\":[516],\"optionId\":[513,\"option-id\"],\"disabledGroup\":[516,\"disabled-group\"],\"selected\":[516],\"hidden\":[516],\"multiline\":[516],\"active\":[516],\"noSelect\":[516,\"_no-select\"],\"_multiSelectHidden\":[516,\"_multiselecthidden\"]}]]],[\"q2-radio-group\",[[1,\"q2-radio-group\",{\"label\":[513],\"value\":[1025],\"disabled\":[516],\"name\":[513],\"optional\":[516],\"readonly\":[516],\"tileLayout\":[516,\"tile-layout\"],\"tileAlignment\":[513,\"tile-alignment\"],\"hasError\":[516,\"has-error\"],\"tilelayout\":[516]},[[0,\"change\",\"onHostElementChange\"],[0,\"focus\",\"delegateFocus\"],[0,\"keydown\",\"keydownHandler\"]]]]],[\"q2-stepper-vertical\",[[1,\"q2-stepper-vertical\",{\"currentStepId\":[1537,\"current-step-id\"],\"structuredPanes\":[32]},[[0,\"change\",\"defaultChangeHandler\"],[0,\"focus\",\"delegateFocus\"],[0,\"statusChange\",\"statusChangeHandler\"]]]]],[\"q2-textarea\",[[1,\"q2-textarea\",{\"value\":[1025],\"label\":[513],\"hideLabel\":[516,\"hide-label\"],\"hideMessages\":[516,\"hide-messages\"],\"optional\":[516],\"placeholder\":[513],\"disabled\":[516],\"readonly\":[516],\"spellcheck\":[516],\"maxlength\":[1538],\"rows\":[514],\"cols\":[514],\"resize\":[513],\"errors\":[16],\"hints\":[16],\"hasFocus\":[32],\"downParams\":[32]},[[0,\"focus\",\"onHostElementFocus\"],[0,\"change\",\"onHostElementChange\"]]]]],[\"q2-carousel-pane\",[[4,\"q2-carousel-pane\",{\"index\":[2],\"siblingCount\":[2,\"sibling-count\"],\"isActivePane\":[516,\"is-active-pane\"],\"label\":[513]}]]],[\"q2-loading-element\",[[0,\"q2-loading-element\",{\"shape\":[513],\"width\":[513],\"height\":[513],\"borderRadius\":[513,\"border-radius\"]}]]],[\"q2-loc\",[[1,\"q2-loc\",{\"value\":[513],\"substitutions\":[16]}]]],[\"q2-optgroup\",[[1,\"q2-optgroup\",{\"disabled\":[516],\"label\":[513],\"hidden\":[32]}]]],[\"q2-radio\",[[1,\"q2-radio\",{\"label\":[513],\"hideLabel\":[516,\"hide-label\"],\"value\":[513],\"disabled\":[516],\"checked\":[516],\"name\":[513],\"ariaLabel\":[513,\"aria-label\"],\"groupDisabled\":[4,\"group-disabled\"],\"groupReadonly\":[4,\"group-readonly\"],\"groupTileLayout\":[4,\"group-tile-layout\"]},[[0,\"click\",\"onHostClick\"],[0,\"focus\",\"delegateFocus\"]]]]],[\"q2-stepper-pane\",[[1,\"q2-stepper-pane\",{\"label\":[513],\"description\":[513],\"isActive\":[516,\"is-active\"],\"showWithChildren\":[516,\"show-with-children\"],\"status\":[513],\"isChildActive\":[32]},[[0,\"activeChange\",\"checkForActiveChildren\"]]]]],[\"q2-tab-pane\",[[1,\"q2-tab-pane\",{\"value\":[513],\"label\":[513],\"name\":[513],\"selected\":[516],\"badgeCount\":[514,\"badge-count\"],\"badgeDescription\":[513,\"badge-description\"],\"index\":[2],\"guid\":[2]}]]],[\"tecton-tab-pane\",[[1,\"tecton-tab-pane\",{\"value\":[513],\"label\":[513],\"name\":[513],\"selected\":[516],\"index\":[2],\"guid\":[2],\"provided\":[516],\"url\":[513],\"moduleId\":[513,\"module-id\"],\"minHeight\":[513,\"min-height\"],\"badgeCount\":[514,\"badge-count\"],\"badgeDescription\":[513,\"badge-description\"],\"authPayload\":[16],\"showForm\":[4,\"show-form\"],\"_showForm\":[32]}]]],[\"q2-dropdown-item\",[[1,\"q2-dropdown-item\",{\"disabled\":[516],\"removable\":[516],\"separator\":[516],\"label\":[513],\"ariaLabel\":[513,\"aria-label\"],\"value\":[513]},[[0,\"focus\",\"onHostElementFocus\"]]]]],[\"q2-avatar\",[[1,\"q2-avatar\",{\"name\":[513],\"initials\":[513],\"src\":[513],\"icon\":[1],\"badSrc\":[32],\"isLoaded\":[32]}]]],[\"q2-message\",[[1,\"q2-message\",{\"type\":[513],\"appearance\":[513],\"description\":[516],\"presentToggle\":[32],\"present\":[64]},[[0,\"focus\",\"delegateFocus\"]]]]],[\"q2-badge\",[[1,\"q2-badge\",{\"value\":[514],\"maxLength\":[514,\"max-length\"],\"position\":[513],\"size\":[513],\"theme\":[513],\"status\":[513]}]]],[\"q2-option-list\",[[1,\"q2-option-list\",{\"role\":[513],\"direction\":[513],\"open\":[1540],\"customSearch\":[516,\"custom-search\"],\"noSelect\":[516,\"no-select\"],\"align\":[513],\"selectedOptions\":[1040],\"multiple\":[516],\"disabled\":[516],\"type\":[1],\"hasOptions\":[32],\"toggle\":[64],\"setDefaultActiveElement\":[64],\"setActiveElement\":[64],\"handleExternalKeydown\":[64]},[[0,\"focus\",\"delegateFocus\"],[0,\"click\",\"handleClick\"]]]]],[\"q2-btn_2\",[[1,\"q2-btn\",{\"ariaExpanded\":[1,\"aria-expanded\"],\"ariaHasPopup\":[1,\"aria-has-popup\"],\"ariaControls\":[1,\"aria-controls\"],\"ariaSelected\":[1,\"aria-selected\"],\"label\":[513],\"hideLabel\":[516,\"hide-label\"],\"ariaLabel\":[513,\"aria-label\"],\"tabIndex\":[2,\"tab-index\"],\"intent\":[513],\"disabled\":[516],\"type\":[513],\"loading\":[516],\"badge\":[516],\"active\":[516],\"fab\":[516],\"block\":[516],\"iconPosition\":[32]},[[2,\"click\",\"disable\"],[0,\"focus\",\"delegateFocus\"]]],[1,\"q2-loading\",{\"type\":[513],\"shape\":[513],\"modifiers\":[513],\"counts\":[513],\"label\":[513],\"ariaLabel\":[513,\"aria-label\"],\"inline\":[516]}]]],[\"q2-input\",[[1,\"q2-input\",{\"value\":[1025],\"label\":[513],\"hideLabel\":[516,\"hide-label\"],\"type\":[513],\"placeholder\":[513],\"disabled\":[516],\"autocomplete\":[513],\"autocorrect\":[513],\"autocapitalize\":[513],\"hideMessages\":[516,\"hide-messages\"],\"iconLeft\":[513,\"icon-left\"],\"iconRight\":[513,\"icon-right\"],\"readonly\":[516],\"clearable\":[516],\"optional\":[516],\"min\":[514],\"max\":[514],\"step\":[514],\"formatModifier\":[513,\"format-modifier\"],\"maxlength\":[1538],\"pseudo\":[516],\"showVisibilityToggle\":[516,\"show-visibility-toggle\"],\"textHidden\":[1540,\"text-hidden\"],\"ariaControls\":[1,\"aria-controls\"],\"role\":[1],\"ariaOwns\":[1,\"aria-owns\"],\"ariaLabel\":[513,\"aria-label\"],\"ariaHaspopup\":[1,\"aria-haspopup\"],\"ariaExpanded\":[1,\"aria-expanded\"],\"ariaActivedescendant\":[8,\"aria-activedescendant\"],\"current\":[1],\"errors\":[16],\"hints\":[16],\"formattedValueObject\":[32],\"hasFocus\":[32]},[[0,\"focus\",\"onHostElementFocus\"],[0,\"change\",\"onHostElementChange\"]]]]],[\"click-elsewhere\",[[0,\"click-elsewhere\"]]]]"), options);
17
17
  });
@@ -1,10 +1,11 @@
1
- import { r as registerInstance, h, g as getElement } from './index-6d5ed7cc.js';
1
+ import { r as registerInstance, c as createEvent, h, g as getElement } from './index-6d5ed7cc.js';
2
2
 
3
3
  const stylesCss = "*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-global-focus)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}.tab-pane[aria-hidden=true]{display:none}.tab-pane:focus{outline:none;box-shadow:none}.loading-wrapper{height:44px;width:100%;align-items:center;justify-content:center}.loading-wrapper:not([hidden]){display:flex}iframe{width:100%;height:auto;overflow-y:hidden;border:none}iframe:not([hidden]){display:inline-block}.slot-wrapper:focus{outline:none;box-shadow:var(--const-global-focus)}";
4
4
 
5
5
  const TectonTabPane = class {
6
6
  constructor(hostRef) {
7
7
  registerInstance(this, hostRef);
8
+ this.badge = createEvent(this, "badge", 7);
8
9
  ///////// Actions /////////
9
10
  this.onIFrameLoad = (event) => {
10
11
  const iframe = event.target;
@@ -12,6 +13,9 @@ const TectonTabPane = class {
12
13
  iframe.contentWindow.postMessage(`[iFrameSizer]${this.moduleId}:0:false:false:32:true:true:null:documentElementOffset`, '*');
13
14
  };
14
15
  }
16
+ badgeObserver() {
17
+ this.badge.emit();
18
+ }
15
19
  get iframeTitle() {
16
20
  return this.moduleId.split('.').slice(-2).join('-');
17
21
  }
@@ -48,6 +52,7 @@ const TectonTabPane = class {
48
52
  }
49
53
  get hostElement() { return getElement(this); }
50
54
  static get watchers() { return {
55
+ "badgeCount": ["badgeObserver"],
51
56
  "selected": ["selectedObserver"]
52
57
  }; }
53
58
  };
@@ -0,0 +1 @@
1
+ import{r as t,h as a,g as r}from"./p-c5691700.js";import{i}from"./p-73154834.js";const e=class{constructor(a){t(this,a),this.icon="person",this.badSrc=!1,this.isLoaded=!1,this.onError=()=>{this.badSrc=!0},this.onLoad=()=>{this.isLoaded=!0}}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-global-focus)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}.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-br, 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-br, 50%);background-color:var(--tct-avatar-bg, #9e9e9e)}.avatar-initials{height:var(--tct-avatar-height, 44px);width:var(--tct-avatar-width, 44px);background-color: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-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-br, var(--tct-avatar-img-br, 50%));background-color:var(--tct-avatar-fallback-bg, var(--tct-avatar-bg, #9e9e9e));display:flex;align-items:center;justify-content:center}q2-icon{--t-icon-size:var(--tct-avatar-fallback-icon-size, 65%);--t-icon-fill:var(--tct-avatar-fallback-fill, transparent);--t-icon-stroke-primary:var(--tct-avatar-fallback-stroke-primary, currentcolor);--t-icon-stroke-secondary:var(--tct-avatar-fallback-stroke-secondary, currentcolor);color:var(--tct-avatar-fallback-color, var(--tct-avatar-color, var(--t-base, #ffffff)));width:var(--t-icon-size);height:var(--t-icon-size)}";export{e as q2_avatar}
@@ -0,0 +1 @@
1
+ import{r as c,c as o,h as t,g as e}from"./p-c5691700.js";import{c as r,h as i,o as a,i as h,l}from"./p-431bf43e.js";const s=class{constructor(t){c(this,t),this.change=o(this,"change",7),this.checked=!1,this.id=`checkbox-${r()}`,this.onInputClick=c=>{const o=this.disabled||this.readonly;if((o||!!this.hostElement.onchange)&&c.preventDefault(),o)return;if(!(c.target instanceof HTMLInputElement))return;const{value:t,checked:e}=c.target;this.change.emit({value:t,checked:e}),this.inputElement.focus()}}componentWillLoad(){i(this)}componentDidLoad(){a(this.hostElement),this.hostElement.click=()=>this.inputElement.click()}defaultChangeHandler(c){this.readonly||c.target!==this.hostElement||this.hostElement.onchange||!c.detail||(this.checked=c.detail.checked)}delegateFocus(c){h(c,this.hostElement)&&this.hostElement.shadowRoot.querySelector("input").focus()}ariaLabelObserver(){i(this)}render(){const c=["label-text"];return this.hideLabel&&c.push("sr"),t("div",{class:"container"},t("input",{ref:c=>this.inputElement=c,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-label":this.label?l(this.label):void 0,"aria-describedby":this.description?"description":void 0,"test-id":"q2CheckboxInnerCheckBox",onClick:this.onInputClick}),t("label",{htmlFor:this.id,class:"label-control","test-id":"checkboxButton"},this.generateCheckboxSVG()),t("div",{class:c.join(" ")},t("label",{"test-id":"checkboxLabel",htmlFor:this.id},l(this.label),t("slot",null))),this.description&&t("div",{class:"description-text","test-id":"checkboxDescription",id:"description"},l(this.description)))}generateCheckboxSVG(){return"favorite"===this.type?t("q2-icon",{type:"star",class:"checkbox-icon"}):"toggle"===this.type?this.generateToggleSVG():t("svg",{"aria-hidden":"true",width:"20",height:"20",viewBox:"0 0 20 20",class:"checkbox-icon",focusable:"false"},t("rect",{x:"1",y:"1",width:"18",height:"18",rx:"3"}),(this.checked||this.indeterminate)&&this.generateCheckBoxSVGFill())}generateCheckBoxSVGFill(){return this.indeterminate?t("line",{class:"checkbox-fill indeterminate-fill",x1:"4",y1:"10",x2:"16",y2:"10"}):t("polyline",{class:"checkbox-fill checked-fill",points:"5 11 8.5 14.5 15 6"})}generateToggleSVG(){return t("div",{class:"toggle-svg"},t("svg",{"aria-hidden":"true",focusable:"false",viewBox:"0 0 46 14",class:"toggle-track"},t("rect",{width:"36",height:"14",rx:"7",x:"5"})),t("svg",{"aria-hidden":"true",focusable:"false",viewBox:"0 0 30 30",class:"toggle-indicator"},t("circle",{class:"toggle-circle",width:"20",height:"20",cx:"15",cy:"15",r:"10"}),t("line",{class:"off checked-fill",x1:"12",y1:"18",x2:"18",y2:"12"}),t("line",{class:"off checked-fill",x1:"12",y1:"12",x2:"18",y2:"18"}),t("polyline",{class:"on checked-fill",points:"11,16 14,19 18,12 14,19"})))}get hostElement(){return e(this)}static get watchers(){return{ariaLabel:["ariaLabelObserver"]}}};s.style='*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-global-focus)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}:host{display:block;position:relative;padding:var(--tct-checkbox-vertical-padding, var(--t-checkbox-vertical-padding, var(--tct-scale-2, var(--app-scale-2, 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(--tct-gray-11, var(--t-gray-11, var(--tct-gray-l1, var(--app-gray-l1, #cccccc))))));--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(--tct-gray-5, var(--t-gray-5, var(--tct-gray-d2, var(--app-gray-d2, #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-textA, rgba(77, 77, 77, 0.77))));--comp-checkbox-favorite-fill-color:var(--tct-checkbox-favorite-fill-color, var(--t-checkbox-favorite-fill-color, var(--tct-stoplight-warning, var(--const-stoplight-warning, #f0b400))))}: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{cursor:pointer}:host([disabled]),:host([group-disabled]){opacity:var(--tct-checkbox-disabled-opacity, var(--t-checkbox-disabled-opacity, var(--tct-disabled-opacity, var(--app-disabled-opacity, 0.4))))}.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(--tct-global-focus, var(--const-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}.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(--tct-gray-9, var(--t-gray-9, var(--tct-gray, var(--app-gray, #999999))))))}: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(--tct-gray-9, var(--t-gray-9, var(--tct-gray, var(--app-gray, #999999))))))}:host([checked]) .off,:host(:not([checked])) .on{opacity:0}';export{s as q2_checkbox}
@@ -0,0 +1 @@
1
+ import{r as t,h as r,F as e,g as o}from"./p-c5691700.js";const a=class{constructor(r){t(this,r),this.value=0}get badgeText(){const t=Math.pow(10,this.maxLength||2)-1;let r=this.value||0;return r=isNaN(r)||r<=0?"":r<=t?Number(r).toLocaleString():Number(t).toLocaleString()+"+",r}generateMarkup(){const t=["badge"];return"large"===this.size&&t.push("size-large"),r("div",{class:"badge-wrapper"},r("slot",null),r("div",{class:t.join(" ")},r("span",{class:"badge-text"},this.badgeText)))}render(){return r(e,null,this.badgeText?this.generateMarkup():r("slot",null))}get hostElement(){return o(this)}};a.style="*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-global-focus)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}:host{display:inline-block}.badge-wrapper{--comp-badge-background:var(--t-gray8, #61c4ff);--comp-badge-color:var(--t-base, #ffffff)}:host([status=info]) .badge-wrapper{--comp-badge-background:var(--const-stoplight-info, #0079C1);--comp-badge-color:var(--const-stoplight-info-text, #ffffff)}:host([status=alert]) .badge-wrapper{--comp-badge-background:var(--const-stoplight-alert, #C30000);--comp-badge-color:var(--const-stoplight-alert-text, #ffffff)}:host([status=warning]) .badge-wrapper{--comp-badge-background:var(--const-stoplight-warning, #F0B400);--comp-badge-color:var(--const-stoplight-warning-text, #423535)}:host([status=success]) .badge-wrapper{--comp-badge-background:var(--const-stoplight-success, #0E8A00);--comp-badge-color:var(--const-stoplight-success-text, #ffffff)}:host([theme=primary]) .badge-wrapper{--comp-badge-background:var(--t-primary, #61c4ff);--comp-badge-color:var(--t-primary-text, #ffffff);--comp-badge-border-color:var(--t-primary-l1, #61c4ff)}:host([theme=secondary]) .badge-wrapper{--comp-badge-background:var(--t-secondary, #61c4ff);--comp-badge-color:var(--t-secondary-text, #ffffff);--comp-badge-border-color:var(--t-secondary-l1, #61c4ff)}:host([theme=tertiary]) .badge-wrapper{--comp-badge-background:var(--t-tertiary, #0079C1);--comp-badge-color:var(--t-tertiary-text, #000000);--comp-badge-border-color:var(--t-tertiary-l1, #61c4ff)}.badge{font-size:10px;line-height:16px;height:16px;min-width:16px;background-color:var(--comp-badge-background);text-align:center;padding:0 4px;color:var(--comp-badge-color);border-color:var(--comp-badge-border-color);border-width:thin;border-radius:8px}.badge.size-large{font-size:14px;height:22px;min-width:22px;border-radius:11px;line-height:22px;padding:0 6px}.badge-wrapper{display:flex;align-items:center;justify-content:center}";export{a as q2_badge}
@@ -0,0 +1 @@
1
+ import{r as t,c as e,h as i,g as n}from"./p-c5691700.js";const s=class{constructor(i){t(this,i),this.badge=e(this,"badge",7),this.onIFrameLoad=t=>{const e=t.target;e.contentWindow&&e.contentWindow.postMessage(`[iFrameSizer]${this.moduleId}:0:false:false:32:true:true:null:documentElementOffset`,"*")}}badgeObserver(){this.badge.emit()}get iframeTitle(){return this.moduleId.split(".").slice(-2).join("-")}componentWillRender(){const t=this.hostElement.shadowRoot.querySelector(".loading-wrapper");t&&(t.style.minHeight=this.minHeight,t.hidden=!this.selected)}componentWillLoad(){this._showForm=this.showForm}componentDidRender(){const t=this.hostElement.shadowRoot.querySelector("form");t&&t.parentElement&&(t.submit(),this._showForm=!1)}selectedObserver(){const t=this.hostElement.shadowRoot.querySelector('div[slot="loading-wrapper"]');this._showForm=this.showForm,t&&(t.hidden=!this.selected)}render(){return i("div",{id:`tab-pane-${this.guid}-${this.index}`,class:"tab-pane"+(this.selected?"":" hidden"),role:"tabpanel",tabindex:"-1","aria-hidden":`${!this.selected}`,"aria-labelledby":`tab-${this.guid}-${this.index}`},this.selected&&void 0!==this.provided&&!this.provided&&i("div",null,i("slot",{name:"loading-wrapper"}),i("iframe",{hidden:!0,name:this.moduleId,scrolling:"no",src:this.showForm&&this.authPayload.length?"":this.url||"","data-module-id":this.moduleId,style:this.minHeight?{minHeight:this.minHeight}:null,onLoad:this.onIFrameLoad,title:this.iframeTitle,allow:"geolocation; camera"}),this._showForm&&this.authPayload?i("form",{hidden:!0,method:"post",action:this.url,target:this.moduleId,encType:"multipart/form-data"},this.authPayload.map((t=>i("input",{type:"hidden",value:t.value,name:t.key})))):""),i("div",{class:"slot-wrapper",hidden:this.selected&&void 0!==this.provided&&!this.provided},i("slot",null)))}get hostElement(){return n(this)}static get watchers(){return{badgeCount:["badgeObserver"],selected:["selectedObserver"]}}};s.style="*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-global-focus)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}.tab-pane[aria-hidden=true]{display:none}.tab-pane:focus{outline:none;box-shadow:none}.loading-wrapper{height:44px;width:100%;align-items:center;justify-content:center}.loading-wrapper:not([hidden]){display:flex}iframe{width:100%;height:auto;overflow-y:hidden;border:none}iframe:not([hidden]){display:inline-block}.slot-wrapper:focus{outline:none;box-shadow:var(--const-global-focus)}";export{s as tecton_tab_pane}
@@ -0,0 +1 @@
1
+ import{r as t,c as o,h as r,F as i,g as a}from"./p-c5691700.js";import{o as e,l as n,i as c}from"./p-431bf43e.js";const l=class{constructor(r){t(this,r),this.change=o(this,"change",7),this.selectedOptions=[],this.scheduledAfterRender=[],this.determineHasOptions=()=>{const t=!!this.hostElement.querySelectorAll("q2-option").length;this.hasOptions=t},this.clearSelectedOptions=()=>{this.selectedOptions=[],this.active=!1,this.open=!1,this.primaryBtn.focus(),this.change.emit({value:null,values:[],active:!1})},this.handleClick=t=>{if(t.stopPropagation(),!this.disabled)if(this.hasOptions)this.optionList.toggle();else{const{value:t,label:o}=this,r=this.active=!this.active,i=r?[{value:t,display:o}]:[];this.selectedOptions=i,this.change.emit({value:t,values:i,active:r})}},this.handleKeydown=t=>{this.hasOptions&&!this.disabled&&this.optionList.handleExternalKeydown(t)},this.handleChange=t=>{if(!this.hasOptions)return;const{value:o,values:r}=t.detail,i=!!r.length;this.hostElement.onchange||(this.selectedOptions=r,this.active=i),this.change.emit({value:o,values:r,active:i})},this.handleFocusout=t=>{const o=t.relatedTarget;Array.from(this.hostElement.children).includes(o)||(!o||t.relatedTarget instanceof HTMLElement)&&(o&&o.closest(".btn-height-wrapper")||(this.optionList.open=!1))},this.handleWrapperClick=()=>{this.primaryBtn.focus(),this.primaryBtn.click()}}componentWillLoad(){const t=new MutationObserver(this.determineHasOptions);t.observe(this.hostElement,{childList:!0,attributes:!0}),this.mutationObserver=t}componentDidLoad(){e(this.hostElement)}componentDidRender(){this.scheduledAfterRender.forEach((t=>t())),this.scheduledAfterRender=[]}disconnectedCallback(){this.mutationObserver.disconnect(),this.mutationObserver=null}get buttonContent(){const{label:t,selectedOptions:o,hasOptions:r}=this;return r&&0!==o.length?1===o.length?o[0].display:n("tecton.element.pill.activeCount",{count:o.length}):t}get truncatedButtonContent(){const{maxLength:t,buttonContent:o}=this;return t&&o.length>t?`${o.substring(0,t)}…`:o}delegateFocus(t){c(t,this.hostElement)&&this.primaryBtn.focus()}optionListStateEvent({detail:{open:t}}){this.open=t,t||this.primaryBtn.focus()}generateIcon(){const{hasOptions:t,active:o}=this,i=t&&o,a=i||!t?"close":"chevron-down";return r(i?"button":"div",{class:"btn-close",onClick:i&&this.clearSelectedOptions,disabled:i&&this.disabled,"aria-label":i&&n("tecton.element.pill.clearSelection"),type:i&&"button"},r("q2-icon",{type:a}))}render(){const{hasOptions:t,active:o,open:a}=this,e=["btn-wrapper"];return(t||o)&&e.push("has-icon"),t&&e.push("has-options"),r(i,null,r("div",{class:e.join(" ")},r("div",{class:"btn-height-wrapper",onClick:this.handleWrapperClick,tabIndex:-1},r("button",{class:"btn-primary",type:"button","test-id":"btn-control",ref:t=>this.primaryBtn=t,onClick:this.handleClick,onKeyDown:this.handleKeydown,disabled:this.disabled,onFocusout:this.handleFocusout,"aria-selected":!t&&o?"true":"false","aria-roledescription":!t&&"filter","aria-controls":t&&"option-list","aria-haspopup":t&&"true","aria-expanded":t&&`${!!a}`||void 0,"aria-label":this.maxLength&&this.buttonContent},this.truncatedButtonContent,!t&&o&&r("span",{class:"sr"},"(",n("tecton.element.pill.active"),")"))),this.generateIcon()),this.hasOptions&&r("q2-option-list",{id:"option-list",ref:t=>this.optionList=t,open:this.open,onChange:this.handleChange,multiple:this.multiple,onFocusout:this.handleFocusout,selectedOptions:this.selectedOptions},r("slot",null)))}get hostElement(){return a(this)}};l.style="*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-global-focus)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}:host{display:inline-block;position:relative}:host(:not(:last-child)){margin-inline-end:var(--tct-pill-margin, var(--t-pill-margin, var(--app-scale-2x, 10px)))}.btn-wrapper{--comp-pill-min-height:var(--tct-pill-min-height, var(--t-pill-min-height, 44px));--comp-pill-btn-border-width:var(--tct-pill-btn-border-width, var(--t-pill-btn-border-width, 2px));--comp-pill-btn-height:var(--tct-pill-btn-height, var(--t-pill-btn-height, 30px));--comp-close-size:0px;--comp-btn-background:var(--tct-pill-btn-background, var(--t-pill-btn-background, var(--t-base, #ffffff)));--compt-hover-btn-background:var(--tct-pill-hover-btn-background, var(--t-pill-hover-btn-background, var(--t-gray-13, #e6e6e6)));--comp-btn-padding:var(--tct-pill-btn-padding-inline, var(--t-pill-btn-padding-inline, var(--app-scale-3x, 15px)));--comp-btn-color:var(--tct-pill-btn-color, var(--t-pill-btn-color, var(--t-gray-3, #262626)));--comp-active-btn-background:var(--tct-pill-active-btn-background, var(--t-pill-active-btn-background, var(--t-gray-7, #666666)));--comp-active-btn-border-color:var(--tct-pill-active-btn-border-color, var(--t-pill-active-btn-border-color, var(--t-gray-7, #666666)));--comp-hover-active-btn-background:var(--tct-pill-active-btn-background, var(--t-pill-active-btn-background, var(--t-gray-6, #4d4d4d)));--comp-hover-active-btn-border-color:var(--tct-pill-active-btn-background, var(--t-pill-active-btn-background, var(--t-gray-6, #4d4d4d)));position:relative}:host(:not(:empty)) .btn-wrapper,.btn-wrapper.has-icon{--comp-close-size:var(--comp-pill-btn-height)}:host([active]) .btn-wrapper{--comp-btn-color:var(--tct-pill-active-btn-color, var(--t-pill-active-btn-color, var(--t-base, #ffffff)))}:host([theme=primary]) .btn-wrapper{--comp-active-btn-background:var(--t-primary-l5, #61c4ff);--comp-btn-color:var(--t-primary-text, #ffffff);--comp-active-btn-border-color:var(--t-primary-l5, #61c4ff);--comp-hover-active-btn-background:var(--t-primary-l3, #21acff);--comp-hover-active-btn-border-color:var(--t-primary-l3, #21acff)}:host([theme=secondary]) .btn-wrapper{--comp-active-btn-background:var(--t-secondary-l5, #61c4ff);--comp-btn-color:var(--t-secondary-text, #000000);--comp-active-btn-border-color:var(--t-secondary-l5, #61c4ff);--comp-hover-active-btn-background:var(--t-secondary-l3, #21acff);--comp-hover-active-btn-border-color:var(--t-secondary-l3, #21acff)}:host([theme=tertiary]) .btn-wrapper{--comp-active-btn-background:var(--t-tertiary-l5, #61c4ff);--comp-btn-color:var(--t-tertiary-text, #000000);--comp-active-btn-border-color:var(--t-tertiary-l5, #61c4ff);--comp-hover-active-btn-background:var(--t-tertiary-l3, #21acff);--comp-hover-active-btn-border-color:var(--t-tertiary-l3, #21acff)}q2-option-list{position:absolute;left:0}.btn-height-wrapper{height:var(--comp-pill-min-height);display:flex;align-items:center;cursor:pointer}.btn-height-wrapper:focus{box-shadow:none}:host([disabled]) .btn-height-wrapper{cursor:not-allowed}.btn-close,.btn-primary{cursor:pointer;height:var(--comp-pill-btn-height);border-style:solid;border-radius:var(--tct-pill-btn-border-radius, var(--t-pill-btn-border-radius, 30px));transition-property:background, color, padding, width, opacity;transition:var(--tct-pill-btn-tween, var(--t-pill-btn-tween, var(--app-tween-1, 0.2s ease)))}:host([disabled]) .btn-close,:host([disabled]) .btn-primary,:host([disabled]) q2-icon{opacity:var(--tct-pill-disabled-opacity, var(--t-pill-disabled-opacity, var(--tct-disabled-opacity, var(--app-disabled-opacity, 0.4))));cursor:not-allowed}.btn-primary{background:var(--comp-btn-background);border-width:var(--comp-pill-btn-border-width);border-color:var(--tct-pill-btn-border-color, var(--t-pill-btn-border-color, var(--t-gray-9, #999999)));padding-inline:var(--comp-btn-padding);padding-right:calc(var(--comp-btn-padding) + var(--comp-close-size));font-size:var(--tct-pill-btn-font-size, var(--t-pill-btn-font-size, var(--app-font-size, 14px)));color:var(--comp-btn-color);display:block;width:100%;text-align:start}.btn-primary:focus,.btn-primary:hover{background:var(--comp-hover-btn-background)}:host(:not(:empty)) .btn-primary,.has-icon .btn-primary{padding-right:calc(\n var(--tct-pill-icon-gap, var(--t-pill-icon-gap, var(--app-size-1x, 5px))) + var(--comp-close-size)\n )}.has-options .btn-primary{text-overflow:ellipsis;overflow:hidden;white-space:nowrap;max-width:var(--tct-pill-max-width, var(--t-pill-max-width, 200px))}:host([active]) .btn-primary{background:var(--comp-active-btn-background);border-color:var(--comp-active-btn-border-color)}:host([active]) .btn-primary:focus,:host([active]) .btn-primary:hover{background:var(--comp-hover-active-btn-background);border-color:var(--comp-hover-active-btn-border-color)}.btn-close{background:transparent;border-color:transparent;border-width:var(--comp-pill-btn-border-width);width:var(--comp-close-size);height:var(--comp-close-size);padding:0;border:0;display:inline-flex;justify-content:center;align-items:center;position:absolute;right:0;top:50%;transform:translateY(-50%);opacity:0;stroke:var(--comp-btn-color);--tct-icon-stroke-primary:var(--comp-btn-color)}:host(:not(:empty)) .btn-close,.has-icon .btn-close{opacity:1}q2-icon{width:var(--tct-pill-icon-size, var(--t-pill-icon-size, 14px));height:var(--tct-pill-icon-size, var(--t-pill-icon-size, 14px));transition-property:transform;transition:var(--tct-pill-btn-tween, var(--t-pill-btn-tween, var(--app-tween-1, 0.2s ease)))}div.btn-close{pointer-events:none}:host([open]) div.btn-close q2-icon{transform:rotate(180deg)}:host([active]) button.btn-close:focus,:host([active]) button.btn-close:hover{background:var(--tct-pill-hover-close-btn-background, var(--t-pill-hover-close-btn-background, var(--t-top-a1, rgba(13, 13, 13, 0.35))));border-color:var(--tct-pill-hover-close-btn-border-color, var(--t-pill-hover-close-btn-border-color, var(--t-top-a1, rgba(13, 13, 13, 0.35))))}";export{l as q2_pill}
@@ -0,0 +1 @@
1
+ import{r as t,c as e,h as r,F as o,g as i}from"./p-c5691700.js";import{b as s,o as a,i as l,l as p}from"./p-431bf43e.js";s();const n=class{constructor(r){t(this,r),this.change=e(this,"change",7),this.currentStep=1,this.scrollEnabled=!1,this.showScrollLeft=!1,this.showScrollRight=!1,this.scheduledAfterRender=[],this.onSlotChange=()=>{this.checkForPanes(),this.checkScrollState()},this.onScrollBtnClick=t=>{const e=Math.floor(this.listElement.clientWidth/2);this.listElement.scrollBy({left:"left"===t?-e:e,behavior:"smooth"})},this.onStepClick=(t,e)=>{t.stopPropagation();const{currentStep:r,stepCount:o,lastEnabledStep:i}=this;e>i||e===r||this.change.emit({selectedStep:e,lastEnabledStep:i,currentStep:r,stepCount:o})},this.onStepKeyDown=(t,e)=>{const{lastEnabledStep:r,stepCount:o}=this,{key:i}=t;let s;switch(i){case"ArrowLeft":t.preventDefault(),s=Math.max(e-1,0);break;case"ArrowRight":t.preventDefault(),s=Math.min(e+1,o);break;case"Home":t.preventDefault(),s=1;break;case"End":t.preventDefault(),s=r}s&&this.focusStep(s,!0)},this.checkForPanes=()=>{const{allPanes:t}=this;t.length&&(this.stepCount=t.length)},this.checkScrollState=()=>{if(!this.listElement)return;const{scrollLeft:t,scrollWidth:e,clientWidth:r}=this.listElement;this.scrollEnabled=e>r,this.showScrollLeft=!!t,this.showScrollRight=e!==t+r}}componentWillLoad(){this.lastEnabledStep||(this.lastEnabledStep=this.currentStep||1),this.resizeObserver=new ResizeObserver((()=>this.checkScrollState())),this.checkForPanes()}componentDidLoad(){this.resizeObserver.observe(this.listElement),this.checkScrollState(),a(this.hostElement),setTimeout((()=>this.showStep(this.currentStep||1)),0)}componentDidRender(){this.scheduledAfterRender.forEach((t=>t())),this.scheduledAfterRender=[]}disconnectedCallback(){this.resizeObserver.disconnect()}currentStepChanged(t){this.showStep(t)}defaultChangeHandler(t){const{hostElement:e}=this;t.target===e&&!e.getAttribute("onchange")&&t.detail&&(this.currentStep=t.detail.selectedStep)}delegateFocus(t){l(t,this.hostElement)&&this.focusStep(this.currentStep,!0,!0)}statusChangeHandler(t){const e=Array.from(this.allPanes).findIndex((e=>t.detail.id===e.id));e>-1&&(this.allPanes[e].status=t.detail.status,this.renderStepBtn(e))}get allPanes(){return this.hostElement.querySelectorAll("q2-stepper-pane")}showStep(t){if(t>this.lastEnabledStep){const{currentStep:e,stepCount:r}=this;this.lastEnabledStep=t,this.change.emit({selectedStep:null,lastEnabledStep:t,currentStep:e,stepCount:r})}this.scheduledAfterRender.push(this.resizeIframe),this.showStepPane(t),this.focusStep(t,this.scrollEnabled)}resizeIframe(){var t,e;return null===(e=null===(t=null===window||void 0===window?void 0:window.TectonElements)||void 0===t?void 0:t.resizeIframe)||void 0===e?void 0:e.call(t)}showStepPane(t){this.allPanes.forEach(((e,r)=>{e.isActive=t===r+1}))}focusStep(t,e,r){var o;const i=this.listElement.children[t-1],s=document.activeElement===this.hostElement;i&&((s||r)&&(null===(o=i.firstElementChild)||void 0===o||o.focus()),e)&&this.listElement.scrollTo({left:i.offsetLeft-this.listElement.clientWidth/2,behavior:"smooth"})}renderStepBtn(t){var e;const{allPanes:i,stepCount:s,currentStep:a,lastEnabledStep:l}=this,{id:n,label:c,description:b,status:d}=null!==(e=null==i?void 0:i[t])&&void 0!==e?e:{},h=t+1,v=h===a,u=c&&`label-${n}`,m=c&&b&&`description-${n}`,g=!c&&p("tecton.element.stepper.number",[`${h}`,`${s}`]);let f;"complete"===d?f="success":"error"===d&&(f="warning");const w=["step-btn"];d&&w.push(`status-${d}`);const x="locked"===d,z=x||h>l;return r("li",{role:"presentation"},r("button",{class:w.join(" "),type:"button","aria-labelledby":u,"aria-describedBy":m,"aria-label":g,"aria-selected":v,"aria-controls":n,"aria-disabled":z?"true":null,role:"tab",tabIndex:v?0:-1,onKeyDown:t=>this.onStepKeyDown(t,h),onClick:t=>!x&&this.onStepClick(t,h)},r(o,null,f?r("div",{class:"step-icon"},r("q2-icon",{type:f})):r("div",{class:"step-bubble"},h),c&&r("div",{class:"step-label",id:u},p(c)),c&&b&&r("div",{class:"step-description",id:m},p(b)))),t?r("hr",null):"")}render(){const{stepCount:t,scrollEnabled:e,showScrollLeft:i,showScrollRight:s}=this,a=["step-container"];return e&&a.push("has-scroll"),r(o,null,r("div",{class:a.join(" ")},e&&r(o,null,r("div",{class:"gradient-left",hidden:!i}),r("div",{class:"gradient-right",hidden:!s}),r("q2-btn",{class:"btn-left",hidden:!this.showScrollLeft,onClick:()=>this.onScrollBtnClick("left")},r("q2-icon",{type:"chevron-left"})),r("q2-btn",{class:"btn-right",hidden:!this.showScrollRight,onClick:()=>this.onScrollBtnClick("right")},r("q2-icon",{type:"chevron-right"}))),r("ul",{onScroll:this.checkScrollState,ref:t=>this.listElement=t,role:"tablist"},[...Array(t).keys()].map((t=>this.renderStepBtn(t))))),r("div",null,r("slot",{onSlotchange:()=>this.onSlotChange()})))}get hostElement(){return i(this)}static get watchers(){return{currentStep:["currentStepChanged"]}}};n.style='*{box-sizing:border-box}*:active{outline:none}*:focus{outline:none;box-shadow:var(--const-global-focus)}:host{box-shadow:none !important}::-moz-focus-inner{border:none}input,textarea,button{font-family:inherit;font-size:inherit}:host(.sr),:host(.sr) button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.sr,.sr button{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;white-space:nowrap}.hidden{display:none}:host([hidden]){display:none}.invisible{visibility:hidden}:host{display:block;position:relative}ul{--comp-bullet-bg:var(--tct-stepper-bullet-active-bg, var(--t-stepper-bullet-active-bg, var(--t-primary, #0079c1)));--comp-bullet-font-color:var(--tct-stepper-bullet-active-font-color, var(--t-stepper-bullet-active-font-color, var(--t-primary-font-color, #ffffff)));--comp-bullet-size:var(--tct-stepper-btn-icon-size, var(--t-stepper-btn-icon-size, 24px));--comp-bullet-gap:var(--tct-stepper-btn-gap, var(--t-stepper-btn-gap, var(--app-scale-3x, 15px)));--comp-bullet-border-offset:var(--tct-stepper-bullet-border-offset, var(--t-stepper-bullet-border-offset, 4px));--comp-bullet-border:var(--tct-stepper-bullet-border, var(--t-stepper-bullet-border, 2px solid var(--t-primary-l3)));--comp-bullet-font-size:var-list(var-prefixer(stepper-btn-label-font-size), 16px);--comp-step-width:var(--tct-stepper-step-width, var(--t-stepper-step-width, var(--t-stepper-step-width, 80px)));--comp-step-gap:var(--tct-stepper-step-gap, var(--t-stepper-step-gap, 5px));--comp-top-btn-icon-size:var(--tct-stepper-btn-icon-size, var(--t-stepper-btn-icon-size, 24px));--comp-btn-icon-size:var(--comp-top-btn-icon-size);--comp-btn-content-gap:var(--tct-stepper-btn-gap, var(--t-stepper-btn-gap, var(--app-scale-3x, 15px)));--comp-btn-label-font-size:var-list(var-prefixer(stepper-btn-label-font-size), 16px);--comp-btn-label-color:var(--tct-stepper-label-color, var(--t-stepper-label-color, var(--t-text, #4d4d4d)));--comp-tween:var(--tct-stepper-tween, var(--t-stepper-tween, var(--app-tween-1, 0.2s ease)));overflow-x:auto;display:flex;justify-content:center;list-style:none;padding:0;padding:var(--tct-stepper-list-padding, var(--t-stepper-list-padding, 2px));margin:0;gap:var(--comp-step-gap);--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}ul::-webkit-scrollbar{width:var(--comp-scrollbar-size);height:var(--comp-scrollbar-size);margin:5px}ul::-webkit-scrollbar-thumb{background:var(--comp-scrollbar-color);border-radius:var(--comp-scrollbar-border-radius)}ul::-webkit-scrollbar-track{background:transparent;border-radius:var(--comp-scrollbar-border-radius)}.has-scroll ul{justify-content:unset}li{min-height:var(--tct-stepper-min-height, var(--t-stepper-min-height, 50px));flex:0 0 auto;position:relative;width:var(--comp-step-width);text-align:center;max-width:150px;min-width:80px}.step-btn{position:relative;background:transparent;border:0;cursor:pointer;display:flex;flex-direction:column;align-items:center;height:calc(100% - 4px);width:100%;transition:var(--comp-tween);padding:0;transition-property:box-shadow;outline:none;--comp-active-color:var(--t-primary)}.step-btn.status-complete{--comp-active-color:var(--const-stoplight-success)}.step-btn.status-error{--comp-active-color:var(--const-stoplight-alert)}.step-btn[aria-disabled]{cursor:not-allowed}.step-btn[aria-disabled],.step-btn[aria-disabled]+hr{--comp-bullet-font-color:var(--tct-stepper-bullet-inactive-font-color, var(--t-stepper-bullet-inactive-font-color, var(--t-text, #4d4d4d)));--comp-bullet-bg:var(--tct-stepper-bullet-inactive-bg, var(--t-stepper-bullet-inactive-bg, var(--t-gray-12, #d9d9d9)))}.step-icon,.step-bubble{display:flex;justify-content:center;align-items:center;line-height:0;margin:var(--comp-bullet-gap) auto;color:var(--comp-bullet-font-color);width:var(--comp-btn-icon-size);height:var(--comp-btn-icon-size);min-height:var(--comp-btn-icon-size);font-size:var(--comp-bullet-font-size);transition:var(--comp-tween);transition-property:background, color;border-radius:50%;position:relative}.step-icon q2-icon,.step-bubble q2-icon{fill:var(--comp-active-color);--tct-icon-stroke-primary:var(--comp-active-color);--tct-icon-stroke-secondary:var(--t-base)}.status-complete .step-icon,.status-error .step-icon,.status-complete .step-bubble,.status-error .step-bubble{background:var(--comp-active-color)}[aria-selected] .step-icon,[aria-selected] .step-bubble{font-weight:var(--tct-stepper-bullet-active-font-weight, var(--t-stepper-bullet-active-font-weight, 600))}[aria-selected] .step-icon:before,[aria-selected] .step-bubble:before{content:"";position:absolute;inset:calc(var(--comp-bullet-border-offset) * -1);width:calc(var(--comp-bullet-size) + var(--comp-bullet-border-offset));height:calc(var(--comp-bullet-size) + var(--comp-bullet-border-offset));border-radius:50%;border:var(--comp-bullet-border);border-color:var(--comp-active-color)}.step-bubble{background:var(--comp-bullet-bg)}hr{width:calc(var(--comp-step-width) - var(--comp-step-gap) - var(--comp-bullet-gap) - var(--comp-bullet-size));top:calc(var(--comp-bullet-size) / 2 + var(--comp-bullet-gap));left:calc(var(--comp-step-width) * -0.5 + var(--comp-step-gap) + var(--comp-bullet-gap));border:0;border-top:1px solid var(--comp-bullet-bg);height:0;position:absolute;margin:0;transition:border var(--comp-tween)}.step-container{position:relative}.step-label{color:var(--tct-stepper-title-color, var(--t-stepper-title-color, var(--t-text, #4d4d4d)));font-size:var(--tct-stepper-title-font-size, var(--t-stepper-title-font-size, var(--app-font-size-small, 12px)));height:1.5em;text-overflow:ellipsis;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}[aria-selected] .step-label{font-weight:var(--tct-stepper-active-font-weight, var(--t-stepper-active-font-weight, 600))}[aria-describedby] .step-label{-webkit-line-clamp:1}.step-description{color:var(--tct-stepper-description-color, var(--t-stepper-description-color, var(--t-textA, rgba(77, 77, 77, 0.77))));font-size:var(--tct-stepper-description-font-size, var(--t-stepper-description-font-size, var(--app-font-size-small, 12px)));text-overflow:ellipsis;overflow:hidden;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;padding-bottom:0.2em}.gradient-left,.gradient-right{z-index:1;position:absolute;top:0;height:100%;width:18px}.gradient-left{background-image:linear-gradient(to left, var(--t-base-a0), var(--t-base-a2) 10%, var(--t-base) 100%);left:0}.gradient-right{background-image:linear-gradient(to right, var(--t-base-a0), var(--t-base-a2) 10%, var(--t-base) 100%);right:0}.btn-left,.btn-right{--tct-icon-size:18px;--tct-btn-icon-hover-bg:transparent;--tct-btn-icon-width:22px;--tct-icon-stroke-primary:var(--tct-stepper-scroll-arrow-color, var(--t-stepper-scroll-arrow-color, var(--t-text, #4d4d4d)));position:absolute;top:calc(50% - 22px);z-index:2}.btn-left q2-icon,.btn-right q2-icon{--tct-icon-stroke-width:3}.btn-left{left:0}.btn-right{right:0}';export{n as q2_stepper}