q2-tecton-elements 1.71.3 → 1.71.4

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.
@@ -1,5 +1,5 @@
1
1
  {
2
- "timestamp": "2026-09-23T17:45:32",
2
+ "timestamp": "2026-09-30T16:57:23",
3
3
  "compiler": {
4
4
  "name": "node",
5
5
  "version": "24.10.0"
@@ -1405,7 +1405,7 @@
1405
1405
  "component-DaQM9u3s.js",
1406
1406
  "index-Cps4jSQM.js"
1407
1407
  ],
1408
- "originalByteSize": 53600
1408
+ "originalByteSize": 53844
1409
1409
  },
1410
1410
  {
1411
1411
  "key": "q2-chart-bar.entry",
@@ -2266,7 +2266,7 @@
2266
2266
  "component-DaQM9u3s.js",
2267
2267
  "index-Cps4jSQM.js"
2268
2268
  ],
2269
- "originalByteSize": 53600
2269
+ "originalByteSize": 53844
2270
2270
  },
2271
2271
  {
2272
2272
  "key": "q2-chart-bar.entry",
@@ -3129,7 +3129,7 @@
3129
3129
  "component-iASoq6gx.js",
3130
3130
  "index-SpDCZABA.js"
3131
3131
  ],
3132
- "originalByteSize": 53688
3132
+ "originalByteSize": 53932
3133
3133
  },
3134
3134
  {
3135
3135
  "key": "q2-chart-bar.entry",
@@ -511,6 +511,9 @@ const Q2OptionList = class {
511
511
  return;
512
512
  const optionRole = type === 'menu' ? 'menuitem' : 'option';
513
513
  this.allOptions.forEach(option => {
514
+ // iOS 26 bug: setting role="menuitem" on the q2-dropdown-item host prevents VoiceOver from announcing the option name.
515
+ if (type === 'menu' && option.tagName.toLowerCase() === 'q2-dropdown-item')
516
+ return;
514
517
  option.role = optionRole;
515
518
  });
516
519
  }
@@ -681,7 +684,7 @@ const Q2OptionList = class {
681
684
  // #endregion
682
685
  // #region Render Methods
683
686
  render() {
684
- return (index.h(index.Host, { key: 'ea6ef8ea9e667c6d1485212ea636b23725ce9043' }, index.h("div", { key: '6bc6ffec50a40b8b8ee4cf2b66388200eb3f0d32', class: "content", ref: el => (this.contentElement = el), onFocusout: this.focusoutHandler }, index.h("div", { key: '28b5d0460ceca2f0b9a8fd4fa018f949d04154df', class: "options", "aria-label": index$1.loc('tecton.element.optionList.label', [this.label]), "aria-multiselectable": this.type === 'menu' ? undefined : this.multiple ? 'true' : undefined, role: this.type || 'listbox', onKeyDown: this.internalKeydownHandler, onClick: this.clickHandler }, index.h("slot", { key: '666147b2cd06490c883c8a01b11e9cfa209a19dd' })))));
687
+ return (index.h(index.Host, { key: '14f2a8ab97077ed7b93d746b75f89b98f416a55d' }, index.h("div", { key: '1184c5d8d4cf8af63a60bef1282d6442b8539cf6', class: "content", ref: el => (this.contentElement = el), onFocusout: this.focusoutHandler }, index.h("div", { key: '5dcb6a82f1759e46d5e742e72075bf3dfa3c6d70', class: "options", "aria-label": index$1.loc('tecton.element.optionList.label', [this.label]), "aria-multiselectable": this.type === 'menu' ? undefined : this.multiple ? 'true' : undefined, role: this.type || 'listbox', onKeyDown: this.internalKeydownHandler, onClick: this.clickHandler }, index.h("slot", { key: '39372ab91b081ba124ff4c4dc04fc0c84be7a4ad' })))));
685
688
  }
686
689
  get hostElement() { return index.getElement(this); }
687
690
  static get watchers() { return {
@@ -413,6 +413,9 @@ export class Q2OptionList {
413
413
  return;
414
414
  const optionRole = type === 'menu' ? 'menuitem' : 'option';
415
415
  this.allOptions.forEach(option => {
416
+ // iOS 26 bug: setting role="menuitem" on the q2-dropdown-item host prevents VoiceOver from announcing the option name.
417
+ if (type === 'menu' && option.tagName.toLowerCase() === 'q2-dropdown-item')
418
+ return;
416
419
  option.role = optionRole;
417
420
  });
418
421
  }
@@ -583,7 +586,7 @@ export class Q2OptionList {
583
586
  // #endregion
584
587
  // #region Render Methods
585
588
  render() {
586
- return (h(Host, { key: 'ea6ef8ea9e667c6d1485212ea636b23725ce9043' }, h("div", { key: '6bc6ffec50a40b8b8ee4cf2b66388200eb3f0d32', class: "content", ref: el => (this.contentElement = el), onFocusout: this.focusoutHandler }, h("div", { key: '28b5d0460ceca2f0b9a8fd4fa018f949d04154df', class: "options", "aria-label": loc('tecton.element.optionList.label', [this.label]), "aria-multiselectable": this.type === 'menu' ? undefined : this.multiple ? 'true' : undefined, role: this.type || 'listbox', onKeyDown: this.internalKeydownHandler, onClick: this.clickHandler }, h("slot", { key: '666147b2cd06490c883c8a01b11e9cfa209a19dd' })))));
589
+ return (h(Host, { key: '14f2a8ab97077ed7b93d746b75f89b98f416a55d' }, h("div", { key: '1184c5d8d4cf8af63a60bef1282d6442b8539cf6', class: "content", ref: el => (this.contentElement = el), onFocusout: this.focusoutHandler }, h("div", { key: '5dcb6a82f1759e46d5e742e72075bf3dfa3c6d70', class: "options", "aria-label": loc('tecton.element.optionList.label', [this.label]), "aria-multiselectable": this.type === 'menu' ? undefined : this.multiple ? 'true' : undefined, role: this.type || 'listbox', onKeyDown: this.internalKeydownHandler, onClick: this.clickHandler }, h("slot", { key: '39372ab91b081ba124ff4c4dc04fc0c84be7a4ad' })))));
587
590
  }
588
591
  static get is() { return "q2-option-list"; }
589
592
  static get encapsulation() { return "shadow"; }
@@ -323,8 +323,9 @@ const b = t(class extends e {
323
323
  const {type: t} = this;
324
324
  if (!t) return;
325
325
  const e = "menu" === t ? "menuitem" : "option";
326
- this.allOptions.forEach((t => {
327
- t.role = e;
326
+ this.allOptions.forEach((i => {
327
+ // iOS 26 bug: setting role="menuitem" on the q2-dropdown-item host prevents VoiceOver from announcing the option name.
328
+ "menu" === t && "q2-dropdown-item" === i.tagName.toLowerCase() || (i.role = e);
328
329
  }));
329
330
  }
330
331
  focusSelectedSibling(t) {
@@ -426,14 +427,14 @@ const b = t(class extends e {
426
427
  // #region Render Methods
427
428
  render() {
428
429
  return s(n, {
429
- key: "ea6ef8ea9e667c6d1485212ea636b23725ce9043"
430
+ key: "14f2a8ab97077ed7b93d746b75f89b98f416a55d"
430
431
  }, s("div", {
431
- key: "6bc6ffec50a40b8b8ee4cf2b66388200eb3f0d32",
432
+ key: "1184c5d8d4cf8af63a60bef1282d6442b8539cf6",
432
433
  class: "content",
433
434
  ref: t => this.contentElement = t,
434
435
  onFocusout: this.focusoutHandler
435
436
  }, s("div", {
436
- key: "28b5d0460ceca2f0b9a8fd4fa018f949d04154df",
437
+ key: "5dcb6a82f1759e46d5e742e72075bf3dfa3c6d70",
437
438
  class: "options",
438
439
  "aria-label": h("tecton.element.optionList.label", [ this.label ]),
439
440
  "aria-multiselectable": "menu" === this.type ? void 0 : this.multiple ? "true" : void 0,
@@ -441,7 +442,7 @@ const b = t(class extends e {
441
442
  onKeyDown: this.internalKeydownHandler,
442
443
  onClick: this.clickHandler
443
444
  }, s("slot", {
444
- key: "666147b2cd06490c883c8a01b11e9cfa209a19dd"
445
+ key: "39372ab91b081ba124ff4c4dc04fc0c84be7a4ad"
445
446
  }))));
446
447
  }
447
448
  get hostElement() {
@@ -509,6 +509,9 @@ const Q2OptionList = class {
509
509
  return;
510
510
  const optionRole = type === 'menu' ? 'menuitem' : 'option';
511
511
  this.allOptions.forEach(option => {
512
+ // iOS 26 bug: setting role="menuitem" on the q2-dropdown-item host prevents VoiceOver from announcing the option name.
513
+ if (type === 'menu' && option.tagName.toLowerCase() === 'q2-dropdown-item')
514
+ return;
512
515
  option.role = optionRole;
513
516
  });
514
517
  }
@@ -679,7 +682,7 @@ const Q2OptionList = class {
679
682
  // #endregion
680
683
  // #region Render Methods
681
684
  render() {
682
- return (h(Host, { key: 'ea6ef8ea9e667c6d1485212ea636b23725ce9043' }, h("div", { key: '6bc6ffec50a40b8b8ee4cf2b66388200eb3f0d32', class: "content", ref: el => (this.contentElement = el), onFocusout: this.focusoutHandler }, h("div", { key: '28b5d0460ceca2f0b9a8fd4fa018f949d04154df', class: "options", "aria-label": loc('tecton.element.optionList.label', [this.label]), "aria-multiselectable": this.type === 'menu' ? undefined : this.multiple ? 'true' : undefined, role: this.type || 'listbox', onKeyDown: this.internalKeydownHandler, onClick: this.clickHandler }, h("slot", { key: '666147b2cd06490c883c8a01b11e9cfa209a19dd' })))));
685
+ return (h(Host, { key: '14f2a8ab97077ed7b93d746b75f89b98f416a55d' }, h("div", { key: '1184c5d8d4cf8af63a60bef1282d6442b8539cf6', class: "content", ref: el => (this.contentElement = el), onFocusout: this.focusoutHandler }, h("div", { key: '5dcb6a82f1759e46d5e742e72075bf3dfa3c6d70', class: "options", "aria-label": loc('tecton.element.optionList.label', [this.label]), "aria-multiselectable": this.type === 'menu' ? undefined : this.multiple ? 'true' : undefined, role: this.type || 'listbox', onKeyDown: this.internalKeydownHandler, onClick: this.clickHandler }, h("slot", { key: '39372ab91b081ba124ff4c4dc04fc0c84be7a4ad' })))));
683
686
  }
684
687
  get hostElement() { return getElement(this); }
685
688
  static get watchers() { return {
@@ -388,8 +388,9 @@ const w = class {
388
388
  const {type: t} = this;
389
389
  if (!t) return;
390
390
  const i = "menu" === t ? "menuitem" : "option";
391
- this.allOptions.forEach((t => {
392
- t.role = i;
391
+ this.allOptions.forEach((o => {
392
+ // iOS 26 bug: setting role="menuitem" on the q2-dropdown-item host prevents VoiceOver from announcing the option name.
393
+ "menu" === t && "q2-dropdown-item" === o.tagName.toLowerCase() || (o.role = i);
393
394
  }));
394
395
  }
395
396
  focusSelectedSibling(t) {
@@ -491,14 +492,14 @@ const w = class {
491
492
  // #region Render Methods
492
493
  render() {
493
494
  return e(s, {
494
- key: "ea6ef8ea9e667c6d1485212ea636b23725ce9043"
495
+ key: "14f2a8ab97077ed7b93d746b75f89b98f416a55d"
495
496
  }, e("div", {
496
- key: "6bc6ffec50a40b8b8ee4cf2b66388200eb3f0d32",
497
+ key: "1184c5d8d4cf8af63a60bef1282d6442b8539cf6",
497
498
  class: "content",
498
499
  ref: t => this.contentElement = t,
499
500
  onFocusout: this.focusoutHandler
500
501
  }, e("div", {
501
- key: "28b5d0460ceca2f0b9a8fd4fa018f949d04154df",
502
+ key: "5dcb6a82f1759e46d5e742e72075bf3dfa3c6d70",
502
503
  class: "options",
503
504
  "aria-label": a("tecton.element.optionList.label", [ this.label ]),
504
505
  "aria-multiselectable": "menu" === this.type ? void 0 : this.multiple ? "true" : void 0,
@@ -506,7 +507,7 @@ const w = class {
506
507
  onKeyDown: this.internalKeydownHandler,
507
508
  onClick: this.clickHandler
508
509
  }, e("slot", {
509
- key: "666147b2cd06490c883c8a01b11e9cfa209a19dd"
510
+ key: "39372ab91b081ba124ff4c4dc04fc0c84be7a4ad"
510
511
  }))));
511
512
  }
512
513
  get hostElement() {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "q2-tecton-elements",
3
- "version": "1.71.3",
3
+ "version": "1.71.4",
4
4
  "description": "Q2 Tecton Custom Elements",
5
5
  "license": "MIT",
6
6
  "author": "Q2 Tecton Team",
@@ -63,7 +63,7 @@
63
63
  },
64
64
  "dependencies": {
65
65
  "@stencil/core": "~4.43.0",
66
- "q2-tecton-common": "1.71.3",
66
+ "q2-tecton-common": "1.71.4",
67
67
  "swiper": "^12.1.2"
68
68
  },
69
69
  "devDependencies": {
@@ -85,5 +85,5 @@
85
85
  "rollup-plugin-istanbul": "^5.0.0"
86
86
  },
87
87
  "packageManager": "pnpm@10.27.0",
88
- "gitHead": "95ba2af02915cbf9987a0d554efc7f8212ffe135"
88
+ "gitHead": "4fa4c7ad2ac445af639ed0a3728f33cd5c70a6b3"
89
89
  }