axe-core 4.6.2 → 4.6.3-canary.2ba2ae9

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.
package/axe.js CHANGED
@@ -1,4 +1,4 @@
1
- /*! axe v4.6.2
1
+ /*! axe v4.6.3-canary.2ba2ae9
2
2
  * Copyright (c) 2023 Deque Systems, Inc.
3
3
  *
4
4
  * Your use of this Source Code Form is subject to the terms of the Mozilla Public
@@ -22,7 +22,7 @@
22
22
  }, _typeof(obj);
23
23
  }
24
24
  var axe = axe || {};
25
- axe.version = '4.6.2';
25
+ axe.version = '4.6.3-canary.2ba2ae9';
26
26
  if (typeof define === 'function' && define.amd) {
27
27
  define('axe-core', [], function() {
28
28
  return axe;
@@ -54,6 +54,7 @@
54
54
  return _arrayWithHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableRest();
55
55
  }
56
56
  function _defineProperty(obj, key, value) {
57
+ key = _toPropertyKey(key);
57
58
  if (key in obj) {
58
59
  Object.defineProperty(obj, key, {
59
60
  value: value,
@@ -215,36 +216,34 @@
215
216
  throw new TypeError('Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.');
216
217
  }
217
218
  function _iterableToArrayLimit(arr, i) {
218
- var _i = arr == null ? null : typeof Symbol !== 'undefined' && arr[Symbol.iterator] || arr['@@iterator'];
219
- if (_i == null) {
220
- return;
221
- }
222
- var _arr = [];
223
- var _n = true;
224
- var _d = false;
225
- var _s, _e;
226
- try {
227
- for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
228
- _arr.push(_s.value);
229
- if (i && _arr.length === i) {
230
- break;
231
- }
232
- }
233
- } catch (err) {
234
- _d = true;
235
- _e = err;
236
- } finally {
219
+ var _i = null == arr ? null : 'undefined' != typeof Symbol && arr[Symbol.iterator] || arr['@@iterator'];
220
+ if (null != _i) {
221
+ var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1;
237
222
  try {
238
- if (!_n && _i['return'] != null) {
239
- _i['return']();
223
+ if (_x = (_i = _i.call(arr)).next, 0 === i) {
224
+ if (Object(_i) !== _i) {
225
+ return;
226
+ }
227
+ _n = !1;
228
+ } else {
229
+ for (;!(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0) {
230
+ }
240
231
  }
232
+ } catch (err) {
233
+ _d = !0, _e = err;
241
234
  } finally {
242
- if (_d) {
243
- throw _e;
235
+ try {
236
+ if (!_n && null != _i['return'] && (_r = _i['return'](), Object(_r) !== _r)) {
237
+ return;
238
+ }
239
+ } finally {
240
+ if (_d) {
241
+ throw _e;
242
+ }
244
243
  }
245
244
  }
245
+ return _arr;
246
246
  }
247
- return _arr;
248
247
  }
249
248
  function _arrayWithHoles(arr) {
250
249
  if (Array.isArray(arr)) {
@@ -264,7 +263,7 @@
264
263
  if ('value' in descriptor) {
265
264
  descriptor.writable = true;
266
265
  }
267
- Object.defineProperty(target, descriptor.key, descriptor);
266
+ Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor);
268
267
  }
269
268
  }
270
269
  function _createClass(Constructor, protoProps, staticProps) {
@@ -279,6 +278,24 @@
279
278
  });
280
279
  return Constructor;
281
280
  }
281
+ function _toPropertyKey(arg) {
282
+ var key = _toPrimitive(arg, 'string');
283
+ return _typeof(key) === 'symbol' ? key : String(key);
284
+ }
285
+ function _toPrimitive(input, hint) {
286
+ if (_typeof(input) !== 'object' || input === null) {
287
+ return input;
288
+ }
289
+ var prim = input[Symbol.toPrimitive];
290
+ if (prim !== undefined) {
291
+ var res = prim.call(input, hint || 'default');
292
+ if (_typeof(res) !== 'object') {
293
+ return res;
294
+ }
295
+ throw new TypeError('@@toPrimitive must return a primitive value.');
296
+ }
297
+ return (hint === 'string' ? String : Number)(input);
298
+ }
282
299
  function _createForOfIteratorHelper(o, allowArrayLike) {
283
300
  var it = typeof Symbol !== 'undefined' && o[Symbol.iterator] || o['@@iterator'];
284
301
  if (!it) {
@@ -4218,10 +4235,10 @@
4218
4235
  });
4219
4236
  });
4220
4237
  var require_typedarray = __commonJS(function(exports) {
4221
- var undefined2 = void 0;
4222
4238
  var MAX_ARRAY_LENGTH = 1e5;
4223
4239
  var ECMAScript = function() {
4224
- var opts = Object.prototype.toString, ophop = Object.prototype.hasOwnProperty;
4240
+ var opts = Object.prototype.toString;
4241
+ var ophop = Object.prototype.hasOwnProperty;
4225
4242
  return {
4226
4243
  Class: function Class(v) {
4227
4244
  return opts.call(v).replace(/^\[object *|\]$/g, '');
@@ -4250,19 +4267,21 @@
4250
4267
  var min = Math.min;
4251
4268
  var pow = Math.pow;
4252
4269
  var round = Math.round;
4253
- function configureProperties(obj) {
4254
- if (getOwnPropNames && defineProp) {
4255
- var props = getOwnPropNames(obj), i;
4256
- for (i = 0; i < props.length; i += 1) {
4257
- defineProp(obj, props[i], {
4258
- value: obj[props[i]],
4259
- writable: false,
4260
- enumerable: false,
4261
- configurable: false
4262
- });
4270
+ function clamp2(v, minimum, max) {
4271
+ return v < minimum ? minimum : v > max ? max : v;
4272
+ }
4273
+ var getOwnPropNames = Object.getOwnPropertyNames || function(o) {
4274
+ if (o !== Object(o)) {
4275
+ throw new TypeError('Object.getOwnPropertyNames called on non-object');
4276
+ }
4277
+ var props = [], p;
4278
+ for (p in o) {
4279
+ if (ECMAScript.HasOwnProperty(o, p)) {
4280
+ props.push(p);
4263
4281
  }
4264
4282
  }
4265
- }
4283
+ return props;
4284
+ };
4266
4285
  var defineProp;
4267
4286
  if (Object.defineProperty && function() {
4268
4287
  try {
@@ -4290,18 +4309,19 @@
4290
4309
  return o;
4291
4310
  };
4292
4311
  }
4293
- var getOwnPropNames = Object.getOwnPropertyNames || function(o) {
4294
- if (o !== Object(o)) {
4295
- throw new TypeError('Object.getOwnPropertyNames called on non-object');
4296
- }
4297
- var props = [], p;
4298
- for (p in o) {
4299
- if (ECMAScript.HasOwnProperty(o, p)) {
4300
- props.push(p);
4312
+ function configureProperties(obj) {
4313
+ if (getOwnPropNames && defineProp) {
4314
+ var props = getOwnPropNames(obj), i;
4315
+ for (i = 0; i < props.length; i += 1) {
4316
+ defineProp(obj, props[i], {
4317
+ value: obj[props[i]],
4318
+ writable: false,
4319
+ enumerable: false,
4320
+ configurable: false
4321
+ });
4301
4322
  }
4302
4323
  }
4303
- return props;
4304
- };
4324
+ }
4305
4325
  function makeArrayAccessors(obj) {
4306
4326
  if (!defineProp) {
4307
4327
  return;
@@ -4375,13 +4395,15 @@
4375
4395
  return as_unsigned(bytes[0] << 24 | bytes[1] << 16 | bytes[2] << 8 | bytes[3], 32);
4376
4396
  }
4377
4397
  function packIEEE754(v, ebits, fbits) {
4378
- var bias = (1 << ebits - 1) - 1, s, e, f, ln, i, bits, str, bytes;
4398
+ var bias = (1 << ebits - 1) - 1;
4399
+ var s, e, f, i, bits, str, bytes;
4379
4400
  function roundToEven(n) {
4380
- var w = floor(n), f2 = n - w;
4381
- if (f2 < .5) {
4401
+ var w = floor(n);
4402
+ var fl = n - w;
4403
+ if (fl < .5) {
4382
4404
  return w;
4383
4405
  }
4384
- if (f2 > .5) {
4406
+ if (fl > .5) {
4385
4407
  return w + 1;
4386
4408
  }
4387
4409
  return w % 2 ? w + 1 : w;
@@ -4455,14 +4477,13 @@
4455
4477
  e = parseInt(str.substring(1, 1 + ebits), 2);
4456
4478
  f = parseInt(str.substring(1 + ebits), 2);
4457
4479
  if (e === (1 << ebits) - 1) {
4458
- return f !== 0 ? NaN : s * Infinity;
4480
+ return f === 0 ? s * Infinity : NaN;
4459
4481
  } else if (e > 0) {
4460
4482
  return s * pow(2, e - bias) * (1 + f / pow(2, fbits));
4461
4483
  } else if (f !== 0) {
4462
4484
  return s * pow(2, -(bias - 1)) * (f / pow(2, fbits));
4463
- } else {
4464
- return s < 0 ? -0 : 0;
4465
4485
  }
4486
+ return s < 0 ? -0 : 0;
4466
4487
  }
4467
4488
  function unpackF64(b) {
4468
4489
  return unpackIEEE754(b, 11, 52);
@@ -4477,7 +4498,7 @@
4477
4498
  return packIEEE754(v, 8, 23);
4478
4499
  }
4479
4500
  (function() {
4480
- var ArrayBuffer = function ArrayBuffer2(length) {
4501
+ function ArrayBuffer(length) {
4481
4502
  length = ECMAScript.ToInt32(length);
4482
4503
  if (length < 0) {
4483
4504
  throw new RangeError('ArrayBuffer size is not a small enough positive integer');
@@ -4490,9 +4511,9 @@
4490
4511
  this._bytes[i] = 0;
4491
4512
  }
4492
4513
  configureProperties(this);
4493
- };
4514
+ }
4494
4515
  exports.ArrayBuffer = exports.ArrayBuffer || ArrayBuffer;
4495
- var ArrayBufferView = function ArrayBufferView2() {};
4516
+ function ArrayBufferView() {}
4496
4517
  function makeConstructor(bytesPerElement, pack, unpack) {
4497
4518
  var _ctor;
4498
4519
  _ctor = function ctor(buffer, byteOffset, length) {
@@ -4564,10 +4585,10 @@
4564
4585
  }
4565
4586
  index = ECMAScript.ToUint32(index);
4566
4587
  if (index >= this.length) {
4567
- return undefined2;
4588
+ return void 0;
4568
4589
  }
4569
- var bytes = [], i, o;
4570
- for (i = 0, o = this.byteOffset + index * this.BYTES_PER_ELEMENT; i < this.BYTES_PER_ELEMENT; i += 1,
4590
+ var bytes = [];
4591
+ for (var i = 0, o = this.byteOffset + index * this.BYTES_PER_ELEMENT; i < this.BYTES_PER_ELEMENT; i += 1,
4571
4592
  o += 1) {
4572
4593
  bytes.push(this.buffer._bytes[o]);
4573
4594
  }
@@ -4579,13 +4600,14 @@
4579
4600
  throw new SyntaxError('Not enough arguments');
4580
4601
  }
4581
4602
  index = ECMAScript.ToUint32(index);
4582
- if (index >= this.length) {
4583
- return undefined2;
4584
- }
4585
- var bytes = this._pack(value), i, o;
4586
- for (i = 0, o = this.byteOffset + index * this.BYTES_PER_ELEMENT; i < this.BYTES_PER_ELEMENT; i += 1,
4587
- o += 1) {
4588
- this.buffer._bytes[o] = bytes[i];
4603
+ if (index < this.length) {
4604
+ var bytes = this._pack(value);
4605
+ var i;
4606
+ var o;
4607
+ for (i = 0, o = this.byteOffset + index * this.BYTES_PER_ELEMENT; i < this.BYTES_PER_ELEMENT; i += 1,
4608
+ o += 1) {
4609
+ this.buffer._bytes[o] = bytes[i];
4610
+ }
4589
4611
  }
4590
4612
  };
4591
4613
  _ctor.prototype.set = function(index, value) {
@@ -4631,9 +4653,6 @@
4631
4653
  }
4632
4654
  };
4633
4655
  _ctor.prototype.subarray = function(start, end) {
4634
- function clamp2(v, min2, max) {
4635
- return v < min2 ? min2 : v > max ? max : v;
4636
- }
4637
4656
  start = ECMAScript.ToInt32(start);
4638
4657
  end = ECMAScript.ToInt32(end);
4639
4658
  if (arguments.length < 1) {
@@ -4685,7 +4704,7 @@
4685
4704
  var u16array = new exports.Uint16Array([ 4660 ]), u8array = new exports.Uint8Array(u16array.buffer);
4686
4705
  return r(u8array, 0) === 18;
4687
4706
  }();
4688
- var DataView = function DataView2(buffer, byteOffset, byteLength) {
4707
+ function DataView(buffer, byteOffset, byteLength) {
4689
4708
  if (arguments.length === 0) {
4690
4709
  buffer = new exports.ArrayBuffer(0);
4691
4710
  } else if (!(buffer instanceof exports.ArrayBuffer || ECMAScript.Class(buffer) === 'ArrayBuffer')) {
@@ -4705,7 +4724,7 @@
4705
4724
  throw new RangeError('byteOffset and length reference an area beyond the end of the buffer');
4706
4725
  }
4707
4726
  configureProperties(this);
4708
- };
4727
+ }
4709
4728
  function makeGetter(arrayType) {
4710
4729
  return function(byteOffset, littleEndian) {
4711
4730
  byteOffset = ECMAScript.ToUint32(byteOffset);
@@ -7037,6 +7056,9 @@
7037
7056
  findUpVirtual: function findUpVirtual() {
7038
7057
  return find_up_virtual_default;
7039
7058
  },
7059
+ focusDisabled: function focusDisabled() {
7060
+ return focus_disabled_default;
7061
+ },
7040
7062
  getComposedParent: function getComposedParent() {
7041
7063
  return get_composed_parent_default;
7042
7064
  },
@@ -7049,6 +7071,9 @@
7049
7071
  getElementStack: function getElementStack() {
7050
7072
  return get_element_stack_default;
7051
7073
  },
7074
+ getModalDialog: function getModalDialog() {
7075
+ return get_modal_dialog_default;
7076
+ },
7052
7077
  getOverflowHiddenAncestors: function getOverflowHiddenAncestors() {
7053
7078
  return get_overflow_hidden_ancestors_default;
7054
7079
  },
@@ -7106,6 +7131,9 @@
7106
7131
  isInTextBlock: function isInTextBlock() {
7107
7132
  return is_in_text_block_default;
7108
7133
  },
7134
+ isInert: function isInert() {
7135
+ return _isInert;
7136
+ },
7109
7137
  isModalOpen: function isModalOpen() {
7110
7138
  return is_modal_open_default;
7111
7139
  },
@@ -7553,7 +7581,11 @@
7553
7581
  var node = parentVNode ? treeWalker.nextNode() : treeWalker.currentNode;
7554
7582
  while (node) {
7555
7583
  var _vNode = get_node_from_tree_default(node);
7556
- if (node.parentElement) {
7584
+ if (_vNode && _vNode.parent) {
7585
+ parentVNode = _vNode.parent;
7586
+ } else if (node.assignedSlot) {
7587
+ parentVNode = get_node_from_tree_default(node.assignedSlot);
7588
+ } else if (node.parentElement) {
7557
7589
  parentVNode = get_node_from_tree_default(node.parentElement);
7558
7590
  } else if (node.parentNode && get_node_from_tree_default(node.parentNode)) {
7559
7591
  parentVNode = get_node_from_tree_default(node.parentNode);
@@ -7637,20 +7669,24 @@
7637
7669
  if ([ 'layout', 'paint', 'strict', 'content' ].includes(contain)) {
7638
7670
  return true;
7639
7671
  }
7640
- if (zIndex !== 'auto' && parentVNode) {
7641
- var parentDsiplay = parentVNode.getComputedStylePropertyValue('display');
7642
- if ([ 'flex', 'inline-flex', 'inline flex', 'grid', 'inline-grid', 'inline grid' ].includes(parentDsiplay)) {
7643
- return true;
7644
- }
7672
+ if (zIndex !== 'auto' && isFlexOrGridContainer(parentVNode)) {
7673
+ return true;
7645
7674
  }
7646
7675
  return false;
7647
7676
  }
7677
+ function isFlexOrGridContainer(vNode) {
7678
+ if (!vNode) {
7679
+ return false;
7680
+ }
7681
+ var display = vNode.getComputedStylePropertyValue('display');
7682
+ return [ 'flex', 'inline-flex', 'grid', 'inline-grid' ].includes(display);
7683
+ }
7648
7684
  function getStackingOrder(vNode, parentVNode) {
7649
7685
  var stackingOrder = parentVNode._stackingOrder.slice();
7650
7686
  var zIndex = vNode.getComputedStylePropertyValue('z-index');
7651
7687
  var positioned = vNode.getComputedStylePropertyValue('position') !== 'static';
7652
7688
  var floated = vNode.getComputedStylePropertyValue('float') !== 'none';
7653
- if (positioned && ![ 'auto', '0' ].includes(zIndex)) {
7689
+ if (![ 'auto', '0' ].includes(zIndex) && (positioned || isFlexOrGridContainer(parentVNode))) {
7654
7690
  while (stackingOrder.find(function(value) {
7655
7691
  return value % 1 !== 0;
7656
7692
  })) {
@@ -7815,6 +7851,148 @@
7815
7851
  }
7816
7852
  return hasFixedPosition(vNode.parent);
7817
7853
  });
7854
+ function _getIntersectionRect(rect1, rect2) {
7855
+ var leftX = Math.max(rect1.left, rect2.left);
7856
+ var rightX = Math.min(rect1.right, rect2.right);
7857
+ var topY = Math.max(rect1.top, rect2.top);
7858
+ var bottomY = Math.min(rect1.bottom, rect2.bottom);
7859
+ if (leftX >= rightX || topY >= bottomY) {
7860
+ return null;
7861
+ }
7862
+ return new window.DOMRect(leftX, topY, rightX - leftX, bottomY - topY);
7863
+ }
7864
+ var getModalDialog = memoize_default(function getModalDialogMemoized() {
7865
+ var _dialogs$find;
7866
+ if (!axe._tree) {
7867
+ return null;
7868
+ }
7869
+ var dialogs = query_selector_all_filter_default(axe._tree[0], 'dialog[open]', function(vNode) {
7870
+ var rect = vNode.boundingClientRect;
7871
+ var stack = document.elementsFromPoint(rect.left + 1, rect.top + 1);
7872
+ return stack.includes(vNode.actualNode) && _isVisibleOnScreen(vNode);
7873
+ });
7874
+ if (!dialogs.length) {
7875
+ return null;
7876
+ }
7877
+ var modalDialog = dialogs.find(function(dialog) {
7878
+ var rect = dialog.boundingClientRect;
7879
+ var stack = document.elementsFromPoint(rect.left - 10, rect.top - 10);
7880
+ return stack.includes(dialog.actualNode);
7881
+ });
7882
+ if (modalDialog) {
7883
+ return modalDialog;
7884
+ }
7885
+ return (_dialogs$find = dialogs.find(function(dialog) {
7886
+ var _getNodeFromGrid;
7887
+ var _ref17 = (_getNodeFromGrid = getNodeFromGrid(dialog)) !== null && _getNodeFromGrid !== void 0 ? _getNodeFromGrid : {}, vNode = _ref17.vNode, rect = _ref17.rect;
7888
+ if (!vNode) {
7889
+ return false;
7890
+ }
7891
+ var stack = document.elementsFromPoint(rect.left + 1, rect.top + 1);
7892
+ return !stack.includes(vNode.actualNode);
7893
+ })) !== null && _dialogs$find !== void 0 ? _dialogs$find : null;
7894
+ });
7895
+ var get_modal_dialog_default = getModalDialog;
7896
+ function getNodeFromGrid(dialog) {
7897
+ _createGrid();
7898
+ var grid = axe._tree[0]._grid;
7899
+ var viewRect = new window.DOMRect(0, 0, window.innerWidth, window.innerHeight);
7900
+ if (!grid) {
7901
+ return;
7902
+ }
7903
+ for (var row = 0; row < grid.cells.length; row++) {
7904
+ var cols = grid.cells[row];
7905
+ if (!cols) {
7906
+ continue;
7907
+ }
7908
+ for (var col = 0; col < cols.length; col++) {
7909
+ var cells = cols[col];
7910
+ if (!cells) {
7911
+ continue;
7912
+ }
7913
+ for (var _i6 = 0; _i6 < cells.length; _i6++) {
7914
+ var vNode = cells[_i6];
7915
+ var rect = vNode.boundingClientRect;
7916
+ var intersection = _getIntersectionRect(rect, viewRect);
7917
+ if (vNode.props.nodeName !== 'html' && vNode !== dialog && vNode.getComputedStylePropertyValue('pointer-events') !== 'none' && intersection) {
7918
+ return {
7919
+ vNode: vNode,
7920
+ rect: intersection
7921
+ };
7922
+ }
7923
+ }
7924
+ }
7925
+ }
7926
+ }
7927
+ function _isInert(vNode) {
7928
+ var _ref18 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, skipAncestors = _ref18.skipAncestors, isAncestor = _ref18.isAncestor;
7929
+ if (skipAncestors) {
7930
+ return isInertSelf(vNode, isAncestor);
7931
+ }
7932
+ return isInertAncestors(vNode, isAncestor);
7933
+ }
7934
+ var isInertSelf = memoize_default(function isInertSelfMemoized(vNode, isAncestor) {
7935
+ if (vNode.hasAttr('inert')) {
7936
+ return true;
7937
+ }
7938
+ if (!isAncestor && vNode.actualNode) {
7939
+ var modalDialog = get_modal_dialog_default();
7940
+ if (modalDialog && !_contains(modalDialog, vNode)) {
7941
+ return true;
7942
+ }
7943
+ }
7944
+ return false;
7945
+ });
7946
+ var isInertAncestors = memoize_default(function isInertAncestorsMemoized(vNode, isAncestor) {
7947
+ if (isInertSelf(vNode, isAncestor)) {
7948
+ return true;
7949
+ }
7950
+ if (!vNode.parent) {
7951
+ return false;
7952
+ }
7953
+ return isInertAncestors(vNode.parent, true);
7954
+ });
7955
+ var allowedDisabledNodeNames = [ 'button', 'command', 'fieldset', 'keygen', 'optgroup', 'option', 'select', 'textarea', 'input' ];
7956
+ function isDisabledAttrAllowed(nodeName2) {
7957
+ return allowedDisabledNodeNames.includes(nodeName2);
7958
+ }
7959
+ function focusDisabled(el) {
7960
+ var vNode = el instanceof abstract_virtual_node_default ? el : get_node_from_tree_default(el);
7961
+ if (isDisabledAttrAllowed(vNode.props.nodeName) && vNode.hasAttr('disabled') || _isInert(vNode)) {
7962
+ return true;
7963
+ }
7964
+ var parentNode = vNode.parent;
7965
+ var ancestors = [];
7966
+ var fieldsetDisabled = false;
7967
+ while (parentNode && parentNode.shadowId === vNode.shadowId && !fieldsetDisabled) {
7968
+ ancestors.push(parentNode);
7969
+ if (parentNode.props.nodeName === 'legend') {
7970
+ break;
7971
+ }
7972
+ if (parentNode._inDisabledFieldset !== void 0) {
7973
+ fieldsetDisabled = parentNode._inDisabledFieldset;
7974
+ break;
7975
+ }
7976
+ if (parentNode.props.nodeName === 'fieldset' && parentNode.hasAttr('disabled')) {
7977
+ fieldsetDisabled = true;
7978
+ }
7979
+ parentNode = parentNode.parent;
7980
+ }
7981
+ ancestors.forEach(function(ancestor) {
7982
+ return ancestor._inDisabledFieldset = fieldsetDisabled;
7983
+ });
7984
+ if (fieldsetDisabled) {
7985
+ return true;
7986
+ }
7987
+ if (vNode.props.nodeName !== 'area') {
7988
+ if (!vNode.actualNode) {
7989
+ return false;
7990
+ }
7991
+ return _isHiddenForEveryone(vNode);
7992
+ }
7993
+ return false;
7994
+ }
7995
+ var focus_disabled_default = focusDisabled;
7818
7996
  var angularSkipLinkRegex = /^\/\#/;
7819
7997
  var angularRouterLinkRegex = /^#[!/]/;
7820
7998
  function _isCurrentPageLink(anchor) {
@@ -7875,16 +8053,16 @@
7875
8053
  function _visuallySort(a, b) {
7876
8054
  _createGrid();
7877
8055
  var length = Math.max(a._stackingOrder.length, b._stackingOrder.length);
7878
- for (var _i6 = 0; _i6 < length; _i6++) {
7879
- if (typeof b._stackingOrder[_i6] === 'undefined') {
8056
+ for (var _i7 = 0; _i7 < length; _i7++) {
8057
+ if (typeof b._stackingOrder[_i7] === 'undefined') {
7880
8058
  return -1;
7881
- } else if (typeof a._stackingOrder[_i6] === 'undefined') {
8059
+ } else if (typeof a._stackingOrder[_i7] === 'undefined') {
7882
8060
  return 1;
7883
8061
  }
7884
- if (b._stackingOrder[_i6] > a._stackingOrder[_i6]) {
8062
+ if (b._stackingOrder[_i7] > a._stackingOrder[_i7]) {
7885
8063
  return 1;
7886
8064
  }
7887
- if (b._stackingOrder[_i6] < a._stackingOrder[_i6]) {
8065
+ if (b._stackingOrder[_i7] < a._stackingOrder[_i7]) {
7888
8066
  return -1;
7889
8067
  }
7890
8068
  }
@@ -7974,16 +8152,6 @@
7974
8152
  return _splitRects;
7975
8153
  }
7976
8154
  });
7977
- function _getIntersectionRect(rect1, rect2) {
7978
- var leftX = Math.max(rect1.left, rect2.left);
7979
- var rightX = Math.min(rect1.right, rect2.right);
7980
- var topY = Math.max(rect1.top, rect2.top);
7981
- var bottomY = Math.min(rect1.bottom, rect2.bottom);
7982
- if (leftX >= rightX || topY >= bottomY) {
7983
- return null;
7984
- }
7985
- return new window.DOMRect(leftX, topY, rightX - leftX, bottomY - topY);
7986
- }
7987
8155
  function _getOffset(vNodeA, vNodeB) {
7988
8156
  var rectA = vNodeA.boundingClientRect;
7989
8157
  var rectB = vNodeB.boundingClientRect;
@@ -7994,8 +8162,8 @@
7994
8162
  function getFarthestPoint(rectA, rectB) {
7995
8163
  var dimensionProps = [ [ 'x', 'left', 'right', 'width' ], [ 'y', 'top', 'bottom', 'height' ] ];
7996
8164
  var farthestPoint = {};
7997
- dimensionProps.forEach(function(_ref17) {
7998
- var _ref18 = _slicedToArray(_ref17, 4), axis = _ref18[0], start = _ref18[1], end = _ref18[2], diameter = _ref18[3];
8165
+ dimensionProps.forEach(function(_ref19) {
8166
+ var _ref20 = _slicedToArray(_ref19, 4), axis = _ref20[0], start = _ref20[1], end = _ref20[2], diameter = _ref20[3];
7999
8167
  if (rectB[start] < rectA[start] && rectB[end] > rectA[end]) {
8000
8168
  farthestPoint[axis] = rectA[start] + rectA[diameter] / 2;
8001
8169
  return;
@@ -8011,8 +8179,8 @@
8011
8179
  });
8012
8180
  return farthestPoint;
8013
8181
  }
8014
- function getClosestPoint(_ref19, ownRect, adjacentRect) {
8015
- var x = _ref19.x, y = _ref19.y;
8182
+ function getClosestPoint(_ref21, ownRect, adjacentRect) {
8183
+ var x = _ref21.x, y = _ref21.y;
8016
8184
  if (pointInRect({
8017
8185
  x: x,
8018
8186
  y: y
@@ -8067,12 +8235,12 @@
8067
8235
  }
8068
8236
  return Math.sqrt(Math.pow(xDistance, 2) + Math.pow(yDistance, 2));
8069
8237
  }
8070
- function pointInRect(_ref20, rect) {
8071
- var x = _ref20.x, y = _ref20.y;
8238
+ function pointInRect(_ref22, rect) {
8239
+ var x = _ref22.x, y = _ref22.y;
8072
8240
  return y >= rect.top && x <= rect.right && y <= rect.bottom && x >= rect.left;
8073
8241
  }
8074
- function getCornerInAdjacentRect(_ref21, ownRect, adjacentRect) {
8075
- var x = _ref21.x, y = _ref21.y;
8242
+ function getCornerInAdjacentRect(_ref23, ownRect, adjacentRect) {
8243
+ var x = _ref23.x, y = _ref23.y;
8076
8244
  var closestX, closestY;
8077
8245
  if (x === ownRect.left && ownRect.right < adjacentRect.right) {
8078
8246
  closestX = ownRect.right;
@@ -8109,8 +8277,8 @@
8109
8277
  };
8110
8278
  }
8111
8279
  }
8112
- function _getRectCenter(_ref22) {
8113
- var left = _ref22.left, top = _ref22.top, width = _ref22.width, height = _ref22.height;
8280
+ function _getRectCenter(_ref24) {
8281
+ var left = _ref24.left, top = _ref24.top, width = _ref24.width, height = _ref24.height;
8114
8282
  return new window.DOMPoint(left + width / 2, top + height / 2);
8115
8283
  }
8116
8284
  function _hasVisualOverlap(vNodeA, vNodeB) {
@@ -8830,13 +8998,13 @@
8830
8998
  },
8831
8999
  menu: {
8832
9000
  type: 'composite',
8833
- requiredOwned: [ 'group', 'menuitemradio', 'menuitem', 'menuitemcheckbox', 'menu' ],
9001
+ requiredOwned: [ 'group', 'menuitemradio', 'menuitem', 'menuitemcheckbox', 'menu', 'separator' ],
8834
9002
  allowedAttrs: [ 'aria-activedescendant', 'aria-expanded', 'aria-orientation' ],
8835
9003
  superclassRole: [ 'select' ]
8836
9004
  },
8837
9005
  menubar: {
8838
9006
  type: 'composite',
8839
- requiredOwned: [ 'group', 'menuitemradio', 'menuitem', 'menuitemcheckbox', 'menu' ],
9007
+ requiredOwned: [ 'group', 'menuitemradio', 'menuitem', 'menuitemcheckbox', 'menu', 'separator' ],
8840
9008
  allowedAttrs: [ 'aria-activedescendant', 'aria-expanded', 'aria-orientation' ],
8841
9009
  superclassRole: [ 'menu' ]
8842
9010
  },
@@ -10272,7 +10440,7 @@
10272
10440
  }
10273
10441
  var is_unsupported_role_default = isUnsupportedRole;
10274
10442
  function isValidRole(role) {
10275
- var _ref23 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, allowAbstract = _ref23.allowAbstract, _ref23$flagUnsupporte = _ref23.flagUnsupported, flagUnsupported = _ref23$flagUnsupporte === void 0 ? false : _ref23$flagUnsupporte;
10443
+ var _ref25 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, allowAbstract = _ref25.allowAbstract, _ref25$flagUnsupporte = _ref25.flagUnsupported, flagUnsupported = _ref25$flagUnsupporte === void 0 ? false : _ref25$flagUnsupporte;
10276
10444
  var roleDefinition = standards_default.ariaRoles[role];
10277
10445
  var isRoleUnsupported = is_unsupported_role_default(role);
10278
10446
  if (!roleDefinition || flagUnsupported && isRoleUnsupported) {
@@ -10282,7 +10450,7 @@
10282
10450
  }
10283
10451
  var is_valid_role_default = isValidRole;
10284
10452
  function getExplicitRole(vNode) {
10285
- var _ref24 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, fallback = _ref24.fallback, abstracts = _ref24.abstracts, dpub = _ref24.dpub;
10453
+ var _ref26 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, fallback = _ref26.fallback, abstracts = _ref26.abstracts, dpub = _ref26.dpub;
10286
10454
  vNode = vNode instanceof abstract_virtual_node_default ? vNode : get_node_from_tree_default(vNode);
10287
10455
  if (vNode.props.nodeType !== 1) {
10288
10456
  return null;
@@ -10420,47 +10588,6 @@
10420
10588
  return str.replace(/\r\n/g, '\n').replace(/\u00A0/g, ' ').replace(/[\s]{2,}/g, ' ').trim();
10421
10589
  }
10422
10590
  var sanitize_default = sanitize;
10423
- var allowedDisabledNodeNames = [ 'button', 'command', 'fieldset', 'keygen', 'optgroup', 'option', 'select', 'textarea', 'input' ];
10424
- function isDisabledAttrAllowed(nodeName2) {
10425
- return allowedDisabledNodeNames.includes(nodeName2);
10426
- }
10427
- function focusDisabled(el) {
10428
- var vNode = el instanceof abstract_virtual_node_default ? el : get_node_from_tree_default(el);
10429
- if (isDisabledAttrAllowed(vNode.props.nodeName) && vNode.hasAttr('disabled')) {
10430
- return true;
10431
- }
10432
- var parentNode = vNode.parent;
10433
- var ancestors = [];
10434
- var fieldsetDisabled = false;
10435
- while (parentNode && parentNode.shadowId === vNode.shadowId && !fieldsetDisabled) {
10436
- ancestors.push(parentNode);
10437
- if (parentNode.props.nodeName === 'legend') {
10438
- break;
10439
- }
10440
- if (parentNode._inDisabledFieldset !== void 0) {
10441
- fieldsetDisabled = parentNode._inDisabledFieldset;
10442
- break;
10443
- }
10444
- if (parentNode.props.nodeName === 'fieldset' && parentNode.hasAttr('disabled')) {
10445
- fieldsetDisabled = true;
10446
- }
10447
- parentNode = parentNode.parent;
10448
- }
10449
- ancestors.forEach(function(ancestor) {
10450
- return ancestor._inDisabledFieldset = fieldsetDisabled;
10451
- });
10452
- if (fieldsetDisabled) {
10453
- return true;
10454
- }
10455
- if (vNode.props.nodeName !== 'area') {
10456
- if (!vNode.actualNode) {
10457
- return false;
10458
- }
10459
- return _isHiddenForEveryone(vNode);
10460
- }
10461
- return false;
10462
- }
10463
- var focus_disabled_default = focusDisabled;
10464
10591
  function isNativelyFocusable(el) {
10465
10592
  var vNode = el instanceof abstract_virtual_node_default ? el : get_node_from_tree_default(el);
10466
10593
  if (!vNode || focus_disabled_default(vNode)) {
@@ -10761,7 +10888,7 @@
10761
10888
  matches_default2.semanticRole = semantic_role_default;
10762
10889
  var matches_default3 = matches_default2;
10763
10890
  function getElementSpec(vNode) {
10764
- var _ref25 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, _ref25$noMatchAccessi = _ref25.noMatchAccessibleName, noMatchAccessibleName = _ref25$noMatchAccessi === void 0 ? false : _ref25$noMatchAccessi;
10891
+ var _ref27 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, _ref27$noMatchAccessi = _ref27.noMatchAccessibleName, noMatchAccessibleName = _ref27$noMatchAccessi === void 0 ? false : _ref27$noMatchAccessi;
10765
10892
  var standard = standards_default.htmlElms[vNode.props.nodeName];
10766
10893
  if (!standard) {
10767
10894
  return {};
@@ -10776,8 +10903,8 @@
10776
10903
  }
10777
10904
  var _variant$variantName = variant[variantName], matches4 = _variant$variantName.matches, props = _objectWithoutProperties(_variant$variantName, _excluded3);
10778
10905
  var matchProperties = Array.isArray(matches4) ? matches4 : [ matches4 ];
10779
- for (var _i7 = 0; _i7 < matchProperties.length && noMatchAccessibleName; _i7++) {
10780
- if (matchProperties[_i7].hasOwnProperty('hasAccessibleName')) {
10906
+ for (var _i8 = 0; _i8 < matchProperties.length && noMatchAccessibleName; _i8++) {
10907
+ if (matchProperties[_i8].hasOwnProperty('hasAccessibleName')) {
10781
10908
  return standard;
10782
10909
  }
10783
10910
  }
@@ -10798,7 +10925,7 @@
10798
10925
  }
10799
10926
  var get_element_spec_default = getElementSpec;
10800
10927
  function implicitRole2(node) {
10801
- var _ref26 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, chromium = _ref26.chromium;
10928
+ var _ref28 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, chromium = _ref28.chromium;
10802
10929
  var vNode = node instanceof abstract_virtual_node_default ? node : get_node_from_tree_default(node);
10803
10930
  node = vNode.actualNode;
10804
10931
  if (!vNode) {
@@ -10851,8 +10978,8 @@
10851
10978
  }
10852
10979
  return getInheritedRole(vNode.parent, explicitRoleOptions);
10853
10980
  }
10854
- function resolveImplicitRole(vNode, _ref27) {
10855
- var chromium = _ref27.chromium, explicitRoleOptions = _objectWithoutProperties(_ref27, _excluded4);
10981
+ function resolveImplicitRole(vNode, _ref29) {
10982
+ var chromium = _ref29.chromium, explicitRoleOptions = _objectWithoutProperties(_ref29, _excluded4);
10856
10983
  var implicitRole3 = implicit_role_default(vNode, {
10857
10984
  chromium: chromium
10858
10985
  });
@@ -10872,8 +10999,8 @@
10872
10999
  return hasGlobalAria || _isFocusable(vNode);
10873
11000
  }
10874
11001
  function resolveRole(node) {
10875
- var _ref28 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
10876
- var noImplicit = _ref28.noImplicit, roleOptions = _objectWithoutProperties(_ref28, _excluded5);
11002
+ var _ref30 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
11003
+ var noImplicit = _ref30.noImplicit, roleOptions = _objectWithoutProperties(_ref30, _excluded5);
10877
11004
  var vNode = node instanceof abstract_virtual_node_default ? node : get_node_from_tree_default(node);
10878
11005
  if (vNode.props.nodeType !== 1) {
10879
11006
  return null;
@@ -10891,8 +11018,8 @@
10891
11018
  return explicitRole2;
10892
11019
  }
10893
11020
  function getRole(node) {
10894
- var _ref29 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
10895
- var noPresentational = _ref29.noPresentational, options = _objectWithoutProperties(_ref29, _excluded6);
11021
+ var _ref31 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
11022
+ var noPresentational = _ref31.noPresentational, options = _objectWithoutProperties(_ref31, _excluded6);
10896
11023
  var role = resolveRole(node, options);
10897
11024
  if (noPresentational && [ 'presentation', 'none' ].includes(role)) {
10898
11025
  return null;
@@ -10913,7 +11040,7 @@
10913
11040
  }
10914
11041
  var title_text_default = titleText;
10915
11042
  function namedFromContents(vNode) {
10916
- var _ref30 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, strict = _ref30.strict;
11043
+ var _ref32 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, strict = _ref32.strict;
10917
11044
  vNode = vNode instanceof abstract_virtual_node_default ? vNode : get_node_from_tree_default(vNode);
10918
11045
  if (vNode.props.nodeType !== 1) {
10919
11046
  return false;
@@ -11038,12 +11165,12 @@
11038
11165
  button: ''
11039
11166
  };
11040
11167
  var nativeTextMethods = {
11041
- valueText: function valueText(_ref31) {
11042
- var actualNode = _ref31.actualNode;
11168
+ valueText: function valueText(_ref33) {
11169
+ var actualNode = _ref33.actualNode;
11043
11170
  return actualNode.value || '';
11044
11171
  },
11045
- buttonDefaultText: function buttonDefaultText(_ref32) {
11046
- var actualNode = _ref32.actualNode;
11172
+ buttonDefaultText: function buttonDefaultText(_ref34) {
11173
+ var actualNode = _ref34.actualNode;
11047
11174
  return defaultButtonValues[actualNode.type] || '';
11048
11175
  },
11049
11176
  tableCaptionText: descendantText.bind(null, 'caption'),
@@ -11063,8 +11190,8 @@
11063
11190
  function attrText(attr, vNode) {
11064
11191
  return vNode.attr(attr) || '';
11065
11192
  }
11066
- function descendantText(nodeName2, _ref33, context) {
11067
- var actualNode = _ref33.actualNode;
11193
+ function descendantText(nodeName2, _ref35, context) {
11194
+ var actualNode = _ref35.actualNode;
11068
11195
  nodeName2 = nodeName2.toLowerCase();
11069
11196
  var nodeNames2 = [ nodeName2, actualNode.nodeName.toLowerCase() ].join(',');
11070
11197
  var candidate = actualNode.querySelector(nodeNames2);
@@ -11108,7 +11235,10 @@
11108
11235
  return isVisibleToScreenReadersVirtual(vNode);
11109
11236
  }
11110
11237
  var isVisibleToScreenReadersVirtual = memoize_default(function isVisibleToScreenReadersMemoized(vNode, isAncestor) {
11111
- if (ariaHidden(vNode)) {
11238
+ if (ariaHidden(vNode) || _isInert(vNode, {
11239
+ skipAncestors: true,
11240
+ isAncestor: isAncestor
11241
+ })) {
11112
11242
  return false;
11113
11243
  }
11114
11244
  if (vNode.actualNode && vNode.props.nodeName === 'area') {
@@ -11493,7 +11623,7 @@
11493
11623
  locations: [ 'billing', 'shipping' ]
11494
11624
  };
11495
11625
  function isValidAutocomplete(autocompleteValue) {
11496
- var _ref34 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, _ref34$looseTyped = _ref34.looseTyped, looseTyped = _ref34$looseTyped === void 0 ? false : _ref34$looseTyped, _ref34$stateTerms = _ref34.stateTerms, stateTerms = _ref34$stateTerms === void 0 ? [] : _ref34$stateTerms, _ref34$locations = _ref34.locations, locations = _ref34$locations === void 0 ? [] : _ref34$locations, _ref34$qualifiers = _ref34.qualifiers, qualifiers = _ref34$qualifiers === void 0 ? [] : _ref34$qualifiers, _ref34$standaloneTerm = _ref34.standaloneTerms, standaloneTerms = _ref34$standaloneTerm === void 0 ? [] : _ref34$standaloneTerm, _ref34$qualifiedTerms = _ref34.qualifiedTerms, qualifiedTerms = _ref34$qualifiedTerms === void 0 ? [] : _ref34$qualifiedTerms;
11626
+ var _ref36 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, _ref36$looseTyped = _ref36.looseTyped, looseTyped = _ref36$looseTyped === void 0 ? false : _ref36$looseTyped, _ref36$stateTerms = _ref36.stateTerms, stateTerms = _ref36$stateTerms === void 0 ? [] : _ref36$stateTerms, _ref36$locations = _ref36.locations, locations = _ref36$locations === void 0 ? [] : _ref36$locations, _ref36$qualifiers = _ref36.qualifiers, qualifiers = _ref36$qualifiers === void 0 ? [] : _ref36$qualifiers, _ref36$standaloneTerm = _ref36.standaloneTerms, standaloneTerms = _ref36$standaloneTerm === void 0 ? [] : _ref36$standaloneTerm, _ref36$qualifiedTerms = _ref36.qualifiedTerms, qualifiedTerms = _ref36$qualifiedTerms === void 0 ? [] : _ref36$qualifiedTerms;
11497
11627
  autocompleteValue = autocompleteValue.toLowerCase().trim();
11498
11628
  stateTerms = stateTerms.concat(_autocomplete.stateTerms);
11499
11629
  if (stateTerms.includes(autocompleteValue) || autocompleteValue === '') {
@@ -11504,6 +11634,12 @@
11504
11634
  standaloneTerms = standaloneTerms.concat(_autocomplete.standaloneTerms);
11505
11635
  qualifiedTerms = qualifiedTerms.concat(_autocomplete.qualifiedTerms);
11506
11636
  var autocompleteTerms = autocompleteValue.split(/\s+/g);
11637
+ if (autocompleteTerms[autocompleteTerms.length - 1] === 'webauthn') {
11638
+ autocompleteTerms.pop();
11639
+ if (autocompleteTerms.length === 0) {
11640
+ return false;
11641
+ }
11642
+ }
11507
11643
  if (!looseTyped) {
11508
11644
  if (autocompleteTerms[0].length > 8 && autocompleteTerms[0].substr(0, 8) === 'section-') {
11509
11645
  autocompleteTerms.shift();
@@ -11752,8 +11888,8 @@
11752
11888
  if (hiddenTextElms.includes(elm.props.nodeName)) {
11753
11889
  return false;
11754
11890
  }
11755
- return elm.children.some(function(_ref35) {
11756
- var props = _ref35.props;
11891
+ return elm.children.some(function(_ref37) {
11892
+ var props = _ref37.props;
11757
11893
  return props.nodeType === 3 && props.nodeValue.trim();
11758
11894
  });
11759
11895
  }
@@ -11954,8 +12090,8 @@
11954
12090
  var stacks = points.map(function(point) {
11955
12091
  return Array.from(document.elementsFromPoint(point.x, point.y));
11956
12092
  });
11957
- var _loop4 = function _loop4(_i8) {
11958
- var modalElement = stacks[_i8].find(function(elm) {
12093
+ var _loop4 = function _loop4(_i9) {
12094
+ var modalElement = stacks[_i9].find(function(elm) {
11959
12095
  var style = window.getComputedStyle(elm);
11960
12096
  return parseInt(style.width, 10) >= percentWidth && parseInt(style.height, 10) >= percentHeight && style.getPropertyValue('pointer-events') !== 'none' && (style.position === 'absolute' || style.position === 'fixed');
11961
12097
  });
@@ -11968,8 +12104,8 @@
11968
12104
  };
11969
12105
  }
11970
12106
  };
11971
- for (var _i8 = 0; _i8 < stacks.length; _i8++) {
11972
- var _ret = _loop4(_i8);
12107
+ for (var _i9 = 0; _i9 < stacks.length; _i9++) {
12108
+ var _ret = _loop4(_i9);
11973
12109
  if (_typeof(_ret) === 'object') {
11974
12110
  return _ret.v;
11975
12111
  }
@@ -12065,8 +12201,8 @@
12065
12201
  }
12066
12202
  return parseFloat(value);
12067
12203
  }
12068
- function hslToRgb(_ref36) {
12069
- var _ref37 = _slicedToArray(_ref36, 4), hue = _ref37[0], saturation = _ref37[1], lightness = _ref37[2], alpha = _ref37[3];
12204
+ function hslToRgb(_ref38) {
12205
+ var _ref39 = _slicedToArray(_ref38, 4), hue = _ref39[0], saturation = _ref39[1], lightness = _ref39[2], alpha = _ref39[3];
12070
12206
  saturation /= 255;
12071
12207
  lightness /= 255;
12072
12208
  var high = (1 - Math.abs(2 * lightness - 1)) * saturation;
@@ -12115,7 +12251,7 @@
12115
12251
  var colorFnRegex = /^((?:rgb|hsl)a?)\s*\(([^\)]*)\)/i;
12116
12252
  this.parseString = function parseString(colorString) {
12117
12253
  if (standards_default.cssColors[colorString] || colorString === 'transparent') {
12118
- var _ref38 = standards_default.cssColors[colorString] || [ 0, 0, 0 ], _ref39 = _slicedToArray(_ref38, 3), red2 = _ref39[0], green2 = _ref39[1], blue2 = _ref39[2];
12254
+ var _ref40 = standards_default.cssColors[colorString] || [ 0, 0, 0 ], _ref41 = _slicedToArray(_ref40, 3), red2 = _ref41[0], green2 = _ref41[1], blue2 = _ref41[2];
12119
12255
  this.red = red2;
12120
12256
  this.green = green2;
12121
12257
  this.blue = blue2;
@@ -12165,7 +12301,7 @@
12165
12301
  }
12166
12302
  };
12167
12303
  this.parseColorFnString = function parseColorFnString(colorString) {
12168
- var _ref40 = colorString.match(colorFnRegex) || [], _ref41 = _slicedToArray(_ref40, 3), colorFunc = _ref41[1], colorValStr = _ref41[2];
12304
+ var _ref42 = colorString.match(colorFnRegex) || [], _ref43 = _slicedToArray(_ref42, 3), colorFunc = _ref43[1], colorValStr = _ref43[2];
12169
12305
  if (!colorFunc || !colorValStr) {
12170
12306
  return;
12171
12307
  }
@@ -12275,8 +12411,8 @@
12275
12411
  if (!refs || !refs.length) {
12276
12412
  return false;
12277
12413
  }
12278
- return refs.some(function(_ref42) {
12279
- var actualNode = _ref42.actualNode;
12414
+ return refs.some(function(_ref44) {
12415
+ var actualNode = _ref44.actualNode;
12280
12416
  return isVisible(actualNode, screenReader, recursed);
12281
12417
  });
12282
12418
  }
@@ -12288,7 +12424,7 @@
12288
12424
  var vNode = el instanceof abstract_virtual_node_default ? el : get_node_from_tree_default(el);
12289
12425
  el = vNode ? vNode.actualNode : el;
12290
12426
  var cacheName = '_isVisible' + (screenReader ? 'ScreenReader' : '');
12291
- var _ref43 = (_window$Node2 = window.Node) !== null && _window$Node2 !== void 0 ? _window$Node2 : {}, DOCUMENT_NODE = _ref43.DOCUMENT_NODE, DOCUMENT_FRAGMENT_NODE = _ref43.DOCUMENT_FRAGMENT_NODE;
12427
+ var _ref45 = (_window$Node2 = window.Node) !== null && _window$Node2 !== void 0 ? _window$Node2 : {}, DOCUMENT_NODE = _ref45.DOCUMENT_NODE, DOCUMENT_FRAGMENT_NODE = _ref45.DOCUMENT_FRAGMENT_NODE;
12292
12428
  var nodeType = vNode ? vNode.props.nodeType : el.nodeType;
12293
12429
  var nodeName2 = vNode ? vNode.props.nodeName : el.nodeName.toLowerCase();
12294
12430
  if (vNode && typeof vNode[cacheName] !== 'undefined') {
@@ -12679,8 +12815,8 @@
12679
12815
  return;
12680
12816
  }
12681
12817
  var shadowId = domTree[0].shadowId;
12682
- for (var _i9 = 0; _i9 < expressions.length; _i9++) {
12683
- if (expressions[_i9].length > 1 && expressions[_i9].some(function(expression) {
12818
+ for (var _i10 = 0; _i10 < expressions.length; _i10++) {
12819
+ if (expressions[_i10].length > 1 && expressions[_i10].some(function(expression) {
12684
12820
  return isGlobalSelector(expression);
12685
12821
  })) {
12686
12822
  return;
@@ -12741,9 +12877,9 @@
12741
12877
  nodes = nodes ? getSharedValues(_cachedNodes, nodes) : _cachedNodes;
12742
12878
  }
12743
12879
  if (exp.attributes) {
12744
- for (var _i10 = 0; _i10 < exp.attributes.length; _i10++) {
12880
+ for (var _i11 = 0; _i11 < exp.attributes.length; _i11++) {
12745
12881
  var _selectorMap;
12746
- var attr = exp.attributes[_i10];
12882
+ var attr = exp.attributes[_i11];
12747
12883
  if (attr.type === 'attrValue') {
12748
12884
  isComplexSelector = true;
12749
12885
  }
@@ -13099,7 +13235,7 @@
13099
13235
  return {};
13100
13236
  }
13101
13237
  var navigator = win.navigator, innerHeight = win.innerHeight, innerWidth = win.innerWidth;
13102
- var _ref44 = getOrientation(win) || {}, angle = _ref44.angle, type = _ref44.type;
13238
+ var _ref46 = getOrientation(win) || {}, angle = _ref46.angle, type = _ref46.type;
13103
13239
  return {
13104
13240
  userAgent: navigator.userAgent,
13105
13241
  windowWidth: innerWidth,
@@ -13108,12 +13244,12 @@
13108
13244
  orientationType: type
13109
13245
  };
13110
13246
  }
13111
- function getOrientation(_ref45) {
13112
- var screen = _ref45.screen;
13247
+ function getOrientation(_ref47) {
13248
+ var screen = _ref47.screen;
13113
13249
  return screen.orientation || screen.msOrientation || screen.mozOrientation;
13114
13250
  }
13115
- function createFrameContext(frame, _ref46) {
13116
- var focusable = _ref46.focusable, page = _ref46.page;
13251
+ function createFrameContext(frame, _ref48) {
13252
+ var focusable = _ref48.focusable, page = _ref48.page;
13117
13253
  return {
13118
13254
  node: frame,
13119
13255
  include: [],
@@ -13180,8 +13316,8 @@
13180
13316
  if (!isArrayLike(selectorList)) {
13181
13317
  selectorList = [ selectorList ];
13182
13318
  }
13183
- for (var _i11 = 0; _i11 < selectorList.length; _i11++) {
13184
- var normalizedSelector = normalizeContextSelector(selectorList[_i11]);
13319
+ for (var _i12 = 0; _i12 < selectorList.length; _i12++) {
13320
+ var normalizedSelector = normalizeContextSelector(selectorList[_i12]);
13185
13321
  if (normalizedSelector) {
13186
13322
  normalizedList.push(normalizedSelector);
13187
13323
  }
@@ -13277,8 +13413,8 @@
13277
13413
  }
13278
13414
  function parseSelectorArray(context, type) {
13279
13415
  var result = [];
13280
- for (var _i12 = 0, l = context[type].length; _i12 < l; _i12++) {
13281
- var item = context[type][_i12];
13416
+ for (var _i13 = 0, l = context[type].length; _i13 < l; _i13++) {
13417
+ var item = context[type][_i13];
13282
13418
  if (item instanceof window.Node) {
13283
13419
  if (item.documentElement instanceof window.Node) {
13284
13420
  result.push(context.flatTree[0]);
@@ -13352,8 +13488,8 @@
13352
13488
  }
13353
13489
  context.frames.push(createFrameContext(frame, context));
13354
13490
  }
13355
- function isPageContext(_ref47) {
13356
- var include = _ref47.include;
13491
+ function isPageContext(_ref49) {
13492
+ var include = _ref49.include;
13357
13493
  return include.length === 1 && include[0].actualNode === document.documentElement;
13358
13494
  }
13359
13495
  function validateContext(context) {
@@ -13362,11 +13498,11 @@
13362
13498
  throw new Error('No elements found for include in ' + env + ' Context');
13363
13499
  }
13364
13500
  }
13365
- function getRootNode2(_ref48) {
13366
- var include = _ref48.include, exclude = _ref48.exclude;
13501
+ function getRootNode2(_ref50) {
13502
+ var include = _ref50.include, exclude = _ref50.exclude;
13367
13503
  var selectors = Array.from(include).concat(Array.from(exclude));
13368
- for (var _i13 = 0; _i13 < selectors.length; _i13++) {
13369
- var item = selectors[_i13];
13504
+ for (var _i14 = 0; _i14 < selectors.length; _i14++) {
13505
+ var item = selectors[_i14];
13370
13506
  if (item instanceof window.Element) {
13371
13507
  return item.ownerDocument.documentElement;
13372
13508
  }
@@ -13382,8 +13518,8 @@
13382
13518
  return [];
13383
13519
  }
13384
13520
  var _Context = new Context(context), frames = _Context.frames;
13385
- return frames.map(function(_ref49) {
13386
- var node = _ref49.node, frameContext = _objectWithoutProperties(_ref49, _excluded7);
13521
+ return frames.map(function(_ref51) {
13522
+ var node = _ref51.node, frameContext = _objectWithoutProperties(_ref51, _excluded7);
13387
13523
  frameContext.initiator = false;
13388
13524
  var frameSelector = _getAncestry(node);
13389
13525
  return {
@@ -13532,8 +13668,8 @@
13532
13668
  return !!standards_default.htmlElms[nodeName2];
13533
13669
  }
13534
13670
  var is_html_element_default = isHtmlElement;
13535
- function _isNodeInContext(node, _ref50) {
13536
- var _ref50$include = _ref50.include, include = _ref50$include === void 0 ? [] : _ref50$include, _ref50$exclude = _ref50.exclude, exclude = _ref50$exclude === void 0 ? [] : _ref50$exclude;
13671
+ function _isNodeInContext(node, _ref52) {
13672
+ var _ref52$include = _ref52.include, include = _ref52$include === void 0 ? [] : _ref52$include, _ref52$exclude = _ref52.exclude, exclude = _ref52$exclude === void 0 ? [] : _ref52$exclude;
13537
13673
  var filterInclude = include.filter(function(candidate) {
13538
13674
  return _contains(candidate, node);
13539
13675
  });
@@ -14040,9 +14176,9 @@
14040
14176
  var childAny = null;
14041
14177
  var combinedLength = (((_currentLevel$anyLeve = currentLevel.anyLevel) === null || _currentLevel$anyLeve === void 0 ? void 0 : _currentLevel$anyLeve.length) || 0) + (((_currentLevel$thisLev = currentLevel.thisLevel) === null || _currentLevel$thisLev === void 0 ? void 0 : _currentLevel$thisLev.length) || 0);
14042
14178
  var added = false;
14043
- for (var _i14 = 0; _i14 < combinedLength; _i14++) {
14179
+ for (var _i15 = 0; _i15 < combinedLength; _i15++) {
14044
14180
  var _currentLevel$anyLeve2, _currentLevel$anyLeve3, _currentLevel$anyLeve4;
14045
- var exp = _i14 < (((_currentLevel$anyLeve2 = currentLevel.anyLevel) === null || _currentLevel$anyLeve2 === void 0 ? void 0 : _currentLevel$anyLeve2.length) || 0) ? currentLevel.anyLevel[_i14] : currentLevel.thisLevel[_i14 - (((_currentLevel$anyLeve3 = currentLevel.anyLevel) === null || _currentLevel$anyLeve3 === void 0 ? void 0 : _currentLevel$anyLeve3.length) || 0)];
14181
+ var exp = _i15 < (((_currentLevel$anyLeve2 = currentLevel.anyLevel) === null || _currentLevel$anyLeve2 === void 0 ? void 0 : _currentLevel$anyLeve2.length) || 0) ? currentLevel.anyLevel[_i15] : currentLevel.thisLevel[_i15 - (((_currentLevel$anyLeve3 = currentLevel.anyLevel) === null || _currentLevel$anyLeve3 === void 0 ? void 0 : _currentLevel$anyLeve3.length) || 0)];
14046
14182
  if ((!exp[0].id || vNode.shadowId === currentLevel.parentShadowId) && _matchesExpression(vNode, exp[0])) {
14047
14183
  if (exp.length === 1) {
14048
14184
  if (!added && (!filter || filter(vNode))) {
@@ -14086,8 +14222,8 @@
14086
14222
  return matchExpressions(domTree, expressions, filter);
14087
14223
  }
14088
14224
  var query_selector_all_filter_default = querySelectorAllFilter;
14089
- function preloadCssom(_ref51) {
14090
- var _ref51$treeRoot = _ref51.treeRoot, treeRoot = _ref51$treeRoot === void 0 ? axe._tree[0] : _ref51$treeRoot;
14225
+ function preloadCssom(_ref53) {
14226
+ var _ref53$treeRoot = _ref53.treeRoot, treeRoot = _ref53$treeRoot === void 0 ? axe._tree[0] : _ref53$treeRoot;
14091
14227
  var rootNodes = getAllRootNodesInTree(treeRoot);
14092
14228
  if (!rootNodes.length) {
14093
14229
  return Promise.resolve();
@@ -14117,8 +14253,8 @@
14117
14253
  }
14118
14254
  function getCssomForAllRootNodes(rootNodes, convertDataToStylesheet) {
14119
14255
  var promises = [];
14120
- rootNodes.forEach(function(_ref52, index) {
14121
- var rootNode = _ref52.rootNode, shadowId = _ref52.shadowId;
14256
+ rootNodes.forEach(function(_ref54, index) {
14257
+ var rootNode = _ref54.rootNode, shadowId = _ref54.shadowId;
14122
14258
  var sheets = getStylesheetsOfRootNode(rootNode, shadowId, convertDataToStylesheet);
14123
14259
  if (!sheets) {
14124
14260
  return Promise.all(promises);
@@ -14202,10 +14338,10 @@
14202
14338
  return true;
14203
14339
  });
14204
14340
  }
14205
- function preloadMedia(_ref53) {
14206
- var _ref53$treeRoot = _ref53.treeRoot, treeRoot = _ref53$treeRoot === void 0 ? axe._tree[0] : _ref53$treeRoot;
14207
- var mediaVirtualNodes = query_selector_all_filter_default(treeRoot, 'video, audio', function(_ref54) {
14208
- var actualNode = _ref54.actualNode;
14341
+ function preloadMedia(_ref55) {
14342
+ var _ref55$treeRoot = _ref55.treeRoot, treeRoot = _ref55$treeRoot === void 0 ? axe._tree[0] : _ref55$treeRoot;
14343
+ var mediaVirtualNodes = query_selector_all_filter_default(treeRoot, 'video, audio', function(_ref56) {
14344
+ var actualNode = _ref56.actualNode;
14209
14345
  if (actualNode.hasAttribute('src')) {
14210
14346
  return !!actualNode.getAttribute('src');
14211
14347
  }
@@ -14217,8 +14353,8 @@
14217
14353
  }
14218
14354
  return true;
14219
14355
  });
14220
- return Promise.all(mediaVirtualNodes.map(function(_ref55) {
14221
- var actualNode = _ref55.actualNode;
14356
+ return Promise.all(mediaVirtualNodes.map(function(_ref57) {
14357
+ var actualNode = _ref57.actualNode;
14222
14358
  return isMediaElementReady(actualNode);
14223
14359
  }));
14224
14360
  }
@@ -14469,8 +14605,8 @@
14469
14605
  }
14470
14606
  var outerIncludes = getOuterIncludes(context.include);
14471
14607
  var isInContext = getContextFilter(context);
14472
- for (var _i15 = 0; _i15 < outerIncludes.length; _i15++) {
14473
- candidate = outerIncludes[_i15];
14608
+ for (var _i16 = 0; _i16 < outerIncludes.length; _i16++) {
14609
+ candidate = outerIncludes[_i16];
14474
14610
  var nodes = query_selector_all_filter_default(candidate, selector, isInContext);
14475
14611
  result = mergeArrayUniques(result, nodes);
14476
14612
  }
@@ -14507,9 +14643,9 @@
14507
14643
  arr1 = arr2;
14508
14644
  arr2 = temp;
14509
14645
  }
14510
- for (var _i16 = 0, l = arr2.length; _i16 < l; _i16++) {
14511
- if (!arr1.includes(arr2[_i16])) {
14512
- arr1.push(arr2[_i16]);
14646
+ for (var _i17 = 0, l = arr2.length; _i17 < l; _i17++) {
14647
+ if (!arr1.includes(arr2[_i17])) {
14648
+ arr1.push(arr2[_i17]);
14513
14649
  }
14514
14650
  }
14515
14651
  return arr1;
@@ -14523,8 +14659,8 @@
14523
14659
  }
14524
14660
  }
14525
14661
  function setScrollState(scrollState) {
14526
- scrollState.forEach(function(_ref57) {
14527
- var elm = _ref57.elm, top = _ref57.top, left = _ref57.left;
14662
+ scrollState.forEach(function(_ref59) {
14663
+ var elm = _ref59.elm, top = _ref59.top, left = _ref59.left;
14528
14664
  return setScroll(elm, top, left);
14529
14665
  });
14530
14666
  }
@@ -14552,8 +14688,8 @@
14552
14688
  }
14553
14689
  return selectAllRecursive(selectorArr, doc);
14554
14690
  }
14555
- function selectAllRecursive(_ref58, doc) {
14556
- var _ref59 = _toArray(_ref58), selectorStr = _ref59[0], restSelector = _ref59.slice(1);
14691
+ function selectAllRecursive(_ref60, doc) {
14692
+ var _ref61 = _toArray(_ref60), selectorStr = _ref61[0], restSelector = _ref61.slice(1);
14557
14693
  var elms = doc.querySelectorAll(selectorStr);
14558
14694
  if (restSelector.length === 0) {
14559
14695
  return Array.from(elms);
@@ -14584,8 +14720,8 @@
14584
14720
  while (lang.length < 3) {
14585
14721
  lang += '`';
14586
14722
  }
14587
- for (var _i17 = 0; _i17 <= lang.length - 1; _i17++) {
14588
- var index = lang.charCodeAt(_i17) - 96;
14723
+ for (var _i18 = 0; _i18 <= lang.length - 1; _i18++) {
14724
+ var index = lang.charCodeAt(_i18) - 96;
14589
14725
  array = array[index];
14590
14726
  if (!array) {
14591
14727
  return false;
@@ -14657,9 +14793,9 @@
14657
14793
  nodeTypeToName[nodeNamesToTypes[nodeName2]] = nodeName2;
14658
14794
  });
14659
14795
  function normaliseProps(serialNode) {
14660
- var _serialNode$nodeName, _ref60, _serialNode$nodeType;
14796
+ var _serialNode$nodeName, _ref62, _serialNode$nodeType;
14661
14797
  var nodeName2 = (_serialNode$nodeName = serialNode.nodeName) !== null && _serialNode$nodeName !== void 0 ? _serialNode$nodeName : nodeTypeToName[serialNode.nodeType];
14662
- var nodeType = (_ref60 = (_serialNode$nodeType = serialNode.nodeType) !== null && _serialNode$nodeType !== void 0 ? _serialNode$nodeType : nodeNamesToTypes[serialNode.nodeName]) !== null && _ref60 !== void 0 ? _ref60 : 1;
14798
+ var nodeType = (_ref62 = (_serialNode$nodeType = serialNode.nodeType) !== null && _serialNode$nodeType !== void 0 ? _serialNode$nodeType : nodeNamesToTypes[serialNode.nodeName]) !== null && _ref62 !== void 0 ? _ref62 : 1;
14663
14799
  assert_default(typeof nodeType === 'number', 'nodeType has to be a number, got \''.concat(nodeType, '\''));
14664
14800
  assert_default(typeof nodeName2 === 'string', 'nodeName has to be a string, got \''.concat(nodeName2, '\''));
14665
14801
  nodeName2 = nodeName2.toLowerCase();
@@ -14680,8 +14816,8 @@
14680
14816
  delete props.attributes;
14681
14817
  return Object.freeze(props);
14682
14818
  }
14683
- function normaliseAttrs(_ref61) {
14684
- var _ref61$attributes = _ref61.attributes, attributes2 = _ref61$attributes === void 0 ? {} : _ref61$attributes;
14819
+ function normaliseAttrs(_ref63) {
14820
+ var _ref63$attributes = _ref63.attributes, attributes2 = _ref63$attributes === void 0 ? {} : _ref63$attributes;
14685
14821
  var attrMap = {
14686
14822
  htmlFor: 'for',
14687
14823
  className: 'class'
@@ -14950,6 +15086,9 @@
14950
15086
  isAriaRoleAllowedOnElement: function isAriaRoleAllowedOnElement() {
14951
15087
  return is_aria_role_allowed_on_element_default;
14952
15088
  },
15089
+ isComboboxPopup: function isComboboxPopup() {
15090
+ return _isComboboxPopup;
15091
+ },
14953
15092
  isUnsupportedRole: function isUnsupportedRole() {
14954
15093
  return is_unsupported_role_default;
14955
15094
  },
@@ -15007,8 +15146,8 @@
15007
15146
  idRefs[id] = idRefs[id] || [];
15008
15147
  idRefs[id].push(node);
15009
15148
  }
15010
- for (var _i18 = 0; _i18 < refAttrs.length; ++_i18) {
15011
- var attr = refAttrs[_i18];
15149
+ for (var _i19 = 0; _i19 < refAttrs.length; ++_i19) {
15150
+ var attr = refAttrs[_i19];
15012
15151
  var attrValue = sanitize_default(node.getAttribute(attr) || '');
15013
15152
  if (!attrValue) {
15014
15153
  continue;
@@ -15020,9 +15159,9 @@
15020
15159
  }
15021
15160
  }
15022
15161
  }
15023
- for (var _i19 = 0; _i19 < node.childNodes.length; _i19++) {
15024
- if (node.childNodes[_i19].nodeType === 1) {
15025
- cacheIdRefs(node.childNodes[_i19], idRefs, refAttrs);
15162
+ for (var _i20 = 0; _i20 < node.childNodes.length; _i20++) {
15163
+ if (node.childNodes[_i20].nodeType === 1) {
15164
+ cacheIdRefs(node.childNodes[_i20], idRefs, refAttrs);
15026
15165
  }
15027
15166
  }
15028
15167
  }
@@ -16869,8 +17008,8 @@
16869
17008
  nodeName: [ 'abbr', 'address', 'canvas', 'div', 'p', 'pre', 'blockquote', 'ins', 'del', 'output', 'span', 'table', 'tbody', 'thead', 'tfoot', 'td', 'em', 'strong', 'small', 's', 'cite', 'q', 'dfn', 'abbr', 'time', 'code', 'var', 'samp', 'kbd', 'sub', 'sup', 'i', 'b', 'u', 'mark', 'ruby', 'rt', 'rp', 'bdi', 'bdo', 'br', 'wbr', 'th', 'tr' ]
16870
17009
  } ];
16871
17010
  lookupTable.evaluateRoleForElement = {
16872
- A: function A(_ref62) {
16873
- var node = _ref62.node, out = _ref62.out;
17011
+ A: function A(_ref64) {
17012
+ var node = _ref64.node, out = _ref64.out;
16874
17013
  if (node.namespaceURI === 'http://www.w3.org/2000/svg') {
16875
17014
  return true;
16876
17015
  }
@@ -16879,19 +17018,19 @@
16879
17018
  }
16880
17019
  return true;
16881
17020
  },
16882
- AREA: function AREA(_ref63) {
16883
- var node = _ref63.node;
17021
+ AREA: function AREA(_ref65) {
17022
+ var node = _ref65.node;
16884
17023
  return !node.href;
16885
17024
  },
16886
- BUTTON: function BUTTON(_ref64) {
16887
- var node = _ref64.node, role = _ref64.role, out = _ref64.out;
17025
+ BUTTON: function BUTTON(_ref66) {
17026
+ var node = _ref66.node, role = _ref66.role, out = _ref66.out;
16888
17027
  if (node.getAttribute('type') === 'menu') {
16889
17028
  return role === 'menuitem';
16890
17029
  }
16891
17030
  return out;
16892
17031
  },
16893
- IMG: function IMG(_ref65) {
16894
- var node = _ref65.node, role = _ref65.role, out = _ref65.out;
17032
+ IMG: function IMG(_ref67) {
17033
+ var node = _ref67.node, role = _ref67.role, out = _ref67.out;
16895
17034
  switch (node.alt) {
16896
17035
  case null:
16897
17036
  return out;
@@ -16903,8 +17042,8 @@
16903
17042
  return role !== 'presentation' && role !== 'none';
16904
17043
  }
16905
17044
  },
16906
- INPUT: function INPUT(_ref66) {
16907
- var node = _ref66.node, role = _ref66.role, out = _ref66.out;
17045
+ INPUT: function INPUT(_ref68) {
17046
+ var node = _ref68.node, role = _ref68.role, out = _ref68.out;
16908
17047
  switch (node.type) {
16909
17048
  case 'button':
16910
17049
  case 'image':
@@ -16934,32 +17073,32 @@
16934
17073
  return false;
16935
17074
  }
16936
17075
  },
16937
- LI: function LI(_ref67) {
16938
- var node = _ref67.node, out = _ref67.out;
17076
+ LI: function LI(_ref69) {
17077
+ var node = _ref69.node, out = _ref69.out;
16939
17078
  var hasImplicitListitemRole = axe.utils.matchesSelector(node, 'ol li, ul li');
16940
17079
  if (hasImplicitListitemRole) {
16941
17080
  return out;
16942
17081
  }
16943
17082
  return true;
16944
17083
  },
16945
- MENU: function MENU(_ref68) {
16946
- var node = _ref68.node;
17084
+ MENU: function MENU(_ref70) {
17085
+ var node = _ref70.node;
16947
17086
  if (node.getAttribute('type') === 'context') {
16948
17087
  return false;
16949
17088
  }
16950
17089
  return true;
16951
17090
  },
16952
- OPTION: function OPTION(_ref69) {
16953
- var node = _ref69.node;
17091
+ OPTION: function OPTION(_ref71) {
17092
+ var node = _ref71.node;
16954
17093
  var withinOptionList = axe.utils.matchesSelector(node, 'select > option, datalist > option, optgroup > option');
16955
17094
  return !withinOptionList;
16956
17095
  },
16957
- SELECT: function SELECT(_ref70) {
16958
- var node = _ref70.node, role = _ref70.role;
17096
+ SELECT: function SELECT(_ref72) {
17097
+ var node = _ref72.node, role = _ref72.role;
16959
17098
  return !node.multiple && node.size <= 1 && role === 'menu';
16960
17099
  },
16961
- SVG: function SVG(_ref71) {
16962
- var node = _ref71.node, out = _ref71.out;
17100
+ SVG: function SVG(_ref73) {
17101
+ var node = _ref73.node, out = _ref73.out;
16963
17102
  if (node.parentNode && node.parentNode.namespaceURI === 'http://www.w3.org/2000/svg') {
16964
17103
  return true;
16965
17104
  }
@@ -16983,6 +17122,42 @@
16983
17122
  return !!get_accessible_refs_default(node).length;
16984
17123
  }
16985
17124
  var is_accessible_ref_default = isAccessibleRef;
17125
+ function _isComboboxPopup(virtualNode) {
17126
+ var _popupRoles;
17127
+ var _ref74 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, popupRoles = _ref74.popupRoles;
17128
+ var role = get_role_default(virtualNode);
17129
+ (_popupRoles = popupRoles) !== null && _popupRoles !== void 0 ? _popupRoles : popupRoles = aria_attrs_default['aria-haspopup'].values;
17130
+ if (!popupRoles.includes(role)) {
17131
+ return false;
17132
+ }
17133
+ var vParent = nearestParentWithRole(virtualNode);
17134
+ if (isCombobox(vParent)) {
17135
+ return true;
17136
+ }
17137
+ var id = virtualNode.props.id;
17138
+ if (!id) {
17139
+ return false;
17140
+ }
17141
+ if (!virtualNode.actualNode) {
17142
+ throw new Error('Unable to determine combobox popup without an actualNode');
17143
+ }
17144
+ var root = get_root_node_default(virtualNode.actualNode);
17145
+ var ownedCombobox = root.querySelectorAll('[aria-owns~="'.concat(id, '"][role~="combobox"]:not(select),\n [aria-controls~="').concat(id, '"][role~="combobox"]:not(select)'));
17146
+ return Array.from(ownedCombobox).some(isCombobox);
17147
+ }
17148
+ var isCombobox = function isCombobox(node) {
17149
+ return node && get_role_default(node) === 'combobox';
17150
+ };
17151
+ function nearestParentWithRole(vNode) {
17152
+ while (vNode = vNode.parent) {
17153
+ if (get_role_default(vNode, {
17154
+ noPresentational: true
17155
+ }) !== null) {
17156
+ return vNode;
17157
+ }
17158
+ }
17159
+ return null;
17160
+ }
16986
17161
  function label2(node) {
16987
17162
  node = get_node_from_tree_default(node);
16988
17163
  return label_virtual_default(node);
@@ -17109,9 +17284,9 @@
17109
17284
  preChecks[attr] = validateRowAttrs;
17110
17285
  });
17111
17286
  if (allowed) {
17112
- for (var _i20 = 0; _i20 < attrs.length; _i20++) {
17287
+ for (var _i21 = 0; _i21 < attrs.length; _i21++) {
17113
17288
  var _preChecks$attrName;
17114
- var attrName = attrs[_i20];
17289
+ var attrName = attrs[_i21];
17115
17290
  if (validate_attr_default(attrName) && (_preChecks$attrName = preChecks[attrName]) !== null && _preChecks$attrName !== void 0 && _preChecks$attrName.call(preChecks)) {
17116
17291
  invalid.push(attrName + '="' + virtualNode.attr(attrName) + '"');
17117
17292
  } else if (validate_attr_default(attrName) && !allowed.includes(attrName)) {
@@ -17310,8 +17485,8 @@
17310
17485
  function getOwnedRoles(virtualNode, required) {
17311
17486
  var ownedRoles = [];
17312
17487
  var ownedElements = get_owned_virtual_default(virtualNode);
17313
- var _loop5 = function _loop5(_i21) {
17314
- var ownedElement = ownedElements[_i21];
17488
+ var _loop5 = function _loop5(_i22) {
17489
+ var ownedElement = ownedElements[_i22];
17315
17490
  var role = get_role_default(ownedElement, {
17316
17491
  noPresentational: true
17317
17492
  });
@@ -17330,14 +17505,14 @@
17330
17505
  });
17331
17506
  }
17332
17507
  };
17333
- for (var _i21 = 0; _i21 < ownedElements.length; _i21++) {
17334
- _loop5(_i21);
17508
+ for (var _i22 = 0; _i22 < ownedElements.length; _i22++) {
17509
+ _loop5(_i22);
17335
17510
  }
17336
17511
  return ownedRoles;
17337
17512
  }
17338
17513
  function missingRequiredChildren(virtualNode, role, required, ownedRoles) {
17339
- var _loop6 = function _loop6(_i22) {
17340
- var role2 = ownedRoles[_i22].role;
17514
+ var _loop6 = function _loop6(_i23) {
17515
+ var role2 = ownedRoles[_i23].role;
17341
17516
  if (required.includes(role2)) {
17342
17517
  required = required.filter(function(requiredRole) {
17343
17518
  return requiredRole !== role2;
@@ -17347,8 +17522,8 @@
17347
17522
  };
17348
17523
  }
17349
17524
  };
17350
- for (var _i22 = 0; _i22 < ownedRoles.length; _i22++) {
17351
- var _ret2 = _loop6(_i22);
17525
+ for (var _i23 = 0; _i23 < ownedRoles.length; _i23++) {
17526
+ var _ret2 = _loop6(_i23);
17352
17527
  if (_typeof(_ret2) === 'object') {
17353
17528
  return _ret2.v;
17354
17529
  }
@@ -17368,13 +17543,13 @@
17368
17543
  return true;
17369
17544
  }
17370
17545
  var ownedRoles = getOwnedRoles(virtualNode, required);
17371
- var unallowed = ownedRoles.filter(function(_ref72) {
17372
- var role2 = _ref72.role;
17546
+ var unallowed = ownedRoles.filter(function(_ref75) {
17547
+ var role2 = _ref75.role;
17373
17548
  return !required.includes(role2);
17374
17549
  });
17375
17550
  if (unallowed.length) {
17376
- this.relatedNodes(unallowed.map(function(_ref73) {
17377
- var ownedElement = _ref73.ownedElement;
17551
+ this.relatedNodes(unallowed.map(function(_ref76) {
17552
+ var ownedElement = _ref76.ownedElement;
17378
17553
  return ownedElement;
17379
17554
  }));
17380
17555
  this.data({
@@ -17448,8 +17623,8 @@
17448
17623
  }
17449
17624
  var owners = getAriaOwners(node);
17450
17625
  if (owners) {
17451
- for (var _i23 = 0, l = owners.length; _i23 < l; _i23++) {
17452
- missingParents = getMissingContext(get_node_from_tree_default(owners[_i23]), ownGroupRoles, missingParents, true);
17626
+ for (var _i24 = 0, l = owners.length; _i24 < l; _i24++) {
17627
+ missingParents = getMissingContext(get_node_from_tree_default(owners[_i24]), ownGroupRoles, missingParents, true);
17453
17628
  if (!missingParents) {
17454
17629
  return true;
17455
17630
  }
@@ -17976,7 +18151,7 @@
17976
18151
  return true;
17977
18152
  }
17978
18153
  function getTextShadowColors(node) {
17979
- var _ref74 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, minRatio = _ref74.minRatio, maxRatio = _ref74.maxRatio;
18154
+ var _ref77 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, minRatio = _ref77.minRatio, maxRatio = _ref77.maxRatio;
17980
18155
  var style = window.getComputedStyle(node);
17981
18156
  var textShadow = style.getPropertyValue('text-shadow');
17982
18157
  if (textShadow === 'none') {
@@ -17987,8 +18162,8 @@
17987
18162
  assert_default(isNaN(fontSize) === false, 'Unable to determine font-size value '.concat(fontSizeStr));
17988
18163
  var shadowColors = [];
17989
18164
  var shadows = parseTextShadows(textShadow);
17990
- shadows.forEach(function(_ref75) {
17991
- var colorStr = _ref75.colorStr, pixels = _ref75.pixels;
18165
+ shadows.forEach(function(_ref78) {
18166
+ var colorStr = _ref78.colorStr, pixels = _ref78.pixels;
17992
18167
  colorStr = colorStr || style.getPropertyValue('color');
17993
18168
  var _pixels = _slicedToArray(pixels, 3), offsetY = _pixels[0], offsetX = _pixels[1], _pixels$ = _pixels[2], blurRadius = _pixels$ === void 0 ? 0 : _pixels$;
17994
18169
  if ((!minRatio || blurRadius >= fontSize * minRatio) && (!maxRatio || blurRadius < fontSize * maxRatio)) {
@@ -18038,8 +18213,8 @@
18038
18213
  }
18039
18214
  return shadows;
18040
18215
  }
18041
- function textShadowColor(_ref76) {
18042
- var colorStr = _ref76.colorStr, offsetX = _ref76.offsetX, offsetY = _ref76.offsetY, blurRadius = _ref76.blurRadius, fontSize = _ref76.fontSize;
18216
+ function textShadowColor(_ref79) {
18217
+ var colorStr = _ref79.colorStr, offsetX = _ref79.offsetX, offsetY = _ref79.offsetY, blurRadius = _ref79.blurRadius, fontSize = _ref79.fontSize;
18043
18218
  if (offsetX > blurRadius || offsetY > blurRadius) {
18044
18219
  return new color_default(0, 0, 0, 0);
18045
18220
  }
@@ -18216,8 +18391,8 @@
18216
18391
  function getTextColor(nodeStyle) {
18217
18392
  return new color_default().parseString(nodeStyle.getPropertyValue('-webkit-text-fill-color') || nodeStyle.getPropertyValue('color'));
18218
18393
  }
18219
- function getStrokeColor(nodeStyle, _ref77) {
18220
- var _ref77$textStrokeEmMi = _ref77.textStrokeEmMin, textStrokeEmMin = _ref77$textStrokeEmMi === void 0 ? 0 : _ref77$textStrokeEmMi;
18394
+ function getStrokeColor(nodeStyle, _ref80) {
18395
+ var _ref80$textStrokeEmMi = _ref80.textStrokeEmMin, textStrokeEmMin = _ref80$textStrokeEmMi === void 0 ? 0 : _ref80$textStrokeEmMi;
18221
18396
  var strokeWidth = parseFloat(nodeStyle.getPropertyValue('-webkit-text-stroke-width'));
18222
18397
  if (strokeWidth === 0) {
18223
18398
  return null;
@@ -18279,7 +18454,7 @@
18279
18454
  var bold = parseFloat(fontWeight) >= boldValue || fontWeight === 'bold';
18280
18455
  var ptSize = Math.ceil(fontSize * 72) / 96;
18281
18456
  var isSmallFont = bold && ptSize < boldTextPt || !bold && ptSize < largeTextPt;
18282
- var _ref78 = isSmallFont ? contrastRatio.normal : contrastRatio.large, expected = _ref78.expected, minThreshold = _ref78.minThreshold, maxThreshold = _ref78.maxThreshold;
18457
+ var _ref81 = isSmallFont ? contrastRatio.normal : contrastRatio.large, expected = _ref81.expected, minThreshold = _ref81.minThreshold, maxThreshold = _ref81.maxThreshold;
18283
18458
  var pseudoElm = findPseudoElement(virtualNode, {
18284
18459
  ignorePseudo: ignorePseudo,
18285
18460
  pseudoSizeThreshold: pseudoSizeThreshold
@@ -18358,8 +18533,8 @@
18358
18533
  }
18359
18534
  return isValid;
18360
18535
  }
18361
- function findPseudoElement(vNode, _ref79) {
18362
- var _ref79$pseudoSizeThre = _ref79.pseudoSizeThreshold, pseudoSizeThreshold = _ref79$pseudoSizeThre === void 0 ? .25 : _ref79$pseudoSizeThre, _ref79$ignorePseudo = _ref79.ignorePseudo, ignorePseudo = _ref79$ignorePseudo === void 0 ? false : _ref79$ignorePseudo;
18536
+ function findPseudoElement(vNode, _ref82) {
18537
+ var _ref82$pseudoSizeThre = _ref82.pseudoSizeThreshold, pseudoSizeThreshold = _ref82$pseudoSizeThre === void 0 ? .25 : _ref82$pseudoSizeThre, _ref82$ignorePseudo = _ref82.ignorePseudo, ignorePseudo = _ref82$ignorePseudo === void 0 ? false : _ref82$ignorePseudo;
18363
18538
  if (ignorePseudo) {
18364
18539
  return;
18365
18540
  }
@@ -18401,7 +18576,7 @@
18401
18576
  }
18402
18577
  function parseUnit(str) {
18403
18578
  var unitRegex = /^([0-9.]+)([a-z]+)$/i;
18404
- var _ref80 = str.match(unitRegex) || [], _ref81 = _slicedToArray(_ref80, 3), _ref81$ = _ref81[1], value = _ref81$ === void 0 ? '' : _ref81$, _ref81$2 = _ref81[2], unit = _ref81$2 === void 0 ? '' : _ref81$2;
18579
+ var _ref83 = str.match(unitRegex) || [], _ref84 = _slicedToArray(_ref83, 3), _ref84$ = _ref84[1], value = _ref84$ === void 0 ? '' : _ref84$, _ref84$2 = _ref84[2], unit = _ref84$2 === void 0 ? '' : _ref84$2;
18405
18580
  return {
18406
18581
  value: parseFloat(value),
18407
18582
  unit: unit.toLowerCase()
@@ -18418,7 +18593,7 @@
18418
18593
  return blockLike2.indexOf(display) !== -1 || display.substr(0, 6) === 'table-';
18419
18594
  }
18420
18595
  function linkInTextBlockEvaluate(node, options) {
18421
- var requiredContrastRatio = options.requiredContrastRatio;
18596
+ var requiredContrastRatio = options.requiredContrastRatio, allowSameColor = options.allowSameColor;
18422
18597
  if (isBlock2(node)) {
18423
18598
  return false;
18424
18599
  }
@@ -18460,6 +18635,9 @@
18460
18635
  if (!textContrast) {
18461
18636
  return void 0;
18462
18637
  }
18638
+ if (allowSameColor && textContrast === 1 && backgroundContrast === 1) {
18639
+ return true;
18640
+ }
18463
18641
  if (textContrast === 1 && backgroundContrast > 1) {
18464
18642
  this.data({
18465
18643
  messageKey: 'bgContrast',
@@ -18742,8 +18920,8 @@
18742
18920
  }
18743
18921
  var focusable_element_evaluate_default = focusableElementEvaluate;
18744
18922
  function focusableModalOpenEvaluate(node, options, virtualNode) {
18745
- var tabbableElements = virtualNode.tabbableElements.map(function(_ref82) {
18746
- var actualNode = _ref82.actualNode;
18923
+ var tabbableElements = virtualNode.tabbableElements.map(function(_ref85) {
18924
+ var actualNode = _ref85.actualNode;
18747
18925
  return actualNode;
18748
18926
  });
18749
18927
  if (!tabbableElements || !tabbableElements.length) {
@@ -19224,8 +19402,8 @@
19224
19402
  this.relatedNodes(relatedNodes);
19225
19403
  return true;
19226
19404
  }
19227
- function getInvalidSelector(vChild, nested, _ref83) {
19228
- var _ref83$validRoles = _ref83.validRoles, validRoles = _ref83$validRoles === void 0 ? [] : _ref83$validRoles, _ref83$validNodeNames = _ref83.validNodeNames, validNodeNames = _ref83$validNodeNames === void 0 ? [] : _ref83$validNodeNames;
19405
+ function getInvalidSelector(vChild, nested, _ref86) {
19406
+ var _ref86$validRoles = _ref86.validRoles, validRoles = _ref86$validRoles === void 0 ? [] : _ref86$validRoles, _ref86$validNodeNames = _ref86.validNodeNames, validNodeNames = _ref86$validNodeNames === void 0 ? [] : _ref86$validNodeNames;
19229
19407
  var _vChild$props = vChild.props, nodeName2 = _vChild$props.nodeName, nodeType = _vChild$props.nodeType, nodeValue = _vChild$props.nodeValue;
19230
19408
  var selector = nested ? 'div > ' : '';
19231
19409
  if (nodeType === 3 && nodeValue.trim() !== '') {
@@ -19458,8 +19636,8 @@
19458
19636
  }
19459
19637
  var no_autoplay_audio_evaluate_default = noAutoplayAudioEvaluate;
19460
19638
  function cssOrientationLockEvaluate(node, options, virtualNode, context) {
19461
- var _ref84 = context || {}, _ref84$cssom = _ref84.cssom, cssom = _ref84$cssom === void 0 ? void 0 : _ref84$cssom;
19462
- var _ref85 = options || {}, _ref85$degreeThreshol = _ref85.degreeThreshold, degreeThreshold = _ref85$degreeThreshol === void 0 ? 0 : _ref85$degreeThreshol;
19639
+ var _ref87 = context || {}, _ref87$cssom = _ref87.cssom, cssom = _ref87$cssom === void 0 ? void 0 : _ref87$cssom;
19640
+ var _ref88 = options || {}, _ref88$degreeThreshol = _ref88.degreeThreshold, degreeThreshold = _ref88$degreeThreshol === void 0 ? 0 : _ref88$degreeThreshol;
19463
19641
  if (!cssom || !cssom.length) {
19464
19642
  return void 0;
19465
19643
  }
@@ -19467,14 +19645,14 @@
19467
19645
  var relatedElements = [];
19468
19646
  var rulesGroupByDocumentFragment = groupCssomByDocument(cssom);
19469
19647
  var _loop7 = function _loop7() {
19470
- var key = _Object$keys2[_i24];
19648
+ var key = _Object$keys2[_i25];
19471
19649
  var _rulesGroupByDocument = rulesGroupByDocumentFragment[key], root = _rulesGroupByDocument.root, rules = _rulesGroupByDocument.rules;
19472
19650
  var orientationRules = rules.filter(isMediaRuleWithOrientation);
19473
19651
  if (!orientationRules.length) {
19474
19652
  return 'continue';
19475
19653
  }
19476
- orientationRules.forEach(function(_ref86) {
19477
- var cssRules = _ref86.cssRules;
19654
+ orientationRules.forEach(function(_ref89) {
19655
+ var cssRules = _ref89.cssRules;
19478
19656
  Array.from(cssRules).forEach(function(cssRule) {
19479
19657
  var locked = getIsOrientationLocked(cssRule);
19480
19658
  if (locked && cssRule.selectorText.toUpperCase() !== 'HTML') {
@@ -19485,7 +19663,7 @@
19485
19663
  });
19486
19664
  });
19487
19665
  };
19488
- for (var _i24 = 0, _Object$keys2 = Object.keys(rulesGroupByDocumentFragment); _i24 < _Object$keys2.length; _i24++) {
19666
+ for (var _i25 = 0, _Object$keys2 = Object.keys(rulesGroupByDocumentFragment); _i25 < _Object$keys2.length; _i25++) {
19489
19667
  var _ret3 = _loop7();
19490
19668
  if (_ret3 === 'continue') {
19491
19669
  continue;
@@ -19499,8 +19677,8 @@
19499
19677
  }
19500
19678
  return false;
19501
19679
  function groupCssomByDocument(cssObjectModel) {
19502
- return cssObjectModel.reduce(function(out, _ref87) {
19503
- var sheet = _ref87.sheet, root = _ref87.root, shadowId = _ref87.shadowId;
19680
+ return cssObjectModel.reduce(function(out, _ref90) {
19681
+ var sheet = _ref90.sheet, root = _ref90.root, shadowId = _ref90.shadowId;
19504
19682
  var key = shadowId ? shadowId : 'topDocument';
19505
19683
  if (!out[key]) {
19506
19684
  out[key] = {
@@ -19516,15 +19694,15 @@
19516
19694
  return out;
19517
19695
  }, {});
19518
19696
  }
19519
- function isMediaRuleWithOrientation(_ref88) {
19520
- var type = _ref88.type, cssText = _ref88.cssText;
19697
+ function isMediaRuleWithOrientation(_ref91) {
19698
+ var type = _ref91.type, cssText = _ref91.cssText;
19521
19699
  if (type !== 4) {
19522
19700
  return false;
19523
19701
  }
19524
19702
  return /orientation:\s*landscape/i.test(cssText) || /orientation:\s*portrait/i.test(cssText);
19525
19703
  }
19526
- function getIsOrientationLocked(_ref89) {
19527
- var selectorText = _ref89.selectorText, style = _ref89.style;
19704
+ function getIsOrientationLocked(_ref92) {
19705
+ var selectorText = _ref92.selectorText, style = _ref92.style;
19528
19706
  if (!selectorText || style.length <= 0) {
19529
19707
  return false;
19530
19708
  }
@@ -19571,7 +19749,7 @@
19571
19749
  }
19572
19750
  }
19573
19751
  function getAngleInDegrees(angleWithUnit) {
19574
- var _ref90 = angleWithUnit.match(/(deg|grad|rad|turn)/) || [], _ref91 = _slicedToArray(_ref90, 1), unit = _ref91[0];
19752
+ var _ref93 = angleWithUnit.match(/(deg|grad|rad|turn)/) || [], _ref94 = _slicedToArray(_ref93, 1), unit = _ref94[0];
19575
19753
  if (!unit) {
19576
19754
  return;
19577
19755
  }
@@ -19620,7 +19798,7 @@
19620
19798
  }
19621
19799
  var css_orientation_lock_evaluate_default = cssOrientationLockEvaluate;
19622
19800
  function metaViewportScaleEvaluate(node, options, virtualNode) {
19623
- var _ref92 = options || {}, _ref92$scaleMinimum = _ref92.scaleMinimum, scaleMinimum = _ref92$scaleMinimum === void 0 ? 2 : _ref92$scaleMinimum, _ref92$lowerBound = _ref92.lowerBound, lowerBound = _ref92$lowerBound === void 0 ? false : _ref92$lowerBound;
19801
+ var _ref95 = options || {}, _ref95$scaleMinimum = _ref95.scaleMinimum, scaleMinimum = _ref95$scaleMinimum === void 0 ? 2 : _ref95$scaleMinimum, _ref95$lowerBound = _ref95.lowerBound, lowerBound = _ref95$lowerBound === void 0 ? false : _ref95$lowerBound;
19624
19802
  var content = virtualNode.attr('content') || '';
19625
19803
  if (!content) {
19626
19804
  return true;
@@ -19695,8 +19873,8 @@
19695
19873
  });
19696
19874
  return true;
19697
19875
  }
19698
- this.relatedNodes(closeNeighbors.map(function(_ref93) {
19699
- var actualNode = _ref93.actualNode;
19876
+ this.relatedNodes(closeNeighbors.map(function(_ref96) {
19877
+ var actualNode = _ref96.actualNode;
19700
19878
  return actualNode;
19701
19879
  }));
19702
19880
  if (!closeNeighbors.some(_isInTabOrder)) {
@@ -19801,8 +19979,8 @@
19801
19979
  if (obscuredNodes.length === 0) {
19802
19980
  return null;
19803
19981
  }
19804
- var obscuringRects = obscuredNodes.map(function(_ref94) {
19805
- var rect = _ref94.boundingClientRect;
19982
+ var obscuringRects = obscuredNodes.map(function(_ref97) {
19983
+ var rect = _ref97.boundingClientRect;
19806
19984
  return rect;
19807
19985
  });
19808
19986
  var unobscuredRects = _splitRects(nodeRect, obscuringRects);
@@ -19842,13 +20020,13 @@
19842
20020
  function isDescendantNotInTabOrder(vAncestor, vNode) {
19843
20021
  return vAncestor.actualNode.contains(vNode.actualNode) && !_isInTabOrder(vNode);
19844
20022
  }
19845
- function rectHasMinimumSize(minSize, _ref95) {
19846
- var width = _ref95.width, height = _ref95.height;
20023
+ function rectHasMinimumSize(minSize, _ref98) {
20024
+ var width = _ref98.width, height = _ref98.height;
19847
20025
  return width + roundingMargin2 >= minSize && height + roundingMargin2 >= minSize;
19848
20026
  }
19849
20027
  function mapActualNodes(vNodes) {
19850
- return vNodes.map(function(_ref96) {
19851
- var actualNode = _ref96.actualNode;
20028
+ return vNodes.map(function(_ref99) {
20029
+ var actualNode = _ref99.actualNode;
19852
20030
  return actualNode;
19853
20031
  });
19854
20032
  }
@@ -19874,14 +20052,14 @@
19874
20052
  }
19875
20053
  function getHeadingOrder(results) {
19876
20054
  results = _toConsumableArray(results);
19877
- results.sort(function(_ref97, _ref98) {
19878
- var nodeA = _ref97.node;
19879
- var nodeB = _ref98.node;
20055
+ results.sort(function(_ref100, _ref101) {
20056
+ var nodeA = _ref100.node;
20057
+ var nodeB = _ref101.node;
19880
20058
  return nodeA.ancestry.length - nodeB.ancestry.length;
19881
20059
  });
19882
20060
  var headingOrder = results.reduce(mergeHeadingOrder, []);
19883
- return headingOrder.filter(function(_ref99) {
19884
- var level = _ref99.level;
20061
+ return headingOrder.filter(function(_ref102) {
20062
+ var level = _ref102.level;
19885
20063
  return level !== -1;
19886
20064
  });
19887
20065
  }
@@ -19932,7 +20110,7 @@
19932
20110
  var headingRole = role && role.includes('heading');
19933
20111
  var ariaHeadingLevel = vNode.attr('aria-level');
19934
20112
  var ariaLevel = parseInt(ariaHeadingLevel, 10);
19935
- var _ref100 = vNode.props.nodeName.match(/h(\d)/) || [], _ref101 = _slicedToArray(_ref100, 2), headingLevel = _ref101[1];
20113
+ var _ref103 = vNode.props.nodeName.match(/h(\d)/) || [], _ref104 = _slicedToArray(_ref103, 2), headingLevel = _ref104[1];
19936
20114
  if (!headingRole) {
19937
20115
  return -1;
19938
20116
  }
@@ -19996,8 +20174,8 @@
19996
20174
  if (results.length < 2) {
19997
20175
  return results;
19998
20176
  }
19999
- var incompleteResults = results.filter(function(_ref102) {
20000
- var result = _ref102.result;
20177
+ var incompleteResults = results.filter(function(_ref105) {
20178
+ var result = _ref105.result;
20001
20179
  return result !== void 0;
20002
20180
  });
20003
20181
  var uniqueResults = [];
@@ -20009,12 +20187,12 @@
20009
20187
  if (nameMap[name]) {
20010
20188
  return 'continue';
20011
20189
  }
20012
- var sameNameResults = incompleteResults.filter(function(_ref103, resultNum) {
20013
- var data2 = _ref103.data;
20190
+ var sameNameResults = incompleteResults.filter(function(_ref106, resultNum) {
20191
+ var data2 = _ref106.data;
20014
20192
  return data2.name === name && resultNum !== index;
20015
20193
  });
20016
- var isSameUrl = sameNameResults.every(function(_ref104) {
20017
- var data2 = _ref104.data;
20194
+ var isSameUrl = sameNameResults.every(function(_ref107) {
20195
+ var data2 = _ref107.data;
20018
20196
  return isIdenticalObject(data2.urlProps, urlProps);
20019
20197
  });
20020
20198
  if (sameNameResults.length && !isSameUrl) {
@@ -20433,7 +20611,7 @@
20433
20611
  var separatorRegex = /[;,\s]/;
20434
20612
  var validRedirectNumRegex = /^[0-9.]+$/;
20435
20613
  function metaRefreshEvaluate(node, options, virtualNode) {
20436
- var _ref105 = options || {}, minDelay = _ref105.minDelay, maxDelay = _ref105.maxDelay;
20614
+ var _ref108 = options || {}, minDelay = _ref108.minDelay, maxDelay = _ref108.maxDelay;
20437
20615
  var content = (virtualNode.attr('content') || '').trim();
20438
20616
  var _content$split = content.split(separatorRegex), _content$split2 = _slicedToArray(_content$split, 1), redirectStr = _content$split2[0];
20439
20617
  if (!redirectStr.match(validRedirectNumRegex)) {
@@ -20473,16 +20651,16 @@
20473
20651
  var outerText = elm.textContent.trim();
20474
20652
  var innerText = outerText;
20475
20653
  while (innerText === outerText && nextNode !== void 0) {
20476
- var _i25 = -1;
20654
+ var _i26 = -1;
20477
20655
  elm = nextNode;
20478
20656
  if (elm.children.length === 0) {
20479
20657
  return elm;
20480
20658
  }
20481
20659
  do {
20482
- _i25++;
20483
- innerText = elm.children[_i25].textContent.trim();
20484
- } while (innerText === '' && _i25 + 1 < elm.children.length);
20485
- nextNode = elm.children[_i25];
20660
+ _i26++;
20661
+ innerText = elm.children[_i26].textContent.trim();
20662
+ } while (innerText === '' && _i26 + 1 < elm.children.length);
20663
+ nextNode = elm.children[_i26];
20486
20664
  }
20487
20665
  return elm;
20488
20666
  }
@@ -20605,8 +20783,8 @@
20605
20783
  } else if (node !== document.body && has_content_default(node, true)) {
20606
20784
  return [ virtualNode ];
20607
20785
  } else {
20608
- return virtualNode.children.filter(function(_ref106) {
20609
- var actualNode = _ref106.actualNode;
20786
+ return virtualNode.children.filter(function(_ref109) {
20787
+ var actualNode = _ref109.actualNode;
20610
20788
  return actualNode.nodeType === 1;
20611
20789
  }).map(function(vNode) {
20612
20790
  return findRegionlessElms(vNode, options);
@@ -20759,8 +20937,8 @@
20759
20937
  }
20760
20938
  return false;
20761
20939
  }
20762
- function getNumberValue(domNode, _ref107) {
20763
- var cssProperty = _ref107.cssProperty, absoluteValues = _ref107.absoluteValues, normalValue = _ref107.normalValue;
20940
+ function getNumberValue(domNode, _ref110) {
20941
+ var cssProperty = _ref110.cssProperty, absoluteValues = _ref110.absoluteValues, normalValue = _ref110.normalValue;
20764
20942
  var computedStyle = window.getComputedStyle(domNode);
20765
20943
  var cssPropValue = computedStyle.getPropertyValue(cssProperty);
20766
20944
  if (cssPropValue === 'normal') {
@@ -20837,8 +21015,8 @@
20837
21015
  if (!virtualNode.children) {
20838
21016
  return void 0;
20839
21017
  }
20840
- var titleNode = virtualNode.children.find(function(_ref108) {
20841
- var props = _ref108.props;
21018
+ var titleNode = virtualNode.children.find(function(_ref111) {
21019
+ var props = _ref111.props;
20842
21020
  return props.nodeName === 'title';
20843
21021
  });
20844
21022
  if (!titleNode) {
@@ -21040,8 +21218,8 @@
21040
21218
  var aria = /^aria-/;
21041
21219
  var attrs = virtualNode.attrNames;
21042
21220
  if (attrs.length) {
21043
- for (var _i26 = 0, l = attrs.length; _i26 < l; _i26++) {
21044
- if (aria.test(attrs[_i26])) {
21221
+ for (var _i27 = 0, l = attrs.length; _i27 < l; _i27++) {
21222
+ if (aria.test(attrs[_i27])) {
21045
21223
  return true;
21046
21224
  }
21047
21225
  }
@@ -21142,7 +21320,7 @@
21142
21320
  if (nodeName2 === 'input' && nonTextInput.includes(inputType)) {
21143
21321
  return false;
21144
21322
  }
21145
- if (is_disabled_default(virtualNode)) {
21323
+ if (is_disabled_default(virtualNode) || _isInert(virtualNode)) {
21146
21324
  return false;
21147
21325
  }
21148
21326
  var formElements = [ 'input', 'select', 'textarea' ];
@@ -21197,13 +21375,7 @@
21197
21375
  if (ariaLabelledbyControls.length > 0 && ariaLabelledbyControls.every(is_disabled_default)) {
21198
21376
  return false;
21199
21377
  }
21200
- var visibleText = visible_virtual_default(virtualNode, false, true);
21201
- var removeUnicodeOptions = {
21202
- emoji: true,
21203
- nonBmp: false,
21204
- punctuations: true
21205
- };
21206
- if (!visibleText || !remove_unicode_default(visibleText, removeUnicodeOptions)) {
21378
+ if (!hasRealTextChildren(virtualNode)) {
21207
21379
  return false;
21208
21380
  }
21209
21381
  var range = document.createRange();
@@ -21223,6 +21395,20 @@
21223
21395
  return false;
21224
21396
  }
21225
21397
  var color_contrast_matches_default = colorContrastMatches;
21398
+ var removeUnicodeOptions = {
21399
+ emoji: true,
21400
+ nonBmp: false,
21401
+ punctuations: true
21402
+ };
21403
+ function hasRealTextChildren(virtualNode) {
21404
+ var visibleText = visible_virtual_default(virtualNode, false, true);
21405
+ if (visibleText === '' || remove_unicode_default(visibleText, removeUnicodeOptions) === '') {
21406
+ return false;
21407
+ }
21408
+ return virtualNode.children.some(function(vChild) {
21409
+ return vChild.props.nodeName === '#text' && !is_icon_ligature_default(vChild);
21410
+ });
21411
+ }
21226
21412
  function dataTableLargeMatches(node) {
21227
21413
  if (is_data_table_default(node)) {
21228
21414
  var tableArray = to_grid_default(node);
@@ -21425,7 +21611,7 @@
21425
21611
  if (!role || [ 'none', 'presentation' ].includes(role)) {
21426
21612
  return true;
21427
21613
  }
21428
- var _ref109 = aria_roles_default[role] || {}, accessibleNameRequired = _ref109.accessibleNameRequired;
21614
+ var _ref112 = aria_roles_default[role] || {}, accessibleNameRequired = _ref112.accessibleNameRequired;
21429
21615
  if (accessibleNameRequired || _isFocusable(virtualNode)) {
21430
21616
  return true;
21431
21617
  }
@@ -21440,6 +21626,11 @@
21440
21626
  if (get_explicit_role_default(virtualNode) === 'combobox' && query_selector_all_default(virtualNode, 'input:not([type="hidden"])').length) {
21441
21627
  return false;
21442
21628
  }
21629
+ if (_isComboboxPopup(virtualNode, {
21630
+ popupRoles: [ 'listbox' ]
21631
+ })) {
21632
+ return false;
21633
+ }
21443
21634
  return true;
21444
21635
  }
21445
21636
  var no_naming_method_matches_default = noNamingMethodMatches;
@@ -21491,37 +21682,13 @@
21491
21682
  }
21492
21683
  var presentation_role_conflict_matches_default = presentationRoleConflictMatches;
21493
21684
  function scrollableRegionFocusableMatches(node, virtualNode) {
21494
- if (!!_getScroll(node, 13) === false) {
21495
- return false;
21496
- }
21497
- var role = get_explicit_role_default(virtualNode);
21498
- if (aria_attrs_default['aria-haspopup'].values.includes(role)) {
21499
- if (closest_default(virtualNode, '[role~="combobox"]')) {
21500
- return false;
21501
- }
21502
- var id = virtualNode.attr('id');
21503
- if (id) {
21504
- var doc = get_root_node_default(node);
21505
- var owned = Array.from(doc.querySelectorAll('[aria-owns~="'.concat(id, '"], [aria-controls~="').concat(id, '"]')));
21506
- var comboboxOwned = owned.some(function(el) {
21507
- var roles = token_list_default(el.getAttribute('role'));
21508
- return roles.includes('combobox');
21509
- });
21510
- if (comboboxOwned) {
21511
- return false;
21512
- }
21513
- }
21514
- }
21515
- var nodeAndDescendents = query_selector_all_default(virtualNode, '*');
21516
- var hasVisibleChildren = nodeAndDescendents.some(function(elm) {
21685
+ return _getScroll(node, 13) !== void 0 && _isComboboxPopup(virtualNode) === false && isNoneEmptyElement(virtualNode);
21686
+ }
21687
+ function isNoneEmptyElement(vNode) {
21688
+ return query_selector_all_default(vNode, '*').some(function(elm) {
21517
21689
  return has_content_virtual_default(elm, true, true);
21518
21690
  });
21519
- if (!hasVisibleChildren) {
21520
- return false;
21521
- }
21522
- return true;
21523
21691
  }
21524
- var scrollable_region_focusable_matches_default = scrollableRegionFocusableMatches;
21525
21692
  function skipLinkMatches(node) {
21526
21693
  return _isSkipLink(node) && is_offscreen_default(node);
21527
21694
  }
@@ -21710,7 +21877,7 @@
21710
21877
  'region-evaluate': regionEvaluate,
21711
21878
  'same-caption-summary-evaluate': same_caption_summary_evaluate_default,
21712
21879
  'scope-value-evaluate': scope_value_evaluate_default,
21713
- 'scrollable-region-focusable-matches': scrollable_region_focusable_matches_default,
21880
+ 'scrollable-region-focusable-matches': scrollableRegionFocusableMatches,
21714
21881
  'skip-link-evaluate': skip_link_evaluate_default,
21715
21882
  'skip-link-matches': skip_link_matches_default,
21716
21883
  'structured-dlitems-evaluate': structured_dlitems_evaluate_default,
@@ -22333,8 +22500,8 @@
22333
22500
  lang: this.lang
22334
22501
  };
22335
22502
  var checkIDs = Object.keys(this.data.checks);
22336
- for (var _i27 = 0; _i27 < checkIDs.length; _i27++) {
22337
- var id = checkIDs[_i27];
22503
+ for (var _i28 = 0; _i28 < checkIDs.length; _i28++) {
22504
+ var id = checkIDs[_i28];
22338
22505
  var check = this.data.checks[id];
22339
22506
  var _check$messages = check.messages, pass = _check$messages.pass, fail = _check$messages.fail, incomplete = _check$messages.incomplete;
22340
22507
  locale.checks[id] = {
@@ -22344,8 +22511,8 @@
22344
22511
  };
22345
22512
  }
22346
22513
  var ruleIDs = Object.keys(this.data.rules);
22347
- for (var _i28 = 0; _i28 < ruleIDs.length; _i28++) {
22348
- var _id = ruleIDs[_i28];
22514
+ for (var _i29 = 0; _i29 < ruleIDs.length; _i29++) {
22515
+ var _id = ruleIDs[_i29];
22349
22516
  var rule = this.data.rules[_id];
22350
22517
  var description = rule.description, help = rule.help;
22351
22518
  locale.rules[_id] = {
@@ -22354,8 +22521,8 @@
22354
22521
  };
22355
22522
  }
22356
22523
  var failureSummaries = Object.keys(this.data.failureSummaries);
22357
- for (var _i29 = 0; _i29 < failureSummaries.length; _i29++) {
22358
- var type = failureSummaries[_i29];
22524
+ for (var _i30 = 0; _i30 < failureSummaries.length; _i30++) {
22525
+ var type = failureSummaries[_i30];
22359
22526
  var failureSummary2 = this.data.failureSummaries[type];
22360
22527
  var failureMessage = failureSummary2.failureMessage;
22361
22528
  locale.failureSummaries[type] = {
@@ -22378,8 +22545,8 @@
22378
22545
  key: '_applyCheckLocale',
22379
22546
  value: function _applyCheckLocale(checks) {
22380
22547
  var keys = Object.keys(checks);
22381
- for (var _i30 = 0; _i30 < keys.length; _i30++) {
22382
- var id = keys[_i30];
22548
+ for (var _i31 = 0; _i31 < keys.length; _i31++) {
22549
+ var id = keys[_i31];
22383
22550
  if (!this.data.checks[id]) {
22384
22551
  throw new Error('Locale provided for unknown check: "'.concat(id, '"'));
22385
22552
  }
@@ -22390,8 +22557,8 @@
22390
22557
  key: '_applyRuleLocale',
22391
22558
  value: function _applyRuleLocale(rules) {
22392
22559
  var keys = Object.keys(rules);
22393
- for (var _i31 = 0; _i31 < keys.length; _i31++) {
22394
- var id = keys[_i31];
22560
+ for (var _i32 = 0; _i32 < keys.length; _i32++) {
22561
+ var id = keys[_i32];
22395
22562
  if (!this.data.rules[id]) {
22396
22563
  throw new Error('Locale provided for unknown rule: "'.concat(id, '"'));
22397
22564
  }
@@ -22402,8 +22569,8 @@
22402
22569
  key: '_applyFailureSummaries',
22403
22570
  value: function _applyFailureSummaries(messages) {
22404
22571
  var keys = Object.keys(messages);
22405
- for (var _i32 = 0; _i32 < keys.length; _i32++) {
22406
- var key = keys[_i32];
22572
+ for (var _i33 = 0; _i33 < keys.length; _i33++) {
22573
+ var key = keys[_i33];
22407
22574
  if (!this.data.failureSummaries[key]) {
22408
22575
  throw new Error('Locale provided for unknown failureMessage: "'.concat(key, '"'));
22409
22576
  }
@@ -22752,8 +22919,8 @@
22752
22919
  });
22753
22920
  };
22754
22921
  }
22755
- function getHelpUrl(_ref110, ruleId, version) {
22756
- var brand = _ref110.brand, application = _ref110.application, lang = _ref110.lang;
22922
+ function getHelpUrl(_ref113, ruleId, version) {
22923
+ var brand = _ref113.brand, application = _ref113.application, lang = _ref113.lang;
22757
22924
  return constants_default.helpUrlBase + brand + '/' + (version || axe.version.substring(0, axe.version.lastIndexOf('.'))) + '/' + ruleId + '?application=' + encodeURIComponent(application) + (lang && lang !== 'en' ? '&lang=' + encodeURIComponent(lang) : '');
22758
22925
  }
22759
22926
  var audit_default = Audit;
@@ -22969,9 +23136,9 @@
22969
23136
  toolOptions: options
22970
23137
  });
22971
23138
  }
22972
- function normalizeRunParams(_ref111) {
22973
- var _ref113, _options$reporter, _axe$_audit;
22974
- var _ref112 = _slicedToArray(_ref111, 3), context = _ref112[0], options = _ref112[1], callback = _ref112[2];
23139
+ function normalizeRunParams(_ref114) {
23140
+ var _ref116, _options$reporter, _axe$_audit;
23141
+ var _ref115 = _slicedToArray(_ref114, 3), context = _ref115[0], options = _ref115[1], callback = _ref115[2];
22975
23142
  var typeErr = new TypeError('axe.run arguments are invalid');
22976
23143
  if (!isContextSpec(context)) {
22977
23144
  if (callback !== void 0) {
@@ -22992,7 +23159,7 @@
22992
23159
  throw typeErr;
22993
23160
  }
22994
23161
  options = clone_default(options);
22995
- options.reporter = (_ref113 = (_options$reporter = options.reporter) !== null && _options$reporter !== void 0 ? _options$reporter : (_axe$_audit = axe._audit) === null || _axe$_audit === void 0 ? void 0 : _axe$_audit.reporter) !== null && _ref113 !== void 0 ? _ref113 : 'v1';
23162
+ options.reporter = (_ref116 = (_options$reporter = options.reporter) !== null && _options$reporter !== void 0 ? _options$reporter : (_axe$_audit = axe._audit) === null || _axe$_audit === void 0 ? void 0 : _axe$_audit.reporter) !== null && _ref116 !== void 0 ? _ref116 : 'v1';
22996
23163
  return {
22997
23164
  context: context,
22998
23165
  options: options,
@@ -23097,14 +23264,14 @@
23097
23264
  return new Promise(function(res, rej) {
23098
23265
  axe._audit.run(contextObj, options, res, rej);
23099
23266
  }).then(function(results) {
23100
- results = results.map(function(_ref114) {
23101
- var nodes = _ref114.nodes, result = _objectWithoutProperties(_ref114, _excluded8);
23267
+ results = results.map(function(_ref117) {
23268
+ var nodes = _ref117.nodes, result = _objectWithoutProperties(_ref117, _excluded8);
23102
23269
  return _extends({
23103
23270
  nodes: nodes.map(serializeNode)
23104
23271
  }, result);
23105
23272
  });
23106
- var frames = contextObj.frames.map(function(_ref115) {
23107
- var node = _ref115.node;
23273
+ var frames = contextObj.frames.map(function(_ref118) {
23274
+ var node = _ref118.node;
23108
23275
  return new dq_element_default(node, options).toJSON();
23109
23276
  });
23110
23277
  var environmentData;
@@ -23124,13 +23291,13 @@
23124
23291
  return Promise.reject(err2);
23125
23292
  });
23126
23293
  }
23127
- function serializeNode(_ref116) {
23128
- var node = _ref116.node, nodeResult = _objectWithoutProperties(_ref116, _excluded9);
23294
+ function serializeNode(_ref119) {
23295
+ var node = _ref119.node, nodeResult = _objectWithoutProperties(_ref119, _excluded9);
23129
23296
  nodeResult.node = node.toJSON();
23130
- for (var _i33 = 0, _arr2 = [ 'any', 'all', 'none' ]; _i33 < _arr2.length; _i33++) {
23131
- var type = _arr2[_i33];
23132
- nodeResult[type] = nodeResult[type].map(function(_ref117) {
23133
- var relatedNodes = _ref117.relatedNodes, checkResult = _objectWithoutProperties(_ref117, _excluded10);
23297
+ for (var _i34 = 0, _arr2 = [ 'any', 'all', 'none' ]; _i34 < _arr2.length; _i34++) {
23298
+ var type = _arr2[_i34];
23299
+ nodeResult[type] = nodeResult[type].map(function(_ref120) {
23300
+ var relatedNodes = _ref120.relatedNodes, checkResult = _objectWithoutProperties(_ref120, _excluded10);
23134
23301
  return _extends({}, checkResult, {
23135
23302
  relatedNodes: relatedNodes.map(function(node2) {
23136
23303
  return node2.toJSON();
@@ -23141,14 +23308,14 @@
23141
23308
  return nodeResult;
23142
23309
  }
23143
23310
  function finishRun(partialResults) {
23144
- var _ref119, _options$reporter2, _axe$_audit2;
23311
+ var _ref122, _options$reporter2, _axe$_audit2;
23145
23312
  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
23146
23313
  options = clone_default(options);
23147
- var _ref118 = partialResults.find(function(r) {
23314
+ var _ref121 = partialResults.find(function(r) {
23148
23315
  return r.environmentData;
23149
- }) || {}, environmentData = _ref118.environmentData;
23316
+ }) || {}, environmentData = _ref121.environmentData;
23150
23317
  axe._audit.normalizeOptions(options);
23151
- options.reporter = (_ref119 = (_options$reporter2 = options.reporter) !== null && _options$reporter2 !== void 0 ? _options$reporter2 : (_axe$_audit2 = axe._audit) === null || _axe$_audit2 === void 0 ? void 0 : _axe$_audit2.reporter) !== null && _ref119 !== void 0 ? _ref119 : 'v1';
23318
+ options.reporter = (_ref122 = (_options$reporter2 = options.reporter) !== null && _options$reporter2 !== void 0 ? _options$reporter2 : (_axe$_audit2 = axe._audit) === null || _axe$_audit2 === void 0 ? void 0 : _axe$_audit2.reporter) !== null && _ref122 !== void 0 ? _ref122 : 'v1';
23152
23319
  setFrameSpec(partialResults);
23153
23320
  var results = merge_results_default(partialResults);
23154
23321
  results = axe._audit.after(results, options);
@@ -23178,8 +23345,8 @@
23178
23345
  _iterator12.f();
23179
23346
  }
23180
23347
  }
23181
- function getMergedFrameSpecs(_ref120) {
23182
- var childFrameSpecs = _ref120.frames, parentFrameSpec = _ref120.frameSpec;
23348
+ function getMergedFrameSpecs(_ref123) {
23349
+ var childFrameSpecs = _ref123.frames, parentFrameSpec = _ref123.frameSpec;
23183
23350
  if (!parentFrameSpec) {
23184
23351
  return childFrameSpecs;
23185
23352
  }
@@ -23239,12 +23406,12 @@
23239
23406
  var transformedResults = results.map(function(result) {
23240
23407
  var transformedResult = _extends({}, result);
23241
23408
  var types = [ 'passes', 'violations', 'incomplete', 'inapplicable' ];
23242
- for (var _i34 = 0, _types = types; _i34 < _types.length; _i34++) {
23243
- var type = _types[_i34];
23409
+ for (var _i35 = 0, _types = types; _i35 < _types.length; _i35++) {
23410
+ var type = _types[_i35];
23244
23411
  if (transformedResult[type] && Array.isArray(transformedResult[type])) {
23245
- transformedResult[type] = transformedResult[type].map(function(_ref121) {
23412
+ transformedResult[type] = transformedResult[type].map(function(_ref124) {
23246
23413
  var _node;
23247
- var node = _ref121.node, typeResult = _objectWithoutProperties(_ref121, _excluded13);
23414
+ var node = _ref124.node, typeResult = _objectWithoutProperties(_ref124, _excluded13);
23248
23415
  node = typeof ((_node = node) === null || _node === void 0 ? void 0 : _node.toJSON) === 'function' ? node.toJSON() : node;
23249
23416
  return _extends({
23250
23417
  node: node
@@ -25678,7 +25845,8 @@
25678
25845
  all: [],
25679
25846
  any: [ {
25680
25847
  options: {
25681
- requiredContrastRatio: 3
25848
+ requiredContrastRatio: 3,
25849
+ allowSameColor: true
25682
25850
  },
25683
25851
  id: 'link-in-text-block'
25684
25852
  }, 'link-in-text-block-style' ],
@@ -25914,6 +26082,7 @@
25914
26082
  none: []
25915
26083
  }, {
25916
26084
  id: 'scrollable-region-focusable',
26085
+ selector: '*:not(select,textarea)',
25917
26086
  matches: 'scrollable-region-focusable-matches',
25918
26087
  tags: [ 'cat.keyboard', 'wcag2a', 'wcag211' ],
25919
26088
  actIds: [ '0ssw9k' ],
@@ -26201,7 +26370,8 @@
26201
26370
  id: 'link-in-text-block',
26202
26371
  evaluate: 'link-in-text-block-evaluate',
26203
26372
  options: {
26204
- requiredContrastRatio: 3
26373
+ requiredContrastRatio: 3,
26374
+ allowSameColor: true
26205
26375
  }
26206
26376
  }, {
26207
26377
  id: 'autocomplete-appropriate',