axe-core 4.7.2-canary.bba4d75 → 4.7.2-canary.cab6a2b

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,5 +1,5 @@
1
- /*! axe v4.7.2-canary.bba4d75
2
- * Copyright (c) 2023 Deque Systems, Inc.
1
+ /*! axe v4.7.2-canary.cab6a2b
2
+ * Copyright (c) 2015 - 2023 Deque Systems, Inc.
3
3
  *
4
4
  * Your use of this Source Code Form is subject to the terms of the Mozilla Public
5
5
  * License, v. 2.0. If a copy of the MPL was not distributed with this
@@ -22,7 +22,7 @@
22
22
  }, _typeof(obj);
23
23
  }
24
24
  var axe = axe || {};
25
- axe.version = '4.7.2-canary.bba4d75';
25
+ axe.version = '4.7.2-canary.cab6a2b';
26
26
  if (typeof define === 'function' && define.amd) {
27
27
  define('axe-core', [], function() {
28
28
  return axe;
@@ -7645,6 +7645,253 @@
7645
7645
  var top = _ref14.top, right = _ref14.right, bottom = _ref14.bottom, left = _ref14.left;
7646
7646
  return y >= top && x <= right && y <= bottom && x >= left;
7647
7647
  }
7648
+ var math_exports = {};
7649
+ __export(math_exports, {
7650
+ getBoundingRect: function getBoundingRect() {
7651
+ return _getBoundingRect;
7652
+ },
7653
+ getIntersectionRect: function getIntersectionRect() {
7654
+ return _getIntersectionRect;
7655
+ },
7656
+ getOffset: function getOffset() {
7657
+ return _getOffset;
7658
+ },
7659
+ getRectCenter: function getRectCenter() {
7660
+ return _getRectCenter;
7661
+ },
7662
+ hasVisualOverlap: function hasVisualOverlap() {
7663
+ return _hasVisualOverlap;
7664
+ },
7665
+ isPointInRect: function isPointInRect() {
7666
+ return _isPointInRect;
7667
+ },
7668
+ rectsOverlap: function rectsOverlap() {
7669
+ return _rectsOverlap;
7670
+ },
7671
+ splitRects: function splitRects() {
7672
+ return _splitRects;
7673
+ }
7674
+ });
7675
+ function _getIntersectionRect(rect1, rect2) {
7676
+ var leftX = Math.max(rect1.left, rect2.left);
7677
+ var rightX = Math.min(rect1.right, rect2.right);
7678
+ var topY = Math.max(rect1.top, rect2.top);
7679
+ var bottomY = Math.min(rect1.bottom, rect2.bottom);
7680
+ if (leftX >= rightX || topY >= bottomY) {
7681
+ return null;
7682
+ }
7683
+ return new window.DOMRect(leftX, topY, rightX - leftX, bottomY - topY);
7684
+ }
7685
+ function _getOffset(vNodeA, vNodeB) {
7686
+ var rectA = vNodeA.boundingClientRect;
7687
+ var rectB = vNodeB.boundingClientRect;
7688
+ var pointA = getFarthestPoint(rectA, rectB);
7689
+ var pointB = getClosestPoint(pointA, rectA, rectB);
7690
+ return pointDistance(pointA, pointB);
7691
+ }
7692
+ function getFarthestPoint(rectA, rectB) {
7693
+ var dimensionProps = [ [ 'x', 'left', 'right', 'width' ], [ 'y', 'top', 'bottom', 'height' ] ];
7694
+ var farthestPoint = {};
7695
+ dimensionProps.forEach(function(_ref15) {
7696
+ var _ref16 = _slicedToArray(_ref15, 4), axis = _ref16[0], start = _ref16[1], end = _ref16[2], diameter = _ref16[3];
7697
+ if (rectB[start] < rectA[start] && rectB[end] > rectA[end]) {
7698
+ farthestPoint[axis] = rectA[start] + rectA[diameter] / 2;
7699
+ return;
7700
+ }
7701
+ var centerB = rectB[start] + rectB[diameter] / 2;
7702
+ var startDistance = Math.abs(centerB - rectA[start]);
7703
+ var endDistance = Math.abs(centerB - rectA[end]);
7704
+ if (startDistance >= endDistance) {
7705
+ farthestPoint[axis] = rectA[start];
7706
+ } else {
7707
+ farthestPoint[axis] = rectA[end];
7708
+ }
7709
+ });
7710
+ return farthestPoint;
7711
+ }
7712
+ function getClosestPoint(_ref17, ownRect, adjacentRect) {
7713
+ var x = _ref17.x, y = _ref17.y;
7714
+ if (pointInRect({
7715
+ x: x,
7716
+ y: y
7717
+ }, adjacentRect)) {
7718
+ var closestPoint = getCornerInAdjacentRect({
7719
+ x: x,
7720
+ y: y
7721
+ }, ownRect, adjacentRect);
7722
+ if (closestPoint !== null) {
7723
+ return closestPoint;
7724
+ }
7725
+ adjacentRect = ownRect;
7726
+ }
7727
+ var _adjacentRect = adjacentRect, top = _adjacentRect.top, right = _adjacentRect.right, bottom = _adjacentRect.bottom, left = _adjacentRect.left;
7728
+ var xAligned = x >= left && x <= right;
7729
+ var yAligned = y >= top && y <= bottom;
7730
+ var closestX = Math.abs(left - x) < Math.abs(right - x) ? left : right;
7731
+ var closestY = Math.abs(top - y) < Math.abs(bottom - y) ? top : bottom;
7732
+ if (!xAligned && yAligned) {
7733
+ return {
7734
+ x: closestX,
7735
+ y: y
7736
+ };
7737
+ } else if (xAligned && !yAligned) {
7738
+ return {
7739
+ x: x,
7740
+ y: closestY
7741
+ };
7742
+ } else if (!xAligned && !yAligned) {
7743
+ return {
7744
+ x: closestX,
7745
+ y: closestY
7746
+ };
7747
+ }
7748
+ if (Math.abs(x - closestX) < Math.abs(y - closestY)) {
7749
+ return {
7750
+ x: closestX,
7751
+ y: y
7752
+ };
7753
+ } else {
7754
+ return {
7755
+ x: x,
7756
+ y: closestY
7757
+ };
7758
+ }
7759
+ }
7760
+ function pointDistance(pointA, pointB) {
7761
+ var xDistance = Math.abs(pointA.x - pointB.x);
7762
+ var yDistance = Math.abs(pointA.y - pointB.y);
7763
+ if (!xDistance || !yDistance) {
7764
+ return xDistance || yDistance;
7765
+ }
7766
+ return Math.sqrt(Math.pow(xDistance, 2) + Math.pow(yDistance, 2));
7767
+ }
7768
+ function pointInRect(_ref18, rect) {
7769
+ var x = _ref18.x, y = _ref18.y;
7770
+ return y >= rect.top && x <= rect.right && y <= rect.bottom && x >= rect.left;
7771
+ }
7772
+ function getCornerInAdjacentRect(_ref19, ownRect, adjacentRect) {
7773
+ var x = _ref19.x, y = _ref19.y;
7774
+ var closestX, closestY;
7775
+ if (x === ownRect.left && ownRect.right < adjacentRect.right) {
7776
+ closestX = ownRect.right;
7777
+ } else if (x === ownRect.right && ownRect.left > adjacentRect.left) {
7778
+ closestX = ownRect.left;
7779
+ }
7780
+ if (y === ownRect.top && ownRect.bottom < adjacentRect.bottom) {
7781
+ closestY = ownRect.bottom;
7782
+ } else if (y === ownRect.bottom && ownRect.top > adjacentRect.top) {
7783
+ closestY = ownRect.top;
7784
+ }
7785
+ if (!closestX && !closestY) {
7786
+ return null;
7787
+ } else if (!closestY) {
7788
+ return {
7789
+ x: closestX,
7790
+ y: y
7791
+ };
7792
+ } else if (!closestX) {
7793
+ return {
7794
+ x: x,
7795
+ y: closestY
7796
+ };
7797
+ }
7798
+ if (Math.abs(x - closestX) < Math.abs(y - closestY)) {
7799
+ return {
7800
+ x: closestX,
7801
+ y: y
7802
+ };
7803
+ } else {
7804
+ return {
7805
+ x: x,
7806
+ y: closestY
7807
+ };
7808
+ }
7809
+ }
7810
+ function _getRectCenter(_ref20) {
7811
+ var left = _ref20.left, top = _ref20.top, width = _ref20.width, height = _ref20.height;
7812
+ return new window.DOMPoint(left + width / 2, top + height / 2);
7813
+ }
7814
+ function _hasVisualOverlap(vNodeA, vNodeB) {
7815
+ var rectA = vNodeA.boundingClientRect;
7816
+ var rectB = vNodeB.boundingClientRect;
7817
+ if (rectA.left >= rectB.right || rectA.right <= rectB.left || rectA.top >= rectB.bottom || rectA.bottom <= rectB.top) {
7818
+ return false;
7819
+ }
7820
+ return _visuallySort(vNodeA, vNodeB) > 0;
7821
+ }
7822
+ function _splitRects(outerRect, overlapRects) {
7823
+ var uniqueRects = [ outerRect ];
7824
+ var _iterator2 = _createForOfIteratorHelper(overlapRects), _step2;
7825
+ try {
7826
+ var _loop3 = function _loop3() {
7827
+ var overlapRect = _step2.value;
7828
+ uniqueRects = uniqueRects.reduce(function(rects, inputRect) {
7829
+ return rects.concat(splitRect(inputRect, overlapRect));
7830
+ }, []);
7831
+ };
7832
+ for (_iterator2.s(); !(_step2 = _iterator2.n()).done; ) {
7833
+ _loop3();
7834
+ }
7835
+ } catch (err) {
7836
+ _iterator2.e(err);
7837
+ } finally {
7838
+ _iterator2.f();
7839
+ }
7840
+ return uniqueRects;
7841
+ }
7842
+ function splitRect(inputRect, clipRect) {
7843
+ var top = inputRect.top, left = inputRect.left, bottom = inputRect.bottom, right = inputRect.right;
7844
+ var yAligned = top < clipRect.bottom && bottom > clipRect.top;
7845
+ var xAligned = left < clipRect.right && right > clipRect.left;
7846
+ var rects = [];
7847
+ if (between(clipRect.top, top, bottom) && xAligned) {
7848
+ rects.push({
7849
+ top: top,
7850
+ left: left,
7851
+ bottom: clipRect.top,
7852
+ right: right
7853
+ });
7854
+ }
7855
+ if (between(clipRect.right, left, right) && yAligned) {
7856
+ rects.push({
7857
+ top: top,
7858
+ left: clipRect.right,
7859
+ bottom: bottom,
7860
+ right: right
7861
+ });
7862
+ }
7863
+ if (between(clipRect.bottom, top, bottom) && xAligned) {
7864
+ rects.push({
7865
+ top: clipRect.bottom,
7866
+ right: right,
7867
+ bottom: bottom,
7868
+ left: left
7869
+ });
7870
+ }
7871
+ if (between(clipRect.left, left, right) && yAligned) {
7872
+ rects.push({
7873
+ top: top,
7874
+ left: left,
7875
+ bottom: bottom,
7876
+ right: clipRect.left
7877
+ });
7878
+ }
7879
+ if (rects.length === 0) {
7880
+ rects.push(inputRect);
7881
+ }
7882
+ return rects.map(computeRect);
7883
+ }
7884
+ var between = function between(num, min, max2) {
7885
+ return num > min && num < max2;
7886
+ };
7887
+ function computeRect(baseRect) {
7888
+ return _extends({}, baseRect, {
7889
+ x: baseRect.left,
7890
+ y: baseRect.top,
7891
+ height: baseRect.bottom - baseRect.top,
7892
+ width: baseRect.right - baseRect.left
7893
+ });
7894
+ }
7648
7895
  var ROOT_LEVEL = 0;
7649
7896
  var DEFAULT_LEVEL = .1;
7650
7897
  var FLOAT_LEVEL = .2;
@@ -7780,8 +8027,8 @@
7780
8027
  function createStackingOrder(vNode, parentVNode, treeOrder) {
7781
8028
  var stackingOrder = parentVNode._stackingOrder.slice();
7782
8029
  if (isStackingContext(vNode, parentVNode)) {
7783
- var index = stackingOrder.findIndex(function(_ref15) {
7784
- var stackLevel2 = _ref15.stackLevel;
8030
+ var index = stackingOrder.findIndex(function(_ref21) {
8031
+ var stackLevel2 = _ref21.stackLevel;
7785
8032
  return [ ROOT_LEVEL, FLOAT_LEVEL, POSITION_LEVEL ].includes(stackLevel2);
7786
8033
  });
7787
8034
  if (index !== -1) {
@@ -7845,10 +8092,17 @@
7845
8092
  return scrollRegionParent;
7846
8093
  }
7847
8094
  function addNodeToGrid(grid, vNode) {
7848
- vNode.clientRects.forEach(function(rect) {
8095
+ var overflowHiddenNodes = get_overflow_hidden_ancestors_default(vNode);
8096
+ vNode.clientRects.forEach(function(clientRect) {
7849
8097
  var _vNode$_grid;
8098
+ var visibleRect = overflowHiddenNodes.reduce(function(rect, overflowNode) {
8099
+ return rect && _getIntersectionRect(rect, overflowNode.boundingClientRect);
8100
+ }, clientRect);
8101
+ if (!visibleRect) {
8102
+ return;
8103
+ }
7850
8104
  (_vNode$_grid = vNode._grid) !== null && _vNode$_grid !== void 0 ? _vNode$_grid : vNode._grid = grid;
7851
- var gridRect = grid.getGridPositionOfRect(rect);
8105
+ var gridRect = grid.getGridPositionOfRect(visibleRect);
7852
8106
  grid.loopGridPosition(gridRect, function(gridCell) {
7853
8107
  if (!gridCell.includes(vNode)) {
7854
8108
  gridCell.push(vNode);
@@ -7870,9 +8124,9 @@
7870
8124
  }
7871
8125
  }, {
7872
8126
  key: 'getCellFromPoint',
7873
- value: function getCellFromPoint(_ref16) {
8127
+ value: function getCellFromPoint(_ref22) {
7874
8128
  var _this$cells, _row;
7875
- var x = _ref16.x, y = _ref16.y;
8129
+ var x = _ref22.x, y = _ref22.y;
7876
8130
  assert_default(this.boundaries, 'Grid does not have cells added');
7877
8131
  var rowIndex = this.toGridIndex(y);
7878
8132
  var colIndex = this.toGridIndex(x);
@@ -7902,8 +8156,8 @@
7902
8156
  }
7903
8157
  }, {
7904
8158
  key: 'getGridPositionOfRect',
7905
- value: function getGridPositionOfRect(_ref17) {
7906
- var top = _ref17.top, right = _ref17.right, bottom = _ref17.bottom, left = _ref17.left;
8159
+ value: function getGridPositionOfRect(_ref23) {
8160
+ var top = _ref23.top, right = _ref23.right, bottom = _ref23.bottom, left = _ref23.left;
7907
8161
  var margin = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
7908
8162
  top = this.toGridIndex(top - margin);
7909
8163
  right = this.toGridIndex(right + margin - 1);
@@ -7944,18 +8198,18 @@
7944
8198
  var gridPosition = grid.getGridPositionOfRect(rect, margin);
7945
8199
  var neighbors = [];
7946
8200
  grid.loopGridPosition(gridPosition, function(vNeighbors) {
7947
- var _iterator2 = _createForOfIteratorHelper(vNeighbors), _step2;
8201
+ var _iterator3 = _createForOfIteratorHelper(vNeighbors), _step3;
7948
8202
  try {
7949
- for (_iterator2.s(); !(_step2 = _iterator2.n()).done; ) {
7950
- var vNeighbor = _step2.value;
8203
+ for (_iterator3.s(); !(_step3 = _iterator3.n()).done; ) {
8204
+ var vNeighbor = _step3.value;
7951
8205
  if (vNeighbor && vNeighbor !== vNode && !neighbors.includes(vNeighbor) && selfIsFixed === hasFixedPosition(vNeighbor)) {
7952
8206
  neighbors.push(vNeighbor);
7953
8207
  }
7954
8208
  }
7955
8209
  } catch (err) {
7956
- _iterator2.e(err);
8210
+ _iterator3.e(err);
7957
8211
  } finally {
7958
- _iterator2.f();
8212
+ _iterator3.f();
7959
8213
  }
7960
8214
  });
7961
8215
  return neighbors;
@@ -7969,16 +8223,6 @@
7969
8223
  }
7970
8224
  return hasFixedPosition(vNode.parent);
7971
8225
  });
7972
- function _getIntersectionRect(rect1, rect2) {
7973
- var leftX = Math.max(rect1.left, rect2.left);
7974
- var rightX = Math.min(rect1.right, rect2.right);
7975
- var topY = Math.max(rect1.top, rect2.top);
7976
- var bottomY = Math.min(rect1.bottom, rect2.bottom);
7977
- if (leftX >= rightX || topY >= bottomY) {
7978
- return null;
7979
- }
7980
- return new window.DOMRect(leftX, topY, rightX - leftX, bottomY - topY);
7981
- }
7982
8226
  var getModalDialog = memoize_default(function getModalDialogMemoized() {
7983
8227
  var _dialogs$find;
7984
8228
  if (!axe._tree) {
@@ -8002,7 +8246,7 @@
8002
8246
  }
8003
8247
  return (_dialogs$find = dialogs.find(function(dialog) {
8004
8248
  var _getNodeFromGrid;
8005
- var _ref18 = (_getNodeFromGrid = getNodeFromGrid(dialog)) !== null && _getNodeFromGrid !== void 0 ? _getNodeFromGrid : {}, vNode = _ref18.vNode, rect = _ref18.rect;
8249
+ var _ref24 = (_getNodeFromGrid = getNodeFromGrid(dialog)) !== null && _getNodeFromGrid !== void 0 ? _getNodeFromGrid : {}, vNode = _ref24.vNode, rect = _ref24.rect;
8006
8250
  if (!vNode) {
8007
8251
  return false;
8008
8252
  }
@@ -8043,7 +8287,7 @@
8043
8287
  }
8044
8288
  }
8045
8289
  function _isInert(vNode) {
8046
- var _ref19 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, skipAncestors = _ref19.skipAncestors, isAncestor = _ref19.isAncestor;
8290
+ var _ref25 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, skipAncestors = _ref25.skipAncestors, isAncestor = _ref25.isAncestor;
8047
8291
  if (skipAncestors) {
8048
8292
  return isInertSelf(vNode, isAncestor);
8049
8293
  }
@@ -8246,243 +8490,6 @@
8246
8490
  vNode._isFloated = floated;
8247
8491
  return floated;
8248
8492
  }
8249
- var math_exports = {};
8250
- __export(math_exports, {
8251
- getBoundingRect: function getBoundingRect() {
8252
- return _getBoundingRect;
8253
- },
8254
- getIntersectionRect: function getIntersectionRect() {
8255
- return _getIntersectionRect;
8256
- },
8257
- getOffset: function getOffset() {
8258
- return _getOffset;
8259
- },
8260
- getRectCenter: function getRectCenter() {
8261
- return _getRectCenter;
8262
- },
8263
- hasVisualOverlap: function hasVisualOverlap() {
8264
- return _hasVisualOverlap;
8265
- },
8266
- isPointInRect: function isPointInRect() {
8267
- return _isPointInRect;
8268
- },
8269
- rectsOverlap: function rectsOverlap() {
8270
- return _rectsOverlap;
8271
- },
8272
- splitRects: function splitRects() {
8273
- return _splitRects;
8274
- }
8275
- });
8276
- function _getOffset(vNodeA, vNodeB) {
8277
- var rectA = vNodeA.boundingClientRect;
8278
- var rectB = vNodeB.boundingClientRect;
8279
- var pointA = getFarthestPoint(rectA, rectB);
8280
- var pointB = getClosestPoint(pointA, rectA, rectB);
8281
- return pointDistance(pointA, pointB);
8282
- }
8283
- function getFarthestPoint(rectA, rectB) {
8284
- var dimensionProps = [ [ 'x', 'left', 'right', 'width' ], [ 'y', 'top', 'bottom', 'height' ] ];
8285
- var farthestPoint = {};
8286
- dimensionProps.forEach(function(_ref20) {
8287
- var _ref21 = _slicedToArray(_ref20, 4), axis = _ref21[0], start = _ref21[1], end = _ref21[2], diameter = _ref21[3];
8288
- if (rectB[start] < rectA[start] && rectB[end] > rectA[end]) {
8289
- farthestPoint[axis] = rectA[start] + rectA[diameter] / 2;
8290
- return;
8291
- }
8292
- var centerB = rectB[start] + rectB[diameter] / 2;
8293
- var startDistance = Math.abs(centerB - rectA[start]);
8294
- var endDistance = Math.abs(centerB - rectA[end]);
8295
- if (startDistance >= endDistance) {
8296
- farthestPoint[axis] = rectA[start];
8297
- } else {
8298
- farthestPoint[axis] = rectA[end];
8299
- }
8300
- });
8301
- return farthestPoint;
8302
- }
8303
- function getClosestPoint(_ref22, ownRect, adjacentRect) {
8304
- var x = _ref22.x, y = _ref22.y;
8305
- if (pointInRect({
8306
- x: x,
8307
- y: y
8308
- }, adjacentRect)) {
8309
- var closestPoint = getCornerInAdjacentRect({
8310
- x: x,
8311
- y: y
8312
- }, ownRect, adjacentRect);
8313
- if (closestPoint !== null) {
8314
- return closestPoint;
8315
- }
8316
- adjacentRect = ownRect;
8317
- }
8318
- var _adjacentRect = adjacentRect, top = _adjacentRect.top, right = _adjacentRect.right, bottom = _adjacentRect.bottom, left = _adjacentRect.left;
8319
- var xAligned = x >= left && x <= right;
8320
- var yAligned = y >= top && y <= bottom;
8321
- var closestX = Math.abs(left - x) < Math.abs(right - x) ? left : right;
8322
- var closestY = Math.abs(top - y) < Math.abs(bottom - y) ? top : bottom;
8323
- if (!xAligned && yAligned) {
8324
- return {
8325
- x: closestX,
8326
- y: y
8327
- };
8328
- } else if (xAligned && !yAligned) {
8329
- return {
8330
- x: x,
8331
- y: closestY
8332
- };
8333
- } else if (!xAligned && !yAligned) {
8334
- return {
8335
- x: closestX,
8336
- y: closestY
8337
- };
8338
- }
8339
- if (Math.abs(x - closestX) < Math.abs(y - closestY)) {
8340
- return {
8341
- x: closestX,
8342
- y: y
8343
- };
8344
- } else {
8345
- return {
8346
- x: x,
8347
- y: closestY
8348
- };
8349
- }
8350
- }
8351
- function pointDistance(pointA, pointB) {
8352
- var xDistance = Math.abs(pointA.x - pointB.x);
8353
- var yDistance = Math.abs(pointA.y - pointB.y);
8354
- if (!xDistance || !yDistance) {
8355
- return xDistance || yDistance;
8356
- }
8357
- return Math.sqrt(Math.pow(xDistance, 2) + Math.pow(yDistance, 2));
8358
- }
8359
- function pointInRect(_ref23, rect) {
8360
- var x = _ref23.x, y = _ref23.y;
8361
- return y >= rect.top && x <= rect.right && y <= rect.bottom && x >= rect.left;
8362
- }
8363
- function getCornerInAdjacentRect(_ref24, ownRect, adjacentRect) {
8364
- var x = _ref24.x, y = _ref24.y;
8365
- var closestX, closestY;
8366
- if (x === ownRect.left && ownRect.right < adjacentRect.right) {
8367
- closestX = ownRect.right;
8368
- } else if (x === ownRect.right && ownRect.left > adjacentRect.left) {
8369
- closestX = ownRect.left;
8370
- }
8371
- if (y === ownRect.top && ownRect.bottom < adjacentRect.bottom) {
8372
- closestY = ownRect.bottom;
8373
- } else if (y === ownRect.bottom && ownRect.top > adjacentRect.top) {
8374
- closestY = ownRect.top;
8375
- }
8376
- if (!closestX && !closestY) {
8377
- return null;
8378
- } else if (!closestY) {
8379
- return {
8380
- x: closestX,
8381
- y: y
8382
- };
8383
- } else if (!closestX) {
8384
- return {
8385
- x: x,
8386
- y: closestY
8387
- };
8388
- }
8389
- if (Math.abs(x - closestX) < Math.abs(y - closestY)) {
8390
- return {
8391
- x: closestX,
8392
- y: y
8393
- };
8394
- } else {
8395
- return {
8396
- x: x,
8397
- y: closestY
8398
- };
8399
- }
8400
- }
8401
- function _getRectCenter(_ref25) {
8402
- var left = _ref25.left, top = _ref25.top, width = _ref25.width, height = _ref25.height;
8403
- return new window.DOMPoint(left + width / 2, top + height / 2);
8404
- }
8405
- function _hasVisualOverlap(vNodeA, vNodeB) {
8406
- var rectA = vNodeA.boundingClientRect;
8407
- var rectB = vNodeB.boundingClientRect;
8408
- if (rectA.left >= rectB.right || rectA.right <= rectB.left || rectA.top >= rectB.bottom || rectA.bottom <= rectB.top) {
8409
- return false;
8410
- }
8411
- return _visuallySort(vNodeA, vNodeB) > 0;
8412
- }
8413
- function _splitRects(outerRect, overlapRects) {
8414
- var uniqueRects = [ outerRect ];
8415
- var _iterator3 = _createForOfIteratorHelper(overlapRects), _step3;
8416
- try {
8417
- var _loop3 = function _loop3() {
8418
- var overlapRect = _step3.value;
8419
- uniqueRects = uniqueRects.reduce(function(rects, inputRect) {
8420
- return rects.concat(splitRect(inputRect, overlapRect));
8421
- }, []);
8422
- };
8423
- for (_iterator3.s(); !(_step3 = _iterator3.n()).done; ) {
8424
- _loop3();
8425
- }
8426
- } catch (err) {
8427
- _iterator3.e(err);
8428
- } finally {
8429
- _iterator3.f();
8430
- }
8431
- return uniqueRects;
8432
- }
8433
- function splitRect(inputRect, clipRect) {
8434
- var top = inputRect.top, left = inputRect.left, bottom = inputRect.bottom, right = inputRect.right;
8435
- var yAligned = top < clipRect.bottom && bottom > clipRect.top;
8436
- var xAligned = left < clipRect.right && right > clipRect.left;
8437
- var rects = [];
8438
- if (between(clipRect.top, top, bottom) && xAligned) {
8439
- rects.push({
8440
- top: top,
8441
- left: left,
8442
- bottom: clipRect.top,
8443
- right: right
8444
- });
8445
- }
8446
- if (between(clipRect.right, left, right) && yAligned) {
8447
- rects.push({
8448
- top: top,
8449
- left: clipRect.right,
8450
- bottom: bottom,
8451
- right: right
8452
- });
8453
- }
8454
- if (between(clipRect.bottom, top, bottom) && xAligned) {
8455
- rects.push({
8456
- top: clipRect.bottom,
8457
- right: right,
8458
- bottom: bottom,
8459
- left: left
8460
- });
8461
- }
8462
- if (between(clipRect.left, left, right) && yAligned) {
8463
- rects.push({
8464
- top: top,
8465
- left: left,
8466
- bottom: bottom,
8467
- right: clipRect.left
8468
- });
8469
- }
8470
- if (rects.length === 0) {
8471
- rects.push(inputRect);
8472
- }
8473
- return rects.map(computeRect);
8474
- }
8475
- var between = function between(num, min, max2) {
8476
- return num > min && num < max2;
8477
- };
8478
- function computeRect(baseRect) {
8479
- return _extends({}, baseRect, {
8480
- x: baseRect.left,
8481
- y: baseRect.top,
8482
- height: baseRect.bottom - baseRect.top,
8483
- width: baseRect.right - baseRect.left
8484
- });
8485
- }
8486
8493
  function getRectStack(grid, rect) {
8487
8494
  var recursed = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
8488
8495
  var center = _getRectCenter(rect);
@@ -11532,21 +11539,25 @@
11532
11539
  function getSupplementaryPrivateUseRegExp() {
11533
11540
  return /[\uDB80-\uDBBF][\uDC00-\uDFFF]/g;
11534
11541
  }
11542
+ function getCategoryFormatRegExp() {
11543
+ return /[\xAD\u0600-\u0605\u061C\u06DD\u070F\u08E2\u180E\u200B-\u200F\u202A-\u202E\u2060-\u2064\u2066-\u206F\uFEFF\uFFF9-\uFFFB]|\uD804[\uDCBD\uDCCD]|\uD80D[\uDC30-\uDC38]|\uD82F[\uDCA0-\uDCA3]|\uD834[\uDD73-\uDD7A]|\uDB40[\uDC01\uDC20-\uDC7F]/g;
11544
+ }
11535
11545
  var emoji_regex_default = function emoji_regex_default() {
11536
11546
  return /[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26F9(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC3\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC08\uDC26](?:\u200D\u2B1B)?|[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE88\uDE90-\uDEBD\uDEBF-\uDEC2\uDECE-\uDEDB\uDEE0-\uDEE8]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83E\uDDD1))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;
11537
11547
  };
11538
11548
  function hasUnicode(str, options) {
11539
11549
  var emoji = options.emoji, nonBmp = options.nonBmp, punctuations = options.punctuations;
11550
+ var value = false;
11540
11551
  if (emoji) {
11541
- return emoji_regex_default().test(str);
11552
+ value || (value = emoji_regex_default().test(str));
11542
11553
  }
11543
11554
  if (nonBmp) {
11544
- return getUnicodeNonBmpRegExp().test(str) || getSupplementaryPrivateUseRegExp().test(str);
11555
+ value || (value = getUnicodeNonBmpRegExp().test(str) || getSupplementaryPrivateUseRegExp().test(str) || getCategoryFormatRegExp().test(str));
11545
11556
  }
11546
11557
  if (punctuations) {
11547
- return getPunctuationRegExp().test(str);
11558
+ value || (value = getPunctuationRegExp().test(str));
11548
11559
  }
11549
- return false;
11560
+ return value;
11550
11561
  }
11551
11562
  var has_unicode_default = hasUnicode;
11552
11563
  function _isIconLigature(textVNode) {
@@ -11709,8 +11720,7 @@
11709
11720
  str = str.replace(emoji_regex_default(), '');
11710
11721
  }
11711
11722
  if (nonBmp) {
11712
- str = str.replace(getUnicodeNonBmpRegExp(), '');
11713
- str = str.replace(getSupplementaryPrivateUseRegExp(), '');
11723
+ str = str.replace(getUnicodeNonBmpRegExp(), '').replace(getSupplementaryPrivateUseRegExp(), '').replace(getCategoryFormatRegExp(), '');
11714
11724
  }
11715
11725
  if (punctuations) {
11716
11726
  str = str.replace(getPunctuationRegExp(), '');
@@ -12843,8 +12853,8 @@
12843
12853
  format.type || (format.type = 'function');
12844
12854
  format.name || (format.name = 'color');
12845
12855
  format.coordGrammar = parseCoordGrammar(format.coords);
12846
- var coordFormats = Object.entries(this.coords).map(function(_ref154, i) {
12847
- var _ref155 = _slicedToArray(_ref154, 2), id = _ref155[0], coordMeta = _ref155[1];
12856
+ var coordFormats = Object.entries(this.coords).map(function(_ref156, i) {
12857
+ var _ref157 = _slicedToArray(_ref156, 2), id = _ref157[0], coordMeta = _ref157[1];
12848
12858
  var outputType = format.coordGrammar[i][0];
12849
12859
  var fromRange = coordMeta.range || coordMeta.refRange;
12850
12860
  var toRange = outputType.range, suffix = '';
@@ -20746,97 +20756,81 @@
20746
20756
  if (required === null) {
20747
20757
  return true;
20748
20758
  }
20749
- var _getOwnedRoles = getOwnedRoles(virtualNode, required), ownedRoles = _getOwnedRoles.ownedRoles, ownedElements = _getOwnedRoles.ownedElements;
20759
+ var ownedRoles = getOwnedRoles(virtualNode, required);
20750
20760
  var unallowed = ownedRoles.filter(function(_ref96) {
20751
- var role = _ref96.role;
20752
- return !required.includes(role);
20761
+ var role = _ref96.role, vNode = _ref96.vNode;
20762
+ return vNode.props.nodeType === 1 && !required.includes(role);
20753
20763
  });
20754
20764
  if (unallowed.length) {
20755
20765
  this.relatedNodes(unallowed.map(function(_ref97) {
20756
- var ownedElement = _ref97.ownedElement;
20757
- return ownedElement;
20766
+ var vNode = _ref97.vNode;
20767
+ return vNode;
20758
20768
  }));
20759
20769
  this.data({
20760
20770
  messageKey: 'unallowed',
20761
20771
  values: unallowed.map(function(_ref98) {
20762
- var ownedElement = _ref98.ownedElement, attr = _ref98.attr;
20763
- return getUnallowedSelector(ownedElement, attr);
20772
+ var vNode = _ref98.vNode, attr = _ref98.attr;
20773
+ return getUnallowedSelector(vNode, attr);
20764
20774
  }).filter(function(selector, index, array) {
20765
20775
  return array.indexOf(selector) === index;
20766
20776
  }).join(', ')
20767
20777
  });
20768
20778
  return false;
20769
20779
  }
20770
- var missing = missingRequiredChildren(virtualNode, required, ownedRoles);
20771
- if (!missing) {
20780
+ if (hasRequiredChildren(required, ownedRoles)) {
20772
20781
  return true;
20773
20782
  }
20774
- this.data(missing);
20775
- if (reviewEmpty.includes(explicitRole2) && !ownedElements.some(isContent)) {
20783
+ this.data(required);
20784
+ if (reviewEmpty.includes(explicitRole2) && !ownedRoles.some(isContent)) {
20776
20785
  return void 0;
20777
20786
  }
20778
20787
  return false;
20779
20788
  }
20780
20789
  function getOwnedRoles(virtualNode, required) {
20790
+ var vNode;
20781
20791
  var ownedRoles = [];
20782
- var ownedElements = get_owned_virtual_default(virtualNode).filter(function(vNode) {
20783
- return vNode.props.nodeType !== 1 || _isVisibleToScreenReaders(vNode);
20784
- });
20785
- var _loop7 = function _loop7(_i29) {
20786
- var ownedElement = ownedElements[_i29];
20787
- if (ownedElement.props.nodeType !== 1) {
20792
+ var ownedVirtual = get_owned_virtual_default(virtualNode);
20793
+ var _loop7 = function _loop7() {
20794
+ if (vNode.props.nodeType === 3) {
20795
+ ownedRoles.push({
20796
+ vNode: vNode,
20797
+ role: null
20798
+ });
20799
+ }
20800
+ if (vNode.props.nodeType !== 1 || !_isVisibleToScreenReaders(vNode)) {
20788
20801
  return 'continue';
20789
20802
  }
20790
- var role = get_role_default(ownedElement, {
20803
+ var role = get_role_default(vNode, {
20791
20804
  noPresentational: true
20792
20805
  });
20793
- var globalAriaAttr = getGlobalAriaAttr(ownedElement);
20794
- var hasGlobalAriaOrFocusable = !!globalAriaAttr || _isFocusable(ownedElement);
20806
+ var globalAriaAttr = getGlobalAriaAttr(vNode);
20807
+ var hasGlobalAriaOrFocusable = !!globalAriaAttr || _isFocusable(vNode);
20795
20808
  if (!role && !hasGlobalAriaOrFocusable || [ 'group', 'rowgroup' ].includes(role) && required.some(function(requiredRole) {
20796
20809
  return requiredRole === role;
20797
20810
  })) {
20798
- ownedElements.push.apply(ownedElements, _toConsumableArray(ownedElement.children));
20811
+ ownedVirtual.push.apply(ownedVirtual, _toConsumableArray(vNode.children));
20799
20812
  } else if (role || hasGlobalAriaOrFocusable) {
20813
+ var attr = globalAriaAttr || 'tabindex';
20800
20814
  ownedRoles.push({
20801
20815
  role: role,
20802
- attr: globalAriaAttr || 'tabindex',
20803
- ownedElement: ownedElement
20816
+ attr: attr,
20817
+ vNode: vNode
20804
20818
  });
20805
20819
  }
20806
20820
  };
20807
- for (var _i29 = 0; _i29 < ownedElements.length; _i29++) {
20808
- var _ret5 = _loop7(_i29);
20821
+ while (vNode = ownedVirtual.shift()) {
20822
+ var _ret5 = _loop7();
20809
20823
  if (_ret5 === 'continue') {
20810
20824
  continue;
20811
20825
  }
20812
20826
  }
20813
- return {
20814
- ownedRoles: ownedRoles,
20815
- ownedElements: ownedElements
20816
- };
20827
+ return ownedRoles;
20817
20828
  }
20818
- function missingRequiredChildren(virtualNode, required, ownedRoles) {
20819
- var _loop8 = function _loop8(_i30) {
20820
- var role = ownedRoles[_i30].role;
20821
- if (required.includes(role)) {
20822
- required = required.filter(function(requiredRole) {
20823
- return requiredRole !== role;
20824
- });
20825
- return {
20826
- v: null
20827
- };
20828
- }
20829
- };
20830
- for (var _i30 = 0; _i30 < ownedRoles.length; _i30++) {
20831
- var _ret6 = _loop8(_i30);
20832
- if (_typeof(_ret6) === 'object') {
20833
- return _ret6.v;
20834
- }
20835
- }
20836
- if (required.length) {
20837
- return required;
20838
- }
20839
- return null;
20829
+ function hasRequiredChildren(required, ownedRoles) {
20830
+ return ownedRoles.some(function(_ref99) {
20831
+ var role = _ref99.role;
20832
+ return role && required.includes(role);
20833
+ });
20840
20834
  }
20841
20835
  function getGlobalAriaAttr(vNode) {
20842
20836
  return get_global_aria_attrs_default().find(function(attr) {
@@ -20859,7 +20853,8 @@
20859
20853
  }
20860
20854
  return nodeName2;
20861
20855
  }
20862
- function isContent(vNode) {
20856
+ function isContent(_ref100) {
20857
+ var vNode = _ref100.vNode;
20863
20858
  if (vNode.props.nodeType === 3) {
20864
20859
  return vNode.props.nodeValue.trim().length > 0;
20865
20860
  }
@@ -20920,8 +20915,8 @@
20920
20915
  }
20921
20916
  var owners = getAriaOwners(node);
20922
20917
  if (owners) {
20923
- for (var _i31 = 0, l = owners.length; _i31 < l; _i31++) {
20924
- missingParents = getMissingContext(get_node_from_tree_default(owners[_i31]), ownGroupRoles, missingParents, true);
20918
+ for (var _i29 = 0, l = owners.length; _i29 < l; _i29++) {
20919
+ missingParents = getMissingContext(get_node_from_tree_default(owners[_i29]), ownGroupRoles, missingParents, true);
20925
20920
  if (!missingParents) {
20926
20921
  return true;
20927
20922
  }
@@ -21465,10 +21460,10 @@
21465
21460
  var OPAQUE_STROKE_OFFSET_MIN_PX = 1.5;
21466
21461
  var edges = [ 'top', 'right', 'bottom', 'left' ];
21467
21462
  function _getStrokeColorsFromShadows(parsedShadows) {
21468
- var _ref99 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, _ref99$ignoreEdgeCoun = _ref99.ignoreEdgeCount, ignoreEdgeCount = _ref99$ignoreEdgeCoun === void 0 ? false : _ref99$ignoreEdgeCoun;
21463
+ var _ref101 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, _ref101$ignoreEdgeCou = _ref101.ignoreEdgeCount, ignoreEdgeCount = _ref101$ignoreEdgeCou === void 0 ? false : _ref101$ignoreEdgeCou;
21469
21464
  var shadowMap = getShadowColorsMap(parsedShadows);
21470
- var shadowsByColor = Object.entries(shadowMap).map(function(_ref100) {
21471
- var _ref101 = _slicedToArray(_ref100, 2), colorStr = _ref101[0], sides = _ref101[1];
21465
+ var shadowsByColor = Object.entries(shadowMap).map(function(_ref102) {
21466
+ var _ref103 = _slicedToArray(_ref102, 2), colorStr = _ref103[0], sides = _ref103[1];
21472
21467
  var edgeCount = edges.filter(function(side) {
21473
21468
  return sides[side].length !== 0;
21474
21469
  }).length;
@@ -21478,8 +21473,8 @@
21478
21473
  edgeCount: edgeCount
21479
21474
  };
21480
21475
  });
21481
- if (!ignoreEdgeCount && shadowsByColor.some(function(_ref102) {
21482
- var edgeCount = _ref102.edgeCount;
21476
+ if (!ignoreEdgeCount && shadowsByColor.some(function(_ref104) {
21477
+ var edgeCount = _ref104.edgeCount;
21483
21478
  return edgeCount > 1 && edgeCount < 4;
21484
21479
  })) {
21485
21480
  return null;
@@ -21521,8 +21516,8 @@
21521
21516
  }
21522
21517
  return colorMap;
21523
21518
  }
21524
- function shadowGroupToColor(_ref103) {
21525
- var colorStr = _ref103.colorStr, sides = _ref103.sides, edgeCount = _ref103.edgeCount;
21519
+ function shadowGroupToColor(_ref105) {
21520
+ var colorStr = _ref105.colorStr, sides = _ref105.sides, edgeCount = _ref105.edgeCount;
21526
21521
  if (edgeCount !== 4) {
21527
21522
  return null;
21528
21523
  }
@@ -21551,7 +21546,7 @@
21551
21546
  return [];
21552
21547
  }
21553
21548
  while (str) {
21554
- var colorMatch = str.match(/^rgba?\([0-9,.\s]+\)/i) || str.match(/^[a-z]+/i) || str.match(/^#[0-9a-f]+/i);
21549
+ var colorMatch = str.match(/^[a-z]+(\([^)]+\))?/i) || str.match(/^#[0-9a-f]+/i);
21555
21550
  var pixelMatch = str.match(/^([0-9.-]+)px/i) || str.match(/^(0)/);
21556
21551
  if (colorMatch) {
21557
21552
  assert_default(!current.colorStr, 'Multiple colors identified in text-shadow: '.concat(textShadow));
@@ -21570,11 +21565,11 @@
21570
21565
  shadows.push(current);
21571
21566
  str = str.substr(1).trim();
21572
21567
  } else {
21573
- throw new Error('Unable to process text-shadows: '.concat(textShadow));
21568
+ throw new Error('Unable to process text-shadows: '.concat(str));
21574
21569
  }
21575
21570
  }
21576
- shadows.forEach(function(_ref104) {
21577
- var pixels = _ref104.pixels;
21571
+ shadows.forEach(function(_ref106) {
21572
+ var pixels = _ref106.pixels;
21578
21573
  if (pixels.length === 2) {
21579
21574
  pixels.push(0);
21580
21575
  }
@@ -21582,7 +21577,7 @@
21582
21577
  return shadows;
21583
21578
  }
21584
21579
  function _getTextShadowColors(node) {
21585
- var _ref105 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, minRatio = _ref105.minRatio, maxRatio = _ref105.maxRatio, ignoreEdgeCount = _ref105.ignoreEdgeCount;
21580
+ var _ref107 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, minRatio = _ref107.minRatio, maxRatio = _ref107.maxRatio, ignoreEdgeCount = _ref107.ignoreEdgeCount;
21586
21581
  var shadowColors = [];
21587
21582
  var style = window.getComputedStyle(node);
21588
21583
  var textShadow = style.getPropertyValue('text-shadow');
@@ -21645,8 +21640,8 @@
21645
21640
  }
21646
21641
  return shadowColors;
21647
21642
  }
21648
- function textShadowColor(_ref106) {
21649
- var colorStr = _ref106.colorStr, offsetX = _ref106.offsetX, offsetY = _ref106.offsetY, blurRadius = _ref106.blurRadius, fontSize = _ref106.fontSize;
21643
+ function textShadowColor(_ref108) {
21644
+ var colorStr = _ref108.colorStr, offsetX = _ref108.offsetX, offsetY = _ref108.offsetY, blurRadius = _ref108.blurRadius, fontSize = _ref108.fontSize;
21650
21645
  if (offsetX > blurRadius || offsetY > blurRadius) {
21651
21646
  return new color_default(0, 0, 0, 0);
21652
21647
  }
@@ -21675,13 +21670,13 @@
21675
21670
  var _stackingOrder2;
21676
21671
  var bgVNode = get_node_from_tree_default(bgElm);
21677
21672
  var bgColor = getOwnBackgroundColor2(bgVNode);
21678
- var stackingOrder = bgVNode._stackingOrder.filter(function(_ref107) {
21679
- var vNode = _ref107.vNode;
21673
+ var stackingOrder = bgVNode._stackingOrder.filter(function(_ref109) {
21674
+ var vNode = _ref109.vNode;
21680
21675
  return !!vNode;
21681
21676
  });
21682
- stackingOrder.forEach(function(_ref108, index) {
21677
+ stackingOrder.forEach(function(_ref110, index) {
21683
21678
  var _stackingOrder;
21684
- var vNode = _ref108.vNode;
21679
+ var vNode = _ref110.vNode;
21685
21680
  var ancestorVNode2 = (_stackingOrder = stackingOrder[index - 1]) === null || _stackingOrder === void 0 ? void 0 : _stackingOrder.vNode;
21686
21681
  var context2 = addToStackingContext(contextMap, vNode, ancestorVNode2);
21687
21682
  if (index === 0 && !contextMap.get(vNode)) {
@@ -21789,8 +21784,8 @@
21789
21784
  color: bgColors.reduce(_flattenShadowColors)
21790
21785
  } ];
21791
21786
  }
21792
- for (var _i32 = 0; _i32 < elmStack.length; _i32++) {
21793
- var bgElm = elmStack[_i32];
21787
+ for (var _i30 = 0; _i30 < elmStack.length; _i30++) {
21788
+ var bgElm = elmStack[_i30];
21794
21789
  var bgElmStyle = window.getComputedStyle(bgElm);
21795
21790
  if (element_has_image_default(bgElm, bgElmStyle)) {
21796
21791
  bgElms.push(bgElm);
@@ -21890,8 +21885,8 @@
21890
21885
  });
21891
21886
  } ];
21892
21887
  var fgColors = [];
21893
- for (var _i33 = 0, _colorStack = colorStack; _i33 < _colorStack.length; _i33++) {
21894
- var colorFn = _colorStack[_i33];
21888
+ for (var _i31 = 0, _colorStack = colorStack; _i31 < _colorStack.length; _i31++) {
21889
+ var colorFn = _colorStack[_i31];
21895
21890
  var _color4 = colorFn();
21896
21891
  if (!_color4) {
21897
21892
  continue;
@@ -21917,8 +21912,8 @@
21917
21912
  function getTextColor(nodeStyle) {
21918
21913
  return new color_default().parseString(nodeStyle.getPropertyValue('-webkit-text-fill-color') || nodeStyle.getPropertyValue('color'));
21919
21914
  }
21920
- function getStrokeColor(nodeStyle, _ref109) {
21921
- var _ref109$textStrokeEmM = _ref109.textStrokeEmMin, textStrokeEmMin = _ref109$textStrokeEmM === void 0 ? 0 : _ref109$textStrokeEmM;
21915
+ function getStrokeColor(nodeStyle, _ref111) {
21916
+ var _ref111$textStrokeEmM = _ref111.textStrokeEmMin, textStrokeEmMin = _ref111$textStrokeEmM === void 0 ? 0 : _ref111$textStrokeEmM;
21922
21917
  var strokeWidth = parseFloat(nodeStyle.getPropertyValue('-webkit-text-stroke-width'));
21923
21918
  if (strokeWidth === 0) {
21924
21919
  return null;
@@ -22011,7 +22006,7 @@
22011
22006
  var bold = parseFloat(fontWeight) >= boldValue || fontWeight === 'bold';
22012
22007
  var ptSize = Math.ceil(fontSize * 72) / 96;
22013
22008
  var isSmallFont = bold && ptSize < boldTextPt || !bold && ptSize < largeTextPt;
22014
- var _ref110 = isSmallFont ? contrastRatio.normal : contrastRatio.large, expected = _ref110.expected, minThreshold = _ref110.minThreshold, maxThreshold = _ref110.maxThreshold;
22009
+ var _ref112 = isSmallFont ? contrastRatio.normal : contrastRatio.large, expected = _ref112.expected, minThreshold = _ref112.minThreshold, maxThreshold = _ref112.maxThreshold;
22015
22010
  var pseudoElm = findPseudoElement(virtualNode, {
22016
22011
  ignorePseudo: ignorePseudo,
22017
22012
  pseudoSizeThreshold: pseudoSizeThreshold
@@ -22096,8 +22091,8 @@
22096
22091
  }
22097
22092
  return isValid;
22098
22093
  }
22099
- function findPseudoElement(vNode, _ref111) {
22100
- var _ref111$pseudoSizeThr = _ref111.pseudoSizeThreshold, pseudoSizeThreshold = _ref111$pseudoSizeThr === void 0 ? .25 : _ref111$pseudoSizeThr, _ref111$ignorePseudo = _ref111.ignorePseudo, ignorePseudo = _ref111$ignorePseudo === void 0 ? false : _ref111$ignorePseudo;
22094
+ function findPseudoElement(vNode, _ref113) {
22095
+ var _ref113$pseudoSizeThr = _ref113.pseudoSizeThreshold, pseudoSizeThreshold = _ref113$pseudoSizeThr === void 0 ? .25 : _ref113$pseudoSizeThr, _ref113$ignorePseudo = _ref113.ignorePseudo, ignorePseudo = _ref113$ignorePseudo === void 0 ? false : _ref113$ignorePseudo;
22101
22096
  if (ignorePseudo) {
22102
22097
  return;
22103
22098
  }
@@ -22139,7 +22134,7 @@
22139
22134
  }
22140
22135
  function parseUnit(str) {
22141
22136
  var unitRegex = /^([0-9.]+)([a-z]+)$/i;
22142
- var _ref112 = str.match(unitRegex) || [], _ref113 = _slicedToArray(_ref112, 3), _ref113$ = _ref113[1], value = _ref113$ === void 0 ? '' : _ref113$, _ref113$2 = _ref113[2], unit = _ref113$2 === void 0 ? '' : _ref113$2;
22137
+ var _ref114 = str.match(unitRegex) || [], _ref115 = _slicedToArray(_ref114, 3), _ref115$ = _ref115[1], value = _ref115$ === void 0 ? '' : _ref115$, _ref115$2 = _ref115[2], unit = _ref115$2 === void 0 ? '' : _ref115$2;
22143
22138
  return {
22144
22139
  value: parseFloat(value),
22145
22140
  unit: unit.toLowerCase()
@@ -22250,8 +22245,8 @@
22250
22245
  return blockLike3.indexOf(display2) !== -1 || display2.substr(0, 6) === 'table-';
22251
22246
  }
22252
22247
  function hasPseudoContent(node) {
22253
- for (var _i34 = 0, _arr3 = [ 'before', 'after' ]; _i34 < _arr3.length; _i34++) {
22254
- var pseudo = _arr3[_i34];
22248
+ for (var _i32 = 0, _arr3 = [ 'before', 'after' ]; _i32 < _arr3.length; _i32++) {
22249
+ var pseudo = _arr3[_i32];
22255
22250
  var style = window.getComputedStyle(node, ':'.concat(pseudo));
22256
22251
  var content = style.getPropertyValue('content');
22257
22252
  if (content !== 'none') {
@@ -22410,6 +22405,11 @@
22410
22405
  return elm.actualNode.hasAttribute('role') || !find_up_virtual_default(elm, options.nativeScopeFilter);
22411
22406
  });
22412
22407
  }
22408
+ if (typeof options.role === 'string') {
22409
+ elms = elms.filter(function(elm) {
22410
+ return get_role_default(elm) === options.role;
22411
+ });
22412
+ }
22413
22413
  this.relatedNodes(elms.filter(function(elm) {
22414
22414
  return elm !== virtualNode;
22415
22415
  }).map(function(elm) {
@@ -22502,8 +22502,8 @@
22502
22502
  }
22503
22503
  var focusable_element_evaluate_default = focusableElementEvaluate;
22504
22504
  function focusableModalOpenEvaluate(node, options, virtualNode) {
22505
- var tabbableElements = virtualNode.tabbableElements.map(function(_ref114) {
22506
- var actualNode = _ref114.actualNode;
22505
+ var tabbableElements = virtualNode.tabbableElements.map(function(_ref116) {
22506
+ var actualNode = _ref116.actualNode;
22507
22507
  return actualNode;
22508
22508
  });
22509
22509
  if (!tabbableElements || !tabbableElements.length) {
@@ -22984,8 +22984,8 @@
22984
22984
  this.relatedNodes(relatedNodes);
22985
22985
  return true;
22986
22986
  }
22987
- function getInvalidSelector(vChild, nested, _ref115) {
22988
- var _ref115$validRoles = _ref115.validRoles, validRoles = _ref115$validRoles === void 0 ? [] : _ref115$validRoles, _ref115$validNodeName = _ref115.validNodeNames, validNodeNames = _ref115$validNodeName === void 0 ? [] : _ref115$validNodeName;
22987
+ function getInvalidSelector(vChild, nested, _ref117) {
22988
+ var _ref117$validRoles = _ref117.validRoles, validRoles = _ref117$validRoles === void 0 ? [] : _ref117$validRoles, _ref117$validNodeName = _ref117.validNodeNames, validNodeNames = _ref117$validNodeName === void 0 ? [] : _ref117$validNodeName;
22989
22989
  var _vChild$props = vChild.props, nodeName2 = _vChild$props.nodeName, nodeType = _vChild$props.nodeType, nodeValue = _vChild$props.nodeValue;
22990
22990
  var selector = nested ? 'div > ' : '';
22991
22991
  if (nodeType === 3 && nodeValue.trim() !== '') {
@@ -23217,23 +23217,23 @@
23217
23217
  }
23218
23218
  var no_autoplay_audio_evaluate_default = noAutoplayAudioEvaluate;
23219
23219
  function cssOrientationLockEvaluate(node, options, virtualNode, context) {
23220
- var _ref116 = context || {}, _ref116$cssom = _ref116.cssom, cssom = _ref116$cssom === void 0 ? void 0 : _ref116$cssom;
23221
- var _ref117 = options || {}, _ref117$degreeThresho = _ref117.degreeThreshold, degreeThreshold = _ref117$degreeThresho === void 0 ? 0 : _ref117$degreeThresho;
23220
+ var _ref118 = context || {}, _ref118$cssom = _ref118.cssom, cssom = _ref118$cssom === void 0 ? void 0 : _ref118$cssom;
23221
+ var _ref119 = options || {}, _ref119$degreeThresho = _ref119.degreeThreshold, degreeThreshold = _ref119$degreeThresho === void 0 ? 0 : _ref119$degreeThresho;
23222
23222
  if (!cssom || !cssom.length) {
23223
23223
  return void 0;
23224
23224
  }
23225
23225
  var isLocked = false;
23226
23226
  var relatedElements = [];
23227
23227
  var rulesGroupByDocumentFragment = groupCssomByDocument(cssom);
23228
- var _loop9 = function _loop9() {
23229
- var key = _Object$keys3[_i35];
23228
+ var _loop8 = function _loop8() {
23229
+ var key = _Object$keys3[_i33];
23230
23230
  var _rulesGroupByDocument = rulesGroupByDocumentFragment[key], root = _rulesGroupByDocument.root, rules = _rulesGroupByDocument.rules;
23231
23231
  var orientationRules = rules.filter(isMediaRuleWithOrientation);
23232
23232
  if (!orientationRules.length) {
23233
23233
  return 'continue';
23234
23234
  }
23235
- orientationRules.forEach(function(_ref118) {
23236
- var cssRules = _ref118.cssRules;
23235
+ orientationRules.forEach(function(_ref120) {
23236
+ var cssRules = _ref120.cssRules;
23237
23237
  Array.from(cssRules).forEach(function(cssRule) {
23238
23238
  var locked = getIsOrientationLocked(cssRule);
23239
23239
  if (locked && cssRule.selectorText.toUpperCase() !== 'HTML') {
@@ -23244,9 +23244,9 @@
23244
23244
  });
23245
23245
  });
23246
23246
  };
23247
- for (var _i35 = 0, _Object$keys3 = Object.keys(rulesGroupByDocumentFragment); _i35 < _Object$keys3.length; _i35++) {
23248
- var _ret7 = _loop9();
23249
- if (_ret7 === 'continue') {
23247
+ for (var _i33 = 0, _Object$keys3 = Object.keys(rulesGroupByDocumentFragment); _i33 < _Object$keys3.length; _i33++) {
23248
+ var _ret6 = _loop8();
23249
+ if (_ret6 === 'continue') {
23250
23250
  continue;
23251
23251
  }
23252
23252
  }
@@ -23258,8 +23258,8 @@
23258
23258
  }
23259
23259
  return false;
23260
23260
  function groupCssomByDocument(cssObjectModel) {
23261
- return cssObjectModel.reduce(function(out, _ref119) {
23262
- var sheet = _ref119.sheet, root = _ref119.root, shadowId = _ref119.shadowId;
23261
+ return cssObjectModel.reduce(function(out, _ref121) {
23262
+ var sheet = _ref121.sheet, root = _ref121.root, shadowId = _ref121.shadowId;
23263
23263
  var key = shadowId ? shadowId : 'topDocument';
23264
23264
  if (!out[key]) {
23265
23265
  out[key] = {
@@ -23275,15 +23275,15 @@
23275
23275
  return out;
23276
23276
  }, {});
23277
23277
  }
23278
- function isMediaRuleWithOrientation(_ref120) {
23279
- var type2 = _ref120.type, cssText = _ref120.cssText;
23278
+ function isMediaRuleWithOrientation(_ref122) {
23279
+ var type2 = _ref122.type, cssText = _ref122.cssText;
23280
23280
  if (type2 !== 4) {
23281
23281
  return false;
23282
23282
  }
23283
23283
  return /orientation:\s*landscape/i.test(cssText) || /orientation:\s*portrait/i.test(cssText);
23284
23284
  }
23285
- function getIsOrientationLocked(_ref121) {
23286
- var selectorText = _ref121.selectorText, style = _ref121.style;
23285
+ function getIsOrientationLocked(_ref123) {
23286
+ var selectorText = _ref123.selectorText, style = _ref123.style;
23287
23287
  if (!selectorText || style.length <= 0) {
23288
23288
  return false;
23289
23289
  }
@@ -23338,7 +23338,7 @@
23338
23338
  }
23339
23339
  }
23340
23340
  function getAngleInDegrees(angleWithUnit) {
23341
- var _ref122 = angleWithUnit.match(/(deg|grad|rad|turn)/) || [], _ref123 = _slicedToArray(_ref122, 1), unit = _ref123[0];
23341
+ var _ref124 = angleWithUnit.match(/(deg|grad|rad|turn)/) || [], _ref125 = _slicedToArray(_ref124, 1), unit = _ref125[0];
23342
23342
  if (!unit) {
23343
23343
  return 0;
23344
23344
  }
@@ -23387,7 +23387,7 @@
23387
23387
  }
23388
23388
  var css_orientation_lock_evaluate_default = cssOrientationLockEvaluate;
23389
23389
  function metaViewportScaleEvaluate(node, options, virtualNode) {
23390
- var _ref124 = options || {}, _ref124$scaleMinimum = _ref124.scaleMinimum, scaleMinimum = _ref124$scaleMinimum === void 0 ? 2 : _ref124$scaleMinimum, _ref124$lowerBound = _ref124.lowerBound, lowerBound = _ref124$lowerBound === void 0 ? false : _ref124$lowerBound;
23390
+ var _ref126 = options || {}, _ref126$scaleMinimum = _ref126.scaleMinimum, scaleMinimum = _ref126$scaleMinimum === void 0 ? 2 : _ref126$scaleMinimum, _ref126$lowerBound = _ref126.lowerBound, lowerBound = _ref126$lowerBound === void 0 ? false : _ref126$lowerBound;
23391
23391
  var content = virtualNode.attr('content') || '';
23392
23392
  if (!content) {
23393
23393
  return true;
@@ -23462,8 +23462,8 @@
23462
23462
  });
23463
23463
  return true;
23464
23464
  }
23465
- this.relatedNodes(closeNeighbors.map(function(_ref125) {
23466
- var actualNode = _ref125.actualNode;
23465
+ this.relatedNodes(closeNeighbors.map(function(_ref127) {
23466
+ var actualNode = _ref127.actualNode;
23467
23467
  return actualNode;
23468
23468
  }));
23469
23469
  if (!closeNeighbors.some(_isInTabOrder)) {
@@ -23568,8 +23568,8 @@
23568
23568
  if (obscuredNodes.length === 0) {
23569
23569
  return null;
23570
23570
  }
23571
- var obscuringRects = obscuredNodes.map(function(_ref126) {
23572
- var rect = _ref126.boundingClientRect;
23571
+ var obscuringRects = obscuredNodes.map(function(_ref128) {
23572
+ var rect = _ref128.boundingClientRect;
23573
23573
  return rect;
23574
23574
  });
23575
23575
  var unobscuredRects = _splitRects(nodeRect, obscuringRects);
@@ -23609,13 +23609,13 @@
23609
23609
  function isDescendantNotInTabOrder(vAncestor, vNode) {
23610
23610
  return vAncestor.actualNode.contains(vNode.actualNode) && !_isInTabOrder(vNode);
23611
23611
  }
23612
- function rectHasMinimumSize(minSize, _ref127) {
23613
- var width = _ref127.width, height = _ref127.height;
23612
+ function rectHasMinimumSize(minSize, _ref129) {
23613
+ var width = _ref129.width, height = _ref129.height;
23614
23614
  return width + roundingMargin2 >= minSize && height + roundingMargin2 >= minSize;
23615
23615
  }
23616
23616
  function mapActualNodes(vNodes) {
23617
- return vNodes.map(function(_ref128) {
23618
- var actualNode = _ref128.actualNode;
23617
+ return vNodes.map(function(_ref130) {
23618
+ var actualNode = _ref130.actualNode;
23619
23619
  return actualNode;
23620
23620
  });
23621
23621
  }
@@ -23641,14 +23641,14 @@
23641
23641
  }
23642
23642
  function getHeadingOrder(results) {
23643
23643
  results = _toConsumableArray(results);
23644
- results.sort(function(_ref129, _ref130) {
23645
- var nodeA = _ref129.node;
23646
- var nodeB = _ref130.node;
23644
+ results.sort(function(_ref131, _ref132) {
23645
+ var nodeA = _ref131.node;
23646
+ var nodeB = _ref132.node;
23647
23647
  return nodeA.ancestry.length - nodeB.ancestry.length;
23648
23648
  });
23649
23649
  var headingOrder = results.reduce(mergeHeadingOrder, []);
23650
- return headingOrder.filter(function(_ref131) {
23651
- var level = _ref131.level;
23650
+ return headingOrder.filter(function(_ref133) {
23651
+ var level = _ref133.level;
23652
23652
  return level !== -1;
23653
23653
  });
23654
23654
  }
@@ -23699,7 +23699,7 @@
23699
23699
  var headingRole = role && role.includes('heading');
23700
23700
  var ariaHeadingLevel = vNode.attr('aria-level');
23701
23701
  var ariaLevel = parseInt(ariaHeadingLevel, 10);
23702
- var _ref132 = vNode.props.nodeName.match(/h(\d)/) || [], _ref133 = _slicedToArray(_ref132, 2), headingLevel = _ref133[1];
23702
+ var _ref134 = vNode.props.nodeName.match(/h(\d)/) || [], _ref135 = _slicedToArray(_ref134, 2), headingLevel = _ref135[1];
23703
23703
  if (!headingRole) {
23704
23704
  return -1;
23705
23705
  }
@@ -23763,25 +23763,25 @@
23763
23763
  if (results.length < 2) {
23764
23764
  return results;
23765
23765
  }
23766
- var incompleteResults = results.filter(function(_ref134) {
23767
- var result = _ref134.result;
23766
+ var incompleteResults = results.filter(function(_ref136) {
23767
+ var result = _ref136.result;
23768
23768
  return result !== void 0;
23769
23769
  });
23770
23770
  var uniqueResults = [];
23771
23771
  var nameMap = {};
23772
- var _loop10 = function _loop10(index) {
23772
+ var _loop9 = function _loop9(index) {
23773
23773
  var _currentResult$relate;
23774
23774
  var currentResult = incompleteResults[index];
23775
23775
  var _currentResult$data = currentResult.data, name = _currentResult$data.name, urlProps = _currentResult$data.urlProps;
23776
23776
  if (nameMap[name]) {
23777
23777
  return 'continue';
23778
23778
  }
23779
- var sameNameResults = incompleteResults.filter(function(_ref135, resultNum) {
23780
- var data = _ref135.data;
23779
+ var sameNameResults = incompleteResults.filter(function(_ref137, resultNum) {
23780
+ var data = _ref137.data;
23781
23781
  return data.name === name && resultNum !== index;
23782
23782
  });
23783
- var isSameUrl = sameNameResults.every(function(_ref136) {
23784
- var data = _ref136.data;
23783
+ var isSameUrl = sameNameResults.every(function(_ref138) {
23784
+ var data = _ref138.data;
23785
23785
  return isIdenticalObject(data.urlProps, urlProps);
23786
23786
  });
23787
23787
  if (sameNameResults.length && !isSameUrl) {
@@ -23795,8 +23795,8 @@
23795
23795
  uniqueResults.push(currentResult);
23796
23796
  };
23797
23797
  for (var index = 0; index < incompleteResults.length; index++) {
23798
- var _ret8 = _loop10(index);
23799
- if (_ret8 === 'continue') {
23798
+ var _ret7 = _loop9(index);
23799
+ if (_ret7 === 'continue') {
23800
23800
  continue;
23801
23801
  }
23802
23802
  }
@@ -24200,7 +24200,7 @@
24200
24200
  var separatorRegex = /[;,\s]/;
24201
24201
  var validRedirectNumRegex = /^[0-9.]+$/;
24202
24202
  function metaRefreshEvaluate(node, options, virtualNode) {
24203
- var _ref137 = options || {}, minDelay = _ref137.minDelay, maxDelay = _ref137.maxDelay;
24203
+ var _ref139 = options || {}, minDelay = _ref139.minDelay, maxDelay = _ref139.maxDelay;
24204
24204
  var content = (virtualNode.attr('content') || '').trim();
24205
24205
  var _content$split = content.split(separatorRegex), _content$split2 = _slicedToArray(_content$split, 1), redirectStr = _content$split2[0];
24206
24206
  if (!redirectStr.match(validRedirectNumRegex)) {
@@ -24240,16 +24240,16 @@
24240
24240
  var outerText = elm.textContent.trim();
24241
24241
  var innerText = outerText;
24242
24242
  while (innerText === outerText && nextNode !== void 0) {
24243
- var _i36 = -1;
24243
+ var _i34 = -1;
24244
24244
  elm = nextNode;
24245
24245
  if (elm.children.length === 0) {
24246
24246
  return elm;
24247
24247
  }
24248
24248
  do {
24249
- _i36++;
24250
- innerText = elm.children[_i36].textContent.trim();
24251
- } while (innerText === '' && _i36 + 1 < elm.children.length);
24252
- nextNode = elm.children[_i36];
24249
+ _i34++;
24250
+ innerText = elm.children[_i34].textContent.trim();
24251
+ } while (innerText === '' && _i34 + 1 < elm.children.length);
24252
+ nextNode = elm.children[_i34];
24253
24253
  }
24254
24254
  return elm;
24255
24255
  }
@@ -24371,8 +24371,8 @@
24371
24371
  } else if (node !== document.body && has_content_default(node, true)) {
24372
24372
  return [ virtualNode ];
24373
24373
  } else {
24374
- return virtualNode.children.filter(function(_ref138) {
24375
- var actualNode = _ref138.actualNode;
24374
+ return virtualNode.children.filter(function(_ref140) {
24375
+ var actualNode = _ref140.actualNode;
24376
24376
  return actualNode.nodeType === 1;
24377
24377
  }).map(function(vNode) {
24378
24378
  return findRegionlessElms(vNode, options);
@@ -24526,8 +24526,8 @@
24526
24526
  }
24527
24527
  return false;
24528
24528
  }
24529
- function getNumberValue(domNode, _ref139) {
24530
- var cssProperty = _ref139.cssProperty, absoluteValues = _ref139.absoluteValues, normalValue = _ref139.normalValue;
24529
+ function getNumberValue(domNode, _ref141) {
24530
+ var cssProperty = _ref141.cssProperty, absoluteValues = _ref141.absoluteValues, normalValue = _ref141.normalValue;
24531
24531
  var computedStyle = window.getComputedStyle(domNode);
24532
24532
  var cssPropValue = computedStyle.getPropertyValue(cssProperty);
24533
24533
  if (cssPropValue === 'normal') {
@@ -24604,8 +24604,8 @@
24604
24604
  if (!virtualNode.children) {
24605
24605
  return void 0;
24606
24606
  }
24607
- var titleNode = virtualNode.children.find(function(_ref140) {
24608
- var props = _ref140.props;
24607
+ var titleNode = virtualNode.children.find(function(_ref142) {
24608
+ var props = _ref142.props;
24609
24609
  return props.nodeName === 'title';
24610
24610
  });
24611
24611
  if (!titleNode) {
@@ -24805,8 +24805,8 @@
24805
24805
  var aria = /^aria-/;
24806
24806
  var attrs = virtualNode.attrNames;
24807
24807
  if (attrs.length) {
24808
- for (var _i37 = 0, l = attrs.length; _i37 < l; _i37++) {
24809
- if (aria.test(attrs[_i37])) {
24808
+ for (var _i35 = 0, l = attrs.length; _i35 < l; _i35++) {
24809
+ if (aria.test(attrs[_i35])) {
24810
24810
  return true;
24811
24811
  }
24812
24812
  }
@@ -25196,7 +25196,7 @@
25196
25196
  if (!role || [ 'none', 'presentation' ].includes(role)) {
25197
25197
  return true;
25198
25198
  }
25199
- var _ref141 = aria_roles_default[role] || {}, accessibleNameRequired = _ref141.accessibleNameRequired;
25199
+ var _ref143 = aria_roles_default[role] || {}, accessibleNameRequired = _ref143.accessibleNameRequired;
25200
25200
  if (accessibleNameRequired || _isFocusable(virtualNode)) {
25201
25201
  return true;
25202
25202
  }
@@ -26007,8 +26007,8 @@
26007
26007
  lang: this.lang
26008
26008
  };
26009
26009
  var checkIDs = Object.keys(this.data.checks);
26010
- for (var _i38 = 0; _i38 < checkIDs.length; _i38++) {
26011
- var _id6 = checkIDs[_i38];
26010
+ for (var _i36 = 0; _i36 < checkIDs.length; _i36++) {
26011
+ var _id6 = checkIDs[_i36];
26012
26012
  var check = this.data.checks[_id6];
26013
26013
  var _check$messages = check.messages, pass = _check$messages.pass, fail = _check$messages.fail, incomplete = _check$messages.incomplete;
26014
26014
  locale.checks[_id6] = {
@@ -26018,8 +26018,8 @@
26018
26018
  };
26019
26019
  }
26020
26020
  var ruleIDs = Object.keys(this.data.rules);
26021
- for (var _i39 = 0; _i39 < ruleIDs.length; _i39++) {
26022
- var _id7 = ruleIDs[_i39];
26021
+ for (var _i37 = 0; _i37 < ruleIDs.length; _i37++) {
26022
+ var _id7 = ruleIDs[_i37];
26023
26023
  var rule = this.data.rules[_id7];
26024
26024
  var description = rule.description, help = rule.help;
26025
26025
  locale.rules[_id7] = {
@@ -26028,8 +26028,8 @@
26028
26028
  };
26029
26029
  }
26030
26030
  var failureSummaries = Object.keys(this.data.failureSummaries);
26031
- for (var _i40 = 0; _i40 < failureSummaries.length; _i40++) {
26032
- var type2 = failureSummaries[_i40];
26031
+ for (var _i38 = 0; _i38 < failureSummaries.length; _i38++) {
26032
+ var type2 = failureSummaries[_i38];
26033
26033
  var failureSummary2 = this.data.failureSummaries[type2];
26034
26034
  var failureMessage = failureSummary2.failureMessage;
26035
26035
  locale.failureSummaries[type2] = {
@@ -26052,8 +26052,8 @@
26052
26052
  key: '_applyCheckLocale',
26053
26053
  value: function _applyCheckLocale(checks) {
26054
26054
  var keys = Object.keys(checks);
26055
- for (var _i41 = 0; _i41 < keys.length; _i41++) {
26056
- var _id8 = keys[_i41];
26055
+ for (var _i39 = 0; _i39 < keys.length; _i39++) {
26056
+ var _id8 = keys[_i39];
26057
26057
  if (!this.data.checks[_id8]) {
26058
26058
  throw new Error('Locale provided for unknown check: "'.concat(_id8, '"'));
26059
26059
  }
@@ -26064,8 +26064,8 @@
26064
26064
  key: '_applyRuleLocale',
26065
26065
  value: function _applyRuleLocale(rules) {
26066
26066
  var keys = Object.keys(rules);
26067
- for (var _i42 = 0; _i42 < keys.length; _i42++) {
26068
- var _id9 = keys[_i42];
26067
+ for (var _i40 = 0; _i40 < keys.length; _i40++) {
26068
+ var _id9 = keys[_i40];
26069
26069
  if (!this.data.rules[_id9]) {
26070
26070
  throw new Error('Locale provided for unknown rule: "'.concat(_id9, '"'));
26071
26071
  }
@@ -26076,8 +26076,8 @@
26076
26076
  key: '_applyFailureSummaries',
26077
26077
  value: function _applyFailureSummaries(messages) {
26078
26078
  var keys = Object.keys(messages);
26079
- for (var _i43 = 0; _i43 < keys.length; _i43++) {
26080
- var _key8 = keys[_i43];
26079
+ for (var _i41 = 0; _i41 < keys.length; _i41++) {
26080
+ var _key8 = keys[_i41];
26081
26081
  if (!this.data.failureSummaries[_key8]) {
26082
26082
  throw new Error('Locale provided for unknown failureMessage: "'.concat(_key8, '"'));
26083
26083
  }
@@ -26507,8 +26507,8 @@
26507
26507
  });
26508
26508
  };
26509
26509
  }
26510
- function getHelpUrl(_ref142, ruleId, version) {
26511
- var brand = _ref142.brand, application = _ref142.application, lang = _ref142.lang;
26510
+ function getHelpUrl(_ref144, ruleId, version) {
26511
+ var brand = _ref144.brand, application = _ref144.application, lang = _ref144.lang;
26512
26512
  return constants_default.helpUrlBase + brand + '/' + (version || axe.version.substring(0, axe.version.lastIndexOf('.'))) + '/' + ruleId + '?application=' + encodeURIComponent(application) + (lang && lang !== 'en' ? '&lang=' + encodeURIComponent(lang) : '');
26513
26513
  }
26514
26514
  function setupGlobals(context) {
@@ -26721,9 +26721,9 @@
26721
26721
  toolOptions: options
26722
26722
  });
26723
26723
  }
26724
- function normalizeRunParams(_ref143) {
26725
- var _ref145, _options$reporter, _axe$_audit;
26726
- var _ref144 = _slicedToArray(_ref143, 3), context = _ref144[0], options = _ref144[1], callback = _ref144[2];
26724
+ function normalizeRunParams(_ref145) {
26725
+ var _ref147, _options$reporter, _axe$_audit;
26726
+ var _ref146 = _slicedToArray(_ref145, 3), context = _ref146[0], options = _ref146[1], callback = _ref146[2];
26727
26727
  var typeErr = new TypeError('axe.run arguments are invalid');
26728
26728
  if (!isContextSpec(context)) {
26729
26729
  if (callback !== void 0) {
@@ -26744,7 +26744,7 @@
26744
26744
  throw typeErr;
26745
26745
  }
26746
26746
  options = _clone(options);
26747
- options.reporter = (_ref145 = (_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 && _ref145 !== void 0 ? _ref145 : 'v1';
26747
+ options.reporter = (_ref147 = (_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 && _ref147 !== void 0 ? _ref147 : 'v1';
26748
26748
  return {
26749
26749
  context: context,
26750
26750
  options: options,
@@ -26849,14 +26849,14 @@
26849
26849
  return new Promise(function(res, rej) {
26850
26850
  axe._audit.run(contextObj, options, res, rej);
26851
26851
  }).then(function(results) {
26852
- results = results.map(function(_ref146) {
26853
- var nodes = _ref146.nodes, result = _objectWithoutProperties(_ref146, _excluded13);
26852
+ results = results.map(function(_ref148) {
26853
+ var nodes = _ref148.nodes, result = _objectWithoutProperties(_ref148, _excluded13);
26854
26854
  return _extends({
26855
26855
  nodes: nodes.map(serializeNode)
26856
26856
  }, result);
26857
26857
  });
26858
- var frames = contextObj.frames.map(function(_ref147) {
26859
- var node = _ref147.node;
26858
+ var frames = contextObj.frames.map(function(_ref149) {
26859
+ var node = _ref149.node;
26860
26860
  return new dq_element_default(node, options).toJSON();
26861
26861
  });
26862
26862
  var environmentData;
@@ -26876,13 +26876,13 @@
26876
26876
  return Promise.reject(err2);
26877
26877
  });
26878
26878
  }
26879
- function serializeNode(_ref148) {
26880
- var node = _ref148.node, nodeResult = _objectWithoutProperties(_ref148, _excluded14);
26879
+ function serializeNode(_ref150) {
26880
+ var node = _ref150.node, nodeResult = _objectWithoutProperties(_ref150, _excluded14);
26881
26881
  nodeResult.node = node.toJSON();
26882
- for (var _i44 = 0, _arr4 = [ 'any', 'all', 'none' ]; _i44 < _arr4.length; _i44++) {
26883
- var type2 = _arr4[_i44];
26884
- nodeResult[type2] = nodeResult[type2].map(function(_ref149) {
26885
- var relatedNodes = _ref149.relatedNodes, checkResult = _objectWithoutProperties(_ref149, _excluded15);
26882
+ for (var _i42 = 0, _arr4 = [ 'any', 'all', 'none' ]; _i42 < _arr4.length; _i42++) {
26883
+ var type2 = _arr4[_i42];
26884
+ nodeResult[type2] = nodeResult[type2].map(function(_ref151) {
26885
+ var relatedNodes = _ref151.relatedNodes, checkResult = _objectWithoutProperties(_ref151, _excluded15);
26886
26886
  return _extends({}, checkResult, {
26887
26887
  relatedNodes: relatedNodes.map(function(relatedNode) {
26888
26888
  return relatedNode.toJSON();
@@ -26893,14 +26893,14 @@
26893
26893
  return nodeResult;
26894
26894
  }
26895
26895
  function finishRun(partialResults) {
26896
- var _ref151, _options$reporter2, _axe$_audit2;
26896
+ var _ref153, _options$reporter2, _axe$_audit2;
26897
26897
  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
26898
26898
  options = _clone(options);
26899
- var _ref150 = partialResults.find(function(r) {
26899
+ var _ref152 = partialResults.find(function(r) {
26900
26900
  return r.environmentData;
26901
- }) || {}, environmentData = _ref150.environmentData;
26901
+ }) || {}, environmentData = _ref152.environmentData;
26902
26902
  axe._audit.normalizeOptions(options);
26903
- options.reporter = (_ref151 = (_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 && _ref151 !== void 0 ? _ref151 : 'v1';
26903
+ options.reporter = (_ref153 = (_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 && _ref153 !== void 0 ? _ref153 : 'v1';
26904
26904
  setFrameSpec(partialResults);
26905
26905
  var results = merge_results_default(partialResults);
26906
26906
  results = axe._audit.after(results, options);
@@ -26930,8 +26930,8 @@
26930
26930
  _iterator22.f();
26931
26931
  }
26932
26932
  }
26933
- function getMergedFrameSpecs(_ref152) {
26934
- var childFrameSpecs = _ref152.frames, parentFrameSpec = _ref152.frameSpec;
26933
+ function getMergedFrameSpecs(_ref154) {
26934
+ var childFrameSpecs = _ref154.frames, parentFrameSpec = _ref154.frameSpec;
26935
26935
  if (!parentFrameSpec) {
26936
26936
  return childFrameSpecs;
26937
26937
  }
@@ -26991,12 +26991,12 @@
26991
26991
  var transformedResults = results.map(function(result) {
26992
26992
  var transformedResult = _extends({}, result);
26993
26993
  var types = [ 'passes', 'violations', 'incomplete', 'inapplicable' ];
26994
- for (var _i45 = 0, _types = types; _i45 < _types.length; _i45++) {
26995
- var type2 = _types[_i45];
26994
+ for (var _i43 = 0, _types = types; _i43 < _types.length; _i43++) {
26995
+ var type2 = _types[_i43];
26996
26996
  if (transformedResult[type2] && Array.isArray(transformedResult[type2])) {
26997
- transformedResult[type2] = transformedResult[type2].map(function(_ref153) {
26997
+ transformedResult[type2] = transformedResult[type2].map(function(_ref155) {
26998
26998
  var _node;
26999
- var node = _ref153.node, typeResult = _objectWithoutProperties(_ref153, _excluded18);
26999
+ var node = _ref155.node, typeResult = _objectWithoutProperties(_ref155, _excluded18);
27000
27000
  node = typeof ((_node = node) === null || _node === void 0 ? void 0 : _node.toJSON) === 'function' ? node.toJSON() : node;
27001
27001
  return _extends({
27002
27002
  node: node
@@ -27770,7 +27770,7 @@
27770
27770
  }
27771
27771
  },
27772
27772
  'no-implicit-explicit-label': {
27773
- impact: 'moderate',
27773
+ impact: 'serious',
27774
27774
  messages: {
27775
27775
  pass: 'There is no mismatch between a <label> and accessible name',
27776
27776
  incomplete: 'Check that the <label> does not need be part of the ARIA ${data} field\'s name'
@@ -29383,7 +29383,7 @@
29383
29383
  },
29384
29384
  id: 'non-empty-placeholder'
29385
29385
  }, 'presentational-role' ],
29386
- none: [ 'help-same-as-label', 'hidden-explicit-label' ]
29386
+ none: [ 'hidden-explicit-label' ]
29387
29387
  }, {
29388
29388
  id: 'landmark-banner-is-top-level',
29389
29389
  selector: 'header:not([role]), [role=banner]',
@@ -29422,7 +29422,7 @@
29422
29422
  any: [ {
29423
29423
  options: {
29424
29424
  selector: 'header:not([role]), [role=banner]',
29425
- nativeScopeFilter: 'article, aside, main, nav, section'
29425
+ role: 'banner'
29426
29426
  },
29427
29427
  id: 'page-no-duplicate-banner'
29428
29428
  } ],
@@ -29435,7 +29435,7 @@
29435
29435
  any: [ {
29436
29436
  options: {
29437
29437
  selector: 'footer:not([role]), [role=contentinfo]',
29438
- nativeScopeFilter: 'article, aside, main, nav, section'
29438
+ role: 'contentinfo'
29439
29439
  },
29440
29440
  id: 'page-no-duplicate-contentinfo'
29441
29441
  } ],
@@ -29738,7 +29738,7 @@
29738
29738
  },
29739
29739
  id: 'non-empty-title'
29740
29740
  }, 'presentational-role' ],
29741
- none: [ 'help-same-as-label', 'hidden-explicit-label' ]
29741
+ none: [ 'hidden-explicit-label' ]
29742
29742
  }, {
29743
29743
  id: 'server-side-image-map',
29744
29744
  selector: 'img[ismap]',
@@ -30079,7 +30079,7 @@
30079
30079
  after: 'page-no-duplicate-after',
30080
30080
  options: {
30081
30081
  selector: 'header:not([role]), [role=banner]',
30082
- nativeScopeFilter: 'article, aside, main, nav, section'
30082
+ role: 'banner'
30083
30083
  }
30084
30084
  }, {
30085
30085
  id: 'page-no-duplicate-contentinfo',
@@ -30087,7 +30087,7 @@
30087
30087
  after: 'page-no-duplicate-after',
30088
30088
  options: {
30089
30089
  selector: 'footer:not([role]), [role=contentinfo]',
30090
- nativeScopeFilter: 'article, aside, main, nav, section'
30090
+ role: 'contentinfo'
30091
30091
  }
30092
30092
  }, {
30093
30093
  id: 'page-no-duplicate-main',
@@ -30113,8 +30113,7 @@
30113
30113
  evaluate: 'explicit-evaluate'
30114
30114
  }, {
30115
30115
  id: 'help-same-as-label',
30116
- evaluate: 'help-same-as-label-evaluate',
30117
- enabled: false
30116
+ evaluate: 'help-same-as-label-evaluate'
30118
30117
  }, {
30119
30118
  id: 'hidden-explicit-label',
30120
30119
  evaluate: 'hidden-explicit-label-evaluate'