@flodesk/grain 10.17.2 → 10.17.4

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.
Files changed (82) hide show
  1. package/es/components/arrange.js +34 -74
  2. package/es/components/autocomplete.js +28 -132
  3. package/es/components/badge.js +8 -7
  4. package/es/components/box.js +14 -85
  5. package/es/components/button.js +26 -8
  6. package/es/components/checkbox.js +18 -12
  7. package/es/components/dropdown.js +28 -81
  8. package/es/components/flex.js +36 -72
  9. package/es/components/index.js +1 -5
  10. package/es/components/link.js +16 -27
  11. package/es/components/modal.js +68 -89
  12. package/es/components/nav.js +19 -9
  13. package/es/components/pagination.js +4 -4
  14. package/es/components/popover.js +11 -29
  15. package/es/components/select.js +10 -12
  16. package/es/components/slider.js +17 -6
  17. package/es/components/spinner.js +14 -4
  18. package/es/components/stack.js +4 -5
  19. package/es/components/switch.js +17 -5
  20. package/es/components/tab.js +1 -1
  21. package/es/components/text-button.js +12 -13
  22. package/es/components/text.js +28 -84
  23. package/es/components/textarea.js +20 -34
  24. package/es/components/toast.js +52 -16
  25. package/es/components/tooltip.js +4 -4
  26. package/es/foundational/field.js +28 -52
  27. package/es/foundational/menu.js +60 -138
  28. package/es/foundational/styles.js +11 -11
  29. package/es/hooks/index.js +1 -2
  30. package/es/hooks/useOnClickOutside.js +6 -7
  31. package/es/icons/index.js +1 -18
  32. package/es/index.js +1 -2
  33. package/es/styles/base.css +53 -0
  34. package/es/styles/colors/core.css +74 -0
  35. package/es/styles/colors/experimental.css +3 -0
  36. package/es/styles/colors/theme.css +92 -0
  37. package/es/styles/shadows.css +60 -0
  38. package/es/styles/variables.css +66 -0
  39. package/es/types.js +7 -18
  40. package/es/utilities/helpers.js +1 -13
  41. package/es/utilities/index.js +1 -3
  42. package/es/utilities/responsive.js +0 -3
  43. package/es/utilities/styles.js +2 -14
  44. package/es/variables/colors.js +1 -2
  45. package/es/variables/index.js +1 -2
  46. package/es/variables/vars.js +0 -3
  47. package/package.json +1 -1
  48. package/es/components/autocomplete2.js +0 -359
  49. package/es/components/box2.js +0 -223
  50. package/es/components/provider.js +0 -14
  51. package/es/components/text2/index.js +0 -100
  52. package/es/components/text2/styles.module.css +0 -22
  53. package/es/hooks/usePrev.js +0 -8
  54. package/es/icons/icon-archive.js +0 -21
  55. package/es/icons/icon-at.js +0 -21
  56. package/es/icons/icon-bold.js +0 -28
  57. package/es/icons/icon-bullet-list.js +0 -21
  58. package/es/icons/icon-column-and-rows.js +0 -21
  59. package/es/icons/icon-columns-and-row.js +0 -21
  60. package/es/icons/icon-columns.js +0 -21
  61. package/es/icons/icon-folder-move.js +0 -21
  62. package/es/icons/icon-folder-remove.js +0 -21
  63. package/es/icons/icon-italic.js +0 -28
  64. package/es/icons/icon-number-list.js +0 -21
  65. package/es/icons/icon-row-and-columns.js +0 -21
  66. package/es/icons/icon-rows-and-column.js +0 -21
  67. package/es/icons/icon-rows.js +0 -21
  68. package/es/icons/icon-strike.js +0 -28
  69. package/es/icons/icon-text-justify.js +0 -21
  70. package/es/icons/icon-underline.js +0 -28
  71. package/es/styles/base.js +0 -2
  72. package/es/styles/colors/core.js +0 -2
  73. package/es/styles/colors/experimental.js +0 -2
  74. package/es/styles/colors/index.js +0 -4
  75. package/es/styles/colors/theme.js +0 -2
  76. package/es/styles/index.js +0 -6
  77. package/es/styles/shadows.js +0 -2
  78. package/es/styles/utilities.js +0 -108
  79. package/es/styles/variables.js +0 -2
  80. package/es/utilities/attributes.js +0 -66
  81. package/es/utilities/style-config.js +0 -442
  82. package/es/variables/breakpoints.js +0 -9
@@ -1,10 +1,9 @@
1
1
  function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
2
2
 
3
3
  import "core-js/modules/es.array.concat.js";
4
- import "core-js/modules/es.object.to-string.js";
5
- import "core-js/modules/web.dom-collections.for-each.js";
6
4
  import "core-js/modules/es.symbol.js";
7
5
  import "core-js/modules/es.symbol.description.js";
6
+ import "core-js/modules/es.object.to-string.js";
8
7
  import "core-js/modules/es.symbol.iterator.js";
9
8
  import "core-js/modules/es.array.iterator.js";
10
9
  import "core-js/modules/es.string.iterator.js";
@@ -33,15 +32,4 @@ export var isArray = function isArray(value) {
33
32
  };
34
33
  export var isObject = function isObject(value) {
35
34
  return _typeof(value) === 'object';
36
- };
37
- export var mergeRefs = function mergeRefs(refs) {
38
- return function (value) {
39
- refs.forEach(function (ref) {
40
- if (typeof ref === 'function') {
41
- ref(value);
42
- } else if (ref != null) {
43
- ref.current = value;
44
- }
45
- });
46
- };
47
35
  };
@@ -1,5 +1,3 @@
1
1
  export * from './helpers';
2
2
  export * from './responsive';
3
- export * from './styles';
4
- export * from './style-config';
5
- export * from './attributes';
3
+ export * from './styles';
@@ -61,9 +61,6 @@ export var getDimension = function getDimension(dimension) {
61
61
  if (isString(dimension)) return dimension;
62
62
  if (isNumber(dimension)) return u(dimension);
63
63
  };
64
- export var isSpaceVar = function isSpaceVar(space) {
65
- return space in vars.spaces || space in vars.spaceUtils;
66
- };
67
64
  export var getSpace = function getSpace(space) {
68
65
  if (space in vars.spaceUtils) {
69
66
  return getCssVar(varInfo.spaceUtils.name, space);
@@ -3,9 +3,6 @@ import "core-js/modules/es.array.map.js";
3
3
  import { getCssVar, isNumber, isString, u } from '.';
4
4
  import { vars, varInfo } from '../variables';
5
5
  import { getDimension } from './responsive';
6
- export var isColorVar = function isColorVar(color) {
7
- return color in vars.colorUtils || color in vars.colors;
8
- };
9
6
  export var getColor = function getColor(color) {
10
7
  if (color in vars.colorUtils) {
11
8
  return getCssVar(varInfo.colorUtils.name, color);
@@ -17,11 +14,8 @@ export var getColor = function getColor(color) {
17
14
 
18
15
  return color;
19
16
  };
20
- export var isShadowVar = function isShadowVar(shadow) {
21
- return shadow in vars.shadows;
22
- };
23
17
  export var getShadow = function getShadow(shadow) {
24
- if (isShadowVar(shadow)) {
18
+ if (shadow in vars.shadows) {
25
19
  return getCssVar(varInfo.shadows.name, shadow);
26
20
  }
27
21
 
@@ -32,11 +26,8 @@ export var getWeight = function getWeight(weight) {
32
26
  return getCssVar(varInfo.weights.name, weight);
33
27
  }
34
28
  };
35
- export var isRadiusVar = function isRadiusVar(radius) {
36
- return radius in vars.radii;
37
- };
38
29
  export var getRadius = function getRadius(radius) {
39
- if (isRadiusVar(radius)) {
30
+ if (radius in vars.radii) {
40
31
  return getCssVar(varInfo.radii.name, radius);
41
32
  }
42
33
 
@@ -44,9 +35,6 @@ export var getRadius = function getRadius(radius) {
44
35
  if (isString(radius)) return radius;
45
36
  if (isNumber(radius)) return u(radius);
46
37
  };
47
- export var isTrasitionVar = function isTrasitionVar(transition) {
48
- return transition in vars.transitionUtils || transition in vars.transitions;
49
- };
50
38
  export var getTransition = function getTransition(transition) {
51
39
  if (transition in vars.transitionUtils) {
52
40
  return getCssVar(varInfo.transitionUtils.name, transition);
@@ -82,8 +82,7 @@ export var colors = {
82
82
  content2: 'content2',
83
83
  content3: 'content3',
84
84
  disabledContent: 'disabledContent',
85
- icon: 'icon',
86
- disabledIcon: 'disabledIcon'
85
+ icon: 'icon'
87
86
  },
88
87
  backgrounds: {
89
88
  background: 'background',
@@ -1,3 +1,2 @@
1
1
  export * from './vars';
2
- export * from './colors';
3
- export * from './breakpoints';
2
+ export * from './colors';
@@ -34,12 +34,9 @@ export var vars = {
34
34
  spaces: {
35
35
  xs: 'xs',
36
36
  s: 's',
37
- s2: 's2',
38
37
  m: 'm',
39
38
  l: 'l',
40
- l2: 'l2',
41
39
  xl: 'xl',
42
- xl2: 'xl2',
43
40
  xxl: 'xxl'
44
41
  },
45
42
  weights: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flodesk/grain",
3
- "version": "10.17.2",
3
+ "version": "10.17.4",
4
4
  "description": "Flodesk design system",
5
5
  "module": "es/index.js",
6
6
  "author": "Flodesk",
@@ -1,359 +0,0 @@
1
- import "core-js/modules/es.object.keys.js";
2
- import "core-js/modules/es.array.index-of.js";
3
- import "core-js/modules/es.symbol.js";
4
- import "core-js/modules/es.object.assign.js";
5
- import "core-js/modules/es.symbol.description.js";
6
- import "core-js/modules/es.symbol.iterator.js";
7
- import "core-js/modules/es.array.iterator.js";
8
- import "core-js/modules/es.string.iterator.js";
9
- import "core-js/modules/web.dom-collections.iterator.js";
10
- import "core-js/modules/es.array.slice.js";
11
- import "core-js/modules/es.array.from.js";
12
- import "core-js/modules/es.regexp.exec.js";
13
- import _styled from "@emotion/styled/base";
14
- var _excluded = ["children", "hasEllipsis", "paddingLeft"],
15
- _excluded2 = ["options", "value", "onChange", "isCreatable", "onCreate", "menuPlacement", "menuWidth", "menuMaxHeight", "menuZIndex", "placeholder", "label", "hint", "menuItemsHaveEllipsis", "hasPortal", "hasError", "errorMessage", "searchField"];
16
-
17
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
18
-
19
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
20
-
21
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
22
-
23
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
24
-
25
- function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
26
-
27
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
28
-
29
- function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
30
-
31
- function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
32
-
33
- function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
34
-
35
- import "core-js/modules/es.array.concat.js";
36
- import "core-js/modules/es.array.filter.js";
37
- import "core-js/modules/es.object.to-string.js";
38
- import "core-js/modules/es.array.includes.js";
39
- import "core-js/modules/es.string.includes.js";
40
- import "core-js/modules/es.array.find.js";
41
- import "core-js/modules/es.array.map.js";
42
-
43
- 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)."; }
44
-
45
- import PropTypes from 'prop-types';
46
- import React, { forwardRef, Fragment, useMemo, useState } from 'react';
47
- import { Icon, Box, Arrange } from '.';
48
- import { IconChevronDown, IconPlus } from '../icons';
49
- import { Combobox } from '@headlessui/react';
50
- import { defaultProps, types } from '../types';
51
- import { InputField, MenuCard, MenuCardTransition, MenuGroupTitle, FieldLabel, FieldHint, componentVars, styles } from '../foundational';
52
- import { MenuItemDivider, useMenuPosition } from '../foundational/menu';
53
- import { FloatingPortal } from '@floating-ui/react-dom-interactions';
54
- import { Global } from '@emotion/react';
55
- import { getColor, getIconSize, getRadius, getSpace, getTransition } from '../utilities';
56
- import { jsx as ___EmotionJSX } from "@emotion/react";
57
-
58
- var Root = /*#__PURE__*/_styled("div", process.env.NODE_ENV === "production" ? {
59
- target: "ea1qwwn2"
60
- } : {
61
- target: "ea1qwwn2",
62
- label: "Root"
63
- })(styles.transitions, ";", function (_ref) {
64
- var hasError = _ref.hasError;
65
- return hasError ? "--borderColor: ".concat(getColor('danger'), ";") : "\n --borderColor: ".concat(getColor('fieldBorder'), ";\n &:hover { --borderColor: ").concat(getColor('fieldBorderHover'), " };\n &:focus-within { --borderColor: ").concat(getColor('fieldBorderFocus'), " };\n ");
66
- }, ";position:relative;margin-top:", function (_ref2) {
67
- var marginTop = _ref2.marginTop;
68
- return getSpace(marginTop);
69
- }, ";border-radius:", getRadius('s'), ";box-shadow:inset 0 0 0 ", componentVars.strokeSize, " var(--borderColor);.autocompleteInput{line-height:1.4;border:none;opacity:", function (_ref3) {
70
- var open = _ref3.open;
71
- return open ? 1 : 0;
72
- }, ";pointer-events:", function (_ref4) {
73
- var open = _ref4.open;
74
- return open ? 'auto' : 'none';
75
- }, ";transition:opacity ", getTransition('xxFast'), ";&:focus-visible{opacity:1;pointer-events:auto;}}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL2F1dG9jb21wbGV0ZTIuanN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXNCdUIiLCJmaWxlIjoiLi4vLi4vc3JjL2NvbXBvbmVudHMvYXV0b2NvbXBsZXRlMi5qc3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IFJlYWN0LCB7IGZvcndhcmRSZWYsIEZyYWdtZW50LCB1c2VNZW1vLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IEljb24sIEJveCwgQXJyYW5nZSB9IGZyb20gJy4nO1xuaW1wb3J0IHsgSWNvbkNoZXZyb25Eb3duLCBJY29uUGx1cyB9IGZyb20gJy4uL2ljb25zJztcbmltcG9ydCB7IENvbWJvYm94IH0gZnJvbSAnQGhlYWRsZXNzdWkvcmVhY3QnO1xuaW1wb3J0IHsgZGVmYXVsdFByb3BzLCB0eXBlcyB9IGZyb20gJy4uL3R5cGVzJztcbmltcG9ydCB7XG4gIElucHV0RmllbGQsXG4gIE1lbnVDYXJkLFxuICBNZW51Q2FyZFRyYW5zaXRpb24sXG4gIE1lbnVHcm91cFRpdGxlLFxuICBGaWVsZExhYmVsLFxuICBGaWVsZEhpbnQsXG4gIGNvbXBvbmVudFZhcnMsXG4gIHN0eWxlcyxcbn0gZnJvbSAnLi4vZm91bmRhdGlvbmFsJztcbmltcG9ydCB7IE1lbnVJdGVtRGl2aWRlciwgdXNlTWVudVBvc2l0aW9uIH0gZnJvbSAnLi4vZm91bmRhdGlvbmFsL21lbnUnO1xuaW1wb3J0IHsgRmxvYXRpbmdQb3J0YWwgfSBmcm9tICdAZmxvYXRpbmctdWkvcmVhY3QtZG9tLWludGVyYWN0aW9ucyc7XG5pbXBvcnQgeyBHbG9iYWwgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgeyBnZXRDb2xvciwgZ2V0SWNvblNpemUsIGdldFJhZGl1cywgZ2V0U3BhY2UsIGdldFRyYW5zaXRpb24gfSBmcm9tICcuLi91dGlsaXRpZXMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuXG5jb25zdCBSb290ID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudHJhbnNpdGlvbnN9O1xuICAkeyh7IGhhc0Vycm9yIH0pID0+XG4gICAgaGFzRXJyb3JcbiAgICAgID8gYC0tYm9yZGVyQ29sb3I6ICR7Z2V0Q29sb3IoJ2RhbmdlcicpfTtgXG4gICAgICA6IGBcbiAgICAgIC0tYm9yZGVyQ29sb3I6ICR7Z2V0Q29sb3IoJ2ZpZWxkQm9yZGVyJyl9O1xuICAgICAgJjpob3ZlciB7IC0tYm9yZGVyQ29sb3I6ICR7Z2V0Q29sb3IoJ2ZpZWxkQm9yZGVySG92ZXInKX0gfTtcbiAgICAgICY6Zm9jdXMtd2l0aGluIHsgLS1ib3JkZXJDb2xvcjogJHtnZXRDb2xvcignZmllbGRCb3JkZXJGb2N1cycpfSB9O1xuICAgIGB9O1xuXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogJHsoeyBtYXJnaW5Ub3AgfSkgPT4gZ2V0U3BhY2UobWFyZ2luVG9wKX07XG4gIGJvcmRlci1yYWRpdXM6ICR7Z2V0UmFkaXVzKCdzJyl9O1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAke2NvbXBvbmVudFZhcnMuc3Ryb2tlU2l6ZX0gdmFyKC0tYm9yZGVyQ29sb3IpO1xuXG4gIC5hdXRvY29tcGxldGVJbnB1dCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3BhY2l0eTogJHsoeyBvcGVuIH0pID0+IChvcGVuID8gMSA6IDApfTtcbiAgICBwb2ludGVyLWV2ZW50czogJHsoeyBvcGVuIH0pID0+IChvcGVuID8gJ2F1dG8nIDogJ25vbmUnKX07XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAke2dldFRyYW5zaXRpb24oJ3h4RmFzdCcpfTtcblxuICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgfVxuICB9XG5gO1xuXG5jb25zdCBFbXB0eVN0YXRlID0gKCkgPT4gKFxuICA8Qm94IHBhZGRpbmdZPVwic1wiIHBhZGRpbmdYPVwibVwiIGNvbG9yPVwiY29udGVudDJcIj5cbiAgICBObyByZXN1bHRzXG4gIDwvQm94PlxuKTtcblxuY29uc3QgRXhwYW5kSWNvbiA9ICgpID0+IChcbiAgPEJveFxuICAgIHJpZ2h0PVwiZmllbGRQYWRkaW5nWFwiXG4gICAgcG9zaXRpb249XCJhYnNvbHV0ZVwiXG4gICAgdG9wPVwiMHB4XCJcbiAgICBib3R0b209XCIwcHhcIlxuICAgIG1hcmdpbj1cImF1dG9cIlxuICAgIGhlaWdodD1cImZpdC1jb250ZW50XCJcbiAgPlxuICAgIDxJY29uIGljb249ezxJY29uQ2hldnJvbkRvd24gLz59IC8+XG4gIDwvQm94PlxuKTtcblxuY29uc3QgZ2V0RmlsdGVyZWRPcHRpb25zID0gKHF1ZXJ5LCBvcHRpb25zLCBzZWFyY2hGaWVsZCkgPT4ge1xuICBpZiAocXVlcnkgPT09ICcnKSByZXR1cm4gb3B0aW9ucztcblxuICByZXR1cm4gb3B0aW9ucy5maWx0ZXIob3B0aW9uID0+IG9wdGlvbltzZWFyY2hGaWVsZF0udG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhxdWVyeS50b0xvd2VyQ2FzZSgpKSk7XG59O1xuXG5jb25zdCBnZXRTaG93R3JvdXBUaXRsZSA9IChpbmRleCwgb3B0aW9uLCBmaWx0ZXJlZE9wdGlvbnMpID0+IHtcbiAgY29uc3QgZmlyc3RPcHRpb25IYXNUaXRsZSA9IGluZGV4ID09PSAwICYmIG9wdGlvbi5ncm91cFRpdGxlO1xuICBjb25zdCB0aXRsZUNoYW5nZWQgPSBpbmRleCA+IDAgJiYgb3B0aW9uLmdyb3VwVGl0bGUgIT09IGZpbHRlcmVkT3B0aW9uc1tpbmRleCAtIDFdLmdyb3VwVGl0bGU7XG5cbiAgcmV0dXJuIGZpcnN0T3B0aW9uSGFzVGl0bGUgfHwgdGl0bGVDaGFuZ2VkO1xufTtcblxuY29uc3QgbWVudUl0ZW1TdHlsZXMgPSBgXG4gIC5hdXRvY29tcGxldGVNZW51SXRlbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWluLWhlaWdodDogJHtjb21wb25lbnRWYXJzLnRleHRCb3hIZWlnaHR9O1xuICAgIGJvcmRlci1yYWRpdXM6ICR7Z2V0UmFkaXVzKCdzJyl9O1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgcGFkZGluZy1ibG9jazogMDtcbiAgICBwYWRkaW5nOiA0cHggMTJweDtcblxuICAgIC0tY2hlY2tVcmk6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB2aWV3Qm94PVwiMCAwIDIyIDI0XCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIlM0UlM0NwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBjbGlwLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0yMS43MDcgNi4yMDdMOC41IDE5LjQxNC4yOTMgMTEuMjA3bDEuNDE0LTEuNDE0TDguNSAxNi41ODYgMjAuMjkzIDQuNzkzbDEuNDE0IDEuNDE0elwiIGZpbGw9XCIlMjMzNzMxMmY3M1wiJTNFJTNDL3BhdGglM0UlM0Mvc3ZnJTNFJyk7XG4gICAgLS1jaGVja1VyaUFjdGl2ZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHZpZXdCb3g9XCIwIDAgMjIgMjRcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiUzRSUzQ3BhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGNsaXAtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTIxLjcwNyA2LjIwN0w4LjUgMTkuNDE0LjI5MyAxMS4yMDdsMS40MTQtMS40MTRMOC41IDE2LjU4NiAyMC4yOTMgNC43OTNsMS40MTQgMS40MTR6XCIgZmlsbD1cIiUyMzI0MWExN1wiJTNFJTNDL3BhdGglM0UlM0Mvc3ZnJTNFJyk7XG5cbiAgICAmW2RhdGEtaGVhZGxlc3N1aS1zdGF0ZT0nYWN0aXZlJ10sXG4gICAgJltkYXRhLWhlYWRsZXNzdWktc3RhdGU9J2FjdGl2ZSBzZWxlY3RlZCddIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR7Z2V0Q29sb3IoJ2ZhZGUxJyl9O1xuICAgIH1cblxuICAgICZbZGF0YS1oZWFkbGVzc3VpLXN0YXRlPSdzZWxlY3RlZCddLFxuICAgICZbZGF0YS1oZWFkbGVzc3VpLXN0YXRlPSdhY3RpdmUgc2VsZWN0ZWQnXSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS1jaGVja1VyaSk7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHJpZ2h0IDEycHg7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gJHtnZXRJY29uU2l6ZSgnbScpfTtcbiAgICB9XG5cbiAgICAmW2RhdGEtaGVhZGxlc3N1aS1zdGF0ZT0nYWN0aXZlIHNlbGVjdGVkJ10ge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tY2hlY2tVcmlBY3RpdmUpO1xuICAgIH1cblxuICAgICZbZGF0YS1oZWFkbGVzc3VpLXN0YXRlPSdkaXNhYmxlZCddIHtcbiAgICAgIGNvbG9yOiAke2dldENvbG9yKCdkaXNhYmxlZENvbnRlbnQnKX07XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuXG4gICAgdWwgJiB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuICAgIH1cbiAgfVxuXG4gIC5hdXRvY29tcGxldGVNZW51SXRlbVRleHQge1xuICAgIGZsZXgtZ3JvdzogMTtcblxuICAgICYuaGFzRWxsaXBzaXMge1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB9XG4gIH1cbmA7XG5cbmNvbnN0IEl0ZW0gPSBmb3J3YXJkUmVmKCh7IGNoaWxkcmVuLCBoYXNFbGxpcHNpcywgcGFkZGluZ0xlZnQgPSAnMTJweCcsIC4uLnByb3BzIH0sIHJlZikgPT4ge1xuICByZXR1cm4gKFxuICAgIDxsaVxuICAgICAgY2xhc3NOYW1lPVwiYXV0b2NvbXBsZXRlTWVudUl0ZW1cIlxuICAgICAgcmVmPXtyZWZ9XG4gICAgICBzdHlsZT17eyBwYWRkaW5nTGVmdDogZ2V0U3BhY2UocGFkZGluZ0xlZnQpIH19XG4gICAgICB7Li4ucHJvcHN9XG4gICAgPlxuICAgICAgPHNwYW5cbiAgICAgICAgY2xhc3NOYW1lPXtcbiAgICAgICAgICBoYXNFbGxpcHNpcyA/ICdhdXRvY29tcGxldGVNZW51SXRlbVRleHQgaGFzRWxsaXBzaXMnIDogJ2F1dG9jb21wbGV0ZU1lbnVJdGVtVGV4dCdcbiAgICAgICAgfVxuICAgICAgPlxuICAgICAgICB7Y2hpbGRyZW59XG4gICAgICA8L3NwYW4+XG4gICAgPC9saT5cbiAgKTtcbn0pO1xuXG5jb25zdCBUcmlnZ2VyID0gc3R5bGVkLmJ1dHRvbmBcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgaGVpZ2h0OiAke2NvbXBvbmVudFZhcnMudGV4dEJveEhlaWdodH07XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjdXJzb3I6IHRleHQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgd2lkdGg6IDEwMCU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgb3BhY2l0eTogJHsoeyBvcGVuIH0pID0+IChvcGVuID8gMCA6IDEpfTtcbiAgcG9pbnRlci1ldmVudHM6ICR7KHsgb3BlbiB9KSA9PiAob3BlbiA/ICdub25lJyA6ICdhdXRvJyl9O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAke2dldFRyYW5zaXRpb24oJ3h4RmFzdCcpfTtcblxuICAuYXV0b2NvbXBsZXRlTWVudUl0ZW0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDM0cHg7XG4gIH1cblxuICAuYXV0b2NvbXBsZXRlSW5wdXQ6Zm9jdXMtdmlzaWJsZSArICYge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbmA7XG5cbmNvbnN0IFRyaWdnZXJUZXh0ID0gc3R5bGVkLnNwYW5gXG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLWJsb2NrOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDEycHg7XG4gIHBhZGRpbmctcmlnaHQ6IDMycHg7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuYDtcblxuZXhwb3J0IGNvbnN0IEF1dG9jb21wbGV0ZTIgPSAoe1xuICBvcHRpb25zLFxuICB2YWx1ZSxcbiAgb25DaGFuZ2UsXG4gIGlzQ3JlYXRhYmxlLFxuICBvbkNyZWF0ZSxcbiAgbWVudVBsYWNlbWVudCA9IGRlZmF1bHRQcm9wcy5tZW51UGxhY2VtZW50LFxuICBtZW51V2lkdGgsXG4gIG1lbnVNYXhIZWlnaHQgPSBkZWZhdWx0UHJvcHMubWVudU1heEhlaWdodCxcbiAgbWVudVpJbmRleCxcbiAgcGxhY2Vob2xkZXIsXG4gIGxhYmVsLFxuICBoaW50LFxuICBtZW51SXRlbXNIYXZlRWxsaXBzaXMgPSB0cnVlLFxuICBoYXNQb3J0YWwgPSB0cnVlLFxuICBoYXNFcnJvcixcbiAgZXJyb3JNZXNzYWdlLFxuICBzZWFyY2hGaWVsZCA9ICdjb250ZW50JyxcbiAgLi4ucHJvcHNcbn0pID0+IHtcbiAgY29uc3QgW3F1ZXJ5LCBzZXRRdWVyeV0gPSB1c2VTdGF0ZSgnJyk7XG5cbiAgY29uc3QgaGFuZGxlQ3JlYXRhYmxlQ2hhbmdlID0gb3B0aW9uID0+IHtcbiAgICBpZiAob25DcmVhdGUpIHtcbiAgICAgIGNvbnN0IGlzQ3JlYXRhYmxlT3B0aW9uID0gIW9wdGlvbnMuZmluZChpdGVtID0+IGl0ZW0udmFsdWUgPT09IG9wdGlvbi52YWx1ZSk7XG4gICAgICBpZiAoaXNDcmVhdGFibGVPcHRpb24pIHtcbiAgICAgICAgb25DcmVhdGUob3B0aW9uKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgIH1cbiAgICBvbkNoYW5nZShvcHRpb24pO1xuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUNoYW5nZSA9IG9wdGlvbiA9PiB7XG4gICAgaWYgKGlzQ3JlYXRhYmxlKSB7XG4gICAgICBoYW5kbGVDcmVhdGFibGVDaGFuZ2Uob3B0aW9uKTtcbiAgICB9IGVsc2Uge1xuICAgICAgb25DaGFuZ2Uob3B0aW9uKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgZmlsdGVyZWRPcHRpb25zID0gZ2V0RmlsdGVyZWRPcHRpb25zKHF1ZXJ5LCBvcHRpb25zLCBzZWFyY2hGaWVsZCk7XG5cbiAgY29uc3QgaXNTaG93Q3JlYXRlT3B0aW9uID0gaXNDcmVhdGFibGUgJiYgcXVlcnkubGVuZ3RoID4gMDtcblxuICBjb25zdCBub1Jlc3VsdHMgPSAhQm9vbGVhbihmaWx0ZXJlZE9wdGlvbnMubGVuZ3RoKSAmJiAhaXNTaG93Q3JlYXRlT3B0aW9uO1xuXG4gIGNvbnN0IGZpZWxkTWFyZ2luVG9wID0gbGFiZWwgfHwgaGludCA/ICdiZXR3ZWVuRm9ybUNvbnRyb2xBbmRMYWJlbCcgOiB1bmRlZmluZWQ7XG5cbiAgY29uc3Qgc2VsZWN0ZWRPcHRpb24gPSB1c2VNZW1vKFxuICAgICgpID0+IG9wdGlvbnMuZmluZChvcHRpb24gPT4gb3B0aW9uLnZhbHVlID09PSB2YWx1ZSksXG4gICAgW29wdGlvbnMsIHZhbHVlXSxcbiAgKTtcblxuICBjb25zdCBuZXdPcHRpb24gPSB1c2VNZW1vKCgpID0+ICh7IHZhbHVlOiBxdWVyeSwgY29udGVudDogcXVlcnkgfSksIFtxdWVyeV0pO1xuXG4gIGNvbnN0IHsgcmVmZXJlbmNlLCBmbG9hdGluZywgZmxvYXRpbmdTdHlsZXMgfSA9IHVzZU1lbnVQb3NpdGlvbih7IG1lbnVXaWR0aCwgbWVudVBsYWNlbWVudCB9KTtcblxuICBjb25zdCBPcHRpb25zUm9vdCA9IGhhc1BvcnRhbCA/IEZsb2F0aW5nUG9ydGFsIDogRnJhZ21lbnQ7XG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAgPEdsb2JhbCBzdHlsZXM9e21lbnVJdGVtU3R5bGVzfSAvPlxuICAgICAgPENvbWJvYm94IGFzPVwiZGl2XCIgdmFsdWU9e3NlbGVjdGVkT3B0aW9uIHx8ICcnfSBvbkNoYW5nZT17aGFuZGxlQ2hhbmdlfSB7Li4ucHJvcHN9PlxuICAgICAgICB7KHsgb3BlbiB9KSA9PiB7XG4gICAgICAgICAgY29uc3QgaGFzSXRlbSA9IHNlbGVjdGVkT3B0aW9uPy5pdGVtO1xuICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICA8PlxuICAgICAgICAgICAgICB7bGFiZWwgJiYgPENvbWJvYm94LkxhYmVsIGFzPXtGaWVsZExhYmVsfT57bGFiZWx9PC9Db21ib2JveC5MYWJlbD59XG4gICAgICAgICAgICAgIHtoaW50ICYmIDxGaWVsZEhpbnQ+e2hpbnR9PC9GaWVsZEhpbnQ+fVxuXG4gICAgICAgICAgICAgIDxSb290IG1hcmdpblRvcD17ZmllbGRNYXJnaW5Ub3B9IHJlZj17cmVmZXJlbmNlfSBvcGVuPXtvcGVufSBoYXNFcnJvcj17aGFzRXJyb3J9PlxuICAgICAgICAgICAgICAgIDxDb21ib2JveC5CdXR0b24gYXM9e0JveH0gcG9zaXRpb249XCJyZWxhdGl2ZVwiPlxuICAgICAgICAgICAgICAgICAgPENvbWJvYm94LklucHV0XG4gICAgICAgICAgICAgICAgICAgIGFzPXtJbnB1dEZpZWxkfVxuICAgICAgICAgICAgICAgICAgICBhdXRvQ29tcGxldGU9XCJvZmZcIlxuICAgICAgICAgICAgICAgICAgICBvbkNoYW5nZT17ZXZlbnQgPT4gc2V0UXVlcnkoZXZlbnQudGFyZ2V0LnZhbHVlKX1cbiAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9e3BsYWNlaG9sZGVyfVxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5VmFsdWU9e29wdGlvbiA9PiBvcHRpb24gJiYgb3B0aW9uLmNvbnRlbnR9XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmdSaWdodD1cIjMycHhcIlxuICAgICAgICAgICAgICAgICAgICBoYXNFcnJvcj17aGFzRXJyb3J9XG4gICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cImF1dG9jb21wbGV0ZUlucHV0XCJcbiAgICAgICAgICAgICAgICAgIC8+XG5cbiAgICAgICAgICAgICAgICAgIDxUcmlnZ2VyIG9wZW49e29wZW59IHRhYkluZGV4PXstMX0+XG4gICAgICAgICAgICAgICAgICAgIHtoYXNJdGVtICYmXG4gICAgICAgICAgICAgICAgICAgICAgc2VsZWN0ZWRPcHRpb24uaXRlbSh7XG4gICAgICAgICAgICAgICAgICAgICAgICBpc0FjdGl2ZTogZmFsc2UsXG4gICAgICAgICAgICAgICAgICAgICAgICBpc1NlbGVjdGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGlzRGlzYWJsZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgICAgIH0pfVxuXG4gICAgICAgICAgICAgICAgICAgIHshaGFzSXRlbSAmJiBzZWxlY3RlZE9wdGlvbiAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgPFRyaWdnZXJUZXh0PntzZWxlY3RlZE9wdGlvbj8uY29udGVudH08L1RyaWdnZXJUZXh0PlxuICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgPC9UcmlnZ2VyPlxuXG4gICAgICAgICAgICAgICAgICA8RXhwYW5kSWNvbiAvPlxuICAgICAgICAgICAgICAgIDwvQ29tYm9ib3guQnV0dG9uPlxuXG4gICAgICAgICAgICAgICAgPE9wdGlvbnNSb290PlxuICAgICAgICAgICAgICAgICAgPE1lbnVDYXJkVHJhbnNpdGlvbiBhZnRlckxlYXZlPXsoKSA9PiBzZXRRdWVyeSgnJyl9PlxuICAgICAgICAgICAgICAgICAgICA8Q29tYm9ib3guT3B0aW9uc1xuICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY1xuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cImdybi1jb250ZXh0XCJcbiAgICAgICAgICAgICAgICAgICAgICByZWY9e2Zsb2F0aW5nfVxuICAgICAgICAgICAgICAgICAgICAgIHBsYWNlbWVudD17bWVudVBsYWNlbWVudH1cbiAgICAgICAgICAgICAgICAgICAgICBtYXhIZWlnaHQ9e21lbnVNYXhIZWlnaHR9XG4gICAgICAgICAgICAgICAgICAgICAgYXM9e01lbnVDYXJkfVxuICAgICAgICAgICAgICAgICAgICAgIHpJbmRleD17bWVudVpJbmRleH1cbiAgICAgICAgICAgICAgICAgICAgICBzdHlsZT17ZmxvYXRpbmdTdHlsZXN9XG4gICAgICAgICAgICAgICAgICAgICAgaXNPcGVuPXtvcGVufVxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAge2ZpbHRlcmVkT3B0aW9ucy5tYXAoKG9wdGlvbiwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNob3dHcm91cFRpdGxlID0gZ2V0U2hvd0dyb3VwVGl0bGUoaW5kZXgsIG9wdGlvbiwgZmlsdGVyZWRPcHRpb25zKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPEZyYWdtZW50IGtleT17aW5kZXh9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtzaG93R3JvdXBUaXRsZSAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8TWVudUdyb3VwVGl0bGUgaGFzRGl2aWRlcj17aW5kZXggPiAwfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge29wdGlvbi5ncm91cFRpdGxlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9NZW51R3JvdXBUaXRsZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPENvbWJvYm94Lk9wdGlvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU9e29wdGlvbn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFzPXtGcmFnbWVudH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2FibGVkPXtvcHRpb24uaXNEaXNhYmxlZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7KHsgYWN0aXZlIH0pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgaXNEaXNhYmxlZCA9IG9wdGlvbi5pc0Rpc2FibGVkO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBpc1NlbGVjdGVkID0gb3B0aW9uLnZhbHVlID09PSB2YWx1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgaXNBY3RpdmUgPSAhb3B0aW9uLmlzRGlzYWJsZWQgJiYgYWN0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBoYXNFbGxpcHNpcyA9IG1lbnVJdGVtc0hhdmVFbGxpcHNpcztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG9wdGlvbi5pdGVtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG9wdGlvbi5pdGVtKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzQWN0aXZlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXNTZWxlY3RlZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzRGlzYWJsZWQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYXNFbGxpcHNpcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gPEl0ZW0gaGFzRWxsaXBzaXM9e2hhc0VsbGlwc2lzfT57b3B0aW9uLmNvbnRlbnR9PC9JdGVtPjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Db21ib2JveC5PcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvRnJhZ21lbnQ+XG4gICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICAgIHtpc1Nob3dDcmVhdGVPcHRpb24gJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAge2ZpbHRlcmVkT3B0aW9ucy5sZW5ndGggPiAwICYmIDxNZW51SXRlbURpdmlkZXIgLz59XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxDb21ib2JveC5PcHRpb24gdmFsdWU9e25ld09wdGlvbn0gYXM9e0ZyYWdtZW50fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7KHsgYWN0aXZlIH0pID0+IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJdGVtIGlzQWN0aXZlPXthY3RpdmV9IGhhc0VsbGlwc2lzPXttZW51SXRlbXNIYXZlRWxsaXBzaXN9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QXJyYW5nZSBnYXA9XCJzXCIgdGFnPVwic3BhblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJY29uIGljb249ezxJY29uUGx1cyAvPn0gY29sb3I9e2FjdGl2ZSA/ICdjb250ZW50JyA6ICdpY29uJ30gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGUge2BcImAgKyBxdWVyeSArIGBcImB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQXJyYW5nZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvSXRlbT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L0NvbWJvYm94Lk9wdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAge25vUmVzdWx0cyAmJiA8RW1wdHlTdGF0ZSAvPn1cbiAgICAgICAgICAgICAgICAgICAgPC9Db21ib2JveC5PcHRpb25zPlxuICAgICAgICAgICAgICAgICAgPC9NZW51Q2FyZFRyYW5zaXRpb24+XG4gICAgICAgICAgICAgICAgPC9PcHRpb25zUm9vdD5cbiAgICAgICAgICAgICAgPC9Sb290PlxuICAgICAgICAgICAgICB7ZXJyb3JNZXNzYWdlICYmIChcbiAgICAgICAgICAgICAgICA8Qm94IG1hcmdpblRvcD1cImJldHdlZW5Gb3JtQ29udHJvbEFuZExhYmVsXCIgY29sb3I9XCJkYW5nZXJcIj5cbiAgICAgICAgICAgICAgICAgIHtlcnJvck1lc3NhZ2V9XG4gICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8Lz5cbiAgICAgICAgICApO1xuICAgICAgICB9fVxuICAgICAgPC9Db21ib2JveD5cbiAgICA8Lz5cbiAgKTtcbn07XG5cbkF1dG9jb21wbGV0ZTIuTGFiZWwgPSBGaWVsZExhYmVsO1xuQXV0b2NvbXBsZXRlMi5IaW50ID0gRmllbGRIaW50O1xuQXV0b2NvbXBsZXRlMi5JdGVtID0gSXRlbTtcblxuQXV0b2NvbXBsZXRlMi5wcm9wVHlwZXMgPSB7XG4gIG9wdGlvbnM6IFByb3BUeXBlcy5hcnJheSxcbiAgdmFsdWU6IFByb3BUeXBlcy5zdHJpbmcsXG4gIG9uQ2hhbmdlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICBpc0NyZWF0YWJsZTogUHJvcFR5cGVzLmJvb2wsXG4gIG9uQ3JlYXRlOiBQcm9wVHlwZXMuZnVuYyxcbiAgbWVudVBsYWNlbWVudDogdHlwZXMubWVudVBsYWNlbWVudCxcbiAgbWVudVdpZHRoOiB0eXBlcy5kaW1lbnNpb24sXG4gIG1lbnVNYXhIZWlnaHQ6IHR5cGVzLmRpbWVuc2lvbixcbiAgbWVudVpJbmRleDogdHlwZXMuekluZGV4LFxuICBsYWJlbDogdHlwZXMubGFiZWwsXG4gIGhpbnQ6IHR5cGVzLmhpbnQsXG4gIG1lbnVJdGVtc0hhdmVFbGxpcHNpczogUHJvcFR5cGVzLmJvb2wsXG4gIGhhc1BvcnRhbDogUHJvcFR5cGVzLmJvb2wsXG4gIGhhc0Vycm9yOiBQcm9wVHlwZXMuYm9vbCxcbiAgZXJyb3JNZXNzYWdlOiBQcm9wVHlwZXMuc3RyaW5nLFxufTtcbiJdfQ== */"));
76
-
77
- var EmptyState = function EmptyState() {
78
- return ___EmotionJSX(Box, {
79
- paddingY: "s",
80
- paddingX: "m",
81
- color: "content2"
82
- }, "No results");
83
- };
84
-
85
- var ExpandIcon = function ExpandIcon() {
86
- return ___EmotionJSX(Box, {
87
- right: "fieldPaddingX",
88
- position: "absolute",
89
- top: "0px",
90
- bottom: "0px",
91
- margin: "auto",
92
- height: "fit-content"
93
- }, ___EmotionJSX(Icon, {
94
- icon: ___EmotionJSX(IconChevronDown, null)
95
- }));
96
- };
97
-
98
- var getFilteredOptions = function getFilteredOptions(query, options, searchField) {
99
- if (query === '') return options;
100
- return options.filter(function (option) {
101
- return option[searchField].toLowerCase().includes(query.toLowerCase());
102
- });
103
- };
104
-
105
- var getShowGroupTitle = function getShowGroupTitle(index, option, filteredOptions) {
106
- var firstOptionHasTitle = index === 0 && option.groupTitle;
107
- var titleChanged = index > 0 && option.groupTitle !== filteredOptions[index - 1].groupTitle;
108
- return firstOptionHasTitle || titleChanged;
109
- };
110
-
111
- var menuItemStyles = "\n .autocompleteMenuItem {\n display: flex;\n align-items: center;\n list-style: none;\n min-height: ".concat(componentVars.textBoxHeight, ";\n border-radius: ").concat(getRadius('s'), ";\n appearance: none;\n padding-block: 0;\n padding: 4px 12px;\n\n --checkUri: url('data:image/svg+xml,%3Csvg viewBox=\"0 0 22 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"%3E%3Cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M21.707 6.207L8.5 19.414.293 11.207l1.414-1.414L8.5 16.586 20.293 4.793l1.414 1.414z\" fill=\"%2337312f73\"%3E%3C/path%3E%3C/svg%3E');\n --checkUriActive: url('data:image/svg+xml,%3Csvg viewBox=\"0 0 22 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"%3E%3Cpath fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M21.707 6.207L8.5 19.414.293 11.207l1.414-1.414L8.5 16.586 20.293 4.793l1.414 1.414z\" fill=\"%23241a17\"%3E%3C/path%3E%3C/svg%3E');\n\n &[data-headlessui-state='active'],\n &[data-headlessui-state='active selected'] {\n background-color: ").concat(getColor('fade1'), ";\n }\n\n &[data-headlessui-state='selected'],\n &[data-headlessui-state='active selected'] {\n background-image: var(--checkUri);\n background-repeat: no-repeat;\n background-position: center right 12px;\n background-size: auto ").concat(getIconSize('m'), ";\n }\n\n &[data-headlessui-state='active selected'] {\n background-image: var(--checkUriActive);\n }\n\n &[data-headlessui-state='disabled'] {\n color: ").concat(getColor('disabledContent'), ";\n cursor: default;\n }\n\n ul & {\n cursor: pointer;\n padding-right: 40px;\n }\n }\n\n .autocompleteMenuItemText {\n flex-grow: 1;\n\n &.hasEllipsis {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n }\n");
112
- var Item = /*#__PURE__*/forwardRef(function (_ref5, ref) {
113
- var children = _ref5.children,
114
- hasEllipsis = _ref5.hasEllipsis,
115
- _ref5$paddingLeft = _ref5.paddingLeft,
116
- paddingLeft = _ref5$paddingLeft === void 0 ? '12px' : _ref5$paddingLeft,
117
- props = _objectWithoutProperties(_ref5, _excluded);
118
-
119
- return ___EmotionJSX("li", _extends({
120
- className: "autocompleteMenuItem",
121
- ref: ref,
122
- style: {
123
- paddingLeft: getSpace(paddingLeft)
124
- }
125
- }, props), ___EmotionJSX("span", {
126
- className: hasEllipsis ? 'autocompleteMenuItemText hasEllipsis' : 'autocompleteMenuItemText'
127
- }, children));
128
- });
129
-
130
- var Trigger = /*#__PURE__*/_styled("button", process.env.NODE_ENV === "production" ? {
131
- target: "ea1qwwn1"
132
- } : {
133
- target: "ea1qwwn1",
134
- label: "Trigger"
135
- })("text-align:left;height:", componentVars.textBoxHeight, ";background-color:transparent;cursor:text;appearance:none;display:block;font:inherit;color:inherit;width:100%;outline:none;border:none;padding:0;opacity:", function (_ref6) {
136
- var open = _ref6.open;
137
- return open ? 0 : 1;
138
- }, ";pointer-events:", function (_ref7) {
139
- var open = _ref7.open;
140
- return open ? 'none' : 'auto';
141
- }, ";position:absolute;top:0;left:0;transition:opacity ", getTransition('xxFast'), ";.autocompleteMenuItem{padding-right:34px;}.autocompleteInput:focus-visible+&{opacity:0;pointer-events:none;}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL2F1dG9jb21wbGV0ZTIuanN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTRKNkIiLCJmaWxlIjoiLi4vLi4vc3JjL2NvbXBvbmVudHMvYXV0b2NvbXBsZXRlMi5qc3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IFJlYWN0LCB7IGZvcndhcmRSZWYsIEZyYWdtZW50LCB1c2VNZW1vLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IEljb24sIEJveCwgQXJyYW5nZSB9IGZyb20gJy4nO1xuaW1wb3J0IHsgSWNvbkNoZXZyb25Eb3duLCBJY29uUGx1cyB9IGZyb20gJy4uL2ljb25zJztcbmltcG9ydCB7IENvbWJvYm94IH0gZnJvbSAnQGhlYWRsZXNzdWkvcmVhY3QnO1xuaW1wb3J0IHsgZGVmYXVsdFByb3BzLCB0eXBlcyB9IGZyb20gJy4uL3R5cGVzJztcbmltcG9ydCB7XG4gIElucHV0RmllbGQsXG4gIE1lbnVDYXJkLFxuICBNZW51Q2FyZFRyYW5zaXRpb24sXG4gIE1lbnVHcm91cFRpdGxlLFxuICBGaWVsZExhYmVsLFxuICBGaWVsZEhpbnQsXG4gIGNvbXBvbmVudFZhcnMsXG4gIHN0eWxlcyxcbn0gZnJvbSAnLi4vZm91bmRhdGlvbmFsJztcbmltcG9ydCB7IE1lbnVJdGVtRGl2aWRlciwgdXNlTWVudVBvc2l0aW9uIH0gZnJvbSAnLi4vZm91bmRhdGlvbmFsL21lbnUnO1xuaW1wb3J0IHsgRmxvYXRpbmdQb3J0YWwgfSBmcm9tICdAZmxvYXRpbmctdWkvcmVhY3QtZG9tLWludGVyYWN0aW9ucyc7XG5pbXBvcnQgeyBHbG9iYWwgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgeyBnZXRDb2xvciwgZ2V0SWNvblNpemUsIGdldFJhZGl1cywgZ2V0U3BhY2UsIGdldFRyYW5zaXRpb24gfSBmcm9tICcuLi91dGlsaXRpZXMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuXG5jb25zdCBSb290ID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudHJhbnNpdGlvbnN9O1xuICAkeyh7IGhhc0Vycm9yIH0pID0+XG4gICAgaGFzRXJyb3JcbiAgICAgID8gYC0tYm9yZGVyQ29sb3I6ICR7Z2V0Q29sb3IoJ2RhbmdlcicpfTtgXG4gICAgICA6IGBcbiAgICAgIC0tYm9yZGVyQ29sb3I6ICR7Z2V0Q29sb3IoJ2ZpZWxkQm9yZGVyJyl9O1xuICAgICAgJjpob3ZlciB7IC0tYm9yZGVyQ29sb3I6ICR7Z2V0Q29sb3IoJ2ZpZWxkQm9yZGVySG92ZXInKX0gfTtcbiAgICAgICY6Zm9jdXMtd2l0aGluIHsgLS1ib3JkZXJDb2xvcjogJHtnZXRDb2xvcignZmllbGRCb3JkZXJGb2N1cycpfSB9O1xuICAgIGB9O1xuXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogJHsoeyBtYXJnaW5Ub3AgfSkgPT4gZ2V0U3BhY2UobWFyZ2luVG9wKX07XG4gIGJvcmRlci1yYWRpdXM6ICR7Z2V0UmFkaXVzKCdzJyl9O1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAke2NvbXBvbmVudFZhcnMuc3Ryb2tlU2l6ZX0gdmFyKC0tYm9yZGVyQ29sb3IpO1xuXG4gIC5hdXRvY29tcGxldGVJbnB1dCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3BhY2l0eTogJHsoeyBvcGVuIH0pID0+IChvcGVuID8gMSA6IDApfTtcbiAgICBwb2ludGVyLWV2ZW50czogJHsoeyBvcGVuIH0pID0+IChvcGVuID8gJ2F1dG8nIDogJ25vbmUnKX07XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAke2dldFRyYW5zaXRpb24oJ3h4RmFzdCcpfTtcblxuICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgfVxuICB9XG5gO1xuXG5jb25zdCBFbXB0eVN0YXRlID0gKCkgPT4gKFxuICA8Qm94IHBhZGRpbmdZPVwic1wiIHBhZGRpbmdYPVwibVwiIGNvbG9yPVwiY29udGVudDJcIj5cbiAgICBObyByZXN1bHRzXG4gIDwvQm94PlxuKTtcblxuY29uc3QgRXhwYW5kSWNvbiA9ICgpID0+IChcbiAgPEJveFxuICAgIHJpZ2h0PVwiZmllbGRQYWRkaW5nWFwiXG4gICAgcG9zaXRpb249XCJhYnNvbHV0ZVwiXG4gICAgdG9wPVwiMHB4XCJcbiAgICBib3R0b209XCIwcHhcIlxuICAgIG1hcmdpbj1cImF1dG9cIlxuICAgIGhlaWdodD1cImZpdC1jb250ZW50XCJcbiAgPlxuICAgIDxJY29uIGljb249ezxJY29uQ2hldnJvbkRvd24gLz59IC8+XG4gIDwvQm94PlxuKTtcblxuY29uc3QgZ2V0RmlsdGVyZWRPcHRpb25zID0gKHF1ZXJ5LCBvcHRpb25zLCBzZWFyY2hGaWVsZCkgPT4ge1xuICBpZiAocXVlcnkgPT09ICcnKSByZXR1cm4gb3B0aW9ucztcblxuICByZXR1cm4gb3B0aW9ucy5maWx0ZXIob3B0aW9uID0+IG9wdGlvbltzZWFyY2hGaWVsZF0udG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhxdWVyeS50b0xvd2VyQ2FzZSgpKSk7XG59O1xuXG5jb25zdCBnZXRTaG93R3JvdXBUaXRsZSA9IChpbmRleCwgb3B0aW9uLCBmaWx0ZXJlZE9wdGlvbnMpID0+IHtcbiAgY29uc3QgZmlyc3RPcHRpb25IYXNUaXRsZSA9IGluZGV4ID09PSAwICYmIG9wdGlvbi5ncm91cFRpdGxlO1xuICBjb25zdCB0aXRsZUNoYW5nZWQgPSBpbmRleCA+IDAgJiYgb3B0aW9uLmdyb3VwVGl0bGUgIT09IGZpbHRlcmVkT3B0aW9uc1tpbmRleCAtIDFdLmdyb3VwVGl0bGU7XG5cbiAgcmV0dXJuIGZpcnN0T3B0aW9uSGFzVGl0bGUgfHwgdGl0bGVDaGFuZ2VkO1xufTtcblxuY29uc3QgbWVudUl0ZW1TdHlsZXMgPSBgXG4gIC5hdXRvY29tcGxldGVNZW51SXRlbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWluLWhlaWdodDogJHtjb21wb25lbnRWYXJzLnRleHRCb3hIZWlnaHR9O1xuICAgIGJvcmRlci1yYWRpdXM6ICR7Z2V0UmFkaXVzKCdzJyl9O1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgcGFkZGluZy1ibG9jazogMDtcbiAgICBwYWRkaW5nOiA0cHggMTJweDtcblxuICAgIC0tY2hlY2tVcmk6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB2aWV3Qm94PVwiMCAwIDIyIDI0XCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIlM0UlM0NwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBjbGlwLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0yMS43MDcgNi4yMDdMOC41IDE5LjQxNC4yOTMgMTEuMjA3bDEuNDE0LTEuNDE0TDguNSAxNi41ODYgMjAuMjkzIDQuNzkzbDEuNDE0IDEuNDE0elwiIGZpbGw9XCIlMjMzNzMxMmY3M1wiJTNFJTNDL3BhdGglM0UlM0Mvc3ZnJTNFJyk7XG4gICAgLS1jaGVja1VyaUFjdGl2ZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHZpZXdCb3g9XCIwIDAgMjIgMjRcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiUzRSUzQ3BhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGNsaXAtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTIxLjcwNyA2LjIwN0w4LjUgMTkuNDE0LjI5MyAxMS4yMDdsMS40MTQtMS40MTRMOC41IDE2LjU4NiAyMC4yOTMgNC43OTNsMS40MTQgMS40MTR6XCIgZmlsbD1cIiUyMzI0MWExN1wiJTNFJTNDL3BhdGglM0UlM0Mvc3ZnJTNFJyk7XG5cbiAgICAmW2RhdGEtaGVhZGxlc3N1aS1zdGF0ZT0nYWN0aXZlJ10sXG4gICAgJltkYXRhLWhlYWRsZXNzdWktc3RhdGU9J2FjdGl2ZSBzZWxlY3RlZCddIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR7Z2V0Q29sb3IoJ2ZhZGUxJyl9O1xuICAgIH1cblxuICAgICZbZGF0YS1oZWFkbGVzc3VpLXN0YXRlPSdzZWxlY3RlZCddLFxuICAgICZbZGF0YS1oZWFkbGVzc3VpLXN0YXRlPSdhY3RpdmUgc2VsZWN0ZWQnXSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS1jaGVja1VyaSk7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHJpZ2h0IDEycHg7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gJHtnZXRJY29uU2l6ZSgnbScpfTtcbiAgICB9XG5cbiAgICAmW2RhdGEtaGVhZGxlc3N1aS1zdGF0ZT0nYWN0aXZlIHNlbGVjdGVkJ10ge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tY2hlY2tVcmlBY3RpdmUpO1xuICAgIH1cblxuICAgICZbZGF0YS1oZWFkbGVzc3VpLXN0YXRlPSdkaXNhYmxlZCddIHtcbiAgICAgIGNvbG9yOiAke2dldENvbG9yKCdkaXNhYmxlZENvbnRlbnQnKX07XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuXG4gICAgdWwgJiB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuICAgIH1cbiAgfVxuXG4gIC5hdXRvY29tcGxldGVNZW51SXRlbVRleHQge1xuICAgIGZsZXgtZ3JvdzogMTtcblxuICAgICYuaGFzRWxsaXBzaXMge1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB9XG4gIH1cbmA7XG5cbmNvbnN0IEl0ZW0gPSBmb3J3YXJkUmVmKCh7IGNoaWxkcmVuLCBoYXNFbGxpcHNpcywgcGFkZGluZ0xlZnQgPSAnMTJweCcsIC4uLnByb3BzIH0sIHJlZikgPT4ge1xuICByZXR1cm4gKFxuICAgIDxsaVxuICAgICAgY2xhc3NOYW1lPVwiYXV0b2NvbXBsZXRlTWVudUl0ZW1cIlxuICAgICAgcmVmPXtyZWZ9XG4gICAgICBzdHlsZT17eyBwYWRkaW5nTGVmdDogZ2V0U3BhY2UocGFkZGluZ0xlZnQpIH19XG4gICAgICB7Li4ucHJvcHN9XG4gICAgPlxuICAgICAgPHNwYW5cbiAgICAgICAgY2xhc3NOYW1lPXtcbiAgICAgICAgICBoYXNFbGxpcHNpcyA/ICdhdXRvY29tcGxldGVNZW51SXRlbVRleHQgaGFzRWxsaXBzaXMnIDogJ2F1dG9jb21wbGV0ZU1lbnVJdGVtVGV4dCdcbiAgICAgICAgfVxuICAgICAgPlxuICAgICAgICB7Y2hpbGRyZW59XG4gICAgICA8L3NwYW4+XG4gICAgPC9saT5cbiAgKTtcbn0pO1xuXG5jb25zdCBUcmlnZ2VyID0gc3R5bGVkLmJ1dHRvbmBcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgaGVpZ2h0OiAke2NvbXBvbmVudFZhcnMudGV4dEJveEhlaWdodH07XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjdXJzb3I6IHRleHQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgd2lkdGg6IDEwMCU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgb3BhY2l0eTogJHsoeyBvcGVuIH0pID0+IChvcGVuID8gMCA6IDEpfTtcbiAgcG9pbnRlci1ldmVudHM6ICR7KHsgb3BlbiB9KSA9PiAob3BlbiA/ICdub25lJyA6ICdhdXRvJyl9O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAke2dldFRyYW5zaXRpb24oJ3h4RmFzdCcpfTtcblxuICAuYXV0b2NvbXBsZXRlTWVudUl0ZW0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDM0cHg7XG4gIH1cblxuICAuYXV0b2NvbXBsZXRlSW5wdXQ6Zm9jdXMtdmlzaWJsZSArICYge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbmA7XG5cbmNvbnN0IFRyaWdnZXJUZXh0ID0gc3R5bGVkLnNwYW5gXG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLWJsb2NrOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDEycHg7XG4gIHBhZGRpbmctcmlnaHQ6IDMycHg7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuYDtcblxuZXhwb3J0IGNvbnN0IEF1dG9jb21wbGV0ZTIgPSAoe1xuICBvcHRpb25zLFxuICB2YWx1ZSxcbiAgb25DaGFuZ2UsXG4gIGlzQ3JlYXRhYmxlLFxuICBvbkNyZWF0ZSxcbiAgbWVudVBsYWNlbWVudCA9IGRlZmF1bHRQcm9wcy5tZW51UGxhY2VtZW50LFxuICBtZW51V2lkdGgsXG4gIG1lbnVNYXhIZWlnaHQgPSBkZWZhdWx0UHJvcHMubWVudU1heEhlaWdodCxcbiAgbWVudVpJbmRleCxcbiAgcGxhY2Vob2xkZXIsXG4gIGxhYmVsLFxuICBoaW50LFxuICBtZW51SXRlbXNIYXZlRWxsaXBzaXMgPSB0cnVlLFxuICBoYXNQb3J0YWwgPSB0cnVlLFxuICBoYXNFcnJvcixcbiAgZXJyb3JNZXNzYWdlLFxuICBzZWFyY2hGaWVsZCA9ICdjb250ZW50JyxcbiAgLi4ucHJvcHNcbn0pID0+IHtcbiAgY29uc3QgW3F1ZXJ5LCBzZXRRdWVyeV0gPSB1c2VTdGF0ZSgnJyk7XG5cbiAgY29uc3QgaGFuZGxlQ3JlYXRhYmxlQ2hhbmdlID0gb3B0aW9uID0+IHtcbiAgICBpZiAob25DcmVhdGUpIHtcbiAgICAgIGNvbnN0IGlzQ3JlYXRhYmxlT3B0aW9uID0gIW9wdGlvbnMuZmluZChpdGVtID0+IGl0ZW0udmFsdWUgPT09IG9wdGlvbi52YWx1ZSk7XG4gICAgICBpZiAoaXNDcmVhdGFibGVPcHRpb24pIHtcbiAgICAgICAgb25DcmVhdGUob3B0aW9uKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgIH1cbiAgICBvbkNoYW5nZShvcHRpb24pO1xuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUNoYW5nZSA9IG9wdGlvbiA9PiB7XG4gICAgaWYgKGlzQ3JlYXRhYmxlKSB7XG4gICAgICBoYW5kbGVDcmVhdGFibGVDaGFuZ2Uob3B0aW9uKTtcbiAgICB9IGVsc2Uge1xuICAgICAgb25DaGFuZ2Uob3B0aW9uKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgZmlsdGVyZWRPcHRpb25zID0gZ2V0RmlsdGVyZWRPcHRpb25zKHF1ZXJ5LCBvcHRpb25zLCBzZWFyY2hGaWVsZCk7XG5cbiAgY29uc3QgaXNTaG93Q3JlYXRlT3B0aW9uID0gaXNDcmVhdGFibGUgJiYgcXVlcnkubGVuZ3RoID4gMDtcblxuICBjb25zdCBub1Jlc3VsdHMgPSAhQm9vbGVhbihmaWx0ZXJlZE9wdGlvbnMubGVuZ3RoKSAmJiAhaXNTaG93Q3JlYXRlT3B0aW9uO1xuXG4gIGNvbnN0IGZpZWxkTWFyZ2luVG9wID0gbGFiZWwgfHwgaGludCA/ICdiZXR3ZWVuRm9ybUNvbnRyb2xBbmRMYWJlbCcgOiB1bmRlZmluZWQ7XG5cbiAgY29uc3Qgc2VsZWN0ZWRPcHRpb24gPSB1c2VNZW1vKFxuICAgICgpID0+IG9wdGlvbnMuZmluZChvcHRpb24gPT4gb3B0aW9uLnZhbHVlID09PSB2YWx1ZSksXG4gICAgW29wdGlvbnMsIHZhbHVlXSxcbiAgKTtcblxuICBjb25zdCBuZXdPcHRpb24gPSB1c2VNZW1vKCgpID0+ICh7IHZhbHVlOiBxdWVyeSwgY29udGVudDogcXVlcnkgfSksIFtxdWVyeV0pO1xuXG4gIGNvbnN0IHsgcmVmZXJlbmNlLCBmbG9hdGluZywgZmxvYXRpbmdTdHlsZXMgfSA9IHVzZU1lbnVQb3NpdGlvbih7IG1lbnVXaWR0aCwgbWVudVBsYWNlbWVudCB9KTtcblxuICBjb25zdCBPcHRpb25zUm9vdCA9IGhhc1BvcnRhbCA/IEZsb2F0aW5nUG9ydGFsIDogRnJhZ21lbnQ7XG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAgPEdsb2JhbCBzdHlsZXM9e21lbnVJdGVtU3R5bGVzfSAvPlxuICAgICAgPENvbWJvYm94IGFzPVwiZGl2XCIgdmFsdWU9e3NlbGVjdGVkT3B0aW9uIHx8ICcnfSBvbkNoYW5nZT17aGFuZGxlQ2hhbmdlfSB7Li4ucHJvcHN9PlxuICAgICAgICB7KHsgb3BlbiB9KSA9PiB7XG4gICAgICAgICAgY29uc3QgaGFzSXRlbSA9IHNlbGVjdGVkT3B0aW9uPy5pdGVtO1xuICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICA8PlxuICAgICAgICAgICAgICB7bGFiZWwgJiYgPENvbWJvYm94LkxhYmVsIGFzPXtGaWVsZExhYmVsfT57bGFiZWx9PC9Db21ib2JveC5MYWJlbD59XG4gICAgICAgICAgICAgIHtoaW50ICYmIDxGaWVsZEhpbnQ+e2hpbnR9PC9GaWVsZEhpbnQ+fVxuXG4gICAgICAgICAgICAgIDxSb290IG1hcmdpblRvcD17ZmllbGRNYXJnaW5Ub3B9IHJlZj17cmVmZXJlbmNlfSBvcGVuPXtvcGVufSBoYXNFcnJvcj17aGFzRXJyb3J9PlxuICAgICAgICAgICAgICAgIDxDb21ib2JveC5CdXR0b24gYXM9e0JveH0gcG9zaXRpb249XCJyZWxhdGl2ZVwiPlxuICAgICAgICAgICAgICAgICAgPENvbWJvYm94LklucHV0XG4gICAgICAgICAgICAgICAgICAgIGFzPXtJbnB1dEZpZWxkfVxuICAgICAgICAgICAgICAgICAgICBhdXRvQ29tcGxldGU9XCJvZmZcIlxuICAgICAgICAgICAgICAgICAgICBvbkNoYW5nZT17ZXZlbnQgPT4gc2V0UXVlcnkoZXZlbnQudGFyZ2V0LnZhbHVlKX1cbiAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9e3BsYWNlaG9sZGVyfVxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5VmFsdWU9e29wdGlvbiA9PiBvcHRpb24gJiYgb3B0aW9uLmNvbnRlbnR9XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmdSaWdodD1cIjMycHhcIlxuICAgICAgICAgICAgICAgICAgICBoYXNFcnJvcj17aGFzRXJyb3J9XG4gICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cImF1dG9jb21wbGV0ZUlucHV0XCJcbiAgICAgICAgICAgICAgICAgIC8+XG5cbiAgICAgICAgICAgICAgICAgIDxUcmlnZ2VyIG9wZW49e29wZW59IHRhYkluZGV4PXstMX0+XG4gICAgICAgICAgICAgICAgICAgIHtoYXNJdGVtICYmXG4gICAgICAgICAgICAgICAgICAgICAgc2VsZWN0ZWRPcHRpb24uaXRlbSh7XG4gICAgICAgICAgICAgICAgICAgICAgICBpc0FjdGl2ZTogZmFsc2UsXG4gICAgICAgICAgICAgICAgICAgICAgICBpc1NlbGVjdGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGlzRGlzYWJsZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgICAgIH0pfVxuXG4gICAgICAgICAgICAgICAgICAgIHshaGFzSXRlbSAmJiBzZWxlY3RlZE9wdGlvbiAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgPFRyaWdnZXJUZXh0PntzZWxlY3RlZE9wdGlvbj8uY29udGVudH08L1RyaWdnZXJUZXh0PlxuICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgPC9UcmlnZ2VyPlxuXG4gICAgICAgICAgICAgICAgICA8RXhwYW5kSWNvbiAvPlxuICAgICAgICAgICAgICAgIDwvQ29tYm9ib3guQnV0dG9uPlxuXG4gICAgICAgICAgICAgICAgPE9wdGlvbnNSb290PlxuICAgICAgICAgICAgICAgICAgPE1lbnVDYXJkVHJhbnNpdGlvbiBhZnRlckxlYXZlPXsoKSA9PiBzZXRRdWVyeSgnJyl9PlxuICAgICAgICAgICAgICAgICAgICA8Q29tYm9ib3guT3B0aW9uc1xuICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY1xuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cImdybi1jb250ZXh0XCJcbiAgICAgICAgICAgICAgICAgICAgICByZWY9e2Zsb2F0aW5nfVxuICAgICAgICAgICAgICAgICAgICAgIHBsYWNlbWVudD17bWVudVBsYWNlbWVudH1cbiAgICAgICAgICAgICAgICAgICAgICBtYXhIZWlnaHQ9e21lbnVNYXhIZWlnaHR9XG4gICAgICAgICAgICAgICAgICAgICAgYXM9e01lbnVDYXJkfVxuICAgICAgICAgICAgICAgICAgICAgIHpJbmRleD17bWVudVpJbmRleH1cbiAgICAgICAgICAgICAgICAgICAgICBzdHlsZT17ZmxvYXRpbmdTdHlsZXN9XG4gICAgICAgICAgICAgICAgICAgICAgaXNPcGVuPXtvcGVufVxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAge2ZpbHRlcmVkT3B0aW9ucy5tYXAoKG9wdGlvbiwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNob3dHcm91cFRpdGxlID0gZ2V0U2hvd0dyb3VwVGl0bGUoaW5kZXgsIG9wdGlvbiwgZmlsdGVyZWRPcHRpb25zKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPEZyYWdtZW50IGtleT17aW5kZXh9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtzaG93R3JvdXBUaXRsZSAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8TWVudUdyb3VwVGl0bGUgaGFzRGl2aWRlcj17aW5kZXggPiAwfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge29wdGlvbi5ncm91cFRpdGxlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9NZW51R3JvdXBUaXRsZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPENvbWJvYm94Lk9wdGlvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU9e29wdGlvbn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFzPXtGcmFnbWVudH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2FibGVkPXtvcHRpb24uaXNEaXNhYmxlZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7KHsgYWN0aXZlIH0pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgaXNEaXNhYmxlZCA9IG9wdGlvbi5pc0Rpc2FibGVkO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBpc1NlbGVjdGVkID0gb3B0aW9uLnZhbHVlID09PSB2YWx1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgaXNBY3RpdmUgPSAhb3B0aW9uLmlzRGlzYWJsZWQgJiYgYWN0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBoYXNFbGxpcHNpcyA9IG1lbnVJdGVtc0hhdmVFbGxpcHNpcztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG9wdGlvbi5pdGVtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG9wdGlvbi5pdGVtKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzQWN0aXZlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXNTZWxlY3RlZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzRGlzYWJsZWQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYXNFbGxpcHNpcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gPEl0ZW0gaGFzRWxsaXBzaXM9e2hhc0VsbGlwc2lzfT57b3B0aW9uLmNvbnRlbnR9PC9JdGVtPjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Db21ib2JveC5PcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvRnJhZ21lbnQ+XG4gICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICAgIHtpc1Nob3dDcmVhdGVPcHRpb24gJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAge2ZpbHRlcmVkT3B0aW9ucy5sZW5ndGggPiAwICYmIDxNZW51SXRlbURpdmlkZXIgLz59XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxDb21ib2JveC5PcHRpb24gdmFsdWU9e25ld09wdGlvbn0gYXM9e0ZyYWdtZW50fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7KHsgYWN0aXZlIH0pID0+IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJdGVtIGlzQWN0aXZlPXthY3RpdmV9IGhhc0VsbGlwc2lzPXttZW51SXRlbXNIYXZlRWxsaXBzaXN9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QXJyYW5nZSBnYXA9XCJzXCIgdGFnPVwic3BhblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJY29uIGljb249ezxJY29uUGx1cyAvPn0gY29sb3I9e2FjdGl2ZSA/ICdjb250ZW50JyA6ICdpY29uJ30gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGUge2BcImAgKyBxdWVyeSArIGBcImB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQXJyYW5nZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvSXRlbT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L0NvbWJvYm94Lk9wdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAge25vUmVzdWx0cyAmJiA8RW1wdHlTdGF0ZSAvPn1cbiAgICAgICAgICAgICAgICAgICAgPC9Db21ib2JveC5PcHRpb25zPlxuICAgICAgICAgICAgICAgICAgPC9NZW51Q2FyZFRyYW5zaXRpb24+XG4gICAgICAgICAgICAgICAgPC9PcHRpb25zUm9vdD5cbiAgICAgICAgICAgICAgPC9Sb290PlxuICAgICAgICAgICAgICB7ZXJyb3JNZXNzYWdlICYmIChcbiAgICAgICAgICAgICAgICA8Qm94IG1hcmdpblRvcD1cImJldHdlZW5Gb3JtQ29udHJvbEFuZExhYmVsXCIgY29sb3I9XCJkYW5nZXJcIj5cbiAgICAgICAgICAgICAgICAgIHtlcnJvck1lc3NhZ2V9XG4gICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8Lz5cbiAgICAgICAgICApO1xuICAgICAgICB9fVxuICAgICAgPC9Db21ib2JveD5cbiAgICA8Lz5cbiAgKTtcbn07XG5cbkF1dG9jb21wbGV0ZTIuTGFiZWwgPSBGaWVsZExhYmVsO1xuQXV0b2NvbXBsZXRlMi5IaW50ID0gRmllbGRIaW50O1xuQXV0b2NvbXBsZXRlMi5JdGVtID0gSXRlbTtcblxuQXV0b2NvbXBsZXRlMi5wcm9wVHlwZXMgPSB7XG4gIG9wdGlvbnM6IFByb3BUeXBlcy5hcnJheSxcbiAgdmFsdWU6IFByb3BUeXBlcy5zdHJpbmcsXG4gIG9uQ2hhbmdlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICBpc0NyZWF0YWJsZTogUHJvcFR5cGVzLmJvb2wsXG4gIG9uQ3JlYXRlOiBQcm9wVHlwZXMuZnVuYyxcbiAgbWVudVBsYWNlbWVudDogdHlwZXMubWVudVBsYWNlbWVudCxcbiAgbWVudVdpZHRoOiB0eXBlcy5kaW1lbnNpb24sXG4gIG1lbnVNYXhIZWlnaHQ6IHR5cGVzLmRpbWVuc2lvbixcbiAgbWVudVpJbmRleDogdHlwZXMuekluZGV4LFxuICBsYWJlbDogdHlwZXMubGFiZWwsXG4gIGhpbnQ6IHR5cGVzLmhpbnQsXG4gIG1lbnVJdGVtc0hhdmVFbGxpcHNpczogUHJvcFR5cGVzLmJvb2wsXG4gIGhhc1BvcnRhbDogUHJvcFR5cGVzLmJvb2wsXG4gIGhhc0Vycm9yOiBQcm9wVHlwZXMuYm9vbCxcbiAgZXJyb3JNZXNzYWdlOiBQcm9wVHlwZXMuc3RyaW5nLFxufTtcbiJdfQ== */"));
142
-
143
- var TriggerText = /*#__PURE__*/_styled("span", process.env.NODE_ENV === "production" ? {
144
- target: "ea1qwwn0"
145
- } : {
146
- target: "ea1qwwn0",
147
- label: "TriggerText"
148
- })(process.env.NODE_ENV === "production" ? {
149
- name: "nabtlt",
150
- styles: "line-height:1.4;display:block;padding-block:0;padding-left:12px;padding-right:32px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap"
151
- } : {
152
- name: "nabtlt",
153
- styles: "line-height:1.4;display:block;padding-block:0;padding-left:12px;padding-right:32px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap",
154
- map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb21wb25lbnRzL2F1dG9jb21wbGV0ZTIuanN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTBMK0IiLCJmaWxlIjoiLi4vLi4vc3JjL2NvbXBvbmVudHMvYXV0b2NvbXBsZXRlMi5qc3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IFJlYWN0LCB7IGZvcndhcmRSZWYsIEZyYWdtZW50LCB1c2VNZW1vLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IEljb24sIEJveCwgQXJyYW5nZSB9IGZyb20gJy4nO1xuaW1wb3J0IHsgSWNvbkNoZXZyb25Eb3duLCBJY29uUGx1cyB9IGZyb20gJy4uL2ljb25zJztcbmltcG9ydCB7IENvbWJvYm94IH0gZnJvbSAnQGhlYWRsZXNzdWkvcmVhY3QnO1xuaW1wb3J0IHsgZGVmYXVsdFByb3BzLCB0eXBlcyB9IGZyb20gJy4uL3R5cGVzJztcbmltcG9ydCB7XG4gIElucHV0RmllbGQsXG4gIE1lbnVDYXJkLFxuICBNZW51Q2FyZFRyYW5zaXRpb24sXG4gIE1lbnVHcm91cFRpdGxlLFxuICBGaWVsZExhYmVsLFxuICBGaWVsZEhpbnQsXG4gIGNvbXBvbmVudFZhcnMsXG4gIHN0eWxlcyxcbn0gZnJvbSAnLi4vZm91bmRhdGlvbmFsJztcbmltcG9ydCB7IE1lbnVJdGVtRGl2aWRlciwgdXNlTWVudVBvc2l0aW9uIH0gZnJvbSAnLi4vZm91bmRhdGlvbmFsL21lbnUnO1xuaW1wb3J0IHsgRmxvYXRpbmdQb3J0YWwgfSBmcm9tICdAZmxvYXRpbmctdWkvcmVhY3QtZG9tLWludGVyYWN0aW9ucyc7XG5pbXBvcnQgeyBHbG9iYWwgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgeyBnZXRDb2xvciwgZ2V0SWNvblNpemUsIGdldFJhZGl1cywgZ2V0U3BhY2UsIGdldFRyYW5zaXRpb24gfSBmcm9tICcuLi91dGlsaXRpZXMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuXG5jb25zdCBSb290ID0gc3R5bGVkLmRpdmBcbiAgJHtzdHlsZXMudHJhbnNpdGlvbnN9O1xuICAkeyh7IGhhc0Vycm9yIH0pID0+XG4gICAgaGFzRXJyb3JcbiAgICAgID8gYC0tYm9yZGVyQ29sb3I6ICR7Z2V0Q29sb3IoJ2RhbmdlcicpfTtgXG4gICAgICA6IGBcbiAgICAgIC0tYm9yZGVyQ29sb3I6ICR7Z2V0Q29sb3IoJ2ZpZWxkQm9yZGVyJyl9O1xuICAgICAgJjpob3ZlciB7IC0tYm9yZGVyQ29sb3I6ICR7Z2V0Q29sb3IoJ2ZpZWxkQm9yZGVySG92ZXInKX0gfTtcbiAgICAgICY6Zm9jdXMtd2l0aGluIHsgLS1ib3JkZXJDb2xvcjogJHtnZXRDb2xvcignZmllbGRCb3JkZXJGb2N1cycpfSB9O1xuICAgIGB9O1xuXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogJHsoeyBtYXJnaW5Ub3AgfSkgPT4gZ2V0U3BhY2UobWFyZ2luVG9wKX07XG4gIGJvcmRlci1yYWRpdXM6ICR7Z2V0UmFkaXVzKCdzJyl9O1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAke2NvbXBvbmVudFZhcnMuc3Ryb2tlU2l6ZX0gdmFyKC0tYm9yZGVyQ29sb3IpO1xuXG4gIC5hdXRvY29tcGxldGVJbnB1dCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3BhY2l0eTogJHsoeyBvcGVuIH0pID0+IChvcGVuID8gMSA6IDApfTtcbiAgICBwb2ludGVyLWV2ZW50czogJHsoeyBvcGVuIH0pID0+IChvcGVuID8gJ2F1dG8nIDogJ25vbmUnKX07XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAke2dldFRyYW5zaXRpb24oJ3h4RmFzdCcpfTtcblxuICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgfVxuICB9XG5gO1xuXG5jb25zdCBFbXB0eVN0YXRlID0gKCkgPT4gKFxuICA8Qm94IHBhZGRpbmdZPVwic1wiIHBhZGRpbmdYPVwibVwiIGNvbG9yPVwiY29udGVudDJcIj5cbiAgICBObyByZXN1bHRzXG4gIDwvQm94PlxuKTtcblxuY29uc3QgRXhwYW5kSWNvbiA9ICgpID0+IChcbiAgPEJveFxuICAgIHJpZ2h0PVwiZmllbGRQYWRkaW5nWFwiXG4gICAgcG9zaXRpb249XCJhYnNvbHV0ZVwiXG4gICAgdG9wPVwiMHB4XCJcbiAgICBib3R0b209XCIwcHhcIlxuICAgIG1hcmdpbj1cImF1dG9cIlxuICAgIGhlaWdodD1cImZpdC1jb250ZW50XCJcbiAgPlxuICAgIDxJY29uIGljb249ezxJY29uQ2hldnJvbkRvd24gLz59IC8+XG4gIDwvQm94PlxuKTtcblxuY29uc3QgZ2V0RmlsdGVyZWRPcHRpb25zID0gKHF1ZXJ5LCBvcHRpb25zLCBzZWFyY2hGaWVsZCkgPT4ge1xuICBpZiAocXVlcnkgPT09ICcnKSByZXR1cm4gb3B0aW9ucztcblxuICByZXR1cm4gb3B0aW9ucy5maWx0ZXIob3B0aW9uID0+IG9wdGlvbltzZWFyY2hGaWVsZF0udG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhxdWVyeS50b0xvd2VyQ2FzZSgpKSk7XG59O1xuXG5jb25zdCBnZXRTaG93R3JvdXBUaXRsZSA9IChpbmRleCwgb3B0aW9uLCBmaWx0ZXJlZE9wdGlvbnMpID0+IHtcbiAgY29uc3QgZmlyc3RPcHRpb25IYXNUaXRsZSA9IGluZGV4ID09PSAwICYmIG9wdGlvbi5ncm91cFRpdGxlO1xuICBjb25zdCB0aXRsZUNoYW5nZWQgPSBpbmRleCA+IDAgJiYgb3B0aW9uLmdyb3VwVGl0bGUgIT09IGZpbHRlcmVkT3B0aW9uc1tpbmRleCAtIDFdLmdyb3VwVGl0bGU7XG5cbiAgcmV0dXJuIGZpcnN0T3B0aW9uSGFzVGl0bGUgfHwgdGl0bGVDaGFuZ2VkO1xufTtcblxuY29uc3QgbWVudUl0ZW1TdHlsZXMgPSBgXG4gIC5hdXRvY29tcGxldGVNZW51SXRlbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWluLWhlaWdodDogJHtjb21wb25lbnRWYXJzLnRleHRCb3hIZWlnaHR9O1xuICAgIGJvcmRlci1yYWRpdXM6ICR7Z2V0UmFkaXVzKCdzJyl9O1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgcGFkZGluZy1ibG9jazogMDtcbiAgICBwYWRkaW5nOiA0cHggMTJweDtcblxuICAgIC0tY2hlY2tVcmk6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB2aWV3Qm94PVwiMCAwIDIyIDI0XCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIlM0UlM0NwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBjbGlwLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0yMS43MDcgNi4yMDdMOC41IDE5LjQxNC4yOTMgMTEuMjA3bDEuNDE0LTEuNDE0TDguNSAxNi41ODYgMjAuMjkzIDQuNzkzbDEuNDE0IDEuNDE0elwiIGZpbGw9XCIlMjMzNzMxMmY3M1wiJTNFJTNDL3BhdGglM0UlM0Mvc3ZnJTNFJyk7XG4gICAgLS1jaGVja1VyaUFjdGl2ZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHZpZXdCb3g9XCIwIDAgMjIgMjRcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiUzRSUzQ3BhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGNsaXAtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTIxLjcwNyA2LjIwN0w4LjUgMTkuNDE0LjI5MyAxMS4yMDdsMS40MTQtMS40MTRMOC41IDE2LjU4NiAyMC4yOTMgNC43OTNsMS40MTQgMS40MTR6XCIgZmlsbD1cIiUyMzI0MWExN1wiJTNFJTNDL3BhdGglM0UlM0Mvc3ZnJTNFJyk7XG5cbiAgICAmW2RhdGEtaGVhZGxlc3N1aS1zdGF0ZT0nYWN0aXZlJ10sXG4gICAgJltkYXRhLWhlYWRsZXNzdWktc3RhdGU9J2FjdGl2ZSBzZWxlY3RlZCddIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR7Z2V0Q29sb3IoJ2ZhZGUxJyl9O1xuICAgIH1cblxuICAgICZbZGF0YS1oZWFkbGVzc3VpLXN0YXRlPSdzZWxlY3RlZCddLFxuICAgICZbZGF0YS1oZWFkbGVzc3VpLXN0YXRlPSdhY3RpdmUgc2VsZWN0ZWQnXSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS1jaGVja1VyaSk7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHJpZ2h0IDEycHg7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gJHtnZXRJY29uU2l6ZSgnbScpfTtcbiAgICB9XG5cbiAgICAmW2RhdGEtaGVhZGxlc3N1aS1zdGF0ZT0nYWN0aXZlIHNlbGVjdGVkJ10ge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tY2hlY2tVcmlBY3RpdmUpO1xuICAgIH1cblxuICAgICZbZGF0YS1oZWFkbGVzc3VpLXN0YXRlPSdkaXNhYmxlZCddIHtcbiAgICAgIGNvbG9yOiAke2dldENvbG9yKCdkaXNhYmxlZENvbnRlbnQnKX07XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuXG4gICAgdWwgJiB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuICAgIH1cbiAgfVxuXG4gIC5hdXRvY29tcGxldGVNZW51SXRlbVRleHQge1xuICAgIGZsZXgtZ3JvdzogMTtcblxuICAgICYuaGFzRWxsaXBzaXMge1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB9XG4gIH1cbmA7XG5cbmNvbnN0IEl0ZW0gPSBmb3J3YXJkUmVmKCh7IGNoaWxkcmVuLCBoYXNFbGxpcHNpcywgcGFkZGluZ0xlZnQgPSAnMTJweCcsIC4uLnByb3BzIH0sIHJlZikgPT4ge1xuICByZXR1cm4gKFxuICAgIDxsaVxuICAgICAgY2xhc3NOYW1lPVwiYXV0b2NvbXBsZXRlTWVudUl0ZW1cIlxuICAgICAgcmVmPXtyZWZ9XG4gICAgICBzdHlsZT17eyBwYWRkaW5nTGVmdDogZ2V0U3BhY2UocGFkZGluZ0xlZnQpIH19XG4gICAgICB7Li4ucHJvcHN9XG4gICAgPlxuICAgICAgPHNwYW5cbiAgICAgICAgY2xhc3NOYW1lPXtcbiAgICAgICAgICBoYXNFbGxpcHNpcyA/ICdhdXRvY29tcGxldGVNZW51SXRlbVRleHQgaGFzRWxsaXBzaXMnIDogJ2F1dG9jb21wbGV0ZU1lbnVJdGVtVGV4dCdcbiAgICAgICAgfVxuICAgICAgPlxuICAgICAgICB7Y2hpbGRyZW59XG4gICAgICA8L3NwYW4+XG4gICAgPC9saT5cbiAgKTtcbn0pO1xuXG5jb25zdCBUcmlnZ2VyID0gc3R5bGVkLmJ1dHRvbmBcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgaGVpZ2h0OiAke2NvbXBvbmVudFZhcnMudGV4dEJveEhlaWdodH07XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjdXJzb3I6IHRleHQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgd2lkdGg6IDEwMCU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgb3BhY2l0eTogJHsoeyBvcGVuIH0pID0+IChvcGVuID8gMCA6IDEpfTtcbiAgcG9pbnRlci1ldmVudHM6ICR7KHsgb3BlbiB9KSA9PiAob3BlbiA/ICdub25lJyA6ICdhdXRvJyl9O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAke2dldFRyYW5zaXRpb24oJ3h4RmFzdCcpfTtcblxuICAuYXV0b2NvbXBsZXRlTWVudUl0ZW0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDM0cHg7XG4gIH1cblxuICAuYXV0b2NvbXBsZXRlSW5wdXQ6Zm9jdXMtdmlzaWJsZSArICYge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbmA7XG5cbmNvbnN0IFRyaWdnZXJUZXh0ID0gc3R5bGVkLnNwYW5gXG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLWJsb2NrOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDEycHg7XG4gIHBhZGRpbmctcmlnaHQ6IDMycHg7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuYDtcblxuZXhwb3J0IGNvbnN0IEF1dG9jb21wbGV0ZTIgPSAoe1xuICBvcHRpb25zLFxuICB2YWx1ZSxcbiAgb25DaGFuZ2UsXG4gIGlzQ3JlYXRhYmxlLFxuICBvbkNyZWF0ZSxcbiAgbWVudVBsYWNlbWVudCA9IGRlZmF1bHRQcm9wcy5tZW51UGxhY2VtZW50LFxuICBtZW51V2lkdGgsXG4gIG1lbnVNYXhIZWlnaHQgPSBkZWZhdWx0UHJvcHMubWVudU1heEhlaWdodCxcbiAgbWVudVpJbmRleCxcbiAgcGxhY2Vob2xkZXIsXG4gIGxhYmVsLFxuICBoaW50LFxuICBtZW51SXRlbXNIYXZlRWxsaXBzaXMgPSB0cnVlLFxuICBoYXNQb3J0YWwgPSB0cnVlLFxuICBoYXNFcnJvcixcbiAgZXJyb3JNZXNzYWdlLFxuICBzZWFyY2hGaWVsZCA9ICdjb250ZW50JyxcbiAgLi4ucHJvcHNcbn0pID0+IHtcbiAgY29uc3QgW3F1ZXJ5LCBzZXRRdWVyeV0gPSB1c2VTdGF0ZSgnJyk7XG5cbiAgY29uc3QgaGFuZGxlQ3JlYXRhYmxlQ2hhbmdlID0gb3B0aW9uID0+IHtcbiAgICBpZiAob25DcmVhdGUpIHtcbiAgICAgIGNvbnN0IGlzQ3JlYXRhYmxlT3B0aW9uID0gIW9wdGlvbnMuZmluZChpdGVtID0+IGl0ZW0udmFsdWUgPT09IG9wdGlvbi52YWx1ZSk7XG4gICAgICBpZiAoaXNDcmVhdGFibGVPcHRpb24pIHtcbiAgICAgICAgb25DcmVhdGUob3B0aW9uKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgIH1cbiAgICBvbkNoYW5nZShvcHRpb24pO1xuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUNoYW5nZSA9IG9wdGlvbiA9PiB7XG4gICAgaWYgKGlzQ3JlYXRhYmxlKSB7XG4gICAgICBoYW5kbGVDcmVhdGFibGVDaGFuZ2Uob3B0aW9uKTtcbiAgICB9IGVsc2Uge1xuICAgICAgb25DaGFuZ2Uob3B0aW9uKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgZmlsdGVyZWRPcHRpb25zID0gZ2V0RmlsdGVyZWRPcHRpb25zKHF1ZXJ5LCBvcHRpb25zLCBzZWFyY2hGaWVsZCk7XG5cbiAgY29uc3QgaXNTaG93Q3JlYXRlT3B0aW9uID0gaXNDcmVhdGFibGUgJiYgcXVlcnkubGVuZ3RoID4gMDtcblxuICBjb25zdCBub1Jlc3VsdHMgPSAhQm9vbGVhbihmaWx0ZXJlZE9wdGlvbnMubGVuZ3RoKSAmJiAhaXNTaG93Q3JlYXRlT3B0aW9uO1xuXG4gIGNvbnN0IGZpZWxkTWFyZ2luVG9wID0gbGFiZWwgfHwgaGludCA/ICdiZXR3ZWVuRm9ybUNvbnRyb2xBbmRMYWJlbCcgOiB1bmRlZmluZWQ7XG5cbiAgY29uc3Qgc2VsZWN0ZWRPcHRpb24gPSB1c2VNZW1vKFxuICAgICgpID0+IG9wdGlvbnMuZmluZChvcHRpb24gPT4gb3B0aW9uLnZhbHVlID09PSB2YWx1ZSksXG4gICAgW29wdGlvbnMsIHZhbHVlXSxcbiAgKTtcblxuICBjb25zdCBuZXdPcHRpb24gPSB1c2VNZW1vKCgpID0+ICh7IHZhbHVlOiBxdWVyeSwgY29udGVudDogcXVlcnkgfSksIFtxdWVyeV0pO1xuXG4gIGNvbnN0IHsgcmVmZXJlbmNlLCBmbG9hdGluZywgZmxvYXRpbmdTdHlsZXMgfSA9IHVzZU1lbnVQb3NpdGlvbih7IG1lbnVXaWR0aCwgbWVudVBsYWNlbWVudCB9KTtcblxuICBjb25zdCBPcHRpb25zUm9vdCA9IGhhc1BvcnRhbCA/IEZsb2F0aW5nUG9ydGFsIDogRnJhZ21lbnQ7XG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAgPEdsb2JhbCBzdHlsZXM9e21lbnVJdGVtU3R5bGVzfSAvPlxuICAgICAgPENvbWJvYm94IGFzPVwiZGl2XCIgdmFsdWU9e3NlbGVjdGVkT3B0aW9uIHx8ICcnfSBvbkNoYW5nZT17aGFuZGxlQ2hhbmdlfSB7Li4ucHJvcHN9PlxuICAgICAgICB7KHsgb3BlbiB9KSA9PiB7XG4gICAgICAgICAgY29uc3QgaGFzSXRlbSA9IHNlbGVjdGVkT3B0aW9uPy5pdGVtO1xuICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICA8PlxuICAgICAgICAgICAgICB7bGFiZWwgJiYgPENvbWJvYm94LkxhYmVsIGFzPXtGaWVsZExhYmVsfT57bGFiZWx9PC9Db21ib2JveC5MYWJlbD59XG4gICAgICAgICAgICAgIHtoaW50ICYmIDxGaWVsZEhpbnQ+e2hpbnR9PC9GaWVsZEhpbnQ+fVxuXG4gICAgICAgICAgICAgIDxSb290IG1hcmdpblRvcD17ZmllbGRNYXJnaW5Ub3B9IHJlZj17cmVmZXJlbmNlfSBvcGVuPXtvcGVufSBoYXNFcnJvcj17aGFzRXJyb3J9PlxuICAgICAgICAgICAgICAgIDxDb21ib2JveC5CdXR0b24gYXM9e0JveH0gcG9zaXRpb249XCJyZWxhdGl2ZVwiPlxuICAgICAgICAgICAgICAgICAgPENvbWJvYm94LklucHV0XG4gICAgICAgICAgICAgICAgICAgIGFzPXtJbnB1dEZpZWxkfVxuICAgICAgICAgICAgICAgICAgICBhdXRvQ29tcGxldGU9XCJvZmZcIlxuICAgICAgICAgICAgICAgICAgICBvbkNoYW5nZT17ZXZlbnQgPT4gc2V0UXVlcnkoZXZlbnQudGFyZ2V0LnZhbHVlKX1cbiAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9e3BsYWNlaG9sZGVyfVxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5VmFsdWU9e29wdGlvbiA9PiBvcHRpb24gJiYgb3B0aW9uLmNvbnRlbnR9XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmdSaWdodD1cIjMycHhcIlxuICAgICAgICAgICAgICAgICAgICBoYXNFcnJvcj17aGFzRXJyb3J9XG4gICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cImF1dG9jb21wbGV0ZUlucHV0XCJcbiAgICAgICAgICAgICAgICAgIC8+XG5cbiAgICAgICAgICAgICAgICAgIDxUcmlnZ2VyIG9wZW49e29wZW59IHRhYkluZGV4PXstMX0+XG4gICAgICAgICAgICAgICAgICAgIHtoYXNJdGVtICYmXG4gICAgICAgICAgICAgICAgICAgICAgc2VsZWN0ZWRPcHRpb24uaXRlbSh7XG4gICAgICAgICAgICAgICAgICAgICAgICBpc0FjdGl2ZTogZmFsc2UsXG4gICAgICAgICAgICAgICAgICAgICAgICBpc1NlbGVjdGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGlzRGlzYWJsZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgICAgIH0pfVxuXG4gICAgICAgICAgICAgICAgICAgIHshaGFzSXRlbSAmJiBzZWxlY3RlZE9wdGlvbiAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgPFRyaWdnZXJUZXh0PntzZWxlY3RlZE9wdGlvbj8uY29udGVudH08L1RyaWdnZXJUZXh0PlxuICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgPC9UcmlnZ2VyPlxuXG4gICAgICAgICAgICAgICAgICA8RXhwYW5kSWNvbiAvPlxuICAgICAgICAgICAgICAgIDwvQ29tYm9ib3guQnV0dG9uPlxuXG4gICAgICAgICAgICAgICAgPE9wdGlvbnNSb290PlxuICAgICAgICAgICAgICAgICAgPE1lbnVDYXJkVHJhbnNpdGlvbiBhZnRlckxlYXZlPXsoKSA9PiBzZXRRdWVyeSgnJyl9PlxuICAgICAgICAgICAgICAgICAgICA8Q29tYm9ib3guT3B0aW9uc1xuICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY1xuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cImdybi1jb250ZXh0XCJcbiAgICAgICAgICAgICAgICAgICAgICByZWY9e2Zsb2F0aW5nfVxuICAgICAgICAgICAgICAgICAgICAgIHBsYWNlbWVudD17bWVudVBsYWNlbWVudH1cbiAgICAgICAgICAgICAgICAgICAgICBtYXhIZWlnaHQ9e21lbnVNYXhIZWlnaHR9XG4gICAgICAgICAgICAgICAgICAgICAgYXM9e01lbnVDYXJkfVxuICAgICAgICAgICAgICAgICAgICAgIHpJbmRleD17bWVudVpJbmRleH1cbiAgICAgICAgICAgICAgICAgICAgICBzdHlsZT17ZmxvYXRpbmdTdHlsZXN9XG4gICAgICAgICAgICAgICAgICAgICAgaXNPcGVuPXtvcGVufVxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAge2ZpbHRlcmVkT3B0aW9ucy5tYXAoKG9wdGlvbiwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNob3dHcm91cFRpdGxlID0gZ2V0U2hvd0dyb3VwVGl0bGUoaW5kZXgsIG9wdGlvbiwgZmlsdGVyZWRPcHRpb25zKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPEZyYWdtZW50IGtleT17aW5kZXh9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtzaG93R3JvdXBUaXRsZSAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8TWVudUdyb3VwVGl0bGUgaGFzRGl2aWRlcj17aW5kZXggPiAwfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge29wdGlvbi5ncm91cFRpdGxlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9NZW51R3JvdXBUaXRsZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPENvbWJvYm94Lk9wdGlvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU9e29wdGlvbn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFzPXtGcmFnbWVudH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2FibGVkPXtvcHRpb24uaXNEaXNhYmxlZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7KHsgYWN0aXZlIH0pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgaXNEaXNhYmxlZCA9IG9wdGlvbi5pc0Rpc2FibGVkO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBpc1NlbGVjdGVkID0gb3B0aW9uLnZhbHVlID09PSB2YWx1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgaXNBY3RpdmUgPSAhb3B0aW9uLmlzRGlzYWJsZWQgJiYgYWN0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBoYXNFbGxpcHNpcyA9IG1lbnVJdGVtc0hhdmVFbGxpcHNpcztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG9wdGlvbi5pdGVtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG9wdGlvbi5pdGVtKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzQWN0aXZlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXNTZWxlY3RlZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzRGlzYWJsZWQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYXNFbGxpcHNpcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gPEl0ZW0gaGFzRWxsaXBzaXM9e2hhc0VsbGlwc2lzfT57b3B0aW9uLmNvbnRlbnR9PC9JdGVtPjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Db21ib2JveC5PcHRpb24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvRnJhZ21lbnQ+XG4gICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICAgIHtpc1Nob3dDcmVhdGVPcHRpb24gJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAge2ZpbHRlcmVkT3B0aW9ucy5sZW5ndGggPiAwICYmIDxNZW51SXRlbURpdmlkZXIgLz59XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxDb21ib2JveC5PcHRpb24gdmFsdWU9e25ld09wdGlvbn0gYXM9e0ZyYWdtZW50fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7KHsgYWN0aXZlIH0pID0+IChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJdGVtIGlzQWN0aXZlPXthY3RpdmV9IGhhc0VsbGlwc2lzPXttZW51SXRlbXNIYXZlRWxsaXBzaXN9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QXJyYW5nZSBnYXA9XCJzXCIgdGFnPVwic3BhblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxJY29uIGljb249ezxJY29uUGx1cyAvPn0gY29sb3I9e2FjdGl2ZSA/ICdjb250ZW50JyA6ICdpY29uJ30gLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGUge2BcImAgKyBxdWVyeSArIGBcImB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQXJyYW5nZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvSXRlbT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L0NvbWJvYm94Lk9wdGlvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAge25vUmVzdWx0cyAmJiA8RW1wdHlTdGF0ZSAvPn1cbiAgICAgICAgICAgICAgICAgICAgPC9Db21ib2JveC5PcHRpb25zPlxuICAgICAgICAgICAgICAgICAgPC9NZW51Q2FyZFRyYW5zaXRpb24+XG4gICAgICAgICAgICAgICAgPC9PcHRpb25zUm9vdD5cbiAgICAgICAgICAgICAgPC9Sb290PlxuICAgICAgICAgICAgICB7ZXJyb3JNZXNzYWdlICYmIChcbiAgICAgICAgICAgICAgICA8Qm94IG1hcmdpblRvcD1cImJldHdlZW5Gb3JtQ29udHJvbEFuZExhYmVsXCIgY29sb3I9XCJkYW5nZXJcIj5cbiAgICAgICAgICAgICAgICAgIHtlcnJvck1lc3NhZ2V9XG4gICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8Lz5cbiAgICAgICAgICApO1xuICAgICAgICB9fVxuICAgICAgPC9Db21ib2JveD5cbiAgICA8Lz5cbiAgKTtcbn07XG5cbkF1dG9jb21wbGV0ZTIuTGFiZWwgPSBGaWVsZExhYmVsO1xuQXV0b2NvbXBsZXRlMi5IaW50ID0gRmllbGRIaW50O1xuQXV0b2NvbXBsZXRlMi5JdGVtID0gSXRlbTtcblxuQXV0b2NvbXBsZXRlMi5wcm9wVHlwZXMgPSB7XG4gIG9wdGlvbnM6IFByb3BUeXBlcy5hcnJheSxcbiAgdmFsdWU6IFByb3BUeXBlcy5zdHJpbmcsXG4gIG9uQ2hhbmdlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICBpc0NyZWF0YWJsZTogUHJvcFR5cGVzLmJvb2wsXG4gIG9uQ3JlYXRlOiBQcm9wVHlwZXMuZnVuYyxcbiAgbWVudVBsYWNlbWVudDogdHlwZXMubWVudVBsYWNlbWVudCxcbiAgbWVudVdpZHRoOiB0eXBlcy5kaW1lbnNpb24sXG4gIG1lbnVNYXhIZWlnaHQ6IHR5cGVzLmRpbWVuc2lvbixcbiAgbWVudVpJbmRleDogdHlwZXMuekluZGV4LFxuICBsYWJlbDogdHlwZXMubGFiZWwsXG4gIGhpbnQ6IHR5cGVzLmhpbnQsXG4gIG1lbnVJdGVtc0hhdmVFbGxpcHNpczogUHJvcFR5cGVzLmJvb2wsXG4gIGhhc1BvcnRhbDogUHJvcFR5cGVzLmJvb2wsXG4gIGhhc0Vycm9yOiBQcm9wVHlwZXMuYm9vbCxcbiAgZXJyb3JNZXNzYWdlOiBQcm9wVHlwZXMuc3RyaW5nLFxufTtcbiJdfQ== */",
155
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
156
- });
157
-
158
- export var Autocomplete2 = function Autocomplete2(_ref8) {
159
- var options = _ref8.options,
160
- value = _ref8.value,
161
- onChange = _ref8.onChange,
162
- isCreatable = _ref8.isCreatable,
163
- onCreate = _ref8.onCreate,
164
- _ref8$menuPlacement = _ref8.menuPlacement,
165
- menuPlacement = _ref8$menuPlacement === void 0 ? defaultProps.menuPlacement : _ref8$menuPlacement,
166
- menuWidth = _ref8.menuWidth,
167
- _ref8$menuMaxHeight = _ref8.menuMaxHeight,
168
- menuMaxHeight = _ref8$menuMaxHeight === void 0 ? defaultProps.menuMaxHeight : _ref8$menuMaxHeight,
169
- menuZIndex = _ref8.menuZIndex,
170
- placeholder = _ref8.placeholder,
171
- label = _ref8.label,
172
- hint = _ref8.hint,
173
- _ref8$menuItemsHaveEl = _ref8.menuItemsHaveEllipsis,
174
- menuItemsHaveEllipsis = _ref8$menuItemsHaveEl === void 0 ? true : _ref8$menuItemsHaveEl,
175
- _ref8$hasPortal = _ref8.hasPortal,
176
- hasPortal = _ref8$hasPortal === void 0 ? true : _ref8$hasPortal,
177
- hasError = _ref8.hasError,
178
- errorMessage = _ref8.errorMessage,
179
- _ref8$searchField = _ref8.searchField,
180
- searchField = _ref8$searchField === void 0 ? 'content' : _ref8$searchField,
181
- props = _objectWithoutProperties(_ref8, _excluded2);
182
-
183
- var _useState = useState(''),
184
- _useState2 = _slicedToArray(_useState, 2),
185
- query = _useState2[0],
186
- setQuery = _useState2[1];
187
-
188
- var handleCreatableChange = function handleCreatableChange(option) {
189
- if (onCreate) {
190
- var isCreatableOption = !options.find(function (item) {
191
- return item.value === option.value;
192
- });
193
-
194
- if (isCreatableOption) {
195
- onCreate(option);
196
- return;
197
- }
198
- }
199
-
200
- onChange(option);
201
- };
202
-
203
- var handleChange = function handleChange(option) {
204
- if (isCreatable) {
205
- handleCreatableChange(option);
206
- } else {
207
- onChange(option);
208
- }
209
- };
210
-
211
- var filteredOptions = getFilteredOptions(query, options, searchField);
212
- var isShowCreateOption = isCreatable && query.length > 0;
213
- var noResults = !Boolean(filteredOptions.length) && !isShowCreateOption;
214
- var fieldMarginTop = label || hint ? 'betweenFormControlAndLabel' : undefined;
215
- var selectedOption = useMemo(function () {
216
- return options.find(function (option) {
217
- return option.value === value;
218
- });
219
- }, [options, value]);
220
- var newOption = useMemo(function () {
221
- return {
222
- value: query,
223
- content: query
224
- };
225
- }, [query]);
226
-
227
- var _useMenuPosition = useMenuPosition({
228
- menuWidth: menuWidth,
229
- menuPlacement: menuPlacement
230
- }),
231
- reference = _useMenuPosition.reference,
232
- floating = _useMenuPosition.floating,
233
- floatingStyles = _useMenuPosition.floatingStyles;
234
-
235
- var OptionsRoot = hasPortal ? FloatingPortal : Fragment;
236
- return ___EmotionJSX(React.Fragment, null, ___EmotionJSX(Global, {
237
- styles: menuItemStyles
238
- }), ___EmotionJSX(Combobox, _extends({
239
- as: "div",
240
- value: selectedOption || '',
241
- onChange: handleChange
242
- }, props), function (_ref9) {
243
- var open = _ref9.open;
244
- var hasItem = selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.item;
245
- return ___EmotionJSX(React.Fragment, null, label && ___EmotionJSX(Combobox.Label, {
246
- as: FieldLabel
247
- }, label), hint && ___EmotionJSX(FieldHint, null, hint), ___EmotionJSX(Root, {
248
- marginTop: fieldMarginTop,
249
- ref: reference,
250
- open: open,
251
- hasError: hasError
252
- }, ___EmotionJSX(Combobox.Button, {
253
- as: Box,
254
- position: "relative"
255
- }, ___EmotionJSX(Combobox.Input, {
256
- as: InputField,
257
- autoComplete: "off",
258
- onChange: function onChange(event) {
259
- return setQuery(event.target.value);
260
- },
261
- placeholder: placeholder,
262
- displayValue: function displayValue(option) {
263
- return option && option.content;
264
- },
265
- paddingRight: "32px",
266
- hasError: hasError,
267
- className: "autocompleteInput"
268
- }), ___EmotionJSX(Trigger, {
269
- open: open,
270
- tabIndex: -1
271
- }, hasItem && selectedOption.item({
272
- isActive: false,
273
- isSelected: false,
274
- isDisabled: false
275
- }), !hasItem && selectedOption && ___EmotionJSX(TriggerText, null, selectedOption === null || selectedOption === void 0 ? void 0 : selectedOption.content)), ___EmotionJSX(ExpandIcon, null)), ___EmotionJSX(OptionsRoot, null, ___EmotionJSX(MenuCardTransition, {
276
- afterLeave: function afterLeave() {
277
- return setQuery('');
278
- }
279
- }, ___EmotionJSX(Combobox.Options, {
280
- static: true,
281
- className: "grn-context",
282
- ref: floating,
283
- placement: menuPlacement,
284
- maxHeight: menuMaxHeight,
285
- as: MenuCard,
286
- zIndex: menuZIndex,
287
- style: floatingStyles,
288
- isOpen: open
289
- }, filteredOptions.map(function (option, index) {
290
- var showGroupTitle = getShowGroupTitle(index, option, filteredOptions);
291
- return ___EmotionJSX(Fragment, {
292
- key: index
293
- }, showGroupTitle && ___EmotionJSX(MenuGroupTitle, {
294
- hasDivider: index > 0
295
- }, option.groupTitle), ___EmotionJSX(Combobox.Option, {
296
- value: option,
297
- as: Fragment,
298
- disabled: option.isDisabled
299
- }, function (_ref10) {
300
- var active = _ref10.active;
301
- var isDisabled = option.isDisabled;
302
- var isSelected = option.value === value;
303
- var isActive = !option.isDisabled && active;
304
- var hasEllipsis = menuItemsHaveEllipsis;
305
-
306
- if (option.item) {
307
- return option.item({
308
- isActive: isActive,
309
- isSelected: isSelected,
310
- isDisabled: isDisabled,
311
- hasEllipsis: hasEllipsis
312
- });
313
- }
314
-
315
- return ___EmotionJSX(Item, {
316
- hasEllipsis: hasEllipsis
317
- }, option.content);
318
- }));
319
- }), isShowCreateOption && ___EmotionJSX(React.Fragment, null, filteredOptions.length > 0 && ___EmotionJSX(MenuItemDivider, null), ___EmotionJSX(Combobox.Option, {
320
- value: newOption,
321
- as: Fragment
322
- }, function (_ref11) {
323
- var active = _ref11.active;
324
- return ___EmotionJSX(Item, {
325
- isActive: active,
326
- hasEllipsis: menuItemsHaveEllipsis
327
- }, ___EmotionJSX(Arrange, {
328
- gap: "s",
329
- tag: "span"
330
- }, ___EmotionJSX(Icon, {
331
- icon: ___EmotionJSX(IconPlus, null),
332
- color: active ? 'content' : 'icon'
333
- }), "Create ", "\"" + query + "\""));
334
- })), noResults && ___EmotionJSX(EmptyState, null))))), errorMessage && ___EmotionJSX(Box, {
335
- marginTop: "betweenFormControlAndLabel",
336
- color: "danger"
337
- }, errorMessage));
338
- }));
339
- };
340
- Autocomplete2.Label = FieldLabel;
341
- Autocomplete2.Hint = FieldHint;
342
- Autocomplete2.Item = Item;
343
- Autocomplete2.propTypes = {
344
- options: PropTypes.array,
345
- value: PropTypes.string,
346
- onChange: PropTypes.func.isRequired,
347
- isCreatable: PropTypes.bool,
348
- onCreate: PropTypes.func,
349
- menuPlacement: types.menuPlacement,
350
- menuWidth: types.dimension,
351
- menuMaxHeight: types.dimension,
352
- menuZIndex: types.zIndex,
353
- label: types.label,
354
- hint: types.hint,
355
- menuItemsHaveEllipsis: PropTypes.bool,
356
- hasPortal: PropTypes.bool,
357
- hasError: PropTypes.bool,
358
- errorMessage: PropTypes.string
359
- };