@commercetools-uikit/localized-text-input 16.0.0 → 16.1.0

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.
@@ -45,7 +45,6 @@ var Constraints__default = /*#__PURE__*/_interopDefault(Constraints);
45
45
  var TextInput__default = /*#__PURE__*/_interopDefault(TextInput);
46
46
 
47
47
  function _EMOTION_STRINGIFIED_CSS_ERROR__$1() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
48
-
49
48
  var _ref$1 = process.env.NODE_ENV === "production" ? {
50
49
  name: "1ps4mw6",
51
50
  styles: "border-top-left-radius:0;border-bottom-left-radius:0;border-style:solid;flex:auto"
@@ -55,44 +54,34 @@ var _ref$1 = process.env.NODE_ENV === "production" ? {
55
54
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxvY2FsaXplZC10ZXh0LWlucHV0LnN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFTSyIsImZpbGUiOiJsb2NhbGl6ZWQtdGV4dC1pbnB1dC5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgeyBkZXNpZ25Ub2tlbnMgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9kZXNpZ24tc3lzdGVtJztcbmltcG9ydCB0eXBlIHsgVExvY2FsaXplZElucHV0UHJvcHMgfSBmcm9tICcuL2xvY2FsaXplZC10ZXh0LWlucHV0JztcblxuLy8gTk9URTogb3JkZXIgaXMgaW1wb3J0YW50IGhlcmVcbi8vICogYSBkaXNhYmxlZC1maWVsZCBjdXJyZW50bHkgZG9lcyBub3QgZGlzcGxheSB3YXJuaW5nL2Vycm9yLXN0YXRlcyBzbyBpdCB0YWtlcyBwcmVjZWRlbmNlXG4vLyAqIGEgcmVhZG9ubHktZmllbGQgY2Fubm90IGJlIGNoYW5nZWQsIGJ1dCBpdCBtaWdodCBiZSByZWxldmFudCBmb3IgdmFsaWRhdGlvbiwgc28gZXJyb3IgYW5kIHdhcm5pbmcgYXJlIGNoZWNrZWQgZmlyc3Rcbi8vIGhvdyB5b3UgY2FuIGludGVyYWN0IHdpdGggdGhlIGZpZWxkIGlzIGNvbnRyb2xsZWQgc2VwYXJhdGVseSBieSB0aGUgcHJvcHMsIHRoaXMgb25seSBpbmZsdWVuY2VzIHZpc3VhbHNcbmNvbnN0IGdldExvY2FsaXplZElucHV0U3R5bGVzID0gKCkgPT4gW1xuICBjc3NgXG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgZmxleDogYXV0bztcbiAgYCxcbl07XG5cbmNvbnN0IGdldExhbmd1YWdlTGFiZWxCYWNrZ3JvdW5kQ29sb3IgPSAocHJvcHM6IFRMb2NhbGl6ZWRJbnB1dFByb3BzKSA9PiB7XG4gIGlmIChwcm9wcy5pc0Rpc2FibGVkKSB7XG4gICAgcmV0dXJuIGRlc2lnblRva2Vucy5iYWNrZ3JvdW5kQ29sb3JGb3JMb2NhbGl6ZWRJbnB1dExhYmVsV2hlbkRpc2FibGVkO1xuICB9XG4gIGlmIChwcm9wcy5pc1JlYWRPbmx5KSB7XG4gICAgcmV0dXJuIGRlc2lnblRva2Vucy5iYWNrZ3JvdW5kQ29sb3JGb3JMb2NhbGl6ZWRJbnB1dExhYmVsV2hlblJlYWRvbmx5O1xuICB9XG4gIHJldHVybiBkZXNpZ25Ub2tlbnMuYmFja2dyb3VuZENvbG9yRm9yTG9jYWxpemVkSW5wdXRMYWJlbDtcbn07XG5cbmNvbnN0IGdldExhbmd1YWdlTGFiZWxCb3JkZXJDb2xvciA9IChwcm9wczogVExvY2FsaXplZElucHV0UHJvcHMpID0+IHtcbiAgaWYgKHByb3BzLmlzRGlzYWJsZWQpIHtcbiAgICByZXR1cm4gZGVzaWduVG9rZW5zLmJvcmRlckNvbG9yRm9ySW5wdXRXaGVuRGlzYWJsZWQ7XG4gIH1cbiAgcmV0dXJuIHByb3BzLmlzUmVhZE9ubHlcbiAgICA/IGRlc2lnblRva2Vucy5ib3JkZXJDb2xvckZvckxvY2FsaXplZElucHV0TGFiZWxXaGVuUmVhZG9ubHlcbiAgICA6IGRlc2lnblRva2Vucy5ib3JkZXJDb2xvckZvckxvY2FsaXplZElucHV0TGFiZWw7XG59O1xuXG5jb25zdCBnZXRMYW5ndWFnZUxhYmVsU3R5bGVzID0gKFxuICBwcm9wczogVExvY2FsaXplZElucHV0UHJvcHMgJiB7IGlzTmV3VGhlbWU6IGJvb2xlYW4gfVxuKSA9PiB7XG4gIHJldHVybiBjc3NgXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIC8qIGF2b2lkIHdyYXBwaW5nIGxhYmVsIG9udG8gbmV3IGxpbmVzICovXG4gICAgZmxleDogMSAwIGF1dG87XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBjb2xvcjogJHtkZXNpZ25Ub2tlbnMuZm9udENvbG9yRm9yTG9jYWxpemVkSW5wdXRMYWJlbH07XG4gICAgY3Vyc29yOiAke3Byb3BzLmlzRGlzYWJsZWQgPyAnbm90LWFsbG93ZWQnIDogJ2RlZmF1bHQnfTtcbiAgICBoZWlnaHQ6ICR7ZGVzaWduVG9rZW5zLmhlaWdodEZvcklucHV0fTtcbiAgICBmb250LXNpemU6ICR7ZGVzaWduVG9rZW5zLmZvbnRTaXplRm9yTG9jYWxpemVkSW5wdXRMYWJlbH07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtnZXRMYW5ndWFnZUxhYmVsQmFja2dyb3VuZENvbG9yKHByb3BzKX07XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHtkZXNpZ25Ub2tlbnMuYm9yZGVyUmFkaXVzRm9ySW5wdXR9O1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICR7ZGVzaWduVG9rZW5zLmJvcmRlclJhZGl1c0ZvcklucHV0fTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAke2dldExhbmd1YWdlTGFiZWxCb3JkZXJDb2xvcihwcm9wcyl9O1xuICAgIHBhZGRpbmc6ICR7ZGVzaWduVG9rZW5zLnBhZGRpbmdGb3JMb2NhbGl6ZWRJbnB1dExhYmVsfTtcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgJHtkZXNpZ25Ub2tlbnMudHJhbnNpdGlvblN0YW5kYXJkfSxcbiAgICAgIGJhY2tncm91bmQtY29sb3IgJHtkZXNpZ25Ub2tlbnMudHJhbnNpdGlvblN0YW5kYXJkfSxcbiAgICAgIGNvbG9yICR7ZGVzaWduVG9rZW5zLnRyYW5zaXRpb25TdGFuZGFyZH07XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYDtcbn07XG5cbmV4cG9ydCB7IGdldExvY2FsaXplZElucHV0U3R5bGVzLCBnZXRMYW5ndWFnZUxhYmVsU3R5bGVzIH07XG4iXX0= */",
56
55
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$1
57
56
  };
58
-
59
57
  // NOTE: order is important here
60
58
  // * a disabled-field currently does not display warning/error-states so it takes precedence
61
59
  // * a readonly-field cannot be changed, but it might be relevant for validation, so error and warning are checked first
62
60
  // how you can interact with the field is controlled separately by the props, this only influences visuals
63
61
  const getLocalizedInputStyles = () => [_ref$1];
64
-
65
62
  const getLanguageLabelBackgroundColor = props => {
66
63
  if (props.isDisabled) {
67
64
  return designSystem.designTokens.backgroundColorForLocalizedInputLabelWhenDisabled;
68
65
  }
69
-
70
66
  if (props.isReadOnly) {
71
67
  return designSystem.designTokens.backgroundColorForLocalizedInputLabelWhenReadonly;
72
68
  }
73
-
74
69
  return designSystem.designTokens.backgroundColorForLocalizedInputLabel;
75
70
  };
76
-
77
71
  const getLanguageLabelBorderColor = props => {
78
72
  if (props.isDisabled) {
79
73
  return designSystem.designTokens.borderColorForInputWhenDisabled;
80
74
  }
81
-
82
75
  return props.isReadOnly ? designSystem.designTokens.borderColorForLocalizedInputLabelWhenReadonly : designSystem.designTokens.borderColorForLocalizedInputLabel;
83
76
  };
84
-
85
77
  const getLanguageLabelStyles = props => {
86
78
  return /*#__PURE__*/react.css("display:flex;flex-direction:column;justify-content:center;flex:1 0 auto;box-sizing:border-box;color:", designSystem.designTokens.fontColorForLocalizedInputLabel, ";cursor:", props.isDisabled ? 'not-allowed' : 'default', ";height:", designSystem.designTokens.heightForInput, ";font-size:", designSystem.designTokens.fontSizeForLocalizedInputLabel, ";background-color:", getLanguageLabelBackgroundColor(props), ";border-top-left-radius:", designSystem.designTokens.borderRadiusForInput, ";border-bottom-left-radius:", designSystem.designTokens.borderRadiusForInput, ";border:1px solid ", getLanguageLabelBorderColor(props), ";padding:", designSystem.designTokens.paddingForLocalizedInputLabel, ";transition:border-color ", designSystem.designTokens.transitionStandard, ",background-color ", designSystem.designTokens.transitionStandard, ",color ", designSystem.designTokens.transitionStandard, ";border-right:0;box-shadow:none;appearance:none;" + (process.env.NODE_ENV === "production" ? "" : ";label:getLanguageLabelStyles;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxvY2FsaXplZC10ZXh0LWlucHV0LnN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF1Q1kiLCJmaWxlIjoibG9jYWxpemVkLXRleHQtaW5wdXQuc3R5bGVzLnRzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHsgZGVzaWduVG9rZW5zIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvZGVzaWduLXN5c3RlbSc7XG5pbXBvcnQgdHlwZSB7IFRMb2NhbGl6ZWRJbnB1dFByb3BzIH0gZnJvbSAnLi9sb2NhbGl6ZWQtdGV4dC1pbnB1dCc7XG5cbi8vIE5PVEU6IG9yZGVyIGlzIGltcG9ydGFudCBoZXJlXG4vLyAqIGEgZGlzYWJsZWQtZmllbGQgY3VycmVudGx5IGRvZXMgbm90IGRpc3BsYXkgd2FybmluZy9lcnJvci1zdGF0ZXMgc28gaXQgdGFrZXMgcHJlY2VkZW5jZVxuLy8gKiBhIHJlYWRvbmx5LWZpZWxkIGNhbm5vdCBiZSBjaGFuZ2VkLCBidXQgaXQgbWlnaHQgYmUgcmVsZXZhbnQgZm9yIHZhbGlkYXRpb24sIHNvIGVycm9yIGFuZCB3YXJuaW5nIGFyZSBjaGVja2VkIGZpcnN0XG4vLyBob3cgeW91IGNhbiBpbnRlcmFjdCB3aXRoIHRoZSBmaWVsZCBpcyBjb250cm9sbGVkIHNlcGFyYXRlbHkgYnkgdGhlIHByb3BzLCB0aGlzIG9ubHkgaW5mbHVlbmNlcyB2aXN1YWxzXG5jb25zdCBnZXRMb2NhbGl6ZWRJbnB1dFN0eWxlcyA9ICgpID0+IFtcbiAgY3NzYFxuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGZsZXg6IGF1dG87XG4gIGAsXG5dO1xuXG5jb25zdCBnZXRMYW5ndWFnZUxhYmVsQmFja2dyb3VuZENvbG9yID0gKHByb3BzOiBUTG9jYWxpemVkSW5wdXRQcm9wcykgPT4ge1xuICBpZiAocHJvcHMuaXNEaXNhYmxlZCkge1xuICAgIHJldHVybiBkZXNpZ25Ub2tlbnMuYmFja2dyb3VuZENvbG9yRm9yTG9jYWxpemVkSW5wdXRMYWJlbFdoZW5EaXNhYmxlZDtcbiAgfVxuICBpZiAocHJvcHMuaXNSZWFkT25seSkge1xuICAgIHJldHVybiBkZXNpZ25Ub2tlbnMuYmFja2dyb3VuZENvbG9yRm9yTG9jYWxpemVkSW5wdXRMYWJlbFdoZW5SZWFkb25seTtcbiAgfVxuICByZXR1cm4gZGVzaWduVG9rZW5zLmJhY2tncm91bmRDb2xvckZvckxvY2FsaXplZElucHV0TGFiZWw7XG59O1xuXG5jb25zdCBnZXRMYW5ndWFnZUxhYmVsQm9yZGVyQ29sb3IgPSAocHJvcHM6IFRMb2NhbGl6ZWRJbnB1dFByb3BzKSA9PiB7XG4gIGlmIChwcm9wcy5pc0Rpc2FibGVkKSB7XG4gICAgcmV0dXJuIGRlc2lnblRva2Vucy5ib3JkZXJDb2xvckZvcklucHV0V2hlbkRpc2FibGVkO1xuICB9XG4gIHJldHVybiBwcm9wcy5pc1JlYWRPbmx5XG4gICAgPyBkZXNpZ25Ub2tlbnMuYm9yZGVyQ29sb3JGb3JMb2NhbGl6ZWRJbnB1dExhYmVsV2hlblJlYWRvbmx5XG4gICAgOiBkZXNpZ25Ub2tlbnMuYm9yZGVyQ29sb3JGb3JMb2NhbGl6ZWRJbnB1dExhYmVsO1xufTtcblxuY29uc3QgZ2V0TGFuZ3VhZ2VMYWJlbFN0eWxlcyA9IChcbiAgcHJvcHM6IFRMb2NhbGl6ZWRJbnB1dFByb3BzICYgeyBpc05ld1RoZW1lOiBib29sZWFuIH1cbikgPT4ge1xuICByZXR1cm4gY3NzYFxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAvKiBhdm9pZCB3cmFwcGluZyBsYWJlbCBvbnRvIG5ldyBsaW5lcyAqL1xuICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgY29sb3I6ICR7ZGVzaWduVG9rZW5zLmZvbnRDb2xvckZvckxvY2FsaXplZElucHV0TGFiZWx9O1xuICAgIGN1cnNvcjogJHtwcm9wcy5pc0Rpc2FibGVkID8gJ25vdC1hbGxvd2VkJyA6ICdkZWZhdWx0J307XG4gICAgaGVpZ2h0OiAke2Rlc2lnblRva2Vucy5oZWlnaHRGb3JJbnB1dH07XG4gICAgZm9udC1zaXplOiAke2Rlc2lnblRva2Vucy5mb250U2l6ZUZvckxvY2FsaXplZElucHV0TGFiZWx9O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR7Z2V0TGFuZ3VhZ2VMYWJlbEJhY2tncm91bmRDb2xvcihwcm9wcyl9O1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICR7ZGVzaWduVG9rZW5zLmJvcmRlclJhZGl1c0ZvcklucHV0fTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAke2Rlc2lnblRva2Vucy5ib3JkZXJSYWRpdXNGb3JJbnB1dH07XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHtnZXRMYW5ndWFnZUxhYmVsQm9yZGVyQ29sb3IocHJvcHMpfTtcbiAgICBwYWRkaW5nOiAke2Rlc2lnblRva2Vucy5wYWRkaW5nRm9yTG9jYWxpemVkSW5wdXRMYWJlbH07XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yICR7ZGVzaWduVG9rZW5zLnRyYW5zaXRpb25TdGFuZGFyZH0sXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yICR7ZGVzaWduVG9rZW5zLnRyYW5zaXRpb25TdGFuZGFyZH0sXG4gICAgICBjb2xvciAke2Rlc2lnblRva2Vucy50cmFuc2l0aW9uU3RhbmRhcmR9O1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGA7XG59O1xuXG5leHBvcnQgeyBnZXRMb2NhbGl6ZWRJbnB1dFN0eWxlcywgZ2V0TGFuZ3VhZ2VMYWJlbFN0eWxlcyB9O1xuIl19 */");
87
79
  };
88
80
 
89
81
  function ownKeys(object, enumerableOnly) { var keys = _Object$keys__default["default"](object); if (_Object$getOwnPropertySymbols__default["default"]) { var symbols = _Object$getOwnPropertySymbols__default["default"](object); enumerableOnly && (symbols = _filterInstanceProperty__default["default"](symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor__default["default"](object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
90
-
91
82
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys(Object(source), !0)).call(_context, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](target, _Object$getOwnPropertyDescriptors__default["default"](source)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys(Object(source))).call(_context2, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } return target; }
92
-
93
83
  function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
94
84
  const sequentialId = utils.createSequentialId('localized-text-input-');
95
-
96
85
  var _ref = process.env.NODE_ENV === "production" ? {
97
86
  name: "1ktetz7",
98
87
  styles: "width:100%;position:relative;display:flex"
@@ -102,13 +91,10 @@ var _ref = process.env.NODE_ENV === "production" ? {
102
91
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxvY2FsaXplZC10ZXh0LWlucHV0LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUErTGMiLCJmaWxlIjoibG9jYWxpemVkLXRleHQtaW5wdXQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiLy8gVE9ETzogQHJlZGVzaWduIGNsZWFudXBcbmltcG9ydCB7XG4gIHR5cGUgRm9jdXNFdmVudEhhbmRsZXIsXG4gIHR5cGUgQ2hhbmdlRXZlbnRIYW5kbGVyLFxuICB1c2VDYWxsYmFjayxcbn0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgRm9ybWF0dGVkTWVzc2FnZSB9IGZyb20gJ3JlYWN0LWludGwnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHsgdXNlVGhlbWUgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9kZXNpZ24tc3lzdGVtJztcbmltcG9ydCB7IHVzZUZpZWxkSWQsIHVzZVRvZ2dsZVN0YXRlIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvaG9va3MnO1xuaW1wb3J0IHsgRXJyb3JNZXNzYWdlIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvbWVzc2FnZXMnO1xuaW1wb3J0IFN0YWNrIGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3NwYWNpbmdzLXN0YWNrJztcbmltcG9ydCBDb25zdHJhaW50cyBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9jb25zdHJhaW50cyc7XG5pbXBvcnQge1xuICBzb3J0TGFuZ3VhZ2VzLFxuICBjcmVhdGVMb2NhbGl6ZWREYXRhQXR0cmlidXRlcyxcbiAgZ2V0SGFzRXJyb3JPblJlbWFpbmluZ0xhbmd1YWdlcyxcbiAgaXNUb3VjaGVkLFxuICBvbWl0RW1wdHlUcmFuc2xhdGlvbnMsXG4gIGlzRW1wdHksXG4gIGNyZWF0ZUxvY2FsaXplZFN0cmluZyxcbiAgZ2V0SWQsXG4gIGdldE5hbWUsXG59IGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L2xvY2FsaXplZC11dGlscyc7XG5pbXBvcnQgeyBjcmVhdGVTZXF1ZW50aWFsSWQsIHdhcm5pbmcgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC91dGlscyc7XG5pbXBvcnQgVGV4dElucHV0IGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3RleHQtaW5wdXQnO1xuaW1wb3J0IHtcbiAgTG9jYWxpemVkSW5wdXRUb2dnbGUsXG4gIG1lc3NhZ2VzTG9jYWxpemVkSW5wdXQsXG59IGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L2lucHV0LXV0aWxzJztcbmltcG9ydCB7XG4gIGdldExvY2FsaXplZElucHV0U3R5bGVzLFxuICBnZXRMYW5ndWFnZUxhYmVsU3R5bGVzLFxufSBmcm9tICcuL2xvY2FsaXplZC10ZXh0LWlucHV0LnN0eWxlcyc7XG5cbmludGVyZmFjZSBIVE1MTG9jYWxpemVkSW5wdXRFbGVtZW50IGV4dGVuZHMgSFRNTElucHV0RWxlbWVudCB7XG4gIGxhbmd1YWdlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCB0eXBlIFRMb2NhbGl6ZWRUZXh0SW5wdXRQcm9wcyA9IHtcbiAgaWQ/OiBzdHJpbmc7XG4gIG5hbWU/OiBzdHJpbmc7XG4gIGF1dG9Db21wbGV0ZT86IHN0cmluZztcbiAgLyoqXG4gICAqIEluZGljYXRlIGlmIHRoZSB2YWx1ZSBlbnRlcmVkIGluIHRoZSBpbnB1dCBpcyBpbnZhbGlkLlxuICAgKi9cbiAgJ2FyaWEtaW52YWxpZCc/OiBib29sZWFuO1xuICAvKipcbiAgICogSFRNTCBJRCBvZiBhbiBlbGVtZW50IGNvbnRhaW5pbmcgYW4gZXJyb3IgbWVzc2FnZSByZWxhdGVkIHRvIHRoZSBpbnB1dC5cbiAgICovXG4gICdhcmlhLWVycm9ybWVzc2FnZSc/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiAgIHRoZW4gaW5wdXQgZG9lc24ndCBhY2NlcHQgYSBcImxhbmd1YWdlc1wiIHByb3AsIGluc3RlYWQgYWxsIHBvc3NpYmxlXG4gIGxhbmd1YWdlcyBoYXZlIHRvIGV4aXN0ICh3aXRoIGVtcHR5IG9yIGZpbGxlZCBzdHJpbmdzKSBvbiB0aGUgdmFsdWU6XG4gICAgeyBlbjogJ2ZvbycsIGRlOiAnJywgZXM6ICcnIH1cbiAgICovXG4gIHZhbHVlOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICAvKipcbiAgICogR2V0cyBjYWxsZWQgd2hlbiBhbnkgaW5wdXQgaXMgY2hhbmdlZC4gSXMgY2FsbGVkIHdpdGggdGhlIGNoYW5nZSBldmVudCBvZiB0aGUgY2hhbmdlZCBpbnB1dC5cbiAgICovXG4gIG9uQ2hhbmdlPzogQ2hhbmdlRXZlbnRIYW5kbGVyPEhUTUxMb2NhbGl6ZWRJbnB1dEVsZW1lbnQ+O1xuICAvKipcbiAgICogU3BlY2lmaWVzIHdoaWNoIGxhbmd1YWdlIHdpbGwgYmUgc2hvd24gaW4gY2FzZSB0aGUgYExvY2FsaXplZFRleHRJbnB1dGAgaXMgY29sbGFwc2VkLlxuICAgKi9cbiAgc2VsZWN0ZWRMYW5ndWFnZTogc3RyaW5nO1xuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gYW55IGZpZWxkIGlzIGJsdXJyZWQuIElzIGNhbGxlZCB3aXRoIHRoZSBgZXZlbnRgIG9mIHRoYXQgZmllbGQuXG4gICAqL1xuICBvbkJsdXI/OiBGb2N1c0V2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50PjtcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGFueSBmaWVsZCBpcyBmb2N1c3NlZC4gSXMgY2FsbGVkIHdpdGggdGhlIGBldmVudGAgb2YgdGhhdCBmaWVsZC5cbiAgICovXG4gIG9uRm9jdXM/OiBGb2N1c0V2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50PjtcbiAgLyoqXG4gICAqIFdpbGwgaGlkZSB0aGUgbGFuZ3VhZ2UgZXhwYW5zaW9uIGNvbnRyb2xzIHdoZW4gc2V0IHRvIGB0cnVlYC4gQWxsIGxhbmd1YWdlcyB3aWxsIGJlIHNob3duIHdoZW4gc2V0IHRvIGB0cnVlYC5cbiAgICovXG4gIGhpZGVMYW5ndWFnZUV4cGFuc2lvbkNvbnRyb2xzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIENvbnRyb2xzIHdoZXRoZXIgb25lIG9yIGFsbCBsYW5ndWFnZXMgYXJlIHZpc2libGUgYnkgZGVmYXVsdFxuICAgKi9cbiAgZGVmYXVsdEV4cGFuZExhbmd1YWdlcz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBGb2N1cyB0aGUgaW5wdXQgZmllbGQgb24gaW5pdGlhbCByZW5kZXJcbiAgICovXG4gIGlzQXV0b2ZvY3Vzc2VkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIERpc2FibGVzIGFsbCBpbnB1dCBmaWVsZHMuXG4gICAqL1xuICBpc0Rpc2FibGVkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIERpc2FibGVzIGFsbCBpbnB1dCBmaWVsZHMgYW5kIHNob3dzIHRoZW0gaW4gcmVhZC1vbmx5IG1vZGUuXG4gICAqL1xuICBpc1JlYWRPbmx5PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFBsYWNlaG9sZGVycyBmb3IgZWFjaCBsYW5ndWFnZS4gT2JqZWN0IG9mIHRoZSBzYW1lIHNoYXBlIGFzIGB2YWx1ZWAuXG4gICAqL1xuICBwbGFjZWhvbGRlcj86IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4gIC8qKlxuICAgKiBIb3Jpem9udGFsIHNpemUgbGltaXQgb2YgdGhlIGlucHV0IGZpZWxkcy5cbiAgICovXG4gIGhvcml6b250YWxDb25zdHJhaW50PzpcbiAgICB8IDFcbiAgICB8IDJcbiAgICB8IDNcbiAgICB8IDRcbiAgICB8IDVcbiAgICB8IDZcbiAgICB8IDdcbiAgICB8IDhcbiAgICB8IDlcbiAgICB8IDEwXG4gICAgfCAxMVxuICAgIHwgMTJcbiAgICB8IDEzXG4gICAgfCAxNFxuICAgIHwgMTVcbiAgICB8IDE2XG4gICAgfCAnc2NhbGUnXG4gICAgfCAnYXV0byc7XG4gIC8qKlxuICAgKiBXaWxsIGFwcGx5IHRoZSBlcnJvciBzdGF0ZSB0byBlYWNoIGlucHV0IHdpdGhvdXQgc2hvd2luZyBhbnkgZXJyb3IgbWVzc2FnZS5cbiAgICovXG4gIGhhc0Vycm9yPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFVzZWQgdG8gc2hvdyBlcnJvcnMgdW5kZXJuZWF0aCB0aGUgaW5wdXRzIG9mIHNwZWNpZmljIGN1cnJlbmNpZXMuIFBhc3MgYW4gb2JqZWN0IHdob3NlIGtleSBpcyBhIGN1cnJlbmN5IGFuZCB3aG9zZSB2YWx1ZSBpcyB0aGUgZXJyb3IgdG8gc2hvdyBmb3IgdGhhdCBrZXkuXG4gICAqL1xuICBlcnJvcnM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xufTtcblxuZXhwb3J0IHR5cGUgVExvY2FsaXplZElucHV0UHJvcHMgPSB7XG4gIC8qKlxuICAgKiBVc2VkIGFzIHByZWZpeCBvZiBIVE1MIGBpZGAgcHJvcGVydHkuIEVhY2ggaW5wdXQgZmllbGQgaWQgd2lsbCBoYXZlIHRoZSBsYW5ndWFnZSBhcyBhIHN1ZmZpeCAoYCR7aWRQcmVmaXh9LiR7bGFuZ31gKSwgZS5nLiBgZm9vLmVuYC4gWW91IGNhbiB1c2UgdGhlIHN0YXRpYyBgTG9jYWxpemVkVGV4dElucHV0LmdldElkKGlkUHJlZml4LCBsYW5ndWFnZSlgIHRvIGNyZWF0ZSB0aGlzIGlkIHN0cmluZywgZS5nLiBmb3IgbGFiZWxzLlxuICAgKi9cbiAgaWQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBVc2VkIGFzIEhUTUwgYG5hbWVgIHByb3BlcnR5IGZvciBlYWNoIGlucHV0IGZpZWxkLiBFYWNoIGlucHV0IGZpZWxkIG5hbWUgd2lsbCBoYXZlIHRoZSBsYW5ndWFnZSBhcyBhIHN1ZmZpeCAoYCR7bmFtZVByZWZpeH0uJHtsYW5nfWApLCBlLmcuIGBmb28uZW5gXG4gICAqL1xuICBuYW1lPzogc3RyaW5nO1xuICAvKipcbiAgICogVXNlZCBhcyBIVE1MIGBhdXRvY29tcGxldGVgIHByb3BlcnR5XG4gICAqL1xuICBhdXRvQ29tcGxldGU/OiBzdHJpbmc7XG4gIHZhbHVlOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBHZXRzIGNhbGxlZCB3aGVuIGFueSBpbnB1dCBpcyBjaGFuZ2VkLiBJcyBjYWxsZWQgd2l0aCB0aGUgY2hhbmdlIGV2ZW50IG9mIHRoZSBjaGFuZ2VkIGlucHV0LlxuICAgKi9cbiAgb25DaGFuZ2U/OiBDaGFuZ2VFdmVudEhhbmRsZXI8SFRNTExvY2FsaXplZElucHV0RWxlbWVudD47XG4gIGxhbmd1YWdlOiBzdHJpbmc7XG4gIG9uQmx1cj86IEZvY3VzRXZlbnRIYW5kbGVyPEhUTUxJbnB1dEVsZW1lbnQ+O1xuICBvbkZvY3VzPzogRm9jdXNFdmVudEhhbmRsZXI8SFRNTElucHV0RWxlbWVudD47XG4gIGlzQXV0b2ZvY3Vzc2VkPzogYm9vbGVhbjtcbiAgaXNEaXNhYmxlZD86IGJvb2xlYW47XG4gIGlzUmVhZE9ubHk/OiBib29sZWFuO1xuICBoYXNFcnJvcj86IGJvb2xlYW47XG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xufTtcblxuY29uc3Qgc2VxdWVudGlhbElkID0gY3JlYXRlU2VxdWVudGlhbElkKCdsb2NhbGl6ZWQtdGV4dC1pbnB1dC0nKTtcblxuY29uc3QgTG9jYWxpemVkSW5wdXQgPSAocHJvcHM6IFRMb2NhbGl6ZWRJbnB1dFByb3BzKSA9PiB7XG4gIGNvbnN0IHsgb25DaGFuZ2UgfSA9IHByb3BzO1xuICBjb25zdCB7IGlzTmV3VGhlbWUgfSA9IHVzZVRoZW1lKCk7XG4gIGNvbnN0IGhhbmRsZUNoYW5nZSA9IHVzZUNhbGxiYWNrKFxuICAgIChldmVudCkgPT4ge1xuICAgICAgLy8gV2UgbWFuaXB1bGF0ZSB0aGUgZXZlbnQgdG8gYWRkIHRoZSBsYW5ndWFnZSB0byB0aGUgdGFyZ2V0LlxuICAgICAgLy8gVGhhdCB3YXkgdGhlIHVzZXJzIG9mIExvY2FsaXplZFRleHRJbnB1dCdzIG9uQ2hhbmdlIGNhbiByZWFkXG4gICAgICAvLyBldmVudC50YXJnZXQubGFuZ3VhZ2UgYW5kIGV2ZW50LnRhcmdldC52YWx1ZSB0byBkZXRlcm1pbmUgdGhlIG5leHQgdmFsdWUuXG4gICAgICAvL1xuICAgICAgLy8gV2Ugb25seSBuZWVkIHRoaXMgaW5mb3JtYXRpb24gZm9yIHRoZSBzdG9yeSwgdGhlIE1DIGFwcGxpY2F0aW9uIGNvZGUgd2lsbFxuICAgICAgLy8gbmV2ZXIgbmVlZCB0byBhY2Nlc3MgdGhlIGluZm9ybWF0aW9uIGluIHN1Y2ggYW4gaW5jb252ZW5pZW50IHdheSwgYXNcbiAgICAgIC8vIEZvcm1payBjYW4gZGVhbCB3aXRoIGEgbmFtZSBsaWtlIFwiZm9vLmVuXCIgYW5kIHNldHMgdGhlIHZhbHVlIGNvcnJlY3RseS5cbiAgICAgIC8vIFdlIGNhbid0IHVzZSB0aGlzIGFzIHdlIGFyZW4ndCBndWFyYW50ZWVkIGEgbmFtZSBpbiB0aGUgc3RvcnkgYXMgdGhlIHVzZXJcbiAgICAgIC8vIG1pZ2h0IGNsZWFyIGl0IHVzaW5nIHRoZSBrbm9iLCBhbmQgdGhlbiB3ZSBjYW4ndCBwYXJzZSB0aGUgbGFuZ3VhZ2UgZnJvbVxuICAgICAgLy8gdGhlIGlucHV0IG5hbWUgYW55bW9yZS5cbiAgICAgIC8vXG4gICAgICBldmVudC50YXJnZXQubGFuZ3VhZ2UgPSBwcm9wcy5sYW5ndWFnZTtcbiAgICAgIG9uQ2hhbmdlPy4oZXZlbnQpO1xuICAgIH0sXG4gICAgW3Byb3BzLmxhbmd1YWdlLCBvbkNoYW5nZV1cbiAgKTtcblxuICBpZiAoIXByb3BzLmlzUmVhZE9ubHkpIHtcbiAgICB3YXJuaW5nKFxuICAgICAgdHlwZW9mIHByb3BzLm9uQ2hhbmdlID09PSAnZnVuY3Rpb24nLFxuICAgICAgJ0xvY2FsaXplZFRleHRJbnB1dDogXCJvbkNoYW5nZVwiIGlzIHJlcXVpcmVkIHdoZW4gaXNSZWFkT25seSBpcyBub3QgdHJ1ZSdcbiAgICApO1xuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2XG4gICAgICBrZXk9e3Byb3BzLmxhbmd1YWdlfVxuICAgICAgY3NzPXtjc3NgXG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBgfVxuICAgID5cbiAgICAgIDxsYWJlbFxuICAgICAgICBodG1sRm9yPXtwcm9wcy5pZH1cbiAgICAgICAgY3NzPXtnZXRMYW5ndWFnZUxhYmVsU3R5bGVzKHsgLi4ucHJvcHMsIGlzTmV3VGhlbWUgfSl9XG4gICAgICA+XG4gICAgICAgIHtwcm9wcy5sYW5ndWFnZS50b1VwcGVyQ2FzZSgpfVxuICAgICAgPC9sYWJlbD5cbiAgICAgIDxUZXh0SW5wdXRcbiAgICAgICAgey4uLnByb3BzfVxuICAgICAgICBvbkNoYW5nZT17aGFuZGxlQ2hhbmdlfVxuICAgICAgICBjc3M9e2dldExvY2FsaXplZElucHV0U3R5bGVzfVxuICAgICAgLz5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG5cbkxvY2FsaXplZElucHV0LmRpc3BsYXlOYW1lID0gJ0xvY2FsaXplZElucHV0JztcblxuY29uc3QgUmVxdWlyZWRWYWx1ZUVycm9yTWVzc2FnZSA9ICgpID0+IChcbiAgPEVycm9yTWVzc2FnZT5cbiAgICA8Rm9ybWF0dGVkTWVzc2FnZSB7Li4ubWVzc2FnZXNMb2NhbGl6ZWRJbnB1dC5taXNzaW5nUmVxdWlyZWRGaWVsZH0gLz5cbiAgPC9FcnJvck1lc3NhZ2U+XG4pO1xuXG5SZXF1aXJlZFZhbHVlRXJyb3JNZXNzYWdlLmRpc3BsYXlOYW1lID0gJ1JlcXVpcmVkVmFsdWVFcnJvck1lc3NhZ2UnO1xuXG5jb25zdCBMb2NhbGl6ZWRUZXh0SW5wdXQgPSAocHJvcHM6IFRMb2NhbGl6ZWRUZXh0SW5wdXRQcm9wcykgPT4ge1xuICBjb25zdCBkZWZhdWx0RXhwYW5zaW9uU3RhdGUgPVxuICAgIHByb3BzLmhpZGVMYW5ndWFnZUV4cGFuc2lvbkNvbnRyb2xzIHx8XG4gICAgcHJvcHMuZGVmYXVsdEV4cGFuZExhbmd1YWdlcyB8fCAvLyBkZWZhdWx0IHRvIGBmYWxzZWAsIGJlY2F1c2UgdXNlVG9nZ2xlU3RhdGUgZGVmYXVsdHMgdG8gYHRydWVgXG4gICAgZmFsc2U7XG5cbiAgY29uc3QgW2FyZUxhbmd1YWdlc0V4cGFuZGVkLCB0b2dnbGVMYW5ndWFnZXNdID0gdXNlVG9nZ2xlU3RhdGUoXG4gICAgZGVmYXVsdEV4cGFuc2lvblN0YXRlXG4gICk7XG5cbiAgY29uc3Qgb25Mb2NhbGl6ZWRJbnB1dFRvZ2dsZSA9IHVzZUNhbGxiYWNrKFxuICAgICgpID0+IHRvZ2dsZUxhbmd1YWdlcygpLFxuICAgIFt0b2dnbGVMYW5ndWFnZXNdXG4gICk7XG5cbiAgY29uc3QgbGFuZ3VhZ2VzID0gc29ydExhbmd1YWdlcyhcbiAgICBwcm9wcy5zZWxlY3RlZExhbmd1YWdlLFxuICAgIE9iamVjdC5rZXlzKHByb3BzLnZhbHVlKVxuICApO1xuXG4gIGNvbnN0IGlkID0gdXNlRmllbGRJZChwcm9wcy5pZCwgc2VxdWVudGlhbElkKTtcblxuICBjb25zdCBoYXNFcnJvckluUmVtYWluaW5nTGFuZ3VhZ2VzID1cbiAgICBwcm9wcy5oYXNFcnJvciB8fFxuICAgIGdldEhhc0Vycm9yT25SZW1haW5pbmdMYW5ndWFnZXMocHJvcHMuZXJyb3JzLCBwcm9wcy5zZWxlY3RlZExhbmd1YWdlKTtcblxuICBpZiAoaGFzRXJyb3JJblJlbWFpbmluZ0xhbmd1YWdlcykge1xuICAgIC8vIHRoaXMgdXBkYXRlIHdpdGhpbiByZW5kZXIgcmVwbGFjZXMgdGhlIG9sZCBgZ2V0RGVyaXZlZFN0YXRlRnJvbVByb3BzYCBmdW5jdGlvbmFsaXR5XG4gICAgLy8gaHR0cHM6Ly9yZWFjdGpzLm9yZy9kb2NzL2hvb2tzLWZhcS5odG1sI2hvdy1kby1pLWltcGxlbWVudC1nZXRkZXJpdmVkc3RhdGVmcm9tcHJvcHNcbiAgICBpZiAoaGFzRXJyb3JJblJlbWFpbmluZ0xhbmd1YWdlcyAhPT0gYXJlTGFuZ3VhZ2VzRXhwYW5kZWQpIHtcbiAgICAgIHRvZ2dsZUxhbmd1YWdlcygpO1xuICAgIH1cbiAgfVxuXG4gIGNvbnN0IHNob3VsZFJlbmRlckxhbmd1YWdlc0J1dHRvbiA9XG4gICAgbGFuZ3VhZ2VzLmxlbmd0aCA+IDEgJiYgIXByb3BzLmhpZGVMYW5ndWFnZUV4cGFuc2lvbkNvbnRyb2xzO1xuXG4gIGlmICghcHJvcHMuaXNSZWFkT25seSkge1xuICAgIHdhcm5pbmcoXG4gICAgICB0eXBlb2YgcHJvcHMub25DaGFuZ2UgPT09ICdmdW5jdGlvbicsXG4gICAgICAnTG9jYWxpemVkVGV4dElucHV0OiBcIm9uQ2hhbmdlXCIgaXMgcmVxdWlyZWQgd2hlbiBpc1JlYWRPbmx5IGlzIG5vdCB0cnVlJ1xuICAgICk7XG4gIH1cblxuICBpZiAocHJvcHMuaGlkZUxhbmd1YWdlRXhwYW5zaW9uQ29udHJvbHMpIHtcbiAgICB3YXJuaW5nKFxuICAgICAgdHlwZW9mIHByb3BzLmRlZmF1bHRFeHBhbmRMYW5ndWFnZXMgIT09ICdib29sZWFuJyxcbiAgICAgICdMb2NhbGl6ZWRUZXh0SW5wdXQ6IFwiZGVmYXVsdEV4cGFuZExhbmd1YWdlc1wiIGRvZXMgbm90IGhhdmUgYW55IGVmZmVjdCB3aGVuIFwiaGlkZUxhbmd1YWdlRXhwYW5zaW9uQ29udHJvbHNcIiBpcyBzZXQuJ1xuICAgICk7XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxDb25zdHJhaW50cy5Ib3Jpem9udGFsIG1heD17cHJvcHMuaG9yaXpvbnRhbENvbnN0cmFpbnR9PlxuICAgICAgPFN0YWNrIHNjYWxlPVwieHNcIj5cbiAgICAgICAgPFN0YWNrPlxuICAgICAgICAgIHtsYW5ndWFnZXMubWFwKChsYW5ndWFnZSwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGlzRmlyc3RMYW5ndWFnZSA9IGluZGV4ID09PSAwO1xuICAgICAgICAgICAgaWYgKCFpc0ZpcnN0TGFuZ3VhZ2UgJiYgIWFyZUxhbmd1YWdlc0V4cGFuZGVkKSByZXR1cm4gbnVsbDtcblxuICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgPGRpdiBrZXk9e2xhbmd1YWdlfT5cbiAgICAgICAgICAgICAgICA8U3RhY2sgc2NhbGU9XCJ4c1wiPlxuICAgICAgICAgICAgICAgICAgPExvY2FsaXplZElucHV0XG4gICAgICAgICAgICAgICAgICAgIGF1dG9Db21wbGV0ZT17cHJvcHMuYXV0b0NvbXBsZXRlfVxuICAgICAgICAgICAgICAgICAgICBpZD17TG9jYWxpemVkVGV4dElucHV0LmdldElkKGlkLCBsYW5ndWFnZSl9XG4gICAgICAgICAgICAgICAgICAgIG5hbWU9e0xvY2FsaXplZFRleHRJbnB1dC5nZXROYW1lKHByb3BzLm5hbWUsIGxhbmd1YWdlKX1cbiAgICAgICAgICAgICAgICAgICAgdmFsdWU9e3Byb3BzLnZhbHVlW2xhbmd1YWdlXX1cbiAgICAgICAgICAgICAgICAgICAgb25DaGFuZ2U9e3Byb3BzLm9uQ2hhbmdlfVxuICAgICAgICAgICAgICAgICAgICBsYW5ndWFnZT17bGFuZ3VhZ2V9XG4gICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPXtcbiAgICAgICAgICAgICAgICAgICAgICBwcm9wcy5wbGFjZWhvbGRlclxuICAgICAgICAgICAgICAgICAgICAgICAgPyBwcm9wcy5wbGFjZWhvbGRlcltsYW5ndWFnZV1cbiAgICAgICAgICAgICAgICAgICAgICAgIDogdW5kZWZpbmVkXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgb25CbHVyPXtwcm9wcy5vbkJsdXJ9XG4gICAgICAgICAgICAgICAgICAgIG9uRm9jdXM9e3Byb3BzLm9uRm9jdXN9XG4gICAgICAgICAgICAgICAgICAgIGlzQXV0b2ZvY3Vzc2VkPXtpbmRleCA9PT0gMCAmJiBwcm9wcy5pc0F1dG9mb2N1c3NlZH1cbiAgICAgICAgICAgICAgICAgICAgaXNEaXNhYmxlZD17cHJvcHMuaXNEaXNhYmxlZH1cbiAgICAgICAgICAgICAgICAgICAgaXNSZWFkT25seT17cHJvcHMuaXNSZWFkT25seX1cbiAgICAgICAgICAgICAgICAgICAgaGFzRXJyb3I9e0Jvb2xlYW4oXG4gICAgICAgICAgICAgICAgICAgICAgcHJvcHMuaGFzRXJyb3IgfHwgKHByb3BzLmVycm9ycyAmJiBwcm9wcy5lcnJvcnNbbGFuZ3VhZ2VdKVxuICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICB7Li4uY3JlYXRlTG9jYWxpemVkRGF0YUF0dHJpYnV0ZXMocHJvcHMsIGxhbmd1YWdlKX1cbiAgICAgICAgICAgICAgICAgICAgLyogQVJJQSAqL1xuICAgICAgICAgICAgICAgICAgICBhcmlhLWludmFsaWQ9e3Byb3BzWydhcmlhLWludmFsaWQnXX1cbiAgICAgICAgICAgICAgICAgICAgYXJpYS1lcnJvcm1lc3NhZ2U9e3Byb3BzWydhcmlhLWVycm9ybWVzc2FnZSddfVxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgIHtwcm9wcy5lcnJvcnMgJiYgcHJvcHMuZXJyb3JzW2xhbmd1YWdlXX1cbiAgICAgICAgICAgICAgICA8L1N0YWNrPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfSl9XG4gICAgICAgIDwvU3RhY2s+XG4gICAgICAgIHtzaG91bGRSZW5kZXJMYW5ndWFnZXNCdXR0b24gJiYgKFxuICAgICAgICAgIDxMb2NhbGl6ZWRJbnB1dFRvZ2dsZVxuICAgICAgICAgICAgaXNPcGVuPXthcmVMYW5ndWFnZXNFeHBhbmRlZH1cbiAgICAgICAgICAgIG9uQ2xpY2s9e29uTG9jYWxpemVkSW5wdXRUb2dnbGV9XG4gICAgICAgICAgICBpc0Rpc2FibGVkPXthcmVMYW5ndWFnZXNFeHBhbmRlZCAmJiBoYXNFcnJvckluUmVtYWluaW5nTGFuZ3VhZ2VzfVxuICAgICAgICAgICAgcmVtYWluaW5nTG9jYWxpemF0aW9ucz17bGFuZ3VhZ2VzLmxlbmd0aCAtIDF9XG4gICAgICAgICAgLz5cbiAgICAgICAgKX1cbiAgICAgIDwvU3RhY2s+XG4gICAgPC9Db25zdHJhaW50cy5Ib3Jpem9udGFsPlxuICApO1xufTtcblxuTG9jYWxpemVkVGV4dElucHV0LmRpc3BsYXlOYW1lID0gJ0xvY2FsaXplZFRleHRJbnB1dCc7XG5cbkxvY2FsaXplZFRleHRJbnB1dC5SZXF1aXJlZFZhbHVlRXJyb3JNZXNzYWdlID0gUmVxdWlyZWRWYWx1ZUVycm9yTWVzc2FnZTtcblxuTG9jYWxpemVkVGV4dElucHV0LmRlZmF1bHRQcm9wcyA9IHtcbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQ6ICdzY2FsZScsXG59O1xuXG5Mb2NhbGl6ZWRUZXh0SW5wdXQuZ2V0SWQgPSBnZXRJZDtcblxuTG9jYWxpemVkVGV4dElucHV0LmdldE5hbWUgPSBnZXROYW1lO1xuXG5Mb2NhbGl6ZWRUZXh0SW5wdXQuY3JlYXRlTG9jYWxpemVkU3RyaW5nID0gY3JlYXRlTG9jYWxpemVkU3RyaW5nO1xuXG5Mb2NhbGl6ZWRUZXh0SW5wdXQuaXNFbXB0eSA9IGlzRW1wdHk7XG5cbkxvY2FsaXplZFRleHRJbnB1dC5vbWl0RW1wdHlUcmFuc2xhdGlvbnMgPSBvbWl0RW1wdHlUcmFuc2xhdGlvbnM7XG5cbkxvY2FsaXplZFRleHRJbnB1dC5pc1RvdWNoZWQgPSBpc1RvdWNoZWQ7XG5cbmV4cG9ydCBkZWZhdWx0IExvY2FsaXplZFRleHRJbnB1dDtcbiJdfQ== */",
103
92
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
104
93
  };
105
-
106
94
  const LocalizedInput = props => {
107
95
  const onChange = props.onChange;
108
-
109
96
  const _useTheme = designSystem.useTheme(),
110
- isNewTheme = _useTheme.isNewTheme;
111
-
97
+ isNewTheme = _useTheme.isNewTheme;
112
98
  const handleChange = react$1.useCallback(event => {
113
99
  // We manipulate the event to add the language to the target.
114
100
  // That way the users of LocalizedTextInput's onChange can read
@@ -124,11 +110,9 @@ const LocalizedInput = props => {
124
110
  event.target.language = props.language;
125
111
  onChange === null || onChange === void 0 ? void 0 : onChange(event);
126
112
  }, [props.language, onChange]);
127
-
128
113
  if (!props.isReadOnly) {
129
114
  process.env.NODE_ENV !== "production" ? utils.warning(typeof props.onChange === 'function', 'LocalizedTextInput: "onChange" is required when isReadOnly is not true') : void 0;
130
115
  }
131
-
132
116
  return jsxRuntime.jsxs("div", {
133
117
  css: _ref,
134
118
  children: [jsxRuntime.jsx("label", {
@@ -143,7 +127,6 @@ const LocalizedInput = props => {
143
127
  }))]
144
128
  }, props.language);
145
129
  };
146
-
147
130
  LocalizedInput.propTypes = process.env.NODE_ENV !== "production" ? {
148
131
  id: _pt__default["default"].string,
149
132
  name: _pt__default["default"].string,
@@ -160,27 +143,22 @@ LocalizedInput.propTypes = process.env.NODE_ENV !== "production" ? {
160
143
  placeholder: _pt__default["default"].string
161
144
  } : {};
162
145
  LocalizedInput.displayName = 'LocalizedInput';
163
-
164
146
  const RequiredValueErrorMessage = () => jsxRuntime.jsx(messages.ErrorMessage, {
165
147
  children: jsxRuntime.jsx(reactIntl.FormattedMessage, _objectSpread({}, inputUtils.messagesLocalizedInput.missingRequiredField))
166
148
  });
167
-
168
149
  RequiredValueErrorMessage.displayName = 'RequiredValueErrorMessage';
169
-
170
150
  const LocalizedTextInput = props => {
171
- const defaultExpansionState = props.hideLanguageExpansionControls || props.defaultExpandLanguages || // default to `false`, because useToggleState defaults to `true`
151
+ const defaultExpansionState = props.hideLanguageExpansionControls || props.defaultExpandLanguages ||
152
+ // default to `false`, because useToggleState defaults to `true`
172
153
  false;
173
-
174
154
  const _useToggleState = hooks.useToggleState(defaultExpansionState),
175
- _useToggleState2 = _slicedToArray(_useToggleState, 2),
176
- areLanguagesExpanded = _useToggleState2[0],
177
- toggleLanguages = _useToggleState2[1];
178
-
155
+ _useToggleState2 = _slicedToArray(_useToggleState, 2),
156
+ areLanguagesExpanded = _useToggleState2[0],
157
+ toggleLanguages = _useToggleState2[1];
179
158
  const onLocalizedInputToggle = react$1.useCallback(() => toggleLanguages(), [toggleLanguages]);
180
159
  const languages = localizedUtils.sortLanguages(props.selectedLanguage, _Object$keys__default["default"](props.value));
181
160
  const id = hooks.useFieldId(props.id, sequentialId);
182
161
  const hasErrorInRemainingLanguages = props.hasError || localizedUtils.getHasErrorOnRemainingLanguages(props.errors, props.selectedLanguage);
183
-
184
162
  if (hasErrorInRemainingLanguages) {
185
163
  // this update within render replaces the old `getDerivedStateFromProps` functionality
186
164
  // https://reactjs.org/docs/hooks-faq.html#how-do-i-implement-getderivedstatefromprops
@@ -188,17 +166,13 @@ const LocalizedTextInput = props => {
188
166
  toggleLanguages();
189
167
  }
190
168
  }
191
-
192
169
  const shouldRenderLanguagesButton = languages.length > 1 && !props.hideLanguageExpansionControls;
193
-
194
170
  if (!props.isReadOnly) {
195
171
  process.env.NODE_ENV !== "production" ? utils.warning(typeof props.onChange === 'function', 'LocalizedTextInput: "onChange" is required when isReadOnly is not true') : void 0;
196
172
  }
197
-
198
173
  if (props.hideLanguageExpansionControls) {
199
174
  process.env.NODE_ENV !== "production" ? utils.warning(typeof props.defaultExpandLanguages !== 'boolean', 'LocalizedTextInput: "defaultExpandLanguages" does not have any effect when "hideLanguageExpansionControls" is set.') : void 0;
200
175
  }
201
-
202
176
  return jsxRuntime.jsx(Constraints__default["default"].Horizontal, {
203
177
  max: props.horizontalConstraint,
204
178
  children: jsxRuntime.jsxs(Stack__default["default"], {
@@ -241,7 +215,6 @@ const LocalizedTextInput = props => {
241
215
  })
242
216
  });
243
217
  };
244
-
245
218
  LocalizedTextInput.propTypes = process.env.NODE_ENV !== "production" ? {
246
219
  id: _pt__default["default"].string,
247
220
  name: _pt__default["default"].string,
@@ -277,7 +250,7 @@ LocalizedTextInput.isTouched = localizedUtils.isTouched;
277
250
  var LocalizedTextInput$1 = LocalizedTextInput;
278
251
 
279
252
  // NOTE: This string will be replaced on build time with the package version.
280
- var version = "16.0.0";
253
+ var version = "16.1.0";
281
254
 
282
255
  exports["default"] = LocalizedTextInput$1;
283
256
  exports.version = version;
@@ -47,53 +47,41 @@ var _ref$1 = {
47
47
  name: "1ps4mw6",
48
48
  styles: "border-top-left-radius:0;border-bottom-left-radius:0;border-style:solid;flex:auto"
49
49
  } ;
50
-
51
50
  // NOTE: order is important here
52
51
  // * a disabled-field currently does not display warning/error-states so it takes precedence
53
52
  // * a readonly-field cannot be changed, but it might be relevant for validation, so error and warning are checked first
54
53
  // how you can interact with the field is controlled separately by the props, this only influences visuals
55
54
  const getLocalizedInputStyles = () => [_ref$1];
56
-
57
55
  const getLanguageLabelBackgroundColor = props => {
58
56
  if (props.isDisabled) {
59
57
  return designSystem.designTokens.backgroundColorForLocalizedInputLabelWhenDisabled;
60
58
  }
61
-
62
59
  if (props.isReadOnly) {
63
60
  return designSystem.designTokens.backgroundColorForLocalizedInputLabelWhenReadonly;
64
61
  }
65
-
66
62
  return designSystem.designTokens.backgroundColorForLocalizedInputLabel;
67
63
  };
68
-
69
64
  const getLanguageLabelBorderColor = props => {
70
65
  if (props.isDisabled) {
71
66
  return designSystem.designTokens.borderColorForInputWhenDisabled;
72
67
  }
73
-
74
68
  return props.isReadOnly ? designSystem.designTokens.borderColorForLocalizedInputLabelWhenReadonly : designSystem.designTokens.borderColorForLocalizedInputLabel;
75
69
  };
76
-
77
70
  const getLanguageLabelStyles = props => {
78
71
  return /*#__PURE__*/react.css("display:flex;flex-direction:column;justify-content:center;flex:1 0 auto;box-sizing:border-box;color:", designSystem.designTokens.fontColorForLocalizedInputLabel, ";cursor:", props.isDisabled ? 'not-allowed' : 'default', ";height:", designSystem.designTokens.heightForInput, ";font-size:", designSystem.designTokens.fontSizeForLocalizedInputLabel, ";background-color:", getLanguageLabelBackgroundColor(props), ";border-top-left-radius:", designSystem.designTokens.borderRadiusForInput, ";border-bottom-left-radius:", designSystem.designTokens.borderRadiusForInput, ";border:1px solid ", getLanguageLabelBorderColor(props), ";padding:", designSystem.designTokens.paddingForLocalizedInputLabel, ";transition:border-color ", designSystem.designTokens.transitionStandard, ",background-color ", designSystem.designTokens.transitionStandard, ",color ", designSystem.designTokens.transitionStandard, ";border-right:0;box-shadow:none;appearance:none;" + ("" ), "" );
79
72
  };
80
73
 
81
74
  function ownKeys(object, enumerableOnly) { var keys = _Object$keys__default["default"](object); if (_Object$getOwnPropertySymbols__default["default"]) { var symbols = _Object$getOwnPropertySymbols__default["default"](object); enumerableOnly && (symbols = _filterInstanceProperty__default["default"](symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor__default["default"](object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
82
-
83
75
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys(Object(source), !0)).call(_context, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](target, _Object$getOwnPropertyDescriptors__default["default"](source)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys(Object(source))).call(_context2, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } return target; }
84
76
  const sequentialId = utils.createSequentialId('localized-text-input-');
85
-
86
77
  var _ref = {
87
78
  name: "1ktetz7",
88
79
  styles: "width:100%;position:relative;display:flex"
89
80
  } ;
90
-
91
81
  const LocalizedInput = props => {
92
82
  const onChange = props.onChange;
93
-
94
83
  const _useTheme = designSystem.useTheme(),
95
- isNewTheme = _useTheme.isNewTheme;
96
-
84
+ isNewTheme = _useTheme.isNewTheme;
97
85
  const handleChange = react$1.useCallback(event => {
98
86
  // We manipulate the event to add the language to the target.
99
87
  // That way the users of LocalizedTextInput's onChange can read
@@ -109,9 +97,7 @@ const LocalizedInput = props => {
109
97
  event.target.language = props.language;
110
98
  onChange === null || onChange === void 0 ? void 0 : onChange(event);
111
99
  }, [props.language, onChange]);
112
-
113
100
  if (!props.isReadOnly) ;
114
-
115
101
  return jsxRuntime.jsxs("div", {
116
102
  css: _ref,
117
103
  children: [jsxRuntime.jsx("label", {
@@ -126,30 +112,24 @@ const LocalizedInput = props => {
126
112
  }))]
127
113
  }, props.language);
128
114
  };
129
-
130
115
  LocalizedInput.propTypes = {};
131
116
  LocalizedInput.displayName = 'LocalizedInput';
132
-
133
117
  const RequiredValueErrorMessage = () => jsxRuntime.jsx(messages.ErrorMessage, {
134
118
  children: jsxRuntime.jsx(reactIntl.FormattedMessage, _objectSpread({}, inputUtils.messagesLocalizedInput.missingRequiredField))
135
119
  });
136
-
137
120
  RequiredValueErrorMessage.displayName = 'RequiredValueErrorMessage';
138
-
139
121
  const LocalizedTextInput = props => {
140
- const defaultExpansionState = props.hideLanguageExpansionControls || props.defaultExpandLanguages || // default to `false`, because useToggleState defaults to `true`
122
+ const defaultExpansionState = props.hideLanguageExpansionControls || props.defaultExpandLanguages ||
123
+ // default to `false`, because useToggleState defaults to `true`
141
124
  false;
142
-
143
125
  const _useToggleState = hooks.useToggleState(defaultExpansionState),
144
- _useToggleState2 = _slicedToArray(_useToggleState, 2),
145
- areLanguagesExpanded = _useToggleState2[0],
146
- toggleLanguages = _useToggleState2[1];
147
-
126
+ _useToggleState2 = _slicedToArray(_useToggleState, 2),
127
+ areLanguagesExpanded = _useToggleState2[0],
128
+ toggleLanguages = _useToggleState2[1];
148
129
  const onLocalizedInputToggle = react$1.useCallback(() => toggleLanguages(), [toggleLanguages]);
149
130
  const languages = localizedUtils.sortLanguages(props.selectedLanguage, _Object$keys__default["default"](props.value));
150
131
  const id = hooks.useFieldId(props.id, sequentialId);
151
132
  const hasErrorInRemainingLanguages = props.hasError || localizedUtils.getHasErrorOnRemainingLanguages(props.errors, props.selectedLanguage);
152
-
153
133
  if (hasErrorInRemainingLanguages) {
154
134
  // this update within render replaces the old `getDerivedStateFromProps` functionality
155
135
  // https://reactjs.org/docs/hooks-faq.html#how-do-i-implement-getderivedstatefromprops
@@ -157,13 +137,9 @@ const LocalizedTextInput = props => {
157
137
  toggleLanguages();
158
138
  }
159
139
  }
160
-
161
140
  const shouldRenderLanguagesButton = languages.length > 1 && !props.hideLanguageExpansionControls;
162
-
163
141
  if (!props.isReadOnly) ;
164
-
165
142
  if (props.hideLanguageExpansionControls) ;
166
-
167
143
  return jsxRuntime.jsx(Constraints__default["default"].Horizontal, {
168
144
  max: props.horizontalConstraint,
169
145
  children: jsxRuntime.jsxs(Stack__default["default"], {
@@ -206,7 +182,6 @@ const LocalizedTextInput = props => {
206
182
  })
207
183
  });
208
184
  };
209
-
210
185
  LocalizedTextInput.propTypes = {};
211
186
  LocalizedTextInput.displayName = 'LocalizedTextInput';
212
187
  LocalizedTextInput.RequiredValueErrorMessage = RequiredValueErrorMessage;
@@ -222,7 +197,7 @@ LocalizedTextInput.isTouched = localizedUtils.isTouched;
222
197
  var LocalizedTextInput$1 = LocalizedTextInput;
223
198
 
224
199
  // NOTE: This string will be replaced on build time with the package version.
225
- var version = "16.0.0";
200
+ var version = "16.1.0";
226
201
 
227
202
  exports["default"] = LocalizedTextInput$1;
228
203
  exports.version = version;
@@ -25,7 +25,6 @@ import { LocalizedInputToggle, messagesLocalizedInput } from '@commercetools-uik
25
25
  import { jsx, jsxs } from '@emotion/react/jsx-runtime';
26
26
 
27
27
  function _EMOTION_STRINGIFIED_CSS_ERROR__$1() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
28
-
29
28
  var _ref$1 = process.env.NODE_ENV === "production" ? {
30
29
  name: "1ps4mw6",
31
30
  styles: "border-top-left-radius:0;border-bottom-left-radius:0;border-style:solid;flex:auto"
@@ -35,44 +34,34 @@ var _ref$1 = process.env.NODE_ENV === "production" ? {
35
34
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxvY2FsaXplZC10ZXh0LWlucHV0LnN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFTSyIsImZpbGUiOiJsb2NhbGl6ZWQtdGV4dC1pbnB1dC5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgeyBkZXNpZ25Ub2tlbnMgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9kZXNpZ24tc3lzdGVtJztcbmltcG9ydCB0eXBlIHsgVExvY2FsaXplZElucHV0UHJvcHMgfSBmcm9tICcuL2xvY2FsaXplZC10ZXh0LWlucHV0JztcblxuLy8gTk9URTogb3JkZXIgaXMgaW1wb3J0YW50IGhlcmVcbi8vICogYSBkaXNhYmxlZC1maWVsZCBjdXJyZW50bHkgZG9lcyBub3QgZGlzcGxheSB3YXJuaW5nL2Vycm9yLXN0YXRlcyBzbyBpdCB0YWtlcyBwcmVjZWRlbmNlXG4vLyAqIGEgcmVhZG9ubHktZmllbGQgY2Fubm90IGJlIGNoYW5nZWQsIGJ1dCBpdCBtaWdodCBiZSByZWxldmFudCBmb3IgdmFsaWRhdGlvbiwgc28gZXJyb3IgYW5kIHdhcm5pbmcgYXJlIGNoZWNrZWQgZmlyc3Rcbi8vIGhvdyB5b3UgY2FuIGludGVyYWN0IHdpdGggdGhlIGZpZWxkIGlzIGNvbnRyb2xsZWQgc2VwYXJhdGVseSBieSB0aGUgcHJvcHMsIHRoaXMgb25seSBpbmZsdWVuY2VzIHZpc3VhbHNcbmNvbnN0IGdldExvY2FsaXplZElucHV0U3R5bGVzID0gKCkgPT4gW1xuICBjc3NgXG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgZmxleDogYXV0bztcbiAgYCxcbl07XG5cbmNvbnN0IGdldExhbmd1YWdlTGFiZWxCYWNrZ3JvdW5kQ29sb3IgPSAocHJvcHM6IFRMb2NhbGl6ZWRJbnB1dFByb3BzKSA9PiB7XG4gIGlmIChwcm9wcy5pc0Rpc2FibGVkKSB7XG4gICAgcmV0dXJuIGRlc2lnblRva2Vucy5iYWNrZ3JvdW5kQ29sb3JGb3JMb2NhbGl6ZWRJbnB1dExhYmVsV2hlbkRpc2FibGVkO1xuICB9XG4gIGlmIChwcm9wcy5pc1JlYWRPbmx5KSB7XG4gICAgcmV0dXJuIGRlc2lnblRva2Vucy5iYWNrZ3JvdW5kQ29sb3JGb3JMb2NhbGl6ZWRJbnB1dExhYmVsV2hlblJlYWRvbmx5O1xuICB9XG4gIHJldHVybiBkZXNpZ25Ub2tlbnMuYmFja2dyb3VuZENvbG9yRm9yTG9jYWxpemVkSW5wdXRMYWJlbDtcbn07XG5cbmNvbnN0IGdldExhbmd1YWdlTGFiZWxCb3JkZXJDb2xvciA9IChwcm9wczogVExvY2FsaXplZElucHV0UHJvcHMpID0+IHtcbiAgaWYgKHByb3BzLmlzRGlzYWJsZWQpIHtcbiAgICByZXR1cm4gZGVzaWduVG9rZW5zLmJvcmRlckNvbG9yRm9ySW5wdXRXaGVuRGlzYWJsZWQ7XG4gIH1cbiAgcmV0dXJuIHByb3BzLmlzUmVhZE9ubHlcbiAgICA/IGRlc2lnblRva2Vucy5ib3JkZXJDb2xvckZvckxvY2FsaXplZElucHV0TGFiZWxXaGVuUmVhZG9ubHlcbiAgICA6IGRlc2lnblRva2Vucy5ib3JkZXJDb2xvckZvckxvY2FsaXplZElucHV0TGFiZWw7XG59O1xuXG5jb25zdCBnZXRMYW5ndWFnZUxhYmVsU3R5bGVzID0gKFxuICBwcm9wczogVExvY2FsaXplZElucHV0UHJvcHMgJiB7IGlzTmV3VGhlbWU6IGJvb2xlYW4gfVxuKSA9PiB7XG4gIHJldHVybiBjc3NgXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIC8qIGF2b2lkIHdyYXBwaW5nIGxhYmVsIG9udG8gbmV3IGxpbmVzICovXG4gICAgZmxleDogMSAwIGF1dG87XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBjb2xvcjogJHtkZXNpZ25Ub2tlbnMuZm9udENvbG9yRm9yTG9jYWxpemVkSW5wdXRMYWJlbH07XG4gICAgY3Vyc29yOiAke3Byb3BzLmlzRGlzYWJsZWQgPyAnbm90LWFsbG93ZWQnIDogJ2RlZmF1bHQnfTtcbiAgICBoZWlnaHQ6ICR7ZGVzaWduVG9rZW5zLmhlaWdodEZvcklucHV0fTtcbiAgICBmb250LXNpemU6ICR7ZGVzaWduVG9rZW5zLmZvbnRTaXplRm9yTG9jYWxpemVkSW5wdXRMYWJlbH07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtnZXRMYW5ndWFnZUxhYmVsQmFja2dyb3VuZENvbG9yKHByb3BzKX07XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHtkZXNpZ25Ub2tlbnMuYm9yZGVyUmFkaXVzRm9ySW5wdXR9O1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICR7ZGVzaWduVG9rZW5zLmJvcmRlclJhZGl1c0ZvcklucHV0fTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAke2dldExhbmd1YWdlTGFiZWxCb3JkZXJDb2xvcihwcm9wcyl9O1xuICAgIHBhZGRpbmc6ICR7ZGVzaWduVG9rZW5zLnBhZGRpbmdGb3JMb2NhbGl6ZWRJbnB1dExhYmVsfTtcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgJHtkZXNpZ25Ub2tlbnMudHJhbnNpdGlvblN0YW5kYXJkfSxcbiAgICAgIGJhY2tncm91bmQtY29sb3IgJHtkZXNpZ25Ub2tlbnMudHJhbnNpdGlvblN0YW5kYXJkfSxcbiAgICAgIGNvbG9yICR7ZGVzaWduVG9rZW5zLnRyYW5zaXRpb25TdGFuZGFyZH07XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYDtcbn07XG5cbmV4cG9ydCB7IGdldExvY2FsaXplZElucHV0U3R5bGVzLCBnZXRMYW5ndWFnZUxhYmVsU3R5bGVzIH07XG4iXX0= */",
36
35
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__$1
37
36
  };
38
-
39
37
  // NOTE: order is important here
40
38
  // * a disabled-field currently does not display warning/error-states so it takes precedence
41
39
  // * a readonly-field cannot be changed, but it might be relevant for validation, so error and warning are checked first
42
40
  // how you can interact with the field is controlled separately by the props, this only influences visuals
43
41
  const getLocalizedInputStyles = () => [_ref$1];
44
-
45
42
  const getLanguageLabelBackgroundColor = props => {
46
43
  if (props.isDisabled) {
47
44
  return designTokens.backgroundColorForLocalizedInputLabelWhenDisabled;
48
45
  }
49
-
50
46
  if (props.isReadOnly) {
51
47
  return designTokens.backgroundColorForLocalizedInputLabelWhenReadonly;
52
48
  }
53
-
54
49
  return designTokens.backgroundColorForLocalizedInputLabel;
55
50
  };
56
-
57
51
  const getLanguageLabelBorderColor = props => {
58
52
  if (props.isDisabled) {
59
53
  return designTokens.borderColorForInputWhenDisabled;
60
54
  }
61
-
62
55
  return props.isReadOnly ? designTokens.borderColorForLocalizedInputLabelWhenReadonly : designTokens.borderColorForLocalizedInputLabel;
63
56
  };
64
-
65
57
  const getLanguageLabelStyles = props => {
66
58
  return /*#__PURE__*/css("display:flex;flex-direction:column;justify-content:center;flex:1 0 auto;box-sizing:border-box;color:", designTokens.fontColorForLocalizedInputLabel, ";cursor:", props.isDisabled ? 'not-allowed' : 'default', ";height:", designTokens.heightForInput, ";font-size:", designTokens.fontSizeForLocalizedInputLabel, ";background-color:", getLanguageLabelBackgroundColor(props), ";border-top-left-radius:", designTokens.borderRadiusForInput, ";border-bottom-left-radius:", designTokens.borderRadiusForInput, ";border:1px solid ", getLanguageLabelBorderColor(props), ";padding:", designTokens.paddingForLocalizedInputLabel, ";transition:border-color ", designTokens.transitionStandard, ",background-color ", designTokens.transitionStandard, ",color ", designTokens.transitionStandard, ";border-right:0;box-shadow:none;appearance:none;" + (process.env.NODE_ENV === "production" ? "" : ";label:getLanguageLabelStyles;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxvY2FsaXplZC10ZXh0LWlucHV0LnN0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF1Q1kiLCJmaWxlIjoibG9jYWxpemVkLXRleHQtaW5wdXQuc3R5bGVzLnRzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHsgZGVzaWduVG9rZW5zIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvZGVzaWduLXN5c3RlbSc7XG5pbXBvcnQgdHlwZSB7IFRMb2NhbGl6ZWRJbnB1dFByb3BzIH0gZnJvbSAnLi9sb2NhbGl6ZWQtdGV4dC1pbnB1dCc7XG5cbi8vIE5PVEU6IG9yZGVyIGlzIGltcG9ydGFudCBoZXJlXG4vLyAqIGEgZGlzYWJsZWQtZmllbGQgY3VycmVudGx5IGRvZXMgbm90IGRpc3BsYXkgd2FybmluZy9lcnJvci1zdGF0ZXMgc28gaXQgdGFrZXMgcHJlY2VkZW5jZVxuLy8gKiBhIHJlYWRvbmx5LWZpZWxkIGNhbm5vdCBiZSBjaGFuZ2VkLCBidXQgaXQgbWlnaHQgYmUgcmVsZXZhbnQgZm9yIHZhbGlkYXRpb24sIHNvIGVycm9yIGFuZCB3YXJuaW5nIGFyZSBjaGVja2VkIGZpcnN0XG4vLyBob3cgeW91IGNhbiBpbnRlcmFjdCB3aXRoIHRoZSBmaWVsZCBpcyBjb250cm9sbGVkIHNlcGFyYXRlbHkgYnkgdGhlIHByb3BzLCB0aGlzIG9ubHkgaW5mbHVlbmNlcyB2aXN1YWxzXG5jb25zdCBnZXRMb2NhbGl6ZWRJbnB1dFN0eWxlcyA9ICgpID0+IFtcbiAgY3NzYFxuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGZsZXg6IGF1dG87XG4gIGAsXG5dO1xuXG5jb25zdCBnZXRMYW5ndWFnZUxhYmVsQmFja2dyb3VuZENvbG9yID0gKHByb3BzOiBUTG9jYWxpemVkSW5wdXRQcm9wcykgPT4ge1xuICBpZiAocHJvcHMuaXNEaXNhYmxlZCkge1xuICAgIHJldHVybiBkZXNpZ25Ub2tlbnMuYmFja2dyb3VuZENvbG9yRm9yTG9jYWxpemVkSW5wdXRMYWJlbFdoZW5EaXNhYmxlZDtcbiAgfVxuICBpZiAocHJvcHMuaXNSZWFkT25seSkge1xuICAgIHJldHVybiBkZXNpZ25Ub2tlbnMuYmFja2dyb3VuZENvbG9yRm9yTG9jYWxpemVkSW5wdXRMYWJlbFdoZW5SZWFkb25seTtcbiAgfVxuICByZXR1cm4gZGVzaWduVG9rZW5zLmJhY2tncm91bmRDb2xvckZvckxvY2FsaXplZElucHV0TGFiZWw7XG59O1xuXG5jb25zdCBnZXRMYW5ndWFnZUxhYmVsQm9yZGVyQ29sb3IgPSAocHJvcHM6IFRMb2NhbGl6ZWRJbnB1dFByb3BzKSA9PiB7XG4gIGlmIChwcm9wcy5pc0Rpc2FibGVkKSB7XG4gICAgcmV0dXJuIGRlc2lnblRva2Vucy5ib3JkZXJDb2xvckZvcklucHV0V2hlbkRpc2FibGVkO1xuICB9XG4gIHJldHVybiBwcm9wcy5pc1JlYWRPbmx5XG4gICAgPyBkZXNpZ25Ub2tlbnMuYm9yZGVyQ29sb3JGb3JMb2NhbGl6ZWRJbnB1dExhYmVsV2hlblJlYWRvbmx5XG4gICAgOiBkZXNpZ25Ub2tlbnMuYm9yZGVyQ29sb3JGb3JMb2NhbGl6ZWRJbnB1dExhYmVsO1xufTtcblxuY29uc3QgZ2V0TGFuZ3VhZ2VMYWJlbFN0eWxlcyA9IChcbiAgcHJvcHM6IFRMb2NhbGl6ZWRJbnB1dFByb3BzICYgeyBpc05ld1RoZW1lOiBib29sZWFuIH1cbikgPT4ge1xuICByZXR1cm4gY3NzYFxuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAvKiBhdm9pZCB3cmFwcGluZyBsYWJlbCBvbnRvIG5ldyBsaW5lcyAqL1xuICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgY29sb3I6ICR7ZGVzaWduVG9rZW5zLmZvbnRDb2xvckZvckxvY2FsaXplZElucHV0TGFiZWx9O1xuICAgIGN1cnNvcjogJHtwcm9wcy5pc0Rpc2FibGVkID8gJ25vdC1hbGxvd2VkJyA6ICdkZWZhdWx0J307XG4gICAgaGVpZ2h0OiAke2Rlc2lnblRva2Vucy5oZWlnaHRGb3JJbnB1dH07XG4gICAgZm9udC1zaXplOiAke2Rlc2lnblRva2Vucy5mb250U2l6ZUZvckxvY2FsaXplZElucHV0TGFiZWx9O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR7Z2V0TGFuZ3VhZ2VMYWJlbEJhY2tncm91bmRDb2xvcihwcm9wcyl9O1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICR7ZGVzaWduVG9rZW5zLmJvcmRlclJhZGl1c0ZvcklucHV0fTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAke2Rlc2lnblRva2Vucy5ib3JkZXJSYWRpdXNGb3JJbnB1dH07XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHtnZXRMYW5ndWFnZUxhYmVsQm9yZGVyQ29sb3IocHJvcHMpfTtcbiAgICBwYWRkaW5nOiAke2Rlc2lnblRva2Vucy5wYWRkaW5nRm9yTG9jYWxpemVkSW5wdXRMYWJlbH07XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yICR7ZGVzaWduVG9rZW5zLnRyYW5zaXRpb25TdGFuZGFyZH0sXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yICR7ZGVzaWduVG9rZW5zLnRyYW5zaXRpb25TdGFuZGFyZH0sXG4gICAgICBjb2xvciAke2Rlc2lnblRva2Vucy50cmFuc2l0aW9uU3RhbmRhcmR9O1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGA7XG59O1xuXG5leHBvcnQgeyBnZXRMb2NhbGl6ZWRJbnB1dFN0eWxlcywgZ2V0TGFuZ3VhZ2VMYWJlbFN0eWxlcyB9O1xuIl19 */");
67
59
  };
68
60
 
69
61
  function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
70
-
71
62
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty(_context = ownKeys(Object(source), !0)).call(_context, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : _forEachInstanceProperty(_context2 = ownKeys(Object(source))).call(_context2, function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
72
-
73
63
  function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
74
64
  const sequentialId = createSequentialId('localized-text-input-');
75
-
76
65
  var _ref = process.env.NODE_ENV === "production" ? {
77
66
  name: "1ktetz7",
78
67
  styles: "width:100%;position:relative;display:flex"
@@ -82,13 +71,10 @@ var _ref = process.env.NODE_ENV === "production" ? {
82
71
  map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxvY2FsaXplZC10ZXh0LWlucHV0LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUErTGMiLCJmaWxlIjoibG9jYWxpemVkLXRleHQtaW5wdXQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiLy8gVE9ETzogQHJlZGVzaWduIGNsZWFudXBcbmltcG9ydCB7XG4gIHR5cGUgRm9jdXNFdmVudEhhbmRsZXIsXG4gIHR5cGUgQ2hhbmdlRXZlbnRIYW5kbGVyLFxuICB1c2VDYWxsYmFjayxcbn0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgRm9ybWF0dGVkTWVzc2FnZSB9IGZyb20gJ3JlYWN0LWludGwnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHsgdXNlVGhlbWUgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9kZXNpZ24tc3lzdGVtJztcbmltcG9ydCB7IHVzZUZpZWxkSWQsIHVzZVRvZ2dsZVN0YXRlIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvaG9va3MnO1xuaW1wb3J0IHsgRXJyb3JNZXNzYWdlIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvbWVzc2FnZXMnO1xuaW1wb3J0IFN0YWNrIGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3NwYWNpbmdzLXN0YWNrJztcbmltcG9ydCBDb25zdHJhaW50cyBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9jb25zdHJhaW50cyc7XG5pbXBvcnQge1xuICBzb3J0TGFuZ3VhZ2VzLFxuICBjcmVhdGVMb2NhbGl6ZWREYXRhQXR0cmlidXRlcyxcbiAgZ2V0SGFzRXJyb3JPblJlbWFpbmluZ0xhbmd1YWdlcyxcbiAgaXNUb3VjaGVkLFxuICBvbWl0RW1wdHlUcmFuc2xhdGlvbnMsXG4gIGlzRW1wdHksXG4gIGNyZWF0ZUxvY2FsaXplZFN0cmluZyxcbiAgZ2V0SWQsXG4gIGdldE5hbWUsXG59IGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L2xvY2FsaXplZC11dGlscyc7XG5pbXBvcnQgeyBjcmVhdGVTZXF1ZW50aWFsSWQsIHdhcm5pbmcgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC91dGlscyc7XG5pbXBvcnQgVGV4dElucHV0IGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3RleHQtaW5wdXQnO1xuaW1wb3J0IHtcbiAgTG9jYWxpemVkSW5wdXRUb2dnbGUsXG4gIG1lc3NhZ2VzTG9jYWxpemVkSW5wdXQsXG59IGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L2lucHV0LXV0aWxzJztcbmltcG9ydCB7XG4gIGdldExvY2FsaXplZElucHV0U3R5bGVzLFxuICBnZXRMYW5ndWFnZUxhYmVsU3R5bGVzLFxufSBmcm9tICcuL2xvY2FsaXplZC10ZXh0LWlucHV0LnN0eWxlcyc7XG5cbmludGVyZmFjZSBIVE1MTG9jYWxpemVkSW5wdXRFbGVtZW50IGV4dGVuZHMgSFRNTElucHV0RWxlbWVudCB7XG4gIGxhbmd1YWdlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCB0eXBlIFRMb2NhbGl6ZWRUZXh0SW5wdXRQcm9wcyA9IHtcbiAgaWQ/OiBzdHJpbmc7XG4gIG5hbWU/OiBzdHJpbmc7XG4gIGF1dG9Db21wbGV0ZT86IHN0cmluZztcbiAgLyoqXG4gICAqIEluZGljYXRlIGlmIHRoZSB2YWx1ZSBlbnRlcmVkIGluIHRoZSBpbnB1dCBpcyBpbnZhbGlkLlxuICAgKi9cbiAgJ2FyaWEtaW52YWxpZCc/OiBib29sZWFuO1xuICAvKipcbiAgICogSFRNTCBJRCBvZiBhbiBlbGVtZW50IGNvbnRhaW5pbmcgYW4gZXJyb3IgbWVzc2FnZSByZWxhdGVkIHRvIHRoZSBpbnB1dC5cbiAgICovXG4gICdhcmlhLWVycm9ybWVzc2FnZSc/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiAgIHRoZW4gaW5wdXQgZG9lc24ndCBhY2NlcHQgYSBcImxhbmd1YWdlc1wiIHByb3AsIGluc3RlYWQgYWxsIHBvc3NpYmxlXG4gIGxhbmd1YWdlcyBoYXZlIHRvIGV4aXN0ICh3aXRoIGVtcHR5IG9yIGZpbGxlZCBzdHJpbmdzKSBvbiB0aGUgdmFsdWU6XG4gICAgeyBlbjogJ2ZvbycsIGRlOiAnJywgZXM6ICcnIH1cbiAgICovXG4gIHZhbHVlOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICAvKipcbiAgICogR2V0cyBjYWxsZWQgd2hlbiBhbnkgaW5wdXQgaXMgY2hhbmdlZC4gSXMgY2FsbGVkIHdpdGggdGhlIGNoYW5nZSBldmVudCBvZiB0aGUgY2hhbmdlZCBpbnB1dC5cbiAgICovXG4gIG9uQ2hhbmdlPzogQ2hhbmdlRXZlbnRIYW5kbGVyPEhUTUxMb2NhbGl6ZWRJbnB1dEVsZW1lbnQ+O1xuICAvKipcbiAgICogU3BlY2lmaWVzIHdoaWNoIGxhbmd1YWdlIHdpbGwgYmUgc2hvd24gaW4gY2FzZSB0aGUgYExvY2FsaXplZFRleHRJbnB1dGAgaXMgY29sbGFwc2VkLlxuICAgKi9cbiAgc2VsZWN0ZWRMYW5ndWFnZTogc3RyaW5nO1xuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gYW55IGZpZWxkIGlzIGJsdXJyZWQuIElzIGNhbGxlZCB3aXRoIHRoZSBgZXZlbnRgIG9mIHRoYXQgZmllbGQuXG4gICAqL1xuICBvbkJsdXI/OiBGb2N1c0V2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50PjtcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGFueSBmaWVsZCBpcyBmb2N1c3NlZC4gSXMgY2FsbGVkIHdpdGggdGhlIGBldmVudGAgb2YgdGhhdCBmaWVsZC5cbiAgICovXG4gIG9uRm9jdXM/OiBGb2N1c0V2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50PjtcbiAgLyoqXG4gICAqIFdpbGwgaGlkZSB0aGUgbGFuZ3VhZ2UgZXhwYW5zaW9uIGNvbnRyb2xzIHdoZW4gc2V0IHRvIGB0cnVlYC4gQWxsIGxhbmd1YWdlcyB3aWxsIGJlIHNob3duIHdoZW4gc2V0IHRvIGB0cnVlYC5cbiAgICovXG4gIGhpZGVMYW5ndWFnZUV4cGFuc2lvbkNvbnRyb2xzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIENvbnRyb2xzIHdoZXRoZXIgb25lIG9yIGFsbCBsYW5ndWFnZXMgYXJlIHZpc2libGUgYnkgZGVmYXVsdFxuICAgKi9cbiAgZGVmYXVsdEV4cGFuZExhbmd1YWdlcz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBGb2N1cyB0aGUgaW5wdXQgZmllbGQgb24gaW5pdGlhbCByZW5kZXJcbiAgICovXG4gIGlzQXV0b2ZvY3Vzc2VkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIERpc2FibGVzIGFsbCBpbnB1dCBmaWVsZHMuXG4gICAqL1xuICBpc0Rpc2FibGVkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIERpc2FibGVzIGFsbCBpbnB1dCBmaWVsZHMgYW5kIHNob3dzIHRoZW0gaW4gcmVhZC1vbmx5IG1vZGUuXG4gICAqL1xuICBpc1JlYWRPbmx5PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFBsYWNlaG9sZGVycyBmb3IgZWFjaCBsYW5ndWFnZS4gT2JqZWN0IG9mIHRoZSBzYW1lIHNoYXBlIGFzIGB2YWx1ZWAuXG4gICAqL1xuICBwbGFjZWhvbGRlcj86IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4gIC8qKlxuICAgKiBIb3Jpem9udGFsIHNpemUgbGltaXQgb2YgdGhlIGlucHV0IGZpZWxkcy5cbiAgICovXG4gIGhvcml6b250YWxDb25zdHJhaW50PzpcbiAgICB8IDFcbiAgICB8IDJcbiAgICB8IDNcbiAgICB8IDRcbiAgICB8IDVcbiAgICB8IDZcbiAgICB8IDdcbiAgICB8IDhcbiAgICB8IDlcbiAgICB8IDEwXG4gICAgfCAxMVxuICAgIHwgMTJcbiAgICB8IDEzXG4gICAgfCAxNFxuICAgIHwgMTVcbiAgICB8IDE2XG4gICAgfCAnc2NhbGUnXG4gICAgfCAnYXV0byc7XG4gIC8qKlxuICAgKiBXaWxsIGFwcGx5IHRoZSBlcnJvciBzdGF0ZSB0byBlYWNoIGlucHV0IHdpdGhvdXQgc2hvd2luZyBhbnkgZXJyb3IgbWVzc2FnZS5cbiAgICovXG4gIGhhc0Vycm9yPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFVzZWQgdG8gc2hvdyBlcnJvcnMgdW5kZXJuZWF0aCB0aGUgaW5wdXRzIG9mIHNwZWNpZmljIGN1cnJlbmNpZXMuIFBhc3MgYW4gb2JqZWN0IHdob3NlIGtleSBpcyBhIGN1cnJlbmN5IGFuZCB3aG9zZSB2YWx1ZSBpcyB0aGUgZXJyb3IgdG8gc2hvdyBmb3IgdGhhdCBrZXkuXG4gICAqL1xuICBlcnJvcnM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xufTtcblxuZXhwb3J0IHR5cGUgVExvY2FsaXplZElucHV0UHJvcHMgPSB7XG4gIC8qKlxuICAgKiBVc2VkIGFzIHByZWZpeCBvZiBIVE1MIGBpZGAgcHJvcGVydHkuIEVhY2ggaW5wdXQgZmllbGQgaWQgd2lsbCBoYXZlIHRoZSBsYW5ndWFnZSBhcyBhIHN1ZmZpeCAoYCR7aWRQcmVmaXh9LiR7bGFuZ31gKSwgZS5nLiBgZm9vLmVuYC4gWW91IGNhbiB1c2UgdGhlIHN0YXRpYyBgTG9jYWxpemVkVGV4dElucHV0LmdldElkKGlkUHJlZml4LCBsYW5ndWFnZSlgIHRvIGNyZWF0ZSB0aGlzIGlkIHN0cmluZywgZS5nLiBmb3IgbGFiZWxzLlxuICAgKi9cbiAgaWQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBVc2VkIGFzIEhUTUwgYG5hbWVgIHByb3BlcnR5IGZvciBlYWNoIGlucHV0IGZpZWxkLiBFYWNoIGlucHV0IGZpZWxkIG5hbWUgd2lsbCBoYXZlIHRoZSBsYW5ndWFnZSBhcyBhIHN1ZmZpeCAoYCR7bmFtZVByZWZpeH0uJHtsYW5nfWApLCBlLmcuIGBmb28uZW5gXG4gICAqL1xuICBuYW1lPzogc3RyaW5nO1xuICAvKipcbiAgICogVXNlZCBhcyBIVE1MIGBhdXRvY29tcGxldGVgIHByb3BlcnR5XG4gICAqL1xuICBhdXRvQ29tcGxldGU/OiBzdHJpbmc7XG4gIHZhbHVlOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBHZXRzIGNhbGxlZCB3aGVuIGFueSBpbnB1dCBpcyBjaGFuZ2VkLiBJcyBjYWxsZWQgd2l0aCB0aGUgY2hhbmdlIGV2ZW50IG9mIHRoZSBjaGFuZ2VkIGlucHV0LlxuICAgKi9cbiAgb25DaGFuZ2U/OiBDaGFuZ2VFdmVudEhhbmRsZXI8SFRNTExvY2FsaXplZElucHV0RWxlbWVudD47XG4gIGxhbmd1YWdlOiBzdHJpbmc7XG4gIG9uQmx1cj86IEZvY3VzRXZlbnRIYW5kbGVyPEhUTUxJbnB1dEVsZW1lbnQ+O1xuICBvbkZvY3VzPzogRm9jdXNFdmVudEhhbmRsZXI8SFRNTElucHV0RWxlbWVudD47XG4gIGlzQXV0b2ZvY3Vzc2VkPzogYm9vbGVhbjtcbiAgaXNEaXNhYmxlZD86IGJvb2xlYW47XG4gIGlzUmVhZE9ubHk/OiBib29sZWFuO1xuICBoYXNFcnJvcj86IGJvb2xlYW47XG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xufTtcblxuY29uc3Qgc2VxdWVudGlhbElkID0gY3JlYXRlU2VxdWVudGlhbElkKCdsb2NhbGl6ZWQtdGV4dC1pbnB1dC0nKTtcblxuY29uc3QgTG9jYWxpemVkSW5wdXQgPSAocHJvcHM6IFRMb2NhbGl6ZWRJbnB1dFByb3BzKSA9PiB7XG4gIGNvbnN0IHsgb25DaGFuZ2UgfSA9IHByb3BzO1xuICBjb25zdCB7IGlzTmV3VGhlbWUgfSA9IHVzZVRoZW1lKCk7XG4gIGNvbnN0IGhhbmRsZUNoYW5nZSA9IHVzZUNhbGxiYWNrKFxuICAgIChldmVudCkgPT4ge1xuICAgICAgLy8gV2UgbWFuaXB1bGF0ZSB0aGUgZXZlbnQgdG8gYWRkIHRoZSBsYW5ndWFnZSB0byB0aGUgdGFyZ2V0LlxuICAgICAgLy8gVGhhdCB3YXkgdGhlIHVzZXJzIG9mIExvY2FsaXplZFRleHRJbnB1dCdzIG9uQ2hhbmdlIGNhbiByZWFkXG4gICAgICAvLyBldmVudC50YXJnZXQubGFuZ3VhZ2UgYW5kIGV2ZW50LnRhcmdldC52YWx1ZSB0byBkZXRlcm1pbmUgdGhlIG5leHQgdmFsdWUuXG4gICAgICAvL1xuICAgICAgLy8gV2Ugb25seSBuZWVkIHRoaXMgaW5mb3JtYXRpb24gZm9yIHRoZSBzdG9yeSwgdGhlIE1DIGFwcGxpY2F0aW9uIGNvZGUgd2lsbFxuICAgICAgLy8gbmV2ZXIgbmVlZCB0byBhY2Nlc3MgdGhlIGluZm9ybWF0aW9uIGluIHN1Y2ggYW4gaW5jb252ZW5pZW50IHdheSwgYXNcbiAgICAgIC8vIEZvcm1payBjYW4gZGVhbCB3aXRoIGEgbmFtZSBsaWtlIFwiZm9vLmVuXCIgYW5kIHNldHMgdGhlIHZhbHVlIGNvcnJlY3RseS5cbiAgICAgIC8vIFdlIGNhbid0IHVzZSB0aGlzIGFzIHdlIGFyZW4ndCBndWFyYW50ZWVkIGEgbmFtZSBpbiB0aGUgc3RvcnkgYXMgdGhlIHVzZXJcbiAgICAgIC8vIG1pZ2h0IGNsZWFyIGl0IHVzaW5nIHRoZSBrbm9iLCBhbmQgdGhlbiB3ZSBjYW4ndCBwYXJzZSB0aGUgbGFuZ3VhZ2UgZnJvbVxuICAgICAgLy8gdGhlIGlucHV0IG5hbWUgYW55bW9yZS5cbiAgICAgIC8vXG4gICAgICBldmVudC50YXJnZXQubGFuZ3VhZ2UgPSBwcm9wcy5sYW5ndWFnZTtcbiAgICAgIG9uQ2hhbmdlPy4oZXZlbnQpO1xuICAgIH0sXG4gICAgW3Byb3BzLmxhbmd1YWdlLCBvbkNoYW5nZV1cbiAgKTtcblxuICBpZiAoIXByb3BzLmlzUmVhZE9ubHkpIHtcbiAgICB3YXJuaW5nKFxuICAgICAgdHlwZW9mIHByb3BzLm9uQ2hhbmdlID09PSAnZnVuY3Rpb24nLFxuICAgICAgJ0xvY2FsaXplZFRleHRJbnB1dDogXCJvbkNoYW5nZVwiIGlzIHJlcXVpcmVkIHdoZW4gaXNSZWFkT25seSBpcyBub3QgdHJ1ZSdcbiAgICApO1xuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2XG4gICAgICBrZXk9e3Byb3BzLmxhbmd1YWdlfVxuICAgICAgY3NzPXtjc3NgXG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBgfVxuICAgID5cbiAgICAgIDxsYWJlbFxuICAgICAgICBodG1sRm9yPXtwcm9wcy5pZH1cbiAgICAgICAgY3NzPXtnZXRMYW5ndWFnZUxhYmVsU3R5bGVzKHsgLi4ucHJvcHMsIGlzTmV3VGhlbWUgfSl9XG4gICAgICA+XG4gICAgICAgIHtwcm9wcy5sYW5ndWFnZS50b1VwcGVyQ2FzZSgpfVxuICAgICAgPC9sYWJlbD5cbiAgICAgIDxUZXh0SW5wdXRcbiAgICAgICAgey4uLnByb3BzfVxuICAgICAgICBvbkNoYW5nZT17aGFuZGxlQ2hhbmdlfVxuICAgICAgICBjc3M9e2dldExvY2FsaXplZElucHV0U3R5bGVzfVxuICAgICAgLz5cbiAgICA8L2Rpdj5cbiAgKTtcbn07XG5cbkxvY2FsaXplZElucHV0LmRpc3BsYXlOYW1lID0gJ0xvY2FsaXplZElucHV0JztcblxuY29uc3QgUmVxdWlyZWRWYWx1ZUVycm9yTWVzc2FnZSA9ICgpID0+IChcbiAgPEVycm9yTWVzc2FnZT5cbiAgICA8Rm9ybWF0dGVkTWVzc2FnZSB7Li4ubWVzc2FnZXNMb2NhbGl6ZWRJbnB1dC5taXNzaW5nUmVxdWlyZWRGaWVsZH0gLz5cbiAgPC9FcnJvck1lc3NhZ2U+XG4pO1xuXG5SZXF1aXJlZFZhbHVlRXJyb3JNZXNzYWdlLmRpc3BsYXlOYW1lID0gJ1JlcXVpcmVkVmFsdWVFcnJvck1lc3NhZ2UnO1xuXG5jb25zdCBMb2NhbGl6ZWRUZXh0SW5wdXQgPSAocHJvcHM6IFRMb2NhbGl6ZWRUZXh0SW5wdXRQcm9wcykgPT4ge1xuICBjb25zdCBkZWZhdWx0RXhwYW5zaW9uU3RhdGUgPVxuICAgIHByb3BzLmhpZGVMYW5ndWFnZUV4cGFuc2lvbkNvbnRyb2xzIHx8XG4gICAgcHJvcHMuZGVmYXVsdEV4cGFuZExhbmd1YWdlcyB8fCAvLyBkZWZhdWx0IHRvIGBmYWxzZWAsIGJlY2F1c2UgdXNlVG9nZ2xlU3RhdGUgZGVmYXVsdHMgdG8gYHRydWVgXG4gICAgZmFsc2U7XG5cbiAgY29uc3QgW2FyZUxhbmd1YWdlc0V4cGFuZGVkLCB0b2dnbGVMYW5ndWFnZXNdID0gdXNlVG9nZ2xlU3RhdGUoXG4gICAgZGVmYXVsdEV4cGFuc2lvblN0YXRlXG4gICk7XG5cbiAgY29uc3Qgb25Mb2NhbGl6ZWRJbnB1dFRvZ2dsZSA9IHVzZUNhbGxiYWNrKFxuICAgICgpID0+IHRvZ2dsZUxhbmd1YWdlcygpLFxuICAgIFt0b2dnbGVMYW5ndWFnZXNdXG4gICk7XG5cbiAgY29uc3QgbGFuZ3VhZ2VzID0gc29ydExhbmd1YWdlcyhcbiAgICBwcm9wcy5zZWxlY3RlZExhbmd1YWdlLFxuICAgIE9iamVjdC5rZXlzKHByb3BzLnZhbHVlKVxuICApO1xuXG4gIGNvbnN0IGlkID0gdXNlRmllbGRJZChwcm9wcy5pZCwgc2VxdWVudGlhbElkKTtcblxuICBjb25zdCBoYXNFcnJvckluUmVtYWluaW5nTGFuZ3VhZ2VzID1cbiAgICBwcm9wcy5oYXNFcnJvciB8fFxuICAgIGdldEhhc0Vycm9yT25SZW1haW5pbmdMYW5ndWFnZXMocHJvcHMuZXJyb3JzLCBwcm9wcy5zZWxlY3RlZExhbmd1YWdlKTtcblxuICBpZiAoaGFzRXJyb3JJblJlbWFpbmluZ0xhbmd1YWdlcykge1xuICAgIC8vIHRoaXMgdXBkYXRlIHdpdGhpbiByZW5kZXIgcmVwbGFjZXMgdGhlIG9sZCBgZ2V0RGVyaXZlZFN0YXRlRnJvbVByb3BzYCBmdW5jdGlvbmFsaXR5XG4gICAgLy8gaHR0cHM6Ly9yZWFjdGpzLm9yZy9kb2NzL2hvb2tzLWZhcS5odG1sI2hvdy1kby1pLWltcGxlbWVudC1nZXRkZXJpdmVkc3RhdGVmcm9tcHJvcHNcbiAgICBpZiAoaGFzRXJyb3JJblJlbWFpbmluZ0xhbmd1YWdlcyAhPT0gYXJlTGFuZ3VhZ2VzRXhwYW5kZWQpIHtcbiAgICAgIHRvZ2dsZUxhbmd1YWdlcygpO1xuICAgIH1cbiAgfVxuXG4gIGNvbnN0IHNob3VsZFJlbmRlckxhbmd1YWdlc0J1dHRvbiA9XG4gICAgbGFuZ3VhZ2VzLmxlbmd0aCA+IDEgJiYgIXByb3BzLmhpZGVMYW5ndWFnZUV4cGFuc2lvbkNvbnRyb2xzO1xuXG4gIGlmICghcHJvcHMuaXNSZWFkT25seSkge1xuICAgIHdhcm5pbmcoXG4gICAgICB0eXBlb2YgcHJvcHMub25DaGFuZ2UgPT09ICdmdW5jdGlvbicsXG4gICAgICAnTG9jYWxpemVkVGV4dElucHV0OiBcIm9uQ2hhbmdlXCIgaXMgcmVxdWlyZWQgd2hlbiBpc1JlYWRPbmx5IGlzIG5vdCB0cnVlJ1xuICAgICk7XG4gIH1cblxuICBpZiAocHJvcHMuaGlkZUxhbmd1YWdlRXhwYW5zaW9uQ29udHJvbHMpIHtcbiAgICB3YXJuaW5nKFxuICAgICAgdHlwZW9mIHByb3BzLmRlZmF1bHRFeHBhbmRMYW5ndWFnZXMgIT09ICdib29sZWFuJyxcbiAgICAgICdMb2NhbGl6ZWRUZXh0SW5wdXQ6IFwiZGVmYXVsdEV4cGFuZExhbmd1YWdlc1wiIGRvZXMgbm90IGhhdmUgYW55IGVmZmVjdCB3aGVuIFwiaGlkZUxhbmd1YWdlRXhwYW5zaW9uQ29udHJvbHNcIiBpcyBzZXQuJ1xuICAgICk7XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxDb25zdHJhaW50cy5Ib3Jpem9udGFsIG1heD17cHJvcHMuaG9yaXpvbnRhbENvbnN0cmFpbnR9PlxuICAgICAgPFN0YWNrIHNjYWxlPVwieHNcIj5cbiAgICAgICAgPFN0YWNrPlxuICAgICAgICAgIHtsYW5ndWFnZXMubWFwKChsYW5ndWFnZSwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGlzRmlyc3RMYW5ndWFnZSA9IGluZGV4ID09PSAwO1xuICAgICAgICAgICAgaWYgKCFpc0ZpcnN0TGFuZ3VhZ2UgJiYgIWFyZUxhbmd1YWdlc0V4cGFuZGVkKSByZXR1cm4gbnVsbDtcblxuICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgPGRpdiBrZXk9e2xhbmd1YWdlfT5cbiAgICAgICAgICAgICAgICA8U3RhY2sgc2NhbGU9XCJ4c1wiPlxuICAgICAgICAgICAgICAgICAgPExvY2FsaXplZElucHV0XG4gICAgICAgICAgICAgICAgICAgIGF1dG9Db21wbGV0ZT17cHJvcHMuYXV0b0NvbXBsZXRlfVxuICAgICAgICAgICAgICAgICAgICBpZD17TG9jYWxpemVkVGV4dElucHV0LmdldElkKGlkLCBsYW5ndWFnZSl9XG4gICAgICAgICAgICAgICAgICAgIG5hbWU9e0xvY2FsaXplZFRleHRJbnB1dC5nZXROYW1lKHByb3BzLm5hbWUsIGxhbmd1YWdlKX1cbiAgICAgICAgICAgICAgICAgICAgdmFsdWU9e3Byb3BzLnZhbHVlW2xhbmd1YWdlXX1cbiAgICAgICAgICAgICAgICAgICAgb25DaGFuZ2U9e3Byb3BzLm9uQ2hhbmdlfVxuICAgICAgICAgICAgICAgICAgICBsYW5ndWFnZT17bGFuZ3VhZ2V9XG4gICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPXtcbiAgICAgICAgICAgICAgICAgICAgICBwcm9wcy5wbGFjZWhvbGRlclxuICAgICAgICAgICAgICAgICAgICAgICAgPyBwcm9wcy5wbGFjZWhvbGRlcltsYW5ndWFnZV1cbiAgICAgICAgICAgICAgICAgICAgICAgIDogdW5kZWZpbmVkXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgb25CbHVyPXtwcm9wcy5vbkJsdXJ9XG4gICAgICAgICAgICAgICAgICAgIG9uRm9jdXM9e3Byb3BzLm9uRm9jdXN9XG4gICAgICAgICAgICAgICAgICAgIGlzQXV0b2ZvY3Vzc2VkPXtpbmRleCA9PT0gMCAmJiBwcm9wcy5pc0F1dG9mb2N1c3NlZH1cbiAgICAgICAgICAgICAgICAgICAgaXNEaXNhYmxlZD17cHJvcHMuaXNEaXNhYmxlZH1cbiAgICAgICAgICAgICAgICAgICAgaXNSZWFkT25seT17cHJvcHMuaXNSZWFkT25seX1cbiAgICAgICAgICAgICAgICAgICAgaGFzRXJyb3I9e0Jvb2xlYW4oXG4gICAgICAgICAgICAgICAgICAgICAgcHJvcHMuaGFzRXJyb3IgfHwgKHByb3BzLmVycm9ycyAmJiBwcm9wcy5lcnJvcnNbbGFuZ3VhZ2VdKVxuICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICB7Li4uY3JlYXRlTG9jYWxpemVkRGF0YUF0dHJpYnV0ZXMocHJvcHMsIGxhbmd1YWdlKX1cbiAgICAgICAgICAgICAgICAgICAgLyogQVJJQSAqL1xuICAgICAgICAgICAgICAgICAgICBhcmlhLWludmFsaWQ9e3Byb3BzWydhcmlhLWludmFsaWQnXX1cbiAgICAgICAgICAgICAgICAgICAgYXJpYS1lcnJvcm1lc3NhZ2U9e3Byb3BzWydhcmlhLWVycm9ybWVzc2FnZSddfVxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgIHtwcm9wcy5lcnJvcnMgJiYgcHJvcHMuZXJyb3JzW2xhbmd1YWdlXX1cbiAgICAgICAgICAgICAgICA8L1N0YWNrPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfSl9XG4gICAgICAgIDwvU3RhY2s+XG4gICAgICAgIHtzaG91bGRSZW5kZXJMYW5ndWFnZXNCdXR0b24gJiYgKFxuICAgICAgICAgIDxMb2NhbGl6ZWRJbnB1dFRvZ2dsZVxuICAgICAgICAgICAgaXNPcGVuPXthcmVMYW5ndWFnZXNFeHBhbmRlZH1cbiAgICAgICAgICAgIG9uQ2xpY2s9e29uTG9jYWxpemVkSW5wdXRUb2dnbGV9XG4gICAgICAgICAgICBpc0Rpc2FibGVkPXthcmVMYW5ndWFnZXNFeHBhbmRlZCAmJiBoYXNFcnJvckluUmVtYWluaW5nTGFuZ3VhZ2VzfVxuICAgICAgICAgICAgcmVtYWluaW5nTG9jYWxpemF0aW9ucz17bGFuZ3VhZ2VzLmxlbmd0aCAtIDF9XG4gICAgICAgICAgLz5cbiAgICAgICAgKX1cbiAgICAgIDwvU3RhY2s+XG4gICAgPC9Db25zdHJhaW50cy5Ib3Jpem9udGFsPlxuICApO1xufTtcblxuTG9jYWxpemVkVGV4dElucHV0LmRpc3BsYXlOYW1lID0gJ0xvY2FsaXplZFRleHRJbnB1dCc7XG5cbkxvY2FsaXplZFRleHRJbnB1dC5SZXF1aXJlZFZhbHVlRXJyb3JNZXNzYWdlID0gUmVxdWlyZWRWYWx1ZUVycm9yTWVzc2FnZTtcblxuTG9jYWxpemVkVGV4dElucHV0LmRlZmF1bHRQcm9wcyA9IHtcbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQ6ICdzY2FsZScsXG59O1xuXG5Mb2NhbGl6ZWRUZXh0SW5wdXQuZ2V0SWQgPSBnZXRJZDtcblxuTG9jYWxpemVkVGV4dElucHV0LmdldE5hbWUgPSBnZXROYW1lO1xuXG5Mb2NhbGl6ZWRUZXh0SW5wdXQuY3JlYXRlTG9jYWxpemVkU3RyaW5nID0gY3JlYXRlTG9jYWxpemVkU3RyaW5nO1xuXG5Mb2NhbGl6ZWRUZXh0SW5wdXQuaXNFbXB0eSA9IGlzRW1wdHk7XG5cbkxvY2FsaXplZFRleHRJbnB1dC5vbWl0RW1wdHlUcmFuc2xhdGlvbnMgPSBvbWl0RW1wdHlUcmFuc2xhdGlvbnM7XG5cbkxvY2FsaXplZFRleHRJbnB1dC5pc1RvdWNoZWQgPSBpc1RvdWNoZWQ7XG5cbmV4cG9ydCBkZWZhdWx0IExvY2FsaXplZFRleHRJbnB1dDtcbiJdfQ== */",
83
72
  toString: _EMOTION_STRINGIFIED_CSS_ERROR__
84
73
  };
85
-
86
74
  const LocalizedInput = props => {
87
75
  const onChange = props.onChange;
88
-
89
76
  const _useTheme = useTheme(),
90
- isNewTheme = _useTheme.isNewTheme;
91
-
77
+ isNewTheme = _useTheme.isNewTheme;
92
78
  const handleChange = useCallback(event => {
93
79
  // We manipulate the event to add the language to the target.
94
80
  // That way the users of LocalizedTextInput's onChange can read
@@ -104,11 +90,9 @@ const LocalizedInput = props => {
104
90
  event.target.language = props.language;
105
91
  onChange === null || onChange === void 0 ? void 0 : onChange(event);
106
92
  }, [props.language, onChange]);
107
-
108
93
  if (!props.isReadOnly) {
109
94
  process.env.NODE_ENV !== "production" ? warning(typeof props.onChange === 'function', 'LocalizedTextInput: "onChange" is required when isReadOnly is not true') : void 0;
110
95
  }
111
-
112
96
  return jsxs("div", {
113
97
  css: _ref,
114
98
  children: [jsx("label", {
@@ -123,7 +107,6 @@ const LocalizedInput = props => {
123
107
  }))]
124
108
  }, props.language);
125
109
  };
126
-
127
110
  LocalizedInput.propTypes = process.env.NODE_ENV !== "production" ? {
128
111
  id: _pt.string,
129
112
  name: _pt.string,
@@ -140,27 +123,22 @@ LocalizedInput.propTypes = process.env.NODE_ENV !== "production" ? {
140
123
  placeholder: _pt.string
141
124
  } : {};
142
125
  LocalizedInput.displayName = 'LocalizedInput';
143
-
144
126
  const RequiredValueErrorMessage = () => jsx(ErrorMessage, {
145
127
  children: jsx(FormattedMessage, _objectSpread({}, messagesLocalizedInput.missingRequiredField))
146
128
  });
147
-
148
129
  RequiredValueErrorMessage.displayName = 'RequiredValueErrorMessage';
149
-
150
130
  const LocalizedTextInput = props => {
151
- const defaultExpansionState = props.hideLanguageExpansionControls || props.defaultExpandLanguages || // default to `false`, because useToggleState defaults to `true`
131
+ const defaultExpansionState = props.hideLanguageExpansionControls || props.defaultExpandLanguages ||
132
+ // default to `false`, because useToggleState defaults to `true`
152
133
  false;
153
-
154
134
  const _useToggleState = useToggleState(defaultExpansionState),
155
- _useToggleState2 = _slicedToArray(_useToggleState, 2),
156
- areLanguagesExpanded = _useToggleState2[0],
157
- toggleLanguages = _useToggleState2[1];
158
-
135
+ _useToggleState2 = _slicedToArray(_useToggleState, 2),
136
+ areLanguagesExpanded = _useToggleState2[0],
137
+ toggleLanguages = _useToggleState2[1];
159
138
  const onLocalizedInputToggle = useCallback(() => toggleLanguages(), [toggleLanguages]);
160
139
  const languages = sortLanguages(props.selectedLanguage, _Object$keys(props.value));
161
140
  const id = useFieldId(props.id, sequentialId);
162
141
  const hasErrorInRemainingLanguages = props.hasError || getHasErrorOnRemainingLanguages(props.errors, props.selectedLanguage);
163
-
164
142
  if (hasErrorInRemainingLanguages) {
165
143
  // this update within render replaces the old `getDerivedStateFromProps` functionality
166
144
  // https://reactjs.org/docs/hooks-faq.html#how-do-i-implement-getderivedstatefromprops
@@ -168,17 +146,13 @@ const LocalizedTextInput = props => {
168
146
  toggleLanguages();
169
147
  }
170
148
  }
171
-
172
149
  const shouldRenderLanguagesButton = languages.length > 1 && !props.hideLanguageExpansionControls;
173
-
174
150
  if (!props.isReadOnly) {
175
151
  process.env.NODE_ENV !== "production" ? warning(typeof props.onChange === 'function', 'LocalizedTextInput: "onChange" is required when isReadOnly is not true') : void 0;
176
152
  }
177
-
178
153
  if (props.hideLanguageExpansionControls) {
179
154
  process.env.NODE_ENV !== "production" ? warning(typeof props.defaultExpandLanguages !== 'boolean', 'LocalizedTextInput: "defaultExpandLanguages" does not have any effect when "hideLanguageExpansionControls" is set.') : void 0;
180
155
  }
181
-
182
156
  return jsx(Constraints.Horizontal, {
183
157
  max: props.horizontalConstraint,
184
158
  children: jsxs(Stack, {
@@ -221,7 +195,6 @@ const LocalizedTextInput = props => {
221
195
  })
222
196
  });
223
197
  };
224
-
225
198
  LocalizedTextInput.propTypes = process.env.NODE_ENV !== "production" ? {
226
199
  id: _pt.string,
227
200
  name: _pt.string,
@@ -257,6 +230,6 @@ LocalizedTextInput.isTouched = isTouched;
257
230
  var LocalizedTextInput$1 = LocalizedTextInput;
258
231
 
259
232
  // NOTE: This string will be replaced on build time with the package version.
260
- var version = "16.0.0";
233
+ var version = "16.1.0";
261
234
 
262
235
  export { LocalizedTextInput$1 as default, version };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@commercetools-uikit/localized-text-input",
3
3
  "description": "A controlled text input component for localized single-line strings with validation states.",
4
- "version": "16.0.0",
4
+ "version": "16.1.0",
5
5
  "bugs": "https://github.com/commercetools/ui-kit/issues",
6
6
  "repository": {
7
7
  "type": "git",
@@ -21,18 +21,18 @@
21
21
  "dependencies": {
22
22
  "@babel/runtime": "^7.20.13",
23
23
  "@babel/runtime-corejs3": "^7.20.13",
24
- "@commercetools-uikit/constraints": "16.0.0",
25
- "@commercetools-uikit/design-system": "16.0.0",
26
- "@commercetools-uikit/flat-button": "16.0.0",
27
- "@commercetools-uikit/hooks": "16.0.0",
28
- "@commercetools-uikit/icons": "16.0.0",
29
- "@commercetools-uikit/input-utils": "16.0.0",
30
- "@commercetools-uikit/localized-utils": "16.0.0",
31
- "@commercetools-uikit/messages": "16.0.0",
32
- "@commercetools-uikit/spacings-stack": "16.0.0",
33
- "@commercetools-uikit/text": "16.0.0",
34
- "@commercetools-uikit/text-input": "16.0.0",
35
- "@commercetools-uikit/utils": "16.0.0",
24
+ "@commercetools-uikit/constraints": "16.1.0",
25
+ "@commercetools-uikit/design-system": "16.1.0",
26
+ "@commercetools-uikit/flat-button": "16.1.0",
27
+ "@commercetools-uikit/hooks": "16.1.0",
28
+ "@commercetools-uikit/icons": "16.1.0",
29
+ "@commercetools-uikit/input-utils": "16.1.0",
30
+ "@commercetools-uikit/localized-utils": "16.1.0",
31
+ "@commercetools-uikit/messages": "16.1.0",
32
+ "@commercetools-uikit/spacings-stack": "16.1.0",
33
+ "@commercetools-uikit/text": "16.1.0",
34
+ "@commercetools-uikit/text-input": "16.1.0",
35
+ "@commercetools-uikit/utils": "16.1.0",
36
36
  "@emotion/react": "^11.10.5",
37
37
  "@emotion/styled": "^11.10.5",
38
38
  "prop-types": "15.8.1"