@commercetools-uikit/selectable-search-input 16.12.0 → 17.0.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.
- package/README.md +4 -0
- package/dist/commercetools-uikit-selectable-search-input.cjs.dev.js +48 -22
- package/dist/commercetools-uikit-selectable-search-input.cjs.prod.js +38 -16
- package/dist/commercetools-uikit-selectable-search-input.esm.js +46 -23
- package/dist/declarations/src/selectable-search-input.d.ts +2 -0
- package/package.json +9 -9
package/README.md
CHANGED
|
@@ -47,6 +47,8 @@ const Example = () => (
|
|
|
47
47
|
{ value: 'one', label: 'One' },
|
|
48
48
|
{ value: 'two', label: 'Two' },
|
|
49
49
|
]}
|
|
50
|
+
selectDataProps={[{ 'prop-1': 'value-1' }, { 'prop-2': 'value-2' }]}
|
|
51
|
+
inputDataProps={[{ 'prop-3': 'value-1' }, { 'prop-4': 'value-2' }]}
|
|
50
52
|
/>
|
|
51
53
|
);
|
|
52
54
|
|
|
@@ -87,6 +89,8 @@ export default Example;
|
|
|
87
89
|
| `closeMenuOnSelect` | `ReactSelectProps['closeMenuOnSelect']` | | | Whether the menu should close after a value is selected. Defaults to `true`.
<br>
[Props from React select was used](https://react-select.com/props) |
|
|
88
90
|
| `menuHorizontalConstraint` | `union`<br/>Possible values:<br/>`3 , 4 , 5` | | `3` | Horizontal size limit for the dropdown menu. |
|
|
89
91
|
| `showSubmitButton` | `boolean` | | `true` | Show submit button in the input |
|
|
92
|
+
| `selectDataProps` | `Record<string, string>` | | | used to pass `data-*` props to the select component.
eg: selectDataProps={\[{ 'prop-1': 'value-1' }, { 'prop-2': 'value-2' }]} |
|
|
93
|
+
| `inputDataProps` | `Record<string, string>` | | | used to pass `data-*` props to the input element.
eg: inputDataProps={\[{ 'prop-1': 'value-1' }, { 'prop-2': 'value-2' }]} |
|
|
90
94
|
|
|
91
95
|
## Signatures
|
|
92
96
|
|
|
@@ -14,6 +14,9 @@ var _defineProperty = require('@babel/runtime-corejs3/helpers/defineProperty');
|
|
|
14
14
|
var _slicedToArray = require('@babel/runtime-corejs3/helpers/slicedToArray');
|
|
15
15
|
var _styled = require('@emotion/styled/base');
|
|
16
16
|
var _pt = require('prop-types');
|
|
17
|
+
var _Object$fromEntries = require('@babel/runtime-corejs3/core-js-stable/object/from-entries');
|
|
18
|
+
var _mapInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/map');
|
|
19
|
+
var _Object$entries = require('@babel/runtime-corejs3/core-js-stable/object/entries');
|
|
17
20
|
var _flatMapInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/flat-map');
|
|
18
21
|
var _findInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/find');
|
|
19
22
|
var _trimInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/trim');
|
|
@@ -44,6 +47,9 @@ var _Object$defineProperties__default = /*#__PURE__*/_interopDefault(_Object$def
|
|
|
44
47
|
var _Object$defineProperty__default = /*#__PURE__*/_interopDefault(_Object$defineProperty);
|
|
45
48
|
var _styled__default = /*#__PURE__*/_interopDefault(_styled);
|
|
46
49
|
var _pt__default = /*#__PURE__*/_interopDefault(_pt);
|
|
50
|
+
var _Object$fromEntries__default = /*#__PURE__*/_interopDefault(_Object$fromEntries);
|
|
51
|
+
var _mapInstanceProperty__default = /*#__PURE__*/_interopDefault(_mapInstanceProperty);
|
|
52
|
+
var _Object$entries__default = /*#__PURE__*/_interopDefault(_Object$entries);
|
|
47
53
|
var _flatMapInstanceProperty__default = /*#__PURE__*/_interopDefault(_flatMapInstanceProperty);
|
|
48
54
|
var _findInstanceProperty__default = /*#__PURE__*/_interopDefault(_findInstanceProperty);
|
|
49
55
|
var _trimInstanceProperty__default = /*#__PURE__*/_interopDefault(_trimInstanceProperty);
|
|
@@ -181,22 +187,25 @@ const createSelectableSelectStyles = _ref => {
|
|
|
181
187
|
});
|
|
182
188
|
};
|
|
183
189
|
|
|
184
|
-
const _excluded = ["id"];
|
|
190
|
+
const _excluded = ["id", "dataProps"];
|
|
185
191
|
function ownKeys$1(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; }
|
|
186
192
|
function _objectSpread$1(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$1(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$1(Object(source))).call(_context2, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } return target; }
|
|
187
193
|
const SingleValue = _ref => {
|
|
188
194
|
let id = _ref.id,
|
|
195
|
+
dataProps = _ref.dataProps,
|
|
189
196
|
props = _objectWithoutProperties(_ref, _excluded);
|
|
190
197
|
return jsxRuntime.jsx(Select.components.SingleValue, _objectSpread$1(_objectSpread$1({}, props), {}, {
|
|
191
|
-
children: jsxRuntime.jsx("label", {
|
|
192
|
-
htmlFor: id
|
|
198
|
+
children: jsxRuntime.jsx("label", _objectSpread$1(_objectSpread$1({
|
|
199
|
+
htmlFor: id
|
|
200
|
+
}, dataProps), {}, {
|
|
193
201
|
children: props.children
|
|
194
|
-
})
|
|
202
|
+
}))
|
|
195
203
|
}));
|
|
196
204
|
};
|
|
197
205
|
SingleValue.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
198
|
-
|
|
199
|
-
|
|
206
|
+
children: _pt__default["default"].node,
|
|
207
|
+
dataProps: _pt__default["default"].objectOf(_pt__default["default"].string),
|
|
208
|
+
id: _pt__default["default"].string
|
|
200
209
|
} : {};
|
|
201
210
|
const SelectableSelect = props => {
|
|
202
211
|
const intl = reactIntl.useIntl();
|
|
@@ -234,9 +243,10 @@ const SelectableSelect = props => {
|
|
|
234
243
|
maxMenuHeight: props.maxMenuHeight,
|
|
235
244
|
closeMenuOnSelect: props.closeMenuOnSelect,
|
|
236
245
|
components: {
|
|
237
|
-
SingleValue: innerProps => jsxRuntime.jsx(SingleValue, _objectSpread$1(
|
|
238
|
-
id: props.id
|
|
239
|
-
|
|
246
|
+
SingleValue: innerProps => jsxRuntime.jsx(SingleValue, _objectSpread$1({
|
|
247
|
+
id: props.id,
|
|
248
|
+
dataProps: props.dataProps
|
|
249
|
+
}, innerProps)),
|
|
240
250
|
DropdownIndicator: selectUtils.DropdownIndicator
|
|
241
251
|
},
|
|
242
252
|
options: props.options,
|
|
@@ -262,12 +272,13 @@ SelectableSelect.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
|
262
272
|
handleDropdownFocus: _pt__default["default"].func.isRequired,
|
|
263
273
|
handleDropdownBlur: _pt__default["default"].func.isRequired,
|
|
264
274
|
textInputRef: _pt__default["default"].any.isRequired,
|
|
265
|
-
selectedOption: _pt__default["default"].any
|
|
275
|
+
selectedOption: _pt__default["default"].any,
|
|
276
|
+
dataProps: _pt__default["default"].objectOf(_pt__default["default"].string)
|
|
266
277
|
} : {};
|
|
267
278
|
var SelectableSelect$1 = SelectableSelect;
|
|
268
279
|
|
|
269
280
|
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; }
|
|
270
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var
|
|
281
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var _context4, _context5; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default["default"](_context4 = ownKeys(Object(source), !0)).call(_context4, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](target, _Object$getOwnPropertyDescriptors__default["default"](source)) : _forEachInstanceProperty__default["default"](_context5 = ownKeys(Object(source))).call(_context5, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } return target; }
|
|
271
282
|
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)."; }
|
|
272
283
|
const Container = /*#__PURE__*/_styled__default["default"]("div", process.env.NODE_ENV === "production" ? {
|
|
273
284
|
target: "encv1cf0"
|
|
@@ -280,7 +291,7 @@ const Container = /*#__PURE__*/_styled__default["default"]("div", process.env.NO
|
|
|
280
291
|
} : {
|
|
281
292
|
name: "zjik7",
|
|
282
293
|
styles: "display:flex",
|
|
283
|
-
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNlbGVjdGFibGUtc2VhcmNoLWlucHV0LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUErQjRCIiwiZmlsZSI6InNlbGVjdGFibGUtc2VhcmNoLWlucHV0LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIHR5cGUgTW91c2VFdmVudCxcbiAgdHlwZSBLZXlib2FyZEV2ZW50LFxuICB0eXBlIENoYW5nZUV2ZW50LFxuICB0eXBlIFJlYWN0Tm9kZSxcbiAgdXNlU3RhdGUsXG4gIHVzZUNhbGxiYWNrLFxuICB1c2VSZWYsXG59IGZyb20gJ3JlYWN0JztcbmltcG9ydCBTZWNvbmRhcnlJY29uQnV0dG9uIGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3NlY29uZGFyeS1pY29uLWJ1dHRvbic7XG5pbXBvcnQgQ29uc3RyYWludHMgZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvY29uc3RyYWludHMnO1xuaW1wb3J0IHsgU2VhcmNoSWNvbiwgQ2xvc2VJY29uIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvaWNvbnMnO1xuaW1wb3J0IHtcbiAgY3JlYXRlU2VxdWVudGlhbElkLFxuICBmaWx0ZXJEYXRhQXR0cmlidXRlcyxcbiAgd2FybmluZyxcbn0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvdXRpbHMnO1xuaW1wb3J0IHsgd2FybklmTWVudVBvcnRhbFByb3BzQXJlTWlzc2luZyB9IGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3NlbGVjdC11dGlscyc7XG5pbXBvcnQge1xuICBnZXRDbGVhckljb25CdXR0b25TdHlsZXMsXG4gIGdldFNlYXJjaEljb25CdXR0b25TdHlsZXMsXG4gIGdldFNlbGVjdGFibGVTZWFyY2hJbnB1dENvbnRhaW5lclN0eWxlcyxcbiAgZ2V0U2VsZWN0YWJsZVNlYXJjaElucHV0U3R5bGVzLFxufSBmcm9tICcuL3NlbGVjdGFibGUtc2VhcmNoLWlucHV0LnN0eWxlcyc7XG5pbXBvcnQgU2VsZWN0YWJsZVNlbGVjdCBmcm9tICcuL3NlbGVjdGFibGUtc2VsZWN0JztcbmltcG9ydCB7IHVzZUZpZWxkSWQsIHVzZVRvZ2dsZVN0YXRlIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvaG9va3MnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgZGVzaWduVG9rZW5zIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvZGVzaWduLXN5c3RlbSc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgeyB0eXBlIFByb3BzIGFzIFJlYWN0U2VsZWN0UHJvcHMgfSBmcm9tICdyZWFjdC1zZWxlY3QnO1xuXG5jb25zdCBDb250YWluZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuYDtcblxuY29uc3QgZ2V0VGV4dElucHV0TmFtZSA9IChuYW1lPzogc3RyaW5nKSA9PlxuICBuYW1lID8gYCR7bmFtZX0udGV4dElucHV0YCA6IHVuZGVmaW5lZDtcblxuY29uc3QgZ2V0RHJvcGRvd25OYW1lID0gKG5hbWU/OiBzdHJpbmcpID0+XG4gIG5hbWUgPyBgJHtuYW1lfS5kcm9wZG93bmAgOiB1bmRlZmluZWQ7XG5cbmV4cG9ydCB0eXBlIFRDdXN0b21FdmVudCA9IHtcbiAgdGFyZ2V0OiB7XG4gICAgaWQ/OiBzdHJpbmc7XG4gICAgbmFtZT86IHN0cmluZztcbiAgICB2YWx1ZT86IHN0cmluZyB8IHN0cmluZ1tdIHwgbnVsbDtcbiAgfTtcbiAgcGVyc2lzdD86ICgpID0+IHZvaWQ7XG59O1xuXG5leHBvcnQgdHlwZSBUVmFsdWUgPSB7XG4gIHRleHQ6IHN0cmluZztcbiAgb3B0aW9uOiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBUT3B0aW9uID0ge1xuICB2YWx1ZTogc3RyaW5nO1xuICBsYWJlbD86IFJlYWN0Tm9kZTtcbn07XG5cbmV4cG9ydCB0eXBlIFRPcHRpb25PYmplY3QgPSB7XG4gIG9wdGlvbnM6IFRPcHRpb25bXTtcbn07XG5cbmV4cG9ydCB0eXBlIFRPcHRpb25zID0gVE9wdGlvbltdIHwgVE9wdGlvbk9iamVjdFtdO1xuXG5leHBvcnQgdHlwZSBUU2VsZWN0YWJsZVNlYXJjaElucHV0UHJvcHMgPSB7XG4gIC8qKlxuICAgKiBVc2VkIGFzIEhUTUwgaWQgcHJvcGVydHkuIEFuIGlkIGlzIGF1dG8tZ2VuZXJhdGVkIHdoZW4gaXQgaXMgbm90IHNwZWNpZmllZC5cbiAgICovXG4gIGlkPzogc3RyaW5nO1xuICAvKipcbiAgICogVXNlZCBhcyBIVE1MIGF1dG9jb21wbGV0ZSBwcm9wZXJ0eVxuICAgKi9cbiAgYXV0b0NvbXBsZXRlPzogc3RyaW5nO1xuICAvKipcbiAgICogSW5kaWNhdGUgaWYgdGhlIHZhbHVlIGVudGVyZWQgaW4gdGhlIGlucHV0IGlzIGludmFsaWQuXG4gICAqL1xuICAnYXJpYS1pbnZhbGlkJz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBIVE1MIElEIG9mIGFuIGVsZW1lbnQgY29udGFpbmluZyBhbiBlcnJvciBtZXNzYWdlIHJlbGF0ZWQgdG8gdGhlIGlucHV0LlxuICAgKi9cbiAgJ2FyaWEtZXJyb3JtZXNzYWdlJz86IHN0cmluZztcbiAgLyoqXG4gICAqIFVzZWQgYXMgSFRNTCBuYW1lIG9mIHRoZSBpbnB1dCBjb21wb25lbnQgcHJvcGVydHkuXG4gICAqL1xuICBuYW1lPzogc3RyaW5nO1xuICAvKipcbiAgICogVmFsdWUgb2YgdGhlIGlucHV0LiBDb25zaXN0cyBvZiB0ZXh0IGlucHV0IGFuZCBzZWxlY3RlZCBvcHRpb24uXG4gICAqL1xuICB2YWx1ZTogVFZhbHVlO1xuICAvKipcbiAgICogQ2FsbGVkIHdpdGggdGhlIGV2ZW50IG9mIHRoZSBpbnB1dCBvciBkcm9wZG93biB3aGVuIGVpdGhlciB0aGUgc2VsZWN0YWJsZSBkcm9wZG93biBvciB0aGUgdGV4dCBpbnB1dCBoYXZlIGNoYW5nZWQuXG4gICAqIFRoZSBjaGFuZ2UgZXZlbnQgZnJvbSB0aGUgdGV4dCBpbnB1dCBoYXMgYSBzdWZmaXggb2YgYC50ZXh0SW5wdXRgIGFuZCB0aGUgY2hhbmdlIGV2ZW50IGZyb20gdGhlIGRyb3Bkb3duIGhhcyBhIHN1ZmZpeCBvZiBgLmRyb3Bkb3duYC5cbiAgICovXG4gIG9uQ2hhbmdlPzogKGV2ZW50OiBUQ3VzdG9tRXZlbnQpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiBpbnB1dCBpcyBibHVycmVkXG4gICAqL1xuICBvbkJsdXI/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGlucHV0IGlzIGZvY3VzZWRcbiAgICovXG4gIG9uRm9jdXM/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIEhhbmRsZXIgd2hlbiB0aGUgc2VhcmNoIGJ1dHRvbiBpcyBjbGlja2VkLlxuICAgKi9cbiAgb25TdWJtaXQ6ICh2YWx1ZTogVFZhbHVlKSA9PiB2b2lkO1xuICAvKipcbiAgICogSGFuZGxlciB3aGVuIHRoZSBjbGVhciBidXR0b24gaXMgY2xpY2tlZC5cbiAgICovXG4gIG9uUmVzZXQ/OiAoKSA9PiB2b2lkO1xuICAvKipcbiAgICogRm9jdXMgdGhlIGlucHV0IG9uIGluaXRpYWwgcmVuZGVyXG4gICAqL1xuICBpc0F1dG9mb2N1c3NlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgdGhhdCB0aGUgaW5wdXQgY2Fubm90IGJlIG1vZGlmaWVkIChlLmcgbm90IGF1dGhvcml6ZWQsIG9yIGNoYW5nZXMgY3VycmVudGx5IHNhdmluZykuXG4gICAqL1xuICBpc0Rpc2FibGVkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGF0IHRoZSBmaWVsZCBpcyBkaXNwbGF5aW5nIHJlYWQtb25seSBjb250ZW50XG4gICAqL1xuICBpc1JlYWRPbmx5PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyBpZiB0aGUgaW5wdXQgaGFzIGludmFsaWQgdmFsdWVzXG4gICAqL1xuICBoYXNFcnJvcj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaWYgdGhlIGlucHV0IGhhcyB3YXJuaW5nIHZhbHVlc1xuICAgKi9cbiAgaGFzV2FybmluZz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBQbGFjZWhvbGRlciB0ZXh0IGZvciB0aGUgaW5wdXRcbiAgICovXG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xuICAvKipcbiAgICogSW5kaWNhdGVzIGlmIHRoZSBpbnB1dCBzaG91bGQgYmUgY2xlYXJlZCB3aGVuIHRoZSBjbGVhciBidXR0b24gaXMgY2xpY2tlZC5cbiAgICogRGVmYXVsdHMgdG8gdHJ1ZS5cbiAgICpcbiAgICovXG4gIGlzQ2xlYXJhYmxlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEhvcml6b250YWwgc2l6ZSBsaW1pdCBvZiB0aGUgaW5wdXQgZmllbGRzLlxuICAgKi9cbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQ/OiAxMCB8IDExIHwgMTIgfCAxMyB8IDE0IHwgMTUgfCAxNiB8ICdzY2FsZScgfCAnYXV0byc7XG4gIC8qKlxuICAgKiBBcnJheSBvZiBvcHRpb25zIHRoYXQgcG9wdWxhdGUgdGhlIHNlbGVjdCBtZW51XG4gICAqL1xuICBvcHRpb25zOiBUT3B0aW9ucztcbiAgLyoqXG4gICAqIHotaW5kZXggdmFsdWUgZm9yIHRoZSBtZW51IHBvcnRhbFxuICAgKiA8YnI+XG4gICAqIFVzZSBpbiBjb25qdW5jdGlvbiB3aXRoIGBtZW51UG9ydGFsVGFyZ2V0YFxuICAgKi9cbiAgbWVudVBvcnRhbFpJbmRleD86IG51bWJlcjtcbiAgLyoqXG4gICAqIERvbSBlbGVtZW50IHRvIHBvcnRhbCB0aGUgc2VsZWN0IG1lbnUgdG9cbiAgICogPGJyPlxuICAgKiBbUHJvcHMgZnJvbSBSZWFjdCBzZWxlY3Qgd2FzIHVzZWRdKGh0dHBzOi8vcmVhY3Qtc2VsZWN0LmNvbS9wcm9wcylcbiAgICovXG4gIG1lbnVQb3J0YWxUYXJnZXQ/OiBSZWFjdFNlbGVjdFByb3BzWydtZW51UG9ydGFsVGFyZ2V0J107XG4gIC8qKlxuICAgKiB3aGV0aGVyIHRoZSBtZW51IHNob3VsZCBibG9jayBzY3JvbGwgd2hpbGUgb3BlblxuICAgKiA8YnI+XG4gICAqIFtQcm9wcyBmcm9tIFJlYWN0IHNlbGVjdCB3YXMgdXNlZF0oaHR0cHM6Ly9yZWFjdC1zZWxlY3QuY29tL3Byb3BzKVxuICAgKi9cbiAgbWVudVNob3VsZEJsb2NrU2Nyb2xsPzogUmVhY3RTZWxlY3RQcm9wc1snbWVudVNob3VsZEJsb2NrU2Nyb2xsJ107XG4gIC8qKlxuICAgKiBIYW5kbGUgY2hhbmdlIGV2ZW50cyBvbiB0aGUgbWVudSBpbnB1dFxuICAgKiA8YnI+XG4gICAqIFtQcm9wcyBmcm9tIFJlYWN0IHNlbGVjdCB3YXMgdXNlZF0oaHR0cHM6Ly9yZWFjdC1zZWxlY3QuY29tL3Byb3BzKVxuICAgKi9cbiAgb25NZW51SW5wdXRDaGFuZ2U/OiBSZWFjdFNlbGVjdFByb3BzWydvbklucHV0Q2hhbmdlJ107XG4gIC8qKlxuICAgKiBDYW4gYmUgdXNlZCB0byByZW5kZXIgYSBjdXN0b20gdmFsdWUgd2hlbiB0aGVyZSBhcmUgbm8gb3B0aW9ucyAoZWl0aGVyIGJlY2F1c2Ugb2Ygbm8gc2VhcmNoIHJlc3VsdHMsIG9yIGFsbCBvcHRpb25zIGhhdmUgYmVlbiB1c2VkLCBvciB0aGVyZSB3ZXJlIG5vbmUgaW4gdGhlIGZpcnN0IHBsYWNlKS4gR2V0cyBjYWxsZWQgd2l0aCB7IGlucHV0VmFsdWU6IFN0cmluZyB9LlxuICAgKiA8YnIgLz5cbiAgICogYGlucHV0VmFsdWVgIHdpbGwgYmUgYW4gZW1wdHkgc3RyaW5nIHdoZW4gbm8gc2VhcmNoIHRleHQgaXMgcHJlc2VudC5cbiAgICogPGJyPlxuICAgKiBbUHJvcHMgZnJvbSBSZWFjdCBzZWxlY3Qgd2FzIHVzZWRdKGh0dHBzOi8vcmVhY3Qtc2VsZWN0LmNvbS9wcm9wcylcbiAgICovXG4gIG5vTWVudU9wdGlvbnNNZXNzYWdlPzogUmVhY3RTZWxlY3RQcm9wc1snbm9PcHRpb25zTWVzc2FnZSddO1xuICAvKipcbiAgICogV2hldGhlciB0byBlbmFibGUgc2VhcmNoIGZ1bmN0aW9uYWxpdHkuXG4gICAqIDxicj5cbiAgICogW1Byb3BzIGZyb20gUmVhY3Qgc2VsZWN0IHdhcyB1c2VkXShodHRwczovL3JlYWN0LXNlbGVjdC5jb20vcHJvcHMpXG4gICAqL1xuICBpc01lbnVTZWFyY2hhYmxlPzogUmVhY3RTZWxlY3RQcm9wc1snaXNTZWFyY2hhYmxlJ107XG4gIC8qKlxuICAgKiBNYXhpbXVtIGhlaWdodCBvZiB0aGUgbWVudSBiZWZvcmUgc2Nyb2xsaW5nXG4gICAqIDxicj5cbiAgICogW1Byb3BzIGZyb20gUmVhY3Qgc2VsZWN0IHdhcyB1c2VkXShodHRwczovL3JlYWN0LXNlbGVjdC5jb20vcHJvcHMpXG4gICAqL1xuICBtYXhNZW51SGVpZ2h0PzogUmVhY3RTZWxlY3RQcm9wc1snbWF4TWVudUhlaWdodCddO1xuICAvKipcbiAgICogV2hldGhlciB0aGUgbWVudSBzaG91bGQgY2xvc2UgYWZ0ZXIgYSB2YWx1ZSBpcyBzZWxlY3RlZC4gRGVmYXVsdHMgdG8gYHRydWVgLlxuICAgKiA8YnI+XG4gICAqIFtQcm9wcyBmcm9tIFJlYWN0IHNlbGVjdCB3YXMgdXNlZF0oaHR0cHM6Ly9yZWFjdC1zZWxlY3QuY29tL3Byb3BzKVxuICAgKi9cbiAgY2xvc2VNZW51T25TZWxlY3Q/OiBSZWFjdFNlbGVjdFByb3BzWydjbG9zZU1lbnVPblNlbGVjdCddO1xuICAvKipcbiAgICogSG9yaXpvbnRhbCBzaXplIGxpbWl0IGZvciB0aGUgZHJvcGRvd24gbWVudS5cbiAgICovXG4gIG1lbnVIb3Jpem9udGFsQ29uc3RyYWludD86IDMgfCA0IHwgNTtcbiAgLyoqXG4gICAqIFNob3cgc3VibWl0IGJ1dHRvbiBpbiB0aGUgaW5wdXRcbiAgICovXG4gIHNob3dTdWJtaXRCdXR0b24/OiBib29sZWFuO1xufTtcblxuY29uc3QgZGVmYXVsdFByb3BzOiBQaWNrPFxuICBUU2VsZWN0YWJsZVNlYXJjaElucHV0UHJvcHMsXG4gIHwgJ2hvcml6b250YWxDb25zdHJhaW50J1xuICB8ICdpc0NsZWFyYWJsZSdcbiAgfCAnbWVudUhvcml6b250YWxDb25zdHJhaW50J1xuICB8ICdzaG93U3VibWl0QnV0dG9uJ1xuICB8ICdtZW51UG9ydGFsWkluZGV4J1xuICB8ICdvcHRpb25zJ1xuPiA9IHtcbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQ6ICdzY2FsZScsXG4gIGlzQ2xlYXJhYmxlOiB0cnVlLFxuICBtZW51SG9yaXpvbnRhbENvbnN0cmFpbnQ6IDMsXG4gIHNob3dTdWJtaXRCdXR0b246IHRydWUsXG4gIG1lbnVQb3J0YWxaSW5kZXg6IDEsXG4gIG9wdGlvbnM6IFtdLFxufTtcblxuY29uc3Qgc2VsZWN0YWJsZVNlYXJjaElucHV0U2VxdWVudGlhbElkID0gY3JlYXRlU2VxdWVudGlhbElkKFxuICAnc2VsZWN0YWJsZS1zZWFyY2gtaW5wdXQtJ1xuKTtcblxuY29uc3QgaXNPcHRpb25PYmplY3QgPSAoXG4gIG9wdGlvbjogVE9wdGlvbiB8IFRPcHRpb25PYmplY3Rcbik6IG9wdGlvbiBpcyBUT3B0aW9uT2JqZWN0ID0+IChvcHRpb24gYXMgVE9wdGlvbk9iamVjdCkub3B0aW9ucyAhPT0gdW5kZWZpbmVkO1xuXG5jb25zdCBTZWxlY3RhYmxlU2VhcmNoSW5wdXQgPSAocHJvcHM6IFRTZWxlY3RhYmxlU2VhcmNoSW5wdXRQcm9wcykgPT4ge1xuICBjb25zdCBbZHJvcGRvd25IYXNGb2N1cywgdG9nZ2xlRHJvcGRvd25IYXNGb2N1c10gPSB1c2VUb2dnbGVTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtzZWFyY2hWYWx1ZSwgc2V0U2VhcmNoVmFsdWVdID0gdXNlU3RhdGUocHJvcHMudmFsdWUudGV4dCB8fCAnJyk7XG4gIGNvbnN0IGNvbnRhaW5lclJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbCk7XG4gIGNvbnN0IHRleHRJbnB1dFJlZiA9IHVzZVJlZjxIVE1MSW5wdXRFbGVtZW50PihudWxsKTtcblxuICBjb25zdCBvcHRpb25zV2l0aG91dEdyb3VwcyA9IHByb3BzLm9wdGlvbnMuZmxhdE1hcCgob3B0aW9uKSA9PiB7XG4gICAgaWYgKGlzT3B0aW9uT2JqZWN0KG9wdGlvbikpIHtcbiAgICAgIHJldHVybiBvcHRpb24ub3B0aW9ucztcbiAgICB9XG4gICAgcmV0dXJuIG9wdGlvbjtcbiAgfSk7XG5cbiAgY29uc3Qgc2VsZWN0ZWRPcHRpb24gPSBvcHRpb25zV2l0aG91dEdyb3Vwcy5maW5kKFxuICAgIChvcHRpb24pID0+IG9wdGlvbi52YWx1ZSA9PT0gcHJvcHMudmFsdWUub3B0aW9uXG4gICk7XG5cbiAgY29uc3Qgc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCA9IHVzZUZpZWxkSWQoXG4gICAgcHJvcHMuaWQsXG4gICAgc2VsZWN0YWJsZVNlYXJjaElucHV0U2VxdWVudGlhbElkXG4gICk7XG5cbiAgaWYgKCFwcm9wcy5pc1JlYWRPbmx5KSB7XG4gICAgd2FybmluZyhcbiAgICAgIHR5cGVvZiBwcm9wcy5vbkNoYW5nZSA9PT0gJ2Z1bmN0aW9uJyxcbiAgICAgICdTZWxlY3RhYmxlU2VhcmNoSW5wdXQ6IGBvbkNoYW5nZWAgaXMgcmVxdWlyZWQgd2hlbiBpcyBub3QgcmVhZCBvbmx5LidcbiAgICApO1xuICB9XG5cbiAgd2FybklmTWVudVBvcnRhbFByb3BzQXJlTWlzc2luZyh7XG4gICAgbWVudVBvcnRhbFpJbmRleDogcHJvcHMubWVudVBvcnRhbFpJbmRleCxcbiAgICBtZW51UG9ydGFsVGFyZ2V0OiBwcm9wcy5tZW51UG9ydGFsVGFyZ2V0LFxuICAgIGNvbXBvbmVudE5hbWU6ICdTZWxlY3RhYmxlU2VhcmNoSW5wdXQnLFxuICB9KTtcblxuICBjb25zdCB7IG9uRm9jdXMsIG9uQmx1ciwgbmFtZSB9ID0gcHJvcHM7XG4gIGNvbnN0IGhhbmRsZVRleHRJbnB1dEZvY3VzID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIGlmIChvbkZvY3VzKSB7XG4gICAgICBvbkZvY3VzKHtcbiAgICAgICAgdGFyZ2V0OiB7XG4gICAgICAgICAgaWQ6IFNlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXRUZXh0SW5wdXRJZChzZWxlY3RhYmxTZWFyY2hJbnB1dElkKSxcbiAgICAgICAgICBuYW1lOiBnZXRUZXh0SW5wdXROYW1lKG5hbWUpLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfVxuICB9LCBbb25Gb2N1cywgc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCwgbmFtZV0pO1xuXG4gIGNvbnN0IGhhbmRsZVRleHRJbnB1dEJsdXIgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgaWYgKG9uQmx1cikge1xuICAgICAgb25CbHVyKHtcbiAgICAgICAgdGFyZ2V0OiB7XG4gICAgICAgICAgaWQ6IFNlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXRUZXh0SW5wdXRJZChzZWxlY3RhYmxTZWFyY2hJbnB1dElkKSxcbiAgICAgICAgICBuYW1lOiBnZXRUZXh0SW5wdXROYW1lKG5hbWUpLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfVxuICB9LCBbb25CbHVyLCBzZWxlY3RhYmxTZWFyY2hJbnB1dElkLCBuYW1lXSk7XG5cbiAgY29uc3QgaGFuZGxlQ2xlYXIgPSAoKSA9PiB7XG4gICAgc2V0U2VhcmNoVmFsdWUoJycpO1xuICAgIGlmIChwcm9wcy5vblJlc2V0KSB7XG4gICAgICBwcm9wcy5vblJlc2V0KCk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUNoYW5nZSA9IChldmVudDogQ2hhbmdlRXZlbnQ8SFRNTElucHV0RWxlbWVudD4pID0+IHtcbiAgICBzZXRTZWFyY2hWYWx1ZShldmVudC50YXJnZXQudmFsdWUpO1xuICAgIGlmIChwcm9wcy5vbkNoYW5nZSkge1xuICAgICAgcHJvcHMub25DaGFuZ2Uoe1xuICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICBpZDogU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldFRleHRJbnB1dElkKHNlbGVjdGFibFNlYXJjaElucHV0SWQpLFxuICAgICAgICAgIG5hbWU6IGdldFRleHRJbnB1dE5hbWUocHJvcHMubmFtZSksXG4gICAgICAgICAgdmFsdWU6IGV2ZW50LnRhcmdldC52YWx1ZSxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBoYW5kbGVTdWJtaXQgPSAoXG4gICAgZXZlbnQ6XG4gICAgICB8IEtleWJvYXJkRXZlbnQ8SFRNTEJ1dHRvbkVsZW1lbnQ+XG4gICAgICB8IE1vdXNlRXZlbnQ8SFRNTEJ1dHRvbkVsZW1lbnQ+XG4gICAgICB8IEtleWJvYXJkRXZlbnQ8SFRNTElucHV0RWxlbWVudD5cbiAgKSA9PiB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICBpZiAocHJvcHMub25TdWJtaXQpIHtcbiAgICAgIHByb3BzLm9uU3VibWl0KHtcbiAgICAgICAgdGV4dDogc2VhcmNoVmFsdWUsXG4gICAgICAgIG9wdGlvbjogc2VsZWN0ZWRPcHRpb24/LnZhbHVlID8/ICcnLFxuICAgICAgfSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGRyb3Bkb3duTmFtZSA9IGdldERyb3Bkb3duTmFtZShwcm9wcy5uYW1lKTtcbiAgY29uc3QgZHJvcGRvd25JZCA9IFNlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXREcm9wZG93bklkKFxuICAgIHNlbGVjdGFibFNlYXJjaElucHV0SWRcbiAgKTtcblxuICBjb25zdCBoYW5kbGVEcm9wZG93bkZvY3VzID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIGlmIChvbkZvY3VzKSB7XG4gICAgICBvbkZvY3VzKHtcbiAgICAgICAgdGFyZ2V0OiB7XG4gICAgICAgICAgaWQ6IGRyb3Bkb3duSWQsXG4gICAgICAgICAgbmFtZTogZHJvcGRvd25OYW1lLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfVxuICAgIHRvZ2dsZURyb3Bkb3duSGFzRm9jdXModHJ1ZSk7XG4gIH0sIFtvbkZvY3VzLCB0b2dnbGVEcm9wZG93bkhhc0ZvY3VzLCBkcm9wZG93bk5hbWUsIGRyb3Bkb3duSWRdKTtcblxuICBjb25zdCBoYW5kbGVEcm9wZG93bkJsdXIgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgaWYgKG9uQmx1cikge1xuICAgICAgb25CbHVyKHtcbiAgICAgICAgdGFyZ2V0OiB7XG4gICAgICAgICAgaWQ6IGRyb3Bkb3duSWQsXG4gICAgICAgICAgbmFtZTogZHJvcGRvd25OYW1lLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfVxuICAgIHRvZ2dsZURyb3Bkb3duSGFzRm9jdXMoZmFsc2UpO1xuICB9LCBbdG9nZ2xlRHJvcGRvd25IYXNGb2N1cywgb25CbHVyLCBkcm9wZG93bk5hbWUsIGRyb3Bkb3duSWRdKTtcblxuICBjb25zdCBoYW5kbGVDb250YWluZXJCbHVyID0gdXNlQ2FsbGJhY2soXG4gICAgKGV2ZW50KSA9PiB7XG4gICAgICAvLyBlbnN1cmVzIHRoYXQgYm90aCBmaWVsZHMgYXJlIG1hcmtlZCBhcyB0b3VjaGVkIHdoZW4gb25lIG9mIHRoZW1cbiAgICAgIC8vIGlzIGJsdXJyZWRcbiAgICAgIGlmIChcbiAgICAgICAgdHlwZW9mIG9uQmx1ciA9PT0gJ2Z1bmN0aW9uJyAmJlxuICAgICAgICAhY29udGFpbmVyUmVmLmN1cnJlbnQ/LmNvbnRhaW5zKGV2ZW50LnJlbGF0ZWRUYXJnZXQpXG4gICAgICApIHtcbiAgICAgICAgb25CbHVyKHtcbiAgICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICAgIGlkOiBTZWxlY3RhYmxlU2VhcmNoSW5wdXQuZ2V0RHJvcGRvd25JZChzZWxlY3RhYmxTZWFyY2hJbnB1dElkKSxcbiAgICAgICAgICAgIG5hbWU6IGdldERyb3Bkb3duTmFtZShuYW1lKSxcbiAgICAgICAgICB9LFxuICAgICAgICB9KTtcbiAgICAgICAgb25CbHVyKHtcbiAgICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICAgIGlkOiBTZWxlY3RhYmxlU2VhcmNoSW5wdXQuZ2V0VGV4dElucHV0SWQoc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCksXG4gICAgICAgICAgICBuYW1lOiBnZXRUZXh0SW5wdXROYW1lKG5hbWUpLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0sXG4gICAgW29uQmx1ciwgc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCwgbmFtZV1cbiAgKTtcblxuICByZXR1cm4gKFxuICAgIDxDb25zdHJhaW50cy5Ib3Jpem9udGFsIG1heD17cHJvcHMuaG9yaXpvbnRhbENvbnN0cmFpbnR9PlxuICAgICAgPENvbnRhaW5lclxuICAgICAgICByZWY9e2NvbnRhaW5lclJlZn1cbiAgICAgICAgb25CbHVyPXtoYW5kbGVDb250YWluZXJCbHVyfVxuICAgICAgICBkYXRhLXRlc3RpZD1cInNlbGVjdGFibGUtc2VhcmNoLWlucHV0LWNvbnRhaW5lclwiXG4gICAgICA+XG4gICAgICAgIDxDb25zdHJhaW50cy5Ib3Jpem9udGFsIG1heD17cHJvcHMubWVudUhvcml6b250YWxDb25zdHJhaW50fT5cbiAgICAgICAgICA8U2VsZWN0YWJsZVNlbGVjdFxuICAgICAgICAgICAgey4uLnByb3BzfVxuICAgICAgICAgICAgaWQ9e1NlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXREcm9wZG93bklkKHNlbGVjdGFibFNlYXJjaElucHV0SWQpfVxuICAgICAgICAgICAgbmFtZT17Z2V0RHJvcGRvd25OYW1lKHByb3BzLm5hbWUpfVxuICAgICAgICAgICAgZHJvcGRvd25IYXNGb2N1cz17ZHJvcGRvd25IYXNGb2N1c31cbiAgICAgICAgICAgIGhhbmRsZURyb3Bkb3duRm9jdXM9e2hhbmRsZURyb3Bkb3duRm9jdXN9XG4gICAgICAgICAgICBoYW5kbGVEcm9wZG93bkJsdXI9e2hhbmRsZURyb3Bkb3duQmx1cn1cbiAgICAgICAgICAgIHRleHRJbnB1dFJlZj17dGV4dElucHV0UmVmfVxuICAgICAgICAgICAgc2VsZWN0ZWRPcHRpb249e3NlbGVjdGVkT3B0aW9ufVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvQ29uc3RyYWludHMuSG9yaXpvbnRhbD5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNzcz17W1xuICAgICAgICAgICAgZ2V0U2VsZWN0YWJsZVNlYXJjaElucHV0Q29udGFpbmVyU3R5bGVzKHByb3BzKSxcbiAgICAgICAgICAgIGRyb3Bkb3duSGFzRm9jdXMgJiZcbiAgICAgICAgICAgICAgIXByb3BzLmlzUmVhZE9ubHkgJiZcbiAgICAgICAgICAgICAgY3NzYFxuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAke2Rlc2lnblRva2Vucy5ib3JkZXJDb2xvckZvcklucHV0V2hlbkZvY3VzZWR9O1xuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICR7ZGVzaWduVG9rZW5zLmJvcmRlckNvbG9yRm9ySW5wdXRXaGVuRm9jdXNlZH07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBgLFxuICAgICAgICAgIF19XG4gICAgICAgID5cbiAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgIHJlZj17dGV4dElucHV0UmVmfVxuICAgICAgICAgICAgaWQ9e1NlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXRUZXh0SW5wdXRJZChzZWxlY3RhYmxTZWFyY2hJbnB1dElkKX1cbiAgICAgICAgICAgIG5hbWU9e2dldFRleHRJbnB1dE5hbWUocHJvcHMubmFtZSl9XG4gICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICB2YWx1ZT17c2VhcmNoVmFsdWV9XG4gICAgICAgICAgICBvbkNoYW5nZT17aGFuZGxlQ2hhbmdlfVxuICAgICAgICAgICAgb25CbHVyPXtoYW5kbGVUZXh0SW5wdXRCbHVyfVxuICAgICAgICAgICAgb25Gb2N1cz17aGFuZGxlVGV4dElucHV0Rm9jdXN9XG4gICAgICAgICAgICBkaXNhYmxlZD17cHJvcHMuaXNEaXNhYmxlZH1cbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPXtwcm9wcy5wbGFjZWhvbGRlcn1cbiAgICAgICAgICAgIHJlYWRPbmx5PXtwcm9wcy5pc1JlYWRPbmx5fVxuICAgICAgICAgICAgYXV0b0ZvY3VzPXtwcm9wcy5pc0F1dG9mb2N1c3NlZH1cbiAgICAgICAgICAgIGF1dG9Db21wbGV0ZT17cHJvcHMuYXV0b0NvbXBsZXRlfVxuICAgICAgICAgICAgYXJpYS1yZWFkb25seT17cHJvcHMuaXNSZWFkT25seX1cbiAgICAgICAgICAgIGNvbnRlbnRFZGl0YWJsZT17IXByb3BzLmlzUmVhZE9ubHl9XG4gICAgICAgICAgICBjc3M9e2dldFNlbGVjdGFibGVTZWFyY2hJbnB1dFN0eWxlcyhwcm9wcyl9XG4gICAgICAgICAgICB7Li4uZmlsdGVyRGF0YUF0dHJpYnV0ZXMocHJvcHMpfVxuICAgICAgICAgICAgLyogQVJJQSAqL1xuICAgICAgICAgICAgYXJpYS1pbnZhbGlkPXtwcm9wc1snYXJpYS1pbnZhbGlkJ119XG4gICAgICAgICAgICBhcmlhLWVycm9ybWVzc2FnZT17cHJvcHNbJ2FyaWEtZXJyb3JtZXNzYWdlJ119XG4gICAgICAgICAgICBkYXRhLXRlc3RpZD1cInNlbGVjdGFibGUtaW5wdXRcIlxuICAgICAgICAgICAgb25LZXlEb3duPXsoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgaWYgKCFwcm9wcy5pc1JlYWRPbmx5ICYmIGV2ZW50LmtleSA9PT0gJ0VudGVyJykge1xuICAgICAgICAgICAgICAgIGhhbmRsZVN1Ym1pdChldmVudCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH19XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7cHJvcHMuaXNDbGVhcmFibGUgJiZcbiAgICAgICAgICAgIHNlYXJjaFZhbHVlICYmXG4gICAgICAgICAgICAhcHJvcHMuaXNEaXNhYmxlZCAmJlxuICAgICAgICAgICAgIXByb3BzLmlzUmVhZE9ubHkgJiYgKFxuICAgICAgICAgICAgICA8U2Vjb25kYXJ5SWNvbkJ1dHRvblxuICAgICAgICAgICAgICAgIGljb249ezxDbG9zZUljb24gLz59XG4gICAgICAgICAgICAgICAgc2l6ZT1cIm1lZGl1bVwiXG4gICAgICAgICAgICAgICAgbGFiZWw9eydjbGVhci1idXR0b24nfVxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e2hhbmRsZUNsZWFyfVxuICAgICAgICAgICAgICAgIGNzcz17Z2V0Q2xlYXJJY29uQnV0dG9uU3R5bGVzKHByb3BzKX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAge3Byb3BzLnNob3dTdWJtaXRCdXR0b24gJiYgKFxuICAgICAgICAgICAgPFNlY29uZGFyeUljb25CdXR0b25cbiAgICAgICAgICAgICAgaWNvbj17PFNlYXJjaEljb24gLz59XG4gICAgICAgICAgICAgIGxhYmVsPXsnc2VhcmNoLWJ1dHRvbid9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9e2hhbmRsZVN1Ym1pdH1cbiAgICAgICAgICAgICAgY3NzPXtnZXRTZWFyY2hJY29uQnV0dG9uU3R5bGVzKHByb3BzKX1cbiAgICAgICAgICAgICAgaXNEaXNhYmxlZD17cHJvcHMuaXNEaXNhYmxlZH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L0NvbnRhaW5lcj5cbiAgICA8L0NvbnN0cmFpbnRzLkhvcml6b250YWw+XG4gICk7XG59O1xuXG5TZWxlY3RhYmxlU2VhcmNoSW5wdXQuZGlzcGxheU5hbWUgPSAnU2VsZWN0YWJsZVNlYXJjaElucHV0JztcblNlbGVjdGFibGVTZWFyY2hJbnB1dC5kZWZhdWx0UHJvcHMgPSBkZWZhdWx0UHJvcHM7XG5TZWxlY3RhYmxlU2VhcmNoSW5wdXQuaXNFbXB0eSA9IChcbiAgZm9ybVZhbHVlOiBUU2VsZWN0YWJsZVNlYXJjaElucHV0UHJvcHNbJ3ZhbHVlJ11cbikgPT4gIWZvcm1WYWx1ZSB8fCBmb3JtVmFsdWUudGV4dC50cmltKCkgPT09ICcnO1xuU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldFRleHRJbnB1dElkID0gZ2V0VGV4dElucHV0TmFtZTtcblNlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXREcm9wZG93bklkID0gZ2V0RHJvcGRvd25OYW1lO1xuXG5leHBvcnQgZGVmYXVsdCBTZWxlY3RhYmxlU2VhcmNoSW5wdXQ7XG4iXX0= */",
|
|
294
|
+
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNlbGVjdGFibGUtc2VhcmNoLWlucHV0LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUErQjRCIiwiZmlsZSI6InNlbGVjdGFibGUtc2VhcmNoLWlucHV0LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIHR5cGUgTW91c2VFdmVudCxcbiAgdHlwZSBLZXlib2FyZEV2ZW50LFxuICB0eXBlIENoYW5nZUV2ZW50LFxuICB0eXBlIFJlYWN0Tm9kZSxcbiAgdXNlU3RhdGUsXG4gIHVzZUNhbGxiYWNrLFxuICB1c2VSZWYsXG59IGZyb20gJ3JlYWN0JztcbmltcG9ydCBTZWNvbmRhcnlJY29uQnV0dG9uIGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3NlY29uZGFyeS1pY29uLWJ1dHRvbic7XG5pbXBvcnQgQ29uc3RyYWludHMgZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvY29uc3RyYWludHMnO1xuaW1wb3J0IHsgU2VhcmNoSWNvbiwgQ2xvc2VJY29uIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvaWNvbnMnO1xuaW1wb3J0IHtcbiAgY3JlYXRlU2VxdWVudGlhbElkLFxuICBmaWx0ZXJEYXRhQXR0cmlidXRlcyxcbiAgd2FybmluZyxcbn0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvdXRpbHMnO1xuaW1wb3J0IHsgd2FybklmTWVudVBvcnRhbFByb3BzQXJlTWlzc2luZyB9IGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3NlbGVjdC11dGlscyc7XG5pbXBvcnQge1xuICBnZXRDbGVhckljb25CdXR0b25TdHlsZXMsXG4gIGdldFNlYXJjaEljb25CdXR0b25TdHlsZXMsXG4gIGdldFNlbGVjdGFibGVTZWFyY2hJbnB1dENvbnRhaW5lclN0eWxlcyxcbiAgZ2V0U2VsZWN0YWJsZVNlYXJjaElucHV0U3R5bGVzLFxufSBmcm9tICcuL3NlbGVjdGFibGUtc2VhcmNoLWlucHV0LnN0eWxlcyc7XG5pbXBvcnQgU2VsZWN0YWJsZVNlbGVjdCBmcm9tICcuL3NlbGVjdGFibGUtc2VsZWN0JztcbmltcG9ydCB7IHVzZUZpZWxkSWQsIHVzZVRvZ2dsZVN0YXRlIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvaG9va3MnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgZGVzaWduVG9rZW5zIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvZGVzaWduLXN5c3RlbSc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgeyB0eXBlIFByb3BzIGFzIFJlYWN0U2VsZWN0UHJvcHMgfSBmcm9tICdyZWFjdC1zZWxlY3QnO1xuXG5jb25zdCBDb250YWluZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuYDtcblxuY29uc3QgZ2V0VGV4dElucHV0TmFtZSA9IChuYW1lPzogc3RyaW5nKSA9PlxuICBuYW1lID8gYCR7bmFtZX0udGV4dElucHV0YCA6IHVuZGVmaW5lZDtcblxuY29uc3QgZ2V0RHJvcGRvd25OYW1lID0gKG5hbWU/OiBzdHJpbmcpID0+XG4gIG5hbWUgPyBgJHtuYW1lfS5kcm9wZG93bmAgOiB1bmRlZmluZWQ7XG5cbmV4cG9ydCB0eXBlIFRDdXN0b21FdmVudCA9IHtcbiAgdGFyZ2V0OiB7XG4gICAgaWQ/OiBzdHJpbmc7XG4gICAgbmFtZT86IHN0cmluZztcbiAgICB2YWx1ZT86IHN0cmluZyB8IHN0cmluZ1tdIHwgbnVsbDtcbiAgfTtcbiAgcGVyc2lzdD86ICgpID0+IHZvaWQ7XG59O1xuXG5leHBvcnQgdHlwZSBUVmFsdWUgPSB7XG4gIHRleHQ6IHN0cmluZztcbiAgb3B0aW9uOiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBUT3B0aW9uID0ge1xuICB2YWx1ZTogc3RyaW5nO1xuICBsYWJlbD86IFJlYWN0Tm9kZTtcbn07XG5cbmV4cG9ydCB0eXBlIFRPcHRpb25PYmplY3QgPSB7XG4gIG9wdGlvbnM6IFRPcHRpb25bXTtcbn07XG5cbmV4cG9ydCB0eXBlIFRPcHRpb25zID0gVE9wdGlvbltdIHwgVE9wdGlvbk9iamVjdFtdO1xuXG5leHBvcnQgdHlwZSBUU2VsZWN0YWJsZVNlYXJjaElucHV0UHJvcHMgPSB7XG4gIC8qKlxuICAgKiBVc2VkIGFzIEhUTUwgaWQgcHJvcGVydHkuIEFuIGlkIGlzIGF1dG8tZ2VuZXJhdGVkIHdoZW4gaXQgaXMgbm90IHNwZWNpZmllZC5cbiAgICovXG4gIGlkPzogc3RyaW5nO1xuICAvKipcbiAgICogVXNlZCBhcyBIVE1MIGF1dG9jb21wbGV0ZSBwcm9wZXJ0eVxuICAgKi9cbiAgYXV0b0NvbXBsZXRlPzogc3RyaW5nO1xuICAvKipcbiAgICogSW5kaWNhdGUgaWYgdGhlIHZhbHVlIGVudGVyZWQgaW4gdGhlIGlucHV0IGlzIGludmFsaWQuXG4gICAqL1xuICAnYXJpYS1pbnZhbGlkJz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBIVE1MIElEIG9mIGFuIGVsZW1lbnQgY29udGFpbmluZyBhbiBlcnJvciBtZXNzYWdlIHJlbGF0ZWQgdG8gdGhlIGlucHV0LlxuICAgKi9cbiAgJ2FyaWEtZXJyb3JtZXNzYWdlJz86IHN0cmluZztcbiAgLyoqXG4gICAqIFVzZWQgYXMgSFRNTCBuYW1lIG9mIHRoZSBpbnB1dCBjb21wb25lbnQgcHJvcGVydHkuXG4gICAqL1xuICBuYW1lPzogc3RyaW5nO1xuICAvKipcbiAgICogVmFsdWUgb2YgdGhlIGlucHV0LiBDb25zaXN0cyBvZiB0ZXh0IGlucHV0IGFuZCBzZWxlY3RlZCBvcHRpb24uXG4gICAqL1xuICB2YWx1ZTogVFZhbHVlO1xuICAvKipcbiAgICogQ2FsbGVkIHdpdGggdGhlIGV2ZW50IG9mIHRoZSBpbnB1dCBvciBkcm9wZG93biB3aGVuIGVpdGhlciB0aGUgc2VsZWN0YWJsZSBkcm9wZG93biBvciB0aGUgdGV4dCBpbnB1dCBoYXZlIGNoYW5nZWQuXG4gICAqIFRoZSBjaGFuZ2UgZXZlbnQgZnJvbSB0aGUgdGV4dCBpbnB1dCBoYXMgYSBzdWZmaXggb2YgYC50ZXh0SW5wdXRgIGFuZCB0aGUgY2hhbmdlIGV2ZW50IGZyb20gdGhlIGRyb3Bkb3duIGhhcyBhIHN1ZmZpeCBvZiBgLmRyb3Bkb3duYC5cbiAgICovXG4gIG9uQ2hhbmdlPzogKGV2ZW50OiBUQ3VzdG9tRXZlbnQpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiBpbnB1dCBpcyBibHVycmVkXG4gICAqL1xuICBvbkJsdXI/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGlucHV0IGlzIGZvY3VzZWRcbiAgICovXG4gIG9uRm9jdXM/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIEhhbmRsZXIgd2hlbiB0aGUgc2VhcmNoIGJ1dHRvbiBpcyBjbGlja2VkLlxuICAgKi9cbiAgb25TdWJtaXQ6ICh2YWx1ZTogVFZhbHVlKSA9PiB2b2lkO1xuICAvKipcbiAgICogSGFuZGxlciB3aGVuIHRoZSBjbGVhciBidXR0b24gaXMgY2xpY2tlZC5cbiAgICovXG4gIG9uUmVzZXQ/OiAoKSA9PiB2b2lkO1xuICAvKipcbiAgICogRm9jdXMgdGhlIGlucHV0IG9uIGluaXRpYWwgcmVuZGVyXG4gICAqL1xuICBpc0F1dG9mb2N1c3NlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgdGhhdCB0aGUgaW5wdXQgY2Fubm90IGJlIG1vZGlmaWVkIChlLmcgbm90IGF1dGhvcml6ZWQsIG9yIGNoYW5nZXMgY3VycmVudGx5IHNhdmluZykuXG4gICAqL1xuICBpc0Rpc2FibGVkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGF0IHRoZSBmaWVsZCBpcyBkaXNwbGF5aW5nIHJlYWQtb25seSBjb250ZW50XG4gICAqL1xuICBpc1JlYWRPbmx5PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyBpZiB0aGUgaW5wdXQgaGFzIGludmFsaWQgdmFsdWVzXG4gICAqL1xuICBoYXNFcnJvcj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaWYgdGhlIGlucHV0IGhhcyB3YXJuaW5nIHZhbHVlc1xuICAgKi9cbiAgaGFzV2FybmluZz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBQbGFjZWhvbGRlciB0ZXh0IGZvciB0aGUgaW5wdXRcbiAgICovXG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xuICAvKipcbiAgICogSW5kaWNhdGVzIGlmIHRoZSBpbnB1dCBzaG91bGQgYmUgY2xlYXJlZCB3aGVuIHRoZSBjbGVhciBidXR0b24gaXMgY2xpY2tlZC5cbiAgICogRGVmYXVsdHMgdG8gdHJ1ZS5cbiAgICpcbiAgICovXG4gIGlzQ2xlYXJhYmxlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEhvcml6b250YWwgc2l6ZSBsaW1pdCBvZiB0aGUgaW5wdXQgZmllbGRzLlxuICAgKi9cbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQ/OiAxMCB8IDExIHwgMTIgfCAxMyB8IDE0IHwgMTUgfCAxNiB8ICdzY2FsZScgfCAnYXV0byc7XG4gIC8qKlxuICAgKiBBcnJheSBvZiBvcHRpb25zIHRoYXQgcG9wdWxhdGUgdGhlIHNlbGVjdCBtZW51XG4gICAqL1xuICBvcHRpb25zOiBUT3B0aW9ucztcbiAgLyoqXG4gICAqIHotaW5kZXggdmFsdWUgZm9yIHRoZSBtZW51IHBvcnRhbFxuICAgKiA8YnI+XG4gICAqIFVzZSBpbiBjb25qdW5jdGlvbiB3aXRoIGBtZW51UG9ydGFsVGFyZ2V0YFxuICAgKi9cbiAgbWVudVBvcnRhbFpJbmRleD86IG51bWJlcjtcbiAgLyoqXG4gICAqIERvbSBlbGVtZW50IHRvIHBvcnRhbCB0aGUgc2VsZWN0IG1lbnUgdG9cbiAgICogPGJyPlxuICAgKiBbUHJvcHMgZnJvbSBSZWFjdCBzZWxlY3Qgd2FzIHVzZWRdKGh0dHBzOi8vcmVhY3Qtc2VsZWN0LmNvbS9wcm9wcylcbiAgICovXG4gIG1lbnVQb3J0YWxUYXJnZXQ/OiBSZWFjdFNlbGVjdFByb3BzWydtZW51UG9ydGFsVGFyZ2V0J107XG4gIC8qKlxuICAgKiB3aGV0aGVyIHRoZSBtZW51IHNob3VsZCBibG9jayBzY3JvbGwgd2hpbGUgb3BlblxuICAgKiA8YnI+XG4gICAqIFtQcm9wcyBmcm9tIFJlYWN0IHNlbGVjdCB3YXMgdXNlZF0oaHR0cHM6Ly9yZWFjdC1zZWxlY3QuY29tL3Byb3BzKVxuICAgKi9cbiAgbWVudVNob3VsZEJsb2NrU2Nyb2xsPzogUmVhY3RTZWxlY3RQcm9wc1snbWVudVNob3VsZEJsb2NrU2Nyb2xsJ107XG4gIC8qKlxuICAgKiBIYW5kbGUgY2hhbmdlIGV2ZW50cyBvbiB0aGUgbWVudSBpbnB1dFxuICAgKiA8YnI+XG4gICAqIFtQcm9wcyBmcm9tIFJlYWN0IHNlbGVjdCB3YXMgdXNlZF0oaHR0cHM6Ly9yZWFjdC1zZWxlY3QuY29tL3Byb3BzKVxuICAgKi9cbiAgb25NZW51SW5wdXRDaGFuZ2U/OiBSZWFjdFNlbGVjdFByb3BzWydvbklucHV0Q2hhbmdlJ107XG4gIC8qKlxuICAgKiBDYW4gYmUgdXNlZCB0byByZW5kZXIgYSBjdXN0b20gdmFsdWUgd2hlbiB0aGVyZSBhcmUgbm8gb3B0aW9ucyAoZWl0aGVyIGJlY2F1c2Ugb2Ygbm8gc2VhcmNoIHJlc3VsdHMsIG9yIGFsbCBvcHRpb25zIGhhdmUgYmVlbiB1c2VkLCBvciB0aGVyZSB3ZXJlIG5vbmUgaW4gdGhlIGZpcnN0IHBsYWNlKS4gR2V0cyBjYWxsZWQgd2l0aCB7IGlucHV0VmFsdWU6IFN0cmluZyB9LlxuICAgKiA8YnIgLz5cbiAgICogYGlucHV0VmFsdWVgIHdpbGwgYmUgYW4gZW1wdHkgc3RyaW5nIHdoZW4gbm8gc2VhcmNoIHRleHQgaXMgcHJlc2VudC5cbiAgICogPGJyPlxuICAgKiBbUHJvcHMgZnJvbSBSZWFjdCBzZWxlY3Qgd2FzIHVzZWRdKGh0dHBzOi8vcmVhY3Qtc2VsZWN0LmNvbS9wcm9wcylcbiAgICovXG4gIG5vTWVudU9wdGlvbnNNZXNzYWdlPzogUmVhY3RTZWxlY3RQcm9wc1snbm9PcHRpb25zTWVzc2FnZSddO1xuICAvKipcbiAgICogV2hldGhlciB0byBlbmFibGUgc2VhcmNoIGZ1bmN0aW9uYWxpdHkuXG4gICAqIDxicj5cbiAgICogW1Byb3BzIGZyb20gUmVhY3Qgc2VsZWN0IHdhcyB1c2VkXShodHRwczovL3JlYWN0LXNlbGVjdC5jb20vcHJvcHMpXG4gICAqL1xuICBpc01lbnVTZWFyY2hhYmxlPzogUmVhY3RTZWxlY3RQcm9wc1snaXNTZWFyY2hhYmxlJ107XG4gIC8qKlxuICAgKiBNYXhpbXVtIGhlaWdodCBvZiB0aGUgbWVudSBiZWZvcmUgc2Nyb2xsaW5nXG4gICAqIDxicj5cbiAgICogW1Byb3BzIGZyb20gUmVhY3Qgc2VsZWN0IHdhcyB1c2VkXShodHRwczovL3JlYWN0LXNlbGVjdC5jb20vcHJvcHMpXG4gICAqL1xuICBtYXhNZW51SGVpZ2h0PzogUmVhY3RTZWxlY3RQcm9wc1snbWF4TWVudUhlaWdodCddO1xuICAvKipcbiAgICogV2hldGhlciB0aGUgbWVudSBzaG91bGQgY2xvc2UgYWZ0ZXIgYSB2YWx1ZSBpcyBzZWxlY3RlZC4gRGVmYXVsdHMgdG8gYHRydWVgLlxuICAgKiA8YnI+XG4gICAqIFtQcm9wcyBmcm9tIFJlYWN0IHNlbGVjdCB3YXMgdXNlZF0oaHR0cHM6Ly9yZWFjdC1zZWxlY3QuY29tL3Byb3BzKVxuICAgKi9cbiAgY2xvc2VNZW51T25TZWxlY3Q/OiBSZWFjdFNlbGVjdFByb3BzWydjbG9zZU1lbnVPblNlbGVjdCddO1xuICAvKipcbiAgICogSG9yaXpvbnRhbCBzaXplIGxpbWl0IGZvciB0aGUgZHJvcGRvd24gbWVudS5cbiAgICovXG4gIG1lbnVIb3Jpem9udGFsQ29uc3RyYWludD86IDMgfCA0IHwgNTtcbiAgLyoqXG4gICAqIFNob3cgc3VibWl0IGJ1dHRvbiBpbiB0aGUgaW5wdXRcbiAgICovXG4gIHNob3dTdWJtaXRCdXR0b24/OiBib29sZWFuO1xuICAvKipcbiAgICogIHVzZWQgdG8gcGFzcyBkYXRhLSogcHJvcHMgdG8gdGhlIHNlbGVjdCBjb21wb25lbnQuXG4gICAqIGVnOiBzZWxlY3REYXRhUHJvcHM9e1t7ICdwcm9wLTEnOiAndmFsdWUtMScgfSwgeyAncHJvcC0yJzogJ3ZhbHVlLTInIH1dfVxuICAgKi9cbiAgc2VsZWN0RGF0YVByb3BzPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgLyoqXG4gICAqICB1c2VkIHRvIHBhc3MgZGF0YS0qIHByb3BzIHRvIHRoZSBpbnB1dCBlbGVtZW50LlxuICAgKiBlZzogaW5wdXREYXRhUHJvcHM9e1t7ICdwcm9wLTEnOiAndmFsdWUtMScgfSwgeyAncHJvcC0yJzogJ3ZhbHVlLTInIH1dfVxuICAgKi9cbiAgaW5wdXREYXRhUHJvcHM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xufTtcblxuY29uc3QgZGVmYXVsdFByb3BzOiBQaWNrPFxuICBUU2VsZWN0YWJsZVNlYXJjaElucHV0UHJvcHMsXG4gIHwgJ2hvcml6b250YWxDb25zdHJhaW50J1xuICB8ICdpc0NsZWFyYWJsZSdcbiAgfCAnbWVudUhvcml6b250YWxDb25zdHJhaW50J1xuICB8ICdzaG93U3VibWl0QnV0dG9uJ1xuICB8ICdtZW51UG9ydGFsWkluZGV4J1xuICB8ICdvcHRpb25zJ1xuPiA9IHtcbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQ6ICdzY2FsZScsXG4gIGlzQ2xlYXJhYmxlOiB0cnVlLFxuICBtZW51SG9yaXpvbnRhbENvbnN0cmFpbnQ6IDMsXG4gIHNob3dTdWJtaXRCdXR0b246IHRydWUsXG4gIG1lbnVQb3J0YWxaSW5kZXg6IDEsXG4gIG9wdGlvbnM6IFtdLFxufTtcblxuY29uc3Qgc2VsZWN0YWJsZVNlYXJjaElucHV0U2VxdWVudGlhbElkID0gY3JlYXRlU2VxdWVudGlhbElkKFxuICAnc2VsZWN0YWJsZS1zZWFyY2gtaW5wdXQtJ1xuKTtcblxuY29uc3QgaXNPcHRpb25PYmplY3QgPSAoXG4gIG9wdGlvbjogVE9wdGlvbiB8IFRPcHRpb25PYmplY3Rcbik6IG9wdGlvbiBpcyBUT3B0aW9uT2JqZWN0ID0+IChvcHRpb24gYXMgVE9wdGlvbk9iamVjdCkub3B0aW9ucyAhPT0gdW5kZWZpbmVkO1xuXG5jb25zdCB0cmFuc2Zvcm1EYXRhUHJvcHMgPSAoZGF0YVByb3BzPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPikgPT5cbiAgT2JqZWN0LmZyb21FbnRyaWVzKFxuICAgIE9iamVjdC5lbnRyaWVzKGRhdGFQcm9wcyB8fCB7fSkubWFwKChba2V5LCB2YWx1ZV0pID0+IFtcbiAgICAgIGBkYXRhLSR7a2V5fWAsXG4gICAgICB2YWx1ZSxcbiAgICBdKVxuICApO1xuXG5jb25zdCBTZWxlY3RhYmxlU2VhcmNoSW5wdXQgPSAocHJvcHM6IFRTZWxlY3RhYmxlU2VhcmNoSW5wdXRQcm9wcykgPT4ge1xuICBjb25zdCBbZHJvcGRvd25IYXNGb2N1cywgdG9nZ2xlRHJvcGRvd25IYXNGb2N1c10gPSB1c2VUb2dnbGVTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtzZWFyY2hWYWx1ZSwgc2V0U2VhcmNoVmFsdWVdID0gdXNlU3RhdGUocHJvcHMudmFsdWUudGV4dCB8fCAnJyk7XG4gIGNvbnN0IGNvbnRhaW5lclJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbCk7XG4gIGNvbnN0IHRleHRJbnB1dFJlZiA9IHVzZVJlZjxIVE1MSW5wdXRFbGVtZW50PihudWxsKTtcblxuICBjb25zdCBsZWdhY3lEYXRhUHJvcHMgPSBmaWx0ZXJEYXRhQXR0cmlidXRlcyhwcm9wcyk7XG4gIGNvbnN0IHRyYW5zZm9ybWVkU2VsZWN0RGF0YVByb3BzID0gdHJhbnNmb3JtRGF0YVByb3BzKHByb3BzLnNlbGVjdERhdGFQcm9wcyk7XG4gIGNvbnN0IHRyYW5zZm9ybWVkSW5wdXREYXRhUHJvcHMgPSB0cmFuc2Zvcm1EYXRhUHJvcHMocHJvcHMuaW5wdXREYXRhUHJvcHMpO1xuXG4gIGNvbnN0IG9wdGlvbnNXaXRob3V0R3JvdXBzID0gcHJvcHMub3B0aW9ucy5mbGF0TWFwKChvcHRpb24pID0+IHtcbiAgICBpZiAoaXNPcHRpb25PYmplY3Qob3B0aW9uKSkge1xuICAgICAgcmV0dXJuIG9wdGlvbi5vcHRpb25zO1xuICAgIH1cbiAgICByZXR1cm4gb3B0aW9uO1xuICB9KTtcblxuICBjb25zdCBzZWxlY3RlZE9wdGlvbiA9IG9wdGlvbnNXaXRob3V0R3JvdXBzLmZpbmQoXG4gICAgKG9wdGlvbikgPT4gb3B0aW9uLnZhbHVlID09PSBwcm9wcy52YWx1ZS5vcHRpb25cbiAgKTtcblxuICBjb25zdCBzZWxlY3RhYmxTZWFyY2hJbnB1dElkID0gdXNlRmllbGRJZChcbiAgICBwcm9wcy5pZCxcbiAgICBzZWxlY3RhYmxlU2VhcmNoSW5wdXRTZXF1ZW50aWFsSWRcbiAgKTtcblxuICBpZiAoIXByb3BzLmlzUmVhZE9ubHkpIHtcbiAgICB3YXJuaW5nKFxuICAgICAgdHlwZW9mIHByb3BzLm9uQ2hhbmdlID09PSAnZnVuY3Rpb24nLFxuICAgICAgJ1NlbGVjdGFibGVTZWFyY2hJbnB1dDogYG9uQ2hhbmdlYCBpcyByZXF1aXJlZCB3aGVuIGlzIG5vdCByZWFkIG9ubHkuJ1xuICAgICk7XG4gIH1cblxuICB3YXJuSWZNZW51UG9ydGFsUHJvcHNBcmVNaXNzaW5nKHtcbiAgICBtZW51UG9ydGFsWkluZGV4OiBwcm9wcy5tZW51UG9ydGFsWkluZGV4LFxuICAgIG1lbnVQb3J0YWxUYXJnZXQ6IHByb3BzLm1lbnVQb3J0YWxUYXJnZXQsXG4gICAgY29tcG9uZW50TmFtZTogJ1NlbGVjdGFibGVTZWFyY2hJbnB1dCcsXG4gIH0pO1xuXG4gIGNvbnN0IHsgb25Gb2N1cywgb25CbHVyLCBuYW1lIH0gPSBwcm9wcztcbiAgY29uc3QgaGFuZGxlVGV4dElucHV0Rm9jdXMgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgaWYgKG9uRm9jdXMpIHtcbiAgICAgIG9uRm9jdXMoe1xuICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICBpZDogU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldFRleHRJbnB1dElkKHNlbGVjdGFibFNlYXJjaElucHV0SWQpLFxuICAgICAgICAgIG5hbWU6IGdldFRleHRJbnB1dE5hbWUobmFtZSksXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9XG4gIH0sIFtvbkZvY3VzLCBzZWxlY3RhYmxTZWFyY2hJbnB1dElkLCBuYW1lXSk7XG5cbiAgY29uc3QgaGFuZGxlVGV4dElucHV0Qmx1ciA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBpZiAob25CbHVyKSB7XG4gICAgICBvbkJsdXIoe1xuICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICBpZDogU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldFRleHRJbnB1dElkKHNlbGVjdGFibFNlYXJjaElucHV0SWQpLFxuICAgICAgICAgIG5hbWU6IGdldFRleHRJbnB1dE5hbWUobmFtZSksXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9XG4gIH0sIFtvbkJsdXIsIHNlbGVjdGFibFNlYXJjaElucHV0SWQsIG5hbWVdKTtcblxuICBjb25zdCBoYW5kbGVDbGVhciA9ICgpID0+IHtcbiAgICBzZXRTZWFyY2hWYWx1ZSgnJyk7XG4gICAgaWYgKHByb3BzLm9uUmVzZXQpIHtcbiAgICAgIHByb3BzLm9uUmVzZXQoKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlQ2hhbmdlID0gKGV2ZW50OiBDaGFuZ2VFdmVudDxIVE1MSW5wdXRFbGVtZW50PikgPT4ge1xuICAgIHNldFNlYXJjaFZhbHVlKGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgaWYgKHByb3BzLm9uQ2hhbmdlKSB7XG4gICAgICBwcm9wcy5vbkNoYW5nZSh7XG4gICAgICAgIHRhcmdldDoge1xuICAgICAgICAgIGlkOiBTZWxlY3RhYmxlU2VhcmNoSW5wdXQuZ2V0VGV4dElucHV0SWQoc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCksXG4gICAgICAgICAgbmFtZTogZ2V0VGV4dElucHV0TmFtZShwcm9wcy5uYW1lKSxcbiAgICAgICAgICB2YWx1ZTogZXZlbnQudGFyZ2V0LnZhbHVlLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGhhbmRsZVN1Ym1pdCA9IChcbiAgICBldmVudDpcbiAgICAgIHwgS2V5Ym9hcmRFdmVudDxIVE1MQnV0dG9uRWxlbWVudD5cbiAgICAgIHwgTW91c2VFdmVudDxIVE1MQnV0dG9uRWxlbWVudD5cbiAgICAgIHwgS2V5Ym9hcmRFdmVudDxIVE1MSW5wdXRFbGVtZW50PlxuICApID0+IHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGlmIChwcm9wcy5vblN1Ym1pdCkge1xuICAgICAgcHJvcHMub25TdWJtaXQoe1xuICAgICAgICB0ZXh0OiBzZWFyY2hWYWx1ZSxcbiAgICAgICAgb3B0aW9uOiBzZWxlY3RlZE9wdGlvbj8udmFsdWUgPz8gJycsXG4gICAgICB9KTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgZHJvcGRvd25OYW1lID0gZ2V0RHJvcGRvd25OYW1lKHByb3BzLm5hbWUpO1xuICBjb25zdCBkcm9wZG93bklkID0gU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldERyb3Bkb3duSWQoXG4gICAgc2VsZWN0YWJsU2VhcmNoSW5wdXRJZFxuICApO1xuXG4gIGNvbnN0IGhhbmRsZURyb3Bkb3duRm9jdXMgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgaWYgKG9uRm9jdXMpIHtcbiAgICAgIG9uRm9jdXMoe1xuICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICBpZDogZHJvcGRvd25JZCxcbiAgICAgICAgICBuYW1lOiBkcm9wZG93bk5hbWUsXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9XG4gICAgdG9nZ2xlRHJvcGRvd25IYXNGb2N1cyh0cnVlKTtcbiAgfSwgW29uRm9jdXMsIHRvZ2dsZURyb3Bkb3duSGFzRm9jdXMsIGRyb3Bkb3duTmFtZSwgZHJvcGRvd25JZF0pO1xuXG4gIGNvbnN0IGhhbmRsZURyb3Bkb3duQmx1ciA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBpZiAob25CbHVyKSB7XG4gICAgICBvbkJsdXIoe1xuICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICBpZDogZHJvcGRvd25JZCxcbiAgICAgICAgICBuYW1lOiBkcm9wZG93bk5hbWUsXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9XG4gICAgdG9nZ2xlRHJvcGRvd25IYXNGb2N1cyhmYWxzZSk7XG4gIH0sIFt0b2dnbGVEcm9wZG93bkhhc0ZvY3VzLCBvbkJsdXIsIGRyb3Bkb3duTmFtZSwgZHJvcGRvd25JZF0pO1xuXG4gIGNvbnN0IGhhbmRsZUNvbnRhaW5lckJsdXIgPSB1c2VDYWxsYmFjayhcbiAgICAoZXZlbnQpID0+IHtcbiAgICAgIC8vIGVuc3VyZXMgdGhhdCBib3RoIGZpZWxkcyBhcmUgbWFya2VkIGFzIHRvdWNoZWQgd2hlbiBvbmUgb2YgdGhlbVxuICAgICAgLy8gaXMgYmx1cnJlZFxuICAgICAgaWYgKFxuICAgICAgICB0eXBlb2Ygb25CbHVyID09PSAnZnVuY3Rpb24nICYmXG4gICAgICAgICFjb250YWluZXJSZWYuY3VycmVudD8uY29udGFpbnMoZXZlbnQucmVsYXRlZFRhcmdldClcbiAgICAgICkge1xuICAgICAgICBvbkJsdXIoe1xuICAgICAgICAgIHRhcmdldDoge1xuICAgICAgICAgICAgaWQ6IFNlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXREcm9wZG93bklkKHNlbGVjdGFibFNlYXJjaElucHV0SWQpLFxuICAgICAgICAgICAgbmFtZTogZ2V0RHJvcGRvd25OYW1lKG5hbWUpLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuICAgICAgICBvbkJsdXIoe1xuICAgICAgICAgIHRhcmdldDoge1xuICAgICAgICAgICAgaWQ6IFNlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXRUZXh0SW5wdXRJZChzZWxlY3RhYmxTZWFyY2hJbnB1dElkKSxcbiAgICAgICAgICAgIG5hbWU6IGdldFRleHRJbnB1dE5hbWUobmFtZSksXG4gICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSxcbiAgICBbb25CbHVyLCBzZWxlY3RhYmxTZWFyY2hJbnB1dElkLCBuYW1lXVxuICApO1xuXG4gIHJldHVybiAoXG4gICAgPENvbnN0cmFpbnRzLkhvcml6b250YWwgbWF4PXtwcm9wcy5ob3Jpem9udGFsQ29uc3RyYWludH0+XG4gICAgICA8Q29udGFpbmVyXG4gICAgICAgIHJlZj17Y29udGFpbmVyUmVmfVxuICAgICAgICBvbkJsdXI9e2hhbmRsZUNvbnRhaW5lckJsdXJ9XG4gICAgICAgIGRhdGEtdGVzdGlkPVwic2VsZWN0YWJsZS1zZWFyY2gtaW5wdXQtY29udGFpbmVyXCJcbiAgICAgID5cbiAgICAgICAgPENvbnN0cmFpbnRzLkhvcml6b250YWwgbWF4PXtwcm9wcy5tZW51SG9yaXpvbnRhbENvbnN0cmFpbnR9PlxuICAgICAgICAgIDxTZWxlY3RhYmxlU2VsZWN0XG4gICAgICAgICAgICB7Li4ucHJvcHN9XG4gICAgICAgICAgICBpZD17U2VsZWN0YWJsZVNlYXJjaElucHV0LmdldERyb3Bkb3duSWQoc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCl9XG4gICAgICAgICAgICBuYW1lPXtnZXREcm9wZG93bk5hbWUocHJvcHMubmFtZSl9XG4gICAgICAgICAgICBkcm9wZG93bkhhc0ZvY3VzPXtkcm9wZG93bkhhc0ZvY3VzfVxuICAgICAgICAgICAgaGFuZGxlRHJvcGRvd25Gb2N1cz17aGFuZGxlRHJvcGRvd25Gb2N1c31cbiAgICAgICAgICAgIGhhbmRsZURyb3Bkb3duQmx1cj17aGFuZGxlRHJvcGRvd25CbHVyfVxuICAgICAgICAgICAgdGV4dElucHV0UmVmPXt0ZXh0SW5wdXRSZWZ9XG4gICAgICAgICAgICBzZWxlY3RlZE9wdGlvbj17c2VsZWN0ZWRPcHRpb259XG4gICAgICAgICAgICBkYXRhUHJvcHM9e3RyYW5zZm9ybWVkU2VsZWN0RGF0YVByb3BzfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvQ29uc3RyYWludHMuSG9yaXpvbnRhbD5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNzcz17W1xuICAgICAgICAgICAgZ2V0U2VsZWN0YWJsZVNlYXJjaElucHV0Q29udGFpbmVyU3R5bGVzKHByb3BzKSxcbiAgICAgICAgICAgIGRyb3Bkb3duSGFzRm9jdXMgJiZcbiAgICAgICAgICAgICAgIXByb3BzLmlzUmVhZE9ubHkgJiZcbiAgICAgICAgICAgICAgY3NzYFxuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAke2Rlc2lnblRva2Vucy5ib3JkZXJDb2xvckZvcklucHV0V2hlbkZvY3VzZWR9O1xuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICR7ZGVzaWduVG9rZW5zLmJvcmRlckNvbG9yRm9ySW5wdXRXaGVuRm9jdXNlZH07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBgLFxuICAgICAgICAgIF19XG4gICAgICAgID5cbiAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgIHJlZj17dGV4dElucHV0UmVmfVxuICAgICAgICAgICAgaWQ9e1NlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXRUZXh0SW5wdXRJZChzZWxlY3RhYmxTZWFyY2hJbnB1dElkKX1cbiAgICAgICAgICAgIG5hbWU9e2dldFRleHRJbnB1dE5hbWUocHJvcHMubmFtZSl9XG4gICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICB2YWx1ZT17c2VhcmNoVmFsdWV9XG4gICAgICAgICAgICBvbkNoYW5nZT17aGFuZGxlQ2hhbmdlfVxuICAgICAgICAgICAgb25CbHVyPXtoYW5kbGVUZXh0SW5wdXRCbHVyfVxuICAgICAgICAgICAgb25Gb2N1cz17aGFuZGxlVGV4dElucHV0Rm9jdXN9XG4gICAgICAgICAgICBkaXNhYmxlZD17cHJvcHMuaXNEaXNhYmxlZH1cbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPXtwcm9wcy5wbGFjZWhvbGRlcn1cbiAgICAgICAgICAgIHJlYWRPbmx5PXtwcm9wcy5pc1JlYWRPbmx5fVxuICAgICAgICAgICAgYXV0b0ZvY3VzPXtwcm9wcy5pc0F1dG9mb2N1c3NlZH1cbiAgICAgICAgICAgIGF1dG9Db21wbGV0ZT17cHJvcHMuYXV0b0NvbXBsZXRlfVxuICAgICAgICAgICAgYXJpYS1yZWFkb25seT17cHJvcHMuaXNSZWFkT25seX1cbiAgICAgICAgICAgIGNvbnRlbnRFZGl0YWJsZT17IXByb3BzLmlzUmVhZE9ubHl9XG4gICAgICAgICAgICBjc3M9e2dldFNlbGVjdGFibGVTZWFyY2hJbnB1dFN0eWxlcyhwcm9wcyl9XG4gICAgICAgICAgICB7Li4udHJhbnNmb3JtZWRJbnB1dERhdGFQcm9wc31cbiAgICAgICAgICAgIHsuLi5sZWdhY3lEYXRhUHJvcHN9XG4gICAgICAgICAgICAvKiBBUklBICovXG4gICAgICAgICAgICBhcmlhLWludmFsaWQ9e3Byb3BzWydhcmlhLWludmFsaWQnXX1cbiAgICAgICAgICAgIGFyaWEtZXJyb3JtZXNzYWdlPXtwcm9wc1snYXJpYS1lcnJvcm1lc3NhZ2UnXX1cbiAgICAgICAgICAgIGRhdGEtdGVzdGlkPVwic2VsZWN0YWJsZS1pbnB1dFwiXG4gICAgICAgICAgICBvbktleURvd249eyhldmVudCkgPT4ge1xuICAgICAgICAgICAgICBpZiAoIXByb3BzLmlzUmVhZE9ubHkgJiYgZXZlbnQua2V5ID09PSAnRW50ZXInKSB7XG4gICAgICAgICAgICAgICAgaGFuZGxlU3VibWl0KGV2ZW50KTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAvPlxuICAgICAgICAgIHtwcm9wcy5pc0NsZWFyYWJsZSAmJlxuICAgICAgICAgICAgc2VhcmNoVmFsdWUgJiZcbiAgICAgICAgICAgICFwcm9wcy5pc0Rpc2FibGVkICYmXG4gICAgICAgICAgICAhcHJvcHMuaXNSZWFkT25seSAmJiAoXG4gICAgICAgICAgICAgIDxTZWNvbmRhcnlJY29uQnV0dG9uXG4gICAgICAgICAgICAgICAgaWNvbj17PENsb3NlSWNvbiAvPn1cbiAgICAgICAgICAgICAgICBzaXplPVwibWVkaXVtXCJcbiAgICAgICAgICAgICAgICBsYWJlbD17J2NsZWFyLWJ1dHRvbid9XG4gICAgICAgICAgICAgICAgb25DbGljaz17aGFuZGxlQ2xlYXJ9XG4gICAgICAgICAgICAgICAgY3NzPXtnZXRDbGVhckljb25CdXR0b25TdHlsZXMocHJvcHMpfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICB7cHJvcHMuc2hvd1N1Ym1pdEJ1dHRvbiAmJiAoXG4gICAgICAgICAgICA8U2Vjb25kYXJ5SWNvbkJ1dHRvblxuICAgICAgICAgICAgICBpY29uPXs8U2VhcmNoSWNvbiAvPn1cbiAgICAgICAgICAgICAgbGFiZWw9eydzZWFyY2gtYnV0dG9uJ31cbiAgICAgICAgICAgICAgb25DbGljaz17aGFuZGxlU3VibWl0fVxuICAgICAgICAgICAgICBjc3M9e2dldFNlYXJjaEljb25CdXR0b25TdHlsZXMocHJvcHMpfVxuICAgICAgICAgICAgICBpc0Rpc2FibGVkPXtwcm9wcy5pc0Rpc2FibGVkfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvQ29udGFpbmVyPlxuICAgIDwvQ29uc3RyYWludHMuSG9yaXpvbnRhbD5cbiAgKTtcbn07XG5cblNlbGVjdGFibGVTZWFyY2hJbnB1dC5kaXNwbGF5TmFtZSA9ICdTZWxlY3RhYmxlU2VhcmNoSW5wdXQnO1xuU2VsZWN0YWJsZVNlYXJjaElucHV0LmRlZmF1bHRQcm9wcyA9IGRlZmF1bHRQcm9wcztcblNlbGVjdGFibGVTZWFyY2hJbnB1dC5pc0VtcHR5ID0gKFxuICBmb3JtVmFsdWU6IFRTZWxlY3RhYmxlU2VhcmNoSW5wdXRQcm9wc1sndmFsdWUnXVxuKSA9PiAhZm9ybVZhbHVlIHx8IGZvcm1WYWx1ZS50ZXh0LnRyaW0oKSA9PT0gJyc7XG5TZWxlY3RhYmxlU2VhcmNoSW5wdXQuZ2V0VGV4dElucHV0SWQgPSBnZXRUZXh0SW5wdXROYW1lO1xuU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldERyb3Bkb3duSWQgPSBnZXREcm9wZG93bk5hbWU7XG5cbmV4cG9ydCBkZWZhdWx0IFNlbGVjdGFibGVTZWFyY2hJbnB1dDtcbiJdfQ== */",
|
|
284
295
|
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
285
296
|
});
|
|
286
297
|
const getTextInputName = name => name ? "".concat(name, ".textInput") : undefined;
|
|
@@ -295,8 +306,17 @@ const defaultProps = {
|
|
|
295
306
|
};
|
|
296
307
|
const selectableSearchInputSequentialId = utils.createSequentialId('selectable-search-input-');
|
|
297
308
|
const isOptionObject = option => option.options !== undefined;
|
|
298
|
-
const
|
|
309
|
+
const transformDataProps = dataProps => {
|
|
299
310
|
var _context;
|
|
311
|
+
return _Object$fromEntries__default["default"](_mapInstanceProperty__default["default"](_context = _Object$entries__default["default"](dataProps || {})).call(_context, _ref => {
|
|
312
|
+
let _ref2 = _slicedToArray(_ref, 2),
|
|
313
|
+
key = _ref2[0],
|
|
314
|
+
value = _ref2[1];
|
|
315
|
+
return ["data-".concat(key), value];
|
|
316
|
+
}));
|
|
317
|
+
};
|
|
318
|
+
const SelectableSearchInput = props => {
|
|
319
|
+
var _context2;
|
|
300
320
|
const _useToggleState = hooks.useToggleState(false),
|
|
301
321
|
_useToggleState2 = _slicedToArray(_useToggleState, 2),
|
|
302
322
|
dropdownHasFocus = _useToggleState2[0],
|
|
@@ -307,7 +327,10 @@ const SelectableSearchInput = props => {
|
|
|
307
327
|
setSearchValue = _useState2[1];
|
|
308
328
|
const containerRef = react$1.useRef(null);
|
|
309
329
|
const textInputRef = react$1.useRef(null);
|
|
310
|
-
const
|
|
330
|
+
const legacyDataProps = utils.filterDataAttributes(props);
|
|
331
|
+
const transformedSelectDataProps = transformDataProps(props.selectDataProps);
|
|
332
|
+
const transformedInputDataProps = transformDataProps(props.inputDataProps);
|
|
333
|
+
const optionsWithoutGroups = _flatMapInstanceProperty__default["default"](_context2 = props.options).call(_context2, option => {
|
|
311
334
|
if (isOptionObject(option)) {
|
|
312
335
|
return option.options;
|
|
313
336
|
}
|
|
@@ -432,11 +455,12 @@ const SelectableSearchInput = props => {
|
|
|
432
455
|
handleDropdownFocus: handleDropdownFocus,
|
|
433
456
|
handleDropdownBlur: handleDropdownBlur,
|
|
434
457
|
textInputRef: textInputRef,
|
|
435
|
-
selectedOption: selectedOption
|
|
458
|
+
selectedOption: selectedOption,
|
|
459
|
+
dataProps: transformedSelectDataProps
|
|
436
460
|
}))
|
|
437
461
|
}), jsxRuntime.jsxs("div", {
|
|
438
|
-
css: [getSelectableSearchInputContainerStyles(props), dropdownHasFocus && !props.isReadOnly && /*#__PURE__*/react.css("border-left-color:", designSystem.designTokens.borderColorForInputWhenFocused, ";&:hover{border-left-color:", designSystem.designTokens.borderColorForInputWhenFocused, ";}" + (process.env.NODE_ENV === "production" ? "" : ";label:SelectableSearchInput;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNlbGVjdGFibGUtc2VhcmNoLWlucHV0LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFzWmlCIiwiZmlsZSI6InNlbGVjdGFibGUtc2VhcmNoLWlucHV0LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIHR5cGUgTW91c2VFdmVudCxcbiAgdHlwZSBLZXlib2FyZEV2ZW50LFxuICB0eXBlIENoYW5nZUV2ZW50LFxuICB0eXBlIFJlYWN0Tm9kZSxcbiAgdXNlU3RhdGUsXG4gIHVzZUNhbGxiYWNrLFxuICB1c2VSZWYsXG59IGZyb20gJ3JlYWN0JztcbmltcG9ydCBTZWNvbmRhcnlJY29uQnV0dG9uIGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3NlY29uZGFyeS1pY29uLWJ1dHRvbic7XG5pbXBvcnQgQ29uc3RyYWludHMgZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvY29uc3RyYWludHMnO1xuaW1wb3J0IHsgU2VhcmNoSWNvbiwgQ2xvc2VJY29uIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvaWNvbnMnO1xuaW1wb3J0IHtcbiAgY3JlYXRlU2VxdWVudGlhbElkLFxuICBmaWx0ZXJEYXRhQXR0cmlidXRlcyxcbiAgd2FybmluZyxcbn0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvdXRpbHMnO1xuaW1wb3J0IHsgd2FybklmTWVudVBvcnRhbFByb3BzQXJlTWlzc2luZyB9IGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3NlbGVjdC11dGlscyc7XG5pbXBvcnQge1xuICBnZXRDbGVhckljb25CdXR0b25TdHlsZXMsXG4gIGdldFNlYXJjaEljb25CdXR0b25TdHlsZXMsXG4gIGdldFNlbGVjdGFibGVTZWFyY2hJbnB1dENvbnRhaW5lclN0eWxlcyxcbiAgZ2V0U2VsZWN0YWJsZVNlYXJjaElucHV0U3R5bGVzLFxufSBmcm9tICcuL3NlbGVjdGFibGUtc2VhcmNoLWlucHV0LnN0eWxlcyc7XG5pbXBvcnQgU2VsZWN0YWJsZVNlbGVjdCBmcm9tICcuL3NlbGVjdGFibGUtc2VsZWN0JztcbmltcG9ydCB7IHVzZUZpZWxkSWQsIHVzZVRvZ2dsZVN0YXRlIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvaG9va3MnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgZGVzaWduVG9rZW5zIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvZGVzaWduLXN5c3RlbSc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgeyB0eXBlIFByb3BzIGFzIFJlYWN0U2VsZWN0UHJvcHMgfSBmcm9tICdyZWFjdC1zZWxlY3QnO1xuXG5jb25zdCBDb250YWluZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuYDtcblxuY29uc3QgZ2V0VGV4dElucHV0TmFtZSA9IChuYW1lPzogc3RyaW5nKSA9PlxuICBuYW1lID8gYCR7bmFtZX0udGV4dElucHV0YCA6IHVuZGVmaW5lZDtcblxuY29uc3QgZ2V0RHJvcGRvd25OYW1lID0gKG5hbWU/OiBzdHJpbmcpID0+XG4gIG5hbWUgPyBgJHtuYW1lfS5kcm9wZG93bmAgOiB1bmRlZmluZWQ7XG5cbmV4cG9ydCB0eXBlIFRDdXN0b21FdmVudCA9IHtcbiAgdGFyZ2V0OiB7XG4gICAgaWQ/OiBzdHJpbmc7XG4gICAgbmFtZT86IHN0cmluZztcbiAgICB2YWx1ZT86IHN0cmluZyB8IHN0cmluZ1tdIHwgbnVsbDtcbiAgfTtcbiAgcGVyc2lzdD86ICgpID0+IHZvaWQ7XG59O1xuXG5leHBvcnQgdHlwZSBUVmFsdWUgPSB7XG4gIHRleHQ6IHN0cmluZztcbiAgb3B0aW9uOiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBUT3B0aW9uID0ge1xuICB2YWx1ZTogc3RyaW5nO1xuICBsYWJlbD86IFJlYWN0Tm9kZTtcbn07XG5cbmV4cG9ydCB0eXBlIFRPcHRpb25PYmplY3QgPSB7XG4gIG9wdGlvbnM6IFRPcHRpb25bXTtcbn07XG5cbmV4cG9ydCB0eXBlIFRPcHRpb25zID0gVE9wdGlvbltdIHwgVE9wdGlvbk9iamVjdFtdO1xuXG5leHBvcnQgdHlwZSBUU2VsZWN0YWJsZVNlYXJjaElucHV0UHJvcHMgPSB7XG4gIC8qKlxuICAgKiBVc2VkIGFzIEhUTUwgaWQgcHJvcGVydHkuIEFuIGlkIGlzIGF1dG8tZ2VuZXJhdGVkIHdoZW4gaXQgaXMgbm90IHNwZWNpZmllZC5cbiAgICovXG4gIGlkPzogc3RyaW5nO1xuICAvKipcbiAgICogVXNlZCBhcyBIVE1MIGF1dG9jb21wbGV0ZSBwcm9wZXJ0eVxuICAgKi9cbiAgYXV0b0NvbXBsZXRlPzogc3RyaW5nO1xuICAvKipcbiAgICogSW5kaWNhdGUgaWYgdGhlIHZhbHVlIGVudGVyZWQgaW4gdGhlIGlucHV0IGlzIGludmFsaWQuXG4gICAqL1xuICAnYXJpYS1pbnZhbGlkJz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBIVE1MIElEIG9mIGFuIGVsZW1lbnQgY29udGFpbmluZyBhbiBlcnJvciBtZXNzYWdlIHJlbGF0ZWQgdG8gdGhlIGlucHV0LlxuICAgKi9cbiAgJ2FyaWEtZXJyb3JtZXNzYWdlJz86IHN0cmluZztcbiAgLyoqXG4gICAqIFVzZWQgYXMgSFRNTCBuYW1lIG9mIHRoZSBpbnB1dCBjb21wb25lbnQgcHJvcGVydHkuXG4gICAqL1xuICBuYW1lPzogc3RyaW5nO1xuICAvKipcbiAgICogVmFsdWUgb2YgdGhlIGlucHV0LiBDb25zaXN0cyBvZiB0ZXh0IGlucHV0IGFuZCBzZWxlY3RlZCBvcHRpb24uXG4gICAqL1xuICB2YWx1ZTogVFZhbHVlO1xuICAvKipcbiAgICogQ2FsbGVkIHdpdGggdGhlIGV2ZW50IG9mIHRoZSBpbnB1dCBvciBkcm9wZG93biB3aGVuIGVpdGhlciB0aGUgc2VsZWN0YWJsZSBkcm9wZG93biBvciB0aGUgdGV4dCBpbnB1dCBoYXZlIGNoYW5nZWQuXG4gICAqIFRoZSBjaGFuZ2UgZXZlbnQgZnJvbSB0aGUgdGV4dCBpbnB1dCBoYXMgYSBzdWZmaXggb2YgYC50ZXh0SW5wdXRgIGFuZCB0aGUgY2hhbmdlIGV2ZW50IGZyb20gdGhlIGRyb3Bkb3duIGhhcyBhIHN1ZmZpeCBvZiBgLmRyb3Bkb3duYC5cbiAgICovXG4gIG9uQ2hhbmdlPzogKGV2ZW50OiBUQ3VzdG9tRXZlbnQpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiBpbnB1dCBpcyBibHVycmVkXG4gICAqL1xuICBvbkJsdXI/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGlucHV0IGlzIGZvY3VzZWRcbiAgICovXG4gIG9uRm9jdXM/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIEhhbmRsZXIgd2hlbiB0aGUgc2VhcmNoIGJ1dHRvbiBpcyBjbGlja2VkLlxuICAgKi9cbiAgb25TdWJtaXQ6ICh2YWx1ZTogVFZhbHVlKSA9PiB2b2lkO1xuICAvKipcbiAgICogSGFuZGxlciB3aGVuIHRoZSBjbGVhciBidXR0b24gaXMgY2xpY2tlZC5cbiAgICovXG4gIG9uUmVzZXQ/OiAoKSA9PiB2b2lkO1xuICAvKipcbiAgICogRm9jdXMgdGhlIGlucHV0IG9uIGluaXRpYWwgcmVuZGVyXG4gICAqL1xuICBpc0F1dG9mb2N1c3NlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgdGhhdCB0aGUgaW5wdXQgY2Fubm90IGJlIG1vZGlmaWVkIChlLmcgbm90IGF1dGhvcml6ZWQsIG9yIGNoYW5nZXMgY3VycmVudGx5IHNhdmluZykuXG4gICAqL1xuICBpc0Rpc2FibGVkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGF0IHRoZSBmaWVsZCBpcyBkaXNwbGF5aW5nIHJlYWQtb25seSBjb250ZW50XG4gICAqL1xuICBpc1JlYWRPbmx5PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyBpZiB0aGUgaW5wdXQgaGFzIGludmFsaWQgdmFsdWVzXG4gICAqL1xuICBoYXNFcnJvcj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaWYgdGhlIGlucHV0IGhhcyB3YXJuaW5nIHZhbHVlc1xuICAgKi9cbiAgaGFzV2FybmluZz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBQbGFjZWhvbGRlciB0ZXh0IGZvciB0aGUgaW5wdXRcbiAgICovXG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xuICAvKipcbiAgICogSW5kaWNhdGVzIGlmIHRoZSBpbnB1dCBzaG91bGQgYmUgY2xlYXJlZCB3aGVuIHRoZSBjbGVhciBidXR0b24gaXMgY2xpY2tlZC5cbiAgICogRGVmYXVsdHMgdG8gdHJ1ZS5cbiAgICpcbiAgICovXG4gIGlzQ2xlYXJhYmxlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEhvcml6b250YWwgc2l6ZSBsaW1pdCBvZiB0aGUgaW5wdXQgZmllbGRzLlxuICAgKi9cbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQ/OiAxMCB8IDExIHwgMTIgfCAxMyB8IDE0IHwgMTUgfCAxNiB8ICdzY2FsZScgfCAnYXV0byc7XG4gIC8qKlxuICAgKiBBcnJheSBvZiBvcHRpb25zIHRoYXQgcG9wdWxhdGUgdGhlIHNlbGVjdCBtZW51XG4gICAqL1xuICBvcHRpb25zOiBUT3B0aW9ucztcbiAgLyoqXG4gICAqIHotaW5kZXggdmFsdWUgZm9yIHRoZSBtZW51IHBvcnRhbFxuICAgKiA8YnI+XG4gICAqIFVzZSBpbiBjb25qdW5jdGlvbiB3aXRoIGBtZW51UG9ydGFsVGFyZ2V0YFxuICAgKi9cbiAgbWVudVBvcnRhbFpJbmRleD86IG51bWJlcjtcbiAgLyoqXG4gICAqIERvbSBlbGVtZW50IHRvIHBvcnRhbCB0aGUgc2VsZWN0IG1lbnUgdG9cbiAgICogPGJyPlxuICAgKiBbUHJvcHMgZnJvbSBSZWFjdCBzZWxlY3Qgd2FzIHVzZWRdKGh0dHBzOi8vcmVhY3Qtc2VsZWN0LmNvbS9wcm9wcylcbiAgICovXG4gIG1lbnVQb3J0YWxUYXJnZXQ/OiBSZWFjdFNlbGVjdFByb3BzWydtZW51UG9ydGFsVGFyZ2V0J107XG4gIC8qKlxuICAgKiB3aGV0aGVyIHRoZSBtZW51IHNob3VsZCBibG9jayBzY3JvbGwgd2hpbGUgb3BlblxuICAgKiA8YnI+XG4gICAqIFtQcm9wcyBmcm9tIFJlYWN0IHNlbGVjdCB3YXMgdXNlZF0oaHR0cHM6Ly9yZWFjdC1zZWxlY3QuY29tL3Byb3BzKVxuICAgKi9cbiAgbWVudVNob3VsZEJsb2NrU2Nyb2xsPzogUmVhY3RTZWxlY3RQcm9wc1snbWVudVNob3VsZEJsb2NrU2Nyb2xsJ107XG4gIC8qKlxuICAgKiBIYW5kbGUgY2hhbmdlIGV2ZW50cyBvbiB0aGUgbWVudSBpbnB1dFxuICAgKiA8YnI+XG4gICAqIFtQcm9wcyBmcm9tIFJlYWN0IHNlbGVjdCB3YXMgdXNlZF0oaHR0cHM6Ly9yZWFjdC1zZWxlY3QuY29tL3Byb3BzKVxuICAgKi9cbiAgb25NZW51SW5wdXRDaGFuZ2U/OiBSZWFjdFNlbGVjdFByb3BzWydvbklucHV0Q2hhbmdlJ107XG4gIC8qKlxuICAgKiBDYW4gYmUgdXNlZCB0byByZW5kZXIgYSBjdXN0b20gdmFsdWUgd2hlbiB0aGVyZSBhcmUgbm8gb3B0aW9ucyAoZWl0aGVyIGJlY2F1c2Ugb2Ygbm8gc2VhcmNoIHJlc3VsdHMsIG9yIGFsbCBvcHRpb25zIGhhdmUgYmVlbiB1c2VkLCBvciB0aGVyZSB3ZXJlIG5vbmUgaW4gdGhlIGZpcnN0IHBsYWNlKS4gR2V0cyBjYWxsZWQgd2l0aCB7IGlucHV0VmFsdWU6IFN0cmluZyB9LlxuICAgKiA8YnIgLz5cbiAgICogYGlucHV0VmFsdWVgIHdpbGwgYmUgYW4gZW1wdHkgc3RyaW5nIHdoZW4gbm8gc2VhcmNoIHRleHQgaXMgcHJlc2VudC5cbiAgICogPGJyPlxuICAgKiBbUHJvcHMgZnJvbSBSZWFjdCBzZWxlY3Qgd2FzIHVzZWRdKGh0dHBzOi8vcmVhY3Qtc2VsZWN0LmNvbS9wcm9wcylcbiAgICovXG4gIG5vTWVudU9wdGlvbnNNZXNzYWdlPzogUmVhY3RTZWxlY3RQcm9wc1snbm9PcHRpb25zTWVzc2FnZSddO1xuICAvKipcbiAgICogV2hldGhlciB0byBlbmFibGUgc2VhcmNoIGZ1bmN0aW9uYWxpdHkuXG4gICAqIDxicj5cbiAgICogW1Byb3BzIGZyb20gUmVhY3Qgc2VsZWN0IHdhcyB1c2VkXShodHRwczovL3JlYWN0LXNlbGVjdC5jb20vcHJvcHMpXG4gICAqL1xuICBpc01lbnVTZWFyY2hhYmxlPzogUmVhY3RTZWxlY3RQcm9wc1snaXNTZWFyY2hhYmxlJ107XG4gIC8qKlxuICAgKiBNYXhpbXVtIGhlaWdodCBvZiB0aGUgbWVudSBiZWZvcmUgc2Nyb2xsaW5nXG4gICAqIDxicj5cbiAgICogW1Byb3BzIGZyb20gUmVhY3Qgc2VsZWN0IHdhcyB1c2VkXShodHRwczovL3JlYWN0LXNlbGVjdC5jb20vcHJvcHMpXG4gICAqL1xuICBtYXhNZW51SGVpZ2h0PzogUmVhY3RTZWxlY3RQcm9wc1snbWF4TWVudUhlaWdodCddO1xuICAvKipcbiAgICogV2hldGhlciB0aGUgbWVudSBzaG91bGQgY2xvc2UgYWZ0ZXIgYSB2YWx1ZSBpcyBzZWxlY3RlZC4gRGVmYXVsdHMgdG8gYHRydWVgLlxuICAgKiA8YnI+XG4gICAqIFtQcm9wcyBmcm9tIFJlYWN0IHNlbGVjdCB3YXMgdXNlZF0oaHR0cHM6Ly9yZWFjdC1zZWxlY3QuY29tL3Byb3BzKVxuICAgKi9cbiAgY2xvc2VNZW51T25TZWxlY3Q/OiBSZWFjdFNlbGVjdFByb3BzWydjbG9zZU1lbnVPblNlbGVjdCddO1xuICAvKipcbiAgICogSG9yaXpvbnRhbCBzaXplIGxpbWl0IGZvciB0aGUgZHJvcGRvd24gbWVudS5cbiAgICovXG4gIG1lbnVIb3Jpem9udGFsQ29uc3RyYWludD86IDMgfCA0IHwgNTtcbiAgLyoqXG4gICAqIFNob3cgc3VibWl0IGJ1dHRvbiBpbiB0aGUgaW5wdXRcbiAgICovXG4gIHNob3dTdWJtaXRCdXR0b24/OiBib29sZWFuO1xufTtcblxuY29uc3QgZGVmYXVsdFByb3BzOiBQaWNrPFxuICBUU2VsZWN0YWJsZVNlYXJjaElucHV0UHJvcHMsXG4gIHwgJ2hvcml6b250YWxDb25zdHJhaW50J1xuICB8ICdpc0NsZWFyYWJsZSdcbiAgfCAnbWVudUhvcml6b250YWxDb25zdHJhaW50J1xuICB8ICdzaG93U3VibWl0QnV0dG9uJ1xuICB8ICdtZW51UG9ydGFsWkluZGV4J1xuICB8ICdvcHRpb25zJ1xuPiA9IHtcbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQ6ICdzY2FsZScsXG4gIGlzQ2xlYXJhYmxlOiB0cnVlLFxuICBtZW51SG9yaXpvbnRhbENvbnN0cmFpbnQ6IDMsXG4gIHNob3dTdWJtaXRCdXR0b246IHRydWUsXG4gIG1lbnVQb3J0YWxaSW5kZXg6IDEsXG4gIG9wdGlvbnM6IFtdLFxufTtcblxuY29uc3Qgc2VsZWN0YWJsZVNlYXJjaElucHV0U2VxdWVudGlhbElkID0gY3JlYXRlU2VxdWVudGlhbElkKFxuICAnc2VsZWN0YWJsZS1zZWFyY2gtaW5wdXQtJ1xuKTtcblxuY29uc3QgaXNPcHRpb25PYmplY3QgPSAoXG4gIG9wdGlvbjogVE9wdGlvbiB8IFRPcHRpb25PYmplY3Rcbik6IG9wdGlvbiBpcyBUT3B0aW9uT2JqZWN0ID0+IChvcHRpb24gYXMgVE9wdGlvbk9iamVjdCkub3B0aW9ucyAhPT0gdW5kZWZpbmVkO1xuXG5jb25zdCBTZWxlY3RhYmxlU2VhcmNoSW5wdXQgPSAocHJvcHM6IFRTZWxlY3RhYmxlU2VhcmNoSW5wdXRQcm9wcykgPT4ge1xuICBjb25zdCBbZHJvcGRvd25IYXNGb2N1cywgdG9nZ2xlRHJvcGRvd25IYXNGb2N1c10gPSB1c2VUb2dnbGVTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtzZWFyY2hWYWx1ZSwgc2V0U2VhcmNoVmFsdWVdID0gdXNlU3RhdGUocHJvcHMudmFsdWUudGV4dCB8fCAnJyk7XG4gIGNvbnN0IGNvbnRhaW5lclJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbCk7XG4gIGNvbnN0IHRleHRJbnB1dFJlZiA9IHVzZVJlZjxIVE1MSW5wdXRFbGVtZW50PihudWxsKTtcblxuICBjb25zdCBvcHRpb25zV2l0aG91dEdyb3VwcyA9IHByb3BzLm9wdGlvbnMuZmxhdE1hcCgob3B0aW9uKSA9PiB7XG4gICAgaWYgKGlzT3B0aW9uT2JqZWN0KG9wdGlvbikpIHtcbiAgICAgIHJldHVybiBvcHRpb24ub3B0aW9ucztcbiAgICB9XG4gICAgcmV0dXJuIG9wdGlvbjtcbiAgfSk7XG5cbiAgY29uc3Qgc2VsZWN0ZWRPcHRpb24gPSBvcHRpb25zV2l0aG91dEdyb3Vwcy5maW5kKFxuICAgIChvcHRpb24pID0+IG9wdGlvbi52YWx1ZSA9PT0gcHJvcHMudmFsdWUub3B0aW9uXG4gICk7XG5cbiAgY29uc3Qgc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCA9IHVzZUZpZWxkSWQoXG4gICAgcHJvcHMuaWQsXG4gICAgc2VsZWN0YWJsZVNlYXJjaElucHV0U2VxdWVudGlhbElkXG4gICk7XG5cbiAgaWYgKCFwcm9wcy5pc1JlYWRPbmx5KSB7XG4gICAgd2FybmluZyhcbiAgICAgIHR5cGVvZiBwcm9wcy5vbkNoYW5nZSA9PT0gJ2Z1bmN0aW9uJyxcbiAgICAgICdTZWxlY3RhYmxlU2VhcmNoSW5wdXQ6IGBvbkNoYW5nZWAgaXMgcmVxdWlyZWQgd2hlbiBpcyBub3QgcmVhZCBvbmx5LidcbiAgICApO1xuICB9XG5cbiAgd2FybklmTWVudVBvcnRhbFByb3BzQXJlTWlzc2luZyh7XG4gICAgbWVudVBvcnRhbFpJbmRleDogcHJvcHMubWVudVBvcnRhbFpJbmRleCxcbiAgICBtZW51UG9ydGFsVGFyZ2V0OiBwcm9wcy5tZW51UG9ydGFsVGFyZ2V0LFxuICAgIGNvbXBvbmVudE5hbWU6ICdTZWxlY3RhYmxlU2VhcmNoSW5wdXQnLFxuICB9KTtcblxuICBjb25zdCB7IG9uRm9jdXMsIG9uQmx1ciwgbmFtZSB9ID0gcHJvcHM7XG4gIGNvbnN0IGhhbmRsZVRleHRJbnB1dEZvY3VzID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIGlmIChvbkZvY3VzKSB7XG4gICAgICBvbkZvY3VzKHtcbiAgICAgICAgdGFyZ2V0OiB7XG4gICAgICAgICAgaWQ6IFNlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXRUZXh0SW5wdXRJZChzZWxlY3RhYmxTZWFyY2hJbnB1dElkKSxcbiAgICAgICAgICBuYW1lOiBnZXRUZXh0SW5wdXROYW1lKG5hbWUpLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfVxuICB9LCBbb25Gb2N1cywgc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCwgbmFtZV0pO1xuXG4gIGNvbnN0IGhhbmRsZVRleHRJbnB1dEJsdXIgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgaWYgKG9uQmx1cikge1xuICAgICAgb25CbHVyKHtcbiAgICAgICAgdGFyZ2V0OiB7XG4gICAgICAgICAgaWQ6IFNlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXRUZXh0SW5wdXRJZChzZWxlY3RhYmxTZWFyY2hJbnB1dElkKSxcbiAgICAgICAgICBuYW1lOiBnZXRUZXh0SW5wdXROYW1lKG5hbWUpLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfVxuICB9LCBbb25CbHVyLCBzZWxlY3RhYmxTZWFyY2hJbnB1dElkLCBuYW1lXSk7XG5cbiAgY29uc3QgaGFuZGxlQ2xlYXIgPSAoKSA9PiB7XG4gICAgc2V0U2VhcmNoVmFsdWUoJycpO1xuICAgIGlmIChwcm9wcy5vblJlc2V0KSB7XG4gICAgICBwcm9wcy5vblJlc2V0KCk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUNoYW5nZSA9IChldmVudDogQ2hhbmdlRXZlbnQ8SFRNTElucHV0RWxlbWVudD4pID0+IHtcbiAgICBzZXRTZWFyY2hWYWx1ZShldmVudC50YXJnZXQudmFsdWUpO1xuICAgIGlmIChwcm9wcy5vbkNoYW5nZSkge1xuICAgICAgcHJvcHMub25DaGFuZ2Uoe1xuICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICBpZDogU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldFRleHRJbnB1dElkKHNlbGVjdGFibFNlYXJjaElucHV0SWQpLFxuICAgICAgICAgIG5hbWU6IGdldFRleHRJbnB1dE5hbWUocHJvcHMubmFtZSksXG4gICAgICAgICAgdmFsdWU6IGV2ZW50LnRhcmdldC52YWx1ZSxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBoYW5kbGVTdWJtaXQgPSAoXG4gICAgZXZlbnQ6XG4gICAgICB8IEtleWJvYXJkRXZlbnQ8SFRNTEJ1dHRvbkVsZW1lbnQ+XG4gICAgICB8IE1vdXNlRXZlbnQ8SFRNTEJ1dHRvbkVsZW1lbnQ+XG4gICAgICB8IEtleWJvYXJkRXZlbnQ8SFRNTElucHV0RWxlbWVudD5cbiAgKSA9PiB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICBpZiAocHJvcHMub25TdWJtaXQpIHtcbiAgICAgIHByb3BzLm9uU3VibWl0KHtcbiAgICAgICAgdGV4dDogc2VhcmNoVmFsdWUsXG4gICAgICAgIG9wdGlvbjogc2VsZWN0ZWRPcHRpb24/LnZhbHVlID8/ICcnLFxuICAgICAgfSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGRyb3Bkb3duTmFtZSA9IGdldERyb3Bkb3duTmFtZShwcm9wcy5uYW1lKTtcbiAgY29uc3QgZHJvcGRvd25JZCA9IFNlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXREcm9wZG93bklkKFxuICAgIHNlbGVjdGFibFNlYXJjaElucHV0SWRcbiAgKTtcblxuICBjb25zdCBoYW5kbGVEcm9wZG93bkZvY3VzID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIGlmIChvbkZvY3VzKSB7XG4gICAgICBvbkZvY3VzKHtcbiAgICAgICAgdGFyZ2V0OiB7XG4gICAgICAgICAgaWQ6IGRyb3Bkb3duSWQsXG4gICAgICAgICAgbmFtZTogZHJvcGRvd25OYW1lLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfVxuICAgIHRvZ2dsZURyb3Bkb3duSGFzRm9jdXModHJ1ZSk7XG4gIH0sIFtvbkZvY3VzLCB0b2dnbGVEcm9wZG93bkhhc0ZvY3VzLCBkcm9wZG93bk5hbWUsIGRyb3Bkb3duSWRdKTtcblxuICBjb25zdCBoYW5kbGVEcm9wZG93bkJsdXIgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgaWYgKG9uQmx1cikge1xuICAgICAgb25CbHVyKHtcbiAgICAgICAgdGFyZ2V0OiB7XG4gICAgICAgICAgaWQ6IGRyb3Bkb3duSWQsXG4gICAgICAgICAgbmFtZTogZHJvcGRvd25OYW1lLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfVxuICAgIHRvZ2dsZURyb3Bkb3duSGFzRm9jdXMoZmFsc2UpO1xuICB9LCBbdG9nZ2xlRHJvcGRvd25IYXNGb2N1cywgb25CbHVyLCBkcm9wZG93bk5hbWUsIGRyb3Bkb3duSWRdKTtcblxuICBjb25zdCBoYW5kbGVDb250YWluZXJCbHVyID0gdXNlQ2FsbGJhY2soXG4gICAgKGV2ZW50KSA9PiB7XG4gICAgICAvLyBlbnN1cmVzIHRoYXQgYm90aCBmaWVsZHMgYXJlIG1hcmtlZCBhcyB0b3VjaGVkIHdoZW4gb25lIG9mIHRoZW1cbiAgICAgIC8vIGlzIGJsdXJyZWRcbiAgICAgIGlmIChcbiAgICAgICAgdHlwZW9mIG9uQmx1ciA9PT0gJ2Z1bmN0aW9uJyAmJlxuICAgICAgICAhY29udGFpbmVyUmVmLmN1cnJlbnQ/LmNvbnRhaW5zKGV2ZW50LnJlbGF0ZWRUYXJnZXQpXG4gICAgICApIHtcbiAgICAgICAgb25CbHVyKHtcbiAgICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICAgIGlkOiBTZWxlY3RhYmxlU2VhcmNoSW5wdXQuZ2V0RHJvcGRvd25JZChzZWxlY3RhYmxTZWFyY2hJbnB1dElkKSxcbiAgICAgICAgICAgIG5hbWU6IGdldERyb3Bkb3duTmFtZShuYW1lKSxcbiAgICAgICAgICB9LFxuICAgICAgICB9KTtcbiAgICAgICAgb25CbHVyKHtcbiAgICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICAgIGlkOiBTZWxlY3RhYmxlU2VhcmNoSW5wdXQuZ2V0VGV4dElucHV0SWQoc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCksXG4gICAgICAgICAgICBuYW1lOiBnZXRUZXh0SW5wdXROYW1lKG5hbWUpLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0sXG4gICAgW29uQmx1ciwgc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCwgbmFtZV1cbiAgKTtcblxuICByZXR1cm4gKFxuICAgIDxDb25zdHJhaW50cy5Ib3Jpem9udGFsIG1heD17cHJvcHMuaG9yaXpvbnRhbENvbnN0cmFpbnR9PlxuICAgICAgPENvbnRhaW5lclxuICAgICAgICByZWY9e2NvbnRhaW5lclJlZn1cbiAgICAgICAgb25CbHVyPXtoYW5kbGVDb250YWluZXJCbHVyfVxuICAgICAgICBkYXRhLXRlc3RpZD1cInNlbGVjdGFibGUtc2VhcmNoLWlucHV0LWNvbnRhaW5lclwiXG4gICAgICA+XG4gICAgICAgIDxDb25zdHJhaW50cy5Ib3Jpem9udGFsIG1heD17cHJvcHMubWVudUhvcml6b250YWxDb25zdHJhaW50fT5cbiAgICAgICAgICA8U2VsZWN0YWJsZVNlbGVjdFxuICAgICAgICAgICAgey4uLnByb3BzfVxuICAgICAgICAgICAgaWQ9e1NlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXREcm9wZG93bklkKHNlbGVjdGFibFNlYXJjaElucHV0SWQpfVxuICAgICAgICAgICAgbmFtZT17Z2V0RHJvcGRvd25OYW1lKHByb3BzLm5hbWUpfVxuICAgICAgICAgICAgZHJvcGRvd25IYXNGb2N1cz17ZHJvcGRvd25IYXNGb2N1c31cbiAgICAgICAgICAgIGhhbmRsZURyb3Bkb3duRm9jdXM9e2hhbmRsZURyb3Bkb3duRm9jdXN9XG4gICAgICAgICAgICBoYW5kbGVEcm9wZG93bkJsdXI9e2hhbmRsZURyb3Bkb3duQmx1cn1cbiAgICAgICAgICAgIHRleHRJbnB1dFJlZj17dGV4dElucHV0UmVmfVxuICAgICAgICAgICAgc2VsZWN0ZWRPcHRpb249e3NlbGVjdGVkT3B0aW9ufVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvQ29uc3RyYWludHMuSG9yaXpvbnRhbD5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNzcz17W1xuICAgICAgICAgICAgZ2V0U2VsZWN0YWJsZVNlYXJjaElucHV0Q29udGFpbmVyU3R5bGVzKHByb3BzKSxcbiAgICAgICAgICAgIGRyb3Bkb3duSGFzRm9jdXMgJiZcbiAgICAgICAgICAgICAgIXByb3BzLmlzUmVhZE9ubHkgJiZcbiAgICAgICAgICAgICAgY3NzYFxuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAke2Rlc2lnblRva2Vucy5ib3JkZXJDb2xvckZvcklucHV0V2hlbkZvY3VzZWR9O1xuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICR7ZGVzaWduVG9rZW5zLmJvcmRlckNvbG9yRm9ySW5wdXRXaGVuRm9jdXNlZH07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBgLFxuICAgICAgICAgIF19XG4gICAgICAgID5cbiAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgIHJlZj17dGV4dElucHV0UmVmfVxuICAgICAgICAgICAgaWQ9e1NlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXRUZXh0SW5wdXRJZChzZWxlY3RhYmxTZWFyY2hJbnB1dElkKX1cbiAgICAgICAgICAgIG5hbWU9e2dldFRleHRJbnB1dE5hbWUocHJvcHMubmFtZSl9XG4gICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICB2YWx1ZT17c2VhcmNoVmFsdWV9XG4gICAgICAgICAgICBvbkNoYW5nZT17aGFuZGxlQ2hhbmdlfVxuICAgICAgICAgICAgb25CbHVyPXtoYW5kbGVUZXh0SW5wdXRCbHVyfVxuICAgICAgICAgICAgb25Gb2N1cz17aGFuZGxlVGV4dElucHV0Rm9jdXN9XG4gICAgICAgICAgICBkaXNhYmxlZD17cHJvcHMuaXNEaXNhYmxlZH1cbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPXtwcm9wcy5wbGFjZWhvbGRlcn1cbiAgICAgICAgICAgIHJlYWRPbmx5PXtwcm9wcy5pc1JlYWRPbmx5fVxuICAgICAgICAgICAgYXV0b0ZvY3VzPXtwcm9wcy5pc0F1dG9mb2N1c3NlZH1cbiAgICAgICAgICAgIGF1dG9Db21wbGV0ZT17cHJvcHMuYXV0b0NvbXBsZXRlfVxuICAgICAgICAgICAgYXJpYS1yZWFkb25seT17cHJvcHMuaXNSZWFkT25seX1cbiAgICAgICAgICAgIGNvbnRlbnRFZGl0YWJsZT17IXByb3BzLmlzUmVhZE9ubHl9XG4gICAgICAgICAgICBjc3M9e2dldFNlbGVjdGFibGVTZWFyY2hJbnB1dFN0eWxlcyhwcm9wcyl9XG4gICAgICAgICAgICB7Li4uZmlsdGVyRGF0YUF0dHJpYnV0ZXMocHJvcHMpfVxuICAgICAgICAgICAgLyogQVJJQSAqL1xuICAgICAgICAgICAgYXJpYS1pbnZhbGlkPXtwcm9wc1snYXJpYS1pbnZhbGlkJ119XG4gICAgICAgICAgICBhcmlhLWVycm9ybWVzc2FnZT17cHJvcHNbJ2FyaWEtZXJyb3JtZXNzYWdlJ119XG4gICAgICAgICAgICBkYXRhLXRlc3RpZD1cInNlbGVjdGFibGUtaW5wdXRcIlxuICAgICAgICAgICAgb25LZXlEb3duPXsoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgaWYgKCFwcm9wcy5pc1JlYWRPbmx5ICYmIGV2ZW50LmtleSA9PT0gJ0VudGVyJykge1xuICAgICAgICAgICAgICAgIGhhbmRsZVN1Ym1pdChldmVudCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH19XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7cHJvcHMuaXNDbGVhcmFibGUgJiZcbiAgICAgICAgICAgIHNlYXJjaFZhbHVlICYmXG4gICAgICAgICAgICAhcHJvcHMuaXNEaXNhYmxlZCAmJlxuICAgICAgICAgICAgIXByb3BzLmlzUmVhZE9ubHkgJiYgKFxuICAgICAgICAgICAgICA8U2Vjb25kYXJ5SWNvbkJ1dHRvblxuICAgICAgICAgICAgICAgIGljb249ezxDbG9zZUljb24gLz59XG4gICAgICAgICAgICAgICAgc2l6ZT1cIm1lZGl1bVwiXG4gICAgICAgICAgICAgICAgbGFiZWw9eydjbGVhci1idXR0b24nfVxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e2hhbmRsZUNsZWFyfVxuICAgICAgICAgICAgICAgIGNzcz17Z2V0Q2xlYXJJY29uQnV0dG9uU3R5bGVzKHByb3BzKX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAge3Byb3BzLnNob3dTdWJtaXRCdXR0b24gJiYgKFxuICAgICAgICAgICAgPFNlY29uZGFyeUljb25CdXR0b25cbiAgICAgICAgICAgICAgaWNvbj17PFNlYXJjaEljb24gLz59XG4gICAgICAgICAgICAgIGxhYmVsPXsnc2VhcmNoLWJ1dHRvbid9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9e2hhbmRsZVN1Ym1pdH1cbiAgICAgICAgICAgICAgY3NzPXtnZXRTZWFyY2hJY29uQnV0dG9uU3R5bGVzKHByb3BzKX1cbiAgICAgICAgICAgICAgaXNEaXNhYmxlZD17cHJvcHMuaXNEaXNhYmxlZH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L0NvbnRhaW5lcj5cbiAgICA8L0NvbnN0cmFpbnRzLkhvcml6b250YWw+XG4gICk7XG59O1xuXG5TZWxlY3RhYmxlU2VhcmNoSW5wdXQuZGlzcGxheU5hbWUgPSAnU2VsZWN0YWJsZVNlYXJjaElucHV0JztcblNlbGVjdGFibGVTZWFyY2hJbnB1dC5kZWZhdWx0UHJvcHMgPSBkZWZhdWx0UHJvcHM7XG5TZWxlY3RhYmxlU2VhcmNoSW5wdXQuaXNFbXB0eSA9IChcbiAgZm9ybVZhbHVlOiBUU2VsZWN0YWJsZVNlYXJjaElucHV0UHJvcHNbJ3ZhbHVlJ11cbikgPT4gIWZvcm1WYWx1ZSB8fCBmb3JtVmFsdWUudGV4dC50cmltKCkgPT09ICcnO1xuU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldFRleHRJbnB1dElkID0gZ2V0VGV4dElucHV0TmFtZTtcblNlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXREcm9wZG93bklkID0gZ2V0RHJvcGRvd25OYW1lO1xuXG5leHBvcnQgZGVmYXVsdCBTZWxlY3RhYmxlU2VhcmNoSW5wdXQ7XG4iXX0= */"), process.env.NODE_ENV === "production" ? "" : ";label:SelectableSearchInput;", process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNlbGVjdGFibGUtc2VhcmNoLWlucHV0LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFrWlUiLCJmaWxlIjoic2VsZWN0YWJsZS1zZWFyY2gtaW5wdXQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgdHlwZSBNb3VzZUV2ZW50LFxuICB0eXBlIEtleWJvYXJkRXZlbnQsXG4gIHR5cGUgQ2hhbmdlRXZlbnQsXG4gIHR5cGUgUmVhY3ROb2RlLFxuICB1c2VTdGF0ZSxcbiAgdXNlQ2FsbGJhY2ssXG4gIHVzZVJlZixcbn0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IFNlY29uZGFyeUljb25CdXR0b24gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvc2Vjb25kYXJ5LWljb24tYnV0dG9uJztcbmltcG9ydCBDb25zdHJhaW50cyBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9jb25zdHJhaW50cyc7XG5pbXBvcnQgeyBTZWFyY2hJY29uLCBDbG9zZUljb24gfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9pY29ucyc7XG5pbXBvcnQge1xuICBjcmVhdGVTZXF1ZW50aWFsSWQsXG4gIGZpbHRlckRhdGFBdHRyaWJ1dGVzLFxuICB3YXJuaW5nLFxufSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC91dGlscyc7XG5pbXBvcnQgeyB3YXJuSWZNZW51UG9ydGFsUHJvcHNBcmVNaXNzaW5nIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvc2VsZWN0LXV0aWxzJztcbmltcG9ydCB7XG4gIGdldENsZWFySWNvbkJ1dHRvblN0eWxlcyxcbiAgZ2V0U2VhcmNoSWNvbkJ1dHRvblN0eWxlcyxcbiAgZ2V0U2VsZWN0YWJsZVNlYXJjaElucHV0Q29udGFpbmVyU3R5bGVzLFxuICBnZXRTZWxlY3RhYmxlU2VhcmNoSW5wdXRTdHlsZXMsXG59IGZyb20gJy4vc2VsZWN0YWJsZS1zZWFyY2gtaW5wdXQuc3R5bGVzJztcbmltcG9ydCBTZWxlY3RhYmxlU2VsZWN0IGZyb20gJy4vc2VsZWN0YWJsZS1zZWxlY3QnO1xuaW1wb3J0IHsgdXNlRmllbGRJZCwgdXNlVG9nZ2xlU3RhdGUgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9ob29rcyc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyBkZXNpZ25Ub2tlbnMgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9kZXNpZ24tc3lzdGVtJztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcbmltcG9ydCB7IHR5cGUgUHJvcHMgYXMgUmVhY3RTZWxlY3RQcm9wcyB9IGZyb20gJ3JlYWN0LXNlbGVjdCc7XG5cbmNvbnN0IENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG5gO1xuXG5jb25zdCBnZXRUZXh0SW5wdXROYW1lID0gKG5hbWU/OiBzdHJpbmcpID0+XG4gIG5hbWUgPyBgJHtuYW1lfS50ZXh0SW5wdXRgIDogdW5kZWZpbmVkO1xuXG5jb25zdCBnZXREcm9wZG93bk5hbWUgPSAobmFtZT86IHN0cmluZykgPT5cbiAgbmFtZSA/IGAke25hbWV9LmRyb3Bkb3duYCA6IHVuZGVmaW5lZDtcblxuZXhwb3J0IHR5cGUgVEN1c3RvbUV2ZW50ID0ge1xuICB0YXJnZXQ6IHtcbiAgICBpZD86IHN0cmluZztcbiAgICBuYW1lPzogc3RyaW5nO1xuICAgIHZhbHVlPzogc3RyaW5nIHwgc3RyaW5nW10gfCBudWxsO1xuICB9O1xuICBwZXJzaXN0PzogKCkgPT4gdm9pZDtcbn07XG5cbmV4cG9ydCB0eXBlIFRWYWx1ZSA9IHtcbiAgdGV4dDogc3RyaW5nO1xuICBvcHRpb246IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIFRPcHRpb24gPSB7XG4gIHZhbHVlOiBzdHJpbmc7XG4gIGxhYmVsPzogUmVhY3ROb2RlO1xufTtcblxuZXhwb3J0IHR5cGUgVE9wdGlvbk9iamVjdCA9IHtcbiAgb3B0aW9uczogVE9wdGlvbltdO1xufTtcblxuZXhwb3J0IHR5cGUgVE9wdGlvbnMgPSBUT3B0aW9uW10gfCBUT3B0aW9uT2JqZWN0W107XG5cbmV4cG9ydCB0eXBlIFRTZWxlY3RhYmxlU2VhcmNoSW5wdXRQcm9wcyA9IHtcbiAgLyoqXG4gICAqIFVzZWQgYXMgSFRNTCBpZCBwcm9wZXJ0eS4gQW4gaWQgaXMgYXV0by1nZW5lcmF0ZWQgd2hlbiBpdCBpcyBub3Qgc3BlY2lmaWVkLlxuICAgKi9cbiAgaWQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBVc2VkIGFzIEhUTUwgYXV0b2NvbXBsZXRlIHByb3BlcnR5XG4gICAqL1xuICBhdXRvQ29tcGxldGU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBJbmRpY2F0ZSBpZiB0aGUgdmFsdWUgZW50ZXJlZCBpbiB0aGUgaW5wdXQgaXMgaW52YWxpZC5cbiAgICovXG4gICdhcmlhLWludmFsaWQnPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEhUTUwgSUQgb2YgYW4gZWxlbWVudCBjb250YWluaW5nIGFuIGVycm9yIG1lc3NhZ2UgcmVsYXRlZCB0byB0aGUgaW5wdXQuXG4gICAqL1xuICAnYXJpYS1lcnJvcm1lc3NhZ2UnPzogc3RyaW5nO1xuICAvKipcbiAgICogVXNlZCBhcyBIVE1MIG5hbWUgb2YgdGhlIGlucHV0IGNvbXBvbmVudCBwcm9wZXJ0eS5cbiAgICovXG4gIG5hbWU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBWYWx1ZSBvZiB0aGUgaW5wdXQuIENvbnNpc3RzIG9mIHRleHQgaW5wdXQgYW5kIHNlbGVjdGVkIG9wdGlvbi5cbiAgICovXG4gIHZhbHVlOiBUVmFsdWU7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2l0aCB0aGUgZXZlbnQgb2YgdGhlIGlucHV0IG9yIGRyb3Bkb3duIHdoZW4gZWl0aGVyIHRoZSBzZWxlY3RhYmxlIGRyb3Bkb3duIG9yIHRoZSB0ZXh0IGlucHV0IGhhdmUgY2hhbmdlZC5cbiAgICogVGhlIGNoYW5nZSBldmVudCBmcm9tIHRoZSB0ZXh0IGlucHV0IGhhcyBhIHN1ZmZpeCBvZiBgLnRleHRJbnB1dGAgYW5kIHRoZSBjaGFuZ2UgZXZlbnQgZnJvbSB0aGUgZHJvcGRvd24gaGFzIGEgc3VmZml4IG9mIGAuZHJvcGRvd25gLlxuICAgKi9cbiAgb25DaGFuZ2U/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGlucHV0IGlzIGJsdXJyZWRcbiAgICovXG4gIG9uQmx1cj86IChldmVudDogVEN1c3RvbUV2ZW50KSA9PiB2b2lkO1xuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gaW5wdXQgaXMgZm9jdXNlZFxuICAgKi9cbiAgb25Gb2N1cz86IChldmVudDogVEN1c3RvbUV2ZW50KSA9PiB2b2lkO1xuICAvKipcbiAgICogSGFuZGxlciB3aGVuIHRoZSBzZWFyY2ggYnV0dG9uIGlzIGNsaWNrZWQuXG4gICAqL1xuICBvblN1Ym1pdDogKHZhbHVlOiBUVmFsdWUpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBIYW5kbGVyIHdoZW4gdGhlIGNsZWFyIGJ1dHRvbiBpcyBjbGlja2VkLlxuICAgKi9cbiAgb25SZXNldD86ICgpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBGb2N1cyB0aGUgaW5wdXQgb24gaW5pdGlhbCByZW5kZXJcbiAgICovXG4gIGlzQXV0b2ZvY3Vzc2VkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGF0IHRoZSBpbnB1dCBjYW5ub3QgYmUgbW9kaWZpZWQgKGUuZyBub3QgYXV0aG9yaXplZCwgb3IgY2hhbmdlcyBjdXJyZW50bHkgc2F2aW5nKS5cbiAgICovXG4gIGlzRGlzYWJsZWQ/OiBib29sZWFuO1xuICAvKipcbiAgICogSW5kaWNhdGVzIHRoYXQgdGhlIGZpZWxkIGlzIGRpc3BsYXlpbmcgcmVhZC1vbmx5IGNvbnRlbnRcbiAgICovXG4gIGlzUmVhZE9ubHk/OiBib29sZWFuO1xuICAvKipcbiAgICogSW5kaWNhdGVzIGlmIHRoZSBpbnB1dCBoYXMgaW52YWxpZCB2YWx1ZXNcbiAgICovXG4gIGhhc0Vycm9yPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyBpZiB0aGUgaW5wdXQgaGFzIHdhcm5pbmcgdmFsdWVzXG4gICAqL1xuICBoYXNXYXJuaW5nPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFBsYWNlaG9sZGVyIHRleHQgZm9yIHRoZSBpbnB1dFxuICAgKi9cbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaWYgdGhlIGlucHV0IHNob3VsZCBiZSBjbGVhcmVkIHdoZW4gdGhlIGNsZWFyIGJ1dHRvbiBpcyBjbGlja2VkLlxuICAgKiBEZWZhdWx0cyB0byB0cnVlLlxuICAgKlxuICAgKi9cbiAgaXNDbGVhcmFibGU/OiBib29sZWFuO1xuICAvKipcbiAgICogSG9yaXpvbnRhbCBzaXplIGxpbWl0IG9mIHRoZSBpbnB1dCBmaWVsZHMuXG4gICAqL1xuICBob3Jpem9udGFsQ29uc3RyYWludD86IDEwIHwgMTEgfCAxMiB8IDEzIHwgMTQgfCAxNSB8IDE2IHwgJ3NjYWxlJyB8ICdhdXRvJztcbiAgLyoqXG4gICAqIEFycmF5IG9mIG9wdGlvbnMgdGhhdCBwb3B1bGF0ZSB0aGUgc2VsZWN0IG1lbnVcbiAgICovXG4gIG9wdGlvbnM6IFRPcHRpb25zO1xuICAvKipcbiAgICogei1pbmRleCB2YWx1ZSBmb3IgdGhlIG1lbnUgcG9ydGFsXG4gICAqIDxicj5cbiAgICogVXNlIGluIGNvbmp1bmN0aW9uIHdpdGggYG1lbnVQb3J0YWxUYXJnZXRgXG4gICAqL1xuICBtZW51UG9ydGFsWkluZGV4PzogbnVtYmVyO1xuICAvKipcbiAgICogRG9tIGVsZW1lbnQgdG8gcG9ydGFsIHRoZSBzZWxlY3QgbWVudSB0b1xuICAgKiA8YnI+XG4gICAqIFtQcm9wcyBmcm9tIFJlYWN0IHNlbGVjdCB3YXMgdXNlZF0oaHR0cHM6Ly9yZWFjdC1zZWxlY3QuY29tL3Byb3BzKVxuICAgKi9cbiAgbWVudVBvcnRhbFRhcmdldD86IFJlYWN0U2VsZWN0UHJvcHNbJ21lbnVQb3J0YWxUYXJnZXQnXTtcbiAgLyoqXG4gICAqIHdoZXRoZXIgdGhlIG1lbnUgc2hvdWxkIGJsb2NrIHNjcm9sbCB3aGlsZSBvcGVuXG4gICAqIDxicj5cbiAgICogW1Byb3BzIGZyb20gUmVhY3Qgc2VsZWN0IHdhcyB1c2VkXShodHRwczovL3JlYWN0LXNlbGVjdC5jb20vcHJvcHMpXG4gICAqL1xuICBtZW51U2hvdWxkQmxvY2tTY3JvbGw/OiBSZWFjdFNlbGVjdFByb3BzWydtZW51U2hvdWxkQmxvY2tTY3JvbGwnXTtcbiAgLyoqXG4gICAqIEhhbmRsZSBjaGFuZ2UgZXZlbnRzIG9uIHRoZSBtZW51IGlucHV0XG4gICAqIDxicj5cbiAgICogW1Byb3BzIGZyb20gUmVhY3Qgc2VsZWN0IHdhcyB1c2VkXShodHRwczovL3JlYWN0LXNlbGVjdC5jb20vcHJvcHMpXG4gICAqL1xuICBvbk1lbnVJbnB1dENoYW5nZT86IFJlYWN0U2VsZWN0UHJvcHNbJ29uSW5wdXRDaGFuZ2UnXTtcbiAgLyoqXG4gICAqIENhbiBiZSB1c2VkIHRvIHJlbmRlciBhIGN1c3RvbSB2YWx1ZSB3aGVuIHRoZXJlIGFyZSBubyBvcHRpb25zIChlaXRoZXIgYmVjYXVzZSBvZiBubyBzZWFyY2ggcmVzdWx0cywgb3IgYWxsIG9wdGlvbnMgaGF2ZSBiZWVuIHVzZWQsIG9yIHRoZXJlIHdlcmUgbm9uZSBpbiB0aGUgZmlyc3QgcGxhY2UpLiBHZXRzIGNhbGxlZCB3aXRoIHsgaW5wdXRWYWx1ZTogU3RyaW5nIH0uXG4gICAqIDxiciAvPlxuICAgKiBgaW5wdXRWYWx1ZWAgd2lsbCBiZSBhbiBlbXB0eSBzdHJpbmcgd2hlbiBubyBzZWFyY2ggdGV4dCBpcyBwcmVzZW50LlxuICAgKiA8YnI+XG4gICAqIFtQcm9wcyBmcm9tIFJlYWN0IHNlbGVjdCB3YXMgdXNlZF0oaHR0cHM6Ly9yZWFjdC1zZWxlY3QuY29tL3Byb3BzKVxuICAgKi9cbiAgbm9NZW51T3B0aW9uc01lc3NhZ2U/OiBSZWFjdFNlbGVjdFByb3BzWydub09wdGlvbnNNZXNzYWdlJ107XG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIGVuYWJsZSBzZWFyY2ggZnVuY3Rpb25hbGl0eS5cbiAgICogPGJyPlxuICAgKiBbUHJvcHMgZnJvbSBSZWFjdCBzZWxlY3Qgd2FzIHVzZWRdKGh0dHBzOi8vcmVhY3Qtc2VsZWN0LmNvbS9wcm9wcylcbiAgICovXG4gIGlzTWVudVNlYXJjaGFibGU/OiBSZWFjdFNlbGVjdFByb3BzWydpc1NlYXJjaGFibGUnXTtcbiAgLyoqXG4gICAqIE1heGltdW0gaGVpZ2h0IG9mIHRoZSBtZW51IGJlZm9yZSBzY3JvbGxpbmdcbiAgICogPGJyPlxuICAgKiBbUHJvcHMgZnJvbSBSZWFjdCBzZWxlY3Qgd2FzIHVzZWRdKGh0dHBzOi8vcmVhY3Qtc2VsZWN0LmNvbS9wcm9wcylcbiAgICovXG4gIG1heE1lbnVIZWlnaHQ/OiBSZWFjdFNlbGVjdFByb3BzWydtYXhNZW51SGVpZ2h0J107XG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBtZW51IHNob3VsZCBjbG9zZSBhZnRlciBhIHZhbHVlIGlzIHNlbGVjdGVkLiBEZWZhdWx0cyB0byBgdHJ1ZWAuXG4gICAqIDxicj5cbiAgICogW1Byb3BzIGZyb20gUmVhY3Qgc2VsZWN0IHdhcyB1c2VkXShodHRwczovL3JlYWN0LXNlbGVjdC5jb20vcHJvcHMpXG4gICAqL1xuICBjbG9zZU1lbnVPblNlbGVjdD86IFJlYWN0U2VsZWN0UHJvcHNbJ2Nsb3NlTWVudU9uU2VsZWN0J107XG4gIC8qKlxuICAgKiBIb3Jpem9udGFsIHNpemUgbGltaXQgZm9yIHRoZSBkcm9wZG93biBtZW51LlxuICAgKi9cbiAgbWVudUhvcml6b250YWxDb25zdHJhaW50PzogMyB8IDQgfCA1O1xuICAvKipcbiAgICogU2hvdyBzdWJtaXQgYnV0dG9uIGluIHRoZSBpbnB1dFxuICAgKi9cbiAgc2hvd1N1Ym1pdEJ1dHRvbj86IGJvb2xlYW47XG59O1xuXG5jb25zdCBkZWZhdWx0UHJvcHM6IFBpY2s8XG4gIFRTZWxlY3RhYmxlU2VhcmNoSW5wdXRQcm9wcyxcbiAgfCAnaG9yaXpvbnRhbENvbnN0cmFpbnQnXG4gIHwgJ2lzQ2xlYXJhYmxlJ1xuICB8ICdtZW51SG9yaXpvbnRhbENvbnN0cmFpbnQnXG4gIHwgJ3Nob3dTdWJtaXRCdXR0b24nXG4gIHwgJ21lbnVQb3J0YWxaSW5kZXgnXG4gIHwgJ29wdGlvbnMnXG4+ID0ge1xuICBob3Jpem9udGFsQ29uc3RyYWludDogJ3NjYWxlJyxcbiAgaXNDbGVhcmFibGU6IHRydWUsXG4gIG1lbnVIb3Jpem9udGFsQ29uc3RyYWludDogMyxcbiAgc2hvd1N1Ym1pdEJ1dHRvbjogdHJ1ZSxcbiAgbWVudVBvcnRhbFpJbmRleDogMSxcbiAgb3B0aW9uczogW10sXG59O1xuXG5jb25zdCBzZWxlY3RhYmxlU2VhcmNoSW5wdXRTZXF1ZW50aWFsSWQgPSBjcmVhdGVTZXF1ZW50aWFsSWQoXG4gICdzZWxlY3RhYmxlLXNlYXJjaC1pbnB1dC0nXG4pO1xuXG5jb25zdCBpc09wdGlvbk9iamVjdCA9IChcbiAgb3B0aW9uOiBUT3B0aW9uIHwgVE9wdGlvbk9iamVjdFxuKTogb3B0aW9uIGlzIFRPcHRpb25PYmplY3QgPT4gKG9wdGlvbiBhcyBUT3B0aW9uT2JqZWN0KS5vcHRpb25zICE9PSB1bmRlZmluZWQ7XG5cbmNvbnN0IFNlbGVjdGFibGVTZWFyY2hJbnB1dCA9IChwcm9wczogVFNlbGVjdGFibGVTZWFyY2hJbnB1dFByb3BzKSA9PiB7XG4gIGNvbnN0IFtkcm9wZG93bkhhc0ZvY3VzLCB0b2dnbGVEcm9wZG93bkhhc0ZvY3VzXSA9IHVzZVRvZ2dsZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgW3NlYXJjaFZhbHVlLCBzZXRTZWFyY2hWYWx1ZV0gPSB1c2VTdGF0ZShwcm9wcy52YWx1ZS50ZXh0IHx8ICcnKTtcbiAgY29uc3QgY29udGFpbmVyUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKTtcbiAgY29uc3QgdGV4dElucHV0UmVmID0gdXNlUmVmPEhUTUxJbnB1dEVsZW1lbnQ+KG51bGwpO1xuXG4gIGNvbnN0IG9wdGlvbnNXaXRob3V0R3JvdXBzID0gcHJvcHMub3B0aW9ucy5mbGF0TWFwKChvcHRpb24pID0+IHtcbiAgICBpZiAoaXNPcHRpb25PYmplY3Qob3B0aW9uKSkge1xuICAgICAgcmV0dXJuIG9wdGlvbi5vcHRpb25zO1xuICAgIH1cbiAgICByZXR1cm4gb3B0aW9uO1xuICB9KTtcblxuICBjb25zdCBzZWxlY3RlZE9wdGlvbiA9IG9wdGlvbnNXaXRob3V0R3JvdXBzLmZpbmQoXG4gICAgKG9wdGlvbikgPT4gb3B0aW9uLnZhbHVlID09PSBwcm9wcy52YWx1ZS5vcHRpb25cbiAgKTtcblxuICBjb25zdCBzZWxlY3RhYmxTZWFyY2hJbnB1dElkID0gdXNlRmllbGRJZChcbiAgICBwcm9wcy5pZCxcbiAgICBzZWxlY3RhYmxlU2VhcmNoSW5wdXRTZXF1ZW50aWFsSWRcbiAgKTtcblxuICBpZiAoIXByb3BzLmlzUmVhZE9ubHkpIHtcbiAgICB3YXJuaW5nKFxuICAgICAgdHlwZW9mIHByb3BzLm9uQ2hhbmdlID09PSAnZnVuY3Rpb24nLFxuICAgICAgJ1NlbGVjdGFibGVTZWFyY2hJbnB1dDogYG9uQ2hhbmdlYCBpcyByZXF1aXJlZCB3aGVuIGlzIG5vdCByZWFkIG9ubHkuJ1xuICAgICk7XG4gIH1cblxuICB3YXJuSWZNZW51UG9ydGFsUHJvcHNBcmVNaXNzaW5nKHtcbiAgICBtZW51UG9ydGFsWkluZGV4OiBwcm9wcy5tZW51UG9ydGFsWkluZGV4LFxuICAgIG1lbnVQb3J0YWxUYXJnZXQ6IHByb3BzLm1lbnVQb3J0YWxUYXJnZXQsXG4gICAgY29tcG9uZW50TmFtZTogJ1NlbGVjdGFibGVTZWFyY2hJbnB1dCcsXG4gIH0pO1xuXG4gIGNvbnN0IHsgb25Gb2N1cywgb25CbHVyLCBuYW1lIH0gPSBwcm9wcztcbiAgY29uc3QgaGFuZGxlVGV4dElucHV0Rm9jdXMgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgaWYgKG9uRm9jdXMpIHtcbiAgICAgIG9uRm9jdXMoe1xuICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICBpZDogU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldFRleHRJbnB1dElkKHNlbGVjdGFibFNlYXJjaElucHV0SWQpLFxuICAgICAgICAgIG5hbWU6IGdldFRleHRJbnB1dE5hbWUobmFtZSksXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9XG4gIH0sIFtvbkZvY3VzLCBzZWxlY3RhYmxTZWFyY2hJbnB1dElkLCBuYW1lXSk7XG5cbiAgY29uc3QgaGFuZGxlVGV4dElucHV0Qmx1ciA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBpZiAob25CbHVyKSB7XG4gICAgICBvbkJsdXIoe1xuICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICBpZDogU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldFRleHRJbnB1dElkKHNlbGVjdGFibFNlYXJjaElucHV0SWQpLFxuICAgICAgICAgIG5hbWU6IGdldFRleHRJbnB1dE5hbWUobmFtZSksXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9XG4gIH0sIFtvbkJsdXIsIHNlbGVjdGFibFNlYXJjaElucHV0SWQsIG5hbWVdKTtcblxuICBjb25zdCBoYW5kbGVDbGVhciA9ICgpID0+IHtcbiAgICBzZXRTZWFyY2hWYWx1ZSgnJyk7XG4gICAgaWYgKHByb3BzLm9uUmVzZXQpIHtcbiAgICAgIHByb3BzLm9uUmVzZXQoKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlQ2hhbmdlID0gKGV2ZW50OiBDaGFuZ2VFdmVudDxIVE1MSW5wdXRFbGVtZW50PikgPT4ge1xuICAgIHNldFNlYXJjaFZhbHVlKGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgaWYgKHByb3BzLm9uQ2hhbmdlKSB7XG4gICAgICBwcm9wcy5vbkNoYW5nZSh7XG4gICAgICAgIHRhcmdldDoge1xuICAgICAgICAgIGlkOiBTZWxlY3RhYmxlU2VhcmNoSW5wdXQuZ2V0VGV4dElucHV0SWQoc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCksXG4gICAgICAgICAgbmFtZTogZ2V0VGV4dElucHV0TmFtZShwcm9wcy5uYW1lKSxcbiAgICAgICAgICB2YWx1ZTogZXZlbnQudGFyZ2V0LnZhbHVlLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGhhbmRsZVN1Ym1pdCA9IChcbiAgICBldmVudDpcbiAgICAgIHwgS2V5Ym9hcmRFdmVudDxIVE1MQnV0dG9uRWxlbWVudD5cbiAgICAgIHwgTW91c2VFdmVudDxIVE1MQnV0dG9uRWxlbWVudD5cbiAgICAgIHwgS2V5Ym9hcmRFdmVudDxIVE1MSW5wdXRFbGVtZW50PlxuICApID0+IHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGlmIChwcm9wcy5vblN1Ym1pdCkge1xuICAgICAgcHJvcHMub25TdWJtaXQoe1xuICAgICAgICB0ZXh0OiBzZWFyY2hWYWx1ZSxcbiAgICAgICAgb3B0aW9uOiBzZWxlY3RlZE9wdGlvbj8udmFsdWUgPz8gJycsXG4gICAgICB9KTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgZHJvcGRvd25OYW1lID0gZ2V0RHJvcGRvd25OYW1lKHByb3BzLm5hbWUpO1xuICBjb25zdCBkcm9wZG93bklkID0gU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldERyb3Bkb3duSWQoXG4gICAgc2VsZWN0YWJsU2VhcmNoSW5wdXRJZFxuICApO1xuXG4gIGNvbnN0IGhhbmRsZURyb3Bkb3duRm9jdXMgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgaWYgKG9uRm9jdXMpIHtcbiAgICAgIG9uRm9jdXMoe1xuICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICBpZDogZHJvcGRvd25JZCxcbiAgICAgICAgICBuYW1lOiBkcm9wZG93bk5hbWUsXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9XG4gICAgdG9nZ2xlRHJvcGRvd25IYXNGb2N1cyh0cnVlKTtcbiAgfSwgW29uRm9jdXMsIHRvZ2dsZURyb3Bkb3duSGFzRm9jdXMsIGRyb3Bkb3duTmFtZSwgZHJvcGRvd25JZF0pO1xuXG4gIGNvbnN0IGhhbmRsZURyb3Bkb3duQmx1ciA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBpZiAob25CbHVyKSB7XG4gICAgICBvbkJsdXIoe1xuICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICBpZDogZHJvcGRvd25JZCxcbiAgICAgICAgICBuYW1lOiBkcm9wZG93bk5hbWUsXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9XG4gICAgdG9nZ2xlRHJvcGRvd25IYXNGb2N1cyhmYWxzZSk7XG4gIH0sIFt0b2dnbGVEcm9wZG93bkhhc0ZvY3VzLCBvbkJsdXIsIGRyb3Bkb3duTmFtZSwgZHJvcGRvd25JZF0pO1xuXG4gIGNvbnN0IGhhbmRsZUNvbnRhaW5lckJsdXIgPSB1c2VDYWxsYmFjayhcbiAgICAoZXZlbnQpID0+IHtcbiAgICAgIC8vIGVuc3VyZXMgdGhhdCBib3RoIGZpZWxkcyBhcmUgbWFya2VkIGFzIHRvdWNoZWQgd2hlbiBvbmUgb2YgdGhlbVxuICAgICAgLy8gaXMgYmx1cnJlZFxuICAgICAgaWYgKFxuICAgICAgICB0eXBlb2Ygb25CbHVyID09PSAnZnVuY3Rpb24nICYmXG4gICAgICAgICFjb250YWluZXJSZWYuY3VycmVudD8uY29udGFpbnMoZXZlbnQucmVsYXRlZFRhcmdldClcbiAgICAgICkge1xuICAgICAgICBvbkJsdXIoe1xuICAgICAgICAgIHRhcmdldDoge1xuICAgICAgICAgICAgaWQ6IFNlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXREcm9wZG93bklkKHNlbGVjdGFibFNlYXJjaElucHV0SWQpLFxuICAgICAgICAgICAgbmFtZTogZ2V0RHJvcGRvd25OYW1lKG5hbWUpLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuICAgICAgICBvbkJsdXIoe1xuICAgICAgICAgIHRhcmdldDoge1xuICAgICAgICAgICAgaWQ6IFNlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXRUZXh0SW5wdXRJZChzZWxlY3RhYmxTZWFyY2hJbnB1dElkKSxcbiAgICAgICAgICAgIG5hbWU6IGdldFRleHRJbnB1dE5hbWUobmFtZSksXG4gICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSxcbiAgICBbb25CbHVyLCBzZWxlY3RhYmxTZWFyY2hJbnB1dElkLCBuYW1lXVxuICApO1xuXG4gIHJldHVybiAoXG4gICAgPENvbnN0cmFpbnRzLkhvcml6b250YWwgbWF4PXtwcm9wcy5ob3Jpem9udGFsQ29uc3RyYWludH0+XG4gICAgICA8Q29udGFpbmVyXG4gICAgICAgIHJlZj17Y29udGFpbmVyUmVmfVxuICAgICAgICBvbkJsdXI9e2hhbmRsZUNvbnRhaW5lckJsdXJ9XG4gICAgICAgIGRhdGEtdGVzdGlkPVwic2VsZWN0YWJsZS1zZWFyY2gtaW5wdXQtY29udGFpbmVyXCJcbiAgICAgID5cbiAgICAgICAgPENvbnN0cmFpbnRzLkhvcml6b250YWwgbWF4PXtwcm9wcy5tZW51SG9yaXpvbnRhbENvbnN0cmFpbnR9PlxuICAgICAgICAgIDxTZWxlY3RhYmxlU2VsZWN0XG4gICAgICAgICAgICB7Li4ucHJvcHN9XG4gICAgICAgICAgICBpZD17U2VsZWN0YWJsZVNlYXJjaElucHV0LmdldERyb3Bkb3duSWQoc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCl9XG4gICAgICAgICAgICBuYW1lPXtnZXREcm9wZG93bk5hbWUocHJvcHMubmFtZSl9XG4gICAgICAgICAgICBkcm9wZG93bkhhc0ZvY3VzPXtkcm9wZG93bkhhc0ZvY3VzfVxuICAgICAgICAgICAgaGFuZGxlRHJvcGRvd25Gb2N1cz17aGFuZGxlRHJvcGRvd25Gb2N1c31cbiAgICAgICAgICAgIGhhbmRsZURyb3Bkb3duQmx1cj17aGFuZGxlRHJvcGRvd25CbHVyfVxuICAgICAgICAgICAgdGV4dElucHV0UmVmPXt0ZXh0SW5wdXRSZWZ9XG4gICAgICAgICAgICBzZWxlY3RlZE9wdGlvbj17c2VsZWN0ZWRPcHRpb259XG4gICAgICAgICAgLz5cbiAgICAgICAgPC9Db25zdHJhaW50cy5Ib3Jpem9udGFsPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgY3NzPXtbXG4gICAgICAgICAgICBnZXRTZWxlY3RhYmxlU2VhcmNoSW5wdXRDb250YWluZXJTdHlsZXMocHJvcHMpLFxuICAgICAgICAgICAgZHJvcGRvd25IYXNGb2N1cyAmJlxuICAgICAgICAgICAgICAhcHJvcHMuaXNSZWFkT25seSAmJlxuICAgICAgICAgICAgICBjc3NgXG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICR7ZGVzaWduVG9rZW5zLmJvcmRlckNvbG9yRm9ySW5wdXRXaGVuRm9jdXNlZH07XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogJHtkZXNpZ25Ub2tlbnMuYm9yZGVyQ29sb3JGb3JJbnB1dFdoZW5Gb2N1c2VkfTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGAsXG4gICAgICAgICAgXX1cbiAgICAgICAgPlxuICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgcmVmPXt0ZXh0SW5wdXRSZWZ9XG4gICAgICAgICAgICBpZD17U2VsZWN0YWJsZVNlYXJjaElucHV0LmdldFRleHRJbnB1dElkKHNlbGVjdGFibFNlYXJjaElucHV0SWQpfVxuICAgICAgICAgICAgbmFtZT17Z2V0VGV4dElucHV0TmFtZShwcm9wcy5uYW1lKX1cbiAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgIHZhbHVlPXtzZWFyY2hWYWx1ZX1cbiAgICAgICAgICAgIG9uQ2hhbmdlPXtoYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgICBvbkJsdXI9e2hhbmRsZVRleHRJbnB1dEJsdXJ9XG4gICAgICAgICAgICBvbkZvY3VzPXtoYW5kbGVUZXh0SW5wdXRGb2N1c31cbiAgICAgICAgICAgIGRpc2FibGVkPXtwcm9wcy5pc0Rpc2FibGVkfVxuICAgICAgICAgICAgcGxhY2Vob2xkZXI9e3Byb3BzLnBsYWNlaG9sZGVyfVxuICAgICAgICAgICAgcmVhZE9ubHk9e3Byb3BzLmlzUmVhZE9ubHl9XG4gICAgICAgICAgICBhdXRvRm9jdXM9e3Byb3BzLmlzQXV0b2ZvY3Vzc2VkfVxuICAgICAgICAgICAgYXV0b0NvbXBsZXRlPXtwcm9wcy5hdXRvQ29tcGxldGV9XG4gICAgICAgICAgICBhcmlhLXJlYWRvbmx5PXtwcm9wcy5pc1JlYWRPbmx5fVxuICAgICAgICAgICAgY29udGVudEVkaXRhYmxlPXshcHJvcHMuaXNSZWFkT25seX1cbiAgICAgICAgICAgIGNzcz17Z2V0U2VsZWN0YWJsZVNlYXJjaElucHV0U3R5bGVzKHByb3BzKX1cbiAgICAgICAgICAgIHsuLi5maWx0ZXJEYXRhQXR0cmlidXRlcyhwcm9wcyl9XG4gICAgICAgICAgICAvKiBBUklBICovXG4gICAgICAgICAgICBhcmlhLWludmFsaWQ9e3Byb3BzWydhcmlhLWludmFsaWQnXX1cbiAgICAgICAgICAgIGFyaWEtZXJyb3JtZXNzYWdlPXtwcm9wc1snYXJpYS1lcnJvcm1lc3NhZ2UnXX1cbiAgICAgICAgICAgIGRhdGEtdGVzdGlkPVwic2VsZWN0YWJsZS1pbnB1dFwiXG4gICAgICAgICAgICBvbktleURvd249eyhldmVudCkgPT4ge1xuICAgICAgICAgICAgICBpZiAoIXByb3BzLmlzUmVhZE9ubHkgJiYgZXZlbnQua2V5ID09PSAnRW50ZXInKSB7XG4gICAgICAgICAgICAgICAgaGFuZGxlU3VibWl0KGV2ZW50KTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAvPlxuICAgICAgICAgIHtwcm9wcy5pc0NsZWFyYWJsZSAmJlxuICAgICAgICAgICAgc2VhcmNoVmFsdWUgJiZcbiAgICAgICAgICAgICFwcm9wcy5pc0Rpc2FibGVkICYmXG4gICAgICAgICAgICAhcHJvcHMuaXNSZWFkT25seSAmJiAoXG4gICAgICAgICAgICAgIDxTZWNvbmRhcnlJY29uQnV0dG9uXG4gICAgICAgICAgICAgICAgaWNvbj17PENsb3NlSWNvbiAvPn1cbiAgICAgICAgICAgICAgICBzaXplPVwibWVkaXVtXCJcbiAgICAgICAgICAgICAgICBsYWJlbD17J2NsZWFyLWJ1dHRvbid9XG4gICAgICAgICAgICAgICAgb25DbGljaz17aGFuZGxlQ2xlYXJ9XG4gICAgICAgICAgICAgICAgY3NzPXtnZXRDbGVhckljb25CdXR0b25TdHlsZXMocHJvcHMpfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICB7cHJvcHMuc2hvd1N1Ym1pdEJ1dHRvbiAmJiAoXG4gICAgICAgICAgICA8U2Vjb25kYXJ5SWNvbkJ1dHRvblxuICAgICAgICAgICAgICBpY29uPXs8U2VhcmNoSWNvbiAvPn1cbiAgICAgICAgICAgICAgbGFiZWw9eydzZWFyY2gtYnV0dG9uJ31cbiAgICAgICAgICAgICAgb25DbGljaz17aGFuZGxlU3VibWl0fVxuICAgICAgICAgICAgICBjc3M9e2dldFNlYXJjaEljb25CdXR0b25TdHlsZXMocHJvcHMpfVxuICAgICAgICAgICAgICBpc0Rpc2FibGVkPXtwcm9wcy5pc0Rpc2FibGVkfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvQ29udGFpbmVyPlxuICAgIDwvQ29uc3RyYWludHMuSG9yaXpvbnRhbD5cbiAgKTtcbn07XG5cblNlbGVjdGFibGVTZWFyY2hJbnB1dC5kaXNwbGF5TmFtZSA9ICdTZWxlY3RhYmxlU2VhcmNoSW5wdXQnO1xuU2VsZWN0YWJsZVNlYXJjaElucHV0LmRlZmF1bHRQcm9wcyA9IGRlZmF1bHRQcm9wcztcblNlbGVjdGFibGVTZWFyY2hJbnB1dC5pc0VtcHR5ID0gKFxuICBmb3JtVmFsdWU6IFRTZWxlY3RhYmxlU2VhcmNoSW5wdXRQcm9wc1sndmFsdWUnXVxuKSA9PiAhZm9ybVZhbHVlIHx8IGZvcm1WYWx1ZS50ZXh0LnRyaW0oKSA9PT0gJyc7XG5TZWxlY3RhYmxlU2VhcmNoSW5wdXQuZ2V0VGV4dElucHV0SWQgPSBnZXRUZXh0SW5wdXROYW1lO1xuU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldERyb3Bkb3duSWQgPSBnZXREcm9wZG93bk5hbWU7XG5cbmV4cG9ydCBkZWZhdWx0IFNlbGVjdGFibGVTZWFyY2hJbnB1dDtcbiJdfQ== */"],
|
|
439
|
-
children: [jsxRuntime.jsx("input", _objectSpread(_objectSpread({
|
|
462
|
+
css: [getSelectableSearchInputContainerStyles(props), dropdownHasFocus && !props.isReadOnly && /*#__PURE__*/react.css("border-left-color:", designSystem.designTokens.borderColorForInputWhenFocused, ";&:hover{border-left-color:", designSystem.designTokens.borderColorForInputWhenFocused, ";}" + (process.env.NODE_ENV === "production" ? "" : ";label:SelectableSearchInput;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNlbGVjdGFibGUtc2VhcmNoLWlucHV0LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE2YWlCIiwiZmlsZSI6InNlbGVjdGFibGUtc2VhcmNoLWlucHV0LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIHR5cGUgTW91c2VFdmVudCxcbiAgdHlwZSBLZXlib2FyZEV2ZW50LFxuICB0eXBlIENoYW5nZUV2ZW50LFxuICB0eXBlIFJlYWN0Tm9kZSxcbiAgdXNlU3RhdGUsXG4gIHVzZUNhbGxiYWNrLFxuICB1c2VSZWYsXG59IGZyb20gJ3JlYWN0JztcbmltcG9ydCBTZWNvbmRhcnlJY29uQnV0dG9uIGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3NlY29uZGFyeS1pY29uLWJ1dHRvbic7XG5pbXBvcnQgQ29uc3RyYWludHMgZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvY29uc3RyYWludHMnO1xuaW1wb3J0IHsgU2VhcmNoSWNvbiwgQ2xvc2VJY29uIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvaWNvbnMnO1xuaW1wb3J0IHtcbiAgY3JlYXRlU2VxdWVudGlhbElkLFxuICBmaWx0ZXJEYXRhQXR0cmlidXRlcyxcbiAgd2FybmluZyxcbn0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvdXRpbHMnO1xuaW1wb3J0IHsgd2FybklmTWVudVBvcnRhbFByb3BzQXJlTWlzc2luZyB9IGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3NlbGVjdC11dGlscyc7XG5pbXBvcnQge1xuICBnZXRDbGVhckljb25CdXR0b25TdHlsZXMsXG4gIGdldFNlYXJjaEljb25CdXR0b25TdHlsZXMsXG4gIGdldFNlbGVjdGFibGVTZWFyY2hJbnB1dENvbnRhaW5lclN0eWxlcyxcbiAgZ2V0U2VsZWN0YWJsZVNlYXJjaElucHV0U3R5bGVzLFxufSBmcm9tICcuL3NlbGVjdGFibGUtc2VhcmNoLWlucHV0LnN0eWxlcyc7XG5pbXBvcnQgU2VsZWN0YWJsZVNlbGVjdCBmcm9tICcuL3NlbGVjdGFibGUtc2VsZWN0JztcbmltcG9ydCB7IHVzZUZpZWxkSWQsIHVzZVRvZ2dsZVN0YXRlIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvaG9va3MnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgZGVzaWduVG9rZW5zIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvZGVzaWduLXN5c3RlbSc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgeyB0eXBlIFByb3BzIGFzIFJlYWN0U2VsZWN0UHJvcHMgfSBmcm9tICdyZWFjdC1zZWxlY3QnO1xuXG5jb25zdCBDb250YWluZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuYDtcblxuY29uc3QgZ2V0VGV4dElucHV0TmFtZSA9IChuYW1lPzogc3RyaW5nKSA9PlxuICBuYW1lID8gYCR7bmFtZX0udGV4dElucHV0YCA6IHVuZGVmaW5lZDtcblxuY29uc3QgZ2V0RHJvcGRvd25OYW1lID0gKG5hbWU/OiBzdHJpbmcpID0+XG4gIG5hbWUgPyBgJHtuYW1lfS5kcm9wZG93bmAgOiB1bmRlZmluZWQ7XG5cbmV4cG9ydCB0eXBlIFRDdXN0b21FdmVudCA9IHtcbiAgdGFyZ2V0OiB7XG4gICAgaWQ/OiBzdHJpbmc7XG4gICAgbmFtZT86IHN0cmluZztcbiAgICB2YWx1ZT86IHN0cmluZyB8IHN0cmluZ1tdIHwgbnVsbDtcbiAgfTtcbiAgcGVyc2lzdD86ICgpID0+IHZvaWQ7XG59O1xuXG5leHBvcnQgdHlwZSBUVmFsdWUgPSB7XG4gIHRleHQ6IHN0cmluZztcbiAgb3B0aW9uOiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBUT3B0aW9uID0ge1xuICB2YWx1ZTogc3RyaW5nO1xuICBsYWJlbD86IFJlYWN0Tm9kZTtcbn07XG5cbmV4cG9ydCB0eXBlIFRPcHRpb25PYmplY3QgPSB7XG4gIG9wdGlvbnM6IFRPcHRpb25bXTtcbn07XG5cbmV4cG9ydCB0eXBlIFRPcHRpb25zID0gVE9wdGlvbltdIHwgVE9wdGlvbk9iamVjdFtdO1xuXG5leHBvcnQgdHlwZSBUU2VsZWN0YWJsZVNlYXJjaElucHV0UHJvcHMgPSB7XG4gIC8qKlxuICAgKiBVc2VkIGFzIEhUTUwgaWQgcHJvcGVydHkuIEFuIGlkIGlzIGF1dG8tZ2VuZXJhdGVkIHdoZW4gaXQgaXMgbm90IHNwZWNpZmllZC5cbiAgICovXG4gIGlkPzogc3RyaW5nO1xuICAvKipcbiAgICogVXNlZCBhcyBIVE1MIGF1dG9jb21wbGV0ZSBwcm9wZXJ0eVxuICAgKi9cbiAgYXV0b0NvbXBsZXRlPzogc3RyaW5nO1xuICAvKipcbiAgICogSW5kaWNhdGUgaWYgdGhlIHZhbHVlIGVudGVyZWQgaW4gdGhlIGlucHV0IGlzIGludmFsaWQuXG4gICAqL1xuICAnYXJpYS1pbnZhbGlkJz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBIVE1MIElEIG9mIGFuIGVsZW1lbnQgY29udGFpbmluZyBhbiBlcnJvciBtZXNzYWdlIHJlbGF0ZWQgdG8gdGhlIGlucHV0LlxuICAgKi9cbiAgJ2FyaWEtZXJyb3JtZXNzYWdlJz86IHN0cmluZztcbiAgLyoqXG4gICAqIFVzZWQgYXMgSFRNTCBuYW1lIG9mIHRoZSBpbnB1dCBjb21wb25lbnQgcHJvcGVydHkuXG4gICAqL1xuICBuYW1lPzogc3RyaW5nO1xuICAvKipcbiAgICogVmFsdWUgb2YgdGhlIGlucHV0LiBDb25zaXN0cyBvZiB0ZXh0IGlucHV0IGFuZCBzZWxlY3RlZCBvcHRpb24uXG4gICAqL1xuICB2YWx1ZTogVFZhbHVlO1xuICAvKipcbiAgICogQ2FsbGVkIHdpdGggdGhlIGV2ZW50IG9mIHRoZSBpbnB1dCBvciBkcm9wZG93biB3aGVuIGVpdGhlciB0aGUgc2VsZWN0YWJsZSBkcm9wZG93biBvciB0aGUgdGV4dCBpbnB1dCBoYXZlIGNoYW5nZWQuXG4gICAqIFRoZSBjaGFuZ2UgZXZlbnQgZnJvbSB0aGUgdGV4dCBpbnB1dCBoYXMgYSBzdWZmaXggb2YgYC50ZXh0SW5wdXRgIGFuZCB0aGUgY2hhbmdlIGV2ZW50IGZyb20gdGhlIGRyb3Bkb3duIGhhcyBhIHN1ZmZpeCBvZiBgLmRyb3Bkb3duYC5cbiAgICovXG4gIG9uQ2hhbmdlPzogKGV2ZW50OiBUQ3VzdG9tRXZlbnQpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiBpbnB1dCBpcyBibHVycmVkXG4gICAqL1xuICBvbkJsdXI/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGlucHV0IGlzIGZvY3VzZWRcbiAgICovXG4gIG9uRm9jdXM/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIEhhbmRsZXIgd2hlbiB0aGUgc2VhcmNoIGJ1dHRvbiBpcyBjbGlja2VkLlxuICAgKi9cbiAgb25TdWJtaXQ6ICh2YWx1ZTogVFZhbHVlKSA9PiB2b2lkO1xuICAvKipcbiAgICogSGFuZGxlciB3aGVuIHRoZSBjbGVhciBidXR0b24gaXMgY2xpY2tlZC5cbiAgICovXG4gIG9uUmVzZXQ/OiAoKSA9PiB2b2lkO1xuICAvKipcbiAgICogRm9jdXMgdGhlIGlucHV0IG9uIGluaXRpYWwgcmVuZGVyXG4gICAqL1xuICBpc0F1dG9mb2N1c3NlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgdGhhdCB0aGUgaW5wdXQgY2Fubm90IGJlIG1vZGlmaWVkIChlLmcgbm90IGF1dGhvcml6ZWQsIG9yIGNoYW5nZXMgY3VycmVudGx5IHNhdmluZykuXG4gICAqL1xuICBpc0Rpc2FibGVkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGF0IHRoZSBmaWVsZCBpcyBkaXNwbGF5aW5nIHJlYWQtb25seSBjb250ZW50XG4gICAqL1xuICBpc1JlYWRPbmx5PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyBpZiB0aGUgaW5wdXQgaGFzIGludmFsaWQgdmFsdWVzXG4gICAqL1xuICBoYXNFcnJvcj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaWYgdGhlIGlucHV0IGhhcyB3YXJuaW5nIHZhbHVlc1xuICAgKi9cbiAgaGFzV2FybmluZz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBQbGFjZWhvbGRlciB0ZXh0IGZvciB0aGUgaW5wdXRcbiAgICovXG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xuICAvKipcbiAgICogSW5kaWNhdGVzIGlmIHRoZSBpbnB1dCBzaG91bGQgYmUgY2xlYXJlZCB3aGVuIHRoZSBjbGVhciBidXR0b24gaXMgY2xpY2tlZC5cbiAgICogRGVmYXVsdHMgdG8gdHJ1ZS5cbiAgICpcbiAgICovXG4gIGlzQ2xlYXJhYmxlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEhvcml6b250YWwgc2l6ZSBsaW1pdCBvZiB0aGUgaW5wdXQgZmllbGRzLlxuICAgKi9cbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQ/OiAxMCB8IDExIHwgMTIgfCAxMyB8IDE0IHwgMTUgfCAxNiB8ICdzY2FsZScgfCAnYXV0byc7XG4gIC8qKlxuICAgKiBBcnJheSBvZiBvcHRpb25zIHRoYXQgcG9wdWxhdGUgdGhlIHNlbGVjdCBtZW51XG4gICAqL1xuICBvcHRpb25zOiBUT3B0aW9ucztcbiAgLyoqXG4gICAqIHotaW5kZXggdmFsdWUgZm9yIHRoZSBtZW51IHBvcnRhbFxuICAgKiA8YnI+XG4gICAqIFVzZSBpbiBjb25qdW5jdGlvbiB3aXRoIGBtZW51UG9ydGFsVGFyZ2V0YFxuICAgKi9cbiAgbWVudVBvcnRhbFpJbmRleD86IG51bWJlcjtcbiAgLyoqXG4gICAqIERvbSBlbGVtZW50IHRvIHBvcnRhbCB0aGUgc2VsZWN0IG1lbnUgdG9cbiAgICogPGJyPlxuICAgKiBbUHJvcHMgZnJvbSBSZWFjdCBzZWxlY3Qgd2FzIHVzZWRdKGh0dHBzOi8vcmVhY3Qtc2VsZWN0LmNvbS9wcm9wcylcbiAgICovXG4gIG1lbnVQb3J0YWxUYXJnZXQ/OiBSZWFjdFNlbGVjdFByb3BzWydtZW51UG9ydGFsVGFyZ2V0J107XG4gIC8qKlxuICAgKiB3aGV0aGVyIHRoZSBtZW51IHNob3VsZCBibG9jayBzY3JvbGwgd2hpbGUgb3BlblxuICAgKiA8YnI+XG4gICAqIFtQcm9wcyBmcm9tIFJlYWN0IHNlbGVjdCB3YXMgdXNlZF0oaHR0cHM6Ly9yZWFjdC1zZWxlY3QuY29tL3Byb3BzKVxuICAgKi9cbiAgbWVudVNob3VsZEJsb2NrU2Nyb2xsPzogUmVhY3RTZWxlY3RQcm9wc1snbWVudVNob3VsZEJsb2NrU2Nyb2xsJ107XG4gIC8qKlxuICAgKiBIYW5kbGUgY2hhbmdlIGV2ZW50cyBvbiB0aGUgbWVudSBpbnB1dFxuICAgKiA8YnI+XG4gICAqIFtQcm9wcyBmcm9tIFJlYWN0IHNlbGVjdCB3YXMgdXNlZF0oaHR0cHM6Ly9yZWFjdC1zZWxlY3QuY29tL3Byb3BzKVxuICAgKi9cbiAgb25NZW51SW5wdXRDaGFuZ2U/OiBSZWFjdFNlbGVjdFByb3BzWydvbklucHV0Q2hhbmdlJ107XG4gIC8qKlxuICAgKiBDYW4gYmUgdXNlZCB0byByZW5kZXIgYSBjdXN0b20gdmFsdWUgd2hlbiB0aGVyZSBhcmUgbm8gb3B0aW9ucyAoZWl0aGVyIGJlY2F1c2Ugb2Ygbm8gc2VhcmNoIHJlc3VsdHMsIG9yIGFsbCBvcHRpb25zIGhhdmUgYmVlbiB1c2VkLCBvciB0aGVyZSB3ZXJlIG5vbmUgaW4gdGhlIGZpcnN0IHBsYWNlKS4gR2V0cyBjYWxsZWQgd2l0aCB7IGlucHV0VmFsdWU6IFN0cmluZyB9LlxuICAgKiA8YnIgLz5cbiAgICogYGlucHV0VmFsdWVgIHdpbGwgYmUgYW4gZW1wdHkgc3RyaW5nIHdoZW4gbm8gc2VhcmNoIHRleHQgaXMgcHJlc2VudC5cbiAgICogPGJyPlxuICAgKiBbUHJvcHMgZnJvbSBSZWFjdCBzZWxlY3Qgd2FzIHVzZWRdKGh0dHBzOi8vcmVhY3Qtc2VsZWN0LmNvbS9wcm9wcylcbiAgICovXG4gIG5vTWVudU9wdGlvbnNNZXNzYWdlPzogUmVhY3RTZWxlY3RQcm9wc1snbm9PcHRpb25zTWVzc2FnZSddO1xuICAvKipcbiAgICogV2hldGhlciB0byBlbmFibGUgc2VhcmNoIGZ1bmN0aW9uYWxpdHkuXG4gICAqIDxicj5cbiAgICogW1Byb3BzIGZyb20gUmVhY3Qgc2VsZWN0IHdhcyB1c2VkXShodHRwczovL3JlYWN0LXNlbGVjdC5jb20vcHJvcHMpXG4gICAqL1xuICBpc01lbnVTZWFyY2hhYmxlPzogUmVhY3RTZWxlY3RQcm9wc1snaXNTZWFyY2hhYmxlJ107XG4gIC8qKlxuICAgKiBNYXhpbXVtIGhlaWdodCBvZiB0aGUgbWVudSBiZWZvcmUgc2Nyb2xsaW5nXG4gICAqIDxicj5cbiAgICogW1Byb3BzIGZyb20gUmVhY3Qgc2VsZWN0IHdhcyB1c2VkXShodHRwczovL3JlYWN0LXNlbGVjdC5jb20vcHJvcHMpXG4gICAqL1xuICBtYXhNZW51SGVpZ2h0PzogUmVhY3RTZWxlY3RQcm9wc1snbWF4TWVudUhlaWdodCddO1xuICAvKipcbiAgICogV2hldGhlciB0aGUgbWVudSBzaG91bGQgY2xvc2UgYWZ0ZXIgYSB2YWx1ZSBpcyBzZWxlY3RlZC4gRGVmYXVsdHMgdG8gYHRydWVgLlxuICAgKiA8YnI+XG4gICAqIFtQcm9wcyBmcm9tIFJlYWN0IHNlbGVjdCB3YXMgdXNlZF0oaHR0cHM6Ly9yZWFjdC1zZWxlY3QuY29tL3Byb3BzKVxuICAgKi9cbiAgY2xvc2VNZW51T25TZWxlY3Q/OiBSZWFjdFNlbGVjdFByb3BzWydjbG9zZU1lbnVPblNlbGVjdCddO1xuICAvKipcbiAgICogSG9yaXpvbnRhbCBzaXplIGxpbWl0IGZvciB0aGUgZHJvcGRvd24gbWVudS5cbiAgICovXG4gIG1lbnVIb3Jpem9udGFsQ29uc3RyYWludD86IDMgfCA0IHwgNTtcbiAgLyoqXG4gICAqIFNob3cgc3VibWl0IGJ1dHRvbiBpbiB0aGUgaW5wdXRcbiAgICovXG4gIHNob3dTdWJtaXRCdXR0b24/OiBib29sZWFuO1xuICAvKipcbiAgICogIHVzZWQgdG8gcGFzcyBkYXRhLSogcHJvcHMgdG8gdGhlIHNlbGVjdCBjb21wb25lbnQuXG4gICAqIGVnOiBzZWxlY3REYXRhUHJvcHM9e1t7ICdwcm9wLTEnOiAndmFsdWUtMScgfSwgeyAncHJvcC0yJzogJ3ZhbHVlLTInIH1dfVxuICAgKi9cbiAgc2VsZWN0RGF0YVByb3BzPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgLyoqXG4gICAqICB1c2VkIHRvIHBhc3MgZGF0YS0qIHByb3BzIHRvIHRoZSBpbnB1dCBlbGVtZW50LlxuICAgKiBlZzogaW5wdXREYXRhUHJvcHM9e1t7ICdwcm9wLTEnOiAndmFsdWUtMScgfSwgeyAncHJvcC0yJzogJ3ZhbHVlLTInIH1dfVxuICAgKi9cbiAgaW5wdXREYXRhUHJvcHM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xufTtcblxuY29uc3QgZGVmYXVsdFByb3BzOiBQaWNrPFxuICBUU2VsZWN0YWJsZVNlYXJjaElucHV0UHJvcHMsXG4gIHwgJ2hvcml6b250YWxDb25zdHJhaW50J1xuICB8ICdpc0NsZWFyYWJsZSdcbiAgfCAnbWVudUhvcml6b250YWxDb25zdHJhaW50J1xuICB8ICdzaG93U3VibWl0QnV0dG9uJ1xuICB8ICdtZW51UG9ydGFsWkluZGV4J1xuICB8ICdvcHRpb25zJ1xuPiA9IHtcbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQ6ICdzY2FsZScsXG4gIGlzQ2xlYXJhYmxlOiB0cnVlLFxuICBtZW51SG9yaXpvbnRhbENvbnN0cmFpbnQ6IDMsXG4gIHNob3dTdWJtaXRCdXR0b246IHRydWUsXG4gIG1lbnVQb3J0YWxaSW5kZXg6IDEsXG4gIG9wdGlvbnM6IFtdLFxufTtcblxuY29uc3Qgc2VsZWN0YWJsZVNlYXJjaElucHV0U2VxdWVudGlhbElkID0gY3JlYXRlU2VxdWVudGlhbElkKFxuICAnc2VsZWN0YWJsZS1zZWFyY2gtaW5wdXQtJ1xuKTtcblxuY29uc3QgaXNPcHRpb25PYmplY3QgPSAoXG4gIG9wdGlvbjogVE9wdGlvbiB8IFRPcHRpb25PYmplY3Rcbik6IG9wdGlvbiBpcyBUT3B0aW9uT2JqZWN0ID0+IChvcHRpb24gYXMgVE9wdGlvbk9iamVjdCkub3B0aW9ucyAhPT0gdW5kZWZpbmVkO1xuXG5jb25zdCB0cmFuc2Zvcm1EYXRhUHJvcHMgPSAoZGF0YVByb3BzPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPikgPT5cbiAgT2JqZWN0LmZyb21FbnRyaWVzKFxuICAgIE9iamVjdC5lbnRyaWVzKGRhdGFQcm9wcyB8fCB7fSkubWFwKChba2V5LCB2YWx1ZV0pID0+IFtcbiAgICAgIGBkYXRhLSR7a2V5fWAsXG4gICAgICB2YWx1ZSxcbiAgICBdKVxuICApO1xuXG5jb25zdCBTZWxlY3RhYmxlU2VhcmNoSW5wdXQgPSAocHJvcHM6IFRTZWxlY3RhYmxlU2VhcmNoSW5wdXRQcm9wcykgPT4ge1xuICBjb25zdCBbZHJvcGRvd25IYXNGb2N1cywgdG9nZ2xlRHJvcGRvd25IYXNGb2N1c10gPSB1c2VUb2dnbGVTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtzZWFyY2hWYWx1ZSwgc2V0U2VhcmNoVmFsdWVdID0gdXNlU3RhdGUocHJvcHMudmFsdWUudGV4dCB8fCAnJyk7XG4gIGNvbnN0IGNvbnRhaW5lclJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbCk7XG4gIGNvbnN0IHRleHRJbnB1dFJlZiA9IHVzZVJlZjxIVE1MSW5wdXRFbGVtZW50PihudWxsKTtcblxuICBjb25zdCBsZWdhY3lEYXRhUHJvcHMgPSBmaWx0ZXJEYXRhQXR0cmlidXRlcyhwcm9wcyk7XG4gIGNvbnN0IHRyYW5zZm9ybWVkU2VsZWN0RGF0YVByb3BzID0gdHJhbnNmb3JtRGF0YVByb3BzKHByb3BzLnNlbGVjdERhdGFQcm9wcyk7XG4gIGNvbnN0IHRyYW5zZm9ybWVkSW5wdXREYXRhUHJvcHMgPSB0cmFuc2Zvcm1EYXRhUHJvcHMocHJvcHMuaW5wdXREYXRhUHJvcHMpO1xuXG4gIGNvbnN0IG9wdGlvbnNXaXRob3V0R3JvdXBzID0gcHJvcHMub3B0aW9ucy5mbGF0TWFwKChvcHRpb24pID0+IHtcbiAgICBpZiAoaXNPcHRpb25PYmplY3Qob3B0aW9uKSkge1xuICAgICAgcmV0dXJuIG9wdGlvbi5vcHRpb25zO1xuICAgIH1cbiAgICByZXR1cm4gb3B0aW9uO1xuICB9KTtcblxuICBjb25zdCBzZWxlY3RlZE9wdGlvbiA9IG9wdGlvbnNXaXRob3V0R3JvdXBzLmZpbmQoXG4gICAgKG9wdGlvbikgPT4gb3B0aW9uLnZhbHVlID09PSBwcm9wcy52YWx1ZS5vcHRpb25cbiAgKTtcblxuICBjb25zdCBzZWxlY3RhYmxTZWFyY2hJbnB1dElkID0gdXNlRmllbGRJZChcbiAgICBwcm9wcy5pZCxcbiAgICBzZWxlY3RhYmxlU2VhcmNoSW5wdXRTZXF1ZW50aWFsSWRcbiAgKTtcblxuICBpZiAoIXByb3BzLmlzUmVhZE9ubHkpIHtcbiAgICB3YXJuaW5nKFxuICAgICAgdHlwZW9mIHByb3BzLm9uQ2hhbmdlID09PSAnZnVuY3Rpb24nLFxuICAgICAgJ1NlbGVjdGFibGVTZWFyY2hJbnB1dDogYG9uQ2hhbmdlYCBpcyByZXF1aXJlZCB3aGVuIGlzIG5vdCByZWFkIG9ubHkuJ1xuICAgICk7XG4gIH1cblxuICB3YXJuSWZNZW51UG9ydGFsUHJvcHNBcmVNaXNzaW5nKHtcbiAgICBtZW51UG9ydGFsWkluZGV4OiBwcm9wcy5tZW51UG9ydGFsWkluZGV4LFxuICAgIG1lbnVQb3J0YWxUYXJnZXQ6IHByb3BzLm1lbnVQb3J0YWxUYXJnZXQsXG4gICAgY29tcG9uZW50TmFtZTogJ1NlbGVjdGFibGVTZWFyY2hJbnB1dCcsXG4gIH0pO1xuXG4gIGNvbnN0IHsgb25Gb2N1cywgb25CbHVyLCBuYW1lIH0gPSBwcm9wcztcbiAgY29uc3QgaGFuZGxlVGV4dElucHV0Rm9jdXMgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgaWYgKG9uRm9jdXMpIHtcbiAgICAgIG9uRm9jdXMoe1xuICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICBpZDogU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldFRleHRJbnB1dElkKHNlbGVjdGFibFNlYXJjaElucHV0SWQpLFxuICAgICAgICAgIG5hbWU6IGdldFRleHRJbnB1dE5hbWUobmFtZSksXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9XG4gIH0sIFtvbkZvY3VzLCBzZWxlY3RhYmxTZWFyY2hJbnB1dElkLCBuYW1lXSk7XG5cbiAgY29uc3QgaGFuZGxlVGV4dElucHV0Qmx1ciA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBpZiAob25CbHVyKSB7XG4gICAgICBvbkJsdXIoe1xuICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICBpZDogU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldFRleHRJbnB1dElkKHNlbGVjdGFibFNlYXJjaElucHV0SWQpLFxuICAgICAgICAgIG5hbWU6IGdldFRleHRJbnB1dE5hbWUobmFtZSksXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9XG4gIH0sIFtvbkJsdXIsIHNlbGVjdGFibFNlYXJjaElucHV0SWQsIG5hbWVdKTtcblxuICBjb25zdCBoYW5kbGVDbGVhciA9ICgpID0+IHtcbiAgICBzZXRTZWFyY2hWYWx1ZSgnJyk7XG4gICAgaWYgKHByb3BzLm9uUmVzZXQpIHtcbiAgICAgIHByb3BzLm9uUmVzZXQoKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlQ2hhbmdlID0gKGV2ZW50OiBDaGFuZ2VFdmVudDxIVE1MSW5wdXRFbGVtZW50PikgPT4ge1xuICAgIHNldFNlYXJjaFZhbHVlKGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgaWYgKHByb3BzLm9uQ2hhbmdlKSB7XG4gICAgICBwcm9wcy5vbkNoYW5nZSh7XG4gICAgICAgIHRhcmdldDoge1xuICAgICAgICAgIGlkOiBTZWxlY3RhYmxlU2VhcmNoSW5wdXQuZ2V0VGV4dElucHV0SWQoc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCksXG4gICAgICAgICAgbmFtZTogZ2V0VGV4dElucHV0TmFtZShwcm9wcy5uYW1lKSxcbiAgICAgICAgICB2YWx1ZTogZXZlbnQudGFyZ2V0LnZhbHVlLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGhhbmRsZVN1Ym1pdCA9IChcbiAgICBldmVudDpcbiAgICAgIHwgS2V5Ym9hcmRFdmVudDxIVE1MQnV0dG9uRWxlbWVudD5cbiAgICAgIHwgTW91c2VFdmVudDxIVE1MQnV0dG9uRWxlbWVudD5cbiAgICAgIHwgS2V5Ym9hcmRFdmVudDxIVE1MSW5wdXRFbGVtZW50PlxuICApID0+IHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGlmIChwcm9wcy5vblN1Ym1pdCkge1xuICAgICAgcHJvcHMub25TdWJtaXQoe1xuICAgICAgICB0ZXh0OiBzZWFyY2hWYWx1ZSxcbiAgICAgICAgb3B0aW9uOiBzZWxlY3RlZE9wdGlvbj8udmFsdWUgPz8gJycsXG4gICAgICB9KTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgZHJvcGRvd25OYW1lID0gZ2V0RHJvcGRvd25OYW1lKHByb3BzLm5hbWUpO1xuICBjb25zdCBkcm9wZG93bklkID0gU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldERyb3Bkb3duSWQoXG4gICAgc2VsZWN0YWJsU2VhcmNoSW5wdXRJZFxuICApO1xuXG4gIGNvbnN0IGhhbmRsZURyb3Bkb3duRm9jdXMgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgaWYgKG9uRm9jdXMpIHtcbiAgICAgIG9uRm9jdXMoe1xuICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICBpZDogZHJvcGRvd25JZCxcbiAgICAgICAgICBuYW1lOiBkcm9wZG93bk5hbWUsXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9XG4gICAgdG9nZ2xlRHJvcGRvd25IYXNGb2N1cyh0cnVlKTtcbiAgfSwgW29uRm9jdXMsIHRvZ2dsZURyb3Bkb3duSGFzRm9jdXMsIGRyb3Bkb3duTmFtZSwgZHJvcGRvd25JZF0pO1xuXG4gIGNvbnN0IGhhbmRsZURyb3Bkb3duQmx1ciA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBpZiAob25CbHVyKSB7XG4gICAgICBvbkJsdXIoe1xuICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICBpZDogZHJvcGRvd25JZCxcbiAgICAgICAgICBuYW1lOiBkcm9wZG93bk5hbWUsXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9XG4gICAgdG9nZ2xlRHJvcGRvd25IYXNGb2N1cyhmYWxzZSk7XG4gIH0sIFt0b2dnbGVEcm9wZG93bkhhc0ZvY3VzLCBvbkJsdXIsIGRyb3Bkb3duTmFtZSwgZHJvcGRvd25JZF0pO1xuXG4gIGNvbnN0IGhhbmRsZUNvbnRhaW5lckJsdXIgPSB1c2VDYWxsYmFjayhcbiAgICAoZXZlbnQpID0+IHtcbiAgICAgIC8vIGVuc3VyZXMgdGhhdCBib3RoIGZpZWxkcyBhcmUgbWFya2VkIGFzIHRvdWNoZWQgd2hlbiBvbmUgb2YgdGhlbVxuICAgICAgLy8gaXMgYmx1cnJlZFxuICAgICAgaWYgKFxuICAgICAgICB0eXBlb2Ygb25CbHVyID09PSAnZnVuY3Rpb24nICYmXG4gICAgICAgICFjb250YWluZXJSZWYuY3VycmVudD8uY29udGFpbnMoZXZlbnQucmVsYXRlZFRhcmdldClcbiAgICAgICkge1xuICAgICAgICBvbkJsdXIoe1xuICAgICAgICAgIHRhcmdldDoge1xuICAgICAgICAgICAgaWQ6IFNlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXREcm9wZG93bklkKHNlbGVjdGFibFNlYXJjaElucHV0SWQpLFxuICAgICAgICAgICAgbmFtZTogZ2V0RHJvcGRvd25OYW1lKG5hbWUpLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuICAgICAgICBvbkJsdXIoe1xuICAgICAgICAgIHRhcmdldDoge1xuICAgICAgICAgICAgaWQ6IFNlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXRUZXh0SW5wdXRJZChzZWxlY3RhYmxTZWFyY2hJbnB1dElkKSxcbiAgICAgICAgICAgIG5hbWU6IGdldFRleHRJbnB1dE5hbWUobmFtZSksXG4gICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSxcbiAgICBbb25CbHVyLCBzZWxlY3RhYmxTZWFyY2hJbnB1dElkLCBuYW1lXVxuICApO1xuXG4gIHJldHVybiAoXG4gICAgPENvbnN0cmFpbnRzLkhvcml6b250YWwgbWF4PXtwcm9wcy5ob3Jpem9udGFsQ29uc3RyYWludH0+XG4gICAgICA8Q29udGFpbmVyXG4gICAgICAgIHJlZj17Y29udGFpbmVyUmVmfVxuICAgICAgICBvbkJsdXI9e2hhbmRsZUNvbnRhaW5lckJsdXJ9XG4gICAgICAgIGRhdGEtdGVzdGlkPVwic2VsZWN0YWJsZS1zZWFyY2gtaW5wdXQtY29udGFpbmVyXCJcbiAgICAgID5cbiAgICAgICAgPENvbnN0cmFpbnRzLkhvcml6b250YWwgbWF4PXtwcm9wcy5tZW51SG9yaXpvbnRhbENvbnN0cmFpbnR9PlxuICAgICAgICAgIDxTZWxlY3RhYmxlU2VsZWN0XG4gICAgICAgICAgICB7Li4ucHJvcHN9XG4gICAgICAgICAgICBpZD17U2VsZWN0YWJsZVNlYXJjaElucHV0LmdldERyb3Bkb3duSWQoc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCl9XG4gICAgICAgICAgICBuYW1lPXtnZXREcm9wZG93bk5hbWUocHJvcHMubmFtZSl9XG4gICAgICAgICAgICBkcm9wZG93bkhhc0ZvY3VzPXtkcm9wZG93bkhhc0ZvY3VzfVxuICAgICAgICAgICAgaGFuZGxlRHJvcGRvd25Gb2N1cz17aGFuZGxlRHJvcGRvd25Gb2N1c31cbiAgICAgICAgICAgIGhhbmRsZURyb3Bkb3duQmx1cj17aGFuZGxlRHJvcGRvd25CbHVyfVxuICAgICAgICAgICAgdGV4dElucHV0UmVmPXt0ZXh0SW5wdXRSZWZ9XG4gICAgICAgICAgICBzZWxlY3RlZE9wdGlvbj17c2VsZWN0ZWRPcHRpb259XG4gICAgICAgICAgICBkYXRhUHJvcHM9e3RyYW5zZm9ybWVkU2VsZWN0RGF0YVByb3BzfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvQ29uc3RyYWludHMuSG9yaXpvbnRhbD5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNzcz17W1xuICAgICAgICAgICAgZ2V0U2VsZWN0YWJsZVNlYXJjaElucHV0Q29udGFpbmVyU3R5bGVzKHByb3BzKSxcbiAgICAgICAgICAgIGRyb3Bkb3duSGFzRm9jdXMgJiZcbiAgICAgICAgICAgICAgIXByb3BzLmlzUmVhZE9ubHkgJiZcbiAgICAgICAgICAgICAgY3NzYFxuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAke2Rlc2lnblRva2Vucy5ib3JkZXJDb2xvckZvcklucHV0V2hlbkZvY3VzZWR9O1xuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICR7ZGVzaWduVG9rZW5zLmJvcmRlckNvbG9yRm9ySW5wdXRXaGVuRm9jdXNlZH07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBgLFxuICAgICAgICAgIF19XG4gICAgICAgID5cbiAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgIHJlZj17dGV4dElucHV0UmVmfVxuICAgICAgICAgICAgaWQ9e1NlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXRUZXh0SW5wdXRJZChzZWxlY3RhYmxTZWFyY2hJbnB1dElkKX1cbiAgICAgICAgICAgIG5hbWU9e2dldFRleHRJbnB1dE5hbWUocHJvcHMubmFtZSl9XG4gICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICB2YWx1ZT17c2VhcmNoVmFsdWV9XG4gICAgICAgICAgICBvbkNoYW5nZT17aGFuZGxlQ2hhbmdlfVxuICAgICAgICAgICAgb25CbHVyPXtoYW5kbGVUZXh0SW5wdXRCbHVyfVxuICAgICAgICAgICAgb25Gb2N1cz17aGFuZGxlVGV4dElucHV0Rm9jdXN9XG4gICAgICAgICAgICBkaXNhYmxlZD17cHJvcHMuaXNEaXNhYmxlZH1cbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPXtwcm9wcy5wbGFjZWhvbGRlcn1cbiAgICAgICAgICAgIHJlYWRPbmx5PXtwcm9wcy5pc1JlYWRPbmx5fVxuICAgICAgICAgICAgYXV0b0ZvY3VzPXtwcm9wcy5pc0F1dG9mb2N1c3NlZH1cbiAgICAgICAgICAgIGF1dG9Db21wbGV0ZT17cHJvcHMuYXV0b0NvbXBsZXRlfVxuICAgICAgICAgICAgYXJpYS1yZWFkb25seT17cHJvcHMuaXNSZWFkT25seX1cbiAgICAgICAgICAgIGNvbnRlbnRFZGl0YWJsZT17IXByb3BzLmlzUmVhZE9ubHl9XG4gICAgICAgICAgICBjc3M9e2dldFNlbGVjdGFibGVTZWFyY2hJbnB1dFN0eWxlcyhwcm9wcyl9XG4gICAgICAgICAgICB7Li4udHJhbnNmb3JtZWRJbnB1dERhdGFQcm9wc31cbiAgICAgICAgICAgIHsuLi5sZWdhY3lEYXRhUHJvcHN9XG4gICAgICAgICAgICAvKiBBUklBICovXG4gICAgICAgICAgICBhcmlhLWludmFsaWQ9e3Byb3BzWydhcmlhLWludmFsaWQnXX1cbiAgICAgICAgICAgIGFyaWEtZXJyb3JtZXNzYWdlPXtwcm9wc1snYXJpYS1lcnJvcm1lc3NhZ2UnXX1cbiAgICAgICAgICAgIGRhdGEtdGVzdGlkPVwic2VsZWN0YWJsZS1pbnB1dFwiXG4gICAgICAgICAgICBvbktleURvd249eyhldmVudCkgPT4ge1xuICAgICAgICAgICAgICBpZiAoIXByb3BzLmlzUmVhZE9ubHkgJiYgZXZlbnQua2V5ID09PSAnRW50ZXInKSB7XG4gICAgICAgICAgICAgICAgaGFuZGxlU3VibWl0KGV2ZW50KTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAvPlxuICAgICAgICAgIHtwcm9wcy5pc0NsZWFyYWJsZSAmJlxuICAgICAgICAgICAgc2VhcmNoVmFsdWUgJiZcbiAgICAgICAgICAgICFwcm9wcy5pc0Rpc2FibGVkICYmXG4gICAgICAgICAgICAhcHJvcHMuaXNSZWFkT25seSAmJiAoXG4gICAgICAgICAgICAgIDxTZWNvbmRhcnlJY29uQnV0dG9uXG4gICAgICAgICAgICAgICAgaWNvbj17PENsb3NlSWNvbiAvPn1cbiAgICAgICAgICAgICAgICBzaXplPVwibWVkaXVtXCJcbiAgICAgICAgICAgICAgICBsYWJlbD17J2NsZWFyLWJ1dHRvbid9XG4gICAgICAgICAgICAgICAgb25DbGljaz17aGFuZGxlQ2xlYXJ9XG4gICAgICAgICAgICAgICAgY3NzPXtnZXRDbGVhckljb25CdXR0b25TdHlsZXMocHJvcHMpfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICB7cHJvcHMuc2hvd1N1Ym1pdEJ1dHRvbiAmJiAoXG4gICAgICAgICAgICA8U2Vjb25kYXJ5SWNvbkJ1dHRvblxuICAgICAgICAgICAgICBpY29uPXs8U2VhcmNoSWNvbiAvPn1cbiAgICAgICAgICAgICAgbGFiZWw9eydzZWFyY2gtYnV0dG9uJ31cbiAgICAgICAgICAgICAgb25DbGljaz17aGFuZGxlU3VibWl0fVxuICAgICAgICAgICAgICBjc3M9e2dldFNlYXJjaEljb25CdXR0b25TdHlsZXMocHJvcHMpfVxuICAgICAgICAgICAgICBpc0Rpc2FibGVkPXtwcm9wcy5pc0Rpc2FibGVkfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvQ29udGFpbmVyPlxuICAgIDwvQ29uc3RyYWludHMuSG9yaXpvbnRhbD5cbiAgKTtcbn07XG5cblNlbGVjdGFibGVTZWFyY2hJbnB1dC5kaXNwbGF5TmFtZSA9ICdTZWxlY3RhYmxlU2VhcmNoSW5wdXQnO1xuU2VsZWN0YWJsZVNlYXJjaElucHV0LmRlZmF1bHRQcm9wcyA9IGRlZmF1bHRQcm9wcztcblNlbGVjdGFibGVTZWFyY2hJbnB1dC5pc0VtcHR5ID0gKFxuICBmb3JtVmFsdWU6IFRTZWxlY3RhYmxlU2VhcmNoSW5wdXRQcm9wc1sndmFsdWUnXVxuKSA9PiAhZm9ybVZhbHVlIHx8IGZvcm1WYWx1ZS50ZXh0LnRyaW0oKSA9PT0gJyc7XG5TZWxlY3RhYmxlU2VhcmNoSW5wdXQuZ2V0VGV4dElucHV0SWQgPSBnZXRUZXh0SW5wdXROYW1lO1xuU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldERyb3Bkb3duSWQgPSBnZXREcm9wZG93bk5hbWU7XG5cbmV4cG9ydCBkZWZhdWx0IFNlbGVjdGFibGVTZWFyY2hJbnB1dDtcbiJdfQ== */"), process.env.NODE_ENV === "production" ? "" : ";label:SelectableSearchInput;", process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNlbGVjdGFibGUtc2VhcmNoLWlucHV0LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF5YVUiLCJmaWxlIjoic2VsZWN0YWJsZS1zZWFyY2gtaW5wdXQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgdHlwZSBNb3VzZUV2ZW50LFxuICB0eXBlIEtleWJvYXJkRXZlbnQsXG4gIHR5cGUgQ2hhbmdlRXZlbnQsXG4gIHR5cGUgUmVhY3ROb2RlLFxuICB1c2VTdGF0ZSxcbiAgdXNlQ2FsbGJhY2ssXG4gIHVzZVJlZixcbn0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IFNlY29uZGFyeUljb25CdXR0b24gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvc2Vjb25kYXJ5LWljb24tYnV0dG9uJztcbmltcG9ydCBDb25zdHJhaW50cyBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9jb25zdHJhaW50cyc7XG5pbXBvcnQgeyBTZWFyY2hJY29uLCBDbG9zZUljb24gfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9pY29ucyc7XG5pbXBvcnQge1xuICBjcmVhdGVTZXF1ZW50aWFsSWQsXG4gIGZpbHRlckRhdGFBdHRyaWJ1dGVzLFxuICB3YXJuaW5nLFxufSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC91dGlscyc7XG5pbXBvcnQgeyB3YXJuSWZNZW51UG9ydGFsUHJvcHNBcmVNaXNzaW5nIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvc2VsZWN0LXV0aWxzJztcbmltcG9ydCB7XG4gIGdldENsZWFySWNvbkJ1dHRvblN0eWxlcyxcbiAgZ2V0U2VhcmNoSWNvbkJ1dHRvblN0eWxlcyxcbiAgZ2V0U2VsZWN0YWJsZVNlYXJjaElucHV0Q29udGFpbmVyU3R5bGVzLFxuICBnZXRTZWxlY3RhYmxlU2VhcmNoSW5wdXRTdHlsZXMsXG59IGZyb20gJy4vc2VsZWN0YWJsZS1zZWFyY2gtaW5wdXQuc3R5bGVzJztcbmltcG9ydCBTZWxlY3RhYmxlU2VsZWN0IGZyb20gJy4vc2VsZWN0YWJsZS1zZWxlY3QnO1xuaW1wb3J0IHsgdXNlRmllbGRJZCwgdXNlVG9nZ2xlU3RhdGUgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9ob29rcyc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyBkZXNpZ25Ub2tlbnMgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9kZXNpZ24tc3lzdGVtJztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcbmltcG9ydCB7IHR5cGUgUHJvcHMgYXMgUmVhY3RTZWxlY3RQcm9wcyB9IGZyb20gJ3JlYWN0LXNlbGVjdCc7XG5cbmNvbnN0IENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG5gO1xuXG5jb25zdCBnZXRUZXh0SW5wdXROYW1lID0gKG5hbWU/OiBzdHJpbmcpID0+XG4gIG5hbWUgPyBgJHtuYW1lfS50ZXh0SW5wdXRgIDogdW5kZWZpbmVkO1xuXG5jb25zdCBnZXREcm9wZG93bk5hbWUgPSAobmFtZT86IHN0cmluZykgPT5cbiAgbmFtZSA/IGAke25hbWV9LmRyb3Bkb3duYCA6IHVuZGVmaW5lZDtcblxuZXhwb3J0IHR5cGUgVEN1c3RvbUV2ZW50ID0ge1xuICB0YXJnZXQ6IHtcbiAgICBpZD86IHN0cmluZztcbiAgICBuYW1lPzogc3RyaW5nO1xuICAgIHZhbHVlPzogc3RyaW5nIHwgc3RyaW5nW10gfCBudWxsO1xuICB9O1xuICBwZXJzaXN0PzogKCkgPT4gdm9pZDtcbn07XG5cbmV4cG9ydCB0eXBlIFRWYWx1ZSA9IHtcbiAgdGV4dDogc3RyaW5nO1xuICBvcHRpb246IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIFRPcHRpb24gPSB7XG4gIHZhbHVlOiBzdHJpbmc7XG4gIGxhYmVsPzogUmVhY3ROb2RlO1xufTtcblxuZXhwb3J0IHR5cGUgVE9wdGlvbk9iamVjdCA9IHtcbiAgb3B0aW9uczogVE9wdGlvbltdO1xufTtcblxuZXhwb3J0IHR5cGUgVE9wdGlvbnMgPSBUT3B0aW9uW10gfCBUT3B0aW9uT2JqZWN0W107XG5cbmV4cG9ydCB0eXBlIFRTZWxlY3RhYmxlU2VhcmNoSW5wdXRQcm9wcyA9IHtcbiAgLyoqXG4gICAqIFVzZWQgYXMgSFRNTCBpZCBwcm9wZXJ0eS4gQW4gaWQgaXMgYXV0by1nZW5lcmF0ZWQgd2hlbiBpdCBpcyBub3Qgc3BlY2lmaWVkLlxuICAgKi9cbiAgaWQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBVc2VkIGFzIEhUTUwgYXV0b2NvbXBsZXRlIHByb3BlcnR5XG4gICAqL1xuICBhdXRvQ29tcGxldGU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBJbmRpY2F0ZSBpZiB0aGUgdmFsdWUgZW50ZXJlZCBpbiB0aGUgaW5wdXQgaXMgaW52YWxpZC5cbiAgICovXG4gICdhcmlhLWludmFsaWQnPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEhUTUwgSUQgb2YgYW4gZWxlbWVudCBjb250YWluaW5nIGFuIGVycm9yIG1lc3NhZ2UgcmVsYXRlZCB0byB0aGUgaW5wdXQuXG4gICAqL1xuICAnYXJpYS1lcnJvcm1lc3NhZ2UnPzogc3RyaW5nO1xuICAvKipcbiAgICogVXNlZCBhcyBIVE1MIG5hbWUgb2YgdGhlIGlucHV0IGNvbXBvbmVudCBwcm9wZXJ0eS5cbiAgICovXG4gIG5hbWU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBWYWx1ZSBvZiB0aGUgaW5wdXQuIENvbnNpc3RzIG9mIHRleHQgaW5wdXQgYW5kIHNlbGVjdGVkIG9wdGlvbi5cbiAgICovXG4gIHZhbHVlOiBUVmFsdWU7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2l0aCB0aGUgZXZlbnQgb2YgdGhlIGlucHV0IG9yIGRyb3Bkb3duIHdoZW4gZWl0aGVyIHRoZSBzZWxlY3RhYmxlIGRyb3Bkb3duIG9yIHRoZSB0ZXh0IGlucHV0IGhhdmUgY2hhbmdlZC5cbiAgICogVGhlIGNoYW5nZSBldmVudCBmcm9tIHRoZSB0ZXh0IGlucHV0IGhhcyBhIHN1ZmZpeCBvZiBgLnRleHRJbnB1dGAgYW5kIHRoZSBjaGFuZ2UgZXZlbnQgZnJvbSB0aGUgZHJvcGRvd24gaGFzIGEgc3VmZml4IG9mIGAuZHJvcGRvd25gLlxuICAgKi9cbiAgb25DaGFuZ2U/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGlucHV0IGlzIGJsdXJyZWRcbiAgICovXG4gIG9uQmx1cj86IChldmVudDogVEN1c3RvbUV2ZW50KSA9PiB2b2lkO1xuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gaW5wdXQgaXMgZm9jdXNlZFxuICAgKi9cbiAgb25Gb2N1cz86IChldmVudDogVEN1c3RvbUV2ZW50KSA9PiB2b2lkO1xuICAvKipcbiAgICogSGFuZGxlciB3aGVuIHRoZSBzZWFyY2ggYnV0dG9uIGlzIGNsaWNrZWQuXG4gICAqL1xuICBvblN1Ym1pdDogKHZhbHVlOiBUVmFsdWUpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBIYW5kbGVyIHdoZW4gdGhlIGNsZWFyIGJ1dHRvbiBpcyBjbGlja2VkLlxuICAgKi9cbiAgb25SZXNldD86ICgpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBGb2N1cyB0aGUgaW5wdXQgb24gaW5pdGlhbCByZW5kZXJcbiAgICovXG4gIGlzQXV0b2ZvY3Vzc2VkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGF0IHRoZSBpbnB1dCBjYW5ub3QgYmUgbW9kaWZpZWQgKGUuZyBub3QgYXV0aG9yaXplZCwgb3IgY2hhbmdlcyBjdXJyZW50bHkgc2F2aW5nKS5cbiAgICovXG4gIGlzRGlzYWJsZWQ/OiBib29sZWFuO1xuICAvKipcbiAgICogSW5kaWNhdGVzIHRoYXQgdGhlIGZpZWxkIGlzIGRpc3BsYXlpbmcgcmVhZC1vbmx5IGNvbnRlbnRcbiAgICovXG4gIGlzUmVhZE9ubHk/OiBib29sZWFuO1xuICAvKipcbiAgICogSW5kaWNhdGVzIGlmIHRoZSBpbnB1dCBoYXMgaW52YWxpZCB2YWx1ZXNcbiAgICovXG4gIGhhc0Vycm9yPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyBpZiB0aGUgaW5wdXQgaGFzIHdhcm5pbmcgdmFsdWVzXG4gICAqL1xuICBoYXNXYXJuaW5nPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFBsYWNlaG9sZGVyIHRleHQgZm9yIHRoZSBpbnB1dFxuICAgKi9cbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaWYgdGhlIGlucHV0IHNob3VsZCBiZSBjbGVhcmVkIHdoZW4gdGhlIGNsZWFyIGJ1dHRvbiBpcyBjbGlja2VkLlxuICAgKiBEZWZhdWx0cyB0byB0cnVlLlxuICAgKlxuICAgKi9cbiAgaXNDbGVhcmFibGU/OiBib29sZWFuO1xuICAvKipcbiAgICogSG9yaXpvbnRhbCBzaXplIGxpbWl0IG9mIHRoZSBpbnB1dCBmaWVsZHMuXG4gICAqL1xuICBob3Jpem9udGFsQ29uc3RyYWludD86IDEwIHwgMTEgfCAxMiB8IDEzIHwgMTQgfCAxNSB8IDE2IHwgJ3NjYWxlJyB8ICdhdXRvJztcbiAgLyoqXG4gICAqIEFycmF5IG9mIG9wdGlvbnMgdGhhdCBwb3B1bGF0ZSB0aGUgc2VsZWN0IG1lbnVcbiAgICovXG4gIG9wdGlvbnM6IFRPcHRpb25zO1xuICAvKipcbiAgICogei1pbmRleCB2YWx1ZSBmb3IgdGhlIG1lbnUgcG9ydGFsXG4gICAqIDxicj5cbiAgICogVXNlIGluIGNvbmp1bmN0aW9uIHdpdGggYG1lbnVQb3J0YWxUYXJnZXRgXG4gICAqL1xuICBtZW51UG9ydGFsWkluZGV4PzogbnVtYmVyO1xuICAvKipcbiAgICogRG9tIGVsZW1lbnQgdG8gcG9ydGFsIHRoZSBzZWxlY3QgbWVudSB0b1xuICAgKiA8YnI+XG4gICAqIFtQcm9wcyBmcm9tIFJlYWN0IHNlbGVjdCB3YXMgdXNlZF0oaHR0cHM6Ly9yZWFjdC1zZWxlY3QuY29tL3Byb3BzKVxuICAgKi9cbiAgbWVudVBvcnRhbFRhcmdldD86IFJlYWN0U2VsZWN0UHJvcHNbJ21lbnVQb3J0YWxUYXJnZXQnXTtcbiAgLyoqXG4gICAqIHdoZXRoZXIgdGhlIG1lbnUgc2hvdWxkIGJsb2NrIHNjcm9sbCB3aGlsZSBvcGVuXG4gICAqIDxicj5cbiAgICogW1Byb3BzIGZyb20gUmVhY3Qgc2VsZWN0IHdhcyB1c2VkXShodHRwczovL3JlYWN0LXNlbGVjdC5jb20vcHJvcHMpXG4gICAqL1xuICBtZW51U2hvdWxkQmxvY2tTY3JvbGw/OiBSZWFjdFNlbGVjdFByb3BzWydtZW51U2hvdWxkQmxvY2tTY3JvbGwnXTtcbiAgLyoqXG4gICAqIEhhbmRsZSBjaGFuZ2UgZXZlbnRzIG9uIHRoZSBtZW51IGlucHV0XG4gICAqIDxicj5cbiAgICogW1Byb3BzIGZyb20gUmVhY3Qgc2VsZWN0IHdhcyB1c2VkXShodHRwczovL3JlYWN0LXNlbGVjdC5jb20vcHJvcHMpXG4gICAqL1xuICBvbk1lbnVJbnB1dENoYW5nZT86IFJlYWN0U2VsZWN0UHJvcHNbJ29uSW5wdXRDaGFuZ2UnXTtcbiAgLyoqXG4gICAqIENhbiBiZSB1c2VkIHRvIHJlbmRlciBhIGN1c3RvbSB2YWx1ZSB3aGVuIHRoZXJlIGFyZSBubyBvcHRpb25zIChlaXRoZXIgYmVjYXVzZSBvZiBubyBzZWFyY2ggcmVzdWx0cywgb3IgYWxsIG9wdGlvbnMgaGF2ZSBiZWVuIHVzZWQsIG9yIHRoZXJlIHdlcmUgbm9uZSBpbiB0aGUgZmlyc3QgcGxhY2UpLiBHZXRzIGNhbGxlZCB3aXRoIHsgaW5wdXRWYWx1ZTogU3RyaW5nIH0uXG4gICAqIDxiciAvPlxuICAgKiBgaW5wdXRWYWx1ZWAgd2lsbCBiZSBhbiBlbXB0eSBzdHJpbmcgd2hlbiBubyBzZWFyY2ggdGV4dCBpcyBwcmVzZW50LlxuICAgKiA8YnI+XG4gICAqIFtQcm9wcyBmcm9tIFJlYWN0IHNlbGVjdCB3YXMgdXNlZF0oaHR0cHM6Ly9yZWFjdC1zZWxlY3QuY29tL3Byb3BzKVxuICAgKi9cbiAgbm9NZW51T3B0aW9uc01lc3NhZ2U/OiBSZWFjdFNlbGVjdFByb3BzWydub09wdGlvbnNNZXNzYWdlJ107XG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIGVuYWJsZSBzZWFyY2ggZnVuY3Rpb25hbGl0eS5cbiAgICogPGJyPlxuICAgKiBbUHJvcHMgZnJvbSBSZWFjdCBzZWxlY3Qgd2FzIHVzZWRdKGh0dHBzOi8vcmVhY3Qtc2VsZWN0LmNvbS9wcm9wcylcbiAgICovXG4gIGlzTWVudVNlYXJjaGFibGU/OiBSZWFjdFNlbGVjdFByb3BzWydpc1NlYXJjaGFibGUnXTtcbiAgLyoqXG4gICAqIE1heGltdW0gaGVpZ2h0IG9mIHRoZSBtZW51IGJlZm9yZSBzY3JvbGxpbmdcbiAgICogPGJyPlxuICAgKiBbUHJvcHMgZnJvbSBSZWFjdCBzZWxlY3Qgd2FzIHVzZWRdKGh0dHBzOi8vcmVhY3Qtc2VsZWN0LmNvbS9wcm9wcylcbiAgICovXG4gIG1heE1lbnVIZWlnaHQ/OiBSZWFjdFNlbGVjdFByb3BzWydtYXhNZW51SGVpZ2h0J107XG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBtZW51IHNob3VsZCBjbG9zZSBhZnRlciBhIHZhbHVlIGlzIHNlbGVjdGVkLiBEZWZhdWx0cyB0byBgdHJ1ZWAuXG4gICAqIDxicj5cbiAgICogW1Byb3BzIGZyb20gUmVhY3Qgc2VsZWN0IHdhcyB1c2VkXShodHRwczovL3JlYWN0LXNlbGVjdC5jb20vcHJvcHMpXG4gICAqL1xuICBjbG9zZU1lbnVPblNlbGVjdD86IFJlYWN0U2VsZWN0UHJvcHNbJ2Nsb3NlTWVudU9uU2VsZWN0J107XG4gIC8qKlxuICAgKiBIb3Jpem9udGFsIHNpemUgbGltaXQgZm9yIHRoZSBkcm9wZG93biBtZW51LlxuICAgKi9cbiAgbWVudUhvcml6b250YWxDb25zdHJhaW50PzogMyB8IDQgfCA1O1xuICAvKipcbiAgICogU2hvdyBzdWJtaXQgYnV0dG9uIGluIHRoZSBpbnB1dFxuICAgKi9cbiAgc2hvd1N1Ym1pdEJ1dHRvbj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiAgdXNlZCB0byBwYXNzIGRhdGEtKiBwcm9wcyB0byB0aGUgc2VsZWN0IGNvbXBvbmVudC5cbiAgICogZWc6IHNlbGVjdERhdGFQcm9wcz17W3sgJ3Byb3AtMSc6ICd2YWx1ZS0xJyB9LCB7ICdwcm9wLTInOiAndmFsdWUtMicgfV19XG4gICAqL1xuICBzZWxlY3REYXRhUHJvcHM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICAvKipcbiAgICogIHVzZWQgdG8gcGFzcyBkYXRhLSogcHJvcHMgdG8gdGhlIGlucHV0IGVsZW1lbnQuXG4gICAqIGVnOiBpbnB1dERhdGFQcm9wcz17W3sgJ3Byb3AtMSc6ICd2YWx1ZS0xJyB9LCB7ICdwcm9wLTInOiAndmFsdWUtMicgfV19XG4gICAqL1xuICBpbnB1dERhdGFQcm9wcz86IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG59O1xuXG5jb25zdCBkZWZhdWx0UHJvcHM6IFBpY2s8XG4gIFRTZWxlY3RhYmxlU2VhcmNoSW5wdXRQcm9wcyxcbiAgfCAnaG9yaXpvbnRhbENvbnN0cmFpbnQnXG4gIHwgJ2lzQ2xlYXJhYmxlJ1xuICB8ICdtZW51SG9yaXpvbnRhbENvbnN0cmFpbnQnXG4gIHwgJ3Nob3dTdWJtaXRCdXR0b24nXG4gIHwgJ21lbnVQb3J0YWxaSW5kZXgnXG4gIHwgJ29wdGlvbnMnXG4+ID0ge1xuICBob3Jpem9udGFsQ29uc3RyYWludDogJ3NjYWxlJyxcbiAgaXNDbGVhcmFibGU6IHRydWUsXG4gIG1lbnVIb3Jpem9udGFsQ29uc3RyYWludDogMyxcbiAgc2hvd1N1Ym1pdEJ1dHRvbjogdHJ1ZSxcbiAgbWVudVBvcnRhbFpJbmRleDogMSxcbiAgb3B0aW9uczogW10sXG59O1xuXG5jb25zdCBzZWxlY3RhYmxlU2VhcmNoSW5wdXRTZXF1ZW50aWFsSWQgPSBjcmVhdGVTZXF1ZW50aWFsSWQoXG4gICdzZWxlY3RhYmxlLXNlYXJjaC1pbnB1dC0nXG4pO1xuXG5jb25zdCBpc09wdGlvbk9iamVjdCA9IChcbiAgb3B0aW9uOiBUT3B0aW9uIHwgVE9wdGlvbk9iamVjdFxuKTogb3B0aW9uIGlzIFRPcHRpb25PYmplY3QgPT4gKG9wdGlvbiBhcyBUT3B0aW9uT2JqZWN0KS5vcHRpb25zICE9PSB1bmRlZmluZWQ7XG5cbmNvbnN0IHRyYW5zZm9ybURhdGFQcm9wcyA9IChkYXRhUHJvcHM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+KSA9PlxuICBPYmplY3QuZnJvbUVudHJpZXMoXG4gICAgT2JqZWN0LmVudHJpZXMoZGF0YVByb3BzIHx8IHt9KS5tYXAoKFtrZXksIHZhbHVlXSkgPT4gW1xuICAgICAgYGRhdGEtJHtrZXl9YCxcbiAgICAgIHZhbHVlLFxuICAgIF0pXG4gICk7XG5cbmNvbnN0IFNlbGVjdGFibGVTZWFyY2hJbnB1dCA9IChwcm9wczogVFNlbGVjdGFibGVTZWFyY2hJbnB1dFByb3BzKSA9PiB7XG4gIGNvbnN0IFtkcm9wZG93bkhhc0ZvY3VzLCB0b2dnbGVEcm9wZG93bkhhc0ZvY3VzXSA9IHVzZVRvZ2dsZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgW3NlYXJjaFZhbHVlLCBzZXRTZWFyY2hWYWx1ZV0gPSB1c2VTdGF0ZShwcm9wcy52YWx1ZS50ZXh0IHx8ICcnKTtcbiAgY29uc3QgY29udGFpbmVyUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKTtcbiAgY29uc3QgdGV4dElucHV0UmVmID0gdXNlUmVmPEhUTUxJbnB1dEVsZW1lbnQ+KG51bGwpO1xuXG4gIGNvbnN0IGxlZ2FjeURhdGFQcm9wcyA9IGZpbHRlckRhdGFBdHRyaWJ1dGVzKHByb3BzKTtcbiAgY29uc3QgdHJhbnNmb3JtZWRTZWxlY3REYXRhUHJvcHMgPSB0cmFuc2Zvcm1EYXRhUHJvcHMocHJvcHMuc2VsZWN0RGF0YVByb3BzKTtcbiAgY29uc3QgdHJhbnNmb3JtZWRJbnB1dERhdGFQcm9wcyA9IHRyYW5zZm9ybURhdGFQcm9wcyhwcm9wcy5pbnB1dERhdGFQcm9wcyk7XG5cbiAgY29uc3Qgb3B0aW9uc1dpdGhvdXRHcm91cHMgPSBwcm9wcy5vcHRpb25zLmZsYXRNYXAoKG9wdGlvbikgPT4ge1xuICAgIGlmIChpc09wdGlvbk9iamVjdChvcHRpb24pKSB7XG4gICAgICByZXR1cm4gb3B0aW9uLm9wdGlvbnM7XG4gICAgfVxuICAgIHJldHVybiBvcHRpb247XG4gIH0pO1xuXG4gIGNvbnN0IHNlbGVjdGVkT3B0aW9uID0gb3B0aW9uc1dpdGhvdXRHcm91cHMuZmluZChcbiAgICAob3B0aW9uKSA9PiBvcHRpb24udmFsdWUgPT09IHByb3BzLnZhbHVlLm9wdGlvblxuICApO1xuXG4gIGNvbnN0IHNlbGVjdGFibFNlYXJjaElucHV0SWQgPSB1c2VGaWVsZElkKFxuICAgIHByb3BzLmlkLFxuICAgIHNlbGVjdGFibGVTZWFyY2hJbnB1dFNlcXVlbnRpYWxJZFxuICApO1xuXG4gIGlmICghcHJvcHMuaXNSZWFkT25seSkge1xuICAgIHdhcm5pbmcoXG4gICAgICB0eXBlb2YgcHJvcHMub25DaGFuZ2UgPT09ICdmdW5jdGlvbicsXG4gICAgICAnU2VsZWN0YWJsZVNlYXJjaElucHV0OiBgb25DaGFuZ2VgIGlzIHJlcXVpcmVkIHdoZW4gaXMgbm90IHJlYWQgb25seS4nXG4gICAgKTtcbiAgfVxuXG4gIHdhcm5JZk1lbnVQb3J0YWxQcm9wc0FyZU1pc3Npbmcoe1xuICAgIG1lbnVQb3J0YWxaSW5kZXg6IHByb3BzLm1lbnVQb3J0YWxaSW5kZXgsXG4gICAgbWVudVBvcnRhbFRhcmdldDogcHJvcHMubWVudVBvcnRhbFRhcmdldCxcbiAgICBjb21wb25lbnROYW1lOiAnU2VsZWN0YWJsZVNlYXJjaElucHV0JyxcbiAgfSk7XG5cbiAgY29uc3QgeyBvbkZvY3VzLCBvbkJsdXIsIG5hbWUgfSA9IHByb3BzO1xuICBjb25zdCBoYW5kbGVUZXh0SW5wdXRGb2N1cyA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBpZiAob25Gb2N1cykge1xuICAgICAgb25Gb2N1cyh7XG4gICAgICAgIHRhcmdldDoge1xuICAgICAgICAgIGlkOiBTZWxlY3RhYmxlU2VhcmNoSW5wdXQuZ2V0VGV4dElucHV0SWQoc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCksXG4gICAgICAgICAgbmFtZTogZ2V0VGV4dElucHV0TmFtZShuYW1lKSxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfSwgW29uRm9jdXMsIHNlbGVjdGFibFNlYXJjaElucHV0SWQsIG5hbWVdKTtcblxuICBjb25zdCBoYW5kbGVUZXh0SW5wdXRCbHVyID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIGlmIChvbkJsdXIpIHtcbiAgICAgIG9uQmx1cih7XG4gICAgICAgIHRhcmdldDoge1xuICAgICAgICAgIGlkOiBTZWxlY3RhYmxlU2VhcmNoSW5wdXQuZ2V0VGV4dElucHV0SWQoc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCksXG4gICAgICAgICAgbmFtZTogZ2V0VGV4dElucHV0TmFtZShuYW1lKSxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfSwgW29uQmx1ciwgc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCwgbmFtZV0pO1xuXG4gIGNvbnN0IGhhbmRsZUNsZWFyID0gKCkgPT4ge1xuICAgIHNldFNlYXJjaFZhbHVlKCcnKTtcbiAgICBpZiAocHJvcHMub25SZXNldCkge1xuICAgICAgcHJvcHMub25SZXNldCgpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBoYW5kbGVDaGFuZ2UgPSAoZXZlbnQ6IENoYW5nZUV2ZW50PEhUTUxJbnB1dEVsZW1lbnQ+KSA9PiB7XG4gICAgc2V0U2VhcmNoVmFsdWUoZXZlbnQudGFyZ2V0LnZhbHVlKTtcbiAgICBpZiAocHJvcHMub25DaGFuZ2UpIHtcbiAgICAgIHByb3BzLm9uQ2hhbmdlKHtcbiAgICAgICAgdGFyZ2V0OiB7XG4gICAgICAgICAgaWQ6IFNlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXRUZXh0SW5wdXRJZChzZWxlY3RhYmxTZWFyY2hJbnB1dElkKSxcbiAgICAgICAgICBuYW1lOiBnZXRUZXh0SW5wdXROYW1lKHByb3BzLm5hbWUpLFxuICAgICAgICAgIHZhbHVlOiBldmVudC50YXJnZXQudmFsdWUsXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlU3VibWl0ID0gKFxuICAgIGV2ZW50OlxuICAgICAgfCBLZXlib2FyZEV2ZW50PEhUTUxCdXR0b25FbGVtZW50PlxuICAgICAgfCBNb3VzZUV2ZW50PEhUTUxCdXR0b25FbGVtZW50PlxuICAgICAgfCBLZXlib2FyZEV2ZW50PEhUTUxJbnB1dEVsZW1lbnQ+XG4gICkgPT4ge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgaWYgKHByb3BzLm9uU3VibWl0KSB7XG4gICAgICBwcm9wcy5vblN1Ym1pdCh7XG4gICAgICAgIHRleHQ6IHNlYXJjaFZhbHVlLFxuICAgICAgICBvcHRpb246IHNlbGVjdGVkT3B0aW9uPy52YWx1ZSA/PyAnJyxcbiAgICAgIH0pO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBkcm9wZG93bk5hbWUgPSBnZXREcm9wZG93bk5hbWUocHJvcHMubmFtZSk7XG4gIGNvbnN0IGRyb3Bkb3duSWQgPSBTZWxlY3RhYmxlU2VhcmNoSW5wdXQuZ2V0RHJvcGRvd25JZChcbiAgICBzZWxlY3RhYmxTZWFyY2hJbnB1dElkXG4gICk7XG5cbiAgY29uc3QgaGFuZGxlRHJvcGRvd25Gb2N1cyA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBpZiAob25Gb2N1cykge1xuICAgICAgb25Gb2N1cyh7XG4gICAgICAgIHRhcmdldDoge1xuICAgICAgICAgIGlkOiBkcm9wZG93bklkLFxuICAgICAgICAgIG5hbWU6IGRyb3Bkb3duTmFtZSxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIH1cbiAgICB0b2dnbGVEcm9wZG93bkhhc0ZvY3VzKHRydWUpO1xuICB9LCBbb25Gb2N1cywgdG9nZ2xlRHJvcGRvd25IYXNGb2N1cywgZHJvcGRvd25OYW1lLCBkcm9wZG93bklkXSk7XG5cbiAgY29uc3QgaGFuZGxlRHJvcGRvd25CbHVyID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIGlmIChvbkJsdXIpIHtcbiAgICAgIG9uQmx1cih7XG4gICAgICAgIHRhcmdldDoge1xuICAgICAgICAgIGlkOiBkcm9wZG93bklkLFxuICAgICAgICAgIG5hbWU6IGRyb3Bkb3duTmFtZSxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIH1cbiAgICB0b2dnbGVEcm9wZG93bkhhc0ZvY3VzKGZhbHNlKTtcbiAgfSwgW3RvZ2dsZURyb3Bkb3duSGFzRm9jdXMsIG9uQmx1ciwgZHJvcGRvd25OYW1lLCBkcm9wZG93bklkXSk7XG5cbiAgY29uc3QgaGFuZGxlQ29udGFpbmVyQmx1ciA9IHVzZUNhbGxiYWNrKFxuICAgIChldmVudCkgPT4ge1xuICAgICAgLy8gZW5zdXJlcyB0aGF0IGJvdGggZmllbGRzIGFyZSBtYXJrZWQgYXMgdG91Y2hlZCB3aGVuIG9uZSBvZiB0aGVtXG4gICAgICAvLyBpcyBibHVycmVkXG4gICAgICBpZiAoXG4gICAgICAgIHR5cGVvZiBvbkJsdXIgPT09ICdmdW5jdGlvbicgJiZcbiAgICAgICAgIWNvbnRhaW5lclJlZi5jdXJyZW50Py5jb250YWlucyhldmVudC5yZWxhdGVkVGFyZ2V0KVxuICAgICAgKSB7XG4gICAgICAgIG9uQmx1cih7XG4gICAgICAgICAgdGFyZ2V0OiB7XG4gICAgICAgICAgICBpZDogU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldERyb3Bkb3duSWQoc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCksXG4gICAgICAgICAgICBuYW1lOiBnZXREcm9wZG93bk5hbWUobmFtZSksXG4gICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgICAgIG9uQmx1cih7XG4gICAgICAgICAgdGFyZ2V0OiB7XG4gICAgICAgICAgICBpZDogU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldFRleHRJbnB1dElkKHNlbGVjdGFibFNlYXJjaElucHV0SWQpLFxuICAgICAgICAgICAgbmFtZTogZ2V0VGV4dElucHV0TmFtZShuYW1lKSxcbiAgICAgICAgICB9LFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9LFxuICAgIFtvbkJsdXIsIHNlbGVjdGFibFNlYXJjaElucHV0SWQsIG5hbWVdXG4gICk7XG5cbiAgcmV0dXJuIChcbiAgICA8Q29uc3RyYWludHMuSG9yaXpvbnRhbCBtYXg9e3Byb3BzLmhvcml6b250YWxDb25zdHJhaW50fT5cbiAgICAgIDxDb250YWluZXJcbiAgICAgICAgcmVmPXtjb250YWluZXJSZWZ9XG4gICAgICAgIG9uQmx1cj17aGFuZGxlQ29udGFpbmVyQmx1cn1cbiAgICAgICAgZGF0YS10ZXN0aWQ9XCJzZWxlY3RhYmxlLXNlYXJjaC1pbnB1dC1jb250YWluZXJcIlxuICAgICAgPlxuICAgICAgICA8Q29uc3RyYWludHMuSG9yaXpvbnRhbCBtYXg9e3Byb3BzLm1lbnVIb3Jpem9udGFsQ29uc3RyYWludH0+XG4gICAgICAgICAgPFNlbGVjdGFibGVTZWxlY3RcbiAgICAgICAgICAgIHsuLi5wcm9wc31cbiAgICAgICAgICAgIGlkPXtTZWxlY3RhYmxlU2VhcmNoSW5wdXQuZ2V0RHJvcGRvd25JZChzZWxlY3RhYmxTZWFyY2hJbnB1dElkKX1cbiAgICAgICAgICAgIG5hbWU9e2dldERyb3Bkb3duTmFtZShwcm9wcy5uYW1lKX1cbiAgICAgICAgICAgIGRyb3Bkb3duSGFzRm9jdXM9e2Ryb3Bkb3duSGFzRm9jdXN9XG4gICAgICAgICAgICBoYW5kbGVEcm9wZG93bkZvY3VzPXtoYW5kbGVEcm9wZG93bkZvY3VzfVxuICAgICAgICAgICAgaGFuZGxlRHJvcGRvd25CbHVyPXtoYW5kbGVEcm9wZG93bkJsdXJ9XG4gICAgICAgICAgICB0ZXh0SW5wdXRSZWY9e3RleHRJbnB1dFJlZn1cbiAgICAgICAgICAgIHNlbGVjdGVkT3B0aW9uPXtzZWxlY3RlZE9wdGlvbn1cbiAgICAgICAgICAgIGRhdGFQcm9wcz17dHJhbnNmb3JtZWRTZWxlY3REYXRhUHJvcHN9XG4gICAgICAgICAgLz5cbiAgICAgICAgPC9Db25zdHJhaW50cy5Ib3Jpem9udGFsPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgY3NzPXtbXG4gICAgICAgICAgICBnZXRTZWxlY3RhYmxlU2VhcmNoSW5wdXRDb250YWluZXJTdHlsZXMocHJvcHMpLFxuICAgICAgICAgICAgZHJvcGRvd25IYXNGb2N1cyAmJlxuICAgICAgICAgICAgICAhcHJvcHMuaXNSZWFkT25seSAmJlxuICAgICAgICAgICAgICBjc3NgXG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICR7ZGVzaWduVG9rZW5zLmJvcmRlckNvbG9yRm9ySW5wdXRXaGVuRm9jdXNlZH07XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogJHtkZXNpZ25Ub2tlbnMuYm9yZGVyQ29sb3JGb3JJbnB1dFdoZW5Gb2N1c2VkfTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGAsXG4gICAgICAgICAgXX1cbiAgICAgICAgPlxuICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgcmVmPXt0ZXh0SW5wdXRSZWZ9XG4gICAgICAgICAgICBpZD17U2VsZWN0YWJsZVNlYXJjaElucHV0LmdldFRleHRJbnB1dElkKHNlbGVjdGFibFNlYXJjaElucHV0SWQpfVxuICAgICAgICAgICAgbmFtZT17Z2V0VGV4dElucHV0TmFtZShwcm9wcy5uYW1lKX1cbiAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgIHZhbHVlPXtzZWFyY2hWYWx1ZX1cbiAgICAgICAgICAgIG9uQ2hhbmdlPXtoYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgICBvbkJsdXI9e2hhbmRsZVRleHRJbnB1dEJsdXJ9XG4gICAgICAgICAgICBvbkZvY3VzPXtoYW5kbGVUZXh0SW5wdXRGb2N1c31cbiAgICAgICAgICAgIGRpc2FibGVkPXtwcm9wcy5pc0Rpc2FibGVkfVxuICAgICAgICAgICAgcGxhY2Vob2xkZXI9e3Byb3BzLnBsYWNlaG9sZGVyfVxuICAgICAgICAgICAgcmVhZE9ubHk9e3Byb3BzLmlzUmVhZE9ubHl9XG4gICAgICAgICAgICBhdXRvRm9jdXM9e3Byb3BzLmlzQXV0b2ZvY3Vzc2VkfVxuICAgICAgICAgICAgYXV0b0NvbXBsZXRlPXtwcm9wcy5hdXRvQ29tcGxldGV9XG4gICAgICAgICAgICBhcmlhLXJlYWRvbmx5PXtwcm9wcy5pc1JlYWRPbmx5fVxuICAgICAgICAgICAgY29udGVudEVkaXRhYmxlPXshcHJvcHMuaXNSZWFkT25seX1cbiAgICAgICAgICAgIGNzcz17Z2V0U2VsZWN0YWJsZVNlYXJjaElucHV0U3R5bGVzKHByb3BzKX1cbiAgICAgICAgICAgIHsuLi50cmFuc2Zvcm1lZElucHV0RGF0YVByb3BzfVxuICAgICAgICAgICAgey4uLmxlZ2FjeURhdGFQcm9wc31cbiAgICAgICAgICAgIC8qIEFSSUEgKi9cbiAgICAgICAgICAgIGFyaWEtaW52YWxpZD17cHJvcHNbJ2FyaWEtaW52YWxpZCddfVxuICAgICAgICAgICAgYXJpYS1lcnJvcm1lc3NhZ2U9e3Byb3BzWydhcmlhLWVycm9ybWVzc2FnZSddfVxuICAgICAgICAgICAgZGF0YS10ZXN0aWQ9XCJzZWxlY3RhYmxlLWlucHV0XCJcbiAgICAgICAgICAgIG9uS2V5RG93bj17KGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgIGlmICghcHJvcHMuaXNSZWFkT25seSAmJiBldmVudC5rZXkgPT09ICdFbnRlcicpIHtcbiAgICAgICAgICAgICAgICBoYW5kbGVTdWJtaXQoZXZlbnQpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge3Byb3BzLmlzQ2xlYXJhYmxlICYmXG4gICAgICAgICAgICBzZWFyY2hWYWx1ZSAmJlxuICAgICAgICAgICAgIXByb3BzLmlzRGlzYWJsZWQgJiZcbiAgICAgICAgICAgICFwcm9wcy5pc1JlYWRPbmx5ICYmIChcbiAgICAgICAgICAgICAgPFNlY29uZGFyeUljb25CdXR0b25cbiAgICAgICAgICAgICAgICBpY29uPXs8Q2xvc2VJY29uIC8+fVxuICAgICAgICAgICAgICAgIHNpemU9XCJtZWRpdW1cIlxuICAgICAgICAgICAgICAgIGxhYmVsPXsnY2xlYXItYnV0dG9uJ31cbiAgICAgICAgICAgICAgICBvbkNsaWNrPXtoYW5kbGVDbGVhcn1cbiAgICAgICAgICAgICAgICBjc3M9e2dldENsZWFySWNvbkJ1dHRvblN0eWxlcyhwcm9wcyl9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIHtwcm9wcy5zaG93U3VibWl0QnV0dG9uICYmIChcbiAgICAgICAgICAgIDxTZWNvbmRhcnlJY29uQnV0dG9uXG4gICAgICAgICAgICAgIGljb249ezxTZWFyY2hJY29uIC8+fVxuICAgICAgICAgICAgICBsYWJlbD17J3NlYXJjaC1idXR0b24nfVxuICAgICAgICAgICAgICBvbkNsaWNrPXtoYW5kbGVTdWJtaXR9XG4gICAgICAgICAgICAgIGNzcz17Z2V0U2VhcmNoSWNvbkJ1dHRvblN0eWxlcyhwcm9wcyl9XG4gICAgICAgICAgICAgIGlzRGlzYWJsZWQ9e3Byb3BzLmlzRGlzYWJsZWR9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICl9XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9Db250YWluZXI+XG4gICAgPC9Db25zdHJhaW50cy5Ib3Jpem9udGFsPlxuICApO1xufTtcblxuU2VsZWN0YWJsZVNlYXJjaElucHV0LmRpc3BsYXlOYW1lID0gJ1NlbGVjdGFibGVTZWFyY2hJbnB1dCc7XG5TZWxlY3RhYmxlU2VhcmNoSW5wdXQuZGVmYXVsdFByb3BzID0gZGVmYXVsdFByb3BzO1xuU2VsZWN0YWJsZVNlYXJjaElucHV0LmlzRW1wdHkgPSAoXG4gIGZvcm1WYWx1ZTogVFNlbGVjdGFibGVTZWFyY2hJbnB1dFByb3BzWyd2YWx1ZSddXG4pID0+ICFmb3JtVmFsdWUgfHwgZm9ybVZhbHVlLnRleHQudHJpbSgpID09PSAnJztcblNlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXRUZXh0SW5wdXRJZCA9IGdldFRleHRJbnB1dE5hbWU7XG5TZWxlY3RhYmxlU2VhcmNoSW5wdXQuZ2V0RHJvcGRvd25JZCA9IGdldERyb3Bkb3duTmFtZTtcblxuZXhwb3J0IGRlZmF1bHQgU2VsZWN0YWJsZVNlYXJjaElucHV0O1xuIl19 */"],
|
|
463
|
+
children: [jsxRuntime.jsx("input", _objectSpread(_objectSpread(_objectSpread({
|
|
440
464
|
ref: textInputRef,
|
|
441
465
|
id: SelectableSearchInput.getTextInputId(selectablSearchInputId),
|
|
442
466
|
name: getTextInputName(props.name),
|
|
@@ -453,7 +477,7 @@ const SelectableSearchInput = props => {
|
|
|
453
477
|
"aria-readonly": props.isReadOnly,
|
|
454
478
|
contentEditable: !props.isReadOnly,
|
|
455
479
|
css: getSelectableSearchInputStyles(props)
|
|
456
|
-
},
|
|
480
|
+
}, transformedInputDataProps), legacyDataProps), {}, {
|
|
457
481
|
/* ARIA */
|
|
458
482
|
"aria-invalid": props['aria-invalid'],
|
|
459
483
|
"aria-errormessage": props['aria-errormessage'],
|
|
@@ -514,20 +538,22 @@ SelectableSearchInput.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
|
514
538
|
}))]).isRequired,
|
|
515
539
|
menuPortalZIndex: _pt__default["default"].number,
|
|
516
540
|
menuHorizontalConstraint: _pt__default["default"].oneOf([3, 4, 5]),
|
|
517
|
-
showSubmitButton: _pt__default["default"].bool
|
|
541
|
+
showSubmitButton: _pt__default["default"].bool,
|
|
542
|
+
selectDataProps: _pt__default["default"].objectOf(_pt__default["default"].string),
|
|
543
|
+
inputDataProps: _pt__default["default"].objectOf(_pt__default["default"].string)
|
|
518
544
|
} : {};
|
|
519
545
|
SelectableSearchInput.displayName = 'SelectableSearchInput';
|
|
520
546
|
SelectableSearchInput.defaultProps = defaultProps;
|
|
521
547
|
SelectableSearchInput.isEmpty = formValue => {
|
|
522
|
-
var
|
|
523
|
-
return !formValue || _trimInstanceProperty__default["default"](
|
|
548
|
+
var _context3;
|
|
549
|
+
return !formValue || _trimInstanceProperty__default["default"](_context3 = formValue.text).call(_context3) === '';
|
|
524
550
|
};
|
|
525
551
|
SelectableSearchInput.getTextInputId = getTextInputName;
|
|
526
552
|
SelectableSearchInput.getDropdownId = getDropdownName;
|
|
527
553
|
var SelectableSearchInput$1 = SelectableSearchInput;
|
|
528
554
|
|
|
529
555
|
// NOTE: This string will be replaced on build time with the package version.
|
|
530
|
-
var version = "
|
|
556
|
+
var version = "17.0.0";
|
|
531
557
|
|
|
532
558
|
exports["default"] = SelectableSearchInput$1;
|
|
533
559
|
exports.version = version;
|
|
@@ -14,6 +14,9 @@ var _defineProperty = require('@babel/runtime-corejs3/helpers/defineProperty');
|
|
|
14
14
|
var _slicedToArray = require('@babel/runtime-corejs3/helpers/slicedToArray');
|
|
15
15
|
var _styled = require('@emotion/styled/base');
|
|
16
16
|
require('prop-types');
|
|
17
|
+
var _Object$fromEntries = require('@babel/runtime-corejs3/core-js-stable/object/from-entries');
|
|
18
|
+
var _mapInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/map');
|
|
19
|
+
var _Object$entries = require('@babel/runtime-corejs3/core-js-stable/object/entries');
|
|
17
20
|
var _flatMapInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/flat-map');
|
|
18
21
|
var _findInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/find');
|
|
19
22
|
var _trimInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/trim');
|
|
@@ -43,6 +46,9 @@ var _Object$getOwnPropertyDescriptors__default = /*#__PURE__*/_interopDefault(_O
|
|
|
43
46
|
var _Object$defineProperties__default = /*#__PURE__*/_interopDefault(_Object$defineProperties);
|
|
44
47
|
var _Object$defineProperty__default = /*#__PURE__*/_interopDefault(_Object$defineProperty);
|
|
45
48
|
var _styled__default = /*#__PURE__*/_interopDefault(_styled);
|
|
49
|
+
var _Object$fromEntries__default = /*#__PURE__*/_interopDefault(_Object$fromEntries);
|
|
50
|
+
var _mapInstanceProperty__default = /*#__PURE__*/_interopDefault(_mapInstanceProperty);
|
|
51
|
+
var _Object$entries__default = /*#__PURE__*/_interopDefault(_Object$entries);
|
|
46
52
|
var _flatMapInstanceProperty__default = /*#__PURE__*/_interopDefault(_flatMapInstanceProperty);
|
|
47
53
|
var _findInstanceProperty__default = /*#__PURE__*/_interopDefault(_findInstanceProperty);
|
|
48
54
|
var _trimInstanceProperty__default = /*#__PURE__*/_interopDefault(_trimInstanceProperty);
|
|
@@ -180,17 +186,19 @@ const createSelectableSelectStyles = _ref => {
|
|
|
180
186
|
});
|
|
181
187
|
};
|
|
182
188
|
|
|
183
|
-
const _excluded = ["id"];
|
|
189
|
+
const _excluded = ["id", "dataProps"];
|
|
184
190
|
function ownKeys$1(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; }
|
|
185
191
|
function _objectSpread$1(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$1(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$1(Object(source))).call(_context2, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } return target; }
|
|
186
192
|
const SingleValue = _ref => {
|
|
187
193
|
let id = _ref.id,
|
|
194
|
+
dataProps = _ref.dataProps,
|
|
188
195
|
props = _objectWithoutProperties(_ref, _excluded);
|
|
189
196
|
return jsxRuntime.jsx(Select.components.SingleValue, _objectSpread$1(_objectSpread$1({}, props), {}, {
|
|
190
|
-
children: jsxRuntime.jsx("label", {
|
|
191
|
-
htmlFor: id
|
|
197
|
+
children: jsxRuntime.jsx("label", _objectSpread$1(_objectSpread$1({
|
|
198
|
+
htmlFor: id
|
|
199
|
+
}, dataProps), {}, {
|
|
192
200
|
children: props.children
|
|
193
|
-
})
|
|
201
|
+
}))
|
|
194
202
|
}));
|
|
195
203
|
};
|
|
196
204
|
SingleValue.propTypes = {};
|
|
@@ -230,9 +238,10 @@ const SelectableSelect = props => {
|
|
|
230
238
|
maxMenuHeight: props.maxMenuHeight,
|
|
231
239
|
closeMenuOnSelect: props.closeMenuOnSelect,
|
|
232
240
|
components: {
|
|
233
|
-
SingleValue: innerProps => jsxRuntime.jsx(SingleValue, _objectSpread$1(
|
|
234
|
-
id: props.id
|
|
235
|
-
|
|
241
|
+
SingleValue: innerProps => jsxRuntime.jsx(SingleValue, _objectSpread$1({
|
|
242
|
+
id: props.id,
|
|
243
|
+
dataProps: props.dataProps
|
|
244
|
+
}, innerProps)),
|
|
236
245
|
DropdownIndicator: selectUtils.DropdownIndicator
|
|
237
246
|
},
|
|
238
247
|
options: props.options,
|
|
@@ -257,7 +266,7 @@ SelectableSelect.propTypes = {};
|
|
|
257
266
|
var SelectableSelect$1 = SelectableSelect;
|
|
258
267
|
|
|
259
268
|
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; }
|
|
260
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var
|
|
269
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var _context4, _context5; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default["default"](_context4 = ownKeys(Object(source), !0)).call(_context4, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](target, _Object$getOwnPropertyDescriptors__default["default"](source)) : _forEachInstanceProperty__default["default"](_context5 = ownKeys(Object(source))).call(_context5, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } return target; }
|
|
261
270
|
const Container = /*#__PURE__*/_styled__default["default"]("div", {
|
|
262
271
|
target: "encv1cf0"
|
|
263
272
|
} )({
|
|
@@ -276,8 +285,17 @@ const defaultProps = {
|
|
|
276
285
|
};
|
|
277
286
|
const selectableSearchInputSequentialId = utils.createSequentialId('selectable-search-input-');
|
|
278
287
|
const isOptionObject = option => option.options !== undefined;
|
|
279
|
-
const
|
|
288
|
+
const transformDataProps = dataProps => {
|
|
280
289
|
var _context;
|
|
290
|
+
return _Object$fromEntries__default["default"](_mapInstanceProperty__default["default"](_context = _Object$entries__default["default"](dataProps || {})).call(_context, _ref => {
|
|
291
|
+
let _ref2 = _slicedToArray(_ref, 2),
|
|
292
|
+
key = _ref2[0],
|
|
293
|
+
value = _ref2[1];
|
|
294
|
+
return ["data-".concat(key), value];
|
|
295
|
+
}));
|
|
296
|
+
};
|
|
297
|
+
const SelectableSearchInput = props => {
|
|
298
|
+
var _context2;
|
|
281
299
|
const _useToggleState = hooks.useToggleState(false),
|
|
282
300
|
_useToggleState2 = _slicedToArray(_useToggleState, 2),
|
|
283
301
|
dropdownHasFocus = _useToggleState2[0],
|
|
@@ -288,7 +306,10 @@ const SelectableSearchInput = props => {
|
|
|
288
306
|
setSearchValue = _useState2[1];
|
|
289
307
|
const containerRef = react$1.useRef(null);
|
|
290
308
|
const textInputRef = react$1.useRef(null);
|
|
291
|
-
const
|
|
309
|
+
const legacyDataProps = utils.filterDataAttributes(props);
|
|
310
|
+
const transformedSelectDataProps = transformDataProps(props.selectDataProps);
|
|
311
|
+
const transformedInputDataProps = transformDataProps(props.inputDataProps);
|
|
312
|
+
const optionsWithoutGroups = _flatMapInstanceProperty__default["default"](_context2 = props.options).call(_context2, option => {
|
|
292
313
|
if (isOptionObject(option)) {
|
|
293
314
|
return option.options;
|
|
294
315
|
}
|
|
@@ -411,11 +432,12 @@ const SelectableSearchInput = props => {
|
|
|
411
432
|
handleDropdownFocus: handleDropdownFocus,
|
|
412
433
|
handleDropdownBlur: handleDropdownBlur,
|
|
413
434
|
textInputRef: textInputRef,
|
|
414
|
-
selectedOption: selectedOption
|
|
435
|
+
selectedOption: selectedOption,
|
|
436
|
+
dataProps: transformedSelectDataProps
|
|
415
437
|
}))
|
|
416
438
|
}), jsxRuntime.jsxs("div", {
|
|
417
439
|
css: [getSelectableSearchInputContainerStyles(props), dropdownHasFocus && !props.isReadOnly && /*#__PURE__*/react.css("border-left-color:", designSystem.designTokens.borderColorForInputWhenFocused, ";&:hover{border-left-color:", designSystem.designTokens.borderColorForInputWhenFocused, ";}" + ("" ), "" ), "" , "" ],
|
|
418
|
-
children: [jsxRuntime.jsx("input", _objectSpread(_objectSpread({
|
|
440
|
+
children: [jsxRuntime.jsx("input", _objectSpread(_objectSpread(_objectSpread({
|
|
419
441
|
ref: textInputRef,
|
|
420
442
|
id: SelectableSearchInput.getTextInputId(selectablSearchInputId),
|
|
421
443
|
name: getTextInputName(props.name),
|
|
@@ -432,7 +454,7 @@ const SelectableSearchInput = props => {
|
|
|
432
454
|
"aria-readonly": props.isReadOnly,
|
|
433
455
|
contentEditable: !props.isReadOnly,
|
|
434
456
|
css: getSelectableSearchInputStyles(props)
|
|
435
|
-
},
|
|
457
|
+
}, transformedInputDataProps), legacyDataProps), {}, {
|
|
436
458
|
/* ARIA */
|
|
437
459
|
"aria-invalid": props['aria-invalid'],
|
|
438
460
|
"aria-errormessage": props['aria-errormessage'],
|
|
@@ -463,15 +485,15 @@ SelectableSearchInput.propTypes = {};
|
|
|
463
485
|
SelectableSearchInput.displayName = 'SelectableSearchInput';
|
|
464
486
|
SelectableSearchInput.defaultProps = defaultProps;
|
|
465
487
|
SelectableSearchInput.isEmpty = formValue => {
|
|
466
|
-
var
|
|
467
|
-
return !formValue || _trimInstanceProperty__default["default"](
|
|
488
|
+
var _context3;
|
|
489
|
+
return !formValue || _trimInstanceProperty__default["default"](_context3 = formValue.text).call(_context3) === '';
|
|
468
490
|
};
|
|
469
491
|
SelectableSearchInput.getTextInputId = getTextInputName;
|
|
470
492
|
SelectableSearchInput.getDropdownId = getDropdownName;
|
|
471
493
|
var SelectableSearchInput$1 = SelectableSearchInput;
|
|
472
494
|
|
|
473
495
|
// NOTE: This string will be replaced on build time with the package version.
|
|
474
|
-
var version = "
|
|
496
|
+
var version = "17.0.0";
|
|
475
497
|
|
|
476
498
|
exports["default"] = SelectableSearchInput$1;
|
|
477
499
|
exports.version = version;
|
|
@@ -10,6 +10,9 @@ import _defineProperty from '@babel/runtime-corejs3/helpers/esm/defineProperty';
|
|
|
10
10
|
import _slicedToArray from '@babel/runtime-corejs3/helpers/esm/slicedToArray';
|
|
11
11
|
import _styled from '@emotion/styled/base';
|
|
12
12
|
import _pt from 'prop-types';
|
|
13
|
+
import _Object$fromEntries from '@babel/runtime-corejs3/core-js-stable/object/from-entries';
|
|
14
|
+
import _mapInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/map';
|
|
15
|
+
import _Object$entries from '@babel/runtime-corejs3/core-js-stable/object/entries';
|
|
13
16
|
import _flatMapInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/flat-map';
|
|
14
17
|
import _findInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/find';
|
|
15
18
|
import _trimInstanceProperty from '@babel/runtime-corejs3/core-js-stable/instance/trim';
|
|
@@ -17,7 +20,7 @@ import { useCallback, useState, useRef } from 'react';
|
|
|
17
20
|
import SecondaryIconButton from '@commercetools-uikit/secondary-icon-button';
|
|
18
21
|
import Constraints from '@commercetools-uikit/constraints';
|
|
19
22
|
import { CloseIcon, SearchIcon } from '@commercetools-uikit/icons';
|
|
20
|
-
import { createSequentialId,
|
|
23
|
+
import { createSequentialId, filterDataAttributes, warning } from '@commercetools-uikit/utils';
|
|
21
24
|
import { createSelectStyles, DropdownIndicator, messages, warnIfMenuPortalPropsAreMissing } from '@commercetools-uikit/select-utils';
|
|
22
25
|
import { css } from '@emotion/react';
|
|
23
26
|
import { getInputStyles } from '@commercetools-uikit/input-utils';
|
|
@@ -158,22 +161,25 @@ const createSelectableSelectStyles = _ref => {
|
|
|
158
161
|
});
|
|
159
162
|
};
|
|
160
163
|
|
|
161
|
-
const _excluded = ["id"];
|
|
164
|
+
const _excluded = ["id", "dataProps"];
|
|
162
165
|
function ownKeys$1(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; }
|
|
163
166
|
function _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty(_context = ownKeys$1(Object(source), !0)).call(_context, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : _forEachInstanceProperty(_context2 = ownKeys$1(Object(source))).call(_context2, function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
164
167
|
const SingleValue = _ref => {
|
|
165
168
|
let id = _ref.id,
|
|
169
|
+
dataProps = _ref.dataProps,
|
|
166
170
|
props = _objectWithoutProperties(_ref, _excluded);
|
|
167
171
|
return jsx(components.SingleValue, _objectSpread$1(_objectSpread$1({}, props), {}, {
|
|
168
|
-
children: jsx("label", {
|
|
169
|
-
htmlFor: id
|
|
172
|
+
children: jsx("label", _objectSpread$1(_objectSpread$1({
|
|
173
|
+
htmlFor: id
|
|
174
|
+
}, dataProps), {}, {
|
|
170
175
|
children: props.children
|
|
171
|
-
})
|
|
176
|
+
}))
|
|
172
177
|
}));
|
|
173
178
|
};
|
|
174
179
|
SingleValue.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
175
|
-
|
|
176
|
-
|
|
180
|
+
children: _pt.node,
|
|
181
|
+
dataProps: _pt.objectOf(_pt.string),
|
|
182
|
+
id: _pt.string
|
|
177
183
|
} : {};
|
|
178
184
|
const SelectableSelect = props => {
|
|
179
185
|
const intl = useIntl();
|
|
@@ -211,9 +217,10 @@ const SelectableSelect = props => {
|
|
|
211
217
|
maxMenuHeight: props.maxMenuHeight,
|
|
212
218
|
closeMenuOnSelect: props.closeMenuOnSelect,
|
|
213
219
|
components: {
|
|
214
|
-
SingleValue: innerProps => jsx(SingleValue, _objectSpread$1(
|
|
215
|
-
id: props.id
|
|
216
|
-
|
|
220
|
+
SingleValue: innerProps => jsx(SingleValue, _objectSpread$1({
|
|
221
|
+
id: props.id,
|
|
222
|
+
dataProps: props.dataProps
|
|
223
|
+
}, innerProps)),
|
|
217
224
|
DropdownIndicator
|
|
218
225
|
},
|
|
219
226
|
options: props.options,
|
|
@@ -239,12 +246,13 @@ SelectableSelect.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
|
239
246
|
handleDropdownFocus: _pt.func.isRequired,
|
|
240
247
|
handleDropdownBlur: _pt.func.isRequired,
|
|
241
248
|
textInputRef: _pt.any.isRequired,
|
|
242
|
-
selectedOption: _pt.any
|
|
249
|
+
selectedOption: _pt.any,
|
|
250
|
+
dataProps: _pt.objectOf(_pt.string)
|
|
243
251
|
} : {};
|
|
244
252
|
var SelectableSelect$1 = SelectableSelect;
|
|
245
253
|
|
|
246
254
|
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; }
|
|
247
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var
|
|
255
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var _context4, _context5; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty(_context4 = ownKeys(Object(source), !0)).call(_context4, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : _forEachInstanceProperty(_context5 = ownKeys(Object(source))).call(_context5, function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
248
256
|
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)."; }
|
|
249
257
|
const Container = /*#__PURE__*/_styled("div", process.env.NODE_ENV === "production" ? {
|
|
250
258
|
target: "encv1cf0"
|
|
@@ -257,7 +265,7 @@ const Container = /*#__PURE__*/_styled("div", process.env.NODE_ENV === "producti
|
|
|
257
265
|
} : {
|
|
258
266
|
name: "zjik7",
|
|
259
267
|
styles: "display:flex",
|
|
260
|
-
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNlbGVjdGFibGUtc2VhcmNoLWlucHV0LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUErQjRCIiwiZmlsZSI6InNlbGVjdGFibGUtc2VhcmNoLWlucHV0LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIHR5cGUgTW91c2VFdmVudCxcbiAgdHlwZSBLZXlib2FyZEV2ZW50LFxuICB0eXBlIENoYW5nZUV2ZW50LFxuICB0eXBlIFJlYWN0Tm9kZSxcbiAgdXNlU3RhdGUsXG4gIHVzZUNhbGxiYWNrLFxuICB1c2VSZWYsXG59IGZyb20gJ3JlYWN0JztcbmltcG9ydCBTZWNvbmRhcnlJY29uQnV0dG9uIGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3NlY29uZGFyeS1pY29uLWJ1dHRvbic7XG5pbXBvcnQgQ29uc3RyYWludHMgZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvY29uc3RyYWludHMnO1xuaW1wb3J0IHsgU2VhcmNoSWNvbiwgQ2xvc2VJY29uIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvaWNvbnMnO1xuaW1wb3J0IHtcbiAgY3JlYXRlU2VxdWVudGlhbElkLFxuICBmaWx0ZXJEYXRhQXR0cmlidXRlcyxcbiAgd2FybmluZyxcbn0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvdXRpbHMnO1xuaW1wb3J0IHsgd2FybklmTWVudVBvcnRhbFByb3BzQXJlTWlzc2luZyB9IGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3NlbGVjdC11dGlscyc7XG5pbXBvcnQge1xuICBnZXRDbGVhckljb25CdXR0b25TdHlsZXMsXG4gIGdldFNlYXJjaEljb25CdXR0b25TdHlsZXMsXG4gIGdldFNlbGVjdGFibGVTZWFyY2hJbnB1dENvbnRhaW5lclN0eWxlcyxcbiAgZ2V0U2VsZWN0YWJsZVNlYXJjaElucHV0U3R5bGVzLFxufSBmcm9tICcuL3NlbGVjdGFibGUtc2VhcmNoLWlucHV0LnN0eWxlcyc7XG5pbXBvcnQgU2VsZWN0YWJsZVNlbGVjdCBmcm9tICcuL3NlbGVjdGFibGUtc2VsZWN0JztcbmltcG9ydCB7IHVzZUZpZWxkSWQsIHVzZVRvZ2dsZVN0YXRlIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvaG9va3MnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgZGVzaWduVG9rZW5zIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvZGVzaWduLXN5c3RlbSc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgeyB0eXBlIFByb3BzIGFzIFJlYWN0U2VsZWN0UHJvcHMgfSBmcm9tICdyZWFjdC1zZWxlY3QnO1xuXG5jb25zdCBDb250YWluZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuYDtcblxuY29uc3QgZ2V0VGV4dElucHV0TmFtZSA9IChuYW1lPzogc3RyaW5nKSA9PlxuICBuYW1lID8gYCR7bmFtZX0udGV4dElucHV0YCA6IHVuZGVmaW5lZDtcblxuY29uc3QgZ2V0RHJvcGRvd25OYW1lID0gKG5hbWU/OiBzdHJpbmcpID0+XG4gIG5hbWUgPyBgJHtuYW1lfS5kcm9wZG93bmAgOiB1bmRlZmluZWQ7XG5cbmV4cG9ydCB0eXBlIFRDdXN0b21FdmVudCA9IHtcbiAgdGFyZ2V0OiB7XG4gICAgaWQ/OiBzdHJpbmc7XG4gICAgbmFtZT86IHN0cmluZztcbiAgICB2YWx1ZT86IHN0cmluZyB8IHN0cmluZ1tdIHwgbnVsbDtcbiAgfTtcbiAgcGVyc2lzdD86ICgpID0+IHZvaWQ7XG59O1xuXG5leHBvcnQgdHlwZSBUVmFsdWUgPSB7XG4gIHRleHQ6IHN0cmluZztcbiAgb3B0aW9uOiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBUT3B0aW9uID0ge1xuICB2YWx1ZTogc3RyaW5nO1xuICBsYWJlbD86IFJlYWN0Tm9kZTtcbn07XG5cbmV4cG9ydCB0eXBlIFRPcHRpb25PYmplY3QgPSB7XG4gIG9wdGlvbnM6IFRPcHRpb25bXTtcbn07XG5cbmV4cG9ydCB0eXBlIFRPcHRpb25zID0gVE9wdGlvbltdIHwgVE9wdGlvbk9iamVjdFtdO1xuXG5leHBvcnQgdHlwZSBUU2VsZWN0YWJsZVNlYXJjaElucHV0UHJvcHMgPSB7XG4gIC8qKlxuICAgKiBVc2VkIGFzIEhUTUwgaWQgcHJvcGVydHkuIEFuIGlkIGlzIGF1dG8tZ2VuZXJhdGVkIHdoZW4gaXQgaXMgbm90IHNwZWNpZmllZC5cbiAgICovXG4gIGlkPzogc3RyaW5nO1xuICAvKipcbiAgICogVXNlZCBhcyBIVE1MIGF1dG9jb21wbGV0ZSBwcm9wZXJ0eVxuICAgKi9cbiAgYXV0b0NvbXBsZXRlPzogc3RyaW5nO1xuICAvKipcbiAgICogSW5kaWNhdGUgaWYgdGhlIHZhbHVlIGVudGVyZWQgaW4gdGhlIGlucHV0IGlzIGludmFsaWQuXG4gICAqL1xuICAnYXJpYS1pbnZhbGlkJz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBIVE1MIElEIG9mIGFuIGVsZW1lbnQgY29udGFpbmluZyBhbiBlcnJvciBtZXNzYWdlIHJlbGF0ZWQgdG8gdGhlIGlucHV0LlxuICAgKi9cbiAgJ2FyaWEtZXJyb3JtZXNzYWdlJz86IHN0cmluZztcbiAgLyoqXG4gICAqIFVzZWQgYXMgSFRNTCBuYW1lIG9mIHRoZSBpbnB1dCBjb21wb25lbnQgcHJvcGVydHkuXG4gICAqL1xuICBuYW1lPzogc3RyaW5nO1xuICAvKipcbiAgICogVmFsdWUgb2YgdGhlIGlucHV0LiBDb25zaXN0cyBvZiB0ZXh0IGlucHV0IGFuZCBzZWxlY3RlZCBvcHRpb24uXG4gICAqL1xuICB2YWx1ZTogVFZhbHVlO1xuICAvKipcbiAgICogQ2FsbGVkIHdpdGggdGhlIGV2ZW50IG9mIHRoZSBpbnB1dCBvciBkcm9wZG93biB3aGVuIGVpdGhlciB0aGUgc2VsZWN0YWJsZSBkcm9wZG93biBvciB0aGUgdGV4dCBpbnB1dCBoYXZlIGNoYW5nZWQuXG4gICAqIFRoZSBjaGFuZ2UgZXZlbnQgZnJvbSB0aGUgdGV4dCBpbnB1dCBoYXMgYSBzdWZmaXggb2YgYC50ZXh0SW5wdXRgIGFuZCB0aGUgY2hhbmdlIGV2ZW50IGZyb20gdGhlIGRyb3Bkb3duIGhhcyBhIHN1ZmZpeCBvZiBgLmRyb3Bkb3duYC5cbiAgICovXG4gIG9uQ2hhbmdlPzogKGV2ZW50OiBUQ3VzdG9tRXZlbnQpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiBpbnB1dCBpcyBibHVycmVkXG4gICAqL1xuICBvbkJsdXI/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGlucHV0IGlzIGZvY3VzZWRcbiAgICovXG4gIG9uRm9jdXM/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIEhhbmRsZXIgd2hlbiB0aGUgc2VhcmNoIGJ1dHRvbiBpcyBjbGlja2VkLlxuICAgKi9cbiAgb25TdWJtaXQ6ICh2YWx1ZTogVFZhbHVlKSA9PiB2b2lkO1xuICAvKipcbiAgICogSGFuZGxlciB3aGVuIHRoZSBjbGVhciBidXR0b24gaXMgY2xpY2tlZC5cbiAgICovXG4gIG9uUmVzZXQ/OiAoKSA9PiB2b2lkO1xuICAvKipcbiAgICogRm9jdXMgdGhlIGlucHV0IG9uIGluaXRpYWwgcmVuZGVyXG4gICAqL1xuICBpc0F1dG9mb2N1c3NlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgdGhhdCB0aGUgaW5wdXQgY2Fubm90IGJlIG1vZGlmaWVkIChlLmcgbm90IGF1dGhvcml6ZWQsIG9yIGNoYW5nZXMgY3VycmVudGx5IHNhdmluZykuXG4gICAqL1xuICBpc0Rpc2FibGVkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGF0IHRoZSBmaWVsZCBpcyBkaXNwbGF5aW5nIHJlYWQtb25seSBjb250ZW50XG4gICAqL1xuICBpc1JlYWRPbmx5PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyBpZiB0aGUgaW5wdXQgaGFzIGludmFsaWQgdmFsdWVzXG4gICAqL1xuICBoYXNFcnJvcj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaWYgdGhlIGlucHV0IGhhcyB3YXJuaW5nIHZhbHVlc1xuICAgKi9cbiAgaGFzV2FybmluZz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBQbGFjZWhvbGRlciB0ZXh0IGZvciB0aGUgaW5wdXRcbiAgICovXG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xuICAvKipcbiAgICogSW5kaWNhdGVzIGlmIHRoZSBpbnB1dCBzaG91bGQgYmUgY2xlYXJlZCB3aGVuIHRoZSBjbGVhciBidXR0b24gaXMgY2xpY2tlZC5cbiAgICogRGVmYXVsdHMgdG8gdHJ1ZS5cbiAgICpcbiAgICovXG4gIGlzQ2xlYXJhYmxlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEhvcml6b250YWwgc2l6ZSBsaW1pdCBvZiB0aGUgaW5wdXQgZmllbGRzLlxuICAgKi9cbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQ/OiAxMCB8IDExIHwgMTIgfCAxMyB8IDE0IHwgMTUgfCAxNiB8ICdzY2FsZScgfCAnYXV0byc7XG4gIC8qKlxuICAgKiBBcnJheSBvZiBvcHRpb25zIHRoYXQgcG9wdWxhdGUgdGhlIHNlbGVjdCBtZW51XG4gICAqL1xuICBvcHRpb25zOiBUT3B0aW9ucztcbiAgLyoqXG4gICAqIHotaW5kZXggdmFsdWUgZm9yIHRoZSBtZW51IHBvcnRhbFxuICAgKiA8YnI+XG4gICAqIFVzZSBpbiBjb25qdW5jdGlvbiB3aXRoIGBtZW51UG9ydGFsVGFyZ2V0YFxuICAgKi9cbiAgbWVudVBvcnRhbFpJbmRleD86IG51bWJlcjtcbiAgLyoqXG4gICAqIERvbSBlbGVtZW50IHRvIHBvcnRhbCB0aGUgc2VsZWN0IG1lbnUgdG9cbiAgICogPGJyPlxuICAgKiBbUHJvcHMgZnJvbSBSZWFjdCBzZWxlY3Qgd2FzIHVzZWRdKGh0dHBzOi8vcmVhY3Qtc2VsZWN0LmNvbS9wcm9wcylcbiAgICovXG4gIG1lbnVQb3J0YWxUYXJnZXQ/OiBSZWFjdFNlbGVjdFByb3BzWydtZW51UG9ydGFsVGFyZ2V0J107XG4gIC8qKlxuICAgKiB3aGV0aGVyIHRoZSBtZW51IHNob3VsZCBibG9jayBzY3JvbGwgd2hpbGUgb3BlblxuICAgKiA8YnI+XG4gICAqIFtQcm9wcyBmcm9tIFJlYWN0IHNlbGVjdCB3YXMgdXNlZF0oaHR0cHM6Ly9yZWFjdC1zZWxlY3QuY29tL3Byb3BzKVxuICAgKi9cbiAgbWVudVNob3VsZEJsb2NrU2Nyb2xsPzogUmVhY3RTZWxlY3RQcm9wc1snbWVudVNob3VsZEJsb2NrU2Nyb2xsJ107XG4gIC8qKlxuICAgKiBIYW5kbGUgY2hhbmdlIGV2ZW50cyBvbiB0aGUgbWVudSBpbnB1dFxuICAgKiA8YnI+XG4gICAqIFtQcm9wcyBmcm9tIFJlYWN0IHNlbGVjdCB3YXMgdXNlZF0oaHR0cHM6Ly9yZWFjdC1zZWxlY3QuY29tL3Byb3BzKVxuICAgKi9cbiAgb25NZW51SW5wdXRDaGFuZ2U/OiBSZWFjdFNlbGVjdFByb3BzWydvbklucHV0Q2hhbmdlJ107XG4gIC8qKlxuICAgKiBDYW4gYmUgdXNlZCB0byByZW5kZXIgYSBjdXN0b20gdmFsdWUgd2hlbiB0aGVyZSBhcmUgbm8gb3B0aW9ucyAoZWl0aGVyIGJlY2F1c2Ugb2Ygbm8gc2VhcmNoIHJlc3VsdHMsIG9yIGFsbCBvcHRpb25zIGhhdmUgYmVlbiB1c2VkLCBvciB0aGVyZSB3ZXJlIG5vbmUgaW4gdGhlIGZpcnN0IHBsYWNlKS4gR2V0cyBjYWxsZWQgd2l0aCB7IGlucHV0VmFsdWU6IFN0cmluZyB9LlxuICAgKiA8YnIgLz5cbiAgICogYGlucHV0VmFsdWVgIHdpbGwgYmUgYW4gZW1wdHkgc3RyaW5nIHdoZW4gbm8gc2VhcmNoIHRleHQgaXMgcHJlc2VudC5cbiAgICogPGJyPlxuICAgKiBbUHJvcHMgZnJvbSBSZWFjdCBzZWxlY3Qgd2FzIHVzZWRdKGh0dHBzOi8vcmVhY3Qtc2VsZWN0LmNvbS9wcm9wcylcbiAgICovXG4gIG5vTWVudU9wdGlvbnNNZXNzYWdlPzogUmVhY3RTZWxlY3RQcm9wc1snbm9PcHRpb25zTWVzc2FnZSddO1xuICAvKipcbiAgICogV2hldGhlciB0byBlbmFibGUgc2VhcmNoIGZ1bmN0aW9uYWxpdHkuXG4gICAqIDxicj5cbiAgICogW1Byb3BzIGZyb20gUmVhY3Qgc2VsZWN0IHdhcyB1c2VkXShodHRwczovL3JlYWN0LXNlbGVjdC5jb20vcHJvcHMpXG4gICAqL1xuICBpc01lbnVTZWFyY2hhYmxlPzogUmVhY3RTZWxlY3RQcm9wc1snaXNTZWFyY2hhYmxlJ107XG4gIC8qKlxuICAgKiBNYXhpbXVtIGhlaWdodCBvZiB0aGUgbWVudSBiZWZvcmUgc2Nyb2xsaW5nXG4gICAqIDxicj5cbiAgICogW1Byb3BzIGZyb20gUmVhY3Qgc2VsZWN0IHdhcyB1c2VkXShodHRwczovL3JlYWN0LXNlbGVjdC5jb20vcHJvcHMpXG4gICAqL1xuICBtYXhNZW51SGVpZ2h0PzogUmVhY3RTZWxlY3RQcm9wc1snbWF4TWVudUhlaWdodCddO1xuICAvKipcbiAgICogV2hldGhlciB0aGUgbWVudSBzaG91bGQgY2xvc2UgYWZ0ZXIgYSB2YWx1ZSBpcyBzZWxlY3RlZC4gRGVmYXVsdHMgdG8gYHRydWVgLlxuICAgKiA8YnI+XG4gICAqIFtQcm9wcyBmcm9tIFJlYWN0IHNlbGVjdCB3YXMgdXNlZF0oaHR0cHM6Ly9yZWFjdC1zZWxlY3QuY29tL3Byb3BzKVxuICAgKi9cbiAgY2xvc2VNZW51T25TZWxlY3Q/OiBSZWFjdFNlbGVjdFByb3BzWydjbG9zZU1lbnVPblNlbGVjdCddO1xuICAvKipcbiAgICogSG9yaXpvbnRhbCBzaXplIGxpbWl0IGZvciB0aGUgZHJvcGRvd24gbWVudS5cbiAgICovXG4gIG1lbnVIb3Jpem9udGFsQ29uc3RyYWludD86IDMgfCA0IHwgNTtcbiAgLyoqXG4gICAqIFNob3cgc3VibWl0IGJ1dHRvbiBpbiB0aGUgaW5wdXRcbiAgICovXG4gIHNob3dTdWJtaXRCdXR0b24/OiBib29sZWFuO1xufTtcblxuY29uc3QgZGVmYXVsdFByb3BzOiBQaWNrPFxuICBUU2VsZWN0YWJsZVNlYXJjaElucHV0UHJvcHMsXG4gIHwgJ2hvcml6b250YWxDb25zdHJhaW50J1xuICB8ICdpc0NsZWFyYWJsZSdcbiAgfCAnbWVudUhvcml6b250YWxDb25zdHJhaW50J1xuICB8ICdzaG93U3VibWl0QnV0dG9uJ1xuICB8ICdtZW51UG9ydGFsWkluZGV4J1xuICB8ICdvcHRpb25zJ1xuPiA9IHtcbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQ6ICdzY2FsZScsXG4gIGlzQ2xlYXJhYmxlOiB0cnVlLFxuICBtZW51SG9yaXpvbnRhbENvbnN0cmFpbnQ6IDMsXG4gIHNob3dTdWJtaXRCdXR0b246IHRydWUsXG4gIG1lbnVQb3J0YWxaSW5kZXg6IDEsXG4gIG9wdGlvbnM6IFtdLFxufTtcblxuY29uc3Qgc2VsZWN0YWJsZVNlYXJjaElucHV0U2VxdWVudGlhbElkID0gY3JlYXRlU2VxdWVudGlhbElkKFxuICAnc2VsZWN0YWJsZS1zZWFyY2gtaW5wdXQtJ1xuKTtcblxuY29uc3QgaXNPcHRpb25PYmplY3QgPSAoXG4gIG9wdGlvbjogVE9wdGlvbiB8IFRPcHRpb25PYmplY3Rcbik6IG9wdGlvbiBpcyBUT3B0aW9uT2JqZWN0ID0+IChvcHRpb24gYXMgVE9wdGlvbk9iamVjdCkub3B0aW9ucyAhPT0gdW5kZWZpbmVkO1xuXG5jb25zdCBTZWxlY3RhYmxlU2VhcmNoSW5wdXQgPSAocHJvcHM6IFRTZWxlY3RhYmxlU2VhcmNoSW5wdXRQcm9wcykgPT4ge1xuICBjb25zdCBbZHJvcGRvd25IYXNGb2N1cywgdG9nZ2xlRHJvcGRvd25IYXNGb2N1c10gPSB1c2VUb2dnbGVTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtzZWFyY2hWYWx1ZSwgc2V0U2VhcmNoVmFsdWVdID0gdXNlU3RhdGUocHJvcHMudmFsdWUudGV4dCB8fCAnJyk7XG4gIGNvbnN0IGNvbnRhaW5lclJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbCk7XG4gIGNvbnN0IHRleHRJbnB1dFJlZiA9IHVzZVJlZjxIVE1MSW5wdXRFbGVtZW50PihudWxsKTtcblxuICBjb25zdCBvcHRpb25zV2l0aG91dEdyb3VwcyA9IHByb3BzLm9wdGlvbnMuZmxhdE1hcCgob3B0aW9uKSA9PiB7XG4gICAgaWYgKGlzT3B0aW9uT2JqZWN0KG9wdGlvbikpIHtcbiAgICAgIHJldHVybiBvcHRpb24ub3B0aW9ucztcbiAgICB9XG4gICAgcmV0dXJuIG9wdGlvbjtcbiAgfSk7XG5cbiAgY29uc3Qgc2VsZWN0ZWRPcHRpb24gPSBvcHRpb25zV2l0aG91dEdyb3Vwcy5maW5kKFxuICAgIChvcHRpb24pID0+IG9wdGlvbi52YWx1ZSA9PT0gcHJvcHMudmFsdWUub3B0aW9uXG4gICk7XG5cbiAgY29uc3Qgc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCA9IHVzZUZpZWxkSWQoXG4gICAgcHJvcHMuaWQsXG4gICAgc2VsZWN0YWJsZVNlYXJjaElucHV0U2VxdWVudGlhbElkXG4gICk7XG5cbiAgaWYgKCFwcm9wcy5pc1JlYWRPbmx5KSB7XG4gICAgd2FybmluZyhcbiAgICAgIHR5cGVvZiBwcm9wcy5vbkNoYW5nZSA9PT0gJ2Z1bmN0aW9uJyxcbiAgICAgICdTZWxlY3RhYmxlU2VhcmNoSW5wdXQ6IGBvbkNoYW5nZWAgaXMgcmVxdWlyZWQgd2hlbiBpcyBub3QgcmVhZCBvbmx5LidcbiAgICApO1xuICB9XG5cbiAgd2FybklmTWVudVBvcnRhbFByb3BzQXJlTWlzc2luZyh7XG4gICAgbWVudVBvcnRhbFpJbmRleDogcHJvcHMubWVudVBvcnRhbFpJbmRleCxcbiAgICBtZW51UG9ydGFsVGFyZ2V0OiBwcm9wcy5tZW51UG9ydGFsVGFyZ2V0LFxuICAgIGNvbXBvbmVudE5hbWU6ICdTZWxlY3RhYmxlU2VhcmNoSW5wdXQnLFxuICB9KTtcblxuICBjb25zdCB7IG9uRm9jdXMsIG9uQmx1ciwgbmFtZSB9ID0gcHJvcHM7XG4gIGNvbnN0IGhhbmRsZVRleHRJbnB1dEZvY3VzID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIGlmIChvbkZvY3VzKSB7XG4gICAgICBvbkZvY3VzKHtcbiAgICAgICAgdGFyZ2V0OiB7XG4gICAgICAgICAgaWQ6IFNlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXRUZXh0SW5wdXRJZChzZWxlY3RhYmxTZWFyY2hJbnB1dElkKSxcbiAgICAgICAgICBuYW1lOiBnZXRUZXh0SW5wdXROYW1lKG5hbWUpLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfVxuICB9LCBbb25Gb2N1cywgc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCwgbmFtZV0pO1xuXG4gIGNvbnN0IGhhbmRsZVRleHRJbnB1dEJsdXIgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgaWYgKG9uQmx1cikge1xuICAgICAgb25CbHVyKHtcbiAgICAgICAgdGFyZ2V0OiB7XG4gICAgICAgICAgaWQ6IFNlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXRUZXh0SW5wdXRJZChzZWxlY3RhYmxTZWFyY2hJbnB1dElkKSxcbiAgICAgICAgICBuYW1lOiBnZXRUZXh0SW5wdXROYW1lKG5hbWUpLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfVxuICB9LCBbb25CbHVyLCBzZWxlY3RhYmxTZWFyY2hJbnB1dElkLCBuYW1lXSk7XG5cbiAgY29uc3QgaGFuZGxlQ2xlYXIgPSAoKSA9PiB7XG4gICAgc2V0U2VhcmNoVmFsdWUoJycpO1xuICAgIGlmIChwcm9wcy5vblJlc2V0KSB7XG4gICAgICBwcm9wcy5vblJlc2V0KCk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUNoYW5nZSA9IChldmVudDogQ2hhbmdlRXZlbnQ8SFRNTElucHV0RWxlbWVudD4pID0+IHtcbiAgICBzZXRTZWFyY2hWYWx1ZShldmVudC50YXJnZXQudmFsdWUpO1xuICAgIGlmIChwcm9wcy5vbkNoYW5nZSkge1xuICAgICAgcHJvcHMub25DaGFuZ2Uoe1xuICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICBpZDogU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldFRleHRJbnB1dElkKHNlbGVjdGFibFNlYXJjaElucHV0SWQpLFxuICAgICAgICAgIG5hbWU6IGdldFRleHRJbnB1dE5hbWUocHJvcHMubmFtZSksXG4gICAgICAgICAgdmFsdWU6IGV2ZW50LnRhcmdldC52YWx1ZSxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBoYW5kbGVTdWJtaXQgPSAoXG4gICAgZXZlbnQ6XG4gICAgICB8IEtleWJvYXJkRXZlbnQ8SFRNTEJ1dHRvbkVsZW1lbnQ+XG4gICAgICB8IE1vdXNlRXZlbnQ8SFRNTEJ1dHRvbkVsZW1lbnQ+XG4gICAgICB8IEtleWJvYXJkRXZlbnQ8SFRNTElucHV0RWxlbWVudD5cbiAgKSA9PiB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICBpZiAocHJvcHMub25TdWJtaXQpIHtcbiAgICAgIHByb3BzLm9uU3VibWl0KHtcbiAgICAgICAgdGV4dDogc2VhcmNoVmFsdWUsXG4gICAgICAgIG9wdGlvbjogc2VsZWN0ZWRPcHRpb24/LnZhbHVlID8/ICcnLFxuICAgICAgfSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGRyb3Bkb3duTmFtZSA9IGdldERyb3Bkb3duTmFtZShwcm9wcy5uYW1lKTtcbiAgY29uc3QgZHJvcGRvd25JZCA9IFNlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXREcm9wZG93bklkKFxuICAgIHNlbGVjdGFibFNlYXJjaElucHV0SWRcbiAgKTtcblxuICBjb25zdCBoYW5kbGVEcm9wZG93bkZvY3VzID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIGlmIChvbkZvY3VzKSB7XG4gICAgICBvbkZvY3VzKHtcbiAgICAgICAgdGFyZ2V0OiB7XG4gICAgICAgICAgaWQ6IGRyb3Bkb3duSWQsXG4gICAgICAgICAgbmFtZTogZHJvcGRvd25OYW1lLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfVxuICAgIHRvZ2dsZURyb3Bkb3duSGFzRm9jdXModHJ1ZSk7XG4gIH0sIFtvbkZvY3VzLCB0b2dnbGVEcm9wZG93bkhhc0ZvY3VzLCBkcm9wZG93bk5hbWUsIGRyb3Bkb3duSWRdKTtcblxuICBjb25zdCBoYW5kbGVEcm9wZG93bkJsdXIgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgaWYgKG9uQmx1cikge1xuICAgICAgb25CbHVyKHtcbiAgICAgICAgdGFyZ2V0OiB7XG4gICAgICAgICAgaWQ6IGRyb3Bkb3duSWQsXG4gICAgICAgICAgbmFtZTogZHJvcGRvd25OYW1lLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfVxuICAgIHRvZ2dsZURyb3Bkb3duSGFzRm9jdXMoZmFsc2UpO1xuICB9LCBbdG9nZ2xlRHJvcGRvd25IYXNGb2N1cywgb25CbHVyLCBkcm9wZG93bk5hbWUsIGRyb3Bkb3duSWRdKTtcblxuICBjb25zdCBoYW5kbGVDb250YWluZXJCbHVyID0gdXNlQ2FsbGJhY2soXG4gICAgKGV2ZW50KSA9PiB7XG4gICAgICAvLyBlbnN1cmVzIHRoYXQgYm90aCBmaWVsZHMgYXJlIG1hcmtlZCBhcyB0b3VjaGVkIHdoZW4gb25lIG9mIHRoZW1cbiAgICAgIC8vIGlzIGJsdXJyZWRcbiAgICAgIGlmIChcbiAgICAgICAgdHlwZW9mIG9uQmx1ciA9PT0gJ2Z1bmN0aW9uJyAmJlxuICAgICAgICAhY29udGFpbmVyUmVmLmN1cnJlbnQ/LmNvbnRhaW5zKGV2ZW50LnJlbGF0ZWRUYXJnZXQpXG4gICAgICApIHtcbiAgICAgICAgb25CbHVyKHtcbiAgICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICAgIGlkOiBTZWxlY3RhYmxlU2VhcmNoSW5wdXQuZ2V0RHJvcGRvd25JZChzZWxlY3RhYmxTZWFyY2hJbnB1dElkKSxcbiAgICAgICAgICAgIG5hbWU6IGdldERyb3Bkb3duTmFtZShuYW1lKSxcbiAgICAgICAgICB9LFxuICAgICAgICB9KTtcbiAgICAgICAgb25CbHVyKHtcbiAgICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICAgIGlkOiBTZWxlY3RhYmxlU2VhcmNoSW5wdXQuZ2V0VGV4dElucHV0SWQoc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCksXG4gICAgICAgICAgICBuYW1lOiBnZXRUZXh0SW5wdXROYW1lKG5hbWUpLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0sXG4gICAgW29uQmx1ciwgc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCwgbmFtZV1cbiAgKTtcblxuICByZXR1cm4gKFxuICAgIDxDb25zdHJhaW50cy5Ib3Jpem9udGFsIG1heD17cHJvcHMuaG9yaXpvbnRhbENvbnN0cmFpbnR9PlxuICAgICAgPENvbnRhaW5lclxuICAgICAgICByZWY9e2NvbnRhaW5lclJlZn1cbiAgICAgICAgb25CbHVyPXtoYW5kbGVDb250YWluZXJCbHVyfVxuICAgICAgICBkYXRhLXRlc3RpZD1cInNlbGVjdGFibGUtc2VhcmNoLWlucHV0LWNvbnRhaW5lclwiXG4gICAgICA+XG4gICAgICAgIDxDb25zdHJhaW50cy5Ib3Jpem9udGFsIG1heD17cHJvcHMubWVudUhvcml6b250YWxDb25zdHJhaW50fT5cbiAgICAgICAgICA8U2VsZWN0YWJsZVNlbGVjdFxuICAgICAgICAgICAgey4uLnByb3BzfVxuICAgICAgICAgICAgaWQ9e1NlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXREcm9wZG93bklkKHNlbGVjdGFibFNlYXJjaElucHV0SWQpfVxuICAgICAgICAgICAgbmFtZT17Z2V0RHJvcGRvd25OYW1lKHByb3BzLm5hbWUpfVxuICAgICAgICAgICAgZHJvcGRvd25IYXNGb2N1cz17ZHJvcGRvd25IYXNGb2N1c31cbiAgICAgICAgICAgIGhhbmRsZURyb3Bkb3duRm9jdXM9e2hhbmRsZURyb3Bkb3duRm9jdXN9XG4gICAgICAgICAgICBoYW5kbGVEcm9wZG93bkJsdXI9e2hhbmRsZURyb3Bkb3duQmx1cn1cbiAgICAgICAgICAgIHRleHRJbnB1dFJlZj17dGV4dElucHV0UmVmfVxuICAgICAgICAgICAgc2VsZWN0ZWRPcHRpb249e3NlbGVjdGVkT3B0aW9ufVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvQ29uc3RyYWludHMuSG9yaXpvbnRhbD5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNzcz17W1xuICAgICAgICAgICAgZ2V0U2VsZWN0YWJsZVNlYXJjaElucHV0Q29udGFpbmVyU3R5bGVzKHByb3BzKSxcbiAgICAgICAgICAgIGRyb3Bkb3duSGFzRm9jdXMgJiZcbiAgICAgICAgICAgICAgIXByb3BzLmlzUmVhZE9ubHkgJiZcbiAgICAgICAgICAgICAgY3NzYFxuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAke2Rlc2lnblRva2Vucy5ib3JkZXJDb2xvckZvcklucHV0V2hlbkZvY3VzZWR9O1xuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICR7ZGVzaWduVG9rZW5zLmJvcmRlckNvbG9yRm9ySW5wdXRXaGVuRm9jdXNlZH07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBgLFxuICAgICAgICAgIF19XG4gICAgICAgID5cbiAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgIHJlZj17dGV4dElucHV0UmVmfVxuICAgICAgICAgICAgaWQ9e1NlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXRUZXh0SW5wdXRJZChzZWxlY3RhYmxTZWFyY2hJbnB1dElkKX1cbiAgICAgICAgICAgIG5hbWU9e2dldFRleHRJbnB1dE5hbWUocHJvcHMubmFtZSl9XG4gICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICB2YWx1ZT17c2VhcmNoVmFsdWV9XG4gICAgICAgICAgICBvbkNoYW5nZT17aGFuZGxlQ2hhbmdlfVxuICAgICAgICAgICAgb25CbHVyPXtoYW5kbGVUZXh0SW5wdXRCbHVyfVxuICAgICAgICAgICAgb25Gb2N1cz17aGFuZGxlVGV4dElucHV0Rm9jdXN9XG4gICAgICAgICAgICBkaXNhYmxlZD17cHJvcHMuaXNEaXNhYmxlZH1cbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPXtwcm9wcy5wbGFjZWhvbGRlcn1cbiAgICAgICAgICAgIHJlYWRPbmx5PXtwcm9wcy5pc1JlYWRPbmx5fVxuICAgICAgICAgICAgYXV0b0ZvY3VzPXtwcm9wcy5pc0F1dG9mb2N1c3NlZH1cbiAgICAgICAgICAgIGF1dG9Db21wbGV0ZT17cHJvcHMuYXV0b0NvbXBsZXRlfVxuICAgICAgICAgICAgYXJpYS1yZWFkb25seT17cHJvcHMuaXNSZWFkT25seX1cbiAgICAgICAgICAgIGNvbnRlbnRFZGl0YWJsZT17IXByb3BzLmlzUmVhZE9ubHl9XG4gICAgICAgICAgICBjc3M9e2dldFNlbGVjdGFibGVTZWFyY2hJbnB1dFN0eWxlcyhwcm9wcyl9XG4gICAgICAgICAgICB7Li4uZmlsdGVyRGF0YUF0dHJpYnV0ZXMocHJvcHMpfVxuICAgICAgICAgICAgLyogQVJJQSAqL1xuICAgICAgICAgICAgYXJpYS1pbnZhbGlkPXtwcm9wc1snYXJpYS1pbnZhbGlkJ119XG4gICAgICAgICAgICBhcmlhLWVycm9ybWVzc2FnZT17cHJvcHNbJ2FyaWEtZXJyb3JtZXNzYWdlJ119XG4gICAgICAgICAgICBkYXRhLXRlc3RpZD1cInNlbGVjdGFibGUtaW5wdXRcIlxuICAgICAgICAgICAgb25LZXlEb3duPXsoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgaWYgKCFwcm9wcy5pc1JlYWRPbmx5ICYmIGV2ZW50LmtleSA9PT0gJ0VudGVyJykge1xuICAgICAgICAgICAgICAgIGhhbmRsZVN1Ym1pdChldmVudCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH19XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7cHJvcHMuaXNDbGVhcmFibGUgJiZcbiAgICAgICAgICAgIHNlYXJjaFZhbHVlICYmXG4gICAgICAgICAgICAhcHJvcHMuaXNEaXNhYmxlZCAmJlxuICAgICAgICAgICAgIXByb3BzLmlzUmVhZE9ubHkgJiYgKFxuICAgICAgICAgICAgICA8U2Vjb25kYXJ5SWNvbkJ1dHRvblxuICAgICAgICAgICAgICAgIGljb249ezxDbG9zZUljb24gLz59XG4gICAgICAgICAgICAgICAgc2l6ZT1cIm1lZGl1bVwiXG4gICAgICAgICAgICAgICAgbGFiZWw9eydjbGVhci1idXR0b24nfVxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e2hhbmRsZUNsZWFyfVxuICAgICAgICAgICAgICAgIGNzcz17Z2V0Q2xlYXJJY29uQnV0dG9uU3R5bGVzKHByb3BzKX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAge3Byb3BzLnNob3dTdWJtaXRCdXR0b24gJiYgKFxuICAgICAgICAgICAgPFNlY29uZGFyeUljb25CdXR0b25cbiAgICAgICAgICAgICAgaWNvbj17PFNlYXJjaEljb24gLz59XG4gICAgICAgICAgICAgIGxhYmVsPXsnc2VhcmNoLWJ1dHRvbid9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9e2hhbmRsZVN1Ym1pdH1cbiAgICAgICAgICAgICAgY3NzPXtnZXRTZWFyY2hJY29uQnV0dG9uU3R5bGVzKHByb3BzKX1cbiAgICAgICAgICAgICAgaXNEaXNhYmxlZD17cHJvcHMuaXNEaXNhYmxlZH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L0NvbnRhaW5lcj5cbiAgICA8L0NvbnN0cmFpbnRzLkhvcml6b250YWw+XG4gICk7XG59O1xuXG5TZWxlY3RhYmxlU2VhcmNoSW5wdXQuZGlzcGxheU5hbWUgPSAnU2VsZWN0YWJsZVNlYXJjaElucHV0JztcblNlbGVjdGFibGVTZWFyY2hJbnB1dC5kZWZhdWx0UHJvcHMgPSBkZWZhdWx0UHJvcHM7XG5TZWxlY3RhYmxlU2VhcmNoSW5wdXQuaXNFbXB0eSA9IChcbiAgZm9ybVZhbHVlOiBUU2VsZWN0YWJsZVNlYXJjaElucHV0UHJvcHNbJ3ZhbHVlJ11cbikgPT4gIWZvcm1WYWx1ZSB8fCBmb3JtVmFsdWUudGV4dC50cmltKCkgPT09ICcnO1xuU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldFRleHRJbnB1dElkID0gZ2V0VGV4dElucHV0TmFtZTtcblNlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXREcm9wZG93bklkID0gZ2V0RHJvcGRvd25OYW1lO1xuXG5leHBvcnQgZGVmYXVsdCBTZWxlY3RhYmxlU2VhcmNoSW5wdXQ7XG4iXX0= */",
|
|
268
|
+
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNlbGVjdGFibGUtc2VhcmNoLWlucHV0LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUErQjRCIiwiZmlsZSI6InNlbGVjdGFibGUtc2VhcmNoLWlucHV0LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIHR5cGUgTW91c2VFdmVudCxcbiAgdHlwZSBLZXlib2FyZEV2ZW50LFxuICB0eXBlIENoYW5nZUV2ZW50LFxuICB0eXBlIFJlYWN0Tm9kZSxcbiAgdXNlU3RhdGUsXG4gIHVzZUNhbGxiYWNrLFxuICB1c2VSZWYsXG59IGZyb20gJ3JlYWN0JztcbmltcG9ydCBTZWNvbmRhcnlJY29uQnV0dG9uIGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3NlY29uZGFyeS1pY29uLWJ1dHRvbic7XG5pbXBvcnQgQ29uc3RyYWludHMgZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvY29uc3RyYWludHMnO1xuaW1wb3J0IHsgU2VhcmNoSWNvbiwgQ2xvc2VJY29uIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvaWNvbnMnO1xuaW1wb3J0IHtcbiAgY3JlYXRlU2VxdWVudGlhbElkLFxuICBmaWx0ZXJEYXRhQXR0cmlidXRlcyxcbiAgd2FybmluZyxcbn0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvdXRpbHMnO1xuaW1wb3J0IHsgd2FybklmTWVudVBvcnRhbFByb3BzQXJlTWlzc2luZyB9IGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3NlbGVjdC11dGlscyc7XG5pbXBvcnQge1xuICBnZXRDbGVhckljb25CdXR0b25TdHlsZXMsXG4gIGdldFNlYXJjaEljb25CdXR0b25TdHlsZXMsXG4gIGdldFNlbGVjdGFibGVTZWFyY2hJbnB1dENvbnRhaW5lclN0eWxlcyxcbiAgZ2V0U2VsZWN0YWJsZVNlYXJjaElucHV0U3R5bGVzLFxufSBmcm9tICcuL3NlbGVjdGFibGUtc2VhcmNoLWlucHV0LnN0eWxlcyc7XG5pbXBvcnQgU2VsZWN0YWJsZVNlbGVjdCBmcm9tICcuL3NlbGVjdGFibGUtc2VsZWN0JztcbmltcG9ydCB7IHVzZUZpZWxkSWQsIHVzZVRvZ2dsZVN0YXRlIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvaG9va3MnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgZGVzaWduVG9rZW5zIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvZGVzaWduLXN5c3RlbSc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgeyB0eXBlIFByb3BzIGFzIFJlYWN0U2VsZWN0UHJvcHMgfSBmcm9tICdyZWFjdC1zZWxlY3QnO1xuXG5jb25zdCBDb250YWluZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuYDtcblxuY29uc3QgZ2V0VGV4dElucHV0TmFtZSA9IChuYW1lPzogc3RyaW5nKSA9PlxuICBuYW1lID8gYCR7bmFtZX0udGV4dElucHV0YCA6IHVuZGVmaW5lZDtcblxuY29uc3QgZ2V0RHJvcGRvd25OYW1lID0gKG5hbWU/OiBzdHJpbmcpID0+XG4gIG5hbWUgPyBgJHtuYW1lfS5kcm9wZG93bmAgOiB1bmRlZmluZWQ7XG5cbmV4cG9ydCB0eXBlIFRDdXN0b21FdmVudCA9IHtcbiAgdGFyZ2V0OiB7XG4gICAgaWQ/OiBzdHJpbmc7XG4gICAgbmFtZT86IHN0cmluZztcbiAgICB2YWx1ZT86IHN0cmluZyB8IHN0cmluZ1tdIHwgbnVsbDtcbiAgfTtcbiAgcGVyc2lzdD86ICgpID0+IHZvaWQ7XG59O1xuXG5leHBvcnQgdHlwZSBUVmFsdWUgPSB7XG4gIHRleHQ6IHN0cmluZztcbiAgb3B0aW9uOiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBUT3B0aW9uID0ge1xuICB2YWx1ZTogc3RyaW5nO1xuICBsYWJlbD86IFJlYWN0Tm9kZTtcbn07XG5cbmV4cG9ydCB0eXBlIFRPcHRpb25PYmplY3QgPSB7XG4gIG9wdGlvbnM6IFRPcHRpb25bXTtcbn07XG5cbmV4cG9ydCB0eXBlIFRPcHRpb25zID0gVE9wdGlvbltdIHwgVE9wdGlvbk9iamVjdFtdO1xuXG5leHBvcnQgdHlwZSBUU2VsZWN0YWJsZVNlYXJjaElucHV0UHJvcHMgPSB7XG4gIC8qKlxuICAgKiBVc2VkIGFzIEhUTUwgaWQgcHJvcGVydHkuIEFuIGlkIGlzIGF1dG8tZ2VuZXJhdGVkIHdoZW4gaXQgaXMgbm90IHNwZWNpZmllZC5cbiAgICovXG4gIGlkPzogc3RyaW5nO1xuICAvKipcbiAgICogVXNlZCBhcyBIVE1MIGF1dG9jb21wbGV0ZSBwcm9wZXJ0eVxuICAgKi9cbiAgYXV0b0NvbXBsZXRlPzogc3RyaW5nO1xuICAvKipcbiAgICogSW5kaWNhdGUgaWYgdGhlIHZhbHVlIGVudGVyZWQgaW4gdGhlIGlucHV0IGlzIGludmFsaWQuXG4gICAqL1xuICAnYXJpYS1pbnZhbGlkJz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBIVE1MIElEIG9mIGFuIGVsZW1lbnQgY29udGFpbmluZyBhbiBlcnJvciBtZXNzYWdlIHJlbGF0ZWQgdG8gdGhlIGlucHV0LlxuICAgKi9cbiAgJ2FyaWEtZXJyb3JtZXNzYWdlJz86IHN0cmluZztcbiAgLyoqXG4gICAqIFVzZWQgYXMgSFRNTCBuYW1lIG9mIHRoZSBpbnB1dCBjb21wb25lbnQgcHJvcGVydHkuXG4gICAqL1xuICBuYW1lPzogc3RyaW5nO1xuICAvKipcbiAgICogVmFsdWUgb2YgdGhlIGlucHV0LiBDb25zaXN0cyBvZiB0ZXh0IGlucHV0IGFuZCBzZWxlY3RlZCBvcHRpb24uXG4gICAqL1xuICB2YWx1ZTogVFZhbHVlO1xuICAvKipcbiAgICogQ2FsbGVkIHdpdGggdGhlIGV2ZW50IG9mIHRoZSBpbnB1dCBvciBkcm9wZG93biB3aGVuIGVpdGhlciB0aGUgc2VsZWN0YWJsZSBkcm9wZG93biBvciB0aGUgdGV4dCBpbnB1dCBoYXZlIGNoYW5nZWQuXG4gICAqIFRoZSBjaGFuZ2UgZXZlbnQgZnJvbSB0aGUgdGV4dCBpbnB1dCBoYXMgYSBzdWZmaXggb2YgYC50ZXh0SW5wdXRgIGFuZCB0aGUgY2hhbmdlIGV2ZW50IGZyb20gdGhlIGRyb3Bkb3duIGhhcyBhIHN1ZmZpeCBvZiBgLmRyb3Bkb3duYC5cbiAgICovXG4gIG9uQ2hhbmdlPzogKGV2ZW50OiBUQ3VzdG9tRXZlbnQpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiBpbnB1dCBpcyBibHVycmVkXG4gICAqL1xuICBvbkJsdXI/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGlucHV0IGlzIGZvY3VzZWRcbiAgICovXG4gIG9uRm9jdXM/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIEhhbmRsZXIgd2hlbiB0aGUgc2VhcmNoIGJ1dHRvbiBpcyBjbGlja2VkLlxuICAgKi9cbiAgb25TdWJtaXQ6ICh2YWx1ZTogVFZhbHVlKSA9PiB2b2lkO1xuICAvKipcbiAgICogSGFuZGxlciB3aGVuIHRoZSBjbGVhciBidXR0b24gaXMgY2xpY2tlZC5cbiAgICovXG4gIG9uUmVzZXQ/OiAoKSA9PiB2b2lkO1xuICAvKipcbiAgICogRm9jdXMgdGhlIGlucHV0IG9uIGluaXRpYWwgcmVuZGVyXG4gICAqL1xuICBpc0F1dG9mb2N1c3NlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgdGhhdCB0aGUgaW5wdXQgY2Fubm90IGJlIG1vZGlmaWVkIChlLmcgbm90IGF1dGhvcml6ZWQsIG9yIGNoYW5nZXMgY3VycmVudGx5IHNhdmluZykuXG4gICAqL1xuICBpc0Rpc2FibGVkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGF0IHRoZSBmaWVsZCBpcyBkaXNwbGF5aW5nIHJlYWQtb25seSBjb250ZW50XG4gICAqL1xuICBpc1JlYWRPbmx5PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyBpZiB0aGUgaW5wdXQgaGFzIGludmFsaWQgdmFsdWVzXG4gICAqL1xuICBoYXNFcnJvcj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaWYgdGhlIGlucHV0IGhhcyB3YXJuaW5nIHZhbHVlc1xuICAgKi9cbiAgaGFzV2FybmluZz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBQbGFjZWhvbGRlciB0ZXh0IGZvciB0aGUgaW5wdXRcbiAgICovXG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xuICAvKipcbiAgICogSW5kaWNhdGVzIGlmIHRoZSBpbnB1dCBzaG91bGQgYmUgY2xlYXJlZCB3aGVuIHRoZSBjbGVhciBidXR0b24gaXMgY2xpY2tlZC5cbiAgICogRGVmYXVsdHMgdG8gdHJ1ZS5cbiAgICpcbiAgICovXG4gIGlzQ2xlYXJhYmxlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEhvcml6b250YWwgc2l6ZSBsaW1pdCBvZiB0aGUgaW5wdXQgZmllbGRzLlxuICAgKi9cbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQ/OiAxMCB8IDExIHwgMTIgfCAxMyB8IDE0IHwgMTUgfCAxNiB8ICdzY2FsZScgfCAnYXV0byc7XG4gIC8qKlxuICAgKiBBcnJheSBvZiBvcHRpb25zIHRoYXQgcG9wdWxhdGUgdGhlIHNlbGVjdCBtZW51XG4gICAqL1xuICBvcHRpb25zOiBUT3B0aW9ucztcbiAgLyoqXG4gICAqIHotaW5kZXggdmFsdWUgZm9yIHRoZSBtZW51IHBvcnRhbFxuICAgKiA8YnI+XG4gICAqIFVzZSBpbiBjb25qdW5jdGlvbiB3aXRoIGBtZW51UG9ydGFsVGFyZ2V0YFxuICAgKi9cbiAgbWVudVBvcnRhbFpJbmRleD86IG51bWJlcjtcbiAgLyoqXG4gICAqIERvbSBlbGVtZW50IHRvIHBvcnRhbCB0aGUgc2VsZWN0IG1lbnUgdG9cbiAgICogPGJyPlxuICAgKiBbUHJvcHMgZnJvbSBSZWFjdCBzZWxlY3Qgd2FzIHVzZWRdKGh0dHBzOi8vcmVhY3Qtc2VsZWN0LmNvbS9wcm9wcylcbiAgICovXG4gIG1lbnVQb3J0YWxUYXJnZXQ/OiBSZWFjdFNlbGVjdFByb3BzWydtZW51UG9ydGFsVGFyZ2V0J107XG4gIC8qKlxuICAgKiB3aGV0aGVyIHRoZSBtZW51IHNob3VsZCBibG9jayBzY3JvbGwgd2hpbGUgb3BlblxuICAgKiA8YnI+XG4gICAqIFtQcm9wcyBmcm9tIFJlYWN0IHNlbGVjdCB3YXMgdXNlZF0oaHR0cHM6Ly9yZWFjdC1zZWxlY3QuY29tL3Byb3BzKVxuICAgKi9cbiAgbWVudVNob3VsZEJsb2NrU2Nyb2xsPzogUmVhY3RTZWxlY3RQcm9wc1snbWVudVNob3VsZEJsb2NrU2Nyb2xsJ107XG4gIC8qKlxuICAgKiBIYW5kbGUgY2hhbmdlIGV2ZW50cyBvbiB0aGUgbWVudSBpbnB1dFxuICAgKiA8YnI+XG4gICAqIFtQcm9wcyBmcm9tIFJlYWN0IHNlbGVjdCB3YXMgdXNlZF0oaHR0cHM6Ly9yZWFjdC1zZWxlY3QuY29tL3Byb3BzKVxuICAgKi9cbiAgb25NZW51SW5wdXRDaGFuZ2U/OiBSZWFjdFNlbGVjdFByb3BzWydvbklucHV0Q2hhbmdlJ107XG4gIC8qKlxuICAgKiBDYW4gYmUgdXNlZCB0byByZW5kZXIgYSBjdXN0b20gdmFsdWUgd2hlbiB0aGVyZSBhcmUgbm8gb3B0aW9ucyAoZWl0aGVyIGJlY2F1c2Ugb2Ygbm8gc2VhcmNoIHJlc3VsdHMsIG9yIGFsbCBvcHRpb25zIGhhdmUgYmVlbiB1c2VkLCBvciB0aGVyZSB3ZXJlIG5vbmUgaW4gdGhlIGZpcnN0IHBsYWNlKS4gR2V0cyBjYWxsZWQgd2l0aCB7IGlucHV0VmFsdWU6IFN0cmluZyB9LlxuICAgKiA8YnIgLz5cbiAgICogYGlucHV0VmFsdWVgIHdpbGwgYmUgYW4gZW1wdHkgc3RyaW5nIHdoZW4gbm8gc2VhcmNoIHRleHQgaXMgcHJlc2VudC5cbiAgICogPGJyPlxuICAgKiBbUHJvcHMgZnJvbSBSZWFjdCBzZWxlY3Qgd2FzIHVzZWRdKGh0dHBzOi8vcmVhY3Qtc2VsZWN0LmNvbS9wcm9wcylcbiAgICovXG4gIG5vTWVudU9wdGlvbnNNZXNzYWdlPzogUmVhY3RTZWxlY3RQcm9wc1snbm9PcHRpb25zTWVzc2FnZSddO1xuICAvKipcbiAgICogV2hldGhlciB0byBlbmFibGUgc2VhcmNoIGZ1bmN0aW9uYWxpdHkuXG4gICAqIDxicj5cbiAgICogW1Byb3BzIGZyb20gUmVhY3Qgc2VsZWN0IHdhcyB1c2VkXShodHRwczovL3JlYWN0LXNlbGVjdC5jb20vcHJvcHMpXG4gICAqL1xuICBpc01lbnVTZWFyY2hhYmxlPzogUmVhY3RTZWxlY3RQcm9wc1snaXNTZWFyY2hhYmxlJ107XG4gIC8qKlxuICAgKiBNYXhpbXVtIGhlaWdodCBvZiB0aGUgbWVudSBiZWZvcmUgc2Nyb2xsaW5nXG4gICAqIDxicj5cbiAgICogW1Byb3BzIGZyb20gUmVhY3Qgc2VsZWN0IHdhcyB1c2VkXShodHRwczovL3JlYWN0LXNlbGVjdC5jb20vcHJvcHMpXG4gICAqL1xuICBtYXhNZW51SGVpZ2h0PzogUmVhY3RTZWxlY3RQcm9wc1snbWF4TWVudUhlaWdodCddO1xuICAvKipcbiAgICogV2hldGhlciB0aGUgbWVudSBzaG91bGQgY2xvc2UgYWZ0ZXIgYSB2YWx1ZSBpcyBzZWxlY3RlZC4gRGVmYXVsdHMgdG8gYHRydWVgLlxuICAgKiA8YnI+XG4gICAqIFtQcm9wcyBmcm9tIFJlYWN0IHNlbGVjdCB3YXMgdXNlZF0oaHR0cHM6Ly9yZWFjdC1zZWxlY3QuY29tL3Byb3BzKVxuICAgKi9cbiAgY2xvc2VNZW51T25TZWxlY3Q/OiBSZWFjdFNlbGVjdFByb3BzWydjbG9zZU1lbnVPblNlbGVjdCddO1xuICAvKipcbiAgICogSG9yaXpvbnRhbCBzaXplIGxpbWl0IGZvciB0aGUgZHJvcGRvd24gbWVudS5cbiAgICovXG4gIG1lbnVIb3Jpem9udGFsQ29uc3RyYWludD86IDMgfCA0IHwgNTtcbiAgLyoqXG4gICAqIFNob3cgc3VibWl0IGJ1dHRvbiBpbiB0aGUgaW5wdXRcbiAgICovXG4gIHNob3dTdWJtaXRCdXR0b24/OiBib29sZWFuO1xuICAvKipcbiAgICogIHVzZWQgdG8gcGFzcyBkYXRhLSogcHJvcHMgdG8gdGhlIHNlbGVjdCBjb21wb25lbnQuXG4gICAqIGVnOiBzZWxlY3REYXRhUHJvcHM9e1t7ICdwcm9wLTEnOiAndmFsdWUtMScgfSwgeyAncHJvcC0yJzogJ3ZhbHVlLTInIH1dfVxuICAgKi9cbiAgc2VsZWN0RGF0YVByb3BzPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgLyoqXG4gICAqICB1c2VkIHRvIHBhc3MgZGF0YS0qIHByb3BzIHRvIHRoZSBpbnB1dCBlbGVtZW50LlxuICAgKiBlZzogaW5wdXREYXRhUHJvcHM9e1t7ICdwcm9wLTEnOiAndmFsdWUtMScgfSwgeyAncHJvcC0yJzogJ3ZhbHVlLTInIH1dfVxuICAgKi9cbiAgaW5wdXREYXRhUHJvcHM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xufTtcblxuY29uc3QgZGVmYXVsdFByb3BzOiBQaWNrPFxuICBUU2VsZWN0YWJsZVNlYXJjaElucHV0UHJvcHMsXG4gIHwgJ2hvcml6b250YWxDb25zdHJhaW50J1xuICB8ICdpc0NsZWFyYWJsZSdcbiAgfCAnbWVudUhvcml6b250YWxDb25zdHJhaW50J1xuICB8ICdzaG93U3VibWl0QnV0dG9uJ1xuICB8ICdtZW51UG9ydGFsWkluZGV4J1xuICB8ICdvcHRpb25zJ1xuPiA9IHtcbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQ6ICdzY2FsZScsXG4gIGlzQ2xlYXJhYmxlOiB0cnVlLFxuICBtZW51SG9yaXpvbnRhbENvbnN0cmFpbnQ6IDMsXG4gIHNob3dTdWJtaXRCdXR0b246IHRydWUsXG4gIG1lbnVQb3J0YWxaSW5kZXg6IDEsXG4gIG9wdGlvbnM6IFtdLFxufTtcblxuY29uc3Qgc2VsZWN0YWJsZVNlYXJjaElucHV0U2VxdWVudGlhbElkID0gY3JlYXRlU2VxdWVudGlhbElkKFxuICAnc2VsZWN0YWJsZS1zZWFyY2gtaW5wdXQtJ1xuKTtcblxuY29uc3QgaXNPcHRpb25PYmplY3QgPSAoXG4gIG9wdGlvbjogVE9wdGlvbiB8IFRPcHRpb25PYmplY3Rcbik6IG9wdGlvbiBpcyBUT3B0aW9uT2JqZWN0ID0+IChvcHRpb24gYXMgVE9wdGlvbk9iamVjdCkub3B0aW9ucyAhPT0gdW5kZWZpbmVkO1xuXG5jb25zdCB0cmFuc2Zvcm1EYXRhUHJvcHMgPSAoZGF0YVByb3BzPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPikgPT5cbiAgT2JqZWN0LmZyb21FbnRyaWVzKFxuICAgIE9iamVjdC5lbnRyaWVzKGRhdGFQcm9wcyB8fCB7fSkubWFwKChba2V5LCB2YWx1ZV0pID0+IFtcbiAgICAgIGBkYXRhLSR7a2V5fWAsXG4gICAgICB2YWx1ZSxcbiAgICBdKVxuICApO1xuXG5jb25zdCBTZWxlY3RhYmxlU2VhcmNoSW5wdXQgPSAocHJvcHM6IFRTZWxlY3RhYmxlU2VhcmNoSW5wdXRQcm9wcykgPT4ge1xuICBjb25zdCBbZHJvcGRvd25IYXNGb2N1cywgdG9nZ2xlRHJvcGRvd25IYXNGb2N1c10gPSB1c2VUb2dnbGVTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtzZWFyY2hWYWx1ZSwgc2V0U2VhcmNoVmFsdWVdID0gdXNlU3RhdGUocHJvcHMudmFsdWUudGV4dCB8fCAnJyk7XG4gIGNvbnN0IGNvbnRhaW5lclJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbCk7XG4gIGNvbnN0IHRleHRJbnB1dFJlZiA9IHVzZVJlZjxIVE1MSW5wdXRFbGVtZW50PihudWxsKTtcblxuICBjb25zdCBsZWdhY3lEYXRhUHJvcHMgPSBmaWx0ZXJEYXRhQXR0cmlidXRlcyhwcm9wcyk7XG4gIGNvbnN0IHRyYW5zZm9ybWVkU2VsZWN0RGF0YVByb3BzID0gdHJhbnNmb3JtRGF0YVByb3BzKHByb3BzLnNlbGVjdERhdGFQcm9wcyk7XG4gIGNvbnN0IHRyYW5zZm9ybWVkSW5wdXREYXRhUHJvcHMgPSB0cmFuc2Zvcm1EYXRhUHJvcHMocHJvcHMuaW5wdXREYXRhUHJvcHMpO1xuXG4gIGNvbnN0IG9wdGlvbnNXaXRob3V0R3JvdXBzID0gcHJvcHMub3B0aW9ucy5mbGF0TWFwKChvcHRpb24pID0+IHtcbiAgICBpZiAoaXNPcHRpb25PYmplY3Qob3B0aW9uKSkge1xuICAgICAgcmV0dXJuIG9wdGlvbi5vcHRpb25zO1xuICAgIH1cbiAgICByZXR1cm4gb3B0aW9uO1xuICB9KTtcblxuICBjb25zdCBzZWxlY3RlZE9wdGlvbiA9IG9wdGlvbnNXaXRob3V0R3JvdXBzLmZpbmQoXG4gICAgKG9wdGlvbikgPT4gb3B0aW9uLnZhbHVlID09PSBwcm9wcy52YWx1ZS5vcHRpb25cbiAgKTtcblxuICBjb25zdCBzZWxlY3RhYmxTZWFyY2hJbnB1dElkID0gdXNlRmllbGRJZChcbiAgICBwcm9wcy5pZCxcbiAgICBzZWxlY3RhYmxlU2VhcmNoSW5wdXRTZXF1ZW50aWFsSWRcbiAgKTtcblxuICBpZiAoIXByb3BzLmlzUmVhZE9ubHkpIHtcbiAgICB3YXJuaW5nKFxuICAgICAgdHlwZW9mIHByb3BzLm9uQ2hhbmdlID09PSAnZnVuY3Rpb24nLFxuICAgICAgJ1NlbGVjdGFibGVTZWFyY2hJbnB1dDogYG9uQ2hhbmdlYCBpcyByZXF1aXJlZCB3aGVuIGlzIG5vdCByZWFkIG9ubHkuJ1xuICAgICk7XG4gIH1cblxuICB3YXJuSWZNZW51UG9ydGFsUHJvcHNBcmVNaXNzaW5nKHtcbiAgICBtZW51UG9ydGFsWkluZGV4OiBwcm9wcy5tZW51UG9ydGFsWkluZGV4LFxuICAgIG1lbnVQb3J0YWxUYXJnZXQ6IHByb3BzLm1lbnVQb3J0YWxUYXJnZXQsXG4gICAgY29tcG9uZW50TmFtZTogJ1NlbGVjdGFibGVTZWFyY2hJbnB1dCcsXG4gIH0pO1xuXG4gIGNvbnN0IHsgb25Gb2N1cywgb25CbHVyLCBuYW1lIH0gPSBwcm9wcztcbiAgY29uc3QgaGFuZGxlVGV4dElucHV0Rm9jdXMgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgaWYgKG9uRm9jdXMpIHtcbiAgICAgIG9uRm9jdXMoe1xuICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICBpZDogU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldFRleHRJbnB1dElkKHNlbGVjdGFibFNlYXJjaElucHV0SWQpLFxuICAgICAgICAgIG5hbWU6IGdldFRleHRJbnB1dE5hbWUobmFtZSksXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9XG4gIH0sIFtvbkZvY3VzLCBzZWxlY3RhYmxTZWFyY2hJbnB1dElkLCBuYW1lXSk7XG5cbiAgY29uc3QgaGFuZGxlVGV4dElucHV0Qmx1ciA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBpZiAob25CbHVyKSB7XG4gICAgICBvbkJsdXIoe1xuICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICBpZDogU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldFRleHRJbnB1dElkKHNlbGVjdGFibFNlYXJjaElucHV0SWQpLFxuICAgICAgICAgIG5hbWU6IGdldFRleHRJbnB1dE5hbWUobmFtZSksXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9XG4gIH0sIFtvbkJsdXIsIHNlbGVjdGFibFNlYXJjaElucHV0SWQsIG5hbWVdKTtcblxuICBjb25zdCBoYW5kbGVDbGVhciA9ICgpID0+IHtcbiAgICBzZXRTZWFyY2hWYWx1ZSgnJyk7XG4gICAgaWYgKHByb3BzLm9uUmVzZXQpIHtcbiAgICAgIHByb3BzLm9uUmVzZXQoKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlQ2hhbmdlID0gKGV2ZW50OiBDaGFuZ2VFdmVudDxIVE1MSW5wdXRFbGVtZW50PikgPT4ge1xuICAgIHNldFNlYXJjaFZhbHVlKGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgaWYgKHByb3BzLm9uQ2hhbmdlKSB7XG4gICAgICBwcm9wcy5vbkNoYW5nZSh7XG4gICAgICAgIHRhcmdldDoge1xuICAgICAgICAgIGlkOiBTZWxlY3RhYmxlU2VhcmNoSW5wdXQuZ2V0VGV4dElucHV0SWQoc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCksXG4gICAgICAgICAgbmFtZTogZ2V0VGV4dElucHV0TmFtZShwcm9wcy5uYW1lKSxcbiAgICAgICAgICB2YWx1ZTogZXZlbnQudGFyZ2V0LnZhbHVlLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGhhbmRsZVN1Ym1pdCA9IChcbiAgICBldmVudDpcbiAgICAgIHwgS2V5Ym9hcmRFdmVudDxIVE1MQnV0dG9uRWxlbWVudD5cbiAgICAgIHwgTW91c2VFdmVudDxIVE1MQnV0dG9uRWxlbWVudD5cbiAgICAgIHwgS2V5Ym9hcmRFdmVudDxIVE1MSW5wdXRFbGVtZW50PlxuICApID0+IHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGlmIChwcm9wcy5vblN1Ym1pdCkge1xuICAgICAgcHJvcHMub25TdWJtaXQoe1xuICAgICAgICB0ZXh0OiBzZWFyY2hWYWx1ZSxcbiAgICAgICAgb3B0aW9uOiBzZWxlY3RlZE9wdGlvbj8udmFsdWUgPz8gJycsXG4gICAgICB9KTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgZHJvcGRvd25OYW1lID0gZ2V0RHJvcGRvd25OYW1lKHByb3BzLm5hbWUpO1xuICBjb25zdCBkcm9wZG93bklkID0gU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldERyb3Bkb3duSWQoXG4gICAgc2VsZWN0YWJsU2VhcmNoSW5wdXRJZFxuICApO1xuXG4gIGNvbnN0IGhhbmRsZURyb3Bkb3duRm9jdXMgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgaWYgKG9uRm9jdXMpIHtcbiAgICAgIG9uRm9jdXMoe1xuICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICBpZDogZHJvcGRvd25JZCxcbiAgICAgICAgICBuYW1lOiBkcm9wZG93bk5hbWUsXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9XG4gICAgdG9nZ2xlRHJvcGRvd25IYXNGb2N1cyh0cnVlKTtcbiAgfSwgW29uRm9jdXMsIHRvZ2dsZURyb3Bkb3duSGFzRm9jdXMsIGRyb3Bkb3duTmFtZSwgZHJvcGRvd25JZF0pO1xuXG4gIGNvbnN0IGhhbmRsZURyb3Bkb3duQmx1ciA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBpZiAob25CbHVyKSB7XG4gICAgICBvbkJsdXIoe1xuICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICBpZDogZHJvcGRvd25JZCxcbiAgICAgICAgICBuYW1lOiBkcm9wZG93bk5hbWUsXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9XG4gICAgdG9nZ2xlRHJvcGRvd25IYXNGb2N1cyhmYWxzZSk7XG4gIH0sIFt0b2dnbGVEcm9wZG93bkhhc0ZvY3VzLCBvbkJsdXIsIGRyb3Bkb3duTmFtZSwgZHJvcGRvd25JZF0pO1xuXG4gIGNvbnN0IGhhbmRsZUNvbnRhaW5lckJsdXIgPSB1c2VDYWxsYmFjayhcbiAgICAoZXZlbnQpID0+IHtcbiAgICAgIC8vIGVuc3VyZXMgdGhhdCBib3RoIGZpZWxkcyBhcmUgbWFya2VkIGFzIHRvdWNoZWQgd2hlbiBvbmUgb2YgdGhlbVxuICAgICAgLy8gaXMgYmx1cnJlZFxuICAgICAgaWYgKFxuICAgICAgICB0eXBlb2Ygb25CbHVyID09PSAnZnVuY3Rpb24nICYmXG4gICAgICAgICFjb250YWluZXJSZWYuY3VycmVudD8uY29udGFpbnMoZXZlbnQucmVsYXRlZFRhcmdldClcbiAgICAgICkge1xuICAgICAgICBvbkJsdXIoe1xuICAgICAgICAgIHRhcmdldDoge1xuICAgICAgICAgICAgaWQ6IFNlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXREcm9wZG93bklkKHNlbGVjdGFibFNlYXJjaElucHV0SWQpLFxuICAgICAgICAgICAgbmFtZTogZ2V0RHJvcGRvd25OYW1lKG5hbWUpLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuICAgICAgICBvbkJsdXIoe1xuICAgICAgICAgIHRhcmdldDoge1xuICAgICAgICAgICAgaWQ6IFNlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXRUZXh0SW5wdXRJZChzZWxlY3RhYmxTZWFyY2hJbnB1dElkKSxcbiAgICAgICAgICAgIG5hbWU6IGdldFRleHRJbnB1dE5hbWUobmFtZSksXG4gICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSxcbiAgICBbb25CbHVyLCBzZWxlY3RhYmxTZWFyY2hJbnB1dElkLCBuYW1lXVxuICApO1xuXG4gIHJldHVybiAoXG4gICAgPENvbnN0cmFpbnRzLkhvcml6b250YWwgbWF4PXtwcm9wcy5ob3Jpem9udGFsQ29uc3RyYWludH0+XG4gICAgICA8Q29udGFpbmVyXG4gICAgICAgIHJlZj17Y29udGFpbmVyUmVmfVxuICAgICAgICBvbkJsdXI9e2hhbmRsZUNvbnRhaW5lckJsdXJ9XG4gICAgICAgIGRhdGEtdGVzdGlkPVwic2VsZWN0YWJsZS1zZWFyY2gtaW5wdXQtY29udGFpbmVyXCJcbiAgICAgID5cbiAgICAgICAgPENvbnN0cmFpbnRzLkhvcml6b250YWwgbWF4PXtwcm9wcy5tZW51SG9yaXpvbnRhbENvbnN0cmFpbnR9PlxuICAgICAgICAgIDxTZWxlY3RhYmxlU2VsZWN0XG4gICAgICAgICAgICB7Li4ucHJvcHN9XG4gICAgICAgICAgICBpZD17U2VsZWN0YWJsZVNlYXJjaElucHV0LmdldERyb3Bkb3duSWQoc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCl9XG4gICAgICAgICAgICBuYW1lPXtnZXREcm9wZG93bk5hbWUocHJvcHMubmFtZSl9XG4gICAgICAgICAgICBkcm9wZG93bkhhc0ZvY3VzPXtkcm9wZG93bkhhc0ZvY3VzfVxuICAgICAgICAgICAgaGFuZGxlRHJvcGRvd25Gb2N1cz17aGFuZGxlRHJvcGRvd25Gb2N1c31cbiAgICAgICAgICAgIGhhbmRsZURyb3Bkb3duQmx1cj17aGFuZGxlRHJvcGRvd25CbHVyfVxuICAgICAgICAgICAgdGV4dElucHV0UmVmPXt0ZXh0SW5wdXRSZWZ9XG4gICAgICAgICAgICBzZWxlY3RlZE9wdGlvbj17c2VsZWN0ZWRPcHRpb259XG4gICAgICAgICAgICBkYXRhUHJvcHM9e3RyYW5zZm9ybWVkU2VsZWN0RGF0YVByb3BzfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvQ29uc3RyYWludHMuSG9yaXpvbnRhbD5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNzcz17W1xuICAgICAgICAgICAgZ2V0U2VsZWN0YWJsZVNlYXJjaElucHV0Q29udGFpbmVyU3R5bGVzKHByb3BzKSxcbiAgICAgICAgICAgIGRyb3Bkb3duSGFzRm9jdXMgJiZcbiAgICAgICAgICAgICAgIXByb3BzLmlzUmVhZE9ubHkgJiZcbiAgICAgICAgICAgICAgY3NzYFxuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAke2Rlc2lnblRva2Vucy5ib3JkZXJDb2xvckZvcklucHV0V2hlbkZvY3VzZWR9O1xuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICR7ZGVzaWduVG9rZW5zLmJvcmRlckNvbG9yRm9ySW5wdXRXaGVuRm9jdXNlZH07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBgLFxuICAgICAgICAgIF19XG4gICAgICAgID5cbiAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgIHJlZj17dGV4dElucHV0UmVmfVxuICAgICAgICAgICAgaWQ9e1NlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXRUZXh0SW5wdXRJZChzZWxlY3RhYmxTZWFyY2hJbnB1dElkKX1cbiAgICAgICAgICAgIG5hbWU9e2dldFRleHRJbnB1dE5hbWUocHJvcHMubmFtZSl9XG4gICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICB2YWx1ZT17c2VhcmNoVmFsdWV9XG4gICAgICAgICAgICBvbkNoYW5nZT17aGFuZGxlQ2hhbmdlfVxuICAgICAgICAgICAgb25CbHVyPXtoYW5kbGVUZXh0SW5wdXRCbHVyfVxuICAgICAgICAgICAgb25Gb2N1cz17aGFuZGxlVGV4dElucHV0Rm9jdXN9XG4gICAgICAgICAgICBkaXNhYmxlZD17cHJvcHMuaXNEaXNhYmxlZH1cbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPXtwcm9wcy5wbGFjZWhvbGRlcn1cbiAgICAgICAgICAgIHJlYWRPbmx5PXtwcm9wcy5pc1JlYWRPbmx5fVxuICAgICAgICAgICAgYXV0b0ZvY3VzPXtwcm9wcy5pc0F1dG9mb2N1c3NlZH1cbiAgICAgICAgICAgIGF1dG9Db21wbGV0ZT17cHJvcHMuYXV0b0NvbXBsZXRlfVxuICAgICAgICAgICAgYXJpYS1yZWFkb25seT17cHJvcHMuaXNSZWFkT25seX1cbiAgICAgICAgICAgIGNvbnRlbnRFZGl0YWJsZT17IXByb3BzLmlzUmVhZE9ubHl9XG4gICAgICAgICAgICBjc3M9e2dldFNlbGVjdGFibGVTZWFyY2hJbnB1dFN0eWxlcyhwcm9wcyl9XG4gICAgICAgICAgICB7Li4udHJhbnNmb3JtZWRJbnB1dERhdGFQcm9wc31cbiAgICAgICAgICAgIHsuLi5sZWdhY3lEYXRhUHJvcHN9XG4gICAgICAgICAgICAvKiBBUklBICovXG4gICAgICAgICAgICBhcmlhLWludmFsaWQ9e3Byb3BzWydhcmlhLWludmFsaWQnXX1cbiAgICAgICAgICAgIGFyaWEtZXJyb3JtZXNzYWdlPXtwcm9wc1snYXJpYS1lcnJvcm1lc3NhZ2UnXX1cbiAgICAgICAgICAgIGRhdGEtdGVzdGlkPVwic2VsZWN0YWJsZS1pbnB1dFwiXG4gICAgICAgICAgICBvbktleURvd249eyhldmVudCkgPT4ge1xuICAgICAgICAgICAgICBpZiAoIXByb3BzLmlzUmVhZE9ubHkgJiYgZXZlbnQua2V5ID09PSAnRW50ZXInKSB7XG4gICAgICAgICAgICAgICAgaGFuZGxlU3VibWl0KGV2ZW50KTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAvPlxuICAgICAgICAgIHtwcm9wcy5pc0NsZWFyYWJsZSAmJlxuICAgICAgICAgICAgc2VhcmNoVmFsdWUgJiZcbiAgICAgICAgICAgICFwcm9wcy5pc0Rpc2FibGVkICYmXG4gICAgICAgICAgICAhcHJvcHMuaXNSZWFkT25seSAmJiAoXG4gICAgICAgICAgICAgIDxTZWNvbmRhcnlJY29uQnV0dG9uXG4gICAgICAgICAgICAgICAgaWNvbj17PENsb3NlSWNvbiAvPn1cbiAgICAgICAgICAgICAgICBzaXplPVwibWVkaXVtXCJcbiAgICAgICAgICAgICAgICBsYWJlbD17J2NsZWFyLWJ1dHRvbid9XG4gICAgICAgICAgICAgICAgb25DbGljaz17aGFuZGxlQ2xlYXJ9XG4gICAgICAgICAgICAgICAgY3NzPXtnZXRDbGVhckljb25CdXR0b25TdHlsZXMocHJvcHMpfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICB7cHJvcHMuc2hvd1N1Ym1pdEJ1dHRvbiAmJiAoXG4gICAgICAgICAgICA8U2Vjb25kYXJ5SWNvbkJ1dHRvblxuICAgICAgICAgICAgICBpY29uPXs8U2VhcmNoSWNvbiAvPn1cbiAgICAgICAgICAgICAgbGFiZWw9eydzZWFyY2gtYnV0dG9uJ31cbiAgICAgICAgICAgICAgb25DbGljaz17aGFuZGxlU3VibWl0fVxuICAgICAgICAgICAgICBjc3M9e2dldFNlYXJjaEljb25CdXR0b25TdHlsZXMocHJvcHMpfVxuICAgICAgICAgICAgICBpc0Rpc2FibGVkPXtwcm9wcy5pc0Rpc2FibGVkfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvQ29udGFpbmVyPlxuICAgIDwvQ29uc3RyYWludHMuSG9yaXpvbnRhbD5cbiAgKTtcbn07XG5cblNlbGVjdGFibGVTZWFyY2hJbnB1dC5kaXNwbGF5TmFtZSA9ICdTZWxlY3RhYmxlU2VhcmNoSW5wdXQnO1xuU2VsZWN0YWJsZVNlYXJjaElucHV0LmRlZmF1bHRQcm9wcyA9IGRlZmF1bHRQcm9wcztcblNlbGVjdGFibGVTZWFyY2hJbnB1dC5pc0VtcHR5ID0gKFxuICBmb3JtVmFsdWU6IFRTZWxlY3RhYmxlU2VhcmNoSW5wdXRQcm9wc1sndmFsdWUnXVxuKSA9PiAhZm9ybVZhbHVlIHx8IGZvcm1WYWx1ZS50ZXh0LnRyaW0oKSA9PT0gJyc7XG5TZWxlY3RhYmxlU2VhcmNoSW5wdXQuZ2V0VGV4dElucHV0SWQgPSBnZXRUZXh0SW5wdXROYW1lO1xuU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldERyb3Bkb3duSWQgPSBnZXREcm9wZG93bk5hbWU7XG5cbmV4cG9ydCBkZWZhdWx0IFNlbGVjdGFibGVTZWFyY2hJbnB1dDtcbiJdfQ== */",
|
|
261
269
|
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
262
270
|
});
|
|
263
271
|
const getTextInputName = name => name ? "".concat(name, ".textInput") : undefined;
|
|
@@ -272,8 +280,17 @@ const defaultProps = {
|
|
|
272
280
|
};
|
|
273
281
|
const selectableSearchInputSequentialId = createSequentialId('selectable-search-input-');
|
|
274
282
|
const isOptionObject = option => option.options !== undefined;
|
|
275
|
-
const
|
|
283
|
+
const transformDataProps = dataProps => {
|
|
276
284
|
var _context;
|
|
285
|
+
return _Object$fromEntries(_mapInstanceProperty(_context = _Object$entries(dataProps || {})).call(_context, _ref => {
|
|
286
|
+
let _ref2 = _slicedToArray(_ref, 2),
|
|
287
|
+
key = _ref2[0],
|
|
288
|
+
value = _ref2[1];
|
|
289
|
+
return ["data-".concat(key), value];
|
|
290
|
+
}));
|
|
291
|
+
};
|
|
292
|
+
const SelectableSearchInput = props => {
|
|
293
|
+
var _context2;
|
|
277
294
|
const _useToggleState = useToggleState(false),
|
|
278
295
|
_useToggleState2 = _slicedToArray(_useToggleState, 2),
|
|
279
296
|
dropdownHasFocus = _useToggleState2[0],
|
|
@@ -284,7 +301,10 @@ const SelectableSearchInput = props => {
|
|
|
284
301
|
setSearchValue = _useState2[1];
|
|
285
302
|
const containerRef = useRef(null);
|
|
286
303
|
const textInputRef = useRef(null);
|
|
287
|
-
const
|
|
304
|
+
const legacyDataProps = filterDataAttributes(props);
|
|
305
|
+
const transformedSelectDataProps = transformDataProps(props.selectDataProps);
|
|
306
|
+
const transformedInputDataProps = transformDataProps(props.inputDataProps);
|
|
307
|
+
const optionsWithoutGroups = _flatMapInstanceProperty(_context2 = props.options).call(_context2, option => {
|
|
288
308
|
if (isOptionObject(option)) {
|
|
289
309
|
return option.options;
|
|
290
310
|
}
|
|
@@ -409,11 +429,12 @@ const SelectableSearchInput = props => {
|
|
|
409
429
|
handleDropdownFocus: handleDropdownFocus,
|
|
410
430
|
handleDropdownBlur: handleDropdownBlur,
|
|
411
431
|
textInputRef: textInputRef,
|
|
412
|
-
selectedOption: selectedOption
|
|
432
|
+
selectedOption: selectedOption,
|
|
433
|
+
dataProps: transformedSelectDataProps
|
|
413
434
|
}))
|
|
414
435
|
}), jsxs("div", {
|
|
415
|
-
css: [getSelectableSearchInputContainerStyles(props), dropdownHasFocus && !props.isReadOnly && /*#__PURE__*/css("border-left-color:", designTokens.borderColorForInputWhenFocused, ";&:hover{border-left-color:", designTokens.borderColorForInputWhenFocused, ";}" + (process.env.NODE_ENV === "production" ? "" : ";label:SelectableSearchInput;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNlbGVjdGFibGUtc2VhcmNoLWlucHV0LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFzWmlCIiwiZmlsZSI6InNlbGVjdGFibGUtc2VhcmNoLWlucHV0LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIHR5cGUgTW91c2VFdmVudCxcbiAgdHlwZSBLZXlib2FyZEV2ZW50LFxuICB0eXBlIENoYW5nZUV2ZW50LFxuICB0eXBlIFJlYWN0Tm9kZSxcbiAgdXNlU3RhdGUsXG4gIHVzZUNhbGxiYWNrLFxuICB1c2VSZWYsXG59IGZyb20gJ3JlYWN0JztcbmltcG9ydCBTZWNvbmRhcnlJY29uQnV0dG9uIGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3NlY29uZGFyeS1pY29uLWJ1dHRvbic7XG5pbXBvcnQgQ29uc3RyYWludHMgZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvY29uc3RyYWludHMnO1xuaW1wb3J0IHsgU2VhcmNoSWNvbiwgQ2xvc2VJY29uIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvaWNvbnMnO1xuaW1wb3J0IHtcbiAgY3JlYXRlU2VxdWVudGlhbElkLFxuICBmaWx0ZXJEYXRhQXR0cmlidXRlcyxcbiAgd2FybmluZyxcbn0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvdXRpbHMnO1xuaW1wb3J0IHsgd2FybklmTWVudVBvcnRhbFByb3BzQXJlTWlzc2luZyB9IGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3NlbGVjdC11dGlscyc7XG5pbXBvcnQge1xuICBnZXRDbGVhckljb25CdXR0b25TdHlsZXMsXG4gIGdldFNlYXJjaEljb25CdXR0b25TdHlsZXMsXG4gIGdldFNlbGVjdGFibGVTZWFyY2hJbnB1dENvbnRhaW5lclN0eWxlcyxcbiAgZ2V0U2VsZWN0YWJsZVNlYXJjaElucHV0U3R5bGVzLFxufSBmcm9tICcuL3NlbGVjdGFibGUtc2VhcmNoLWlucHV0LnN0eWxlcyc7XG5pbXBvcnQgU2VsZWN0YWJsZVNlbGVjdCBmcm9tICcuL3NlbGVjdGFibGUtc2VsZWN0JztcbmltcG9ydCB7IHVzZUZpZWxkSWQsIHVzZVRvZ2dsZVN0YXRlIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvaG9va3MnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgZGVzaWduVG9rZW5zIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvZGVzaWduLXN5c3RlbSc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgeyB0eXBlIFByb3BzIGFzIFJlYWN0U2VsZWN0UHJvcHMgfSBmcm9tICdyZWFjdC1zZWxlY3QnO1xuXG5jb25zdCBDb250YWluZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuYDtcblxuY29uc3QgZ2V0VGV4dElucHV0TmFtZSA9IChuYW1lPzogc3RyaW5nKSA9PlxuICBuYW1lID8gYCR7bmFtZX0udGV4dElucHV0YCA6IHVuZGVmaW5lZDtcblxuY29uc3QgZ2V0RHJvcGRvd25OYW1lID0gKG5hbWU/OiBzdHJpbmcpID0+XG4gIG5hbWUgPyBgJHtuYW1lfS5kcm9wZG93bmAgOiB1bmRlZmluZWQ7XG5cbmV4cG9ydCB0eXBlIFRDdXN0b21FdmVudCA9IHtcbiAgdGFyZ2V0OiB7XG4gICAgaWQ/OiBzdHJpbmc7XG4gICAgbmFtZT86IHN0cmluZztcbiAgICB2YWx1ZT86IHN0cmluZyB8IHN0cmluZ1tdIHwgbnVsbDtcbiAgfTtcbiAgcGVyc2lzdD86ICgpID0+IHZvaWQ7XG59O1xuXG5leHBvcnQgdHlwZSBUVmFsdWUgPSB7XG4gIHRleHQ6IHN0cmluZztcbiAgb3B0aW9uOiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBUT3B0aW9uID0ge1xuICB2YWx1ZTogc3RyaW5nO1xuICBsYWJlbD86IFJlYWN0Tm9kZTtcbn07XG5cbmV4cG9ydCB0eXBlIFRPcHRpb25PYmplY3QgPSB7XG4gIG9wdGlvbnM6IFRPcHRpb25bXTtcbn07XG5cbmV4cG9ydCB0eXBlIFRPcHRpb25zID0gVE9wdGlvbltdIHwgVE9wdGlvbk9iamVjdFtdO1xuXG5leHBvcnQgdHlwZSBUU2VsZWN0YWJsZVNlYXJjaElucHV0UHJvcHMgPSB7XG4gIC8qKlxuICAgKiBVc2VkIGFzIEhUTUwgaWQgcHJvcGVydHkuIEFuIGlkIGlzIGF1dG8tZ2VuZXJhdGVkIHdoZW4gaXQgaXMgbm90IHNwZWNpZmllZC5cbiAgICovXG4gIGlkPzogc3RyaW5nO1xuICAvKipcbiAgICogVXNlZCBhcyBIVE1MIGF1dG9jb21wbGV0ZSBwcm9wZXJ0eVxuICAgKi9cbiAgYXV0b0NvbXBsZXRlPzogc3RyaW5nO1xuICAvKipcbiAgICogSW5kaWNhdGUgaWYgdGhlIHZhbHVlIGVudGVyZWQgaW4gdGhlIGlucHV0IGlzIGludmFsaWQuXG4gICAqL1xuICAnYXJpYS1pbnZhbGlkJz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBIVE1MIElEIG9mIGFuIGVsZW1lbnQgY29udGFpbmluZyBhbiBlcnJvciBtZXNzYWdlIHJlbGF0ZWQgdG8gdGhlIGlucHV0LlxuICAgKi9cbiAgJ2FyaWEtZXJyb3JtZXNzYWdlJz86IHN0cmluZztcbiAgLyoqXG4gICAqIFVzZWQgYXMgSFRNTCBuYW1lIG9mIHRoZSBpbnB1dCBjb21wb25lbnQgcHJvcGVydHkuXG4gICAqL1xuICBuYW1lPzogc3RyaW5nO1xuICAvKipcbiAgICogVmFsdWUgb2YgdGhlIGlucHV0LiBDb25zaXN0cyBvZiB0ZXh0IGlucHV0IGFuZCBzZWxlY3RlZCBvcHRpb24uXG4gICAqL1xuICB2YWx1ZTogVFZhbHVlO1xuICAvKipcbiAgICogQ2FsbGVkIHdpdGggdGhlIGV2ZW50IG9mIHRoZSBpbnB1dCBvciBkcm9wZG93biB3aGVuIGVpdGhlciB0aGUgc2VsZWN0YWJsZSBkcm9wZG93biBvciB0aGUgdGV4dCBpbnB1dCBoYXZlIGNoYW5nZWQuXG4gICAqIFRoZSBjaGFuZ2UgZXZlbnQgZnJvbSB0aGUgdGV4dCBpbnB1dCBoYXMgYSBzdWZmaXggb2YgYC50ZXh0SW5wdXRgIGFuZCB0aGUgY2hhbmdlIGV2ZW50IGZyb20gdGhlIGRyb3Bkb3duIGhhcyBhIHN1ZmZpeCBvZiBgLmRyb3Bkb3duYC5cbiAgICovXG4gIG9uQ2hhbmdlPzogKGV2ZW50OiBUQ3VzdG9tRXZlbnQpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiBpbnB1dCBpcyBibHVycmVkXG4gICAqL1xuICBvbkJsdXI/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGlucHV0IGlzIGZvY3VzZWRcbiAgICovXG4gIG9uRm9jdXM/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIEhhbmRsZXIgd2hlbiB0aGUgc2VhcmNoIGJ1dHRvbiBpcyBjbGlja2VkLlxuICAgKi9cbiAgb25TdWJtaXQ6ICh2YWx1ZTogVFZhbHVlKSA9PiB2b2lkO1xuICAvKipcbiAgICogSGFuZGxlciB3aGVuIHRoZSBjbGVhciBidXR0b24gaXMgY2xpY2tlZC5cbiAgICovXG4gIG9uUmVzZXQ/OiAoKSA9PiB2b2lkO1xuICAvKipcbiAgICogRm9jdXMgdGhlIGlucHV0IG9uIGluaXRpYWwgcmVuZGVyXG4gICAqL1xuICBpc0F1dG9mb2N1c3NlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgdGhhdCB0aGUgaW5wdXQgY2Fubm90IGJlIG1vZGlmaWVkIChlLmcgbm90IGF1dGhvcml6ZWQsIG9yIGNoYW5nZXMgY3VycmVudGx5IHNhdmluZykuXG4gICAqL1xuICBpc0Rpc2FibGVkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGF0IHRoZSBmaWVsZCBpcyBkaXNwbGF5aW5nIHJlYWQtb25seSBjb250ZW50XG4gICAqL1xuICBpc1JlYWRPbmx5PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyBpZiB0aGUgaW5wdXQgaGFzIGludmFsaWQgdmFsdWVzXG4gICAqL1xuICBoYXNFcnJvcj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaWYgdGhlIGlucHV0IGhhcyB3YXJuaW5nIHZhbHVlc1xuICAgKi9cbiAgaGFzV2FybmluZz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBQbGFjZWhvbGRlciB0ZXh0IGZvciB0aGUgaW5wdXRcbiAgICovXG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xuICAvKipcbiAgICogSW5kaWNhdGVzIGlmIHRoZSBpbnB1dCBzaG91bGQgYmUgY2xlYXJlZCB3aGVuIHRoZSBjbGVhciBidXR0b24gaXMgY2xpY2tlZC5cbiAgICogRGVmYXVsdHMgdG8gdHJ1ZS5cbiAgICpcbiAgICovXG4gIGlzQ2xlYXJhYmxlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEhvcml6b250YWwgc2l6ZSBsaW1pdCBvZiB0aGUgaW5wdXQgZmllbGRzLlxuICAgKi9cbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQ/OiAxMCB8IDExIHwgMTIgfCAxMyB8IDE0IHwgMTUgfCAxNiB8ICdzY2FsZScgfCAnYXV0byc7XG4gIC8qKlxuICAgKiBBcnJheSBvZiBvcHRpb25zIHRoYXQgcG9wdWxhdGUgdGhlIHNlbGVjdCBtZW51XG4gICAqL1xuICBvcHRpb25zOiBUT3B0aW9ucztcbiAgLyoqXG4gICAqIHotaW5kZXggdmFsdWUgZm9yIHRoZSBtZW51IHBvcnRhbFxuICAgKiA8YnI+XG4gICAqIFVzZSBpbiBjb25qdW5jdGlvbiB3aXRoIGBtZW51UG9ydGFsVGFyZ2V0YFxuICAgKi9cbiAgbWVudVBvcnRhbFpJbmRleD86IG51bWJlcjtcbiAgLyoqXG4gICAqIERvbSBlbGVtZW50IHRvIHBvcnRhbCB0aGUgc2VsZWN0IG1lbnUgdG9cbiAgICogPGJyPlxuICAgKiBbUHJvcHMgZnJvbSBSZWFjdCBzZWxlY3Qgd2FzIHVzZWRdKGh0dHBzOi8vcmVhY3Qtc2VsZWN0LmNvbS9wcm9wcylcbiAgICovXG4gIG1lbnVQb3J0YWxUYXJnZXQ/OiBSZWFjdFNlbGVjdFByb3BzWydtZW51UG9ydGFsVGFyZ2V0J107XG4gIC8qKlxuICAgKiB3aGV0aGVyIHRoZSBtZW51IHNob3VsZCBibG9jayBzY3JvbGwgd2hpbGUgb3BlblxuICAgKiA8YnI+XG4gICAqIFtQcm9wcyBmcm9tIFJlYWN0IHNlbGVjdCB3YXMgdXNlZF0oaHR0cHM6Ly9yZWFjdC1zZWxlY3QuY29tL3Byb3BzKVxuICAgKi9cbiAgbWVudVNob3VsZEJsb2NrU2Nyb2xsPzogUmVhY3RTZWxlY3RQcm9wc1snbWVudVNob3VsZEJsb2NrU2Nyb2xsJ107XG4gIC8qKlxuICAgKiBIYW5kbGUgY2hhbmdlIGV2ZW50cyBvbiB0aGUgbWVudSBpbnB1dFxuICAgKiA8YnI+XG4gICAqIFtQcm9wcyBmcm9tIFJlYWN0IHNlbGVjdCB3YXMgdXNlZF0oaHR0cHM6Ly9yZWFjdC1zZWxlY3QuY29tL3Byb3BzKVxuICAgKi9cbiAgb25NZW51SW5wdXRDaGFuZ2U/OiBSZWFjdFNlbGVjdFByb3BzWydvbklucHV0Q2hhbmdlJ107XG4gIC8qKlxuICAgKiBDYW4gYmUgdXNlZCB0byByZW5kZXIgYSBjdXN0b20gdmFsdWUgd2hlbiB0aGVyZSBhcmUgbm8gb3B0aW9ucyAoZWl0aGVyIGJlY2F1c2Ugb2Ygbm8gc2VhcmNoIHJlc3VsdHMsIG9yIGFsbCBvcHRpb25zIGhhdmUgYmVlbiB1c2VkLCBvciB0aGVyZSB3ZXJlIG5vbmUgaW4gdGhlIGZpcnN0IHBsYWNlKS4gR2V0cyBjYWxsZWQgd2l0aCB7IGlucHV0VmFsdWU6IFN0cmluZyB9LlxuICAgKiA8YnIgLz5cbiAgICogYGlucHV0VmFsdWVgIHdpbGwgYmUgYW4gZW1wdHkgc3RyaW5nIHdoZW4gbm8gc2VhcmNoIHRleHQgaXMgcHJlc2VudC5cbiAgICogPGJyPlxuICAgKiBbUHJvcHMgZnJvbSBSZWFjdCBzZWxlY3Qgd2FzIHVzZWRdKGh0dHBzOi8vcmVhY3Qtc2VsZWN0LmNvbS9wcm9wcylcbiAgICovXG4gIG5vTWVudU9wdGlvbnNNZXNzYWdlPzogUmVhY3RTZWxlY3RQcm9wc1snbm9PcHRpb25zTWVzc2FnZSddO1xuICAvKipcbiAgICogV2hldGhlciB0byBlbmFibGUgc2VhcmNoIGZ1bmN0aW9uYWxpdHkuXG4gICAqIDxicj5cbiAgICogW1Byb3BzIGZyb20gUmVhY3Qgc2VsZWN0IHdhcyB1c2VkXShodHRwczovL3JlYWN0LXNlbGVjdC5jb20vcHJvcHMpXG4gICAqL1xuICBpc01lbnVTZWFyY2hhYmxlPzogUmVhY3RTZWxlY3RQcm9wc1snaXNTZWFyY2hhYmxlJ107XG4gIC8qKlxuICAgKiBNYXhpbXVtIGhlaWdodCBvZiB0aGUgbWVudSBiZWZvcmUgc2Nyb2xsaW5nXG4gICAqIDxicj5cbiAgICogW1Byb3BzIGZyb20gUmVhY3Qgc2VsZWN0IHdhcyB1c2VkXShodHRwczovL3JlYWN0LXNlbGVjdC5jb20vcHJvcHMpXG4gICAqL1xuICBtYXhNZW51SGVpZ2h0PzogUmVhY3RTZWxlY3RQcm9wc1snbWF4TWVudUhlaWdodCddO1xuICAvKipcbiAgICogV2hldGhlciB0aGUgbWVudSBzaG91bGQgY2xvc2UgYWZ0ZXIgYSB2YWx1ZSBpcyBzZWxlY3RlZC4gRGVmYXVsdHMgdG8gYHRydWVgLlxuICAgKiA8YnI+XG4gICAqIFtQcm9wcyBmcm9tIFJlYWN0IHNlbGVjdCB3YXMgdXNlZF0oaHR0cHM6Ly9yZWFjdC1zZWxlY3QuY29tL3Byb3BzKVxuICAgKi9cbiAgY2xvc2VNZW51T25TZWxlY3Q/OiBSZWFjdFNlbGVjdFByb3BzWydjbG9zZU1lbnVPblNlbGVjdCddO1xuICAvKipcbiAgICogSG9yaXpvbnRhbCBzaXplIGxpbWl0IGZvciB0aGUgZHJvcGRvd24gbWVudS5cbiAgICovXG4gIG1lbnVIb3Jpem9udGFsQ29uc3RyYWludD86IDMgfCA0IHwgNTtcbiAgLyoqXG4gICAqIFNob3cgc3VibWl0IGJ1dHRvbiBpbiB0aGUgaW5wdXRcbiAgICovXG4gIHNob3dTdWJtaXRCdXR0b24/OiBib29sZWFuO1xufTtcblxuY29uc3QgZGVmYXVsdFByb3BzOiBQaWNrPFxuICBUU2VsZWN0YWJsZVNlYXJjaElucHV0UHJvcHMsXG4gIHwgJ2hvcml6b250YWxDb25zdHJhaW50J1xuICB8ICdpc0NsZWFyYWJsZSdcbiAgfCAnbWVudUhvcml6b250YWxDb25zdHJhaW50J1xuICB8ICdzaG93U3VibWl0QnV0dG9uJ1xuICB8ICdtZW51UG9ydGFsWkluZGV4J1xuICB8ICdvcHRpb25zJ1xuPiA9IHtcbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQ6ICdzY2FsZScsXG4gIGlzQ2xlYXJhYmxlOiB0cnVlLFxuICBtZW51SG9yaXpvbnRhbENvbnN0cmFpbnQ6IDMsXG4gIHNob3dTdWJtaXRCdXR0b246IHRydWUsXG4gIG1lbnVQb3J0YWxaSW5kZXg6IDEsXG4gIG9wdGlvbnM6IFtdLFxufTtcblxuY29uc3Qgc2VsZWN0YWJsZVNlYXJjaElucHV0U2VxdWVudGlhbElkID0gY3JlYXRlU2VxdWVudGlhbElkKFxuICAnc2VsZWN0YWJsZS1zZWFyY2gtaW5wdXQtJ1xuKTtcblxuY29uc3QgaXNPcHRpb25PYmplY3QgPSAoXG4gIG9wdGlvbjogVE9wdGlvbiB8IFRPcHRpb25PYmplY3Rcbik6IG9wdGlvbiBpcyBUT3B0aW9uT2JqZWN0ID0+IChvcHRpb24gYXMgVE9wdGlvbk9iamVjdCkub3B0aW9ucyAhPT0gdW5kZWZpbmVkO1xuXG5jb25zdCBTZWxlY3RhYmxlU2VhcmNoSW5wdXQgPSAocHJvcHM6IFRTZWxlY3RhYmxlU2VhcmNoSW5wdXRQcm9wcykgPT4ge1xuICBjb25zdCBbZHJvcGRvd25IYXNGb2N1cywgdG9nZ2xlRHJvcGRvd25IYXNGb2N1c10gPSB1c2VUb2dnbGVTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtzZWFyY2hWYWx1ZSwgc2V0U2VhcmNoVmFsdWVdID0gdXNlU3RhdGUocHJvcHMudmFsdWUudGV4dCB8fCAnJyk7XG4gIGNvbnN0IGNvbnRhaW5lclJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbCk7XG4gIGNvbnN0IHRleHRJbnB1dFJlZiA9IHVzZVJlZjxIVE1MSW5wdXRFbGVtZW50PihudWxsKTtcblxuICBjb25zdCBvcHRpb25zV2l0aG91dEdyb3VwcyA9IHByb3BzLm9wdGlvbnMuZmxhdE1hcCgob3B0aW9uKSA9PiB7XG4gICAgaWYgKGlzT3B0aW9uT2JqZWN0KG9wdGlvbikpIHtcbiAgICAgIHJldHVybiBvcHRpb24ub3B0aW9ucztcbiAgICB9XG4gICAgcmV0dXJuIG9wdGlvbjtcbiAgfSk7XG5cbiAgY29uc3Qgc2VsZWN0ZWRPcHRpb24gPSBvcHRpb25zV2l0aG91dEdyb3Vwcy5maW5kKFxuICAgIChvcHRpb24pID0+IG9wdGlvbi52YWx1ZSA9PT0gcHJvcHMudmFsdWUub3B0aW9uXG4gICk7XG5cbiAgY29uc3Qgc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCA9IHVzZUZpZWxkSWQoXG4gICAgcHJvcHMuaWQsXG4gICAgc2VsZWN0YWJsZVNlYXJjaElucHV0U2VxdWVudGlhbElkXG4gICk7XG5cbiAgaWYgKCFwcm9wcy5pc1JlYWRPbmx5KSB7XG4gICAgd2FybmluZyhcbiAgICAgIHR5cGVvZiBwcm9wcy5vbkNoYW5nZSA9PT0gJ2Z1bmN0aW9uJyxcbiAgICAgICdTZWxlY3RhYmxlU2VhcmNoSW5wdXQ6IGBvbkNoYW5nZWAgaXMgcmVxdWlyZWQgd2hlbiBpcyBub3QgcmVhZCBvbmx5LidcbiAgICApO1xuICB9XG5cbiAgd2FybklmTWVudVBvcnRhbFByb3BzQXJlTWlzc2luZyh7XG4gICAgbWVudVBvcnRhbFpJbmRleDogcHJvcHMubWVudVBvcnRhbFpJbmRleCxcbiAgICBtZW51UG9ydGFsVGFyZ2V0OiBwcm9wcy5tZW51UG9ydGFsVGFyZ2V0LFxuICAgIGNvbXBvbmVudE5hbWU6ICdTZWxlY3RhYmxlU2VhcmNoSW5wdXQnLFxuICB9KTtcblxuICBjb25zdCB7IG9uRm9jdXMsIG9uQmx1ciwgbmFtZSB9ID0gcHJvcHM7XG4gIGNvbnN0IGhhbmRsZVRleHRJbnB1dEZvY3VzID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIGlmIChvbkZvY3VzKSB7XG4gICAgICBvbkZvY3VzKHtcbiAgICAgICAgdGFyZ2V0OiB7XG4gICAgICAgICAgaWQ6IFNlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXRUZXh0SW5wdXRJZChzZWxlY3RhYmxTZWFyY2hJbnB1dElkKSxcbiAgICAgICAgICBuYW1lOiBnZXRUZXh0SW5wdXROYW1lKG5hbWUpLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfVxuICB9LCBbb25Gb2N1cywgc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCwgbmFtZV0pO1xuXG4gIGNvbnN0IGhhbmRsZVRleHRJbnB1dEJsdXIgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgaWYgKG9uQmx1cikge1xuICAgICAgb25CbHVyKHtcbiAgICAgICAgdGFyZ2V0OiB7XG4gICAgICAgICAgaWQ6IFNlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXRUZXh0SW5wdXRJZChzZWxlY3RhYmxTZWFyY2hJbnB1dElkKSxcbiAgICAgICAgICBuYW1lOiBnZXRUZXh0SW5wdXROYW1lKG5hbWUpLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfVxuICB9LCBbb25CbHVyLCBzZWxlY3RhYmxTZWFyY2hJbnB1dElkLCBuYW1lXSk7XG5cbiAgY29uc3QgaGFuZGxlQ2xlYXIgPSAoKSA9PiB7XG4gICAgc2V0U2VhcmNoVmFsdWUoJycpO1xuICAgIGlmIChwcm9wcy5vblJlc2V0KSB7XG4gICAgICBwcm9wcy5vblJlc2V0KCk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUNoYW5nZSA9IChldmVudDogQ2hhbmdlRXZlbnQ8SFRNTElucHV0RWxlbWVudD4pID0+IHtcbiAgICBzZXRTZWFyY2hWYWx1ZShldmVudC50YXJnZXQudmFsdWUpO1xuICAgIGlmIChwcm9wcy5vbkNoYW5nZSkge1xuICAgICAgcHJvcHMub25DaGFuZ2Uoe1xuICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICBpZDogU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldFRleHRJbnB1dElkKHNlbGVjdGFibFNlYXJjaElucHV0SWQpLFxuICAgICAgICAgIG5hbWU6IGdldFRleHRJbnB1dE5hbWUocHJvcHMubmFtZSksXG4gICAgICAgICAgdmFsdWU6IGV2ZW50LnRhcmdldC52YWx1ZSxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBoYW5kbGVTdWJtaXQgPSAoXG4gICAgZXZlbnQ6XG4gICAgICB8IEtleWJvYXJkRXZlbnQ8SFRNTEJ1dHRvbkVsZW1lbnQ+XG4gICAgICB8IE1vdXNlRXZlbnQ8SFRNTEJ1dHRvbkVsZW1lbnQ+XG4gICAgICB8IEtleWJvYXJkRXZlbnQ8SFRNTElucHV0RWxlbWVudD5cbiAgKSA9PiB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICBpZiAocHJvcHMub25TdWJtaXQpIHtcbiAgICAgIHByb3BzLm9uU3VibWl0KHtcbiAgICAgICAgdGV4dDogc2VhcmNoVmFsdWUsXG4gICAgICAgIG9wdGlvbjogc2VsZWN0ZWRPcHRpb24/LnZhbHVlID8/ICcnLFxuICAgICAgfSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGRyb3Bkb3duTmFtZSA9IGdldERyb3Bkb3duTmFtZShwcm9wcy5uYW1lKTtcbiAgY29uc3QgZHJvcGRvd25JZCA9IFNlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXREcm9wZG93bklkKFxuICAgIHNlbGVjdGFibFNlYXJjaElucHV0SWRcbiAgKTtcblxuICBjb25zdCBoYW5kbGVEcm9wZG93bkZvY3VzID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIGlmIChvbkZvY3VzKSB7XG4gICAgICBvbkZvY3VzKHtcbiAgICAgICAgdGFyZ2V0OiB7XG4gICAgICAgICAgaWQ6IGRyb3Bkb3duSWQsXG4gICAgICAgICAgbmFtZTogZHJvcGRvd25OYW1lLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfVxuICAgIHRvZ2dsZURyb3Bkb3duSGFzRm9jdXModHJ1ZSk7XG4gIH0sIFtvbkZvY3VzLCB0b2dnbGVEcm9wZG93bkhhc0ZvY3VzLCBkcm9wZG93bk5hbWUsIGRyb3Bkb3duSWRdKTtcblxuICBjb25zdCBoYW5kbGVEcm9wZG93bkJsdXIgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgaWYgKG9uQmx1cikge1xuICAgICAgb25CbHVyKHtcbiAgICAgICAgdGFyZ2V0OiB7XG4gICAgICAgICAgaWQ6IGRyb3Bkb3duSWQsXG4gICAgICAgICAgbmFtZTogZHJvcGRvd25OYW1lLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfVxuICAgIHRvZ2dsZURyb3Bkb3duSGFzRm9jdXMoZmFsc2UpO1xuICB9LCBbdG9nZ2xlRHJvcGRvd25IYXNGb2N1cywgb25CbHVyLCBkcm9wZG93bk5hbWUsIGRyb3Bkb3duSWRdKTtcblxuICBjb25zdCBoYW5kbGVDb250YWluZXJCbHVyID0gdXNlQ2FsbGJhY2soXG4gICAgKGV2ZW50KSA9PiB7XG4gICAgICAvLyBlbnN1cmVzIHRoYXQgYm90aCBmaWVsZHMgYXJlIG1hcmtlZCBhcyB0b3VjaGVkIHdoZW4gb25lIG9mIHRoZW1cbiAgICAgIC8vIGlzIGJsdXJyZWRcbiAgICAgIGlmIChcbiAgICAgICAgdHlwZW9mIG9uQmx1ciA9PT0gJ2Z1bmN0aW9uJyAmJlxuICAgICAgICAhY29udGFpbmVyUmVmLmN1cnJlbnQ/LmNvbnRhaW5zKGV2ZW50LnJlbGF0ZWRUYXJnZXQpXG4gICAgICApIHtcbiAgICAgICAgb25CbHVyKHtcbiAgICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICAgIGlkOiBTZWxlY3RhYmxlU2VhcmNoSW5wdXQuZ2V0RHJvcGRvd25JZChzZWxlY3RhYmxTZWFyY2hJbnB1dElkKSxcbiAgICAgICAgICAgIG5hbWU6IGdldERyb3Bkb3duTmFtZShuYW1lKSxcbiAgICAgICAgICB9LFxuICAgICAgICB9KTtcbiAgICAgICAgb25CbHVyKHtcbiAgICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICAgIGlkOiBTZWxlY3RhYmxlU2VhcmNoSW5wdXQuZ2V0VGV4dElucHV0SWQoc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCksXG4gICAgICAgICAgICBuYW1lOiBnZXRUZXh0SW5wdXROYW1lKG5hbWUpLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0sXG4gICAgW29uQmx1ciwgc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCwgbmFtZV1cbiAgKTtcblxuICByZXR1cm4gKFxuICAgIDxDb25zdHJhaW50cy5Ib3Jpem9udGFsIG1heD17cHJvcHMuaG9yaXpvbnRhbENvbnN0cmFpbnR9PlxuICAgICAgPENvbnRhaW5lclxuICAgICAgICByZWY9e2NvbnRhaW5lclJlZn1cbiAgICAgICAgb25CbHVyPXtoYW5kbGVDb250YWluZXJCbHVyfVxuICAgICAgICBkYXRhLXRlc3RpZD1cInNlbGVjdGFibGUtc2VhcmNoLWlucHV0LWNvbnRhaW5lclwiXG4gICAgICA+XG4gICAgICAgIDxDb25zdHJhaW50cy5Ib3Jpem9udGFsIG1heD17cHJvcHMubWVudUhvcml6b250YWxDb25zdHJhaW50fT5cbiAgICAgICAgICA8U2VsZWN0YWJsZVNlbGVjdFxuICAgICAgICAgICAgey4uLnByb3BzfVxuICAgICAgICAgICAgaWQ9e1NlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXREcm9wZG93bklkKHNlbGVjdGFibFNlYXJjaElucHV0SWQpfVxuICAgICAgICAgICAgbmFtZT17Z2V0RHJvcGRvd25OYW1lKHByb3BzLm5hbWUpfVxuICAgICAgICAgICAgZHJvcGRvd25IYXNGb2N1cz17ZHJvcGRvd25IYXNGb2N1c31cbiAgICAgICAgICAgIGhhbmRsZURyb3Bkb3duRm9jdXM9e2hhbmRsZURyb3Bkb3duRm9jdXN9XG4gICAgICAgICAgICBoYW5kbGVEcm9wZG93bkJsdXI9e2hhbmRsZURyb3Bkb3duQmx1cn1cbiAgICAgICAgICAgIHRleHRJbnB1dFJlZj17dGV4dElucHV0UmVmfVxuICAgICAgICAgICAgc2VsZWN0ZWRPcHRpb249e3NlbGVjdGVkT3B0aW9ufVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvQ29uc3RyYWludHMuSG9yaXpvbnRhbD5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNzcz17W1xuICAgICAgICAgICAgZ2V0U2VsZWN0YWJsZVNlYXJjaElucHV0Q29udGFpbmVyU3R5bGVzKHByb3BzKSxcbiAgICAgICAgICAgIGRyb3Bkb3duSGFzRm9jdXMgJiZcbiAgICAgICAgICAgICAgIXByb3BzLmlzUmVhZE9ubHkgJiZcbiAgICAgICAgICAgICAgY3NzYFxuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAke2Rlc2lnblRva2Vucy5ib3JkZXJDb2xvckZvcklucHV0V2hlbkZvY3VzZWR9O1xuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICR7ZGVzaWduVG9rZW5zLmJvcmRlckNvbG9yRm9ySW5wdXRXaGVuRm9jdXNlZH07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBgLFxuICAgICAgICAgIF19XG4gICAgICAgID5cbiAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgIHJlZj17dGV4dElucHV0UmVmfVxuICAgICAgICAgICAgaWQ9e1NlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXRUZXh0SW5wdXRJZChzZWxlY3RhYmxTZWFyY2hJbnB1dElkKX1cbiAgICAgICAgICAgIG5hbWU9e2dldFRleHRJbnB1dE5hbWUocHJvcHMubmFtZSl9XG4gICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICB2YWx1ZT17c2VhcmNoVmFsdWV9XG4gICAgICAgICAgICBvbkNoYW5nZT17aGFuZGxlQ2hhbmdlfVxuICAgICAgICAgICAgb25CbHVyPXtoYW5kbGVUZXh0SW5wdXRCbHVyfVxuICAgICAgICAgICAgb25Gb2N1cz17aGFuZGxlVGV4dElucHV0Rm9jdXN9XG4gICAgICAgICAgICBkaXNhYmxlZD17cHJvcHMuaXNEaXNhYmxlZH1cbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPXtwcm9wcy5wbGFjZWhvbGRlcn1cbiAgICAgICAgICAgIHJlYWRPbmx5PXtwcm9wcy5pc1JlYWRPbmx5fVxuICAgICAgICAgICAgYXV0b0ZvY3VzPXtwcm9wcy5pc0F1dG9mb2N1c3NlZH1cbiAgICAgICAgICAgIGF1dG9Db21wbGV0ZT17cHJvcHMuYXV0b0NvbXBsZXRlfVxuICAgICAgICAgICAgYXJpYS1yZWFkb25seT17cHJvcHMuaXNSZWFkT25seX1cbiAgICAgICAgICAgIGNvbnRlbnRFZGl0YWJsZT17IXByb3BzLmlzUmVhZE9ubHl9XG4gICAgICAgICAgICBjc3M9e2dldFNlbGVjdGFibGVTZWFyY2hJbnB1dFN0eWxlcyhwcm9wcyl9XG4gICAgICAgICAgICB7Li4uZmlsdGVyRGF0YUF0dHJpYnV0ZXMocHJvcHMpfVxuICAgICAgICAgICAgLyogQVJJQSAqL1xuICAgICAgICAgICAgYXJpYS1pbnZhbGlkPXtwcm9wc1snYXJpYS1pbnZhbGlkJ119XG4gICAgICAgICAgICBhcmlhLWVycm9ybWVzc2FnZT17cHJvcHNbJ2FyaWEtZXJyb3JtZXNzYWdlJ119XG4gICAgICAgICAgICBkYXRhLXRlc3RpZD1cInNlbGVjdGFibGUtaW5wdXRcIlxuICAgICAgICAgICAgb25LZXlEb3duPXsoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgaWYgKCFwcm9wcy5pc1JlYWRPbmx5ICYmIGV2ZW50LmtleSA9PT0gJ0VudGVyJykge1xuICAgICAgICAgICAgICAgIGhhbmRsZVN1Ym1pdChldmVudCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH19XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7cHJvcHMuaXNDbGVhcmFibGUgJiZcbiAgICAgICAgICAgIHNlYXJjaFZhbHVlICYmXG4gICAgICAgICAgICAhcHJvcHMuaXNEaXNhYmxlZCAmJlxuICAgICAgICAgICAgIXByb3BzLmlzUmVhZE9ubHkgJiYgKFxuICAgICAgICAgICAgICA8U2Vjb25kYXJ5SWNvbkJ1dHRvblxuICAgICAgICAgICAgICAgIGljb249ezxDbG9zZUljb24gLz59XG4gICAgICAgICAgICAgICAgc2l6ZT1cIm1lZGl1bVwiXG4gICAgICAgICAgICAgICAgbGFiZWw9eydjbGVhci1idXR0b24nfVxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e2hhbmRsZUNsZWFyfVxuICAgICAgICAgICAgICAgIGNzcz17Z2V0Q2xlYXJJY29uQnV0dG9uU3R5bGVzKHByb3BzKX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAge3Byb3BzLnNob3dTdWJtaXRCdXR0b24gJiYgKFxuICAgICAgICAgICAgPFNlY29uZGFyeUljb25CdXR0b25cbiAgICAgICAgICAgICAgaWNvbj17PFNlYXJjaEljb24gLz59XG4gICAgICAgICAgICAgIGxhYmVsPXsnc2VhcmNoLWJ1dHRvbid9XG4gICAgICAgICAgICAgIG9uQ2xpY2s9e2hhbmRsZVN1Ym1pdH1cbiAgICAgICAgICAgICAgY3NzPXtnZXRTZWFyY2hJY29uQnV0dG9uU3R5bGVzKHByb3BzKX1cbiAgICAgICAgICAgICAgaXNEaXNhYmxlZD17cHJvcHMuaXNEaXNhYmxlZH1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L0NvbnRhaW5lcj5cbiAgICA8L0NvbnN0cmFpbnRzLkhvcml6b250YWw+XG4gICk7XG59O1xuXG5TZWxlY3RhYmxlU2VhcmNoSW5wdXQuZGlzcGxheU5hbWUgPSAnU2VsZWN0YWJsZVNlYXJjaElucHV0JztcblNlbGVjdGFibGVTZWFyY2hJbnB1dC5kZWZhdWx0UHJvcHMgPSBkZWZhdWx0UHJvcHM7XG5TZWxlY3RhYmxlU2VhcmNoSW5wdXQuaXNFbXB0eSA9IChcbiAgZm9ybVZhbHVlOiBUU2VsZWN0YWJsZVNlYXJjaElucHV0UHJvcHNbJ3ZhbHVlJ11cbikgPT4gIWZvcm1WYWx1ZSB8fCBmb3JtVmFsdWUudGV4dC50cmltKCkgPT09ICcnO1xuU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldFRleHRJbnB1dElkID0gZ2V0VGV4dElucHV0TmFtZTtcblNlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXREcm9wZG93bklkID0gZ2V0RHJvcGRvd25OYW1lO1xuXG5leHBvcnQgZGVmYXVsdCBTZWxlY3RhYmxlU2VhcmNoSW5wdXQ7XG4iXX0= */"), process.env.NODE_ENV === "production" ? "" : ";label:SelectableSearchInput;", process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNlbGVjdGFibGUtc2VhcmNoLWlucHV0LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFrWlUiLCJmaWxlIjoic2VsZWN0YWJsZS1zZWFyY2gtaW5wdXQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgdHlwZSBNb3VzZUV2ZW50LFxuICB0eXBlIEtleWJvYXJkRXZlbnQsXG4gIHR5cGUgQ2hhbmdlRXZlbnQsXG4gIHR5cGUgUmVhY3ROb2RlLFxuICB1c2VTdGF0ZSxcbiAgdXNlQ2FsbGJhY2ssXG4gIHVzZVJlZixcbn0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IFNlY29uZGFyeUljb25CdXR0b24gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvc2Vjb25kYXJ5LWljb24tYnV0dG9uJztcbmltcG9ydCBDb25zdHJhaW50cyBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9jb25zdHJhaW50cyc7XG5pbXBvcnQgeyBTZWFyY2hJY29uLCBDbG9zZUljb24gfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9pY29ucyc7XG5pbXBvcnQge1xuICBjcmVhdGVTZXF1ZW50aWFsSWQsXG4gIGZpbHRlckRhdGFBdHRyaWJ1dGVzLFxuICB3YXJuaW5nLFxufSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC91dGlscyc7XG5pbXBvcnQgeyB3YXJuSWZNZW51UG9ydGFsUHJvcHNBcmVNaXNzaW5nIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvc2VsZWN0LXV0aWxzJztcbmltcG9ydCB7XG4gIGdldENsZWFySWNvbkJ1dHRvblN0eWxlcyxcbiAgZ2V0U2VhcmNoSWNvbkJ1dHRvblN0eWxlcyxcbiAgZ2V0U2VsZWN0YWJsZVNlYXJjaElucHV0Q29udGFpbmVyU3R5bGVzLFxuICBnZXRTZWxlY3RhYmxlU2VhcmNoSW5wdXRTdHlsZXMsXG59IGZyb20gJy4vc2VsZWN0YWJsZS1zZWFyY2gtaW5wdXQuc3R5bGVzJztcbmltcG9ydCBTZWxlY3RhYmxlU2VsZWN0IGZyb20gJy4vc2VsZWN0YWJsZS1zZWxlY3QnO1xuaW1wb3J0IHsgdXNlRmllbGRJZCwgdXNlVG9nZ2xlU3RhdGUgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9ob29rcyc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyBkZXNpZ25Ub2tlbnMgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9kZXNpZ24tc3lzdGVtJztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcbmltcG9ydCB7IHR5cGUgUHJvcHMgYXMgUmVhY3RTZWxlY3RQcm9wcyB9IGZyb20gJ3JlYWN0LXNlbGVjdCc7XG5cbmNvbnN0IENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG5gO1xuXG5jb25zdCBnZXRUZXh0SW5wdXROYW1lID0gKG5hbWU/OiBzdHJpbmcpID0+XG4gIG5hbWUgPyBgJHtuYW1lfS50ZXh0SW5wdXRgIDogdW5kZWZpbmVkO1xuXG5jb25zdCBnZXREcm9wZG93bk5hbWUgPSAobmFtZT86IHN0cmluZykgPT5cbiAgbmFtZSA/IGAke25hbWV9LmRyb3Bkb3duYCA6IHVuZGVmaW5lZDtcblxuZXhwb3J0IHR5cGUgVEN1c3RvbUV2ZW50ID0ge1xuICB0YXJnZXQ6IHtcbiAgICBpZD86IHN0cmluZztcbiAgICBuYW1lPzogc3RyaW5nO1xuICAgIHZhbHVlPzogc3RyaW5nIHwgc3RyaW5nW10gfCBudWxsO1xuICB9O1xuICBwZXJzaXN0PzogKCkgPT4gdm9pZDtcbn07XG5cbmV4cG9ydCB0eXBlIFRWYWx1ZSA9IHtcbiAgdGV4dDogc3RyaW5nO1xuICBvcHRpb246IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIFRPcHRpb24gPSB7XG4gIHZhbHVlOiBzdHJpbmc7XG4gIGxhYmVsPzogUmVhY3ROb2RlO1xufTtcblxuZXhwb3J0IHR5cGUgVE9wdGlvbk9iamVjdCA9IHtcbiAgb3B0aW9uczogVE9wdGlvbltdO1xufTtcblxuZXhwb3J0IHR5cGUgVE9wdGlvbnMgPSBUT3B0aW9uW10gfCBUT3B0aW9uT2JqZWN0W107XG5cbmV4cG9ydCB0eXBlIFRTZWxlY3RhYmxlU2VhcmNoSW5wdXRQcm9wcyA9IHtcbiAgLyoqXG4gICAqIFVzZWQgYXMgSFRNTCBpZCBwcm9wZXJ0eS4gQW4gaWQgaXMgYXV0by1nZW5lcmF0ZWQgd2hlbiBpdCBpcyBub3Qgc3BlY2lmaWVkLlxuICAgKi9cbiAgaWQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBVc2VkIGFzIEhUTUwgYXV0b2NvbXBsZXRlIHByb3BlcnR5XG4gICAqL1xuICBhdXRvQ29tcGxldGU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBJbmRpY2F0ZSBpZiB0aGUgdmFsdWUgZW50ZXJlZCBpbiB0aGUgaW5wdXQgaXMgaW52YWxpZC5cbiAgICovXG4gICdhcmlhLWludmFsaWQnPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEhUTUwgSUQgb2YgYW4gZWxlbWVudCBjb250YWluaW5nIGFuIGVycm9yIG1lc3NhZ2UgcmVsYXRlZCB0byB0aGUgaW5wdXQuXG4gICAqL1xuICAnYXJpYS1lcnJvcm1lc3NhZ2UnPzogc3RyaW5nO1xuICAvKipcbiAgICogVXNlZCBhcyBIVE1MIG5hbWUgb2YgdGhlIGlucHV0IGNvbXBvbmVudCBwcm9wZXJ0eS5cbiAgICovXG4gIG5hbWU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBWYWx1ZSBvZiB0aGUgaW5wdXQuIENvbnNpc3RzIG9mIHRleHQgaW5wdXQgYW5kIHNlbGVjdGVkIG9wdGlvbi5cbiAgICovXG4gIHZhbHVlOiBUVmFsdWU7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2l0aCB0aGUgZXZlbnQgb2YgdGhlIGlucHV0IG9yIGRyb3Bkb3duIHdoZW4gZWl0aGVyIHRoZSBzZWxlY3RhYmxlIGRyb3Bkb3duIG9yIHRoZSB0ZXh0IGlucHV0IGhhdmUgY2hhbmdlZC5cbiAgICogVGhlIGNoYW5nZSBldmVudCBmcm9tIHRoZSB0ZXh0IGlucHV0IGhhcyBhIHN1ZmZpeCBvZiBgLnRleHRJbnB1dGAgYW5kIHRoZSBjaGFuZ2UgZXZlbnQgZnJvbSB0aGUgZHJvcGRvd24gaGFzIGEgc3VmZml4IG9mIGAuZHJvcGRvd25gLlxuICAgKi9cbiAgb25DaGFuZ2U/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGlucHV0IGlzIGJsdXJyZWRcbiAgICovXG4gIG9uQmx1cj86IChldmVudDogVEN1c3RvbUV2ZW50KSA9PiB2b2lkO1xuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gaW5wdXQgaXMgZm9jdXNlZFxuICAgKi9cbiAgb25Gb2N1cz86IChldmVudDogVEN1c3RvbUV2ZW50KSA9PiB2b2lkO1xuICAvKipcbiAgICogSGFuZGxlciB3aGVuIHRoZSBzZWFyY2ggYnV0dG9uIGlzIGNsaWNrZWQuXG4gICAqL1xuICBvblN1Ym1pdDogKHZhbHVlOiBUVmFsdWUpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBIYW5kbGVyIHdoZW4gdGhlIGNsZWFyIGJ1dHRvbiBpcyBjbGlja2VkLlxuICAgKi9cbiAgb25SZXNldD86ICgpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBGb2N1cyB0aGUgaW5wdXQgb24gaW5pdGlhbCByZW5kZXJcbiAgICovXG4gIGlzQXV0b2ZvY3Vzc2VkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGF0IHRoZSBpbnB1dCBjYW5ub3QgYmUgbW9kaWZpZWQgKGUuZyBub3QgYXV0aG9yaXplZCwgb3IgY2hhbmdlcyBjdXJyZW50bHkgc2F2aW5nKS5cbiAgICovXG4gIGlzRGlzYWJsZWQ/OiBib29sZWFuO1xuICAvKipcbiAgICogSW5kaWNhdGVzIHRoYXQgdGhlIGZpZWxkIGlzIGRpc3BsYXlpbmcgcmVhZC1vbmx5IGNvbnRlbnRcbiAgICovXG4gIGlzUmVhZE9ubHk/OiBib29sZWFuO1xuICAvKipcbiAgICogSW5kaWNhdGVzIGlmIHRoZSBpbnB1dCBoYXMgaW52YWxpZCB2YWx1ZXNcbiAgICovXG4gIGhhc0Vycm9yPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyBpZiB0aGUgaW5wdXQgaGFzIHdhcm5pbmcgdmFsdWVzXG4gICAqL1xuICBoYXNXYXJuaW5nPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFBsYWNlaG9sZGVyIHRleHQgZm9yIHRoZSBpbnB1dFxuICAgKi9cbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaWYgdGhlIGlucHV0IHNob3VsZCBiZSBjbGVhcmVkIHdoZW4gdGhlIGNsZWFyIGJ1dHRvbiBpcyBjbGlja2VkLlxuICAgKiBEZWZhdWx0cyB0byB0cnVlLlxuICAgKlxuICAgKi9cbiAgaXNDbGVhcmFibGU/OiBib29sZWFuO1xuICAvKipcbiAgICogSG9yaXpvbnRhbCBzaXplIGxpbWl0IG9mIHRoZSBpbnB1dCBmaWVsZHMuXG4gICAqL1xuICBob3Jpem9udGFsQ29uc3RyYWludD86IDEwIHwgMTEgfCAxMiB8IDEzIHwgMTQgfCAxNSB8IDE2IHwgJ3NjYWxlJyB8ICdhdXRvJztcbiAgLyoqXG4gICAqIEFycmF5IG9mIG9wdGlvbnMgdGhhdCBwb3B1bGF0ZSB0aGUgc2VsZWN0IG1lbnVcbiAgICovXG4gIG9wdGlvbnM6IFRPcHRpb25zO1xuICAvKipcbiAgICogei1pbmRleCB2YWx1ZSBmb3IgdGhlIG1lbnUgcG9ydGFsXG4gICAqIDxicj5cbiAgICogVXNlIGluIGNvbmp1bmN0aW9uIHdpdGggYG1lbnVQb3J0YWxUYXJnZXRgXG4gICAqL1xuICBtZW51UG9ydGFsWkluZGV4PzogbnVtYmVyO1xuICAvKipcbiAgICogRG9tIGVsZW1lbnQgdG8gcG9ydGFsIHRoZSBzZWxlY3QgbWVudSB0b1xuICAgKiA8YnI+XG4gICAqIFtQcm9wcyBmcm9tIFJlYWN0IHNlbGVjdCB3YXMgdXNlZF0oaHR0cHM6Ly9yZWFjdC1zZWxlY3QuY29tL3Byb3BzKVxuICAgKi9cbiAgbWVudVBvcnRhbFRhcmdldD86IFJlYWN0U2VsZWN0UHJvcHNbJ21lbnVQb3J0YWxUYXJnZXQnXTtcbiAgLyoqXG4gICAqIHdoZXRoZXIgdGhlIG1lbnUgc2hvdWxkIGJsb2NrIHNjcm9sbCB3aGlsZSBvcGVuXG4gICAqIDxicj5cbiAgICogW1Byb3BzIGZyb20gUmVhY3Qgc2VsZWN0IHdhcyB1c2VkXShodHRwczovL3JlYWN0LXNlbGVjdC5jb20vcHJvcHMpXG4gICAqL1xuICBtZW51U2hvdWxkQmxvY2tTY3JvbGw/OiBSZWFjdFNlbGVjdFByb3BzWydtZW51U2hvdWxkQmxvY2tTY3JvbGwnXTtcbiAgLyoqXG4gICAqIEhhbmRsZSBjaGFuZ2UgZXZlbnRzIG9uIHRoZSBtZW51IGlucHV0XG4gICAqIDxicj5cbiAgICogW1Byb3BzIGZyb20gUmVhY3Qgc2VsZWN0IHdhcyB1c2VkXShodHRwczovL3JlYWN0LXNlbGVjdC5jb20vcHJvcHMpXG4gICAqL1xuICBvbk1lbnVJbnB1dENoYW5nZT86IFJlYWN0U2VsZWN0UHJvcHNbJ29uSW5wdXRDaGFuZ2UnXTtcbiAgLyoqXG4gICAqIENhbiBiZSB1c2VkIHRvIHJlbmRlciBhIGN1c3RvbSB2YWx1ZSB3aGVuIHRoZXJlIGFyZSBubyBvcHRpb25zIChlaXRoZXIgYmVjYXVzZSBvZiBubyBzZWFyY2ggcmVzdWx0cywgb3IgYWxsIG9wdGlvbnMgaGF2ZSBiZWVuIHVzZWQsIG9yIHRoZXJlIHdlcmUgbm9uZSBpbiB0aGUgZmlyc3QgcGxhY2UpLiBHZXRzIGNhbGxlZCB3aXRoIHsgaW5wdXRWYWx1ZTogU3RyaW5nIH0uXG4gICAqIDxiciAvPlxuICAgKiBgaW5wdXRWYWx1ZWAgd2lsbCBiZSBhbiBlbXB0eSBzdHJpbmcgd2hlbiBubyBzZWFyY2ggdGV4dCBpcyBwcmVzZW50LlxuICAgKiA8YnI+XG4gICAqIFtQcm9wcyBmcm9tIFJlYWN0IHNlbGVjdCB3YXMgdXNlZF0oaHR0cHM6Ly9yZWFjdC1zZWxlY3QuY29tL3Byb3BzKVxuICAgKi9cbiAgbm9NZW51T3B0aW9uc01lc3NhZ2U/OiBSZWFjdFNlbGVjdFByb3BzWydub09wdGlvbnNNZXNzYWdlJ107XG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIGVuYWJsZSBzZWFyY2ggZnVuY3Rpb25hbGl0eS5cbiAgICogPGJyPlxuICAgKiBbUHJvcHMgZnJvbSBSZWFjdCBzZWxlY3Qgd2FzIHVzZWRdKGh0dHBzOi8vcmVhY3Qtc2VsZWN0LmNvbS9wcm9wcylcbiAgICovXG4gIGlzTWVudVNlYXJjaGFibGU/OiBSZWFjdFNlbGVjdFByb3BzWydpc1NlYXJjaGFibGUnXTtcbiAgLyoqXG4gICAqIE1heGltdW0gaGVpZ2h0IG9mIHRoZSBtZW51IGJlZm9yZSBzY3JvbGxpbmdcbiAgICogPGJyPlxuICAgKiBbUHJvcHMgZnJvbSBSZWFjdCBzZWxlY3Qgd2FzIHVzZWRdKGh0dHBzOi8vcmVhY3Qtc2VsZWN0LmNvbS9wcm9wcylcbiAgICovXG4gIG1heE1lbnVIZWlnaHQ/OiBSZWFjdFNlbGVjdFByb3BzWydtYXhNZW51SGVpZ2h0J107XG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBtZW51IHNob3VsZCBjbG9zZSBhZnRlciBhIHZhbHVlIGlzIHNlbGVjdGVkLiBEZWZhdWx0cyB0byBgdHJ1ZWAuXG4gICAqIDxicj5cbiAgICogW1Byb3BzIGZyb20gUmVhY3Qgc2VsZWN0IHdhcyB1c2VkXShodHRwczovL3JlYWN0LXNlbGVjdC5jb20vcHJvcHMpXG4gICAqL1xuICBjbG9zZU1lbnVPblNlbGVjdD86IFJlYWN0U2VsZWN0UHJvcHNbJ2Nsb3NlTWVudU9uU2VsZWN0J107XG4gIC8qKlxuICAgKiBIb3Jpem9udGFsIHNpemUgbGltaXQgZm9yIHRoZSBkcm9wZG93biBtZW51LlxuICAgKi9cbiAgbWVudUhvcml6b250YWxDb25zdHJhaW50PzogMyB8IDQgfCA1O1xuICAvKipcbiAgICogU2hvdyBzdWJtaXQgYnV0dG9uIGluIHRoZSBpbnB1dFxuICAgKi9cbiAgc2hvd1N1Ym1pdEJ1dHRvbj86IGJvb2xlYW47XG59O1xuXG5jb25zdCBkZWZhdWx0UHJvcHM6IFBpY2s8XG4gIFRTZWxlY3RhYmxlU2VhcmNoSW5wdXRQcm9wcyxcbiAgfCAnaG9yaXpvbnRhbENvbnN0cmFpbnQnXG4gIHwgJ2lzQ2xlYXJhYmxlJ1xuICB8ICdtZW51SG9yaXpvbnRhbENvbnN0cmFpbnQnXG4gIHwgJ3Nob3dTdWJtaXRCdXR0b24nXG4gIHwgJ21lbnVQb3J0YWxaSW5kZXgnXG4gIHwgJ29wdGlvbnMnXG4+ID0ge1xuICBob3Jpem9udGFsQ29uc3RyYWludDogJ3NjYWxlJyxcbiAgaXNDbGVhcmFibGU6IHRydWUsXG4gIG1lbnVIb3Jpem9udGFsQ29uc3RyYWludDogMyxcbiAgc2hvd1N1Ym1pdEJ1dHRvbjogdHJ1ZSxcbiAgbWVudVBvcnRhbFpJbmRleDogMSxcbiAgb3B0aW9uczogW10sXG59O1xuXG5jb25zdCBzZWxlY3RhYmxlU2VhcmNoSW5wdXRTZXF1ZW50aWFsSWQgPSBjcmVhdGVTZXF1ZW50aWFsSWQoXG4gICdzZWxlY3RhYmxlLXNlYXJjaC1pbnB1dC0nXG4pO1xuXG5jb25zdCBpc09wdGlvbk9iamVjdCA9IChcbiAgb3B0aW9uOiBUT3B0aW9uIHwgVE9wdGlvbk9iamVjdFxuKTogb3B0aW9uIGlzIFRPcHRpb25PYmplY3QgPT4gKG9wdGlvbiBhcyBUT3B0aW9uT2JqZWN0KS5vcHRpb25zICE9PSB1bmRlZmluZWQ7XG5cbmNvbnN0IFNlbGVjdGFibGVTZWFyY2hJbnB1dCA9IChwcm9wczogVFNlbGVjdGFibGVTZWFyY2hJbnB1dFByb3BzKSA9PiB7XG4gIGNvbnN0IFtkcm9wZG93bkhhc0ZvY3VzLCB0b2dnbGVEcm9wZG93bkhhc0ZvY3VzXSA9IHVzZVRvZ2dsZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgW3NlYXJjaFZhbHVlLCBzZXRTZWFyY2hWYWx1ZV0gPSB1c2VTdGF0ZShwcm9wcy52YWx1ZS50ZXh0IHx8ICcnKTtcbiAgY29uc3QgY29udGFpbmVyUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKTtcbiAgY29uc3QgdGV4dElucHV0UmVmID0gdXNlUmVmPEhUTUxJbnB1dEVsZW1lbnQ+KG51bGwpO1xuXG4gIGNvbnN0IG9wdGlvbnNXaXRob3V0R3JvdXBzID0gcHJvcHMub3B0aW9ucy5mbGF0TWFwKChvcHRpb24pID0+IHtcbiAgICBpZiAoaXNPcHRpb25PYmplY3Qob3B0aW9uKSkge1xuICAgICAgcmV0dXJuIG9wdGlvbi5vcHRpb25zO1xuICAgIH1cbiAgICByZXR1cm4gb3B0aW9uO1xuICB9KTtcblxuICBjb25zdCBzZWxlY3RlZE9wdGlvbiA9IG9wdGlvbnNXaXRob3V0R3JvdXBzLmZpbmQoXG4gICAgKG9wdGlvbikgPT4gb3B0aW9uLnZhbHVlID09PSBwcm9wcy52YWx1ZS5vcHRpb25cbiAgKTtcblxuICBjb25zdCBzZWxlY3RhYmxTZWFyY2hJbnB1dElkID0gdXNlRmllbGRJZChcbiAgICBwcm9wcy5pZCxcbiAgICBzZWxlY3RhYmxlU2VhcmNoSW5wdXRTZXF1ZW50aWFsSWRcbiAgKTtcblxuICBpZiAoIXByb3BzLmlzUmVhZE9ubHkpIHtcbiAgICB3YXJuaW5nKFxuICAgICAgdHlwZW9mIHByb3BzLm9uQ2hhbmdlID09PSAnZnVuY3Rpb24nLFxuICAgICAgJ1NlbGVjdGFibGVTZWFyY2hJbnB1dDogYG9uQ2hhbmdlYCBpcyByZXF1aXJlZCB3aGVuIGlzIG5vdCByZWFkIG9ubHkuJ1xuICAgICk7XG4gIH1cblxuICB3YXJuSWZNZW51UG9ydGFsUHJvcHNBcmVNaXNzaW5nKHtcbiAgICBtZW51UG9ydGFsWkluZGV4OiBwcm9wcy5tZW51UG9ydGFsWkluZGV4LFxuICAgIG1lbnVQb3J0YWxUYXJnZXQ6IHByb3BzLm1lbnVQb3J0YWxUYXJnZXQsXG4gICAgY29tcG9uZW50TmFtZTogJ1NlbGVjdGFibGVTZWFyY2hJbnB1dCcsXG4gIH0pO1xuXG4gIGNvbnN0IHsgb25Gb2N1cywgb25CbHVyLCBuYW1lIH0gPSBwcm9wcztcbiAgY29uc3QgaGFuZGxlVGV4dElucHV0Rm9jdXMgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgaWYgKG9uRm9jdXMpIHtcbiAgICAgIG9uRm9jdXMoe1xuICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICBpZDogU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldFRleHRJbnB1dElkKHNlbGVjdGFibFNlYXJjaElucHV0SWQpLFxuICAgICAgICAgIG5hbWU6IGdldFRleHRJbnB1dE5hbWUobmFtZSksXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9XG4gIH0sIFtvbkZvY3VzLCBzZWxlY3RhYmxTZWFyY2hJbnB1dElkLCBuYW1lXSk7XG5cbiAgY29uc3QgaGFuZGxlVGV4dElucHV0Qmx1ciA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBpZiAob25CbHVyKSB7XG4gICAgICBvbkJsdXIoe1xuICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICBpZDogU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldFRleHRJbnB1dElkKHNlbGVjdGFibFNlYXJjaElucHV0SWQpLFxuICAgICAgICAgIG5hbWU6IGdldFRleHRJbnB1dE5hbWUobmFtZSksXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9XG4gIH0sIFtvbkJsdXIsIHNlbGVjdGFibFNlYXJjaElucHV0SWQsIG5hbWVdKTtcblxuICBjb25zdCBoYW5kbGVDbGVhciA9ICgpID0+IHtcbiAgICBzZXRTZWFyY2hWYWx1ZSgnJyk7XG4gICAgaWYgKHByb3BzLm9uUmVzZXQpIHtcbiAgICAgIHByb3BzLm9uUmVzZXQoKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlQ2hhbmdlID0gKGV2ZW50OiBDaGFuZ2VFdmVudDxIVE1MSW5wdXRFbGVtZW50PikgPT4ge1xuICAgIHNldFNlYXJjaFZhbHVlKGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgaWYgKHByb3BzLm9uQ2hhbmdlKSB7XG4gICAgICBwcm9wcy5vbkNoYW5nZSh7XG4gICAgICAgIHRhcmdldDoge1xuICAgICAgICAgIGlkOiBTZWxlY3RhYmxlU2VhcmNoSW5wdXQuZ2V0VGV4dElucHV0SWQoc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCksXG4gICAgICAgICAgbmFtZTogZ2V0VGV4dElucHV0TmFtZShwcm9wcy5uYW1lKSxcbiAgICAgICAgICB2YWx1ZTogZXZlbnQudGFyZ2V0LnZhbHVlLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGhhbmRsZVN1Ym1pdCA9IChcbiAgICBldmVudDpcbiAgICAgIHwgS2V5Ym9hcmRFdmVudDxIVE1MQnV0dG9uRWxlbWVudD5cbiAgICAgIHwgTW91c2VFdmVudDxIVE1MQnV0dG9uRWxlbWVudD5cbiAgICAgIHwgS2V5Ym9hcmRFdmVudDxIVE1MSW5wdXRFbGVtZW50PlxuICApID0+IHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGlmIChwcm9wcy5vblN1Ym1pdCkge1xuICAgICAgcHJvcHMub25TdWJtaXQoe1xuICAgICAgICB0ZXh0OiBzZWFyY2hWYWx1ZSxcbiAgICAgICAgb3B0aW9uOiBzZWxlY3RlZE9wdGlvbj8udmFsdWUgPz8gJycsXG4gICAgICB9KTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgZHJvcGRvd25OYW1lID0gZ2V0RHJvcGRvd25OYW1lKHByb3BzLm5hbWUpO1xuICBjb25zdCBkcm9wZG93bklkID0gU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldERyb3Bkb3duSWQoXG4gICAgc2VsZWN0YWJsU2VhcmNoSW5wdXRJZFxuICApO1xuXG4gIGNvbnN0IGhhbmRsZURyb3Bkb3duRm9jdXMgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgaWYgKG9uRm9jdXMpIHtcbiAgICAgIG9uRm9jdXMoe1xuICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICBpZDogZHJvcGRvd25JZCxcbiAgICAgICAgICBuYW1lOiBkcm9wZG93bk5hbWUsXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9XG4gICAgdG9nZ2xlRHJvcGRvd25IYXNGb2N1cyh0cnVlKTtcbiAgfSwgW29uRm9jdXMsIHRvZ2dsZURyb3Bkb3duSGFzRm9jdXMsIGRyb3Bkb3duTmFtZSwgZHJvcGRvd25JZF0pO1xuXG4gIGNvbnN0IGhhbmRsZURyb3Bkb3duQmx1ciA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBpZiAob25CbHVyKSB7XG4gICAgICBvbkJsdXIoe1xuICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICBpZDogZHJvcGRvd25JZCxcbiAgICAgICAgICBuYW1lOiBkcm9wZG93bk5hbWUsXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9XG4gICAgdG9nZ2xlRHJvcGRvd25IYXNGb2N1cyhmYWxzZSk7XG4gIH0sIFt0b2dnbGVEcm9wZG93bkhhc0ZvY3VzLCBvbkJsdXIsIGRyb3Bkb3duTmFtZSwgZHJvcGRvd25JZF0pO1xuXG4gIGNvbnN0IGhhbmRsZUNvbnRhaW5lckJsdXIgPSB1c2VDYWxsYmFjayhcbiAgICAoZXZlbnQpID0+IHtcbiAgICAgIC8vIGVuc3VyZXMgdGhhdCBib3RoIGZpZWxkcyBhcmUgbWFya2VkIGFzIHRvdWNoZWQgd2hlbiBvbmUgb2YgdGhlbVxuICAgICAgLy8gaXMgYmx1cnJlZFxuICAgICAgaWYgKFxuICAgICAgICB0eXBlb2Ygb25CbHVyID09PSAnZnVuY3Rpb24nICYmXG4gICAgICAgICFjb250YWluZXJSZWYuY3VycmVudD8uY29udGFpbnMoZXZlbnQucmVsYXRlZFRhcmdldClcbiAgICAgICkge1xuICAgICAgICBvbkJsdXIoe1xuICAgICAgICAgIHRhcmdldDoge1xuICAgICAgICAgICAgaWQ6IFNlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXREcm9wZG93bklkKHNlbGVjdGFibFNlYXJjaElucHV0SWQpLFxuICAgICAgICAgICAgbmFtZTogZ2V0RHJvcGRvd25OYW1lKG5hbWUpLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuICAgICAgICBvbkJsdXIoe1xuICAgICAgICAgIHRhcmdldDoge1xuICAgICAgICAgICAgaWQ6IFNlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXRUZXh0SW5wdXRJZChzZWxlY3RhYmxTZWFyY2hJbnB1dElkKSxcbiAgICAgICAgICAgIG5hbWU6IGdldFRleHRJbnB1dE5hbWUobmFtZSksXG4gICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSxcbiAgICBbb25CbHVyLCBzZWxlY3RhYmxTZWFyY2hJbnB1dElkLCBuYW1lXVxuICApO1xuXG4gIHJldHVybiAoXG4gICAgPENvbnN0cmFpbnRzLkhvcml6b250YWwgbWF4PXtwcm9wcy5ob3Jpem9udGFsQ29uc3RyYWludH0+XG4gICAgICA8Q29udGFpbmVyXG4gICAgICAgIHJlZj17Y29udGFpbmVyUmVmfVxuICAgICAgICBvbkJsdXI9e2hhbmRsZUNvbnRhaW5lckJsdXJ9XG4gICAgICAgIGRhdGEtdGVzdGlkPVwic2VsZWN0YWJsZS1zZWFyY2gtaW5wdXQtY29udGFpbmVyXCJcbiAgICAgID5cbiAgICAgICAgPENvbnN0cmFpbnRzLkhvcml6b250YWwgbWF4PXtwcm9wcy5tZW51SG9yaXpvbnRhbENvbnN0cmFpbnR9PlxuICAgICAgICAgIDxTZWxlY3RhYmxlU2VsZWN0XG4gICAgICAgICAgICB7Li4ucHJvcHN9XG4gICAgICAgICAgICBpZD17U2VsZWN0YWJsZVNlYXJjaElucHV0LmdldERyb3Bkb3duSWQoc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCl9XG4gICAgICAgICAgICBuYW1lPXtnZXREcm9wZG93bk5hbWUocHJvcHMubmFtZSl9XG4gICAgICAgICAgICBkcm9wZG93bkhhc0ZvY3VzPXtkcm9wZG93bkhhc0ZvY3VzfVxuICAgICAgICAgICAgaGFuZGxlRHJvcGRvd25Gb2N1cz17aGFuZGxlRHJvcGRvd25Gb2N1c31cbiAgICAgICAgICAgIGhhbmRsZURyb3Bkb3duQmx1cj17aGFuZGxlRHJvcGRvd25CbHVyfVxuICAgICAgICAgICAgdGV4dElucHV0UmVmPXt0ZXh0SW5wdXRSZWZ9XG4gICAgICAgICAgICBzZWxlY3RlZE9wdGlvbj17c2VsZWN0ZWRPcHRpb259XG4gICAgICAgICAgLz5cbiAgICAgICAgPC9Db25zdHJhaW50cy5Ib3Jpem9udGFsPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgY3NzPXtbXG4gICAgICAgICAgICBnZXRTZWxlY3RhYmxlU2VhcmNoSW5wdXRDb250YWluZXJTdHlsZXMocHJvcHMpLFxuICAgICAgICAgICAgZHJvcGRvd25IYXNGb2N1cyAmJlxuICAgICAgICAgICAgICAhcHJvcHMuaXNSZWFkT25seSAmJlxuICAgICAgICAgICAgICBjc3NgXG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICR7ZGVzaWduVG9rZW5zLmJvcmRlckNvbG9yRm9ySW5wdXRXaGVuRm9jdXNlZH07XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogJHtkZXNpZ25Ub2tlbnMuYm9yZGVyQ29sb3JGb3JJbnB1dFdoZW5Gb2N1c2VkfTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGAsXG4gICAgICAgICAgXX1cbiAgICAgICAgPlxuICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgcmVmPXt0ZXh0SW5wdXRSZWZ9XG4gICAgICAgICAgICBpZD17U2VsZWN0YWJsZVNlYXJjaElucHV0LmdldFRleHRJbnB1dElkKHNlbGVjdGFibFNlYXJjaElucHV0SWQpfVxuICAgICAgICAgICAgbmFtZT17Z2V0VGV4dElucHV0TmFtZShwcm9wcy5uYW1lKX1cbiAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgIHZhbHVlPXtzZWFyY2hWYWx1ZX1cbiAgICAgICAgICAgIG9uQ2hhbmdlPXtoYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgICBvbkJsdXI9e2hhbmRsZVRleHRJbnB1dEJsdXJ9XG4gICAgICAgICAgICBvbkZvY3VzPXtoYW5kbGVUZXh0SW5wdXRGb2N1c31cbiAgICAgICAgICAgIGRpc2FibGVkPXtwcm9wcy5pc0Rpc2FibGVkfVxuICAgICAgICAgICAgcGxhY2Vob2xkZXI9e3Byb3BzLnBsYWNlaG9sZGVyfVxuICAgICAgICAgICAgcmVhZE9ubHk9e3Byb3BzLmlzUmVhZE9ubHl9XG4gICAgICAgICAgICBhdXRvRm9jdXM9e3Byb3BzLmlzQXV0b2ZvY3Vzc2VkfVxuICAgICAgICAgICAgYXV0b0NvbXBsZXRlPXtwcm9wcy5hdXRvQ29tcGxldGV9XG4gICAgICAgICAgICBhcmlhLXJlYWRvbmx5PXtwcm9wcy5pc1JlYWRPbmx5fVxuICAgICAgICAgICAgY29udGVudEVkaXRhYmxlPXshcHJvcHMuaXNSZWFkT25seX1cbiAgICAgICAgICAgIGNzcz17Z2V0U2VsZWN0YWJsZVNlYXJjaElucHV0U3R5bGVzKHByb3BzKX1cbiAgICAgICAgICAgIHsuLi5maWx0ZXJEYXRhQXR0cmlidXRlcyhwcm9wcyl9XG4gICAgICAgICAgICAvKiBBUklBICovXG4gICAgICAgICAgICBhcmlhLWludmFsaWQ9e3Byb3BzWydhcmlhLWludmFsaWQnXX1cbiAgICAgICAgICAgIGFyaWEtZXJyb3JtZXNzYWdlPXtwcm9wc1snYXJpYS1lcnJvcm1lc3NhZ2UnXX1cbiAgICAgICAgICAgIGRhdGEtdGVzdGlkPVwic2VsZWN0YWJsZS1pbnB1dFwiXG4gICAgICAgICAgICBvbktleURvd249eyhldmVudCkgPT4ge1xuICAgICAgICAgICAgICBpZiAoIXByb3BzLmlzUmVhZE9ubHkgJiYgZXZlbnQua2V5ID09PSAnRW50ZXInKSB7XG4gICAgICAgICAgICAgICAgaGFuZGxlU3VibWl0KGV2ZW50KTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAvPlxuICAgICAgICAgIHtwcm9wcy5pc0NsZWFyYWJsZSAmJlxuICAgICAgICAgICAgc2VhcmNoVmFsdWUgJiZcbiAgICAgICAgICAgICFwcm9wcy5pc0Rpc2FibGVkICYmXG4gICAgICAgICAgICAhcHJvcHMuaXNSZWFkT25seSAmJiAoXG4gICAgICAgICAgICAgIDxTZWNvbmRhcnlJY29uQnV0dG9uXG4gICAgICAgICAgICAgICAgaWNvbj17PENsb3NlSWNvbiAvPn1cbiAgICAgICAgICAgICAgICBzaXplPVwibWVkaXVtXCJcbiAgICAgICAgICAgICAgICBsYWJlbD17J2NsZWFyLWJ1dHRvbid9XG4gICAgICAgICAgICAgICAgb25DbGljaz17aGFuZGxlQ2xlYXJ9XG4gICAgICAgICAgICAgICAgY3NzPXtnZXRDbGVhckljb25CdXR0b25TdHlsZXMocHJvcHMpfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICB7cHJvcHMuc2hvd1N1Ym1pdEJ1dHRvbiAmJiAoXG4gICAgICAgICAgICA8U2Vjb25kYXJ5SWNvbkJ1dHRvblxuICAgICAgICAgICAgICBpY29uPXs8U2VhcmNoSWNvbiAvPn1cbiAgICAgICAgICAgICAgbGFiZWw9eydzZWFyY2gtYnV0dG9uJ31cbiAgICAgICAgICAgICAgb25DbGljaz17aGFuZGxlU3VibWl0fVxuICAgICAgICAgICAgICBjc3M9e2dldFNlYXJjaEljb25CdXR0b25TdHlsZXMocHJvcHMpfVxuICAgICAgICAgICAgICBpc0Rpc2FibGVkPXtwcm9wcy5pc0Rpc2FibGVkfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvQ29udGFpbmVyPlxuICAgIDwvQ29uc3RyYWludHMuSG9yaXpvbnRhbD5cbiAgKTtcbn07XG5cblNlbGVjdGFibGVTZWFyY2hJbnB1dC5kaXNwbGF5TmFtZSA9ICdTZWxlY3RhYmxlU2VhcmNoSW5wdXQnO1xuU2VsZWN0YWJsZVNlYXJjaElucHV0LmRlZmF1bHRQcm9wcyA9IGRlZmF1bHRQcm9wcztcblNlbGVjdGFibGVTZWFyY2hJbnB1dC5pc0VtcHR5ID0gKFxuICBmb3JtVmFsdWU6IFRTZWxlY3RhYmxlU2VhcmNoSW5wdXRQcm9wc1sndmFsdWUnXVxuKSA9PiAhZm9ybVZhbHVlIHx8IGZvcm1WYWx1ZS50ZXh0LnRyaW0oKSA9PT0gJyc7XG5TZWxlY3RhYmxlU2VhcmNoSW5wdXQuZ2V0VGV4dElucHV0SWQgPSBnZXRUZXh0SW5wdXROYW1lO1xuU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldERyb3Bkb3duSWQgPSBnZXREcm9wZG93bk5hbWU7XG5cbmV4cG9ydCBkZWZhdWx0IFNlbGVjdGFibGVTZWFyY2hJbnB1dDtcbiJdfQ== */"],
|
|
416
|
-
children: [jsx("input", _objectSpread(_objectSpread({
|
|
436
|
+
css: [getSelectableSearchInputContainerStyles(props), dropdownHasFocus && !props.isReadOnly && /*#__PURE__*/css("border-left-color:", designTokens.borderColorForInputWhenFocused, ";&:hover{border-left-color:", designTokens.borderColorForInputWhenFocused, ";}" + (process.env.NODE_ENV === "production" ? "" : ";label:SelectableSearchInput;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNlbGVjdGFibGUtc2VhcmNoLWlucHV0LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE2YWlCIiwiZmlsZSI6InNlbGVjdGFibGUtc2VhcmNoLWlucHV0LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIHR5cGUgTW91c2VFdmVudCxcbiAgdHlwZSBLZXlib2FyZEV2ZW50LFxuICB0eXBlIENoYW5nZUV2ZW50LFxuICB0eXBlIFJlYWN0Tm9kZSxcbiAgdXNlU3RhdGUsXG4gIHVzZUNhbGxiYWNrLFxuICB1c2VSZWYsXG59IGZyb20gJ3JlYWN0JztcbmltcG9ydCBTZWNvbmRhcnlJY29uQnV0dG9uIGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3NlY29uZGFyeS1pY29uLWJ1dHRvbic7XG5pbXBvcnQgQ29uc3RyYWludHMgZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvY29uc3RyYWludHMnO1xuaW1wb3J0IHsgU2VhcmNoSWNvbiwgQ2xvc2VJY29uIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvaWNvbnMnO1xuaW1wb3J0IHtcbiAgY3JlYXRlU2VxdWVudGlhbElkLFxuICBmaWx0ZXJEYXRhQXR0cmlidXRlcyxcbiAgd2FybmluZyxcbn0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvdXRpbHMnO1xuaW1wb3J0IHsgd2FybklmTWVudVBvcnRhbFByb3BzQXJlTWlzc2luZyB9IGZyb20gJ0Bjb21tZXJjZXRvb2xzLXVpa2l0L3NlbGVjdC11dGlscyc7XG5pbXBvcnQge1xuICBnZXRDbGVhckljb25CdXR0b25TdHlsZXMsXG4gIGdldFNlYXJjaEljb25CdXR0b25TdHlsZXMsXG4gIGdldFNlbGVjdGFibGVTZWFyY2hJbnB1dENvbnRhaW5lclN0eWxlcyxcbiAgZ2V0U2VsZWN0YWJsZVNlYXJjaElucHV0U3R5bGVzLFxufSBmcm9tICcuL3NlbGVjdGFibGUtc2VhcmNoLWlucHV0LnN0eWxlcyc7XG5pbXBvcnQgU2VsZWN0YWJsZVNlbGVjdCBmcm9tICcuL3NlbGVjdGFibGUtc2VsZWN0JztcbmltcG9ydCB7IHVzZUZpZWxkSWQsIHVzZVRvZ2dsZVN0YXRlIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvaG9va3MnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgZGVzaWduVG9rZW5zIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvZGVzaWduLXN5c3RlbSc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgeyB0eXBlIFByb3BzIGFzIFJlYWN0U2VsZWN0UHJvcHMgfSBmcm9tICdyZWFjdC1zZWxlY3QnO1xuXG5jb25zdCBDb250YWluZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuYDtcblxuY29uc3QgZ2V0VGV4dElucHV0TmFtZSA9IChuYW1lPzogc3RyaW5nKSA9PlxuICBuYW1lID8gYCR7bmFtZX0udGV4dElucHV0YCA6IHVuZGVmaW5lZDtcblxuY29uc3QgZ2V0RHJvcGRvd25OYW1lID0gKG5hbWU/OiBzdHJpbmcpID0+XG4gIG5hbWUgPyBgJHtuYW1lfS5kcm9wZG93bmAgOiB1bmRlZmluZWQ7XG5cbmV4cG9ydCB0eXBlIFRDdXN0b21FdmVudCA9IHtcbiAgdGFyZ2V0OiB7XG4gICAgaWQ/OiBzdHJpbmc7XG4gICAgbmFtZT86IHN0cmluZztcbiAgICB2YWx1ZT86IHN0cmluZyB8IHN0cmluZ1tdIHwgbnVsbDtcbiAgfTtcbiAgcGVyc2lzdD86ICgpID0+IHZvaWQ7XG59O1xuXG5leHBvcnQgdHlwZSBUVmFsdWUgPSB7XG4gIHRleHQ6IHN0cmluZztcbiAgb3B0aW9uOiBzdHJpbmc7XG59O1xuXG5leHBvcnQgdHlwZSBUT3B0aW9uID0ge1xuICB2YWx1ZTogc3RyaW5nO1xuICBsYWJlbD86IFJlYWN0Tm9kZTtcbn07XG5cbmV4cG9ydCB0eXBlIFRPcHRpb25PYmplY3QgPSB7XG4gIG9wdGlvbnM6IFRPcHRpb25bXTtcbn07XG5cbmV4cG9ydCB0eXBlIFRPcHRpb25zID0gVE9wdGlvbltdIHwgVE9wdGlvbk9iamVjdFtdO1xuXG5leHBvcnQgdHlwZSBUU2VsZWN0YWJsZVNlYXJjaElucHV0UHJvcHMgPSB7XG4gIC8qKlxuICAgKiBVc2VkIGFzIEhUTUwgaWQgcHJvcGVydHkuIEFuIGlkIGlzIGF1dG8tZ2VuZXJhdGVkIHdoZW4gaXQgaXMgbm90IHNwZWNpZmllZC5cbiAgICovXG4gIGlkPzogc3RyaW5nO1xuICAvKipcbiAgICogVXNlZCBhcyBIVE1MIGF1dG9jb21wbGV0ZSBwcm9wZXJ0eVxuICAgKi9cbiAgYXV0b0NvbXBsZXRlPzogc3RyaW5nO1xuICAvKipcbiAgICogSW5kaWNhdGUgaWYgdGhlIHZhbHVlIGVudGVyZWQgaW4gdGhlIGlucHV0IGlzIGludmFsaWQuXG4gICAqL1xuICAnYXJpYS1pbnZhbGlkJz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBIVE1MIElEIG9mIGFuIGVsZW1lbnQgY29udGFpbmluZyBhbiBlcnJvciBtZXNzYWdlIHJlbGF0ZWQgdG8gdGhlIGlucHV0LlxuICAgKi9cbiAgJ2FyaWEtZXJyb3JtZXNzYWdlJz86IHN0cmluZztcbiAgLyoqXG4gICAqIFVzZWQgYXMgSFRNTCBuYW1lIG9mIHRoZSBpbnB1dCBjb21wb25lbnQgcHJvcGVydHkuXG4gICAqL1xuICBuYW1lPzogc3RyaW5nO1xuICAvKipcbiAgICogVmFsdWUgb2YgdGhlIGlucHV0LiBDb25zaXN0cyBvZiB0ZXh0IGlucHV0IGFuZCBzZWxlY3RlZCBvcHRpb24uXG4gICAqL1xuICB2YWx1ZTogVFZhbHVlO1xuICAvKipcbiAgICogQ2FsbGVkIHdpdGggdGhlIGV2ZW50IG9mIHRoZSBpbnB1dCBvciBkcm9wZG93biB3aGVuIGVpdGhlciB0aGUgc2VsZWN0YWJsZSBkcm9wZG93biBvciB0aGUgdGV4dCBpbnB1dCBoYXZlIGNoYW5nZWQuXG4gICAqIFRoZSBjaGFuZ2UgZXZlbnQgZnJvbSB0aGUgdGV4dCBpbnB1dCBoYXMgYSBzdWZmaXggb2YgYC50ZXh0SW5wdXRgIGFuZCB0aGUgY2hhbmdlIGV2ZW50IGZyb20gdGhlIGRyb3Bkb3duIGhhcyBhIHN1ZmZpeCBvZiBgLmRyb3Bkb3duYC5cbiAgICovXG4gIG9uQ2hhbmdlPzogKGV2ZW50OiBUQ3VzdG9tRXZlbnQpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiBpbnB1dCBpcyBibHVycmVkXG4gICAqL1xuICBvbkJsdXI/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGlucHV0IGlzIGZvY3VzZWRcbiAgICovXG4gIG9uRm9jdXM/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIEhhbmRsZXIgd2hlbiB0aGUgc2VhcmNoIGJ1dHRvbiBpcyBjbGlja2VkLlxuICAgKi9cbiAgb25TdWJtaXQ6ICh2YWx1ZTogVFZhbHVlKSA9PiB2b2lkO1xuICAvKipcbiAgICogSGFuZGxlciB3aGVuIHRoZSBjbGVhciBidXR0b24gaXMgY2xpY2tlZC5cbiAgICovXG4gIG9uUmVzZXQ/OiAoKSA9PiB2b2lkO1xuICAvKipcbiAgICogRm9jdXMgdGhlIGlucHV0IG9uIGluaXRpYWwgcmVuZGVyXG4gICAqL1xuICBpc0F1dG9mb2N1c3NlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgdGhhdCB0aGUgaW5wdXQgY2Fubm90IGJlIG1vZGlmaWVkIChlLmcgbm90IGF1dGhvcml6ZWQsIG9yIGNoYW5nZXMgY3VycmVudGx5IHNhdmluZykuXG4gICAqL1xuICBpc0Rpc2FibGVkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGF0IHRoZSBmaWVsZCBpcyBkaXNwbGF5aW5nIHJlYWQtb25seSBjb250ZW50XG4gICAqL1xuICBpc1JlYWRPbmx5PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyBpZiB0aGUgaW5wdXQgaGFzIGludmFsaWQgdmFsdWVzXG4gICAqL1xuICBoYXNFcnJvcj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaWYgdGhlIGlucHV0IGhhcyB3YXJuaW5nIHZhbHVlc1xuICAgKi9cbiAgaGFzV2FybmluZz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBQbGFjZWhvbGRlciB0ZXh0IGZvciB0aGUgaW5wdXRcbiAgICovXG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nO1xuICAvKipcbiAgICogSW5kaWNhdGVzIGlmIHRoZSBpbnB1dCBzaG91bGQgYmUgY2xlYXJlZCB3aGVuIHRoZSBjbGVhciBidXR0b24gaXMgY2xpY2tlZC5cbiAgICogRGVmYXVsdHMgdG8gdHJ1ZS5cbiAgICpcbiAgICovXG4gIGlzQ2xlYXJhYmxlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEhvcml6b250YWwgc2l6ZSBsaW1pdCBvZiB0aGUgaW5wdXQgZmllbGRzLlxuICAgKi9cbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQ/OiAxMCB8IDExIHwgMTIgfCAxMyB8IDE0IHwgMTUgfCAxNiB8ICdzY2FsZScgfCAnYXV0byc7XG4gIC8qKlxuICAgKiBBcnJheSBvZiBvcHRpb25zIHRoYXQgcG9wdWxhdGUgdGhlIHNlbGVjdCBtZW51XG4gICAqL1xuICBvcHRpb25zOiBUT3B0aW9ucztcbiAgLyoqXG4gICAqIHotaW5kZXggdmFsdWUgZm9yIHRoZSBtZW51IHBvcnRhbFxuICAgKiA8YnI+XG4gICAqIFVzZSBpbiBjb25qdW5jdGlvbiB3aXRoIGBtZW51UG9ydGFsVGFyZ2V0YFxuICAgKi9cbiAgbWVudVBvcnRhbFpJbmRleD86IG51bWJlcjtcbiAgLyoqXG4gICAqIERvbSBlbGVtZW50IHRvIHBvcnRhbCB0aGUgc2VsZWN0IG1lbnUgdG9cbiAgICogPGJyPlxuICAgKiBbUHJvcHMgZnJvbSBSZWFjdCBzZWxlY3Qgd2FzIHVzZWRdKGh0dHBzOi8vcmVhY3Qtc2VsZWN0LmNvbS9wcm9wcylcbiAgICovXG4gIG1lbnVQb3J0YWxUYXJnZXQ/OiBSZWFjdFNlbGVjdFByb3BzWydtZW51UG9ydGFsVGFyZ2V0J107XG4gIC8qKlxuICAgKiB3aGV0aGVyIHRoZSBtZW51IHNob3VsZCBibG9jayBzY3JvbGwgd2hpbGUgb3BlblxuICAgKiA8YnI+XG4gICAqIFtQcm9wcyBmcm9tIFJlYWN0IHNlbGVjdCB3YXMgdXNlZF0oaHR0cHM6Ly9yZWFjdC1zZWxlY3QuY29tL3Byb3BzKVxuICAgKi9cbiAgbWVudVNob3VsZEJsb2NrU2Nyb2xsPzogUmVhY3RTZWxlY3RQcm9wc1snbWVudVNob3VsZEJsb2NrU2Nyb2xsJ107XG4gIC8qKlxuICAgKiBIYW5kbGUgY2hhbmdlIGV2ZW50cyBvbiB0aGUgbWVudSBpbnB1dFxuICAgKiA8YnI+XG4gICAqIFtQcm9wcyBmcm9tIFJlYWN0IHNlbGVjdCB3YXMgdXNlZF0oaHR0cHM6Ly9yZWFjdC1zZWxlY3QuY29tL3Byb3BzKVxuICAgKi9cbiAgb25NZW51SW5wdXRDaGFuZ2U/OiBSZWFjdFNlbGVjdFByb3BzWydvbklucHV0Q2hhbmdlJ107XG4gIC8qKlxuICAgKiBDYW4gYmUgdXNlZCB0byByZW5kZXIgYSBjdXN0b20gdmFsdWUgd2hlbiB0aGVyZSBhcmUgbm8gb3B0aW9ucyAoZWl0aGVyIGJlY2F1c2Ugb2Ygbm8gc2VhcmNoIHJlc3VsdHMsIG9yIGFsbCBvcHRpb25zIGhhdmUgYmVlbiB1c2VkLCBvciB0aGVyZSB3ZXJlIG5vbmUgaW4gdGhlIGZpcnN0IHBsYWNlKS4gR2V0cyBjYWxsZWQgd2l0aCB7IGlucHV0VmFsdWU6IFN0cmluZyB9LlxuICAgKiA8YnIgLz5cbiAgICogYGlucHV0VmFsdWVgIHdpbGwgYmUgYW4gZW1wdHkgc3RyaW5nIHdoZW4gbm8gc2VhcmNoIHRleHQgaXMgcHJlc2VudC5cbiAgICogPGJyPlxuICAgKiBbUHJvcHMgZnJvbSBSZWFjdCBzZWxlY3Qgd2FzIHVzZWRdKGh0dHBzOi8vcmVhY3Qtc2VsZWN0LmNvbS9wcm9wcylcbiAgICovXG4gIG5vTWVudU9wdGlvbnNNZXNzYWdlPzogUmVhY3RTZWxlY3RQcm9wc1snbm9PcHRpb25zTWVzc2FnZSddO1xuICAvKipcbiAgICogV2hldGhlciB0byBlbmFibGUgc2VhcmNoIGZ1bmN0aW9uYWxpdHkuXG4gICAqIDxicj5cbiAgICogW1Byb3BzIGZyb20gUmVhY3Qgc2VsZWN0IHdhcyB1c2VkXShodHRwczovL3JlYWN0LXNlbGVjdC5jb20vcHJvcHMpXG4gICAqL1xuICBpc01lbnVTZWFyY2hhYmxlPzogUmVhY3RTZWxlY3RQcm9wc1snaXNTZWFyY2hhYmxlJ107XG4gIC8qKlxuICAgKiBNYXhpbXVtIGhlaWdodCBvZiB0aGUgbWVudSBiZWZvcmUgc2Nyb2xsaW5nXG4gICAqIDxicj5cbiAgICogW1Byb3BzIGZyb20gUmVhY3Qgc2VsZWN0IHdhcyB1c2VkXShodHRwczovL3JlYWN0LXNlbGVjdC5jb20vcHJvcHMpXG4gICAqL1xuICBtYXhNZW51SGVpZ2h0PzogUmVhY3RTZWxlY3RQcm9wc1snbWF4TWVudUhlaWdodCddO1xuICAvKipcbiAgICogV2hldGhlciB0aGUgbWVudSBzaG91bGQgY2xvc2UgYWZ0ZXIgYSB2YWx1ZSBpcyBzZWxlY3RlZC4gRGVmYXVsdHMgdG8gYHRydWVgLlxuICAgKiA8YnI+XG4gICAqIFtQcm9wcyBmcm9tIFJlYWN0IHNlbGVjdCB3YXMgdXNlZF0oaHR0cHM6Ly9yZWFjdC1zZWxlY3QuY29tL3Byb3BzKVxuICAgKi9cbiAgY2xvc2VNZW51T25TZWxlY3Q/OiBSZWFjdFNlbGVjdFByb3BzWydjbG9zZU1lbnVPblNlbGVjdCddO1xuICAvKipcbiAgICogSG9yaXpvbnRhbCBzaXplIGxpbWl0IGZvciB0aGUgZHJvcGRvd24gbWVudS5cbiAgICovXG4gIG1lbnVIb3Jpem9udGFsQ29uc3RyYWludD86IDMgfCA0IHwgNTtcbiAgLyoqXG4gICAqIFNob3cgc3VibWl0IGJ1dHRvbiBpbiB0aGUgaW5wdXRcbiAgICovXG4gIHNob3dTdWJtaXRCdXR0b24/OiBib29sZWFuO1xuICAvKipcbiAgICogIHVzZWQgdG8gcGFzcyBkYXRhLSogcHJvcHMgdG8gdGhlIHNlbGVjdCBjb21wb25lbnQuXG4gICAqIGVnOiBzZWxlY3REYXRhUHJvcHM9e1t7ICdwcm9wLTEnOiAndmFsdWUtMScgfSwgeyAncHJvcC0yJzogJ3ZhbHVlLTInIH1dfVxuICAgKi9cbiAgc2VsZWN0RGF0YVByb3BzPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgLyoqXG4gICAqICB1c2VkIHRvIHBhc3MgZGF0YS0qIHByb3BzIHRvIHRoZSBpbnB1dCBlbGVtZW50LlxuICAgKiBlZzogaW5wdXREYXRhUHJvcHM9e1t7ICdwcm9wLTEnOiAndmFsdWUtMScgfSwgeyAncHJvcC0yJzogJ3ZhbHVlLTInIH1dfVxuICAgKi9cbiAgaW5wdXREYXRhUHJvcHM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xufTtcblxuY29uc3QgZGVmYXVsdFByb3BzOiBQaWNrPFxuICBUU2VsZWN0YWJsZVNlYXJjaElucHV0UHJvcHMsXG4gIHwgJ2hvcml6b250YWxDb25zdHJhaW50J1xuICB8ICdpc0NsZWFyYWJsZSdcbiAgfCAnbWVudUhvcml6b250YWxDb25zdHJhaW50J1xuICB8ICdzaG93U3VibWl0QnV0dG9uJ1xuICB8ICdtZW51UG9ydGFsWkluZGV4J1xuICB8ICdvcHRpb25zJ1xuPiA9IHtcbiAgaG9yaXpvbnRhbENvbnN0cmFpbnQ6ICdzY2FsZScsXG4gIGlzQ2xlYXJhYmxlOiB0cnVlLFxuICBtZW51SG9yaXpvbnRhbENvbnN0cmFpbnQ6IDMsXG4gIHNob3dTdWJtaXRCdXR0b246IHRydWUsXG4gIG1lbnVQb3J0YWxaSW5kZXg6IDEsXG4gIG9wdGlvbnM6IFtdLFxufTtcblxuY29uc3Qgc2VsZWN0YWJsZVNlYXJjaElucHV0U2VxdWVudGlhbElkID0gY3JlYXRlU2VxdWVudGlhbElkKFxuICAnc2VsZWN0YWJsZS1zZWFyY2gtaW5wdXQtJ1xuKTtcblxuY29uc3QgaXNPcHRpb25PYmplY3QgPSAoXG4gIG9wdGlvbjogVE9wdGlvbiB8IFRPcHRpb25PYmplY3Rcbik6IG9wdGlvbiBpcyBUT3B0aW9uT2JqZWN0ID0+IChvcHRpb24gYXMgVE9wdGlvbk9iamVjdCkub3B0aW9ucyAhPT0gdW5kZWZpbmVkO1xuXG5jb25zdCB0cmFuc2Zvcm1EYXRhUHJvcHMgPSAoZGF0YVByb3BzPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPikgPT5cbiAgT2JqZWN0LmZyb21FbnRyaWVzKFxuICAgIE9iamVjdC5lbnRyaWVzKGRhdGFQcm9wcyB8fCB7fSkubWFwKChba2V5LCB2YWx1ZV0pID0+IFtcbiAgICAgIGBkYXRhLSR7a2V5fWAsXG4gICAgICB2YWx1ZSxcbiAgICBdKVxuICApO1xuXG5jb25zdCBTZWxlY3RhYmxlU2VhcmNoSW5wdXQgPSAocHJvcHM6IFRTZWxlY3RhYmxlU2VhcmNoSW5wdXRQcm9wcykgPT4ge1xuICBjb25zdCBbZHJvcGRvd25IYXNGb2N1cywgdG9nZ2xlRHJvcGRvd25IYXNGb2N1c10gPSB1c2VUb2dnbGVTdGF0ZShmYWxzZSk7XG4gIGNvbnN0IFtzZWFyY2hWYWx1ZSwgc2V0U2VhcmNoVmFsdWVdID0gdXNlU3RhdGUocHJvcHMudmFsdWUudGV4dCB8fCAnJyk7XG4gIGNvbnN0IGNvbnRhaW5lclJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbCk7XG4gIGNvbnN0IHRleHRJbnB1dFJlZiA9IHVzZVJlZjxIVE1MSW5wdXRFbGVtZW50PihudWxsKTtcblxuICBjb25zdCBsZWdhY3lEYXRhUHJvcHMgPSBmaWx0ZXJEYXRhQXR0cmlidXRlcyhwcm9wcyk7XG4gIGNvbnN0IHRyYW5zZm9ybWVkU2VsZWN0RGF0YVByb3BzID0gdHJhbnNmb3JtRGF0YVByb3BzKHByb3BzLnNlbGVjdERhdGFQcm9wcyk7XG4gIGNvbnN0IHRyYW5zZm9ybWVkSW5wdXREYXRhUHJvcHMgPSB0cmFuc2Zvcm1EYXRhUHJvcHMocHJvcHMuaW5wdXREYXRhUHJvcHMpO1xuXG4gIGNvbnN0IG9wdGlvbnNXaXRob3V0R3JvdXBzID0gcHJvcHMub3B0aW9ucy5mbGF0TWFwKChvcHRpb24pID0+IHtcbiAgICBpZiAoaXNPcHRpb25PYmplY3Qob3B0aW9uKSkge1xuICAgICAgcmV0dXJuIG9wdGlvbi5vcHRpb25zO1xuICAgIH1cbiAgICByZXR1cm4gb3B0aW9uO1xuICB9KTtcblxuICBjb25zdCBzZWxlY3RlZE9wdGlvbiA9IG9wdGlvbnNXaXRob3V0R3JvdXBzLmZpbmQoXG4gICAgKG9wdGlvbikgPT4gb3B0aW9uLnZhbHVlID09PSBwcm9wcy52YWx1ZS5vcHRpb25cbiAgKTtcblxuICBjb25zdCBzZWxlY3RhYmxTZWFyY2hJbnB1dElkID0gdXNlRmllbGRJZChcbiAgICBwcm9wcy5pZCxcbiAgICBzZWxlY3RhYmxlU2VhcmNoSW5wdXRTZXF1ZW50aWFsSWRcbiAgKTtcblxuICBpZiAoIXByb3BzLmlzUmVhZE9ubHkpIHtcbiAgICB3YXJuaW5nKFxuICAgICAgdHlwZW9mIHByb3BzLm9uQ2hhbmdlID09PSAnZnVuY3Rpb24nLFxuICAgICAgJ1NlbGVjdGFibGVTZWFyY2hJbnB1dDogYG9uQ2hhbmdlYCBpcyByZXF1aXJlZCB3aGVuIGlzIG5vdCByZWFkIG9ubHkuJ1xuICAgICk7XG4gIH1cblxuICB3YXJuSWZNZW51UG9ydGFsUHJvcHNBcmVNaXNzaW5nKHtcbiAgICBtZW51UG9ydGFsWkluZGV4OiBwcm9wcy5tZW51UG9ydGFsWkluZGV4LFxuICAgIG1lbnVQb3J0YWxUYXJnZXQ6IHByb3BzLm1lbnVQb3J0YWxUYXJnZXQsXG4gICAgY29tcG9uZW50TmFtZTogJ1NlbGVjdGFibGVTZWFyY2hJbnB1dCcsXG4gIH0pO1xuXG4gIGNvbnN0IHsgb25Gb2N1cywgb25CbHVyLCBuYW1lIH0gPSBwcm9wcztcbiAgY29uc3QgaGFuZGxlVGV4dElucHV0Rm9jdXMgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgaWYgKG9uRm9jdXMpIHtcbiAgICAgIG9uRm9jdXMoe1xuICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICBpZDogU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldFRleHRJbnB1dElkKHNlbGVjdGFibFNlYXJjaElucHV0SWQpLFxuICAgICAgICAgIG5hbWU6IGdldFRleHRJbnB1dE5hbWUobmFtZSksXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9XG4gIH0sIFtvbkZvY3VzLCBzZWxlY3RhYmxTZWFyY2hJbnB1dElkLCBuYW1lXSk7XG5cbiAgY29uc3QgaGFuZGxlVGV4dElucHV0Qmx1ciA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBpZiAob25CbHVyKSB7XG4gICAgICBvbkJsdXIoe1xuICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICBpZDogU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldFRleHRJbnB1dElkKHNlbGVjdGFibFNlYXJjaElucHV0SWQpLFxuICAgICAgICAgIG5hbWU6IGdldFRleHRJbnB1dE5hbWUobmFtZSksXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9XG4gIH0sIFtvbkJsdXIsIHNlbGVjdGFibFNlYXJjaElucHV0SWQsIG5hbWVdKTtcblxuICBjb25zdCBoYW5kbGVDbGVhciA9ICgpID0+IHtcbiAgICBzZXRTZWFyY2hWYWx1ZSgnJyk7XG4gICAgaWYgKHByb3BzLm9uUmVzZXQpIHtcbiAgICAgIHByb3BzLm9uUmVzZXQoKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlQ2hhbmdlID0gKGV2ZW50OiBDaGFuZ2VFdmVudDxIVE1MSW5wdXRFbGVtZW50PikgPT4ge1xuICAgIHNldFNlYXJjaFZhbHVlKGV2ZW50LnRhcmdldC52YWx1ZSk7XG4gICAgaWYgKHByb3BzLm9uQ2hhbmdlKSB7XG4gICAgICBwcm9wcy5vbkNoYW5nZSh7XG4gICAgICAgIHRhcmdldDoge1xuICAgICAgICAgIGlkOiBTZWxlY3RhYmxlU2VhcmNoSW5wdXQuZ2V0VGV4dElucHV0SWQoc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCksXG4gICAgICAgICAgbmFtZTogZ2V0VGV4dElucHV0TmFtZShwcm9wcy5uYW1lKSxcbiAgICAgICAgICB2YWx1ZTogZXZlbnQudGFyZ2V0LnZhbHVlLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGhhbmRsZVN1Ym1pdCA9IChcbiAgICBldmVudDpcbiAgICAgIHwgS2V5Ym9hcmRFdmVudDxIVE1MQnV0dG9uRWxlbWVudD5cbiAgICAgIHwgTW91c2VFdmVudDxIVE1MQnV0dG9uRWxlbWVudD5cbiAgICAgIHwgS2V5Ym9hcmRFdmVudDxIVE1MSW5wdXRFbGVtZW50PlxuICApID0+IHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIGlmIChwcm9wcy5vblN1Ym1pdCkge1xuICAgICAgcHJvcHMub25TdWJtaXQoe1xuICAgICAgICB0ZXh0OiBzZWFyY2hWYWx1ZSxcbiAgICAgICAgb3B0aW9uOiBzZWxlY3RlZE9wdGlvbj8udmFsdWUgPz8gJycsXG4gICAgICB9KTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgZHJvcGRvd25OYW1lID0gZ2V0RHJvcGRvd25OYW1lKHByb3BzLm5hbWUpO1xuICBjb25zdCBkcm9wZG93bklkID0gU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldERyb3Bkb3duSWQoXG4gICAgc2VsZWN0YWJsU2VhcmNoSW5wdXRJZFxuICApO1xuXG4gIGNvbnN0IGhhbmRsZURyb3Bkb3duRm9jdXMgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgaWYgKG9uRm9jdXMpIHtcbiAgICAgIG9uRm9jdXMoe1xuICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICBpZDogZHJvcGRvd25JZCxcbiAgICAgICAgICBuYW1lOiBkcm9wZG93bk5hbWUsXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9XG4gICAgdG9nZ2xlRHJvcGRvd25IYXNGb2N1cyh0cnVlKTtcbiAgfSwgW29uRm9jdXMsIHRvZ2dsZURyb3Bkb3duSGFzRm9jdXMsIGRyb3Bkb3duTmFtZSwgZHJvcGRvd25JZF0pO1xuXG4gIGNvbnN0IGhhbmRsZURyb3Bkb3duQmx1ciA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBpZiAob25CbHVyKSB7XG4gICAgICBvbkJsdXIoe1xuICAgICAgICB0YXJnZXQ6IHtcbiAgICAgICAgICBpZDogZHJvcGRvd25JZCxcbiAgICAgICAgICBuYW1lOiBkcm9wZG93bk5hbWUsXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9XG4gICAgdG9nZ2xlRHJvcGRvd25IYXNGb2N1cyhmYWxzZSk7XG4gIH0sIFt0b2dnbGVEcm9wZG93bkhhc0ZvY3VzLCBvbkJsdXIsIGRyb3Bkb3duTmFtZSwgZHJvcGRvd25JZF0pO1xuXG4gIGNvbnN0IGhhbmRsZUNvbnRhaW5lckJsdXIgPSB1c2VDYWxsYmFjayhcbiAgICAoZXZlbnQpID0+IHtcbiAgICAgIC8vIGVuc3VyZXMgdGhhdCBib3RoIGZpZWxkcyBhcmUgbWFya2VkIGFzIHRvdWNoZWQgd2hlbiBvbmUgb2YgdGhlbVxuICAgICAgLy8gaXMgYmx1cnJlZFxuICAgICAgaWYgKFxuICAgICAgICB0eXBlb2Ygb25CbHVyID09PSAnZnVuY3Rpb24nICYmXG4gICAgICAgICFjb250YWluZXJSZWYuY3VycmVudD8uY29udGFpbnMoZXZlbnQucmVsYXRlZFRhcmdldClcbiAgICAgICkge1xuICAgICAgICBvbkJsdXIoe1xuICAgICAgICAgIHRhcmdldDoge1xuICAgICAgICAgICAgaWQ6IFNlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXREcm9wZG93bklkKHNlbGVjdGFibFNlYXJjaElucHV0SWQpLFxuICAgICAgICAgICAgbmFtZTogZ2V0RHJvcGRvd25OYW1lKG5hbWUpLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuICAgICAgICBvbkJsdXIoe1xuICAgICAgICAgIHRhcmdldDoge1xuICAgICAgICAgICAgaWQ6IFNlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXRUZXh0SW5wdXRJZChzZWxlY3RhYmxTZWFyY2hJbnB1dElkKSxcbiAgICAgICAgICAgIG5hbWU6IGdldFRleHRJbnB1dE5hbWUobmFtZSksXG4gICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSxcbiAgICBbb25CbHVyLCBzZWxlY3RhYmxTZWFyY2hJbnB1dElkLCBuYW1lXVxuICApO1xuXG4gIHJldHVybiAoXG4gICAgPENvbnN0cmFpbnRzLkhvcml6b250YWwgbWF4PXtwcm9wcy5ob3Jpem9udGFsQ29uc3RyYWludH0+XG4gICAgICA8Q29udGFpbmVyXG4gICAgICAgIHJlZj17Y29udGFpbmVyUmVmfVxuICAgICAgICBvbkJsdXI9e2hhbmRsZUNvbnRhaW5lckJsdXJ9XG4gICAgICAgIGRhdGEtdGVzdGlkPVwic2VsZWN0YWJsZS1zZWFyY2gtaW5wdXQtY29udGFpbmVyXCJcbiAgICAgID5cbiAgICAgICAgPENvbnN0cmFpbnRzLkhvcml6b250YWwgbWF4PXtwcm9wcy5tZW51SG9yaXpvbnRhbENvbnN0cmFpbnR9PlxuICAgICAgICAgIDxTZWxlY3RhYmxlU2VsZWN0XG4gICAgICAgICAgICB7Li4ucHJvcHN9XG4gICAgICAgICAgICBpZD17U2VsZWN0YWJsZVNlYXJjaElucHV0LmdldERyb3Bkb3duSWQoc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCl9XG4gICAgICAgICAgICBuYW1lPXtnZXREcm9wZG93bk5hbWUocHJvcHMubmFtZSl9XG4gICAgICAgICAgICBkcm9wZG93bkhhc0ZvY3VzPXtkcm9wZG93bkhhc0ZvY3VzfVxuICAgICAgICAgICAgaGFuZGxlRHJvcGRvd25Gb2N1cz17aGFuZGxlRHJvcGRvd25Gb2N1c31cbiAgICAgICAgICAgIGhhbmRsZURyb3Bkb3duQmx1cj17aGFuZGxlRHJvcGRvd25CbHVyfVxuICAgICAgICAgICAgdGV4dElucHV0UmVmPXt0ZXh0SW5wdXRSZWZ9XG4gICAgICAgICAgICBzZWxlY3RlZE9wdGlvbj17c2VsZWN0ZWRPcHRpb259XG4gICAgICAgICAgICBkYXRhUHJvcHM9e3RyYW5zZm9ybWVkU2VsZWN0RGF0YVByb3BzfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvQ29uc3RyYWludHMuSG9yaXpvbnRhbD5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNzcz17W1xuICAgICAgICAgICAgZ2V0U2VsZWN0YWJsZVNlYXJjaElucHV0Q29udGFpbmVyU3R5bGVzKHByb3BzKSxcbiAgICAgICAgICAgIGRyb3Bkb3duSGFzRm9jdXMgJiZcbiAgICAgICAgICAgICAgIXByb3BzLmlzUmVhZE9ubHkgJiZcbiAgICAgICAgICAgICAgY3NzYFxuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAke2Rlc2lnblRva2Vucy5ib3JkZXJDb2xvckZvcklucHV0V2hlbkZvY3VzZWR9O1xuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICR7ZGVzaWduVG9rZW5zLmJvcmRlckNvbG9yRm9ySW5wdXRXaGVuRm9jdXNlZH07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBgLFxuICAgICAgICAgIF19XG4gICAgICAgID5cbiAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgIHJlZj17dGV4dElucHV0UmVmfVxuICAgICAgICAgICAgaWQ9e1NlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXRUZXh0SW5wdXRJZChzZWxlY3RhYmxTZWFyY2hJbnB1dElkKX1cbiAgICAgICAgICAgIG5hbWU9e2dldFRleHRJbnB1dE5hbWUocHJvcHMubmFtZSl9XG4gICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICB2YWx1ZT17c2VhcmNoVmFsdWV9XG4gICAgICAgICAgICBvbkNoYW5nZT17aGFuZGxlQ2hhbmdlfVxuICAgICAgICAgICAgb25CbHVyPXtoYW5kbGVUZXh0SW5wdXRCbHVyfVxuICAgICAgICAgICAgb25Gb2N1cz17aGFuZGxlVGV4dElucHV0Rm9jdXN9XG4gICAgICAgICAgICBkaXNhYmxlZD17cHJvcHMuaXNEaXNhYmxlZH1cbiAgICAgICAgICAgIHBsYWNlaG9sZGVyPXtwcm9wcy5wbGFjZWhvbGRlcn1cbiAgICAgICAgICAgIHJlYWRPbmx5PXtwcm9wcy5pc1JlYWRPbmx5fVxuICAgICAgICAgICAgYXV0b0ZvY3VzPXtwcm9wcy5pc0F1dG9mb2N1c3NlZH1cbiAgICAgICAgICAgIGF1dG9Db21wbGV0ZT17cHJvcHMuYXV0b0NvbXBsZXRlfVxuICAgICAgICAgICAgYXJpYS1yZWFkb25seT17cHJvcHMuaXNSZWFkT25seX1cbiAgICAgICAgICAgIGNvbnRlbnRFZGl0YWJsZT17IXByb3BzLmlzUmVhZE9ubHl9XG4gICAgICAgICAgICBjc3M9e2dldFNlbGVjdGFibGVTZWFyY2hJbnB1dFN0eWxlcyhwcm9wcyl9XG4gICAgICAgICAgICB7Li4udHJhbnNmb3JtZWRJbnB1dERhdGFQcm9wc31cbiAgICAgICAgICAgIHsuLi5sZWdhY3lEYXRhUHJvcHN9XG4gICAgICAgICAgICAvKiBBUklBICovXG4gICAgICAgICAgICBhcmlhLWludmFsaWQ9e3Byb3BzWydhcmlhLWludmFsaWQnXX1cbiAgICAgICAgICAgIGFyaWEtZXJyb3JtZXNzYWdlPXtwcm9wc1snYXJpYS1lcnJvcm1lc3NhZ2UnXX1cbiAgICAgICAgICAgIGRhdGEtdGVzdGlkPVwic2VsZWN0YWJsZS1pbnB1dFwiXG4gICAgICAgICAgICBvbktleURvd249eyhldmVudCkgPT4ge1xuICAgICAgICAgICAgICBpZiAoIXByb3BzLmlzUmVhZE9ubHkgJiYgZXZlbnQua2V5ID09PSAnRW50ZXInKSB7XG4gICAgICAgICAgICAgICAgaGFuZGxlU3VibWl0KGV2ZW50KTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAvPlxuICAgICAgICAgIHtwcm9wcy5pc0NsZWFyYWJsZSAmJlxuICAgICAgICAgICAgc2VhcmNoVmFsdWUgJiZcbiAgICAgICAgICAgICFwcm9wcy5pc0Rpc2FibGVkICYmXG4gICAgICAgICAgICAhcHJvcHMuaXNSZWFkT25seSAmJiAoXG4gICAgICAgICAgICAgIDxTZWNvbmRhcnlJY29uQnV0dG9uXG4gICAgICAgICAgICAgICAgaWNvbj17PENsb3NlSWNvbiAvPn1cbiAgICAgICAgICAgICAgICBzaXplPVwibWVkaXVtXCJcbiAgICAgICAgICAgICAgICBsYWJlbD17J2NsZWFyLWJ1dHRvbid9XG4gICAgICAgICAgICAgICAgb25DbGljaz17aGFuZGxlQ2xlYXJ9XG4gICAgICAgICAgICAgICAgY3NzPXtnZXRDbGVhckljb25CdXR0b25TdHlsZXMocHJvcHMpfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICB7cHJvcHMuc2hvd1N1Ym1pdEJ1dHRvbiAmJiAoXG4gICAgICAgICAgICA8U2Vjb25kYXJ5SWNvbkJ1dHRvblxuICAgICAgICAgICAgICBpY29uPXs8U2VhcmNoSWNvbiAvPn1cbiAgICAgICAgICAgICAgbGFiZWw9eydzZWFyY2gtYnV0dG9uJ31cbiAgICAgICAgICAgICAgb25DbGljaz17aGFuZGxlU3VibWl0fVxuICAgICAgICAgICAgICBjc3M9e2dldFNlYXJjaEljb25CdXR0b25TdHlsZXMocHJvcHMpfVxuICAgICAgICAgICAgICBpc0Rpc2FibGVkPXtwcm9wcy5pc0Rpc2FibGVkfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvQ29udGFpbmVyPlxuICAgIDwvQ29uc3RyYWludHMuSG9yaXpvbnRhbD5cbiAgKTtcbn07XG5cblNlbGVjdGFibGVTZWFyY2hJbnB1dC5kaXNwbGF5TmFtZSA9ICdTZWxlY3RhYmxlU2VhcmNoSW5wdXQnO1xuU2VsZWN0YWJsZVNlYXJjaElucHV0LmRlZmF1bHRQcm9wcyA9IGRlZmF1bHRQcm9wcztcblNlbGVjdGFibGVTZWFyY2hJbnB1dC5pc0VtcHR5ID0gKFxuICBmb3JtVmFsdWU6IFRTZWxlY3RhYmxlU2VhcmNoSW5wdXRQcm9wc1sndmFsdWUnXVxuKSA9PiAhZm9ybVZhbHVlIHx8IGZvcm1WYWx1ZS50ZXh0LnRyaW0oKSA9PT0gJyc7XG5TZWxlY3RhYmxlU2VhcmNoSW5wdXQuZ2V0VGV4dElucHV0SWQgPSBnZXRUZXh0SW5wdXROYW1lO1xuU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldERyb3Bkb3duSWQgPSBnZXREcm9wZG93bk5hbWU7XG5cbmV4cG9ydCBkZWZhdWx0IFNlbGVjdGFibGVTZWFyY2hJbnB1dDtcbiJdfQ== */"), process.env.NODE_ENV === "production" ? "" : ";label:SelectableSearchInput;", process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNlbGVjdGFibGUtc2VhcmNoLWlucHV0LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF5YVUiLCJmaWxlIjoic2VsZWN0YWJsZS1zZWFyY2gtaW5wdXQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgdHlwZSBNb3VzZUV2ZW50LFxuICB0eXBlIEtleWJvYXJkRXZlbnQsXG4gIHR5cGUgQ2hhbmdlRXZlbnQsXG4gIHR5cGUgUmVhY3ROb2RlLFxuICB1c2VTdGF0ZSxcbiAgdXNlQ2FsbGJhY2ssXG4gIHVzZVJlZixcbn0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IFNlY29uZGFyeUljb25CdXR0b24gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvc2Vjb25kYXJ5LWljb24tYnV0dG9uJztcbmltcG9ydCBDb25zdHJhaW50cyBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9jb25zdHJhaW50cyc7XG5pbXBvcnQgeyBTZWFyY2hJY29uLCBDbG9zZUljb24gfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9pY29ucyc7XG5pbXBvcnQge1xuICBjcmVhdGVTZXF1ZW50aWFsSWQsXG4gIGZpbHRlckRhdGFBdHRyaWJ1dGVzLFxuICB3YXJuaW5nLFxufSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC91dGlscyc7XG5pbXBvcnQgeyB3YXJuSWZNZW51UG9ydGFsUHJvcHNBcmVNaXNzaW5nIH0gZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvc2VsZWN0LXV0aWxzJztcbmltcG9ydCB7XG4gIGdldENsZWFySWNvbkJ1dHRvblN0eWxlcyxcbiAgZ2V0U2VhcmNoSWNvbkJ1dHRvblN0eWxlcyxcbiAgZ2V0U2VsZWN0YWJsZVNlYXJjaElucHV0Q29udGFpbmVyU3R5bGVzLFxuICBnZXRTZWxlY3RhYmxlU2VhcmNoSW5wdXRTdHlsZXMsXG59IGZyb20gJy4vc2VsZWN0YWJsZS1zZWFyY2gtaW5wdXQuc3R5bGVzJztcbmltcG9ydCBTZWxlY3RhYmxlU2VsZWN0IGZyb20gJy4vc2VsZWN0YWJsZS1zZWxlY3QnO1xuaW1wb3J0IHsgdXNlRmllbGRJZCwgdXNlVG9nZ2xlU3RhdGUgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9ob29rcyc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyBkZXNpZ25Ub2tlbnMgfSBmcm9tICdAY29tbWVyY2V0b29scy11aWtpdC9kZXNpZ24tc3lzdGVtJztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcbmltcG9ydCB7IHR5cGUgUHJvcHMgYXMgUmVhY3RTZWxlY3RQcm9wcyB9IGZyb20gJ3JlYWN0LXNlbGVjdCc7XG5cbmNvbnN0IENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG5gO1xuXG5jb25zdCBnZXRUZXh0SW5wdXROYW1lID0gKG5hbWU/OiBzdHJpbmcpID0+XG4gIG5hbWUgPyBgJHtuYW1lfS50ZXh0SW5wdXRgIDogdW5kZWZpbmVkO1xuXG5jb25zdCBnZXREcm9wZG93bk5hbWUgPSAobmFtZT86IHN0cmluZykgPT5cbiAgbmFtZSA/IGAke25hbWV9LmRyb3Bkb3duYCA6IHVuZGVmaW5lZDtcblxuZXhwb3J0IHR5cGUgVEN1c3RvbUV2ZW50ID0ge1xuICB0YXJnZXQ6IHtcbiAgICBpZD86IHN0cmluZztcbiAgICBuYW1lPzogc3RyaW5nO1xuICAgIHZhbHVlPzogc3RyaW5nIHwgc3RyaW5nW10gfCBudWxsO1xuICB9O1xuICBwZXJzaXN0PzogKCkgPT4gdm9pZDtcbn07XG5cbmV4cG9ydCB0eXBlIFRWYWx1ZSA9IHtcbiAgdGV4dDogc3RyaW5nO1xuICBvcHRpb246IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIFRPcHRpb24gPSB7XG4gIHZhbHVlOiBzdHJpbmc7XG4gIGxhYmVsPzogUmVhY3ROb2RlO1xufTtcblxuZXhwb3J0IHR5cGUgVE9wdGlvbk9iamVjdCA9IHtcbiAgb3B0aW9uczogVE9wdGlvbltdO1xufTtcblxuZXhwb3J0IHR5cGUgVE9wdGlvbnMgPSBUT3B0aW9uW10gfCBUT3B0aW9uT2JqZWN0W107XG5cbmV4cG9ydCB0eXBlIFRTZWxlY3RhYmxlU2VhcmNoSW5wdXRQcm9wcyA9IHtcbiAgLyoqXG4gICAqIFVzZWQgYXMgSFRNTCBpZCBwcm9wZXJ0eS4gQW4gaWQgaXMgYXV0by1nZW5lcmF0ZWQgd2hlbiBpdCBpcyBub3Qgc3BlY2lmaWVkLlxuICAgKi9cbiAgaWQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBVc2VkIGFzIEhUTUwgYXV0b2NvbXBsZXRlIHByb3BlcnR5XG4gICAqL1xuICBhdXRvQ29tcGxldGU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBJbmRpY2F0ZSBpZiB0aGUgdmFsdWUgZW50ZXJlZCBpbiB0aGUgaW5wdXQgaXMgaW52YWxpZC5cbiAgICovXG4gICdhcmlhLWludmFsaWQnPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEhUTUwgSUQgb2YgYW4gZWxlbWVudCBjb250YWluaW5nIGFuIGVycm9yIG1lc3NhZ2UgcmVsYXRlZCB0byB0aGUgaW5wdXQuXG4gICAqL1xuICAnYXJpYS1lcnJvcm1lc3NhZ2UnPzogc3RyaW5nO1xuICAvKipcbiAgICogVXNlZCBhcyBIVE1MIG5hbWUgb2YgdGhlIGlucHV0IGNvbXBvbmVudCBwcm9wZXJ0eS5cbiAgICovXG4gIG5hbWU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBWYWx1ZSBvZiB0aGUgaW5wdXQuIENvbnNpc3RzIG9mIHRleHQgaW5wdXQgYW5kIHNlbGVjdGVkIG9wdGlvbi5cbiAgICovXG4gIHZhbHVlOiBUVmFsdWU7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2l0aCB0aGUgZXZlbnQgb2YgdGhlIGlucHV0IG9yIGRyb3Bkb3duIHdoZW4gZWl0aGVyIHRoZSBzZWxlY3RhYmxlIGRyb3Bkb3duIG9yIHRoZSB0ZXh0IGlucHV0IGhhdmUgY2hhbmdlZC5cbiAgICogVGhlIGNoYW5nZSBldmVudCBmcm9tIHRoZSB0ZXh0IGlucHV0IGhhcyBhIHN1ZmZpeCBvZiBgLnRleHRJbnB1dGAgYW5kIHRoZSBjaGFuZ2UgZXZlbnQgZnJvbSB0aGUgZHJvcGRvd24gaGFzIGEgc3VmZml4IG9mIGAuZHJvcGRvd25gLlxuICAgKi9cbiAgb25DaGFuZ2U/OiAoZXZlbnQ6IFRDdXN0b21FdmVudCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIGlucHV0IGlzIGJsdXJyZWRcbiAgICovXG4gIG9uQmx1cj86IChldmVudDogVEN1c3RvbUV2ZW50KSA9PiB2b2lkO1xuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gaW5wdXQgaXMgZm9jdXNlZFxuICAgKi9cbiAgb25Gb2N1cz86IChldmVudDogVEN1c3RvbUV2ZW50KSA9PiB2b2lkO1xuICAvKipcbiAgICogSGFuZGxlciB3aGVuIHRoZSBzZWFyY2ggYnV0dG9uIGlzIGNsaWNrZWQuXG4gICAqL1xuICBvblN1Ym1pdDogKHZhbHVlOiBUVmFsdWUpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBIYW5kbGVyIHdoZW4gdGhlIGNsZWFyIGJ1dHRvbiBpcyBjbGlja2VkLlxuICAgKi9cbiAgb25SZXNldD86ICgpID0+IHZvaWQ7XG4gIC8qKlxuICAgKiBGb2N1cyB0aGUgaW5wdXQgb24gaW5pdGlhbCByZW5kZXJcbiAgICovXG4gIGlzQXV0b2ZvY3Vzc2VkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB0aGF0IHRoZSBpbnB1dCBjYW5ub3QgYmUgbW9kaWZpZWQgKGUuZyBub3QgYXV0aG9yaXplZCwgb3IgY2hhbmdlcyBjdXJyZW50bHkgc2F2aW5nKS5cbiAgICovXG4gIGlzRGlzYWJsZWQ/OiBib29sZWFuO1xuICAvKipcbiAgICogSW5kaWNhdGVzIHRoYXQgdGhlIGZpZWxkIGlzIGRpc3BsYXlpbmcgcmVhZC1vbmx5IGNvbnRlbnRcbiAgICovXG4gIGlzUmVhZE9ubHk/OiBib29sZWFuO1xuICAvKipcbiAgICogSW5kaWNhdGVzIGlmIHRoZSBpbnB1dCBoYXMgaW52YWxpZCB2YWx1ZXNcbiAgICovXG4gIGhhc0Vycm9yPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyBpZiB0aGUgaW5wdXQgaGFzIHdhcm5pbmcgdmFsdWVzXG4gICAqL1xuICBoYXNXYXJuaW5nPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFBsYWNlaG9sZGVyIHRleHQgZm9yIHRoZSBpbnB1dFxuICAgKi9cbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaWYgdGhlIGlucHV0IHNob3VsZCBiZSBjbGVhcmVkIHdoZW4gdGhlIGNsZWFyIGJ1dHRvbiBpcyBjbGlja2VkLlxuICAgKiBEZWZhdWx0cyB0byB0cnVlLlxuICAgKlxuICAgKi9cbiAgaXNDbGVhcmFibGU/OiBib29sZWFuO1xuICAvKipcbiAgICogSG9yaXpvbnRhbCBzaXplIGxpbWl0IG9mIHRoZSBpbnB1dCBmaWVsZHMuXG4gICAqL1xuICBob3Jpem9udGFsQ29uc3RyYWludD86IDEwIHwgMTEgfCAxMiB8IDEzIHwgMTQgfCAxNSB8IDE2IHwgJ3NjYWxlJyB8ICdhdXRvJztcbiAgLyoqXG4gICAqIEFycmF5IG9mIG9wdGlvbnMgdGhhdCBwb3B1bGF0ZSB0aGUgc2VsZWN0IG1lbnVcbiAgICovXG4gIG9wdGlvbnM6IFRPcHRpb25zO1xuICAvKipcbiAgICogei1pbmRleCB2YWx1ZSBmb3IgdGhlIG1lbnUgcG9ydGFsXG4gICAqIDxicj5cbiAgICogVXNlIGluIGNvbmp1bmN0aW9uIHdpdGggYG1lbnVQb3J0YWxUYXJnZXRgXG4gICAqL1xuICBtZW51UG9ydGFsWkluZGV4PzogbnVtYmVyO1xuICAvKipcbiAgICogRG9tIGVsZW1lbnQgdG8gcG9ydGFsIHRoZSBzZWxlY3QgbWVudSB0b1xuICAgKiA8YnI+XG4gICAqIFtQcm9wcyBmcm9tIFJlYWN0IHNlbGVjdCB3YXMgdXNlZF0oaHR0cHM6Ly9yZWFjdC1zZWxlY3QuY29tL3Byb3BzKVxuICAgKi9cbiAgbWVudVBvcnRhbFRhcmdldD86IFJlYWN0U2VsZWN0UHJvcHNbJ21lbnVQb3J0YWxUYXJnZXQnXTtcbiAgLyoqXG4gICAqIHdoZXRoZXIgdGhlIG1lbnUgc2hvdWxkIGJsb2NrIHNjcm9sbCB3aGlsZSBvcGVuXG4gICAqIDxicj5cbiAgICogW1Byb3BzIGZyb20gUmVhY3Qgc2VsZWN0IHdhcyB1c2VkXShodHRwczovL3JlYWN0LXNlbGVjdC5jb20vcHJvcHMpXG4gICAqL1xuICBtZW51U2hvdWxkQmxvY2tTY3JvbGw/OiBSZWFjdFNlbGVjdFByb3BzWydtZW51U2hvdWxkQmxvY2tTY3JvbGwnXTtcbiAgLyoqXG4gICAqIEhhbmRsZSBjaGFuZ2UgZXZlbnRzIG9uIHRoZSBtZW51IGlucHV0XG4gICAqIDxicj5cbiAgICogW1Byb3BzIGZyb20gUmVhY3Qgc2VsZWN0IHdhcyB1c2VkXShodHRwczovL3JlYWN0LXNlbGVjdC5jb20vcHJvcHMpXG4gICAqL1xuICBvbk1lbnVJbnB1dENoYW5nZT86IFJlYWN0U2VsZWN0UHJvcHNbJ29uSW5wdXRDaGFuZ2UnXTtcbiAgLyoqXG4gICAqIENhbiBiZSB1c2VkIHRvIHJlbmRlciBhIGN1c3RvbSB2YWx1ZSB3aGVuIHRoZXJlIGFyZSBubyBvcHRpb25zIChlaXRoZXIgYmVjYXVzZSBvZiBubyBzZWFyY2ggcmVzdWx0cywgb3IgYWxsIG9wdGlvbnMgaGF2ZSBiZWVuIHVzZWQsIG9yIHRoZXJlIHdlcmUgbm9uZSBpbiB0aGUgZmlyc3QgcGxhY2UpLiBHZXRzIGNhbGxlZCB3aXRoIHsgaW5wdXRWYWx1ZTogU3RyaW5nIH0uXG4gICAqIDxiciAvPlxuICAgKiBgaW5wdXRWYWx1ZWAgd2lsbCBiZSBhbiBlbXB0eSBzdHJpbmcgd2hlbiBubyBzZWFyY2ggdGV4dCBpcyBwcmVzZW50LlxuICAgKiA8YnI+XG4gICAqIFtQcm9wcyBmcm9tIFJlYWN0IHNlbGVjdCB3YXMgdXNlZF0oaHR0cHM6Ly9yZWFjdC1zZWxlY3QuY29tL3Byb3BzKVxuICAgKi9cbiAgbm9NZW51T3B0aW9uc01lc3NhZ2U/OiBSZWFjdFNlbGVjdFByb3BzWydub09wdGlvbnNNZXNzYWdlJ107XG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIGVuYWJsZSBzZWFyY2ggZnVuY3Rpb25hbGl0eS5cbiAgICogPGJyPlxuICAgKiBbUHJvcHMgZnJvbSBSZWFjdCBzZWxlY3Qgd2FzIHVzZWRdKGh0dHBzOi8vcmVhY3Qtc2VsZWN0LmNvbS9wcm9wcylcbiAgICovXG4gIGlzTWVudVNlYXJjaGFibGU/OiBSZWFjdFNlbGVjdFByb3BzWydpc1NlYXJjaGFibGUnXTtcbiAgLyoqXG4gICAqIE1heGltdW0gaGVpZ2h0IG9mIHRoZSBtZW51IGJlZm9yZSBzY3JvbGxpbmdcbiAgICogPGJyPlxuICAgKiBbUHJvcHMgZnJvbSBSZWFjdCBzZWxlY3Qgd2FzIHVzZWRdKGh0dHBzOi8vcmVhY3Qtc2VsZWN0LmNvbS9wcm9wcylcbiAgICovXG4gIG1heE1lbnVIZWlnaHQ/OiBSZWFjdFNlbGVjdFByb3BzWydtYXhNZW51SGVpZ2h0J107XG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBtZW51IHNob3VsZCBjbG9zZSBhZnRlciBhIHZhbHVlIGlzIHNlbGVjdGVkLiBEZWZhdWx0cyB0byBgdHJ1ZWAuXG4gICAqIDxicj5cbiAgICogW1Byb3BzIGZyb20gUmVhY3Qgc2VsZWN0IHdhcyB1c2VkXShodHRwczovL3JlYWN0LXNlbGVjdC5jb20vcHJvcHMpXG4gICAqL1xuICBjbG9zZU1lbnVPblNlbGVjdD86IFJlYWN0U2VsZWN0UHJvcHNbJ2Nsb3NlTWVudU9uU2VsZWN0J107XG4gIC8qKlxuICAgKiBIb3Jpem9udGFsIHNpemUgbGltaXQgZm9yIHRoZSBkcm9wZG93biBtZW51LlxuICAgKi9cbiAgbWVudUhvcml6b250YWxDb25zdHJhaW50PzogMyB8IDQgfCA1O1xuICAvKipcbiAgICogU2hvdyBzdWJtaXQgYnV0dG9uIGluIHRoZSBpbnB1dFxuICAgKi9cbiAgc2hvd1N1Ym1pdEJ1dHRvbj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiAgdXNlZCB0byBwYXNzIGRhdGEtKiBwcm9wcyB0byB0aGUgc2VsZWN0IGNvbXBvbmVudC5cbiAgICogZWc6IHNlbGVjdERhdGFQcm9wcz17W3sgJ3Byb3AtMSc6ICd2YWx1ZS0xJyB9LCB7ICdwcm9wLTInOiAndmFsdWUtMicgfV19XG4gICAqL1xuICBzZWxlY3REYXRhUHJvcHM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICAvKipcbiAgICogIHVzZWQgdG8gcGFzcyBkYXRhLSogcHJvcHMgdG8gdGhlIGlucHV0IGVsZW1lbnQuXG4gICAqIGVnOiBpbnB1dERhdGFQcm9wcz17W3sgJ3Byb3AtMSc6ICd2YWx1ZS0xJyB9LCB7ICdwcm9wLTInOiAndmFsdWUtMicgfV19XG4gICAqL1xuICBpbnB1dERhdGFQcm9wcz86IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG59O1xuXG5jb25zdCBkZWZhdWx0UHJvcHM6IFBpY2s8XG4gIFRTZWxlY3RhYmxlU2VhcmNoSW5wdXRQcm9wcyxcbiAgfCAnaG9yaXpvbnRhbENvbnN0cmFpbnQnXG4gIHwgJ2lzQ2xlYXJhYmxlJ1xuICB8ICdtZW51SG9yaXpvbnRhbENvbnN0cmFpbnQnXG4gIHwgJ3Nob3dTdWJtaXRCdXR0b24nXG4gIHwgJ21lbnVQb3J0YWxaSW5kZXgnXG4gIHwgJ29wdGlvbnMnXG4+ID0ge1xuICBob3Jpem9udGFsQ29uc3RyYWludDogJ3NjYWxlJyxcbiAgaXNDbGVhcmFibGU6IHRydWUsXG4gIG1lbnVIb3Jpem9udGFsQ29uc3RyYWludDogMyxcbiAgc2hvd1N1Ym1pdEJ1dHRvbjogdHJ1ZSxcbiAgbWVudVBvcnRhbFpJbmRleDogMSxcbiAgb3B0aW9uczogW10sXG59O1xuXG5jb25zdCBzZWxlY3RhYmxlU2VhcmNoSW5wdXRTZXF1ZW50aWFsSWQgPSBjcmVhdGVTZXF1ZW50aWFsSWQoXG4gICdzZWxlY3RhYmxlLXNlYXJjaC1pbnB1dC0nXG4pO1xuXG5jb25zdCBpc09wdGlvbk9iamVjdCA9IChcbiAgb3B0aW9uOiBUT3B0aW9uIHwgVE9wdGlvbk9iamVjdFxuKTogb3B0aW9uIGlzIFRPcHRpb25PYmplY3QgPT4gKG9wdGlvbiBhcyBUT3B0aW9uT2JqZWN0KS5vcHRpb25zICE9PSB1bmRlZmluZWQ7XG5cbmNvbnN0IHRyYW5zZm9ybURhdGFQcm9wcyA9IChkYXRhUHJvcHM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+KSA9PlxuICBPYmplY3QuZnJvbUVudHJpZXMoXG4gICAgT2JqZWN0LmVudHJpZXMoZGF0YVByb3BzIHx8IHt9KS5tYXAoKFtrZXksIHZhbHVlXSkgPT4gW1xuICAgICAgYGRhdGEtJHtrZXl9YCxcbiAgICAgIHZhbHVlLFxuICAgIF0pXG4gICk7XG5cbmNvbnN0IFNlbGVjdGFibGVTZWFyY2hJbnB1dCA9IChwcm9wczogVFNlbGVjdGFibGVTZWFyY2hJbnB1dFByb3BzKSA9PiB7XG4gIGNvbnN0IFtkcm9wZG93bkhhc0ZvY3VzLCB0b2dnbGVEcm9wZG93bkhhc0ZvY3VzXSA9IHVzZVRvZ2dsZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgW3NlYXJjaFZhbHVlLCBzZXRTZWFyY2hWYWx1ZV0gPSB1c2VTdGF0ZShwcm9wcy52YWx1ZS50ZXh0IHx8ICcnKTtcbiAgY29uc3QgY29udGFpbmVyUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKTtcbiAgY29uc3QgdGV4dElucHV0UmVmID0gdXNlUmVmPEhUTUxJbnB1dEVsZW1lbnQ+KG51bGwpO1xuXG4gIGNvbnN0IGxlZ2FjeURhdGFQcm9wcyA9IGZpbHRlckRhdGFBdHRyaWJ1dGVzKHByb3BzKTtcbiAgY29uc3QgdHJhbnNmb3JtZWRTZWxlY3REYXRhUHJvcHMgPSB0cmFuc2Zvcm1EYXRhUHJvcHMocHJvcHMuc2VsZWN0RGF0YVByb3BzKTtcbiAgY29uc3QgdHJhbnNmb3JtZWRJbnB1dERhdGFQcm9wcyA9IHRyYW5zZm9ybURhdGFQcm9wcyhwcm9wcy5pbnB1dERhdGFQcm9wcyk7XG5cbiAgY29uc3Qgb3B0aW9uc1dpdGhvdXRHcm91cHMgPSBwcm9wcy5vcHRpb25zLmZsYXRNYXAoKG9wdGlvbikgPT4ge1xuICAgIGlmIChpc09wdGlvbk9iamVjdChvcHRpb24pKSB7XG4gICAgICByZXR1cm4gb3B0aW9uLm9wdGlvbnM7XG4gICAgfVxuICAgIHJldHVybiBvcHRpb247XG4gIH0pO1xuXG4gIGNvbnN0IHNlbGVjdGVkT3B0aW9uID0gb3B0aW9uc1dpdGhvdXRHcm91cHMuZmluZChcbiAgICAob3B0aW9uKSA9PiBvcHRpb24udmFsdWUgPT09IHByb3BzLnZhbHVlLm9wdGlvblxuICApO1xuXG4gIGNvbnN0IHNlbGVjdGFibFNlYXJjaElucHV0SWQgPSB1c2VGaWVsZElkKFxuICAgIHByb3BzLmlkLFxuICAgIHNlbGVjdGFibGVTZWFyY2hJbnB1dFNlcXVlbnRpYWxJZFxuICApO1xuXG4gIGlmICghcHJvcHMuaXNSZWFkT25seSkge1xuICAgIHdhcm5pbmcoXG4gICAgICB0eXBlb2YgcHJvcHMub25DaGFuZ2UgPT09ICdmdW5jdGlvbicsXG4gICAgICAnU2VsZWN0YWJsZVNlYXJjaElucHV0OiBgb25DaGFuZ2VgIGlzIHJlcXVpcmVkIHdoZW4gaXMgbm90IHJlYWQgb25seS4nXG4gICAgKTtcbiAgfVxuXG4gIHdhcm5JZk1lbnVQb3J0YWxQcm9wc0FyZU1pc3Npbmcoe1xuICAgIG1lbnVQb3J0YWxaSW5kZXg6IHByb3BzLm1lbnVQb3J0YWxaSW5kZXgsXG4gICAgbWVudVBvcnRhbFRhcmdldDogcHJvcHMubWVudVBvcnRhbFRhcmdldCxcbiAgICBjb21wb25lbnROYW1lOiAnU2VsZWN0YWJsZVNlYXJjaElucHV0JyxcbiAgfSk7XG5cbiAgY29uc3QgeyBvbkZvY3VzLCBvbkJsdXIsIG5hbWUgfSA9IHByb3BzO1xuICBjb25zdCBoYW5kbGVUZXh0SW5wdXRGb2N1cyA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBpZiAob25Gb2N1cykge1xuICAgICAgb25Gb2N1cyh7XG4gICAgICAgIHRhcmdldDoge1xuICAgICAgICAgIGlkOiBTZWxlY3RhYmxlU2VhcmNoSW5wdXQuZ2V0VGV4dElucHV0SWQoc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCksXG4gICAgICAgICAgbmFtZTogZ2V0VGV4dElucHV0TmFtZShuYW1lKSxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfSwgW29uRm9jdXMsIHNlbGVjdGFibFNlYXJjaElucHV0SWQsIG5hbWVdKTtcblxuICBjb25zdCBoYW5kbGVUZXh0SW5wdXRCbHVyID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIGlmIChvbkJsdXIpIHtcbiAgICAgIG9uQmx1cih7XG4gICAgICAgIHRhcmdldDoge1xuICAgICAgICAgIGlkOiBTZWxlY3RhYmxlU2VhcmNoSW5wdXQuZ2V0VGV4dElucHV0SWQoc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCksXG4gICAgICAgICAgbmFtZTogZ2V0VGV4dElucHV0TmFtZShuYW1lKSxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfSwgW29uQmx1ciwgc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCwgbmFtZV0pO1xuXG4gIGNvbnN0IGhhbmRsZUNsZWFyID0gKCkgPT4ge1xuICAgIHNldFNlYXJjaFZhbHVlKCcnKTtcbiAgICBpZiAocHJvcHMub25SZXNldCkge1xuICAgICAgcHJvcHMub25SZXNldCgpO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBoYW5kbGVDaGFuZ2UgPSAoZXZlbnQ6IENoYW5nZUV2ZW50PEhUTUxJbnB1dEVsZW1lbnQ+KSA9PiB7XG4gICAgc2V0U2VhcmNoVmFsdWUoZXZlbnQudGFyZ2V0LnZhbHVlKTtcbiAgICBpZiAocHJvcHMub25DaGFuZ2UpIHtcbiAgICAgIHByb3BzLm9uQ2hhbmdlKHtcbiAgICAgICAgdGFyZ2V0OiB7XG4gICAgICAgICAgaWQ6IFNlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXRUZXh0SW5wdXRJZChzZWxlY3RhYmxTZWFyY2hJbnB1dElkKSxcbiAgICAgICAgICBuYW1lOiBnZXRUZXh0SW5wdXROYW1lKHByb3BzLm5hbWUpLFxuICAgICAgICAgIHZhbHVlOiBldmVudC50YXJnZXQudmFsdWUsXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlU3VibWl0ID0gKFxuICAgIGV2ZW50OlxuICAgICAgfCBLZXlib2FyZEV2ZW50PEhUTUxCdXR0b25FbGVtZW50PlxuICAgICAgfCBNb3VzZUV2ZW50PEhUTUxCdXR0b25FbGVtZW50PlxuICAgICAgfCBLZXlib2FyZEV2ZW50PEhUTUxJbnB1dEVsZW1lbnQ+XG4gICkgPT4ge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgaWYgKHByb3BzLm9uU3VibWl0KSB7XG4gICAgICBwcm9wcy5vblN1Ym1pdCh7XG4gICAgICAgIHRleHQ6IHNlYXJjaFZhbHVlLFxuICAgICAgICBvcHRpb246IHNlbGVjdGVkT3B0aW9uPy52YWx1ZSA/PyAnJyxcbiAgICAgIH0pO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBkcm9wZG93bk5hbWUgPSBnZXREcm9wZG93bk5hbWUocHJvcHMubmFtZSk7XG4gIGNvbnN0IGRyb3Bkb3duSWQgPSBTZWxlY3RhYmxlU2VhcmNoSW5wdXQuZ2V0RHJvcGRvd25JZChcbiAgICBzZWxlY3RhYmxTZWFyY2hJbnB1dElkXG4gICk7XG5cbiAgY29uc3QgaGFuZGxlRHJvcGRvd25Gb2N1cyA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBpZiAob25Gb2N1cykge1xuICAgICAgb25Gb2N1cyh7XG4gICAgICAgIHRhcmdldDoge1xuICAgICAgICAgIGlkOiBkcm9wZG93bklkLFxuICAgICAgICAgIG5hbWU6IGRyb3Bkb3duTmFtZSxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIH1cbiAgICB0b2dnbGVEcm9wZG93bkhhc0ZvY3VzKHRydWUpO1xuICB9LCBbb25Gb2N1cywgdG9nZ2xlRHJvcGRvd25IYXNGb2N1cywgZHJvcGRvd25OYW1lLCBkcm9wZG93bklkXSk7XG5cbiAgY29uc3QgaGFuZGxlRHJvcGRvd25CbHVyID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIGlmIChvbkJsdXIpIHtcbiAgICAgIG9uQmx1cih7XG4gICAgICAgIHRhcmdldDoge1xuICAgICAgICAgIGlkOiBkcm9wZG93bklkLFxuICAgICAgICAgIG5hbWU6IGRyb3Bkb3duTmFtZSxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIH1cbiAgICB0b2dnbGVEcm9wZG93bkhhc0ZvY3VzKGZhbHNlKTtcbiAgfSwgW3RvZ2dsZURyb3Bkb3duSGFzRm9jdXMsIG9uQmx1ciwgZHJvcGRvd25OYW1lLCBkcm9wZG93bklkXSk7XG5cbiAgY29uc3QgaGFuZGxlQ29udGFpbmVyQmx1ciA9IHVzZUNhbGxiYWNrKFxuICAgIChldmVudCkgPT4ge1xuICAgICAgLy8gZW5zdXJlcyB0aGF0IGJvdGggZmllbGRzIGFyZSBtYXJrZWQgYXMgdG91Y2hlZCB3aGVuIG9uZSBvZiB0aGVtXG4gICAgICAvLyBpcyBibHVycmVkXG4gICAgICBpZiAoXG4gICAgICAgIHR5cGVvZiBvbkJsdXIgPT09ICdmdW5jdGlvbicgJiZcbiAgICAgICAgIWNvbnRhaW5lclJlZi5jdXJyZW50Py5jb250YWlucyhldmVudC5yZWxhdGVkVGFyZ2V0KVxuICAgICAgKSB7XG4gICAgICAgIG9uQmx1cih7XG4gICAgICAgICAgdGFyZ2V0OiB7XG4gICAgICAgICAgICBpZDogU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldERyb3Bkb3duSWQoc2VsZWN0YWJsU2VhcmNoSW5wdXRJZCksXG4gICAgICAgICAgICBuYW1lOiBnZXREcm9wZG93bk5hbWUobmFtZSksXG4gICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgICAgIG9uQmx1cih7XG4gICAgICAgICAgdGFyZ2V0OiB7XG4gICAgICAgICAgICBpZDogU2VsZWN0YWJsZVNlYXJjaElucHV0LmdldFRleHRJbnB1dElkKHNlbGVjdGFibFNlYXJjaElucHV0SWQpLFxuICAgICAgICAgICAgbmFtZTogZ2V0VGV4dElucHV0TmFtZShuYW1lKSxcbiAgICAgICAgICB9LFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9LFxuICAgIFtvbkJsdXIsIHNlbGVjdGFibFNlYXJjaElucHV0SWQsIG5hbWVdXG4gICk7XG5cbiAgcmV0dXJuIChcbiAgICA8Q29uc3RyYWludHMuSG9yaXpvbnRhbCBtYXg9e3Byb3BzLmhvcml6b250YWxDb25zdHJhaW50fT5cbiAgICAgIDxDb250YWluZXJcbiAgICAgICAgcmVmPXtjb250YWluZXJSZWZ9XG4gICAgICAgIG9uQmx1cj17aGFuZGxlQ29udGFpbmVyQmx1cn1cbiAgICAgICAgZGF0YS10ZXN0aWQ9XCJzZWxlY3RhYmxlLXNlYXJjaC1pbnB1dC1jb250YWluZXJcIlxuICAgICAgPlxuICAgICAgICA8Q29uc3RyYWludHMuSG9yaXpvbnRhbCBtYXg9e3Byb3BzLm1lbnVIb3Jpem9udGFsQ29uc3RyYWludH0+XG4gICAgICAgICAgPFNlbGVjdGFibGVTZWxlY3RcbiAgICAgICAgICAgIHsuLi5wcm9wc31cbiAgICAgICAgICAgIGlkPXtTZWxlY3RhYmxlU2VhcmNoSW5wdXQuZ2V0RHJvcGRvd25JZChzZWxlY3RhYmxTZWFyY2hJbnB1dElkKX1cbiAgICAgICAgICAgIG5hbWU9e2dldERyb3Bkb3duTmFtZShwcm9wcy5uYW1lKX1cbiAgICAgICAgICAgIGRyb3Bkb3duSGFzRm9jdXM9e2Ryb3Bkb3duSGFzRm9jdXN9XG4gICAgICAgICAgICBoYW5kbGVEcm9wZG93bkZvY3VzPXtoYW5kbGVEcm9wZG93bkZvY3VzfVxuICAgICAgICAgICAgaGFuZGxlRHJvcGRvd25CbHVyPXtoYW5kbGVEcm9wZG93bkJsdXJ9XG4gICAgICAgICAgICB0ZXh0SW5wdXRSZWY9e3RleHRJbnB1dFJlZn1cbiAgICAgICAgICAgIHNlbGVjdGVkT3B0aW9uPXtzZWxlY3RlZE9wdGlvbn1cbiAgICAgICAgICAgIGRhdGFQcm9wcz17dHJhbnNmb3JtZWRTZWxlY3REYXRhUHJvcHN9XG4gICAgICAgICAgLz5cbiAgICAgICAgPC9Db25zdHJhaW50cy5Ib3Jpem9udGFsPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgY3NzPXtbXG4gICAgICAgICAgICBnZXRTZWxlY3RhYmxlU2VhcmNoSW5wdXRDb250YWluZXJTdHlsZXMocHJvcHMpLFxuICAgICAgICAgICAgZHJvcGRvd25IYXNGb2N1cyAmJlxuICAgICAgICAgICAgICAhcHJvcHMuaXNSZWFkT25seSAmJlxuICAgICAgICAgICAgICBjc3NgXG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICR7ZGVzaWduVG9rZW5zLmJvcmRlckNvbG9yRm9ySW5wdXRXaGVuRm9jdXNlZH07XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogJHtkZXNpZ25Ub2tlbnMuYm9yZGVyQ29sb3JGb3JJbnB1dFdoZW5Gb2N1c2VkfTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGAsXG4gICAgICAgICAgXX1cbiAgICAgICAgPlxuICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgcmVmPXt0ZXh0SW5wdXRSZWZ9XG4gICAgICAgICAgICBpZD17U2VsZWN0YWJsZVNlYXJjaElucHV0LmdldFRleHRJbnB1dElkKHNlbGVjdGFibFNlYXJjaElucHV0SWQpfVxuICAgICAgICAgICAgbmFtZT17Z2V0VGV4dElucHV0TmFtZShwcm9wcy5uYW1lKX1cbiAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgIHZhbHVlPXtzZWFyY2hWYWx1ZX1cbiAgICAgICAgICAgIG9uQ2hhbmdlPXtoYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgICBvbkJsdXI9e2hhbmRsZVRleHRJbnB1dEJsdXJ9XG4gICAgICAgICAgICBvbkZvY3VzPXtoYW5kbGVUZXh0SW5wdXRGb2N1c31cbiAgICAgICAgICAgIGRpc2FibGVkPXtwcm9wcy5pc0Rpc2FibGVkfVxuICAgICAgICAgICAgcGxhY2Vob2xkZXI9e3Byb3BzLnBsYWNlaG9sZGVyfVxuICAgICAgICAgICAgcmVhZE9ubHk9e3Byb3BzLmlzUmVhZE9ubHl9XG4gICAgICAgICAgICBhdXRvRm9jdXM9e3Byb3BzLmlzQXV0b2ZvY3Vzc2VkfVxuICAgICAgICAgICAgYXV0b0NvbXBsZXRlPXtwcm9wcy5hdXRvQ29tcGxldGV9XG4gICAgICAgICAgICBhcmlhLXJlYWRvbmx5PXtwcm9wcy5pc1JlYWRPbmx5fVxuICAgICAgICAgICAgY29udGVudEVkaXRhYmxlPXshcHJvcHMuaXNSZWFkT25seX1cbiAgICAgICAgICAgIGNzcz17Z2V0U2VsZWN0YWJsZVNlYXJjaElucHV0U3R5bGVzKHByb3BzKX1cbiAgICAgICAgICAgIHsuLi50cmFuc2Zvcm1lZElucHV0RGF0YVByb3BzfVxuICAgICAgICAgICAgey4uLmxlZ2FjeURhdGFQcm9wc31cbiAgICAgICAgICAgIC8qIEFSSUEgKi9cbiAgICAgICAgICAgIGFyaWEtaW52YWxpZD17cHJvcHNbJ2FyaWEtaW52YWxpZCddfVxuICAgICAgICAgICAgYXJpYS1lcnJvcm1lc3NhZ2U9e3Byb3BzWydhcmlhLWVycm9ybWVzc2FnZSddfVxuICAgICAgICAgICAgZGF0YS10ZXN0aWQ9XCJzZWxlY3RhYmxlLWlucHV0XCJcbiAgICAgICAgICAgIG9uS2V5RG93bj17KGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgIGlmICghcHJvcHMuaXNSZWFkT25seSAmJiBldmVudC5rZXkgPT09ICdFbnRlcicpIHtcbiAgICAgICAgICAgICAgICBoYW5kbGVTdWJtaXQoZXZlbnQpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9fVxuICAgICAgICAgIC8+XG4gICAgICAgICAge3Byb3BzLmlzQ2xlYXJhYmxlICYmXG4gICAgICAgICAgICBzZWFyY2hWYWx1ZSAmJlxuICAgICAgICAgICAgIXByb3BzLmlzRGlzYWJsZWQgJiZcbiAgICAgICAgICAgICFwcm9wcy5pc1JlYWRPbmx5ICYmIChcbiAgICAgICAgICAgICAgPFNlY29uZGFyeUljb25CdXR0b25cbiAgICAgICAgICAgICAgICBpY29uPXs8Q2xvc2VJY29uIC8+fVxuICAgICAgICAgICAgICAgIHNpemU9XCJtZWRpdW1cIlxuICAgICAgICAgICAgICAgIGxhYmVsPXsnY2xlYXItYnV0dG9uJ31cbiAgICAgICAgICAgICAgICBvbkNsaWNrPXtoYW5kbGVDbGVhcn1cbiAgICAgICAgICAgICAgICBjc3M9e2dldENsZWFySWNvbkJ1dHRvblN0eWxlcyhwcm9wcyl9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIHtwcm9wcy5zaG93U3VibWl0QnV0dG9uICYmIChcbiAgICAgICAgICAgIDxTZWNvbmRhcnlJY29uQnV0dG9uXG4gICAgICAgICAgICAgIGljb249ezxTZWFyY2hJY29uIC8+fVxuICAgICAgICAgICAgICBsYWJlbD17J3NlYXJjaC1idXR0b24nfVxuICAgICAgICAgICAgICBvbkNsaWNrPXtoYW5kbGVTdWJtaXR9XG4gICAgICAgICAgICAgIGNzcz17Z2V0U2VhcmNoSWNvbkJ1dHRvblN0eWxlcyhwcm9wcyl9XG4gICAgICAgICAgICAgIGlzRGlzYWJsZWQ9e3Byb3BzLmlzRGlzYWJsZWR9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICl9XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9Db250YWluZXI+XG4gICAgPC9Db25zdHJhaW50cy5Ib3Jpem9udGFsPlxuICApO1xufTtcblxuU2VsZWN0YWJsZVNlYXJjaElucHV0LmRpc3BsYXlOYW1lID0gJ1NlbGVjdGFibGVTZWFyY2hJbnB1dCc7XG5TZWxlY3RhYmxlU2VhcmNoSW5wdXQuZGVmYXVsdFByb3BzID0gZGVmYXVsdFByb3BzO1xuU2VsZWN0YWJsZVNlYXJjaElucHV0LmlzRW1wdHkgPSAoXG4gIGZvcm1WYWx1ZTogVFNlbGVjdGFibGVTZWFyY2hJbnB1dFByb3BzWyd2YWx1ZSddXG4pID0+ICFmb3JtVmFsdWUgfHwgZm9ybVZhbHVlLnRleHQudHJpbSgpID09PSAnJztcblNlbGVjdGFibGVTZWFyY2hJbnB1dC5nZXRUZXh0SW5wdXRJZCA9IGdldFRleHRJbnB1dE5hbWU7XG5TZWxlY3RhYmxlU2VhcmNoSW5wdXQuZ2V0RHJvcGRvd25JZCA9IGdldERyb3Bkb3duTmFtZTtcblxuZXhwb3J0IGRlZmF1bHQgU2VsZWN0YWJsZVNlYXJjaElucHV0O1xuIl19 */"],
|
|
437
|
+
children: [jsx("input", _objectSpread(_objectSpread(_objectSpread({
|
|
417
438
|
ref: textInputRef,
|
|
418
439
|
id: SelectableSearchInput.getTextInputId(selectablSearchInputId),
|
|
419
440
|
name: getTextInputName(props.name),
|
|
@@ -430,7 +451,7 @@ const SelectableSearchInput = props => {
|
|
|
430
451
|
"aria-readonly": props.isReadOnly,
|
|
431
452
|
contentEditable: !props.isReadOnly,
|
|
432
453
|
css: getSelectableSearchInputStyles(props)
|
|
433
|
-
},
|
|
454
|
+
}, transformedInputDataProps), legacyDataProps), {}, {
|
|
434
455
|
/* ARIA */
|
|
435
456
|
"aria-invalid": props['aria-invalid'],
|
|
436
457
|
"aria-errormessage": props['aria-errormessage'],
|
|
@@ -491,19 +512,21 @@ SelectableSearchInput.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
|
491
512
|
}))]).isRequired,
|
|
492
513
|
menuPortalZIndex: _pt.number,
|
|
493
514
|
menuHorizontalConstraint: _pt.oneOf([3, 4, 5]),
|
|
494
|
-
showSubmitButton: _pt.bool
|
|
515
|
+
showSubmitButton: _pt.bool,
|
|
516
|
+
selectDataProps: _pt.objectOf(_pt.string),
|
|
517
|
+
inputDataProps: _pt.objectOf(_pt.string)
|
|
495
518
|
} : {};
|
|
496
519
|
SelectableSearchInput.displayName = 'SelectableSearchInput';
|
|
497
520
|
SelectableSearchInput.defaultProps = defaultProps;
|
|
498
521
|
SelectableSearchInput.isEmpty = formValue => {
|
|
499
|
-
var
|
|
500
|
-
return !formValue || _trimInstanceProperty(
|
|
522
|
+
var _context3;
|
|
523
|
+
return !formValue || _trimInstanceProperty(_context3 = formValue.text).call(_context3) === '';
|
|
501
524
|
};
|
|
502
525
|
SelectableSearchInput.getTextInputId = getTextInputName;
|
|
503
526
|
SelectableSearchInput.getDropdownId = getDropdownName;
|
|
504
527
|
var SelectableSearchInput$1 = SelectableSearchInput;
|
|
505
528
|
|
|
506
529
|
// NOTE: This string will be replaced on build time with the package version.
|
|
507
|
-
var version = "
|
|
530
|
+
var version = "17.0.0";
|
|
508
531
|
|
|
509
532
|
export { SelectableSearchInput$1 as default, version };
|
|
@@ -51,6 +51,8 @@ export type TSelectableSearchInputProps = {
|
|
|
51
51
|
closeMenuOnSelect?: ReactSelectProps['closeMenuOnSelect'];
|
|
52
52
|
menuHorizontalConstraint?: 3 | 4 | 5;
|
|
53
53
|
showSubmitButton?: boolean;
|
|
54
|
+
selectDataProps?: Record<string, string>;
|
|
55
|
+
inputDataProps?: Record<string, string>;
|
|
54
56
|
};
|
|
55
57
|
declare const SelectableSearchInput: {
|
|
56
58
|
(props: TSelectableSearchInputProps): import("@emotion/react/jsx-runtime").JSX.Element;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@commercetools-uikit/selectable-search-input",
|
|
3
3
|
"description": "A controlled selectable search input component for single-line strings with validation states.",
|
|
4
|
-
"version": "
|
|
4
|
+
"version": "17.0.0",
|
|
5
5
|
"bugs": "https://github.com/commercetools/ui-kit/issues",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
@@ -21,14 +21,14 @@
|
|
|
21
21
|
"dependencies": {
|
|
22
22
|
"@babel/runtime": "^7.20.13",
|
|
23
23
|
"@babel/runtime-corejs3": "^7.20.13",
|
|
24
|
-
"@commercetools-uikit/constraints": "
|
|
25
|
-
"@commercetools-uikit/design-system": "
|
|
26
|
-
"@commercetools-uikit/hooks": "
|
|
27
|
-
"@commercetools-uikit/icons": "
|
|
28
|
-
"@commercetools-uikit/input-utils": "
|
|
29
|
-
"@commercetools-uikit/secondary-icon-button": "
|
|
30
|
-
"@commercetools-uikit/select-utils": "
|
|
31
|
-
"@commercetools-uikit/utils": "
|
|
24
|
+
"@commercetools-uikit/constraints": "17.0.0",
|
|
25
|
+
"@commercetools-uikit/design-system": "17.0.0",
|
|
26
|
+
"@commercetools-uikit/hooks": "17.0.0",
|
|
27
|
+
"@commercetools-uikit/icons": "17.0.0",
|
|
28
|
+
"@commercetools-uikit/input-utils": "17.0.0",
|
|
29
|
+
"@commercetools-uikit/secondary-icon-button": "17.0.0",
|
|
30
|
+
"@commercetools-uikit/select-utils": "17.0.0",
|
|
31
|
+
"@commercetools-uikit/utils": "17.0.0",
|
|
32
32
|
"@emotion/react": "^11.10.5",
|
|
33
33
|
"@emotion/styled": "^11.10.5",
|
|
34
34
|
"lodash": "4.17.21",
|