react-magma-dom 4.9.2-next.0 → 4.9.2-next.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -9577,12 +9577,12 @@
9577
9577
  "typeArguments": [
9578
9578
  {
9579
9579
  "type": "reference",
9580
- "id": 16787,
9580
+ "id": 17458,
9581
9581
  "name": "NavTabChildrenProps"
9582
9582
  },
9583
9583
  {
9584
9584
  "type": "reference",
9585
- "id": 17061,
9585
+ "id": 17732,
9586
9586
  "name": "NavTabComponentProps"
9587
9587
  }
9588
9588
  ],
@@ -9684,7 +9684,7 @@
9684
9684
  "typeArguments": [
9685
9685
  {
9686
9686
  "type": "reference",
9687
- "id": 14992,
9687
+ "id": 15663,
9688
9688
  "name": "TabsProps"
9689
9689
  },
9690
9690
  {
@@ -15540,12 +15540,12 @@
15540
15540
  "types": [
15541
15541
  {
15542
15542
  "type": "reference",
15543
- "id": 14989,
15543
+ "id": 15660,
15544
15544
  "name": "HorizontalTabsProps"
15545
15545
  },
15546
15546
  {
15547
15547
  "type": "reference",
15548
- "id": 14986,
15548
+ "id": 15657,
15549
15549
  "name": "VerticalTabsProps"
15550
15550
  }
15551
15551
  ]
@@ -4968,6 +4968,54 @@ var TableHeaderCell = /*#__PURE__*/React.forwardRef(function (props, ref) {
4968
4968
  });
4969
4969
  TableHeaderCell.displayName = 'TableHeaderCell';
4970
4970
 
4971
+ var useDeviceDetect = function useDeviceDetect() {
4972
+ var userAgent = React.useMemo(function () {
4973
+ return navigator.userAgent.toLowerCase();
4974
+ }, []);
4975
+ var isSafari = React.useMemo(function () {
4976
+ return /^((?!chrome|android).)*safari/i.test(userAgent);
4977
+ }, [userAgent]);
4978
+ var isChrome = React.useMemo(function () {
4979
+ return /chrome|crios/i.test(userAgent) && !/edge|edg/i.test(userAgent);
4980
+ }, [userAgent]);
4981
+ var isFirefox = React.useMemo(function () {
4982
+ return /firefox|fxios/i.test(userAgent);
4983
+ }, [userAgent]);
4984
+ var isEdge = React.useMemo(function () {
4985
+ return /edge|edg/i.test(userAgent);
4986
+ }, [userAgent]);
4987
+ var isMobile = React.useMemo(function () {
4988
+ return /mobi|android|touch|mini/i.test(userAgent);
4989
+ }, [userAgent]);
4990
+ var isWindows = React.useMemo(function () {
4991
+ return /windows nt/.test(userAgent);
4992
+ }, [userAgent]);
4993
+ var isMacOS = React.useMemo(function () {
4994
+ return /macintosh/.test(userAgent);
4995
+ }, [userAgent]);
4996
+ var isAndroid = React.useMemo(function () {
4997
+ return /android/.test(userAgent);
4998
+ }, [userAgent]);
4999
+ var isIOS = React.useMemo(function () {
5000
+ return /iphone|ipad|ipod/.test(userAgent);
5001
+ }, [userAgent]);
5002
+ var isLinux = React.useMemo(function () {
5003
+ return /linux/.test(userAgent) && !isAndroid;
5004
+ }, [userAgent, isAndroid]);
5005
+ return {
5006
+ isSafari: isSafari,
5007
+ isChrome: isChrome,
5008
+ isFirefox: isFirefox,
5009
+ isEdge: isEdge,
5010
+ isMobile: isMobile,
5011
+ isWindows: isWindows,
5012
+ isMacOS: isMacOS,
5013
+ isLinux: isLinux,
5014
+ isAndroid: isAndroid,
5015
+ isIOS: isIOS
5016
+ };
5017
+ };
5018
+
4971
5019
  var _excluded$w = ["children", "hasCharacterCounter", "id", "inputLength", "maxCount", "maxLength", "testId", "isInverse"];
4972
5020
  // Changes the font weight to bold based on maxCount.
4973
5021
  function buildFontWeight(props) {
@@ -4981,7 +5029,7 @@ var StyledInputMessage = /*#__PURE__*/_styled(InputMessage, {
4981
5029
  label: "StyledInputMessage"
4982
5030
  })("font-weight:", buildFontWeight, ";font-family:", function (props) {
4983
5031
  return props.theme.bodyFont;
4984
- }, ";" + ( "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkNoYXJhY3RlckNvdW50ZXIudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWFnRCIsImZpbGUiOiJDaGFyYWN0ZXJDb3VudGVyLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0JztcclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgeyBJMThuQ29udGV4dCB9IGZyb20gJy4uLy4uL2kxOG4nO1xyXG5pbXBvcnQgeyBtYWdtYSB9IGZyb20gJy4uLy4uL3RoZW1lL21hZ21hJztcclxuaW1wb3J0IHsgSW5wdXRNZXNzYWdlIH0gZnJvbSAnLi4vSW5wdXQvSW5wdXRNZXNzYWdlJztcclxuLy8gQ2hhbmdlcyB0aGUgZm9udCB3ZWlnaHQgdG8gYm9sZCBiYXNlZCBvbiBtYXhDb3VudC5cclxuZnVuY3Rpb24gYnVpbGRGb250V2VpZ2h0KHByb3BzKSB7XHJcbiAgICBpZiAoKHByb3BzLmlucHV0TGVuZ3RoIDwgcHJvcHMubWF4Q291bnQgJiYgcHJvcHMuaW5wdXRMZW5ndGggPj0gMSkgfHxcclxuICAgICAgICBwcm9wcy5pbnB1dExlbmd0aCA9PT0gcHJvcHMubWF4Q291bnQpIHtcclxuICAgICAgICByZXR1cm4gbWFnbWEudHlwb2dyYXBoeVZpc3VhbFN0eWxlcy5oZWFkaW5nWFNtYWxsLmZvbnRXZWlnaHQ7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gJ2luaGVyaXQnO1xyXG59XHJcbmNvbnN0IFN0eWxlZElucHV0TWVzc2FnZSA9IHN0eWxlZChJbnB1dE1lc3NhZ2UpIGBcbiAgZm9udC13ZWlnaHQ6ICR7YnVpbGRGb250V2VpZ2h0fTtcbiAgZm9udC1mYW1pbHk6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuYm9keUZvbnR9O1xuYDtcclxuZXhwb3J0IGNvbnN0IENoYXJhY3RlckNvdW50ZXIgPSBSZWFjdC5mb3J3YXJkUmVmKChwcm9wcywgcmVmKSA9PiB7XHJcbiAgICBjb25zdCB7IGNoaWxkcmVuLCBoYXNDaGFyYWN0ZXJDb3VudGVyLCBpZCwgaW5wdXRMZW5ndGgsIG1heENvdW50LCBtYXhMZW5ndGgsIHRlc3RJZCwgaXNJbnZlcnNlLCAuLi5yZXN0IH0gPSBwcm9wcztcclxuICAgIGNvbnN0IGkxOG4gPSBSZWFjdC51c2VDb250ZXh0KEkxOG5Db250ZXh0KTtcclxuICAgIC8vIFRlbXBvcmFyeSB3aGlsZSBib3RoICdtYXhMZW5ndGgnIGFuZCAnbWF4Q291bnQnIGFyZSBzdXBwb3J0ZWQuIFRvIGJlIHJlbW92ZWQgaW4gZnV0dXJlIGl0ZXJhdGlvbnMuXHJcbiAgICBjb25zdCBtYXhDaGFyYWN0ZXJzID0gdHlwZW9mIG1heENvdW50ID09PSAnbnVtYmVyJyA/IG1heENvdW50IDogbWF4TGVuZ3RoO1xyXG4gICAgY29uc3QgaXNPdmVyTWF4Q291bnQgPSBpbnB1dExlbmd0aCA+IG1heENoYXJhY3RlcnM7XHJcbiAgICAvLyBHZXRzIHBlcmNlbnRhZ2UgdmFsdWUgb2YgdG90YWwgY2hhcmFjdGVycyB3aXRoaW4gSW5wdXQgdG8gbGV0IGFyaWEtbGl2ZSBoYXZlIGR5bmFtaWMgc3RhdGVzLlxyXG4gICAgY29uc3QgZ2V0UGVyY2VudGFnZSA9IChpbnB1dExlbmd0aCAvIG1heENoYXJhY3RlcnMpICogMTAwO1xyXG4gICAgLy8gUmV0dXJucyBhcmlhLWxpdmUgc3RhdGVzIGJhc2VkIG9uIHBlcmNlbnRhZ2Ugb2YgY2hhcmFjdGVycyB3aXRoaW4gSW5wdXQuXHJcbiAgICBmdW5jdGlvbiBnZXRBcmlhTGl2ZVN0YXRlKCkge1xyXG4gICAgICAgIGlmIChnZXRQZXJjZW50YWdlID49IDgwKSB7XHJcbiAgICAgICAgICAgIGlmIChnZXRQZXJjZW50YWdlID4gMTAwKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gJ2Fzc2VydGl2ZSc7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcmV0dXJuICdwb2xpdGUnO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gJ29mZic7XHJcbiAgICB9XHJcbiAgICAvLyBBcyB0aGUgdXNlciB0eXBlcywgdGhpcyBjYWxjdWxhdGVzIHRoZSByZW1haW5pbmcgY2hhcmFjdGVycyBzZXQgYnkgbWF4Q291bnQgd2hpY2ggY291bnRzIGRvd24gdG8gemVybyB0aGVuIGNvdW50cyB1cCBpZiBvdmVyIHRoZSBsaW1pdC5cclxuICAgIGNvbnN0IGNoYXJhY3RlckxpbWl0ID0gbWF4Q2hhcmFjdGVycyA+IGlucHV0TGVuZ3RoXHJcbiAgICAgICAgPyBtYXhDaGFyYWN0ZXJzIC0gaW5wdXRMZW5ndGhcclxuICAgICAgICA6IGlucHV0TGVuZ3RoIC0gbWF4Q2hhcmFjdGVycztcclxuICAgIC8qXHJcbiAgICAgKiBSZXR1cm5zIHRoZSBjaGFyYWN0ZXIgY291bnRlciBkZXNjcmlwdGlvbi5cclxuICAgICAqIFdoZW4gdGhlcmUncyBubyBpbnB1dExlbmd0aCwgcmV0dXJucyBcIiMgY2hhcmFjdGVyKHMpIGFsbG93ZWRcIlxyXG4gICAgICogV2hlbiBpbnB1dExlbmd0aCA8IG1heENvdW50IG9yIGlucHV0TGVuZ3RoID09PSBtYXhDb3VudCwgcmV0dXJucyBcIiMgY2hhcmFjdGVyKHMpIGxlZnRcIlxyXG4gICAgICogV2hlbiBpbnB1dExlbmd0aCA+IG1heENvdW50LCByZXR1cm5zIFwiIyBjaGFyYWN0ZXIocykgb3ZlciBsaW1pdFwiXHJcbiAgICAgKi9cclxuICAgIGZ1bmN0aW9uIGNoYXJhY3RlclRpdGxlKCkge1xyXG4gICAgICAgIGlmIChpbnB1dExlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgaWYgKGlucHV0TGVuZ3RoIDwgbWF4Q2hhcmFjdGVycykge1xyXG4gICAgICAgICAgICAgICAgaWYgKGlucHV0TGVuZ3RoID09PSBtYXhDaGFyYWN0ZXJzIC0gMSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBgJHtjaGFyYWN0ZXJMaW1pdH0gJHtpMThuLmNoYXJhY3RlckNvdW50ZXIuY2hhcmFjdGVyTGVmdH1gO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgZWxzZSBpZiAoY2hhcmFjdGVyTGltaXQgPiAxKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGAke2NoYXJhY3RlckxpbWl0fSAke2kxOG4uY2hhcmFjdGVyQ291bnRlci5jaGFyYWN0ZXJzTGVmdH1gO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGlmIChpbnB1dExlbmd0aCA+IG1heENoYXJhY3RlcnMpIHtcclxuICAgICAgICAgICAgICAgIGlmIChpbnB1dExlbmd0aCA9PT0gbWF4Q2hhcmFjdGVycyArIDEpIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gYCR7Y2hhcmFjdGVyTGltaXR9ICR7aTE4bi5jaGFyYWN0ZXJDb3VudGVyLmNoYXJhY3Rlck92ZXJ9YDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHJldHVybiBgJHtjaGFyYWN0ZXJMaW1pdH0gJHtpMThuLmNoYXJhY3RlckNvdW50ZXIuY2hhcmFjdGVyc092ZXJ9YDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZiAoaW5wdXRMZW5ndGggPT09IG1heENoYXJhY3RlcnMpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiBgMCAke2kxOG4uY2hhcmFjdGVyQ291bnRlci5jaGFyYWN0ZXJzTGVmdH1gO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICBpZiAobWF4Q2hhcmFjdGVycyA9PT0gMSkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIGAke21heENoYXJhY3RlcnN9ICR7aTE4bi5jaGFyYWN0ZXJDb3VudGVyLmNoYXJhY3RlckFsbG93ZWR9YDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICByZXR1cm4gYCR7bWF4Q2hhcmFjdGVyc30gJHtpMThuLmNoYXJhY3RlckNvdW50ZXIuY2hhcmFjdGVyc0FsbG93ZWR9YDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gKFJlYWN0LmNyZWF0ZUVsZW1lbnQoXCJkaXZcIiwgT2JqZWN0LmFzc2lnbih7IFwiZGF0YS10ZXN0aWRcIjogdGVzdElkLCBpZDogaWQsIHJlZjogcmVmIH0sIHJlc3QpLFxyXG4gICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoU3R5bGVkSW5wdXRNZXNzYWdlLCB7IFwiYXJpYS1saXZlXCI6IGdldEFyaWFMaXZlU3RhdGUoKSwgaGFzQ2hhcmFjdGVyQ291bnRlcjogaGFzQ2hhcmFjdGVyQ291bnRlciwgaGFzRXJyb3I6IGlzT3Zlck1heENvdW50LCBpc0ludmVyc2U6IGlzSW52ZXJzZSwgaW5wdXRMZW5ndGg6IGlucHV0TGVuZ3RoLCBtYXhDb3VudDogbWF4Q2hhcmFjdGVycywgbWF4TGVuZ3RoOiBtYXhDaGFyYWN0ZXJzIH0sIGNoYXJhY3RlclRpdGxlKCkpKSk7XHJcbn0pO1xyXG4vLyMgc291cmNlTWFwcGluZ1VSTD1DaGFyYWN0ZXJDb3VudGVyLmpzLm1hcCJdfQ== */"));
5032
+ }, ";" + ( "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkNoYXJhY3RlckNvdW50ZXIudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWdCZ0QiLCJmaWxlIjoiQ2hhcmFjdGVyQ291bnRlci50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBSZWFjdCBmcm9tICdyZWFjdCc7XHJcbmltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcclxuaW1wb3J0IHVzZURldmljZURldGVjdCBmcm9tICcuLi8uLi9ob29rcy91c2VEZXZpY2VEZXRlY3QnO1xyXG5pbXBvcnQgeyBJMThuQ29udGV4dCB9IGZyb20gJy4uLy4uL2kxOG4nO1xyXG5pbXBvcnQgeyBtYWdtYSB9IGZyb20gJy4uLy4uL3RoZW1lL21hZ21hJztcclxuaW1wb3J0IHsgZGVib3VuY2UgfSBmcm9tICcuLi8uLi91dGlscyc7XHJcbmltcG9ydCB7IEhpZGRlbkxhYmVsVGV4dCB9IGZyb20gJy4uL0NoZWNrYm94JztcclxuaW1wb3J0IHsgSW5wdXRNZXNzYWdlIH0gZnJvbSAnLi4vSW5wdXQvSW5wdXRNZXNzYWdlJztcclxuLy8gQ2hhbmdlcyB0aGUgZm9udCB3ZWlnaHQgdG8gYm9sZCBiYXNlZCBvbiBtYXhDb3VudC5cclxuZnVuY3Rpb24gYnVpbGRGb250V2VpZ2h0KHByb3BzKSB7XHJcbiAgICBpZiAoKHByb3BzLmlucHV0TGVuZ3RoIDwgcHJvcHMubWF4Q291bnQgJiYgcHJvcHMuaW5wdXRMZW5ndGggPj0gMSkgfHxcclxuICAgICAgICBwcm9wcy5pbnB1dExlbmd0aCA9PT0gcHJvcHMubWF4Q291bnQpIHtcclxuICAgICAgICByZXR1cm4gbWFnbWEudHlwb2dyYXBoeVZpc3VhbFN0eWxlcy5oZWFkaW5nWFNtYWxsLmZvbnRXZWlnaHQ7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gJ2luaGVyaXQnO1xyXG59XHJcbmNvbnN0IFN0eWxlZElucHV0TWVzc2FnZSA9IHN0eWxlZChJbnB1dE1lc3NhZ2UpIGBcbiAgZm9udC13ZWlnaHQ6ICR7YnVpbGRGb250V2VpZ2h0fTtcbiAgZm9udC1mYW1pbHk6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuYm9keUZvbnR9O1xuYDtcclxuZXhwb3J0IGNvbnN0IENoYXJhY3RlckNvdW50ZXIgPSBSZWFjdC5mb3J3YXJkUmVmKChwcm9wcywgcmVmKSA9PiB7XHJcbiAgICBjb25zdCB7IGNoaWxkcmVuLCBoYXNDaGFyYWN0ZXJDb3VudGVyLCBpZCwgaW5wdXRMZW5ndGgsIG1heENvdW50LCBtYXhMZW5ndGgsIHRlc3RJZCwgaXNJbnZlcnNlLCAuLi5yZXN0IH0gPSBwcm9wcztcclxuICAgIGNvbnN0IGkxOG4gPSBSZWFjdC51c2VDb250ZXh0KEkxOG5Db250ZXh0KTtcclxuICAgIC8vIFRlbXBvcmFyeSB3aGlsZSBib3RoICdtYXhMZW5ndGgnIGFuZCAnbWF4Q291bnQnIGFyZSBzdXBwb3J0ZWQuIFRvIGJlIHJlbW92ZWQgaW4gZnV0dXJlIGl0ZXJhdGlvbnMuXHJcbiAgICBjb25zdCBtYXhDaGFyYWN0ZXJzID0gdHlwZW9mIG1heENvdW50ID09PSAnbnVtYmVyJyA/IG1heENvdW50IDogbWF4TGVuZ3RoO1xyXG4gICAgY29uc3QgaXNPdmVyTWF4Q291bnQgPSBpbnB1dExlbmd0aCA+IG1heENoYXJhY3RlcnM7XHJcbiAgICAvLyBHZXRzIHBlcmNlbnRhZ2UgdmFsdWUgb2YgdG90YWwgY2hhcmFjdGVycyB3aXRoaW4gSW5wdXQgdG8gbGV0IGFyaWEtbGl2ZSBoYXZlIGR5bmFtaWMgc3RhdGVzLlxyXG4gICAgY29uc3QgZ2V0UGVyY2VudGFnZSA9IChpbnB1dExlbmd0aCAvIG1heENoYXJhY3RlcnMpICogMTAwO1xyXG4gICAgLy8gUmV0dXJucyBhcmlhLWxpdmUgc3RhdGVzIGJhc2VkIG9uIHBlcmNlbnRhZ2Ugb2YgY2hhcmFjdGVycyB3aXRoaW4gSW5wdXQuXHJcbiAgICBmdW5jdGlvbiBnZXRBcmlhTGl2ZVN0YXRlKCkge1xyXG4gICAgICAgIGlmIChnZXRQZXJjZW50YWdlID4gMTAwKSB7XHJcbiAgICAgICAgICAgIHJldHVybiAnYXNzZXJ0aXZlJztcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuICdwb2xpdGUnO1xyXG4gICAgfVxyXG4gICAgLy8gQXMgdGhlIHVzZXIgdHlwZXMsIHRoaXMgY2FsY3VsYXRlcyB0aGUgcmVtYWluaW5nIGNoYXJhY3RlcnMgc2V0IGJ5IG1heENvdW50IHdoaWNoIGNvdW50cyBkb3duIHRvIHplcm8gdGhlbiBjb3VudHMgdXAgaWYgb3ZlciB0aGUgbGltaXQuXHJcbiAgICBjb25zdCBjaGFyYWN0ZXJMaW1pdCA9IG1heENoYXJhY3RlcnMgPiBpbnB1dExlbmd0aFxyXG4gICAgICAgID8gbWF4Q2hhcmFjdGVycyAtIGlucHV0TGVuZ3RoXHJcbiAgICAgICAgOiBpbnB1dExlbmd0aCAtIG1heENoYXJhY3RlcnM7XHJcbiAgICAvKlxyXG4gICAgICogUmV0dXJucyB0aGUgY2hhcmFjdGVyIGNvdW50ZXIgZGVzY3JpcHRpb24uXHJcbiAgICAgKiBXaGVuIHRoZXJlJ3Mgbm8gaW5wdXRMZW5ndGgsIHJldHVybnMgXCIjIGNoYXJhY3RlcihzKSBhbGxvd2VkXCJcclxuICAgICAqIFdoZW4gaW5wdXRMZW5ndGggPCBtYXhDb3VudCBvciBpbnB1dExlbmd0aCA9PT0gbWF4Q291bnQsIHJldHVybnMgXCIjIGNoYXJhY3RlcihzKSBsZWZ0XCJcclxuICAgICAqIFdoZW4gaW5wdXRMZW5ndGggPiBtYXhDb3VudCwgcmV0dXJucyBcIiMgY2hhcmFjdGVyKHMpIG92ZXIgbGltaXRcIlxyXG4gICAgICovXHJcbiAgICBjb25zdCBjaGFyYWN0ZXJUaXRsZSA9IFJlYWN0LnVzZU1lbW8oKCkgPT4ge1xyXG4gICAgICAgIGlmIChpbnB1dExlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgaWYgKGlucHV0TGVuZ3RoIDwgbWF4Q2hhcmFjdGVycykge1xyXG4gICAgICAgICAgICAgICAgaWYgKGlucHV0TGVuZ3RoID09PSBtYXhDaGFyYWN0ZXJzIC0gMSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBgJHtjaGFyYWN0ZXJMaW1pdH0gJHtpMThuLmNoYXJhY3RlckNvdW50ZXIuY2hhcmFjdGVyTGVmdH1gO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgZWxzZSBpZiAoY2hhcmFjdGVyTGltaXQgPiAxKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGAke2NoYXJhY3RlckxpbWl0fSAke2kxOG4uY2hhcmFjdGVyQ291bnRlci5jaGFyYWN0ZXJzTGVmdH1gO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGlmIChpbnB1dExlbmd0aCA+IG1heENoYXJhY3RlcnMpIHtcclxuICAgICAgICAgICAgICAgIGlmIChpbnB1dExlbmd0aCA9PT0gbWF4Q2hhcmFjdGVycyArIDEpIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gYCR7Y2hhcmFjdGVyTGltaXR9ICR7aTE4bi5jaGFyYWN0ZXJDb3VudGVyLmNoYXJhY3Rlck92ZXJ9YDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHJldHVybiBgJHtjaGFyYWN0ZXJMaW1pdH0gJHtpMThuLmNoYXJhY3RlckNvdW50ZXIuY2hhcmFjdGVyc092ZXJ9YDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBpZiAoaW5wdXRMZW5ndGggPT09IG1heENoYXJhY3RlcnMpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiBgMCAke2kxOG4uY2hhcmFjdGVyQ291bnRlci5jaGFyYWN0ZXJzTGVmdH1gO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICBpZiAobWF4Q2hhcmFjdGVycyA9PT0gMSkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIGAke21heENoYXJhY3RlcnN9ICR7aTE4bi5jaGFyYWN0ZXJDb3VudGVyLmNoYXJhY3RlckFsbG93ZWR9YDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICByZXR1cm4gYCR7bWF4Q2hhcmFjdGVyc30gJHtpMThuLmNoYXJhY3RlckNvdW50ZXIuY2hhcmFjdGVyc0FsbG93ZWR9YDtcclxuICAgICAgICB9XHJcbiAgICB9LCBbY2hhcmFjdGVyTGltaXQsIGlucHV0TGVuZ3RoLCBpMThuLmNoYXJhY3RlckNvdW50ZXIsIG1heENoYXJhY3RlcnNdKTtcclxuICAgIC8vIFNldHMgdGhlIHNjcmVlbiByZWFkZXIgbWVzc2FnZSB0byBhbm5vdW5jZSB0aGUgY2hhcmFjdGVyIGNvdW50ZXIuXHJcbiAgICBjb25zdCBbc2NyZWVuUmVhZGVyTWVzc2FnZSwgc2V0U2NyZWVuUmVhZGVyTWVzc2FnZV0gPSBSZWFjdC51c2VTdGF0ZSgpO1xyXG4gICAgY29uc3QgZGVib3VuY2VkU2V0U2NyZWVuUmVhZGVyTWVzc2FnZSA9IFJlYWN0LnVzZU1lbW8oKCkgPT4gZGVib3VuY2UoKHN0YXR1c01lc3NhZ2UpID0+IHtcclxuICAgICAgICBzZXRTY3JlZW5SZWFkZXJNZXNzYWdlKHN0YXR1c01lc3NhZ2UpO1xyXG4gICAgfSwgMzAwMCksIFtdKTtcclxuICAgIFJlYWN0LnVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgZGVib3VuY2VkU2V0U2NyZWVuUmVhZGVyTWVzc2FnZShjaGFyYWN0ZXJUaXRsZSk7XHJcbiAgICAgICAgcmV0dXJuICgpID0+IHtcclxuICAgICAgICAgICAgZGVib3VuY2VkU2V0U2NyZWVuUmVhZGVyTWVzc2FnZS5jbGVhcigpO1xyXG4gICAgICAgIH07XHJcbiAgICB9LCBbaW5wdXRMZW5ndGgsIGRlYm91bmNlZFNldFNjcmVlblJlYWRlck1lc3NhZ2UsIGNoYXJhY3RlclRpdGxlXSk7XHJcbiAgICBjb25zdCB7IGlzTWFjT1MgfSA9IHVzZURldmljZURldGVjdCgpO1xyXG4gICAgcmV0dXJuIChSZWFjdC5jcmVhdGVFbGVtZW50KFJlYWN0LkZyYWdtZW50LCBudWxsLFxyXG4gICAgICAgIFJlYWN0LmNyZWF0ZUVsZW1lbnQoXCJkaXZcIiwgT2JqZWN0LmFzc2lnbih7IHJlZjogcmVmLCBcImRhdGEtdGVzdGlkXCI6IHRlc3RJZCB9LCByZXN0LCB7IGlkOiBpZCB9KSxcclxuICAgICAgICAgICAgUmVhY3QuY3JlYXRlRWxlbWVudChTdHlsZWRJbnB1dE1lc3NhZ2UsIHsgXCJhcmlhLWxpdmVcIjogZ2V0QXJpYUxpdmVTdGF0ZSgpLCBoYXNDaGFyYWN0ZXJDb3VudGVyOiBoYXNDaGFyYWN0ZXJDb3VudGVyLCBoYXNFcnJvcjogaXNPdmVyTWF4Q291bnQsIGlzSW52ZXJzZTogaXNJbnZlcnNlLCBpbnB1dExlbmd0aDogaW5wdXRMZW5ndGgsIG1heENvdW50OiBtYXhDaGFyYWN0ZXJzLCBtYXhMZW5ndGg6IG1heENoYXJhY3RlcnMgfSwgY2hhcmFjdGVyVGl0bGUpLFxyXG4gICAgICAgICAgICBpc01hY09TICYmIHNjcmVlblJlYWRlck1lc3NhZ2UgJiYgKFJlYWN0LmNyZWF0ZUVsZW1lbnQoSGlkZGVuTGFiZWxUZXh0LCB7IFwiYXJpYS1saXZlXCI6IFwiYXNzZXJ0aXZlXCIsIFwiZGF0YS10ZXN0aWRcIjogXCJzY3JlZW5SZWFkZXJNZXNzYWdlXCIgfSwgc2NyZWVuUmVhZGVyTWVzc2FnZSkpKSkpO1xyXG59KTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9Q2hhcmFjdGVyQ291bnRlci5qcy5tYXAiXX0= */"));
4985
5033
  var CharacterCounter = /*#__PURE__*/React.forwardRef(function (props, ref) {
4986
5034
  var hasCharacterCounter = props.hasCharacterCounter,
4987
5035
  id = props.id,
@@ -4999,13 +5047,10 @@ var CharacterCounter = /*#__PURE__*/React.forwardRef(function (props, ref) {
4999
5047
  var getPercentage = inputLength / maxCharacters * 100;
5000
5048
  // Returns aria-live states based on percentage of characters within Input.
5001
5049
  function getAriaLiveState() {
5002
- if (getPercentage >= 80) {
5003
- if (getPercentage > 100) {
5004
- return 'assertive';
5005
- }
5006
- return 'polite';
5050
+ if (getPercentage > 100) {
5051
+ return 'assertive';
5007
5052
  }
5008
- return 'off';
5053
+ return 'polite';
5009
5054
  }
5010
5055
  // As the user types, this calculates the remaining characters set by maxCount which counts down to zero then counts up if over the limit.
5011
5056
  var characterLimit = maxCharacters > inputLength ? maxCharacters - inputLength : inputLength - maxCharacters;
@@ -5015,7 +5060,7 @@ var CharacterCounter = /*#__PURE__*/React.forwardRef(function (props, ref) {
5015
5060
  * When inputLength < maxCount or inputLength === maxCount, returns "# character(s) left"
5016
5061
  * When inputLength > maxCount, returns "# character(s) over limit"
5017
5062
  */
5018
- function characterTitle() {
5063
+ var characterTitle = React.useMemo(function () {
5019
5064
  if (inputLength > 0) {
5020
5065
  if (inputLength < maxCharacters) {
5021
5066
  if (inputLength === maxCharacters - 1) {
@@ -5039,12 +5084,30 @@ var CharacterCounter = /*#__PURE__*/React.forwardRef(function (props, ref) {
5039
5084
  }
5040
5085
  return maxCharacters + " " + i18n.characterCounter.charactersAllowed;
5041
5086
  }
5042
- }
5043
- return React.createElement("div", Object.assign({
5044
- "data-testid": testId,
5045
- id: id,
5046
- ref: ref
5047
- }, rest), React.createElement(StyledInputMessage, {
5087
+ }, [characterLimit, inputLength, i18n.characterCounter, maxCharacters]);
5088
+ // Sets the screen reader message to announce the character counter.
5089
+ var _React$useState = React.useState(),
5090
+ screenReaderMessage = _React$useState[0],
5091
+ setScreenReaderMessage = _React$useState[1];
5092
+ var debouncedSetScreenReaderMessage = React.useMemo(function () {
5093
+ return debounce(function (statusMessage) {
5094
+ setScreenReaderMessage(statusMessage);
5095
+ }, 3000);
5096
+ }, []);
5097
+ React.useEffect(function () {
5098
+ debouncedSetScreenReaderMessage(characterTitle);
5099
+ return function () {
5100
+ debouncedSetScreenReaderMessage.clear();
5101
+ };
5102
+ }, [inputLength, debouncedSetScreenReaderMessage, characterTitle]);
5103
+ var _useDeviceDetect = useDeviceDetect(),
5104
+ isMacOS = _useDeviceDetect.isMacOS;
5105
+ return React.createElement(React.Fragment, null, React.createElement("div", Object.assign({
5106
+ ref: ref,
5107
+ "data-testid": testId
5108
+ }, rest, {
5109
+ id: id
5110
+ }), React.createElement(StyledInputMessage, {
5048
5111
  "aria-live": getAriaLiveState(),
5049
5112
  hasCharacterCounter: hasCharacterCounter,
5050
5113
  hasError: isOverMaxCount,
@@ -5052,7 +5115,10 @@ var CharacterCounter = /*#__PURE__*/React.forwardRef(function (props, ref) {
5052
5115
  inputLength: inputLength,
5053
5116
  maxCount: maxCharacters,
5054
5117
  maxLength: maxCharacters
5055
- }, characterTitle()));
5118
+ }, characterTitle), isMacOS && screenReaderMessage && React.createElement(HiddenLabelText, {
5119
+ "aria-live": "assertive",
5120
+ "data-testid": "screenReaderMessage"
5121
+ }, screenReaderMessage)));
5056
5122
  });
5057
5123
 
5058
5124
  var _excluded$x = ["actionable", "children", "containerStyle", "errorMessage", "fieldId", "hasCharacterCounter", "helperMessage", "iconPosition", "inputSize", "inputLength", "isInverse", "isLabelVisuallyHidden", "labelPosition", "labelStyle", "labelText", "labelWidth", "maxCount", "maxLength", "messageStyle", "testId"];
@@ -7986,54 +8052,6 @@ var DropdownMenuItem = /*#__PURE__*/React.forwardRef(function (props, forwardedR
7986
8052
  });
7987
8053
  DropdownMenuItem.displayName = 'DropdownMenuItem';
7988
8054
 
7989
- var useDeviceDetect = function useDeviceDetect() {
7990
- var userAgent = React.useMemo(function () {
7991
- return navigator.userAgent.toLowerCase();
7992
- }, []);
7993
- var isSafari = React.useMemo(function () {
7994
- return /^((?!chrome|android).)*safari/i.test(userAgent);
7995
- }, [userAgent]);
7996
- var isChrome = React.useMemo(function () {
7997
- return /chrome|crios/i.test(userAgent) && !/edge|edg/i.test(userAgent);
7998
- }, [userAgent]);
7999
- var isFirefox = React.useMemo(function () {
8000
- return /firefox|fxios/i.test(userAgent);
8001
- }, [userAgent]);
8002
- var isEdge = React.useMemo(function () {
8003
- return /edge|edg/i.test(userAgent);
8004
- }, [userAgent]);
8005
- var isMobile = React.useMemo(function () {
8006
- return /mobi|android|touch|mini/i.test(userAgent);
8007
- }, [userAgent]);
8008
- var isWindows = React.useMemo(function () {
8009
- return /windows nt/.test(userAgent);
8010
- }, [userAgent]);
8011
- var isMacOS = React.useMemo(function () {
8012
- return /macintosh/.test(userAgent);
8013
- }, [userAgent]);
8014
- var isAndroid = React.useMemo(function () {
8015
- return /android/.test(userAgent);
8016
- }, [userAgent]);
8017
- var isIOS = React.useMemo(function () {
8018
- return /iphone|ipad|ipod/.test(userAgent);
8019
- }, [userAgent]);
8020
- var isLinux = React.useMemo(function () {
8021
- return /linux/.test(userAgent) && !isAndroid;
8022
- }, [userAgent, isAndroid]);
8023
- return {
8024
- isSafari: isSafari,
8025
- isChrome: isChrome,
8026
- isFirefox: isFirefox,
8027
- isEdge: isEdge,
8028
- isMobile: isMobile,
8029
- isWindows: isWindows,
8030
- isMacOS: isMacOS,
8031
- isLinux: isLinux,
8032
- isAndroid: isAndroid,
8033
- isIOS: isIOS
8034
- };
8035
- };
8036
-
8037
8055
  var _excluded$O = ["children", "icon", "to"];
8038
8056
  var StyledItem$3 = /*#__PURE__*/_styled("a", {
8039
8057
  target: "e1b21r9q0",