govuk_publishing_components 34.4.2 → 34.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (83) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/govuk_publishing_components/analytics-ga4/ga4-core.js +1 -29
  3. data/app/assets/javascripts/govuk_publishing_components/analytics-ga4.js +0 -1
  4. data/app/assets/javascripts/govuk_publishing_components/components/cookie-banner.js +2 -2
  5. data/app/assets/javascripts/govuk_publishing_components/dependencies.js +0 -10
  6. data/app/assets/javascripts/govuk_publishing_components/load-analytics.js +126 -30
  7. data/app/assets/javascripts/govuk_publishing_components/modules.js +7 -2
  8. data/app/views/govuk_publishing_components/components/_cookie_banner.html.erb +8 -4
  9. data/app/views/govuk_publishing_components/components/_image_card.html.erb +1 -1
  10. data/app/views/govuk_publishing_components/components/_layout_for_public.html.erb +3 -3
  11. data/app/views/govuk_publishing_components/components/_layout_super_navigation_header.html.erb +33 -4
  12. data/config/locales/ar.yml +6 -2
  13. data/config/locales/az.yml +6 -2
  14. data/config/locales/be.yml +6 -2
  15. data/config/locales/bg.yml +6 -2
  16. data/config/locales/bn.yml +6 -2
  17. data/config/locales/cs.yml +6 -2
  18. data/config/locales/cy.yml +6 -2
  19. data/config/locales/da.yml +6 -2
  20. data/config/locales/de.yml +6 -2
  21. data/config/locales/dr.yml +6 -2
  22. data/config/locales/el.yml +6 -2
  23. data/config/locales/en.yml +7 -3
  24. data/config/locales/es-419.yml +6 -2
  25. data/config/locales/es.yml +6 -2
  26. data/config/locales/et.yml +6 -2
  27. data/config/locales/fa.yml +6 -2
  28. data/config/locales/fi.yml +6 -2
  29. data/config/locales/fr.yml +6 -2
  30. data/config/locales/gd.yml +6 -2
  31. data/config/locales/gu.yml +6 -2
  32. data/config/locales/he.yml +6 -2
  33. data/config/locales/hi.yml +6 -2
  34. data/config/locales/hr.yml +6 -2
  35. data/config/locales/hu.yml +6 -2
  36. data/config/locales/hy.yml +6 -2
  37. data/config/locales/id.yml +6 -2
  38. data/config/locales/is.yml +6 -2
  39. data/config/locales/it.yml +6 -2
  40. data/config/locales/ja.yml +6 -2
  41. data/config/locales/ka.yml +6 -2
  42. data/config/locales/kk.yml +6 -2
  43. data/config/locales/ko.yml +6 -2
  44. data/config/locales/lt.yml +6 -2
  45. data/config/locales/lv.yml +6 -2
  46. data/config/locales/ms.yml +6 -2
  47. data/config/locales/mt.yml +6 -2
  48. data/config/locales/nl.yml +6 -2
  49. data/config/locales/no.yml +6 -2
  50. data/config/locales/pa-pk.yml +6 -2
  51. data/config/locales/pa.yml +6 -2
  52. data/config/locales/pl.yml +6 -2
  53. data/config/locales/ps.yml +6 -2
  54. data/config/locales/pt.yml +6 -2
  55. data/config/locales/ro.yml +6 -2
  56. data/config/locales/ru.yml +6 -2
  57. data/config/locales/si.yml +6 -2
  58. data/config/locales/sk.yml +6 -2
  59. data/config/locales/sl.yml +6 -2
  60. data/config/locales/so.yml +6 -2
  61. data/config/locales/sq.yml +6 -2
  62. data/config/locales/sr.yml +6 -2
  63. data/config/locales/sv.yml +6 -2
  64. data/config/locales/sw.yml +6 -2
  65. data/config/locales/ta.yml +6 -2
  66. data/config/locales/th.yml +6 -2
  67. data/config/locales/tk.yml +6 -2
  68. data/config/locales/tr.yml +6 -2
  69. data/config/locales/uk.yml +6 -2
  70. data/config/locales/ur.yml +6 -2
  71. data/config/locales/uz.yml +6 -2
  72. data/config/locales/vi.yml +6 -2
  73. data/config/locales/zh-hk.yml +6 -2
  74. data/config/locales/zh-tw.yml +6 -2
  75. data/config/locales/zh.yml +6 -2
  76. data/lib/govuk_publishing_components/version.rb +1 -1
  77. data/node_modules/axe-core/README.md +1 -1
  78. data/node_modules/axe-core/axe.js +175 -129
  79. data/node_modules/axe-core/axe.min.js +2 -2
  80. data/node_modules/axe-core/package.json +27 -27
  81. data/node_modules/axe-core/sri-history.json +4 -0
  82. metadata +3 -4
  83. data/app/assets/javascripts/govuk_publishing_components/analytics-ga4/init-ga4.js +0 -28
@@ -1,4 +1,4 @@
1
- /*! axe v4.6.2
1
+ /*! axe v4.6.3
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';
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
  },
@@ -7553,7 +7575,11 @@
7553
7575
  var node = parentVNode ? treeWalker.nextNode() : treeWalker.currentNode;
7554
7576
  while (node) {
7555
7577
  var _vNode = get_node_from_tree_default(node);
7556
- if (node.parentElement) {
7578
+ if (_vNode && _vNode.parent) {
7579
+ parentVNode = _vNode.parent;
7580
+ } else if (node.assignedSlot) {
7581
+ parentVNode = get_node_from_tree_default(node.assignedSlot);
7582
+ } else if (node.parentElement) {
7557
7583
  parentVNode = get_node_from_tree_default(node.parentElement);
7558
7584
  } else if (node.parentNode && get_node_from_tree_default(node.parentNode)) {
7559
7585
  parentVNode = get_node_from_tree_default(node.parentNode);
@@ -7815,6 +7841,47 @@
7815
7841
  }
7816
7842
  return hasFixedPosition(vNode.parent);
7817
7843
  });
7844
+ var allowedDisabledNodeNames = [ 'button', 'command', 'fieldset', 'keygen', 'optgroup', 'option', 'select', 'textarea', 'input' ];
7845
+ function isDisabledAttrAllowed(nodeName2) {
7846
+ return allowedDisabledNodeNames.includes(nodeName2);
7847
+ }
7848
+ function focusDisabled(el) {
7849
+ var vNode = el instanceof abstract_virtual_node_default ? el : get_node_from_tree_default(el);
7850
+ if (isDisabledAttrAllowed(vNode.props.nodeName) && vNode.hasAttr('disabled')) {
7851
+ return true;
7852
+ }
7853
+ var parentNode = vNode.parent;
7854
+ var ancestors = [];
7855
+ var fieldsetDisabled = false;
7856
+ while (parentNode && parentNode.shadowId === vNode.shadowId && !fieldsetDisabled) {
7857
+ ancestors.push(parentNode);
7858
+ if (parentNode.props.nodeName === 'legend') {
7859
+ break;
7860
+ }
7861
+ if (parentNode._inDisabledFieldset !== void 0) {
7862
+ fieldsetDisabled = parentNode._inDisabledFieldset;
7863
+ break;
7864
+ }
7865
+ if (parentNode.props.nodeName === 'fieldset' && parentNode.hasAttr('disabled')) {
7866
+ fieldsetDisabled = true;
7867
+ }
7868
+ parentNode = parentNode.parent;
7869
+ }
7870
+ ancestors.forEach(function(ancestor) {
7871
+ return ancestor._inDisabledFieldset = fieldsetDisabled;
7872
+ });
7873
+ if (fieldsetDisabled) {
7874
+ return true;
7875
+ }
7876
+ if (vNode.props.nodeName !== 'area') {
7877
+ if (!vNode.actualNode) {
7878
+ return false;
7879
+ }
7880
+ return _isHiddenForEveryone(vNode);
7881
+ }
7882
+ return false;
7883
+ }
7884
+ var focus_disabled_default = focusDisabled;
7818
7885
  var angularSkipLinkRegex = /^\/\#/;
7819
7886
  var angularRouterLinkRegex = /^#[!/]/;
7820
7887
  function _isCurrentPageLink(anchor) {
@@ -8830,13 +8897,13 @@
8830
8897
  },
8831
8898
  menu: {
8832
8899
  type: 'composite',
8833
- requiredOwned: [ 'group', 'menuitemradio', 'menuitem', 'menuitemcheckbox', 'menu' ],
8900
+ requiredOwned: [ 'group', 'menuitemradio', 'menuitem', 'menuitemcheckbox', 'menu', 'separator' ],
8834
8901
  allowedAttrs: [ 'aria-activedescendant', 'aria-expanded', 'aria-orientation' ],
8835
8902
  superclassRole: [ 'select' ]
8836
8903
  },
8837
8904
  menubar: {
8838
8905
  type: 'composite',
8839
- requiredOwned: [ 'group', 'menuitemradio', 'menuitem', 'menuitemcheckbox', 'menu' ],
8906
+ requiredOwned: [ 'group', 'menuitemradio', 'menuitem', 'menuitemcheckbox', 'menu', 'separator' ],
8840
8907
  allowedAttrs: [ 'aria-activedescendant', 'aria-expanded', 'aria-orientation' ],
8841
8908
  superclassRole: [ 'menu' ]
8842
8909
  },
@@ -10420,47 +10487,6 @@
10420
10487
  return str.replace(/\r\n/g, '\n').replace(/\u00A0/g, ' ').replace(/[\s]{2,}/g, ' ').trim();
10421
10488
  }
10422
10489
  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
10490
  function isNativelyFocusable(el) {
10465
10491
  var vNode = el instanceof abstract_virtual_node_default ? el : get_node_from_tree_default(el);
10466
10492
  if (!vNode || focus_disabled_default(vNode)) {
@@ -11504,6 +11530,12 @@
11504
11530
  standaloneTerms = standaloneTerms.concat(_autocomplete.standaloneTerms);
11505
11531
  qualifiedTerms = qualifiedTerms.concat(_autocomplete.qualifiedTerms);
11506
11532
  var autocompleteTerms = autocompleteValue.split(/\s+/g);
11533
+ if (autocompleteTerms[autocompleteTerms.length - 1] === 'webauthn') {
11534
+ autocompleteTerms.pop();
11535
+ if (autocompleteTerms.length === 0) {
11536
+ return false;
11537
+ }
11538
+ }
11507
11539
  if (!looseTyped) {
11508
11540
  if (autocompleteTerms[0].length > 8 && autocompleteTerms[0].substr(0, 8) === 'section-') {
11509
11541
  autocompleteTerms.shift();
@@ -18418,7 +18450,7 @@
18418
18450
  return blockLike2.indexOf(display) !== -1 || display.substr(0, 6) === 'table-';
18419
18451
  }
18420
18452
  function linkInTextBlockEvaluate(node, options) {
18421
- var requiredContrastRatio = options.requiredContrastRatio;
18453
+ var requiredContrastRatio = options.requiredContrastRatio, allowSameColor = options.allowSameColor;
18422
18454
  if (isBlock2(node)) {
18423
18455
  return false;
18424
18456
  }
@@ -18460,6 +18492,9 @@
18460
18492
  if (!textContrast) {
18461
18493
  return void 0;
18462
18494
  }
18495
+ if (allowSameColor && textContrast === 1 && backgroundContrast === 1) {
18496
+ return true;
18497
+ }
18463
18498
  if (textContrast === 1 && backgroundContrast > 1) {
18464
18499
  this.data({
18465
18500
  messageKey: 'bgContrast',
@@ -21197,13 +21232,7 @@
21197
21232
  if (ariaLabelledbyControls.length > 0 && ariaLabelledbyControls.every(is_disabled_default)) {
21198
21233
  return false;
21199
21234
  }
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)) {
21235
+ if (!hasRealTextChildren(virtualNode)) {
21207
21236
  return false;
21208
21237
  }
21209
21238
  var range = document.createRange();
@@ -21223,6 +21252,20 @@
21223
21252
  return false;
21224
21253
  }
21225
21254
  var color_contrast_matches_default = colorContrastMatches;
21255
+ var removeUnicodeOptions = {
21256
+ emoji: true,
21257
+ nonBmp: false,
21258
+ punctuations: true
21259
+ };
21260
+ function hasRealTextChildren(virtualNode) {
21261
+ var visibleText = visible_virtual_default(virtualNode, false, true);
21262
+ if (visibleText === '' || remove_unicode_default(visibleText, removeUnicodeOptions) === '') {
21263
+ return false;
21264
+ }
21265
+ return virtualNode.children.some(function(vChild) {
21266
+ return vChild.props.nodeName === '#text' && !is_icon_ligature_default(vChild);
21267
+ });
21268
+ }
21226
21269
  function dataTableLargeMatches(node) {
21227
21270
  if (is_data_table_default(node)) {
21228
21271
  var tableArray = to_grid_default(node);
@@ -25678,7 +25721,8 @@
25678
25721
  all: [],
25679
25722
  any: [ {
25680
25723
  options: {
25681
- requiredContrastRatio: 3
25724
+ requiredContrastRatio: 3,
25725
+ allowSameColor: true
25682
25726
  },
25683
25727
  id: 'link-in-text-block'
25684
25728
  }, 'link-in-text-block-style' ],
@@ -25914,6 +25958,7 @@
25914
25958
  none: []
25915
25959
  }, {
25916
25960
  id: 'scrollable-region-focusable',
25961
+ selector: '*:not(select,textarea)',
25917
25962
  matches: 'scrollable-region-focusable-matches',
25918
25963
  tags: [ 'cat.keyboard', 'wcag2a', 'wcag211' ],
25919
25964
  actIds: [ '0ssw9k' ],
@@ -26201,7 +26246,8 @@
26201
26246
  id: 'link-in-text-block',
26202
26247
  evaluate: 'link-in-text-block-evaluate',
26203
26248
  options: {
26204
- requiredContrastRatio: 3
26249
+ requiredContrastRatio: 3,
26250
+ allowSameColor: true
26205
26251
  }
26206
26252
  }, {
26207
26253
  id: 'autocomplete-appropriate',