decap-cms-widget-file 3.0.1 → 3.0.3
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/CHANGELOG.md +19 -0
- package/dist/decap-cms-widget-file.js +2 -2
- package/dist/decap-cms-widget-file.js.map +1 -1
- package/dist/esm/withFileControl.js +89 -33
- package/package.json +7 -5
- package/src/withFileControl.js +96 -33
|
@@ -11,12 +11,15 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
|
11
11
|
var _reactImmutableProptypes = _interopRequireDefault(require("react-immutable-proptypes"));
|
|
12
12
|
var _core = require("@emotion/core");
|
|
13
13
|
var _immutable = require("immutable");
|
|
14
|
-
var
|
|
14
|
+
var _uuid = require("uuid");
|
|
15
15
|
var _commonTags = require("common-tags");
|
|
16
16
|
var _decapCmsUiDefault = require("decap-cms-ui-default");
|
|
17
17
|
var _decapCmsLibUtil = require("decap-cms-lib-util");
|
|
18
|
-
var _reactSortableHoc = require("react-sortable-hoc");
|
|
19
18
|
var _arrayMove = require("array-move");
|
|
19
|
+
var _core2 = require("@dnd-kit/core");
|
|
20
|
+
var _sortable = require("@dnd-kit/sortable");
|
|
21
|
+
var _utilities = require("@dnd-kit/utilities");
|
|
22
|
+
var _modifiers = require("@dnd-kit/modifiers");
|
|
20
23
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
21
24
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
22
25
|
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
@@ -27,7 +30,7 @@ const MAX_DISPLAY_LENGTH = 50;
|
|
|
27
30
|
const ImageWrapper = (0, _styledBase.default)("div", {
|
|
28
31
|
target: "e1hax4ql0",
|
|
29
32
|
label: "ImageWrapper"
|
|
30
|
-
})("flex-basis:155px;width:155px;height:100px;margin-right:20px;margin-bottom:20px;border:", _decapCmsUiDefault.borders.textField, ";border-radius:", _decapCmsUiDefault.lengths.borderRadius, ";overflow:hidden;", _decapCmsUiDefault.effects.checkerboard, ";", _decapCmsUiDefault.shadows.inset, ";cursor:", props => props.sortable ? 'pointer' : 'auto', ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy93aXRoRmlsZUNvbnRyb2wuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBd0IrQiIsImZpbGUiOiIuLi8uLi9zcmMvd2l0aEZpbGVDb250cm9sLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgSW1tdXRhYmxlUHJvcFR5cGVzIGZyb20gJ3JlYWN0LWltbXV0YWJsZS1wcm9wdHlwZXMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vY29yZSc7XG5pbXBvcnQgeyBNYXAsIExpc3QgfSBmcm9tICdpbW11dGFibGUnO1xuaW1wb3J0IHsgb25jZSB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgdXVpZCBmcm9tICd1dWlkL3Y0JztcbmltcG9ydCB7IG9uZUxpbmUgfSBmcm9tICdjb21tb24tdGFncyc7XG5pbXBvcnQge1xuICBsZW5ndGhzLFxuICBjb21wb25lbnRzLFxuICBidXR0b25zLFxuICBib3JkZXJzLFxuICBlZmZlY3RzLFxuICBzaGFkb3dzLFxuICBJY29uQnV0dG9uLFxufSBmcm9tICdkZWNhcC1jbXMtdWktZGVmYXVsdCc7XG5pbXBvcnQgeyBiYXNlbmFtZSB9IGZyb20gJ2RlY2FwLWNtcy1saWItdXRpbCc7XG5pbXBvcnQgeyBTb3J0YWJsZUNvbnRhaW5lciwgU29ydGFibGVFbGVtZW50IH0gZnJvbSAncmVhY3Qtc29ydGFibGUtaG9jJztcbmltcG9ydCB7IGFycmF5TW92ZUltbXV0YWJsZSBhcyBhcnJheU1vdmUgfSBmcm9tICdhcnJheS1tb3ZlJztcblxuY29uc3QgTUFYX0RJU1BMQVlfTEVOR1RIID0gNTA7XG5cbmNvbnN0IEltYWdlV3JhcHBlciA9IHN0eWxlZC5kaXZgXG4gIGZsZXgtYmFzaXM6IDE1NXB4O1xuICB3aWR0aDogMTU1cHg7XG4gIGhlaWdodDogMTAwcHg7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgYm9yZGVyOiAke2JvcmRlcnMudGV4dEZpZWxkfTtcbiAgYm9yZGVyLXJhZGl1czogJHtsZW5ndGhzLmJvcmRlclJhZGl1c307XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gICR7ZWZmZWN0cy5jaGVja2VyYm9hcmR9O1xuICAke3NoYWRvd3MuaW5zZXR9O1xuICBjdXJzb3I6ICR7cHJvcHMgPT4gKHByb3BzLnNvcnRhYmxlID8gJ3BvaW50ZXInIDogJ2F1dG8nKX07XG5gO1xuXG5jb25zdCBTb3J0YWJsZUltYWdlQnV0dG9uc1dyYXBwZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY29sdW1uLWdhcDogMTBweDtcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbmA7XG5cbmNvbnN0IFN0eWxlZEltYWdlID0gc3R5bGVkLmltZ2BcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcbmA7XG5cbmZ1bmN0aW9uIEltYWdlKHByb3BzKSB7XG4gIHJldHVybiA8U3R5bGVkSW1hZ2Ugcm9sZT1cInByZXNlbnRhdGlvblwiIHsuLi5wcm9wc30gLz47XG59XG5cbmZ1bmN0aW9uIFNvcnRhYmxlSW1hZ2VCdXR0b25zKHsgb25SZW1vdmUsIG9uUmVwbGFjZSB9KSB7XG4gIHJldHVybiAoXG4gICAgPFNvcnRhYmxlSW1hZ2VCdXR0b25zV3JhcHBlcj5cbiAgICAgIDxJY29uQnV0dG9uIHNpemU9XCJzbWFsbFwiIHR5cGU9XCJtZWRpYVwiIG9uQ2xpY2s9e29uUmVwbGFjZX0+PC9JY29uQnV0dG9uPlxuICAgICAgPEljb25CdXR0b24gc2l6ZT1cInNtYWxsXCIgdHlwZT1cImNsb3NlXCIgb25DbGljaz17b25SZW1vdmV9PjwvSWNvbkJ1dHRvbj5cbiAgICA8L1NvcnRhYmxlSW1hZ2VCdXR0b25zV3JhcHBlcj5cbiAgKTtcbn1cblxuY29uc3QgU29ydGFibGVJbWFnZSA9IFNvcnRhYmxlRWxlbWVudCgoeyBpdGVtVmFsdWUsIGdldEFzc2V0LCBmaWVsZCwgb25SZW1vdmUsIG9uUmVwbGFjZSB9KSA9PiB7XG4gIHJldHVybiAoXG4gICAgPGRpdj5cbiAgICAgIDxJbWFnZVdyYXBwZXIgc29ydGFibGU+XG4gICAgICAgIDxJbWFnZSBzcmM9e2dldEFzc2V0KGl0ZW1WYWx1ZSwgZmllbGQpIHx8ICcnfSAvPlxuICAgICAgPC9JbWFnZVdyYXBwZXI+XG4gICAgICA8U29ydGFibGVJbWFnZUJ1dHRvbnNcbiAgICAgICAgaXRlbT17aXRlbVZhbHVlfVxuICAgICAgICBvblJlbW92ZT17b25SZW1vdmV9XG4gICAgICAgIG9uUmVwbGFjZT17b25SZXBsYWNlfVxuICAgICAgPjwvU29ydGFibGVJbWFnZUJ1dHRvbnM+XG4gICAgPC9kaXY+XG4gICk7XG59KTtcblxuY29uc3QgU29ydGFibGVNdWx0aUltYWdlV3JhcHBlciA9IFNvcnRhYmxlQ29udGFpbmVyKFxuICAoeyBpdGVtcywgZ2V0QXNzZXQsIGZpZWxkLCBvblJlbW92ZU9uZSwgb25SZXBsYWNlT25lIH0pID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgPGRpdlxuICAgICAgICBjc3M9e2Nzc2BcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgYH1cbiAgICAgID5cbiAgICAgICAge2l0ZW1zLm1hcCgoaXRlbVZhbHVlLCBpbmRleCkgPT4gKFxuICAgICAgICAgIDxTb3J0YWJsZUltYWdlXG4gICAgICAgICAgICBrZXk9e2BpdGVtLSR7aXRlbVZhbHVlfWB9XG4gICAgICAgICAgICBpbmRleD17aW5kZXh9XG4gICAgICAgICAgICBpdGVtVmFsdWU9e2l0ZW1WYWx1ZX1cbiAgICAgICAgICAgIGdldEFzc2V0PXtnZXRBc3NldH1cbiAgICAgICAgICAgIGZpZWxkPXtmaWVsZH1cbiAgICAgICAgICAgIG9uUmVtb3ZlPXtvblJlbW92ZU9uZShpbmRleCl9XG4gICAgICAgICAgICBvblJlcGxhY2U9e29uUmVwbGFjZU9uZShpbmRleCl9XG4gICAgICAgICAgLz5cbiAgICAgICAgKSl9XG4gICAgICA8L2Rpdj5cbiAgICApO1xuICB9LFxuKTtcblxuY29uc3QgRmlsZUxpbmsgPSBzdHlsZWQuYWBcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6IGluaGVyaXQ7XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG5gO1xuXG5jb25zdCBGaWxlTGlua3MgPSBzdHlsZWQuZGl2YFxuICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuYDtcblxuY29uc3QgRmlsZUxpbmtMaXN0ID0gc3R5bGVkLnVsYFxuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5gO1xuXG5jb25zdCBGaWxlV2lkZ2V0QnV0dG9uID0gc3R5bGVkLmJ1dHRvbmBcbiAgJHtidXR0b25zLmJ1dHRvbn07XG4gICR7Y29tcG9uZW50cy5iYWRnZX07XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG5gO1xuXG5jb25zdCBGaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlID0gc3R5bGVkLmJ1dHRvbmBcbiAgJHtidXR0b25zLmJ1dHRvbn07XG4gICR7Y29tcG9uZW50cy5iYWRnZURhbmdlcn07XG5gO1xuXG5mdW5jdGlvbiBpc011bHRpcGxlKHZhbHVlKSB7XG4gIHJldHVybiBBcnJheS5pc0FycmF5KHZhbHVlKSB8fCBMaXN0LmlzTGlzdCh2YWx1ZSk7XG59XG5cbmZ1bmN0aW9uIHNpemVPZlZhbHVlKHZhbHVlKSB7XG4gIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgIHJldHVybiB2YWx1ZS5sZW5ndGg7XG4gIH1cblxuICBpZiAoTGlzdC5pc0xpc3QodmFsdWUpKSB7XG4gICAgcmV0dXJuIHZhbHVlLnNpemU7XG4gIH1cblxuICByZXR1cm4gdmFsdWUgPyAxIDogMDtcbn1cblxuZnVuY3Rpb24gdmFsdWVMaXN0VG9BcnJheSh2YWx1ZSkge1xuICByZXR1cm4gTGlzdC5pc0xpc3QodmFsdWUpID8gdmFsdWUudG9BcnJheSgpIDogdmFsdWU7XG59XG5cbmNvbnN0IHdhcm5EZXByZWNhdGVkT3B0aW9ucyA9IG9uY2UoZmllbGQgPT5cbiAgY29uc29sZS53YXJuKG9uZUxpbmVgXG4gIERlY2FwIENNUyBjb25maWc6ICR7ZmllbGQuZ2V0KCduYW1lJyl9IGZpZWxkOiBwcm9wZXJ0eSBcIm9wdGlvbnNcIiBoYXMgYmVlbiBkZXByZWNhdGVkIGZvciB0aGVcbiAgJHtmaWVsZC5nZXQoJ3dpZGdldCcpfSB3aWRnZXQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgbmV4dCBtYWpvciByZWxlYXNlLiBSYXRoZXIgdGhhblxuICBcXGBmaWVsZC5vcHRpb25zLm1lZGlhX2xpYnJhcnlcXGAsIGFwcGx5IG1lZGlhIGxpYnJhcnkgb3B0aW9ucyBmb3IgdGhpcyB3aWRnZXQgdW5kZXJcbiAgXFxgZmllbGQubWVkaWFfbGlicmFyeVxcYC5cbmApLFxuKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gd2l0aEZpbGVDb250cm9sKHsgZm9ySW1hZ2UgfSA9IHt9KSB7XG4gIHJldHVybiBjbGFzcyBGaWxlQ29udHJvbCBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gICAgc3RhdGljIHByb3BUeXBlcyA9IHtcbiAgICAgIGZpZWxkOiBQcm9wVHlwZXMub2JqZWN0LmlzUmVxdWlyZWQsXG4gICAgICBnZXRBc3NldDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG1lZGlhUGF0aHM6IEltbXV0YWJsZVByb3BUeXBlcy5tYXAuaXNSZXF1aXJlZCxcbiAgICAgIG9uQWRkQXNzZXQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgICBvbkNoYW5nZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uUmVtb3ZlSW5zZXJ0ZWRNZWRpYTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uT3Blbk1lZGlhTGlicmFyeTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uQ2xlYXJNZWRpYUNvbnRyb2w6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgICBvblJlbW92ZU1lZGlhQ29udHJvbDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIGNsYXNzTmFtZVdyYXBwZXI6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgICAgIHZhbHVlOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtcbiAgICAgICAgUHJvcFR5cGVzLnN0cmluZyxcbiAgICAgICAgUHJvcFR5cGVzLmFycmF5T2YoUHJvcFR5cGVzLnN0cmluZyksXG4gICAgICAgIEltbXV0YWJsZVByb3BUeXBlcy5saXN0T2YoUHJvcFR5cGVzLnN0cmluZyksXG4gICAgICBdKSxcbiAgICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgfTtcblxuICAgIHN0YXRpYyBkZWZhdWx0UHJvcHMgPSB7XG4gICAgICB2YWx1ZTogJycsXG4gICAgfTtcblxuICAgIGNvbnN0cnVjdG9yKHByb3BzKSB7XG4gICAgICBzdXBlcihwcm9wcyk7XG4gICAgICB0aGlzLmNvbnRyb2xJRCA9IHV1aWQoKTtcbiAgICB9XG5cbiAgICBzaG91bGRDb21wb25lbnRVcGRhdGUobmV4dFByb3BzKSB7XG4gICAgICAvKipcbiAgICAgICAqIEFsd2F5cyB1cGRhdGUgaWYgdGhlIHZhbHVlIG9yIGdldEFzc2V0IGNoYW5nZXMuXG4gICAgICAgKi9cbiAgICAgIGlmICh0aGlzLnByb3BzLnZhbHVlICE9PSBuZXh0UHJvcHMudmFsdWUgfHwgdGhpcy5wcm9wcy5nZXRBc3NldCAhPT0gbmV4dFByb3BzLmdldEFzc2V0KSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuXG4gICAgICAvKipcbiAgICAgICAqIElmIHRoZXJlIGlzIGEgbWVkaWEgcGF0aCBmb3IgdGhpcyBjb250cm9sIGluIHRoZSBzdGF0ZSBvYmplY3QsIGFuZCB0aGF0XG4gICAgICAgKiBwYXRoIGlzIGRpZmZlcmVudCB0aGFuIHRoZSB2YWx1ZSBpbiBgbmV4dFByb3BzYCwgdXBkYXRlLlxuICAgICAgICovXG4gICAgICBjb25zdCBtZWRpYVBhdGggPSBuZXh0UHJvcHMubWVkaWFQYXRocy5nZXQodGhpcy5jb250cm9sSUQpO1xuICAgICAgaWYgKG1lZGlhUGF0aCAmJiBuZXh0UHJvcHMudmFsdWUgIT09IG1lZGlhUGF0aCkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGNvbXBvbmVudERpZFVwZGF0ZSgpIHtcbiAgICAgIGNvbnN0IHsgbWVkaWFQYXRocywgdmFsdWUsIG9uUmVtb3ZlSW5zZXJ0ZWRNZWRpYSwgb25DaGFuZ2UgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBtZWRpYVBhdGggPSBtZWRpYVBhdGhzLmdldCh0aGlzLmNvbnRyb2xJRCk7XG4gICAgICBpZiAobWVkaWFQYXRoICYmIG1lZGlhUGF0aCAhPT0gdmFsdWUpIHtcbiAgICAgICAgb25DaGFuZ2UobWVkaWFQYXRoKTtcbiAgICAgIH0gZWxzZSBpZiAobWVkaWFQYXRoICYmIG1lZGlhUGF0aCA9PT0gdmFsdWUpIHtcbiAgICAgICAgb25SZW1vdmVJbnNlcnRlZE1lZGlhKHRoaXMuY29udHJvbElEKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb21wb25lbnRXaWxsVW5tb3VudCgpIHtcbiAgICAgIHRoaXMucHJvcHMub25SZW1vdmVNZWRpYUNvbnRyb2wodGhpcy5jb250cm9sSUQpO1xuICAgIH1cblxuICAgIGhhbmRsZUNoYW5nZSA9IGUgPT4ge1xuICAgICAgY29uc3QgeyBmaWVsZCwgb25PcGVuTWVkaWFMaWJyYXJ5LCB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgIGNvbnN0IG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucyA9IHRoaXMuZ2V0TWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zKCk7XG5cbiAgICAgIHJldHVybiBvbk9wZW5NZWRpYUxpYnJhcnkoe1xuICAgICAgICBjb250cm9sSUQ6IHRoaXMuY29udHJvbElELFxuICAgICAgICBmb3JJbWFnZSxcbiAgICAgICAgcHJpdmF0ZVVwbG9hZDogZmllbGQuZ2V0KCdwcml2YXRlJyksXG4gICAgICAgIHZhbHVlOiB2YWx1ZUxpc3RUb0FycmF5KHZhbHVlKSxcbiAgICAgICAgYWxsb3dNdWx0aXBsZTogISFtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMuZ2V0KCdhbGxvd19tdWx0aXBsZScsIHRydWUpLFxuICAgICAgICBjb25maWc6IG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycpLFxuICAgICAgICBmaWVsZCxcbiAgICAgIH0pO1xuICAgIH07XG5cbiAgICBoYW5kbGVVcmwgPSBzdWJqZWN0ID0+IGUgPT4ge1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgICBjb25zdCB1cmwgPSB3aW5kb3cucHJvbXB0KHRoaXMucHJvcHMudChgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS5wcm9tcHRVcmxgKSk7XG5cbiAgICAgIHJldHVybiB0aGlzLnByb3BzLm9uQ2hhbmdlKHVybCk7XG4gICAgfTtcblxuICAgIGhhbmRsZVJlbW92ZSA9IGUgPT4ge1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgdGhpcy5wcm9wcy5vbkNsZWFyTWVkaWFDb250cm9sKHRoaXMuY29udHJvbElEKTtcbiAgICAgIHJldHVybiB0aGlzLnByb3BzLm9uQ2hhbmdlKCcnKTtcbiAgICB9O1xuXG4gICAgb25SZW1vdmVPbmUgPSBpbmRleCA9PiAoKSA9PiB7XG4gICAgICBjb25zdCB7IHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgdmFsdWUuc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgIHJldHVybiB0aGlzLnByb3BzLm9uQ2hhbmdlKHNpemVPZlZhbHVlKHZhbHVlKSA+IDAgPyBbLi4udmFsdWVdIDogbnVsbCk7XG4gICAgfTtcblxuICAgIG9uUmVwbGFjZU9uZSA9IGluZGV4ID0+ICgpID0+IHtcbiAgICAgIGNvbnN0IHsgZmllbGQsIG9uT3Blbk1lZGlhTGlicmFyeSwgdmFsdWUgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMgPSB0aGlzLmdldE1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucygpO1xuXG4gICAgICByZXR1cm4gb25PcGVuTWVkaWFMaWJyYXJ5KHtcbiAgICAgICAgY29udHJvbElEOiB0aGlzLmNvbnRyb2xJRCxcbiAgICAgICAgZm9ySW1hZ2UsXG4gICAgICAgIHByaXZhdGVVcGxvYWQ6IGZpZWxkLmdldCgncHJpdmF0ZScpLFxuICAgICAgICB2YWx1ZTogdmFsdWVMaXN0VG9BcnJheSh2YWx1ZSksXG4gICAgICAgIHJlcGxhY2VJbmRleDogaW5kZXgsXG4gICAgICAgIGFsbG93TXVsdGlwbGU6IGZhbHNlLFxuICAgICAgICBjb25maWc6IG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycpLFxuICAgICAgICBmaWVsZCxcbiAgICAgIH0pO1xuICAgIH07XG5cbiAgICBnZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMgPSAoKSA9PiB7XG4gICAgICBjb25zdCB7IGZpZWxkIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgICBpZiAoZmllbGQuaGFzSW4oWydvcHRpb25zJywgJ21lZGlhX2xpYnJhcnknXSkpIHtcbiAgICAgICAgd2FybkRlcHJlY2F0ZWRPcHRpb25zKGZpZWxkKTtcbiAgICAgICAgcmV0dXJuIGZpZWxkLmdldEluKFsnb3B0aW9ucycsICdtZWRpYV9saWJyYXJ5J10sIE1hcCgpKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZpZWxkLmdldCgnbWVkaWFfbGlicmFyeScsIE1hcCgpKTtcbiAgICB9O1xuXG4gICAgYWxsb3dzTXVsdGlwbGUgPSAoKSA9PiB7XG4gICAgICBjb25zdCBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMgPSB0aGlzLmdldE1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucygpO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zLmdldCgnY29uZmlnJywgZmFsc2UpICYmXG4gICAgICAgIG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycpLmdldCgnbXVsdGlwbGUnLCBmYWxzZSlcbiAgICAgICk7XG4gICAgfTtcblxuICAgIG9uU29ydEVuZCA9ICh7IG9sZEluZGV4LCBuZXdJbmRleCB9KSA9PiB7XG4gICAgICBjb25zdCB7IHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgbmV3VmFsdWUgPSBhcnJheU1vdmUodmFsdWUsIG9sZEluZGV4LCBuZXdJbmRleCk7XG4gICAgICByZXR1cm4gdGhpcy5wcm9wcy5vbkNoYW5nZShuZXdWYWx1ZSk7XG4gICAgfTtcblxuICAgIGdldFZhbGlkYXRlVmFsdWUgPSAoKSA9PiB7XG4gICAgICBjb25zdCB7IHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgIHJldHVybiBpc011bHRpcGxlKHZhbHVlKSA/IHZhbHVlLm1hcCh2ID0+IGJhc2VuYW1lKHYpKSA6IGJhc2VuYW1lKHZhbHVlKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH07XG5cbiAgICByZW5kZXJGaWxlTGluayA9IHZhbHVlID0+IHtcbiAgICAgIGNvbnN0IHNpemUgPSBNQVhfRElTUExBWV9MRU5HVEg7XG4gICAgICBpZiAoIXZhbHVlIHx8IHZhbHVlLmxlbmd0aCA8PSBzaXplKSB7XG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHRleHQgPSBgJHt2YWx1ZS5zbGljZSgwLCBzaXplIC8gMil9XFx1MjAyNiR7dmFsdWUuc2xpY2UoLShzaXplIC8gMikgKyAxKX1gO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPEZpbGVMaW5rIGhyZWY9e3ZhbHVlfSByZWw9XCJub29wZW5lclwiIHRhcmdldD1cIl9ibGFua1wiPlxuICAgICAgICAgIHt0ZXh0fVxuICAgICAgICA8L0ZpbGVMaW5rPlxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgcmVuZGVyRmlsZUxpbmtzID0gKCkgPT4ge1xuICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcblxuICAgICAgaWYgKGlzTXVsdGlwbGUodmFsdWUpKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPEZpbGVMaW5rcz5cbiAgICAgICAgICAgIDxGaWxlTGlua0xpc3Q+XG4gICAgICAgICAgICAgIHt2YWx1ZS5tYXAodmFsID0+IChcbiAgICAgICAgICAgICAgICA8bGkga2V5PXt2YWx9Pnt0aGlzLnJlbmRlckZpbGVMaW5rKHZhbCl9PC9saT5cbiAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICA8L0ZpbGVMaW5rTGlzdD5cbiAgICAgICAgICA8L0ZpbGVMaW5rcz5cbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiA8RmlsZUxpbmtzPnt0aGlzLnJlbmRlckZpbGVMaW5rKHZhbHVlKX08L0ZpbGVMaW5rcz47XG4gICAgfTtcblxuICAgIHJlbmRlckltYWdlcyA9ICgpID0+IHtcbiAgICAgIGNvbnN0IHsgZ2V0QXNzZXQsIHZhbHVlLCBmaWVsZCB9ID0gdGhpcy5wcm9wcztcblxuICAgICAgaWYgKGlzTXVsdGlwbGUodmFsdWUpKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPFNvcnRhYmxlTXVsdGlJbWFnZVdyYXBwZXJcbiAgICAgICAgICAgIGl0ZW1zPXt2YWx1ZX1cbiAgICAgICAgICAgIG9uU29ydEVuZD17dGhpcy5vblNvcnRFbmR9XG4gICAgICAgICAgICBvblJlbW92ZU9uZT17dGhpcy5vblJlbW92ZU9uZX1cbiAgICAgICAgICAgIG9uUmVwbGFjZU9uZT17dGhpcy5vblJlcGxhY2VPbmV9XG4gICAgICAgICAgICBkaXN0YW5jZT17NH1cbiAgICAgICAgICAgIGdldEFzc2V0PXtnZXRBc3NldH1cbiAgICAgICAgICAgIGZpZWxkPXtmaWVsZH1cbiAgICAgICAgICAgIGF4aXM9XCJ4eVwiXG4gICAgICAgICAgICBsb2NrVG9Db250YWluZXJFZGdlcz17dHJ1ZX1cbiAgICAgICAgICA+PC9Tb3J0YWJsZU11bHRpSW1hZ2VXcmFwcGVyPlxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBzcmMgPSBnZXRBc3NldCh2YWx1ZSwgZmllbGQpO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPEltYWdlV3JhcHBlcj5cbiAgICAgICAgICA8SW1hZ2Ugc3JjPXtzcmMgfHwgJyd9IC8+XG4gICAgICAgIDwvSW1hZ2VXcmFwcGVyPlxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgcmVuZGVyU2VsZWN0aW9uID0gc3ViamVjdCA9PiB7XG4gICAgICBjb25zdCB7IHQsIGZpZWxkIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgYWxsb3dzTXVsdGlwbGUgPSB0aGlzLmFsbG93c011bHRpcGxlKCk7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2PlxuICAgICAgICAgIHtmb3JJbWFnZSA/IHRoaXMucmVuZGVySW1hZ2VzKCkgOiBudWxsfVxuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICB7Zm9ySW1hZ2UgPyBudWxsIDogdGhpcy5yZW5kZXJGaWxlTGlua3MoKX1cbiAgICAgICAgICAgIDxGaWxlV2lkZ2V0QnV0dG9uIG9uQ2xpY2s9e3RoaXMuaGFuZGxlQ2hhbmdlfT5cbiAgICAgICAgICAgICAge3QoXG4gICAgICAgICAgICAgICAgYGVkaXRvci5lZGl0b3JXaWRnZXRzLiR7c3ViamVjdH0uJHtcbiAgICAgICAgICAgICAgICAgIHRoaXMuYWxsb3dzTXVsdGlwbGUoKSA/ICdhZGRNb3JlJyA6ICdjaG9vc2VEaWZmZXJlbnQnXG4gICAgICAgICAgICAgICAgfWAsXG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b24+XG4gICAgICAgICAgICB7ZmllbGQuZ2V0KCdjaG9vc2VfdXJsJywgdHJ1ZSkgJiYgIXRoaXMuYWxsb3dzTXVsdGlwbGUoKSA/IChcbiAgICAgICAgICAgICAgPEZpbGVXaWRnZXRCdXR0b24gb25DbGljaz17dGhpcy5oYW5kbGVVcmwoc3ViamVjdCl9PlxuICAgICAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LnJlcGxhY2VVcmxgKX1cbiAgICAgICAgICAgICAgPC9GaWxlV2lkZ2V0QnV0dG9uPlxuICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvblJlbW92ZSBvbkNsaWNrPXt0aGlzLmhhbmRsZVJlbW92ZX0+XG4gICAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LnJlbW92ZSR7YWxsb3dzTXVsdGlwbGUgPyAnQWxsJyA6ICcnfWApfVxuICAgICAgICAgICAgPC9GaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICk7XG4gICAgfTtcblxuICAgIHJlbmRlck5vU2VsZWN0aW9uID0gc3ViamVjdCA9PiB7XG4gICAgICBjb25zdCB7IHQsIGZpZWxkIH0gPSB0aGlzLnByb3BzO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPD5cbiAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvbiBvbkNsaWNrPXt0aGlzLmhhbmRsZUNoYW5nZX0+XG4gICAgICAgICAgICB7dChgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS5jaG9vc2Uke3RoaXMuYWxsb3dzTXVsdGlwbGUoKSA/ICdNdWx0aXBsZScgOiAnJ31gKX1cbiAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b24+XG4gICAgICAgICAge2ZpZWxkLmdldCgnY2hvb3NlX3VybCcsIHRydWUpID8gKFxuICAgICAgICAgICAgPEZpbGVXaWRnZXRCdXR0b24gb25DbGljaz17dGhpcy5oYW5kbGVVcmwoc3ViamVjdCl9PlxuICAgICAgICAgICAgICB7dChgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS5jaG9vc2VVcmxgKX1cbiAgICAgICAgICAgIDwvRmlsZVdpZGdldEJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC8+XG4gICAgICApO1xuICAgIH07XG5cbiAgICByZW5kZXIoKSB7XG4gICAgICBjb25zdCB7IHZhbHVlLCBjbGFzc05hbWVXcmFwcGVyIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3Qgc3ViamVjdCA9IGZvckltYWdlID8gJ2ltYWdlJyA6ICdmaWxlJztcblxuICAgICAgcmV0dXJuIChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e2NsYXNzTmFtZVdyYXBwZXJ9PlxuICAgICAgICAgIDxzcGFuPnt2YWx1ZSA/IHRoaXMucmVuZGVyU2VsZWN0aW9uKHN1YmplY3QpIDogdGhpcy5yZW5kZXJOb1NlbGVjdGlvbihzdWJqZWN0KX08L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKTtcbiAgICB9XG4gIH07XG59XG4iXX0= */"));
|
|
33
|
+
})("flex-basis:155px;width:155px;height:100px;margin-right:20px;margin-bottom:20px;border:", _decapCmsUiDefault.borders.textField, ";border-radius:", _decapCmsUiDefault.lengths.borderRadius, ";overflow:hidden;", _decapCmsUiDefault.effects.checkerboard, ";", _decapCmsUiDefault.shadows.inset, ";cursor:", props => props.sortable ? 'pointer' : 'auto', ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy93aXRoRmlsZUNvbnRyb2wuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBa0MrQiIsImZpbGUiOiIuLi8uLi9zcmMvd2l0aEZpbGVDb250cm9sLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgSW1tdXRhYmxlUHJvcFR5cGVzIGZyb20gJ3JlYWN0LWltbXV0YWJsZS1wcm9wdHlwZXMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vY29yZSc7XG5pbXBvcnQgeyBNYXAsIExpc3QgfSBmcm9tICdpbW11dGFibGUnO1xuaW1wb3J0IHsgb25jZSB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyB2NCBhcyB1dWlkIH0gZnJvbSAndXVpZCc7XG5pbXBvcnQgeyBvbmVMaW5lIH0gZnJvbSAnY29tbW9uLXRhZ3MnO1xuaW1wb3J0IHtcbiAgbGVuZ3RocyxcbiAgY29tcG9uZW50cyxcbiAgYnV0dG9ucyxcbiAgYm9yZGVycyxcbiAgZWZmZWN0cyxcbiAgc2hhZG93cyxcbiAgSWNvbkJ1dHRvbixcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuaW1wb3J0IHsgYmFzZW5hbWUgfSBmcm9tICdkZWNhcC1jbXMtbGliLXV0aWwnO1xuaW1wb3J0IHsgYXJyYXlNb3ZlSW1tdXRhYmxlIGFzIGFycmF5TW92ZSB9IGZyb20gJ2FycmF5LW1vdmUnO1xuaW1wb3J0IHtcbiAgRG5kQ29udGV4dCxcbiAgTW91c2VTZW5zb3IsXG4gIFRvdWNoU2Vuc29yLFxuICBjbG9zZXN0Q2VudGVyLFxuICB1c2VTZW5zb3IsXG4gIHVzZVNlbnNvcnMsXG59IGZyb20gJ0BkbmQta2l0L2NvcmUnO1xuaW1wb3J0IHsgU29ydGFibGVDb250ZXh0LCB1c2VTb3J0YWJsZSB9IGZyb20gJ0BkbmQta2l0L3NvcnRhYmxlJztcbmltcG9ydCB7IENTUyB9IGZyb20gJ0BkbmQta2l0L3V0aWxpdGllcyc7XG5pbXBvcnQgeyByZXN0cmljdFRvUGFyZW50RWxlbWVudCB9IGZyb20gJ0BkbmQta2l0L21vZGlmaWVycyc7XG5cbmNvbnN0IE1BWF9ESVNQTEFZX0xFTkdUSCA9IDUwO1xuXG5jb25zdCBJbWFnZVdyYXBwZXIgPSBzdHlsZWQuZGl2YFxuICBmbGV4LWJhc2lzOiAxNTVweDtcbiAgd2lkdGg6IDE1NXB4O1xuICBoZWlnaHQ6IDEwMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGJvcmRlcjogJHtib3JkZXJzLnRleHRGaWVsZH07XG4gIGJvcmRlci1yYWRpdXM6ICR7bGVuZ3Rocy5ib3JkZXJSYWRpdXN9O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAke2VmZmVjdHMuY2hlY2tlcmJvYXJkfTtcbiAgJHtzaGFkb3dzLmluc2V0fTtcbiAgY3Vyc29yOiAke3Byb3BzID0+IChwcm9wcy5zb3J0YWJsZSA/ICdwb2ludGVyJyA6ICdhdXRvJyl9O1xuYDtcblxuY29uc3QgU29ydGFibGVJbWFnZUJ1dHRvbnNXcmFwcGVyID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGNvbHVtbi1nYXA6IDEwcHg7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbiAgbWFyZ2luLXRvcDogLTEwcHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG5gO1xuXG5jb25zdCBTdHlsZWRJbWFnZSA9IHN0eWxlZC5pbWdgXG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvbnRhaW47XG5gO1xuXG5mdW5jdGlvbiBJbWFnZShwcm9wcykge1xuICByZXR1cm4gPFN0eWxlZEltYWdlIHJvbGU9XCJwcmVzZW50YXRpb25cIiB7Li4ucHJvcHN9IC8+O1xufVxuXG5mdW5jdGlvbiBTb3J0YWJsZUltYWdlQnV0dG9ucyh7IG9uUmVtb3ZlLCBvblJlcGxhY2UgfSkge1xuICByZXR1cm4gKFxuICAgIDxTb3J0YWJsZUltYWdlQnV0dG9uc1dyYXBwZXI+XG4gICAgICA8SWNvbkJ1dHRvbiBzaXplPVwic21hbGxcIiB0eXBlPVwibWVkaWFcIiBvbkNsaWNrPXtvblJlcGxhY2V9PjwvSWNvbkJ1dHRvbj5cbiAgICAgIDxJY29uQnV0dG9uIHNpemU9XCJzbWFsbFwiIHR5cGU9XCJjbG9zZVwiIG9uQ2xpY2s9e29uUmVtb3ZlfT48L0ljb25CdXR0b24+XG4gICAgPC9Tb3J0YWJsZUltYWdlQnV0dG9uc1dyYXBwZXI+XG4gICk7XG59XG5cbmZ1bmN0aW9uIFNvcnRhYmxlSW1hZ2UocHJvcHMpIHtcbiAgY29uc3QgeyBhdHRyaWJ1dGVzLCBsaXN0ZW5lcnMsIHNldE5vZGVSZWYsIHRyYW5zZm9ybSwgdHJhbnNpdGlvbiB9ID0gdXNlU29ydGFibGUoe1xuICAgIGlkOiBwcm9wcy5pZCxcbiAgfSk7XG5cbiAgY29uc3Qgc3R5bGUgPSB7XG4gICAgdHJhbnNmb3JtOiBDU1MuVHJhbnNmb3JtLnRvU3RyaW5nKHRyYW5zZm9ybSksXG4gICAgdHJhbnNpdGlvbixcbiAgfTtcblxuICBjb25zdCB7IGl0ZW1WYWx1ZSwgZ2V0QXNzZXQsIGZpZWxkLCBvblJlbW92ZSwgb25SZXBsYWNlIH0gPSBwcm9wcztcblxuICByZXR1cm4gKFxuICAgIDxkaXYgcmVmPXtzZXROb2RlUmVmfSBzdHlsZT17c3R5bGV9IHsuLi5hdHRyaWJ1dGVzfSB7Li4ubGlzdGVuZXJzfT5cbiAgICAgIDxJbWFnZVdyYXBwZXIgc29ydGFibGU+XG4gICAgICAgIDxJbWFnZSBzcmM9e2dldEFzc2V0KGl0ZW1WYWx1ZSwgZmllbGQpIHx8ICcnfSAvPlxuICAgICAgPC9JbWFnZVdyYXBwZXI+XG4gICAgICA8U29ydGFibGVJbWFnZUJ1dHRvbnNcbiAgICAgICAgaXRlbT17aXRlbVZhbHVlfVxuICAgICAgICBvblJlbW92ZT17b25SZW1vdmV9XG4gICAgICAgIG9uUmVwbGFjZT17b25SZXBsYWNlfVxuICAgICAgPjwvU29ydGFibGVJbWFnZUJ1dHRvbnM+XG4gICAgPC9kaXY+XG4gICk7XG59XG5cbmZ1bmN0aW9uIFNvcnRhYmxlTXVsdGlJbWFnZVdyYXBwZXIoe1xuICBpdGVtcyxcbiAgZ2V0QXNzZXQsXG4gIGZpZWxkLFxuICBvblNvcnRFbmQsXG4gIG9uUmVtb3ZlT25lLFxuICBvblJlcGxhY2VPbmUsXG59KSB7XG4gIGNvbnN0IGFjdGl2YXRpb25Db25zdHJhaW50ID0geyBkaXN0YW5jZTogNCB9O1xuICBjb25zdCBzZW5zb3JzID0gdXNlU2Vuc29ycyhcbiAgICB1c2VTZW5zb3IoTW91c2VTZW5zb3IsIHsgYWN0aXZhdGlvbkNvbnN0cmFpbnQgfSksXG4gICAgdXNlU2Vuc29yKFRvdWNoU2Vuc29yLCB7IGFjdGl2YXRpb25Db25zdHJhaW50IH0pLFxuICApO1xuXG4gIGZ1bmN0aW9uIGhhbmRsZVNvcnRFbmQoeyBhY3RpdmUsIG92ZXIgfSkge1xuICAgIG9uU29ydEVuZCh7XG4gICAgICBvbGRJbmRleDogaXRlbXMuZmluZEluZGV4KGl0ZW0gPT4gaXRlbS5pZCA9PT0gYWN0aXZlLmlkKSxcbiAgICAgIG5ld0luZGV4OiBpdGVtcy5maW5kSW5kZXgoaXRlbSA9PiBpdGVtLmlkID09PSBvdmVyLmlkKSxcbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPGRpdlxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0L25vLXVua25vd24tcHJvcGVydHlcbiAgICAgIGNzcz17Y3NzYFxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBgfVxuICAgID5cbiAgICAgIDxEbmRDb250ZXh0XG4gICAgICAgIG1vZGlmaWVycz17W3Jlc3RyaWN0VG9QYXJlbnRFbGVtZW50XX1cbiAgICAgICAgY29sbGlzaW9uRGV0ZWN0aW9uPXtjbG9zZXN0Q2VudGVyfVxuICAgICAgICBzZW5zb3JzPXtzZW5zb3JzfVxuICAgICAgICBvbkRyYWdFbmQ9e2hhbmRsZVNvcnRFbmR9XG4gICAgICA+XG4gICAgICAgIDxTb3J0YWJsZUNvbnRleHQgaXRlbXM9e2l0ZW1zfT5cbiAgICAgICAgICB7aXRlbXMubWFwKChpdGVtLCBpbmRleCkgPT4gKFxuICAgICAgICAgICAgPFNvcnRhYmxlSW1hZ2VcbiAgICAgICAgICAgICAga2V5PXtpdGVtLmlkfVxuICAgICAgICAgICAgICBpZD17aXRlbS5pZH1cbiAgICAgICAgICAgICAgaW5kZXg9e2luZGV4fVxuICAgICAgICAgICAgICBpdGVtVmFsdWU9e2l0ZW0udmFsdWV9XG4gICAgICAgICAgICAgIGdldEFzc2V0PXtnZXRBc3NldH1cbiAgICAgICAgICAgICAgZmllbGQ9e2ZpZWxkfVxuICAgICAgICAgICAgICBvblJlbW92ZT17b25SZW1vdmVPbmUoaW5kZXgpfVxuICAgICAgICAgICAgICBvblJlcGxhY2U9e29uUmVwbGFjZU9uZShpbmRleCl9XG4gICAgICAgICAgICA+PC9Tb3J0YWJsZUltYWdlPlxuICAgICAgICAgICkpfVxuICAgICAgICA8L1NvcnRhYmxlQ29udGV4dD5cbiAgICAgIDwvRG5kQ29udGV4dD5cbiAgICA8L2Rpdj5cbiAgKTtcbn1cblxuY29uc3QgRmlsZUxpbmsgPSBzdHlsZWQuYWBcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6IGluaGVyaXQ7XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG5gO1xuXG5jb25zdCBGaWxlTGlua3MgPSBzdHlsZWQuZGl2YFxuICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuYDtcblxuY29uc3QgRmlsZUxpbmtMaXN0ID0gc3R5bGVkLnVsYFxuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5gO1xuXG5jb25zdCBGaWxlV2lkZ2V0QnV0dG9uID0gc3R5bGVkLmJ1dHRvbmBcbiAgJHtidXR0b25zLmJ1dHRvbn07XG4gICR7Y29tcG9uZW50cy5iYWRnZX07XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG5gO1xuXG5jb25zdCBGaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlID0gc3R5bGVkLmJ1dHRvbmBcbiAgJHtidXR0b25zLmJ1dHRvbn07XG4gICR7Y29tcG9uZW50cy5iYWRnZURhbmdlcn07XG5gO1xuXG5mdW5jdGlvbiBpc011bHRpcGxlKHZhbHVlKSB7XG4gIHJldHVybiBBcnJheS5pc0FycmF5KHZhbHVlKSB8fCBMaXN0LmlzTGlzdCh2YWx1ZSk7XG59XG5cbmZ1bmN0aW9uIHNpemVPZlZhbHVlKHZhbHVlKSB7XG4gIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgIHJldHVybiB2YWx1ZS5sZW5ndGg7XG4gIH1cblxuICBpZiAoTGlzdC5pc0xpc3QodmFsdWUpKSB7XG4gICAgcmV0dXJuIHZhbHVlLnNpemU7XG4gIH1cblxuICByZXR1cm4gdmFsdWUgPyAxIDogMDtcbn1cblxuZnVuY3Rpb24gdmFsdWVMaXN0VG9BcnJheSh2YWx1ZSkge1xuICByZXR1cm4gTGlzdC5pc0xpc3QodmFsdWUpID8gdmFsdWUudG9BcnJheSgpIDogdmFsdWUgPz8gJyc7XG59XG5cbmZ1bmN0aW9uIHZhbHVlTGlzdFRvU29ydGFibGVBcnJheSh2YWx1ZSkge1xuICBpZiAoIWlzTXVsdGlwbGUodmFsdWUpKSB7XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG5cbiAgY29uc3QgdmFsdWVBcnJheSA9IHZhbHVlTGlzdFRvQXJyYXkodmFsdWUpLm1hcCh2YWx1ZSA9PiAoe1xuICAgIGlkOiB1dWlkKCksXG4gICAgdmFsdWUsXG4gIH0pKTtcblxuICByZXR1cm4gdmFsdWVBcnJheTtcbn1cblxuY29uc3Qgd2FybkRlcHJlY2F0ZWRPcHRpb25zID0gb25jZShmaWVsZCA9PlxuICBjb25zb2xlLndhcm4ob25lTGluZWBcbiAgRGVjYXAgQ01TIGNvbmZpZzogJHtmaWVsZC5nZXQoJ25hbWUnKX0gZmllbGQ6IHByb3BlcnR5IFwib3B0aW9uc1wiIGhhcyBiZWVuIGRlcHJlY2F0ZWQgZm9yIHRoZVxuICAke2ZpZWxkLmdldCgnd2lkZ2V0Jyl9IHdpZGdldCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IG1ham9yIHJlbGVhc2UuIFJhdGhlciB0aGFuXG4gIFxcYGZpZWxkLm9wdGlvbnMubWVkaWFfbGlicmFyeVxcYCwgYXBwbHkgbWVkaWEgbGlicmFyeSBvcHRpb25zIGZvciB0aGlzIHdpZGdldCB1bmRlclxuICBcXGBmaWVsZC5tZWRpYV9saWJyYXJ5XFxgLlxuYCksXG4pO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB3aXRoRmlsZUNvbnRyb2woeyBmb3JJbWFnZSB9ID0ge30pIHtcbiAgcmV0dXJuIGNsYXNzIEZpbGVDb250cm9sIGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50IHtcbiAgICBzdGF0aWMgcHJvcFR5cGVzID0ge1xuICAgICAgZmllbGQ6IFByb3BUeXBlcy5vYmplY3QuaXNSZXF1aXJlZCxcbiAgICAgIGdldEFzc2V0OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgbWVkaWFQYXRoczogSW1tdXRhYmxlUHJvcFR5cGVzLm1hcC5pc1JlcXVpcmVkLFxuICAgICAgb25BZGRBc3NldDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uQ2hhbmdlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgb25SZW1vdmVJbnNlcnRlZE1lZGlhOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgb25PcGVuTWVkaWFMaWJyYXJ5OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgb25DbGVhck1lZGlhQ29udHJvbDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uUmVtb3ZlTWVkaWFDb250cm9sOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgY2xhc3NOYW1lV3JhcHBlcjogUHJvcFR5cGVzLnN0cmluZy5pc1JlcXVpcmVkLFxuICAgICAgdmFsdWU6IFByb3BUeXBlcy5vbmVPZlR5cGUoW1xuICAgICAgICBQcm9wVHlwZXMuc3RyaW5nLFxuICAgICAgICBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMuc3RyaW5nKSxcbiAgICAgICAgSW1tdXRhYmxlUHJvcFR5cGVzLmxpc3RPZihQcm9wVHlwZXMuc3RyaW5nKSxcbiAgICAgIF0pLFxuICAgICAgdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICB9O1xuXG4gICAgc3RhdGljIGRlZmF1bHRQcm9wcyA9IHtcbiAgICAgIHZhbHVlOiAnJyxcbiAgICB9O1xuXG4gICAgY29uc3RydWN0b3IocHJvcHMpIHtcbiAgICAgIHN1cGVyKHByb3BzKTtcbiAgICAgIHRoaXMuY29udHJvbElEID0gdXVpZCgpO1xuICAgIH1cblxuICAgIHNob3VsZENvbXBvbmVudFVwZGF0ZShuZXh0UHJvcHMpIHtcbiAgICAgIC8qKlxuICAgICAgICogQWx3YXlzIHVwZGF0ZSBpZiB0aGUgdmFsdWUgb3IgZ2V0QXNzZXQgY2hhbmdlcy5cbiAgICAgICAqL1xuICAgICAgaWYgKHRoaXMucHJvcHMudmFsdWUgIT09IG5leHRQcm9wcy52YWx1ZSB8fCB0aGlzLnByb3BzLmdldEFzc2V0ICE9PSBuZXh0UHJvcHMuZ2V0QXNzZXQpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG5cbiAgICAgIC8qKlxuICAgICAgICogSWYgdGhlcmUgaXMgYSBtZWRpYSBwYXRoIGZvciB0aGlzIGNvbnRyb2wgaW4gdGhlIHN0YXRlIG9iamVjdCwgYW5kIHRoYXRcbiAgICAgICAqIHBhdGggaXMgZGlmZmVyZW50IHRoYW4gdGhlIHZhbHVlIGluIGBuZXh0UHJvcHNgLCB1cGRhdGUuXG4gICAgICAgKi9cbiAgICAgIGNvbnN0IG1lZGlhUGF0aCA9IG5leHRQcm9wcy5tZWRpYVBhdGhzLmdldCh0aGlzLmNvbnRyb2xJRCk7XG4gICAgICBpZiAobWVkaWFQYXRoICYmIG5leHRQcm9wcy52YWx1ZSAhPT0gbWVkaWFQYXRoKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgY29tcG9uZW50RGlkVXBkYXRlKCkge1xuICAgICAgY29uc3QgeyBtZWRpYVBhdGhzLCB2YWx1ZSwgb25SZW1vdmVJbnNlcnRlZE1lZGlhLCBvbkNoYW5nZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGNvbnN0IG1lZGlhUGF0aCA9IG1lZGlhUGF0aHMuZ2V0KHRoaXMuY29udHJvbElEKTtcbiAgICAgIGlmIChtZWRpYVBhdGggJiYgbWVkaWFQYXRoICE9PSB2YWx1ZSkge1xuICAgICAgICBvbkNoYW5nZShtZWRpYVBhdGgpO1xuICAgICAgfSBlbHNlIGlmIChtZWRpYVBhdGggJiYgbWVkaWFQYXRoID09PSB2YWx1ZSkge1xuICAgICAgICBvblJlbW92ZUluc2VydGVkTWVkaWEodGhpcy5jb250cm9sSUQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGNvbXBvbmVudFdpbGxVbm1vdW50KCkge1xuICAgICAgdGhpcy5wcm9wcy5vblJlbW92ZU1lZGlhQ29udHJvbCh0aGlzLmNvbnRyb2xJRCk7XG4gICAgfVxuXG4gICAgaGFuZGxlQ2hhbmdlID0gZSA9PiB7XG4gICAgICBjb25zdCB7IGZpZWxkLCBvbk9wZW5NZWRpYUxpYnJhcnksIHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgY29uc3QgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gdGhpcy5nZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMoKTtcblxuICAgICAgcmV0dXJuIG9uT3Blbk1lZGlhTGlicmFyeSh7XG4gICAgICAgIGNvbnRyb2xJRDogdGhpcy5jb250cm9sSUQsXG4gICAgICAgIGZvckltYWdlLFxuICAgICAgICBwcml2YXRlVXBsb2FkOiBmaWVsZC5nZXQoJ3ByaXZhdGUnKSxcbiAgICAgICAgdmFsdWU6IHZhbHVlTGlzdFRvQXJyYXkodmFsdWUpLFxuICAgICAgICBhbGxvd011bHRpcGxlOiAhIW1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2FsbG93X211bHRpcGxlJywgdHJ1ZSksXG4gICAgICAgIGNvbmZpZzogbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zLmdldCgnY29uZmlnJyksXG4gICAgICAgIGZpZWxkLFxuICAgICAgfSk7XG4gICAgfTtcblxuICAgIGhhbmRsZVVybCA9IHN1YmplY3QgPT4gZSA9PiB7XG4gICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG5cbiAgICAgIGNvbnN0IHVybCA9IHdpbmRvdy5wcm9tcHQodGhpcy5wcm9wcy50KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LnByb21wdFVybGApKTtcblxuICAgICAgcmV0dXJuIHRoaXMucHJvcHMub25DaGFuZ2UodXJsKTtcbiAgICB9O1xuXG4gICAgaGFuZGxlUmVtb3ZlID0gZSA9PiB7XG4gICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB0aGlzLnByb3BzLm9uQ2xlYXJNZWRpYUNvbnRyb2wodGhpcy5jb250cm9sSUQpO1xuICAgICAgcmV0dXJuIHRoaXMucHJvcHMub25DaGFuZ2UoJycpO1xuICAgIH07XG5cbiAgICBvblJlbW92ZU9uZSA9IGluZGV4ID0+ICgpID0+IHtcbiAgICAgIGNvbnN0IHZhbHVlID0gdmFsdWVMaXN0VG9BcnJheSh0aGlzLnByb3BzLnZhbHVlKTtcbiAgICAgIHZhbHVlLnNwbGljZShpbmRleCwgMSk7XG4gICAgICByZXR1cm4gdGhpcy5wcm9wcy5vbkNoYW5nZShzaXplT2ZWYWx1ZSh2YWx1ZSkgPiAwID8gWy4uLnZhbHVlXSA6IG51bGwpO1xuICAgIH07XG5cbiAgICBvblJlcGxhY2VPbmUgPSBpbmRleCA9PiAoKSA9PiB7XG4gICAgICBjb25zdCB7IGZpZWxkLCBvbk9wZW5NZWRpYUxpYnJhcnksIHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gdGhpcy5nZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMoKTtcblxuICAgICAgcmV0dXJuIG9uT3Blbk1lZGlhTGlicmFyeSh7XG4gICAgICAgIGNvbnRyb2xJRDogdGhpcy5jb250cm9sSUQsXG4gICAgICAgIGZvckltYWdlLFxuICAgICAgICBwcml2YXRlVXBsb2FkOiBmaWVsZC5nZXQoJ3ByaXZhdGUnKSxcbiAgICAgICAgdmFsdWU6IHZhbHVlTGlzdFRvQXJyYXkodmFsdWUpLFxuICAgICAgICByZXBsYWNlSW5kZXg6IGluZGV4LFxuICAgICAgICBhbGxvd011bHRpcGxlOiBmYWxzZSxcbiAgICAgICAgY29uZmlnOiBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMuZ2V0KCdjb25maWcnKSxcbiAgICAgICAgZmllbGQsXG4gICAgICB9KTtcbiAgICB9O1xuXG4gICAgZ2V0TWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gKCkgPT4ge1xuICAgICAgY29uc3QgeyBmaWVsZCB9ID0gdGhpcy5wcm9wcztcblxuICAgICAgaWYgKGZpZWxkLmhhc0luKFsnb3B0aW9ucycsICdtZWRpYV9saWJyYXJ5J10pKSB7XG4gICAgICAgIHdhcm5EZXByZWNhdGVkT3B0aW9ucyhmaWVsZCk7XG4gICAgICAgIHJldHVybiBmaWVsZC5nZXRJbihbJ29wdGlvbnMnLCAnbWVkaWFfbGlicmFyeSddLCBNYXAoKSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBmaWVsZC5nZXQoJ21lZGlhX2xpYnJhcnknLCBNYXAoKSk7XG4gICAgfTtcblxuICAgIGFsbG93c011bHRpcGxlID0gKCkgPT4ge1xuICAgICAgY29uc3QgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gdGhpcy5nZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMoKTtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycsIGZhbHNlKSAmJlxuICAgICAgICBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMuZ2V0KCdjb25maWcnKS5nZXQoJ211bHRpcGxlJywgZmFsc2UpXG4gICAgICApO1xuICAgIH07XG5cbiAgICBvblNvcnRFbmQgPSAoeyBvbGRJbmRleCwgbmV3SW5kZXggfSkgPT4ge1xuICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGNvbnN0IG5ld1ZhbHVlID0gYXJyYXlNb3ZlKHZhbHVlLCBvbGRJbmRleCwgbmV3SW5kZXgpO1xuICAgICAgcmV0dXJuIHRoaXMucHJvcHMub25DaGFuZ2UobmV3VmFsdWUpO1xuICAgIH07XG5cbiAgICBnZXRWYWxpZGF0ZVZhbHVlID0gKCkgPT4ge1xuICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICByZXR1cm4gaXNNdWx0aXBsZSh2YWx1ZSkgPyB2YWx1ZS5tYXAodiA9PiBiYXNlbmFtZSh2KSkgOiBiYXNlbmFtZSh2YWx1ZSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9O1xuXG4gICAgcmVuZGVyRmlsZUxpbmsgPSB2YWx1ZSA9PiB7XG4gICAgICBjb25zdCBzaXplID0gTUFYX0RJU1BMQVlfTEVOR1RIO1xuICAgICAgaWYgKCF2YWx1ZSB8fCB2YWx1ZS5sZW5ndGggPD0gc2l6ZSkge1xuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICB9XG4gICAgICBjb25zdCB0ZXh0ID0gYCR7dmFsdWUuc2xpY2UoMCwgc2l6ZSAvIDIpfVxcdTIwMjYke3ZhbHVlLnNsaWNlKC0oc2l6ZSAvIDIpICsgMSl9YDtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxGaWxlTGluayBocmVmPXt2YWx1ZX0gcmVsPVwibm9vcGVuZXJcIiB0YXJnZXQ9XCJfYmxhbmtcIj5cbiAgICAgICAgICB7dGV4dH1cbiAgICAgICAgPC9GaWxlTGluaz5cbiAgICAgICk7XG4gICAgfTtcblxuICAgIHJlbmRlckZpbGVMaW5rcyA9ICgpID0+IHtcbiAgICAgIGNvbnN0IHsgdmFsdWUgfSA9IHRoaXMucHJvcHM7XG5cbiAgICAgIGlmIChpc011bHRpcGxlKHZhbHVlKSkge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIDxGaWxlTGlua3M+XG4gICAgICAgICAgICA8RmlsZUxpbmtMaXN0PlxuICAgICAgICAgICAgICB7dmFsdWUubWFwKHZhbCA9PiAoXG4gICAgICAgICAgICAgICAgPGxpIGtleT17dmFsfT57dGhpcy5yZW5kZXJGaWxlTGluayh2YWwpfTwvbGk+XG4gICAgICAgICAgICAgICkpfVxuICAgICAgICAgICAgPC9GaWxlTGlua0xpc3Q+XG4gICAgICAgICAgPC9GaWxlTGlua3M+XG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICByZXR1cm4gPEZpbGVMaW5rcz57dGhpcy5yZW5kZXJGaWxlTGluayh2YWx1ZSl9PC9GaWxlTGlua3M+O1xuICAgIH07XG5cbiAgICByZW5kZXJJbWFnZXMgPSAoKSA9PiB7XG4gICAgICBjb25zdCB7IGdldEFzc2V0LCB2YWx1ZSwgZmllbGQgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBpdGVtcyA9IHZhbHVlTGlzdFRvU29ydGFibGVBcnJheSh2YWx1ZSk7XG4gICAgICBpZiAoaXNNdWx0aXBsZSh2YWx1ZSkpIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICA8U29ydGFibGVNdWx0aUltYWdlV3JhcHBlclxuICAgICAgICAgICAgaXRlbXM9e2l0ZW1zfVxuICAgICAgICAgICAgb25Tb3J0RW5kPXt0aGlzLm9uU29ydEVuZH1cbiAgICAgICAgICAgIG9uUmVtb3ZlT25lPXt0aGlzLm9uUmVtb3ZlT25lfVxuICAgICAgICAgICAgb25SZXBsYWNlT25lPXt0aGlzLm9uUmVwbGFjZU9uZX1cbiAgICAgICAgICAgIGRpc3RhbmNlPXs0fVxuICAgICAgICAgICAgZ2V0QXNzZXQ9e2dldEFzc2V0fVxuICAgICAgICAgICAgZmllbGQ9e2ZpZWxkfVxuICAgICAgICAgICAgYXhpcz1cInh5XCJcbiAgICAgICAgICAgIGxvY2tUb0NvbnRhaW5lckVkZ2VzPXt0cnVlfVxuICAgICAgICAgID48L1NvcnRhYmxlTXVsdGlJbWFnZVdyYXBwZXI+XG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHNyYyA9IGdldEFzc2V0KHZhbHVlLCBmaWVsZCk7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8SW1hZ2VXcmFwcGVyPlxuICAgICAgICAgIDxJbWFnZSBzcmM9e3NyYyB8fCAnJ30gLz5cbiAgICAgICAgPC9JbWFnZVdyYXBwZXI+XG4gICAgICApO1xuICAgIH07XG5cbiAgICByZW5kZXJTZWxlY3Rpb24gPSBzdWJqZWN0ID0+IHtcbiAgICAgIGNvbnN0IHsgdCwgZmllbGQgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBhbGxvd3NNdWx0aXBsZSA9IHRoaXMuYWxsb3dzTXVsdGlwbGUoKTtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge2ZvckltYWdlID8gdGhpcy5yZW5kZXJJbWFnZXMoKSA6IG51bGx9XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIHtmb3JJbWFnZSA/IG51bGwgOiB0aGlzLnJlbmRlckZpbGVMaW5rcygpfVxuICAgICAgICAgICAgPEZpbGVXaWRnZXRCdXR0b24gb25DbGljaz17dGhpcy5oYW5kbGVDaGFuZ2V9PlxuICAgICAgICAgICAgICB7dChcbiAgICAgICAgICAgICAgICBgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS4ke1xuICAgICAgICAgICAgICAgICAgdGhpcy5hbGxvd3NNdWx0aXBsZSgpID8gJ2FkZE1vcmUnIDogJ2Nob29zZURpZmZlcmVudCdcbiAgICAgICAgICAgICAgICB9YCxcbiAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIDwvRmlsZVdpZGdldEJ1dHRvbj5cbiAgICAgICAgICAgIHtmaWVsZC5nZXQoJ2Nob29zZV91cmwnLCB0cnVlKSAmJiAhdGhpcy5hbGxvd3NNdWx0aXBsZSgpID8gKFxuICAgICAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvbiBvbkNsaWNrPXt0aGlzLmhhbmRsZVVybChzdWJqZWN0KX0+XG4gICAgICAgICAgICAgICAge3QoYGVkaXRvci5lZGl0b3JXaWRnZXRzLiR7c3ViamVjdH0ucmVwbGFjZVVybGApfVxuICAgICAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b24+XG4gICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgIDxGaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlIG9uQ2xpY2s9e3RoaXMuaGFuZGxlUmVtb3ZlfT5cbiAgICAgICAgICAgICAge3QoYGVkaXRvci5lZGl0b3JXaWRnZXRzLiR7c3ViamVjdH0ucmVtb3ZlJHthbGxvd3NNdWx0aXBsZSA/ICdBbGwnIDogJyd9YCl9XG4gICAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b25SZW1vdmU+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgcmVuZGVyTm9TZWxlY3Rpb24gPSBzdWJqZWN0ID0+IHtcbiAgICAgIGNvbnN0IHsgdCwgZmllbGQgfSA9IHRoaXMucHJvcHM7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8PlxuICAgICAgICAgIDxGaWxlV2lkZ2V0QnV0dG9uIG9uQ2xpY2s9e3RoaXMuaGFuZGxlQ2hhbmdlfT5cbiAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LmNob29zZSR7dGhpcy5hbGxvd3NNdWx0aXBsZSgpID8gJ011bHRpcGxlJyA6ICcnfWApfVxuICAgICAgICAgIDwvRmlsZVdpZGdldEJ1dHRvbj5cbiAgICAgICAgICB7ZmllbGQuZ2V0KCdjaG9vc2VfdXJsJywgdHJ1ZSkgPyAoXG4gICAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvbiBvbkNsaWNrPXt0aGlzLmhhbmRsZVVybChzdWJqZWN0KX0+XG4gICAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LmNob29zZVVybGApfVxuICAgICAgICAgICAgPC9GaWxlV2lkZ2V0QnV0dG9uPlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICA8Lz5cbiAgICAgICk7XG4gICAgfTtcblxuICAgIHJlbmRlcigpIHtcbiAgICAgIGNvbnN0IHsgdmFsdWUsIGNsYXNzTmFtZVdyYXBwZXIgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBzdWJqZWN0ID0gZm9ySW1hZ2UgPyAnaW1hZ2UnIDogJ2ZpbGUnO1xuXG4gICAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Y2xhc3NOYW1lV3JhcHBlcn0+XG4gICAgICAgICAgPHNwYW4+e3ZhbHVlID8gdGhpcy5yZW5kZXJTZWxlY3Rpb24oc3ViamVjdCkgOiB0aGlzLnJlbmRlck5vU2VsZWN0aW9uKHN1YmplY3QpfTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICApO1xuICAgIH1cbiAgfTtcbn1cbiJdfQ== */"));
|
|
31
34
|
const SortableImageButtonsWrapper = (0, _styledBase.default)("div", {
|
|
32
35
|
target: "e1hax4ql1",
|
|
33
36
|
label: "SortableImageButtonsWrapper"
|
|
@@ -37,7 +40,7 @@ const SortableImageButtonsWrapper = (0, _styledBase.default)("div", {
|
|
|
37
40
|
} : {
|
|
38
41
|
name: "1qg97th",
|
|
39
42
|
styles: "display:flex;justify-content:center;column-gap:10px;margin-right:20px;margin-top:-10px;margin-bottom:10px;",
|
|
40
|
-
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy93aXRoRmlsZUNvbnRyb2wuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBc0M4QyIsImZpbGUiOiIuLi8uLi9zcmMvd2l0aEZpbGVDb250cm9sLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgSW1tdXRhYmxlUHJvcFR5cGVzIGZyb20gJ3JlYWN0LWltbXV0YWJsZS1wcm9wdHlwZXMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vY29yZSc7XG5pbXBvcnQgeyBNYXAsIExpc3QgfSBmcm9tICdpbW11dGFibGUnO1xuaW1wb3J0IHsgb25jZSB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgdXVpZCBmcm9tICd1dWlkL3Y0JztcbmltcG9ydCB7IG9uZUxpbmUgfSBmcm9tICdjb21tb24tdGFncyc7XG5pbXBvcnQge1xuICBsZW5ndGhzLFxuICBjb21wb25lbnRzLFxuICBidXR0b25zLFxuICBib3JkZXJzLFxuICBlZmZlY3RzLFxuICBzaGFkb3dzLFxuICBJY29uQnV0dG9uLFxufSBmcm9tICdkZWNhcC1jbXMtdWktZGVmYXVsdCc7XG5pbXBvcnQgeyBiYXNlbmFtZSB9IGZyb20gJ2RlY2FwLWNtcy1saWItdXRpbCc7XG5pbXBvcnQgeyBTb3J0YWJsZUNvbnRhaW5lciwgU29ydGFibGVFbGVtZW50IH0gZnJvbSAncmVhY3Qtc29ydGFibGUtaG9jJztcbmltcG9ydCB7IGFycmF5TW92ZUltbXV0YWJsZSBhcyBhcnJheU1vdmUgfSBmcm9tICdhcnJheS1tb3ZlJztcblxuY29uc3QgTUFYX0RJU1BMQVlfTEVOR1RIID0gNTA7XG5cbmNvbnN0IEltYWdlV3JhcHBlciA9IHN0eWxlZC5kaXZgXG4gIGZsZXgtYmFzaXM6IDE1NXB4O1xuICB3aWR0aDogMTU1cHg7XG4gIGhlaWdodDogMTAwcHg7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgYm9yZGVyOiAke2JvcmRlcnMudGV4dEZpZWxkfTtcbiAgYm9yZGVyLXJhZGl1czogJHtsZW5ndGhzLmJvcmRlclJhZGl1c307XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gICR7ZWZmZWN0cy5jaGVja2VyYm9hcmR9O1xuICAke3NoYWRvd3MuaW5zZXR9O1xuICBjdXJzb3I6ICR7cHJvcHMgPT4gKHByb3BzLnNvcnRhYmxlID8gJ3BvaW50ZXInIDogJ2F1dG8nKX07XG5gO1xuXG5jb25zdCBTb3J0YWJsZUltYWdlQnV0dG9uc1dyYXBwZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY29sdW1uLWdhcDogMTBweDtcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbmA7XG5cbmNvbnN0IFN0eWxlZEltYWdlID0gc3R5bGVkLmltZ2BcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcbmA7XG5cbmZ1bmN0aW9uIEltYWdlKHByb3BzKSB7XG4gIHJldHVybiA8U3R5bGVkSW1hZ2Ugcm9sZT1cInByZXNlbnRhdGlvblwiIHsuLi5wcm9wc30gLz47XG59XG5cbmZ1bmN0aW9uIFNvcnRhYmxlSW1hZ2VCdXR0b25zKHsgb25SZW1vdmUsIG9uUmVwbGFjZSB9KSB7XG4gIHJldHVybiAoXG4gICAgPFNvcnRhYmxlSW1hZ2VCdXR0b25zV3JhcHBlcj5cbiAgICAgIDxJY29uQnV0dG9uIHNpemU9XCJzbWFsbFwiIHR5cGU9XCJtZWRpYVwiIG9uQ2xpY2s9e29uUmVwbGFjZX0+PC9JY29uQnV0dG9uPlxuICAgICAgPEljb25CdXR0b24gc2l6ZT1cInNtYWxsXCIgdHlwZT1cImNsb3NlXCIgb25DbGljaz17b25SZW1vdmV9PjwvSWNvbkJ1dHRvbj5cbiAgICA8L1NvcnRhYmxlSW1hZ2VCdXR0b25zV3JhcHBlcj5cbiAgKTtcbn1cblxuY29uc3QgU29ydGFibGVJbWFnZSA9IFNvcnRhYmxlRWxlbWVudCgoeyBpdGVtVmFsdWUsIGdldEFzc2V0LCBmaWVsZCwgb25SZW1vdmUsIG9uUmVwbGFjZSB9KSA9PiB7XG4gIHJldHVybiAoXG4gICAgPGRpdj5cbiAgICAgIDxJbWFnZVdyYXBwZXIgc29ydGFibGU+XG4gICAgICAgIDxJbWFnZSBzcmM9e2dldEFzc2V0KGl0ZW1WYWx1ZSwgZmllbGQpIHx8ICcnfSAvPlxuICAgICAgPC9JbWFnZVdyYXBwZXI+XG4gICAgICA8U29ydGFibGVJbWFnZUJ1dHRvbnNcbiAgICAgICAgaXRlbT17aXRlbVZhbHVlfVxuICAgICAgICBvblJlbW92ZT17b25SZW1vdmV9XG4gICAgICAgIG9uUmVwbGFjZT17b25SZXBsYWNlfVxuICAgICAgPjwvU29ydGFibGVJbWFnZUJ1dHRvbnM+XG4gICAgPC9kaXY+XG4gICk7XG59KTtcblxuY29uc3QgU29ydGFibGVNdWx0aUltYWdlV3JhcHBlciA9IFNvcnRhYmxlQ29udGFpbmVyKFxuICAoeyBpdGVtcywgZ2V0QXNzZXQsIGZpZWxkLCBvblJlbW92ZU9uZSwgb25SZXBsYWNlT25lIH0pID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgPGRpdlxuICAgICAgICBjc3M9e2Nzc2BcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgYH1cbiAgICAgID5cbiAgICAgICAge2l0ZW1zLm1hcCgoaXRlbVZhbHVlLCBpbmRleCkgPT4gKFxuICAgICAgICAgIDxTb3J0YWJsZUltYWdlXG4gICAgICAgICAgICBrZXk9e2BpdGVtLSR7aXRlbVZhbHVlfWB9XG4gICAgICAgICAgICBpbmRleD17aW5kZXh9XG4gICAgICAgICAgICBpdGVtVmFsdWU9e2l0ZW1WYWx1ZX1cbiAgICAgICAgICAgIGdldEFzc2V0PXtnZXRBc3NldH1cbiAgICAgICAgICAgIGZpZWxkPXtmaWVsZH1cbiAgICAgICAgICAgIG9uUmVtb3ZlPXtvblJlbW92ZU9uZShpbmRleCl9XG4gICAgICAgICAgICBvblJlcGxhY2U9e29uUmVwbGFjZU9uZShpbmRleCl9XG4gICAgICAgICAgLz5cbiAgICAgICAgKSl9XG4gICAgICA8L2Rpdj5cbiAgICApO1xuICB9LFxuKTtcblxuY29uc3QgRmlsZUxpbmsgPSBzdHlsZWQuYWBcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6IGluaGVyaXQ7XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG5gO1xuXG5jb25zdCBGaWxlTGlua3MgPSBzdHlsZWQuZGl2YFxuICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuYDtcblxuY29uc3QgRmlsZUxpbmtMaXN0ID0gc3R5bGVkLnVsYFxuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5gO1xuXG5jb25zdCBGaWxlV2lkZ2V0QnV0dG9uID0gc3R5bGVkLmJ1dHRvbmBcbiAgJHtidXR0b25zLmJ1dHRvbn07XG4gICR7Y29tcG9uZW50cy5iYWRnZX07XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG5gO1xuXG5jb25zdCBGaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlID0gc3R5bGVkLmJ1dHRvbmBcbiAgJHtidXR0b25zLmJ1dHRvbn07XG4gICR7Y29tcG9uZW50cy5iYWRnZURhbmdlcn07XG5gO1xuXG5mdW5jdGlvbiBpc011bHRpcGxlKHZhbHVlKSB7XG4gIHJldHVybiBBcnJheS5pc0FycmF5KHZhbHVlKSB8fCBMaXN0LmlzTGlzdCh2YWx1ZSk7XG59XG5cbmZ1bmN0aW9uIHNpemVPZlZhbHVlKHZhbHVlKSB7XG4gIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgIHJldHVybiB2YWx1ZS5sZW5ndGg7XG4gIH1cblxuICBpZiAoTGlzdC5pc0xpc3QodmFsdWUpKSB7XG4gICAgcmV0dXJuIHZhbHVlLnNpemU7XG4gIH1cblxuICByZXR1cm4gdmFsdWUgPyAxIDogMDtcbn1cblxuZnVuY3Rpb24gdmFsdWVMaXN0VG9BcnJheSh2YWx1ZSkge1xuICByZXR1cm4gTGlzdC5pc0xpc3QodmFsdWUpID8gdmFsdWUudG9BcnJheSgpIDogdmFsdWU7XG59XG5cbmNvbnN0IHdhcm5EZXByZWNhdGVkT3B0aW9ucyA9IG9uY2UoZmllbGQgPT5cbiAgY29uc29sZS53YXJuKG9uZUxpbmVgXG4gIERlY2FwIENNUyBjb25maWc6ICR7ZmllbGQuZ2V0KCduYW1lJyl9IGZpZWxkOiBwcm9wZXJ0eSBcIm9wdGlvbnNcIiBoYXMgYmVlbiBkZXByZWNhdGVkIGZvciB0aGVcbiAgJHtmaWVsZC5nZXQoJ3dpZGdldCcpfSB3aWRnZXQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgbmV4dCBtYWpvciByZWxlYXNlLiBSYXRoZXIgdGhhblxuICBcXGBmaWVsZC5vcHRpb25zLm1lZGlhX2xpYnJhcnlcXGAsIGFwcGx5IG1lZGlhIGxpYnJhcnkgb3B0aW9ucyBmb3IgdGhpcyB3aWRnZXQgdW5kZXJcbiAgXFxgZmllbGQubWVkaWFfbGlicmFyeVxcYC5cbmApLFxuKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gd2l0aEZpbGVDb250cm9sKHsgZm9ySW1hZ2UgfSA9IHt9KSB7XG4gIHJldHVybiBjbGFzcyBGaWxlQ29udHJvbCBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gICAgc3RhdGljIHByb3BUeXBlcyA9IHtcbiAgICAgIGZpZWxkOiBQcm9wVHlwZXMub2JqZWN0LmlzUmVxdWlyZWQsXG4gICAgICBnZXRBc3NldDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG1lZGlhUGF0aHM6IEltbXV0YWJsZVByb3BUeXBlcy5tYXAuaXNSZXF1aXJlZCxcbiAgICAgIG9uQWRkQXNzZXQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgICBvbkNoYW5nZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uUmVtb3ZlSW5zZXJ0ZWRNZWRpYTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uT3Blbk1lZGlhTGlicmFyeTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uQ2xlYXJNZWRpYUNvbnRyb2w6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgICBvblJlbW92ZU1lZGlhQ29udHJvbDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIGNsYXNzTmFtZVdyYXBwZXI6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgICAgIHZhbHVlOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtcbiAgICAgICAgUHJvcFR5cGVzLnN0cmluZyxcbiAgICAgICAgUHJvcFR5cGVzLmFycmF5T2YoUHJvcFR5cGVzLnN0cmluZyksXG4gICAgICAgIEltbXV0YWJsZVByb3BUeXBlcy5saXN0T2YoUHJvcFR5cGVzLnN0cmluZyksXG4gICAgICBdKSxcbiAgICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgfTtcblxuICAgIHN0YXRpYyBkZWZhdWx0UHJvcHMgPSB7XG4gICAgICB2YWx1ZTogJycsXG4gICAgfTtcblxuICAgIGNvbnN0cnVjdG9yKHByb3BzKSB7XG4gICAgICBzdXBlcihwcm9wcyk7XG4gICAgICB0aGlzLmNvbnRyb2xJRCA9IHV1aWQoKTtcbiAgICB9XG5cbiAgICBzaG91bGRDb21wb25lbnRVcGRhdGUobmV4dFByb3BzKSB7XG4gICAgICAvKipcbiAgICAgICAqIEFsd2F5cyB1cGRhdGUgaWYgdGhlIHZhbHVlIG9yIGdldEFzc2V0IGNoYW5nZXMuXG4gICAgICAgKi9cbiAgICAgIGlmICh0aGlzLnByb3BzLnZhbHVlICE9PSBuZXh0UHJvcHMudmFsdWUgfHwgdGhpcy5wcm9wcy5nZXRBc3NldCAhPT0gbmV4dFByb3BzLmdldEFzc2V0KSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuXG4gICAgICAvKipcbiAgICAgICAqIElmIHRoZXJlIGlzIGEgbWVkaWEgcGF0aCBmb3IgdGhpcyBjb250cm9sIGluIHRoZSBzdGF0ZSBvYmplY3QsIGFuZCB0aGF0XG4gICAgICAgKiBwYXRoIGlzIGRpZmZlcmVudCB0aGFuIHRoZSB2YWx1ZSBpbiBgbmV4dFByb3BzYCwgdXBkYXRlLlxuICAgICAgICovXG4gICAgICBjb25zdCBtZWRpYVBhdGggPSBuZXh0UHJvcHMubWVkaWFQYXRocy5nZXQodGhpcy5jb250cm9sSUQpO1xuICAgICAgaWYgKG1lZGlhUGF0aCAmJiBuZXh0UHJvcHMudmFsdWUgIT09IG1lZGlhUGF0aCkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGNvbXBvbmVudERpZFVwZGF0ZSgpIHtcbiAgICAgIGNvbnN0IHsgbWVkaWFQYXRocywgdmFsdWUsIG9uUmVtb3ZlSW5zZXJ0ZWRNZWRpYSwgb25DaGFuZ2UgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBtZWRpYVBhdGggPSBtZWRpYVBhdGhzLmdldCh0aGlzLmNvbnRyb2xJRCk7XG4gICAgICBpZiAobWVkaWFQYXRoICYmIG1lZGlhUGF0aCAhPT0gdmFsdWUpIHtcbiAgICAgICAgb25DaGFuZ2UobWVkaWFQYXRoKTtcbiAgICAgIH0gZWxzZSBpZiAobWVkaWFQYXRoICYmIG1lZGlhUGF0aCA9PT0gdmFsdWUpIHtcbiAgICAgICAgb25SZW1vdmVJbnNlcnRlZE1lZGlhKHRoaXMuY29udHJvbElEKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb21wb25lbnRXaWxsVW5tb3VudCgpIHtcbiAgICAgIHRoaXMucHJvcHMub25SZW1vdmVNZWRpYUNvbnRyb2wodGhpcy5jb250cm9sSUQpO1xuICAgIH1cblxuICAgIGhhbmRsZUNoYW5nZSA9IGUgPT4ge1xuICAgICAgY29uc3QgeyBmaWVsZCwgb25PcGVuTWVkaWFMaWJyYXJ5LCB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgIGNvbnN0IG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucyA9IHRoaXMuZ2V0TWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zKCk7XG5cbiAgICAgIHJldHVybiBvbk9wZW5NZWRpYUxpYnJhcnkoe1xuICAgICAgICBjb250cm9sSUQ6IHRoaXMuY29udHJvbElELFxuICAgICAgICBmb3JJbWFnZSxcbiAgICAgICAgcHJpdmF0ZVVwbG9hZDogZmllbGQuZ2V0KCdwcml2YXRlJyksXG4gICAgICAgIHZhbHVlOiB2YWx1ZUxpc3RUb0FycmF5KHZhbHVlKSxcbiAgICAgICAgYWxsb3dNdWx0aXBsZTogISFtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMuZ2V0KCdhbGxvd19tdWx0aXBsZScsIHRydWUpLFxuICAgICAgICBjb25maWc6IG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycpLFxuICAgICAgICBmaWVsZCxcbiAgICAgIH0pO1xuICAgIH07XG5cbiAgICBoYW5kbGVVcmwgPSBzdWJqZWN0ID0+IGUgPT4ge1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgICBjb25zdCB1cmwgPSB3aW5kb3cucHJvbXB0KHRoaXMucHJvcHMudChgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS5wcm9tcHRVcmxgKSk7XG5cbiAgICAgIHJldHVybiB0aGlzLnByb3BzLm9uQ2hhbmdlKHVybCk7XG4gICAgfTtcblxuICAgIGhhbmRsZVJlbW92ZSA9IGUgPT4ge1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgdGhpcy5wcm9wcy5vbkNsZWFyTWVkaWFDb250cm9sKHRoaXMuY29udHJvbElEKTtcbiAgICAgIHJldHVybiB0aGlzLnByb3BzLm9uQ2hhbmdlKCcnKTtcbiAgICB9O1xuXG4gICAgb25SZW1vdmVPbmUgPSBpbmRleCA9PiAoKSA9PiB7XG4gICAgICBjb25zdCB7IHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgdmFsdWUuc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgIHJldHVybiB0aGlzLnByb3BzLm9uQ2hhbmdlKHNpemVPZlZhbHVlKHZhbHVlKSA+IDAgPyBbLi4udmFsdWVdIDogbnVsbCk7XG4gICAgfTtcblxuICAgIG9uUmVwbGFjZU9uZSA9IGluZGV4ID0+ICgpID0+IHtcbiAgICAgIGNvbnN0IHsgZmllbGQsIG9uT3Blbk1lZGlhTGlicmFyeSwgdmFsdWUgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMgPSB0aGlzLmdldE1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucygpO1xuXG4gICAgICByZXR1cm4gb25PcGVuTWVkaWFMaWJyYXJ5KHtcbiAgICAgICAgY29udHJvbElEOiB0aGlzLmNvbnRyb2xJRCxcbiAgICAgICAgZm9ySW1hZ2UsXG4gICAgICAgIHByaXZhdGVVcGxvYWQ6IGZpZWxkLmdldCgncHJpdmF0ZScpLFxuICAgICAgICB2YWx1ZTogdmFsdWVMaXN0VG9BcnJheSh2YWx1ZSksXG4gICAgICAgIHJlcGxhY2VJbmRleDogaW5kZXgsXG4gICAgICAgIGFsbG93TXVsdGlwbGU6IGZhbHNlLFxuICAgICAgICBjb25maWc6IG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycpLFxuICAgICAgICBmaWVsZCxcbiAgICAgIH0pO1xuICAgIH07XG5cbiAgICBnZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMgPSAoKSA9PiB7XG4gICAgICBjb25zdCB7IGZpZWxkIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgICBpZiAoZmllbGQuaGFzSW4oWydvcHRpb25zJywgJ21lZGlhX2xpYnJhcnknXSkpIHtcbiAgICAgICAgd2FybkRlcHJlY2F0ZWRPcHRpb25zKGZpZWxkKTtcbiAgICAgICAgcmV0dXJuIGZpZWxkLmdldEluKFsnb3B0aW9ucycsICdtZWRpYV9saWJyYXJ5J10sIE1hcCgpKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZpZWxkLmdldCgnbWVkaWFfbGlicmFyeScsIE1hcCgpKTtcbiAgICB9O1xuXG4gICAgYWxsb3dzTXVsdGlwbGUgPSAoKSA9PiB7XG4gICAgICBjb25zdCBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMgPSB0aGlzLmdldE1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucygpO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zLmdldCgnY29uZmlnJywgZmFsc2UpICYmXG4gICAgICAgIG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycpLmdldCgnbXVsdGlwbGUnLCBmYWxzZSlcbiAgICAgICk7XG4gICAgfTtcblxuICAgIG9uU29ydEVuZCA9ICh7IG9sZEluZGV4LCBuZXdJbmRleCB9KSA9PiB7XG4gICAgICBjb25zdCB7IHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgbmV3VmFsdWUgPSBhcnJheU1vdmUodmFsdWUsIG9sZEluZGV4LCBuZXdJbmRleCk7XG4gICAgICByZXR1cm4gdGhpcy5wcm9wcy5vbkNoYW5nZShuZXdWYWx1ZSk7XG4gICAgfTtcblxuICAgIGdldFZhbGlkYXRlVmFsdWUgPSAoKSA9PiB7XG4gICAgICBjb25zdCB7IHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgIHJldHVybiBpc011bHRpcGxlKHZhbHVlKSA/IHZhbHVlLm1hcCh2ID0+IGJhc2VuYW1lKHYpKSA6IGJhc2VuYW1lKHZhbHVlKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH07XG5cbiAgICByZW5kZXJGaWxlTGluayA9IHZhbHVlID0+IHtcbiAgICAgIGNvbnN0IHNpemUgPSBNQVhfRElTUExBWV9MRU5HVEg7XG4gICAgICBpZiAoIXZhbHVlIHx8IHZhbHVlLmxlbmd0aCA8PSBzaXplKSB7XG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHRleHQgPSBgJHt2YWx1ZS5zbGljZSgwLCBzaXplIC8gMil9XFx1MjAyNiR7dmFsdWUuc2xpY2UoLShzaXplIC8gMikgKyAxKX1gO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPEZpbGVMaW5rIGhyZWY9e3ZhbHVlfSByZWw9XCJub29wZW5lclwiIHRhcmdldD1cIl9ibGFua1wiPlxuICAgICAgICAgIHt0ZXh0fVxuICAgICAgICA8L0ZpbGVMaW5rPlxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgcmVuZGVyRmlsZUxpbmtzID0gKCkgPT4ge1xuICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcblxuICAgICAgaWYgKGlzTXVsdGlwbGUodmFsdWUpKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPEZpbGVMaW5rcz5cbiAgICAgICAgICAgIDxGaWxlTGlua0xpc3Q+XG4gICAgICAgICAgICAgIHt2YWx1ZS5tYXAodmFsID0+IChcbiAgICAgICAgICAgICAgICA8bGkga2V5PXt2YWx9Pnt0aGlzLnJlbmRlckZpbGVMaW5rKHZhbCl9PC9saT5cbiAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICA8L0ZpbGVMaW5rTGlzdD5cbiAgICAgICAgICA8L0ZpbGVMaW5rcz5cbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiA8RmlsZUxpbmtzPnt0aGlzLnJlbmRlckZpbGVMaW5rKHZhbHVlKX08L0ZpbGVMaW5rcz47XG4gICAgfTtcblxuICAgIHJlbmRlckltYWdlcyA9ICgpID0+IHtcbiAgICAgIGNvbnN0IHsgZ2V0QXNzZXQsIHZhbHVlLCBmaWVsZCB9ID0gdGhpcy5wcm9wcztcblxuICAgICAgaWYgKGlzTXVsdGlwbGUodmFsdWUpKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPFNvcnRhYmxlTXVsdGlJbWFnZVdyYXBwZXJcbiAgICAgICAgICAgIGl0ZW1zPXt2YWx1ZX1cbiAgICAgICAgICAgIG9uU29ydEVuZD17dGhpcy5vblNvcnRFbmR9XG4gICAgICAgICAgICBvblJlbW92ZU9uZT17dGhpcy5vblJlbW92ZU9uZX1cbiAgICAgICAgICAgIG9uUmVwbGFjZU9uZT17dGhpcy5vblJlcGxhY2VPbmV9XG4gICAgICAgICAgICBkaXN0YW5jZT17NH1cbiAgICAgICAgICAgIGdldEFzc2V0PXtnZXRBc3NldH1cbiAgICAgICAgICAgIGZpZWxkPXtmaWVsZH1cbiAgICAgICAgICAgIGF4aXM9XCJ4eVwiXG4gICAgICAgICAgICBsb2NrVG9Db250YWluZXJFZGdlcz17dHJ1ZX1cbiAgICAgICAgICA+PC9Tb3J0YWJsZU11bHRpSW1hZ2VXcmFwcGVyPlxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBzcmMgPSBnZXRBc3NldCh2YWx1ZSwgZmllbGQpO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPEltYWdlV3JhcHBlcj5cbiAgICAgICAgICA8SW1hZ2Ugc3JjPXtzcmMgfHwgJyd9IC8+XG4gICAgICAgIDwvSW1hZ2VXcmFwcGVyPlxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgcmVuZGVyU2VsZWN0aW9uID0gc3ViamVjdCA9PiB7XG4gICAgICBjb25zdCB7IHQsIGZpZWxkIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgYWxsb3dzTXVsdGlwbGUgPSB0aGlzLmFsbG93c011bHRpcGxlKCk7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2PlxuICAgICAgICAgIHtmb3JJbWFnZSA/IHRoaXMucmVuZGVySW1hZ2VzKCkgOiBudWxsfVxuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICB7Zm9ySW1hZ2UgPyBudWxsIDogdGhpcy5yZW5kZXJGaWxlTGlua3MoKX1cbiAgICAgICAgICAgIDxGaWxlV2lkZ2V0QnV0dG9uIG9uQ2xpY2s9e3RoaXMuaGFuZGxlQ2hhbmdlfT5cbiAgICAgICAgICAgICAge3QoXG4gICAgICAgICAgICAgICAgYGVkaXRvci5lZGl0b3JXaWRnZXRzLiR7c3ViamVjdH0uJHtcbiAgICAgICAgICAgICAgICAgIHRoaXMuYWxsb3dzTXVsdGlwbGUoKSA/ICdhZGRNb3JlJyA6ICdjaG9vc2VEaWZmZXJlbnQnXG4gICAgICAgICAgICAgICAgfWAsXG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b24+XG4gICAgICAgICAgICB7ZmllbGQuZ2V0KCdjaG9vc2VfdXJsJywgdHJ1ZSkgJiYgIXRoaXMuYWxsb3dzTXVsdGlwbGUoKSA/IChcbiAgICAgICAgICAgICAgPEZpbGVXaWRnZXRCdXR0b24gb25DbGljaz17dGhpcy5oYW5kbGVVcmwoc3ViamVjdCl9PlxuICAgICAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LnJlcGxhY2VVcmxgKX1cbiAgICAgICAgICAgICAgPC9GaWxlV2lkZ2V0QnV0dG9uPlxuICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvblJlbW92ZSBvbkNsaWNrPXt0aGlzLmhhbmRsZVJlbW92ZX0+XG4gICAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LnJlbW92ZSR7YWxsb3dzTXVsdGlwbGUgPyAnQWxsJyA6ICcnfWApfVxuICAgICAgICAgICAgPC9GaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICk7XG4gICAgfTtcblxuICAgIHJlbmRlck5vU2VsZWN0aW9uID0gc3ViamVjdCA9PiB7XG4gICAgICBjb25zdCB7IHQsIGZpZWxkIH0gPSB0aGlzLnByb3BzO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPD5cbiAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvbiBvbkNsaWNrPXt0aGlzLmhhbmRsZUNoYW5nZX0+XG4gICAgICAgICAgICB7dChgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS5jaG9vc2Uke3RoaXMuYWxsb3dzTXVsdGlwbGUoKSA/ICdNdWx0aXBsZScgOiAnJ31gKX1cbiAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b24+XG4gICAgICAgICAge2ZpZWxkLmdldCgnY2hvb3NlX3VybCcsIHRydWUpID8gKFxuICAgICAgICAgICAgPEZpbGVXaWRnZXRCdXR0b24gb25DbGljaz17dGhpcy5oYW5kbGVVcmwoc3ViamVjdCl9PlxuICAgICAgICAgICAgICB7dChgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS5jaG9vc2VVcmxgKX1cbiAgICAgICAgICAgIDwvRmlsZVdpZGdldEJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC8+XG4gICAgICApO1xuICAgIH07XG5cbiAgICByZW5kZXIoKSB7XG4gICAgICBjb25zdCB7IHZhbHVlLCBjbGFzc05hbWVXcmFwcGVyIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3Qgc3ViamVjdCA9IGZvckltYWdlID8gJ2ltYWdlJyA6ICdmaWxlJztcblxuICAgICAgcmV0dXJuIChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e2NsYXNzTmFtZVdyYXBwZXJ9PlxuICAgICAgICAgIDxzcGFuPnt2YWx1ZSA/IHRoaXMucmVuZGVyU2VsZWN0aW9uKHN1YmplY3QpIDogdGhpcy5yZW5kZXJOb1NlbGVjdGlvbihzdWJqZWN0KX08L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKTtcbiAgICB9XG4gIH07XG59XG4iXX0= */",
|
|
43
|
+
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy93aXRoRmlsZUNvbnRyb2wuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBZ0Q4QyIsImZpbGUiOiIuLi8uLi9zcmMvd2l0aEZpbGVDb250cm9sLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgSW1tdXRhYmxlUHJvcFR5cGVzIGZyb20gJ3JlYWN0LWltbXV0YWJsZS1wcm9wdHlwZXMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vY29yZSc7XG5pbXBvcnQgeyBNYXAsIExpc3QgfSBmcm9tICdpbW11dGFibGUnO1xuaW1wb3J0IHsgb25jZSB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyB2NCBhcyB1dWlkIH0gZnJvbSAndXVpZCc7XG5pbXBvcnQgeyBvbmVMaW5lIH0gZnJvbSAnY29tbW9uLXRhZ3MnO1xuaW1wb3J0IHtcbiAgbGVuZ3RocyxcbiAgY29tcG9uZW50cyxcbiAgYnV0dG9ucyxcbiAgYm9yZGVycyxcbiAgZWZmZWN0cyxcbiAgc2hhZG93cyxcbiAgSWNvbkJ1dHRvbixcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuaW1wb3J0IHsgYmFzZW5hbWUgfSBmcm9tICdkZWNhcC1jbXMtbGliLXV0aWwnO1xuaW1wb3J0IHsgYXJyYXlNb3ZlSW1tdXRhYmxlIGFzIGFycmF5TW92ZSB9IGZyb20gJ2FycmF5LW1vdmUnO1xuaW1wb3J0IHtcbiAgRG5kQ29udGV4dCxcbiAgTW91c2VTZW5zb3IsXG4gIFRvdWNoU2Vuc29yLFxuICBjbG9zZXN0Q2VudGVyLFxuICB1c2VTZW5zb3IsXG4gIHVzZVNlbnNvcnMsXG59IGZyb20gJ0BkbmQta2l0L2NvcmUnO1xuaW1wb3J0IHsgU29ydGFibGVDb250ZXh0LCB1c2VTb3J0YWJsZSB9IGZyb20gJ0BkbmQta2l0L3NvcnRhYmxlJztcbmltcG9ydCB7IENTUyB9IGZyb20gJ0BkbmQta2l0L3V0aWxpdGllcyc7XG5pbXBvcnQgeyByZXN0cmljdFRvUGFyZW50RWxlbWVudCB9IGZyb20gJ0BkbmQta2l0L21vZGlmaWVycyc7XG5cbmNvbnN0IE1BWF9ESVNQTEFZX0xFTkdUSCA9IDUwO1xuXG5jb25zdCBJbWFnZVdyYXBwZXIgPSBzdHlsZWQuZGl2YFxuICBmbGV4LWJhc2lzOiAxNTVweDtcbiAgd2lkdGg6IDE1NXB4O1xuICBoZWlnaHQ6IDEwMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGJvcmRlcjogJHtib3JkZXJzLnRleHRGaWVsZH07XG4gIGJvcmRlci1yYWRpdXM6ICR7bGVuZ3Rocy5ib3JkZXJSYWRpdXN9O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAke2VmZmVjdHMuY2hlY2tlcmJvYXJkfTtcbiAgJHtzaGFkb3dzLmluc2V0fTtcbiAgY3Vyc29yOiAke3Byb3BzID0+IChwcm9wcy5zb3J0YWJsZSA/ICdwb2ludGVyJyA6ICdhdXRvJyl9O1xuYDtcblxuY29uc3QgU29ydGFibGVJbWFnZUJ1dHRvbnNXcmFwcGVyID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGNvbHVtbi1nYXA6IDEwcHg7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbiAgbWFyZ2luLXRvcDogLTEwcHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG5gO1xuXG5jb25zdCBTdHlsZWRJbWFnZSA9IHN0eWxlZC5pbWdgXG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvbnRhaW47XG5gO1xuXG5mdW5jdGlvbiBJbWFnZShwcm9wcykge1xuICByZXR1cm4gPFN0eWxlZEltYWdlIHJvbGU9XCJwcmVzZW50YXRpb25cIiB7Li4ucHJvcHN9IC8+O1xufVxuXG5mdW5jdGlvbiBTb3J0YWJsZUltYWdlQnV0dG9ucyh7IG9uUmVtb3ZlLCBvblJlcGxhY2UgfSkge1xuICByZXR1cm4gKFxuICAgIDxTb3J0YWJsZUltYWdlQnV0dG9uc1dyYXBwZXI+XG4gICAgICA8SWNvbkJ1dHRvbiBzaXplPVwic21hbGxcIiB0eXBlPVwibWVkaWFcIiBvbkNsaWNrPXtvblJlcGxhY2V9PjwvSWNvbkJ1dHRvbj5cbiAgICAgIDxJY29uQnV0dG9uIHNpemU9XCJzbWFsbFwiIHR5cGU9XCJjbG9zZVwiIG9uQ2xpY2s9e29uUmVtb3ZlfT48L0ljb25CdXR0b24+XG4gICAgPC9Tb3J0YWJsZUltYWdlQnV0dG9uc1dyYXBwZXI+XG4gICk7XG59XG5cbmZ1bmN0aW9uIFNvcnRhYmxlSW1hZ2UocHJvcHMpIHtcbiAgY29uc3QgeyBhdHRyaWJ1dGVzLCBsaXN0ZW5lcnMsIHNldE5vZGVSZWYsIHRyYW5zZm9ybSwgdHJhbnNpdGlvbiB9ID0gdXNlU29ydGFibGUoe1xuICAgIGlkOiBwcm9wcy5pZCxcbiAgfSk7XG5cbiAgY29uc3Qgc3R5bGUgPSB7XG4gICAgdHJhbnNmb3JtOiBDU1MuVHJhbnNmb3JtLnRvU3RyaW5nKHRyYW5zZm9ybSksXG4gICAgdHJhbnNpdGlvbixcbiAgfTtcblxuICBjb25zdCB7IGl0ZW1WYWx1ZSwgZ2V0QXNzZXQsIGZpZWxkLCBvblJlbW92ZSwgb25SZXBsYWNlIH0gPSBwcm9wcztcblxuICByZXR1cm4gKFxuICAgIDxkaXYgcmVmPXtzZXROb2RlUmVmfSBzdHlsZT17c3R5bGV9IHsuLi5hdHRyaWJ1dGVzfSB7Li4ubGlzdGVuZXJzfT5cbiAgICAgIDxJbWFnZVdyYXBwZXIgc29ydGFibGU+XG4gICAgICAgIDxJbWFnZSBzcmM9e2dldEFzc2V0KGl0ZW1WYWx1ZSwgZmllbGQpIHx8ICcnfSAvPlxuICAgICAgPC9JbWFnZVdyYXBwZXI+XG4gICAgICA8U29ydGFibGVJbWFnZUJ1dHRvbnNcbiAgICAgICAgaXRlbT17aXRlbVZhbHVlfVxuICAgICAgICBvblJlbW92ZT17b25SZW1vdmV9XG4gICAgICAgIG9uUmVwbGFjZT17b25SZXBsYWNlfVxuICAgICAgPjwvU29ydGFibGVJbWFnZUJ1dHRvbnM+XG4gICAgPC9kaXY+XG4gICk7XG59XG5cbmZ1bmN0aW9uIFNvcnRhYmxlTXVsdGlJbWFnZVdyYXBwZXIoe1xuICBpdGVtcyxcbiAgZ2V0QXNzZXQsXG4gIGZpZWxkLFxuICBvblNvcnRFbmQsXG4gIG9uUmVtb3ZlT25lLFxuICBvblJlcGxhY2VPbmUsXG59KSB7XG4gIGNvbnN0IGFjdGl2YXRpb25Db25zdHJhaW50ID0geyBkaXN0YW5jZTogNCB9O1xuICBjb25zdCBzZW5zb3JzID0gdXNlU2Vuc29ycyhcbiAgICB1c2VTZW5zb3IoTW91c2VTZW5zb3IsIHsgYWN0aXZhdGlvbkNvbnN0cmFpbnQgfSksXG4gICAgdXNlU2Vuc29yKFRvdWNoU2Vuc29yLCB7IGFjdGl2YXRpb25Db25zdHJhaW50IH0pLFxuICApO1xuXG4gIGZ1bmN0aW9uIGhhbmRsZVNvcnRFbmQoeyBhY3RpdmUsIG92ZXIgfSkge1xuICAgIG9uU29ydEVuZCh7XG4gICAgICBvbGRJbmRleDogaXRlbXMuZmluZEluZGV4KGl0ZW0gPT4gaXRlbS5pZCA9PT0gYWN0aXZlLmlkKSxcbiAgICAgIG5ld0luZGV4OiBpdGVtcy5maW5kSW5kZXgoaXRlbSA9PiBpdGVtLmlkID09PSBvdmVyLmlkKSxcbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPGRpdlxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0L25vLXVua25vd24tcHJvcGVydHlcbiAgICAgIGNzcz17Y3NzYFxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBgfVxuICAgID5cbiAgICAgIDxEbmRDb250ZXh0XG4gICAgICAgIG1vZGlmaWVycz17W3Jlc3RyaWN0VG9QYXJlbnRFbGVtZW50XX1cbiAgICAgICAgY29sbGlzaW9uRGV0ZWN0aW9uPXtjbG9zZXN0Q2VudGVyfVxuICAgICAgICBzZW5zb3JzPXtzZW5zb3JzfVxuICAgICAgICBvbkRyYWdFbmQ9e2hhbmRsZVNvcnRFbmR9XG4gICAgICA+XG4gICAgICAgIDxTb3J0YWJsZUNvbnRleHQgaXRlbXM9e2l0ZW1zfT5cbiAgICAgICAgICB7aXRlbXMubWFwKChpdGVtLCBpbmRleCkgPT4gKFxuICAgICAgICAgICAgPFNvcnRhYmxlSW1hZ2VcbiAgICAgICAgICAgICAga2V5PXtpdGVtLmlkfVxuICAgICAgICAgICAgICBpZD17aXRlbS5pZH1cbiAgICAgICAgICAgICAgaW5kZXg9e2luZGV4fVxuICAgICAgICAgICAgICBpdGVtVmFsdWU9e2l0ZW0udmFsdWV9XG4gICAgICAgICAgICAgIGdldEFzc2V0PXtnZXRBc3NldH1cbiAgICAgICAgICAgICAgZmllbGQ9e2ZpZWxkfVxuICAgICAgICAgICAgICBvblJlbW92ZT17b25SZW1vdmVPbmUoaW5kZXgpfVxuICAgICAgICAgICAgICBvblJlcGxhY2U9e29uUmVwbGFjZU9uZShpbmRleCl9XG4gICAgICAgICAgICA+PC9Tb3J0YWJsZUltYWdlPlxuICAgICAgICAgICkpfVxuICAgICAgICA8L1NvcnRhYmxlQ29udGV4dD5cbiAgICAgIDwvRG5kQ29udGV4dD5cbiAgICA8L2Rpdj5cbiAgKTtcbn1cblxuY29uc3QgRmlsZUxpbmsgPSBzdHlsZWQuYWBcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6IGluaGVyaXQ7XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG5gO1xuXG5jb25zdCBGaWxlTGlua3MgPSBzdHlsZWQuZGl2YFxuICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuYDtcblxuY29uc3QgRmlsZUxpbmtMaXN0ID0gc3R5bGVkLnVsYFxuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5gO1xuXG5jb25zdCBGaWxlV2lkZ2V0QnV0dG9uID0gc3R5bGVkLmJ1dHRvbmBcbiAgJHtidXR0b25zLmJ1dHRvbn07XG4gICR7Y29tcG9uZW50cy5iYWRnZX07XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG5gO1xuXG5jb25zdCBGaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlID0gc3R5bGVkLmJ1dHRvbmBcbiAgJHtidXR0b25zLmJ1dHRvbn07XG4gICR7Y29tcG9uZW50cy5iYWRnZURhbmdlcn07XG5gO1xuXG5mdW5jdGlvbiBpc011bHRpcGxlKHZhbHVlKSB7XG4gIHJldHVybiBBcnJheS5pc0FycmF5KHZhbHVlKSB8fCBMaXN0LmlzTGlzdCh2YWx1ZSk7XG59XG5cbmZ1bmN0aW9uIHNpemVPZlZhbHVlKHZhbHVlKSB7XG4gIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgIHJldHVybiB2YWx1ZS5sZW5ndGg7XG4gIH1cblxuICBpZiAoTGlzdC5pc0xpc3QodmFsdWUpKSB7XG4gICAgcmV0dXJuIHZhbHVlLnNpemU7XG4gIH1cblxuICByZXR1cm4gdmFsdWUgPyAxIDogMDtcbn1cblxuZnVuY3Rpb24gdmFsdWVMaXN0VG9BcnJheSh2YWx1ZSkge1xuICByZXR1cm4gTGlzdC5pc0xpc3QodmFsdWUpID8gdmFsdWUudG9BcnJheSgpIDogdmFsdWUgPz8gJyc7XG59XG5cbmZ1bmN0aW9uIHZhbHVlTGlzdFRvU29ydGFibGVBcnJheSh2YWx1ZSkge1xuICBpZiAoIWlzTXVsdGlwbGUodmFsdWUpKSB7XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG5cbiAgY29uc3QgdmFsdWVBcnJheSA9IHZhbHVlTGlzdFRvQXJyYXkodmFsdWUpLm1hcCh2YWx1ZSA9PiAoe1xuICAgIGlkOiB1dWlkKCksXG4gICAgdmFsdWUsXG4gIH0pKTtcblxuICByZXR1cm4gdmFsdWVBcnJheTtcbn1cblxuY29uc3Qgd2FybkRlcHJlY2F0ZWRPcHRpb25zID0gb25jZShmaWVsZCA9PlxuICBjb25zb2xlLndhcm4ob25lTGluZWBcbiAgRGVjYXAgQ01TIGNvbmZpZzogJHtmaWVsZC5nZXQoJ25hbWUnKX0gZmllbGQ6IHByb3BlcnR5IFwib3B0aW9uc1wiIGhhcyBiZWVuIGRlcHJlY2F0ZWQgZm9yIHRoZVxuICAke2ZpZWxkLmdldCgnd2lkZ2V0Jyl9IHdpZGdldCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IG1ham9yIHJlbGVhc2UuIFJhdGhlciB0aGFuXG4gIFxcYGZpZWxkLm9wdGlvbnMubWVkaWFfbGlicmFyeVxcYCwgYXBwbHkgbWVkaWEgbGlicmFyeSBvcHRpb25zIGZvciB0aGlzIHdpZGdldCB1bmRlclxuICBcXGBmaWVsZC5tZWRpYV9saWJyYXJ5XFxgLlxuYCksXG4pO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB3aXRoRmlsZUNvbnRyb2woeyBmb3JJbWFnZSB9ID0ge30pIHtcbiAgcmV0dXJuIGNsYXNzIEZpbGVDb250cm9sIGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50IHtcbiAgICBzdGF0aWMgcHJvcFR5cGVzID0ge1xuICAgICAgZmllbGQ6IFByb3BUeXBlcy5vYmplY3QuaXNSZXF1aXJlZCxcbiAgICAgIGdldEFzc2V0OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgbWVkaWFQYXRoczogSW1tdXRhYmxlUHJvcFR5cGVzLm1hcC5pc1JlcXVpcmVkLFxuICAgICAgb25BZGRBc3NldDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uQ2hhbmdlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgb25SZW1vdmVJbnNlcnRlZE1lZGlhOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgb25PcGVuTWVkaWFMaWJyYXJ5OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgb25DbGVhck1lZGlhQ29udHJvbDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uUmVtb3ZlTWVkaWFDb250cm9sOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgY2xhc3NOYW1lV3JhcHBlcjogUHJvcFR5cGVzLnN0cmluZy5pc1JlcXVpcmVkLFxuICAgICAgdmFsdWU6IFByb3BUeXBlcy5vbmVPZlR5cGUoW1xuICAgICAgICBQcm9wVHlwZXMuc3RyaW5nLFxuICAgICAgICBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMuc3RyaW5nKSxcbiAgICAgICAgSW1tdXRhYmxlUHJvcFR5cGVzLmxpc3RPZihQcm9wVHlwZXMuc3RyaW5nKSxcbiAgICAgIF0pLFxuICAgICAgdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICB9O1xuXG4gICAgc3RhdGljIGRlZmF1bHRQcm9wcyA9IHtcbiAgICAgIHZhbHVlOiAnJyxcbiAgICB9O1xuXG4gICAgY29uc3RydWN0b3IocHJvcHMpIHtcbiAgICAgIHN1cGVyKHByb3BzKTtcbiAgICAgIHRoaXMuY29udHJvbElEID0gdXVpZCgpO1xuICAgIH1cblxuICAgIHNob3VsZENvbXBvbmVudFVwZGF0ZShuZXh0UHJvcHMpIHtcbiAgICAgIC8qKlxuICAgICAgICogQWx3YXlzIHVwZGF0ZSBpZiB0aGUgdmFsdWUgb3IgZ2V0QXNzZXQgY2hhbmdlcy5cbiAgICAgICAqL1xuICAgICAgaWYgKHRoaXMucHJvcHMudmFsdWUgIT09IG5leHRQcm9wcy52YWx1ZSB8fCB0aGlzLnByb3BzLmdldEFzc2V0ICE9PSBuZXh0UHJvcHMuZ2V0QXNzZXQpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG5cbiAgICAgIC8qKlxuICAgICAgICogSWYgdGhlcmUgaXMgYSBtZWRpYSBwYXRoIGZvciB0aGlzIGNvbnRyb2wgaW4gdGhlIHN0YXRlIG9iamVjdCwgYW5kIHRoYXRcbiAgICAgICAqIHBhdGggaXMgZGlmZmVyZW50IHRoYW4gdGhlIHZhbHVlIGluIGBuZXh0UHJvcHNgLCB1cGRhdGUuXG4gICAgICAgKi9cbiAgICAgIGNvbnN0IG1lZGlhUGF0aCA9IG5leHRQcm9wcy5tZWRpYVBhdGhzLmdldCh0aGlzLmNvbnRyb2xJRCk7XG4gICAgICBpZiAobWVkaWFQYXRoICYmIG5leHRQcm9wcy52YWx1ZSAhPT0gbWVkaWFQYXRoKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgY29tcG9uZW50RGlkVXBkYXRlKCkge1xuICAgICAgY29uc3QgeyBtZWRpYVBhdGhzLCB2YWx1ZSwgb25SZW1vdmVJbnNlcnRlZE1lZGlhLCBvbkNoYW5nZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGNvbnN0IG1lZGlhUGF0aCA9IG1lZGlhUGF0aHMuZ2V0KHRoaXMuY29udHJvbElEKTtcbiAgICAgIGlmIChtZWRpYVBhdGggJiYgbWVkaWFQYXRoICE9PSB2YWx1ZSkge1xuICAgICAgICBvbkNoYW5nZShtZWRpYVBhdGgpO1xuICAgICAgfSBlbHNlIGlmIChtZWRpYVBhdGggJiYgbWVkaWFQYXRoID09PSB2YWx1ZSkge1xuICAgICAgICBvblJlbW92ZUluc2VydGVkTWVkaWEodGhpcy5jb250cm9sSUQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGNvbXBvbmVudFdpbGxVbm1vdW50KCkge1xuICAgICAgdGhpcy5wcm9wcy5vblJlbW92ZU1lZGlhQ29udHJvbCh0aGlzLmNvbnRyb2xJRCk7XG4gICAgfVxuXG4gICAgaGFuZGxlQ2hhbmdlID0gZSA9PiB7XG4gICAgICBjb25zdCB7IGZpZWxkLCBvbk9wZW5NZWRpYUxpYnJhcnksIHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgY29uc3QgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gdGhpcy5nZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMoKTtcblxuICAgICAgcmV0dXJuIG9uT3Blbk1lZGlhTGlicmFyeSh7XG4gICAgICAgIGNvbnRyb2xJRDogdGhpcy5jb250cm9sSUQsXG4gICAgICAgIGZvckltYWdlLFxuICAgICAgICBwcml2YXRlVXBsb2FkOiBmaWVsZC5nZXQoJ3ByaXZhdGUnKSxcbiAgICAgICAgdmFsdWU6IHZhbHVlTGlzdFRvQXJyYXkodmFsdWUpLFxuICAgICAgICBhbGxvd011bHRpcGxlOiAhIW1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2FsbG93X211bHRpcGxlJywgdHJ1ZSksXG4gICAgICAgIGNvbmZpZzogbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zLmdldCgnY29uZmlnJyksXG4gICAgICAgIGZpZWxkLFxuICAgICAgfSk7XG4gICAgfTtcblxuICAgIGhhbmRsZVVybCA9IHN1YmplY3QgPT4gZSA9PiB7XG4gICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG5cbiAgICAgIGNvbnN0IHVybCA9IHdpbmRvdy5wcm9tcHQodGhpcy5wcm9wcy50KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LnByb21wdFVybGApKTtcblxuICAgICAgcmV0dXJuIHRoaXMucHJvcHMub25DaGFuZ2UodXJsKTtcbiAgICB9O1xuXG4gICAgaGFuZGxlUmVtb3ZlID0gZSA9PiB7XG4gICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB0aGlzLnByb3BzLm9uQ2xlYXJNZWRpYUNvbnRyb2wodGhpcy5jb250cm9sSUQpO1xuICAgICAgcmV0dXJuIHRoaXMucHJvcHMub25DaGFuZ2UoJycpO1xuICAgIH07XG5cbiAgICBvblJlbW92ZU9uZSA9IGluZGV4ID0+ICgpID0+IHtcbiAgICAgIGNvbnN0IHZhbHVlID0gdmFsdWVMaXN0VG9BcnJheSh0aGlzLnByb3BzLnZhbHVlKTtcbiAgICAgIHZhbHVlLnNwbGljZShpbmRleCwgMSk7XG4gICAgICByZXR1cm4gdGhpcy5wcm9wcy5vbkNoYW5nZShzaXplT2ZWYWx1ZSh2YWx1ZSkgPiAwID8gWy4uLnZhbHVlXSA6IG51bGwpO1xuICAgIH07XG5cbiAgICBvblJlcGxhY2VPbmUgPSBpbmRleCA9PiAoKSA9PiB7XG4gICAgICBjb25zdCB7IGZpZWxkLCBvbk9wZW5NZWRpYUxpYnJhcnksIHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gdGhpcy5nZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMoKTtcblxuICAgICAgcmV0dXJuIG9uT3Blbk1lZGlhTGlicmFyeSh7XG4gICAgICAgIGNvbnRyb2xJRDogdGhpcy5jb250cm9sSUQsXG4gICAgICAgIGZvckltYWdlLFxuICAgICAgICBwcml2YXRlVXBsb2FkOiBmaWVsZC5nZXQoJ3ByaXZhdGUnKSxcbiAgICAgICAgdmFsdWU6IHZhbHVlTGlzdFRvQXJyYXkodmFsdWUpLFxuICAgICAgICByZXBsYWNlSW5kZXg6IGluZGV4LFxuICAgICAgICBhbGxvd011bHRpcGxlOiBmYWxzZSxcbiAgICAgICAgY29uZmlnOiBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMuZ2V0KCdjb25maWcnKSxcbiAgICAgICAgZmllbGQsXG4gICAgICB9KTtcbiAgICB9O1xuXG4gICAgZ2V0TWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gKCkgPT4ge1xuICAgICAgY29uc3QgeyBmaWVsZCB9ID0gdGhpcy5wcm9wcztcblxuICAgICAgaWYgKGZpZWxkLmhhc0luKFsnb3B0aW9ucycsICdtZWRpYV9saWJyYXJ5J10pKSB7XG4gICAgICAgIHdhcm5EZXByZWNhdGVkT3B0aW9ucyhmaWVsZCk7XG4gICAgICAgIHJldHVybiBmaWVsZC5nZXRJbihbJ29wdGlvbnMnLCAnbWVkaWFfbGlicmFyeSddLCBNYXAoKSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBmaWVsZC5nZXQoJ21lZGlhX2xpYnJhcnknLCBNYXAoKSk7XG4gICAgfTtcblxuICAgIGFsbG93c011bHRpcGxlID0gKCkgPT4ge1xuICAgICAgY29uc3QgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gdGhpcy5nZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMoKTtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycsIGZhbHNlKSAmJlxuICAgICAgICBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMuZ2V0KCdjb25maWcnKS5nZXQoJ211bHRpcGxlJywgZmFsc2UpXG4gICAgICApO1xuICAgIH07XG5cbiAgICBvblNvcnRFbmQgPSAoeyBvbGRJbmRleCwgbmV3SW5kZXggfSkgPT4ge1xuICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGNvbnN0IG5ld1ZhbHVlID0gYXJyYXlNb3ZlKHZhbHVlLCBvbGRJbmRleCwgbmV3SW5kZXgpO1xuICAgICAgcmV0dXJuIHRoaXMucHJvcHMub25DaGFuZ2UobmV3VmFsdWUpO1xuICAgIH07XG5cbiAgICBnZXRWYWxpZGF0ZVZhbHVlID0gKCkgPT4ge1xuICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICByZXR1cm4gaXNNdWx0aXBsZSh2YWx1ZSkgPyB2YWx1ZS5tYXAodiA9PiBiYXNlbmFtZSh2KSkgOiBiYXNlbmFtZSh2YWx1ZSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9O1xuXG4gICAgcmVuZGVyRmlsZUxpbmsgPSB2YWx1ZSA9PiB7XG4gICAgICBjb25zdCBzaXplID0gTUFYX0RJU1BMQVlfTEVOR1RIO1xuICAgICAgaWYgKCF2YWx1ZSB8fCB2YWx1ZS5sZW5ndGggPD0gc2l6ZSkge1xuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICB9XG4gICAgICBjb25zdCB0ZXh0ID0gYCR7dmFsdWUuc2xpY2UoMCwgc2l6ZSAvIDIpfVxcdTIwMjYke3ZhbHVlLnNsaWNlKC0oc2l6ZSAvIDIpICsgMSl9YDtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxGaWxlTGluayBocmVmPXt2YWx1ZX0gcmVsPVwibm9vcGVuZXJcIiB0YXJnZXQ9XCJfYmxhbmtcIj5cbiAgICAgICAgICB7dGV4dH1cbiAgICAgICAgPC9GaWxlTGluaz5cbiAgICAgICk7XG4gICAgfTtcblxuICAgIHJlbmRlckZpbGVMaW5rcyA9ICgpID0+IHtcbiAgICAgIGNvbnN0IHsgdmFsdWUgfSA9IHRoaXMucHJvcHM7XG5cbiAgICAgIGlmIChpc011bHRpcGxlKHZhbHVlKSkge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIDxGaWxlTGlua3M+XG4gICAgICAgICAgICA8RmlsZUxpbmtMaXN0PlxuICAgICAgICAgICAgICB7dmFsdWUubWFwKHZhbCA9PiAoXG4gICAgICAgICAgICAgICAgPGxpIGtleT17dmFsfT57dGhpcy5yZW5kZXJGaWxlTGluayh2YWwpfTwvbGk+XG4gICAgICAgICAgICAgICkpfVxuICAgICAgICAgICAgPC9GaWxlTGlua0xpc3Q+XG4gICAgICAgICAgPC9GaWxlTGlua3M+XG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICByZXR1cm4gPEZpbGVMaW5rcz57dGhpcy5yZW5kZXJGaWxlTGluayh2YWx1ZSl9PC9GaWxlTGlua3M+O1xuICAgIH07XG5cbiAgICByZW5kZXJJbWFnZXMgPSAoKSA9PiB7XG4gICAgICBjb25zdCB7IGdldEFzc2V0LCB2YWx1ZSwgZmllbGQgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBpdGVtcyA9IHZhbHVlTGlzdFRvU29ydGFibGVBcnJheSh2YWx1ZSk7XG4gICAgICBpZiAoaXNNdWx0aXBsZSh2YWx1ZSkpIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICA8U29ydGFibGVNdWx0aUltYWdlV3JhcHBlclxuICAgICAgICAgICAgaXRlbXM9e2l0ZW1zfVxuICAgICAgICAgICAgb25Tb3J0RW5kPXt0aGlzLm9uU29ydEVuZH1cbiAgICAgICAgICAgIG9uUmVtb3ZlT25lPXt0aGlzLm9uUmVtb3ZlT25lfVxuICAgICAgICAgICAgb25SZXBsYWNlT25lPXt0aGlzLm9uUmVwbGFjZU9uZX1cbiAgICAgICAgICAgIGRpc3RhbmNlPXs0fVxuICAgICAgICAgICAgZ2V0QXNzZXQ9e2dldEFzc2V0fVxuICAgICAgICAgICAgZmllbGQ9e2ZpZWxkfVxuICAgICAgICAgICAgYXhpcz1cInh5XCJcbiAgICAgICAgICAgIGxvY2tUb0NvbnRhaW5lckVkZ2VzPXt0cnVlfVxuICAgICAgICAgID48L1NvcnRhYmxlTXVsdGlJbWFnZVdyYXBwZXI+XG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHNyYyA9IGdldEFzc2V0KHZhbHVlLCBmaWVsZCk7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8SW1hZ2VXcmFwcGVyPlxuICAgICAgICAgIDxJbWFnZSBzcmM9e3NyYyB8fCAnJ30gLz5cbiAgICAgICAgPC9JbWFnZVdyYXBwZXI+XG4gICAgICApO1xuICAgIH07XG5cbiAgICByZW5kZXJTZWxlY3Rpb24gPSBzdWJqZWN0ID0+IHtcbiAgICAgIGNvbnN0IHsgdCwgZmllbGQgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBhbGxvd3NNdWx0aXBsZSA9IHRoaXMuYWxsb3dzTXVsdGlwbGUoKTtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge2ZvckltYWdlID8gdGhpcy5yZW5kZXJJbWFnZXMoKSA6IG51bGx9XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIHtmb3JJbWFnZSA/IG51bGwgOiB0aGlzLnJlbmRlckZpbGVMaW5rcygpfVxuICAgICAgICAgICAgPEZpbGVXaWRnZXRCdXR0b24gb25DbGljaz17dGhpcy5oYW5kbGVDaGFuZ2V9PlxuICAgICAgICAgICAgICB7dChcbiAgICAgICAgICAgICAgICBgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS4ke1xuICAgICAgICAgICAgICAgICAgdGhpcy5hbGxvd3NNdWx0aXBsZSgpID8gJ2FkZE1vcmUnIDogJ2Nob29zZURpZmZlcmVudCdcbiAgICAgICAgICAgICAgICB9YCxcbiAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIDwvRmlsZVdpZGdldEJ1dHRvbj5cbiAgICAgICAgICAgIHtmaWVsZC5nZXQoJ2Nob29zZV91cmwnLCB0cnVlKSAmJiAhdGhpcy5hbGxvd3NNdWx0aXBsZSgpID8gKFxuICAgICAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvbiBvbkNsaWNrPXt0aGlzLmhhbmRsZVVybChzdWJqZWN0KX0+XG4gICAgICAgICAgICAgICAge3QoYGVkaXRvci5lZGl0b3JXaWRnZXRzLiR7c3ViamVjdH0ucmVwbGFjZVVybGApfVxuICAgICAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b24+XG4gICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgIDxGaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlIG9uQ2xpY2s9e3RoaXMuaGFuZGxlUmVtb3ZlfT5cbiAgICAgICAgICAgICAge3QoYGVkaXRvci5lZGl0b3JXaWRnZXRzLiR7c3ViamVjdH0ucmVtb3ZlJHthbGxvd3NNdWx0aXBsZSA/ICdBbGwnIDogJyd9YCl9XG4gICAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b25SZW1vdmU+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgcmVuZGVyTm9TZWxlY3Rpb24gPSBzdWJqZWN0ID0+IHtcbiAgICAgIGNvbnN0IHsgdCwgZmllbGQgfSA9IHRoaXMucHJvcHM7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8PlxuICAgICAgICAgIDxGaWxlV2lkZ2V0QnV0dG9uIG9uQ2xpY2s9e3RoaXMuaGFuZGxlQ2hhbmdlfT5cbiAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LmNob29zZSR7dGhpcy5hbGxvd3NNdWx0aXBsZSgpID8gJ011bHRpcGxlJyA6ICcnfWApfVxuICAgICAgICAgIDwvRmlsZVdpZGdldEJ1dHRvbj5cbiAgICAgICAgICB7ZmllbGQuZ2V0KCdjaG9vc2VfdXJsJywgdHJ1ZSkgPyAoXG4gICAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvbiBvbkNsaWNrPXt0aGlzLmhhbmRsZVVybChzdWJqZWN0KX0+XG4gICAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LmNob29zZVVybGApfVxuICAgICAgICAgICAgPC9GaWxlV2lkZ2V0QnV0dG9uPlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICA8Lz5cbiAgICAgICk7XG4gICAgfTtcblxuICAgIHJlbmRlcigpIHtcbiAgICAgIGNvbnN0IHsgdmFsdWUsIGNsYXNzTmFtZVdyYXBwZXIgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBzdWJqZWN0ID0gZm9ySW1hZ2UgPyAnaW1hZ2UnIDogJ2ZpbGUnO1xuXG4gICAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Y2xhc3NOYW1lV3JhcHBlcn0+XG4gICAgICAgICAgPHNwYW4+e3ZhbHVlID8gdGhpcy5yZW5kZXJTZWxlY3Rpb24oc3ViamVjdCkgOiB0aGlzLnJlbmRlck5vU2VsZWN0aW9uKHN1YmplY3QpfTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICApO1xuICAgIH1cbiAgfTtcbn1cbiJdfQ== */",
|
|
41
44
|
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
42
45
|
});
|
|
43
46
|
const StyledImage = (0, _styledBase.default)("img", {
|
|
@@ -49,7 +52,7 @@ const StyledImage = (0, _styledBase.default)("img", {
|
|
|
49
52
|
} : {
|
|
50
53
|
name: "r91awh",
|
|
51
54
|
styles: "width:100%;height:100%;object-fit:contain;",
|
|
52
|
-
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy93aXRoRmlsZUNvbnRyb2wuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBK0M4QiIsImZpbGUiOiIuLi8uLi9zcmMvd2l0aEZpbGVDb250cm9sLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgSW1tdXRhYmxlUHJvcFR5cGVzIGZyb20gJ3JlYWN0LWltbXV0YWJsZS1wcm9wdHlwZXMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vY29yZSc7XG5pbXBvcnQgeyBNYXAsIExpc3QgfSBmcm9tICdpbW11dGFibGUnO1xuaW1wb3J0IHsgb25jZSB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgdXVpZCBmcm9tICd1dWlkL3Y0JztcbmltcG9ydCB7IG9uZUxpbmUgfSBmcm9tICdjb21tb24tdGFncyc7XG5pbXBvcnQge1xuICBsZW5ndGhzLFxuICBjb21wb25lbnRzLFxuICBidXR0b25zLFxuICBib3JkZXJzLFxuICBlZmZlY3RzLFxuICBzaGFkb3dzLFxuICBJY29uQnV0dG9uLFxufSBmcm9tICdkZWNhcC1jbXMtdWktZGVmYXVsdCc7XG5pbXBvcnQgeyBiYXNlbmFtZSB9IGZyb20gJ2RlY2FwLWNtcy1saWItdXRpbCc7XG5pbXBvcnQgeyBTb3J0YWJsZUNvbnRhaW5lciwgU29ydGFibGVFbGVtZW50IH0gZnJvbSAncmVhY3Qtc29ydGFibGUtaG9jJztcbmltcG9ydCB7IGFycmF5TW92ZUltbXV0YWJsZSBhcyBhcnJheU1vdmUgfSBmcm9tICdhcnJheS1tb3ZlJztcblxuY29uc3QgTUFYX0RJU1BMQVlfTEVOR1RIID0gNTA7XG5cbmNvbnN0IEltYWdlV3JhcHBlciA9IHN0eWxlZC5kaXZgXG4gIGZsZXgtYmFzaXM6IDE1NXB4O1xuICB3aWR0aDogMTU1cHg7XG4gIGhlaWdodDogMTAwcHg7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgYm9yZGVyOiAke2JvcmRlcnMudGV4dEZpZWxkfTtcbiAgYm9yZGVyLXJhZGl1czogJHtsZW5ndGhzLmJvcmRlclJhZGl1c307XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gICR7ZWZmZWN0cy5jaGVja2VyYm9hcmR9O1xuICAke3NoYWRvd3MuaW5zZXR9O1xuICBjdXJzb3I6ICR7cHJvcHMgPT4gKHByb3BzLnNvcnRhYmxlID8gJ3BvaW50ZXInIDogJ2F1dG8nKX07XG5gO1xuXG5jb25zdCBTb3J0YWJsZUltYWdlQnV0dG9uc1dyYXBwZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY29sdW1uLWdhcDogMTBweDtcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbmA7XG5cbmNvbnN0IFN0eWxlZEltYWdlID0gc3R5bGVkLmltZ2BcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcbmA7XG5cbmZ1bmN0aW9uIEltYWdlKHByb3BzKSB7XG4gIHJldHVybiA8U3R5bGVkSW1hZ2Ugcm9sZT1cInByZXNlbnRhdGlvblwiIHsuLi5wcm9wc30gLz47XG59XG5cbmZ1bmN0aW9uIFNvcnRhYmxlSW1hZ2VCdXR0b25zKHsgb25SZW1vdmUsIG9uUmVwbGFjZSB9KSB7XG4gIHJldHVybiAoXG4gICAgPFNvcnRhYmxlSW1hZ2VCdXR0b25zV3JhcHBlcj5cbiAgICAgIDxJY29uQnV0dG9uIHNpemU9XCJzbWFsbFwiIHR5cGU9XCJtZWRpYVwiIG9uQ2xpY2s9e29uUmVwbGFjZX0+PC9JY29uQnV0dG9uPlxuICAgICAgPEljb25CdXR0b24gc2l6ZT1cInNtYWxsXCIgdHlwZT1cImNsb3NlXCIgb25DbGljaz17b25SZW1vdmV9PjwvSWNvbkJ1dHRvbj5cbiAgICA8L1NvcnRhYmxlSW1hZ2VCdXR0b25zV3JhcHBlcj5cbiAgKTtcbn1cblxuY29uc3QgU29ydGFibGVJbWFnZSA9IFNvcnRhYmxlRWxlbWVudCgoeyBpdGVtVmFsdWUsIGdldEFzc2V0LCBmaWVsZCwgb25SZW1vdmUsIG9uUmVwbGFjZSB9KSA9PiB7XG4gIHJldHVybiAoXG4gICAgPGRpdj5cbiAgICAgIDxJbWFnZVdyYXBwZXIgc29ydGFibGU+XG4gICAgICAgIDxJbWFnZSBzcmM9e2dldEFzc2V0KGl0ZW1WYWx1ZSwgZmllbGQpIHx8ICcnfSAvPlxuICAgICAgPC9JbWFnZVdyYXBwZXI+XG4gICAgICA8U29ydGFibGVJbWFnZUJ1dHRvbnNcbiAgICAgICAgaXRlbT17aXRlbVZhbHVlfVxuICAgICAgICBvblJlbW92ZT17b25SZW1vdmV9XG4gICAgICAgIG9uUmVwbGFjZT17b25SZXBsYWNlfVxuICAgICAgPjwvU29ydGFibGVJbWFnZUJ1dHRvbnM+XG4gICAgPC9kaXY+XG4gICk7XG59KTtcblxuY29uc3QgU29ydGFibGVNdWx0aUltYWdlV3JhcHBlciA9IFNvcnRhYmxlQ29udGFpbmVyKFxuICAoeyBpdGVtcywgZ2V0QXNzZXQsIGZpZWxkLCBvblJlbW92ZU9uZSwgb25SZXBsYWNlT25lIH0pID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgPGRpdlxuICAgICAgICBjc3M9e2Nzc2BcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgYH1cbiAgICAgID5cbiAgICAgICAge2l0ZW1zLm1hcCgoaXRlbVZhbHVlLCBpbmRleCkgPT4gKFxuICAgICAgICAgIDxTb3J0YWJsZUltYWdlXG4gICAgICAgICAgICBrZXk9e2BpdGVtLSR7aXRlbVZhbHVlfWB9XG4gICAgICAgICAgICBpbmRleD17aW5kZXh9XG4gICAgICAgICAgICBpdGVtVmFsdWU9e2l0ZW1WYWx1ZX1cbiAgICAgICAgICAgIGdldEFzc2V0PXtnZXRBc3NldH1cbiAgICAgICAgICAgIGZpZWxkPXtmaWVsZH1cbiAgICAgICAgICAgIG9uUmVtb3ZlPXtvblJlbW92ZU9uZShpbmRleCl9XG4gICAgICAgICAgICBvblJlcGxhY2U9e29uUmVwbGFjZU9uZShpbmRleCl9XG4gICAgICAgICAgLz5cbiAgICAgICAgKSl9XG4gICAgICA8L2Rpdj5cbiAgICApO1xuICB9LFxuKTtcblxuY29uc3QgRmlsZUxpbmsgPSBzdHlsZWQuYWBcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6IGluaGVyaXQ7XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG5gO1xuXG5jb25zdCBGaWxlTGlua3MgPSBzdHlsZWQuZGl2YFxuICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuYDtcblxuY29uc3QgRmlsZUxpbmtMaXN0ID0gc3R5bGVkLnVsYFxuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5gO1xuXG5jb25zdCBGaWxlV2lkZ2V0QnV0dG9uID0gc3R5bGVkLmJ1dHRvbmBcbiAgJHtidXR0b25zLmJ1dHRvbn07XG4gICR7Y29tcG9uZW50cy5iYWRnZX07XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG5gO1xuXG5jb25zdCBGaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlID0gc3R5bGVkLmJ1dHRvbmBcbiAgJHtidXR0b25zLmJ1dHRvbn07XG4gICR7Y29tcG9uZW50cy5iYWRnZURhbmdlcn07XG5gO1xuXG5mdW5jdGlvbiBpc011bHRpcGxlKHZhbHVlKSB7XG4gIHJldHVybiBBcnJheS5pc0FycmF5KHZhbHVlKSB8fCBMaXN0LmlzTGlzdCh2YWx1ZSk7XG59XG5cbmZ1bmN0aW9uIHNpemVPZlZhbHVlKHZhbHVlKSB7XG4gIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgIHJldHVybiB2YWx1ZS5sZW5ndGg7XG4gIH1cblxuICBpZiAoTGlzdC5pc0xpc3QodmFsdWUpKSB7XG4gICAgcmV0dXJuIHZhbHVlLnNpemU7XG4gIH1cblxuICByZXR1cm4gdmFsdWUgPyAxIDogMDtcbn1cblxuZnVuY3Rpb24gdmFsdWVMaXN0VG9BcnJheSh2YWx1ZSkge1xuICByZXR1cm4gTGlzdC5pc0xpc3QodmFsdWUpID8gdmFsdWUudG9BcnJheSgpIDogdmFsdWU7XG59XG5cbmNvbnN0IHdhcm5EZXByZWNhdGVkT3B0aW9ucyA9IG9uY2UoZmllbGQgPT5cbiAgY29uc29sZS53YXJuKG9uZUxpbmVgXG4gIERlY2FwIENNUyBjb25maWc6ICR7ZmllbGQuZ2V0KCduYW1lJyl9IGZpZWxkOiBwcm9wZXJ0eSBcIm9wdGlvbnNcIiBoYXMgYmVlbiBkZXByZWNhdGVkIGZvciB0aGVcbiAgJHtmaWVsZC5nZXQoJ3dpZGdldCcpfSB3aWRnZXQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgbmV4dCBtYWpvciByZWxlYXNlLiBSYXRoZXIgdGhhblxuICBcXGBmaWVsZC5vcHRpb25zLm1lZGlhX2xpYnJhcnlcXGAsIGFwcGx5IG1lZGlhIGxpYnJhcnkgb3B0aW9ucyBmb3IgdGhpcyB3aWRnZXQgdW5kZXJcbiAgXFxgZmllbGQubWVkaWFfbGlicmFyeVxcYC5cbmApLFxuKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gd2l0aEZpbGVDb250cm9sKHsgZm9ySW1hZ2UgfSA9IHt9KSB7XG4gIHJldHVybiBjbGFzcyBGaWxlQ29udHJvbCBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gICAgc3RhdGljIHByb3BUeXBlcyA9IHtcbiAgICAgIGZpZWxkOiBQcm9wVHlwZXMub2JqZWN0LmlzUmVxdWlyZWQsXG4gICAgICBnZXRBc3NldDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG1lZGlhUGF0aHM6IEltbXV0YWJsZVByb3BUeXBlcy5tYXAuaXNSZXF1aXJlZCxcbiAgICAgIG9uQWRkQXNzZXQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgICBvbkNoYW5nZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uUmVtb3ZlSW5zZXJ0ZWRNZWRpYTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uT3Blbk1lZGlhTGlicmFyeTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uQ2xlYXJNZWRpYUNvbnRyb2w6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgICBvblJlbW92ZU1lZGlhQ29udHJvbDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIGNsYXNzTmFtZVdyYXBwZXI6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgICAgIHZhbHVlOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtcbiAgICAgICAgUHJvcFR5cGVzLnN0cmluZyxcbiAgICAgICAgUHJvcFR5cGVzLmFycmF5T2YoUHJvcFR5cGVzLnN0cmluZyksXG4gICAgICAgIEltbXV0YWJsZVByb3BUeXBlcy5saXN0T2YoUHJvcFR5cGVzLnN0cmluZyksXG4gICAgICBdKSxcbiAgICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgfTtcblxuICAgIHN0YXRpYyBkZWZhdWx0UHJvcHMgPSB7XG4gICAgICB2YWx1ZTogJycsXG4gICAgfTtcblxuICAgIGNvbnN0cnVjdG9yKHByb3BzKSB7XG4gICAgICBzdXBlcihwcm9wcyk7XG4gICAgICB0aGlzLmNvbnRyb2xJRCA9IHV1aWQoKTtcbiAgICB9XG5cbiAgICBzaG91bGRDb21wb25lbnRVcGRhdGUobmV4dFByb3BzKSB7XG4gICAgICAvKipcbiAgICAgICAqIEFsd2F5cyB1cGRhdGUgaWYgdGhlIHZhbHVlIG9yIGdldEFzc2V0IGNoYW5nZXMuXG4gICAgICAgKi9cbiAgICAgIGlmICh0aGlzLnByb3BzLnZhbHVlICE9PSBuZXh0UHJvcHMudmFsdWUgfHwgdGhpcy5wcm9wcy5nZXRBc3NldCAhPT0gbmV4dFByb3BzLmdldEFzc2V0KSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuXG4gICAgICAvKipcbiAgICAgICAqIElmIHRoZXJlIGlzIGEgbWVkaWEgcGF0aCBmb3IgdGhpcyBjb250cm9sIGluIHRoZSBzdGF0ZSBvYmplY3QsIGFuZCB0aGF0XG4gICAgICAgKiBwYXRoIGlzIGRpZmZlcmVudCB0aGFuIHRoZSB2YWx1ZSBpbiBgbmV4dFByb3BzYCwgdXBkYXRlLlxuICAgICAgICovXG4gICAgICBjb25zdCBtZWRpYVBhdGggPSBuZXh0UHJvcHMubWVkaWFQYXRocy5nZXQodGhpcy5jb250cm9sSUQpO1xuICAgICAgaWYgKG1lZGlhUGF0aCAmJiBuZXh0UHJvcHMudmFsdWUgIT09IG1lZGlhUGF0aCkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGNvbXBvbmVudERpZFVwZGF0ZSgpIHtcbiAgICAgIGNvbnN0IHsgbWVkaWFQYXRocywgdmFsdWUsIG9uUmVtb3ZlSW5zZXJ0ZWRNZWRpYSwgb25DaGFuZ2UgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBtZWRpYVBhdGggPSBtZWRpYVBhdGhzLmdldCh0aGlzLmNvbnRyb2xJRCk7XG4gICAgICBpZiAobWVkaWFQYXRoICYmIG1lZGlhUGF0aCAhPT0gdmFsdWUpIHtcbiAgICAgICAgb25DaGFuZ2UobWVkaWFQYXRoKTtcbiAgICAgIH0gZWxzZSBpZiAobWVkaWFQYXRoICYmIG1lZGlhUGF0aCA9PT0gdmFsdWUpIHtcbiAgICAgICAgb25SZW1vdmVJbnNlcnRlZE1lZGlhKHRoaXMuY29udHJvbElEKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb21wb25lbnRXaWxsVW5tb3VudCgpIHtcbiAgICAgIHRoaXMucHJvcHMub25SZW1vdmVNZWRpYUNvbnRyb2wodGhpcy5jb250cm9sSUQpO1xuICAgIH1cblxuICAgIGhhbmRsZUNoYW5nZSA9IGUgPT4ge1xuICAgICAgY29uc3QgeyBmaWVsZCwgb25PcGVuTWVkaWFMaWJyYXJ5LCB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgIGNvbnN0IG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucyA9IHRoaXMuZ2V0TWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zKCk7XG5cbiAgICAgIHJldHVybiBvbk9wZW5NZWRpYUxpYnJhcnkoe1xuICAgICAgICBjb250cm9sSUQ6IHRoaXMuY29udHJvbElELFxuICAgICAgICBmb3JJbWFnZSxcbiAgICAgICAgcHJpdmF0ZVVwbG9hZDogZmllbGQuZ2V0KCdwcml2YXRlJyksXG4gICAgICAgIHZhbHVlOiB2YWx1ZUxpc3RUb0FycmF5KHZhbHVlKSxcbiAgICAgICAgYWxsb3dNdWx0aXBsZTogISFtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMuZ2V0KCdhbGxvd19tdWx0aXBsZScsIHRydWUpLFxuICAgICAgICBjb25maWc6IG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycpLFxuICAgICAgICBmaWVsZCxcbiAgICAgIH0pO1xuICAgIH07XG5cbiAgICBoYW5kbGVVcmwgPSBzdWJqZWN0ID0+IGUgPT4ge1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgICBjb25zdCB1cmwgPSB3aW5kb3cucHJvbXB0KHRoaXMucHJvcHMudChgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS5wcm9tcHRVcmxgKSk7XG5cbiAgICAgIHJldHVybiB0aGlzLnByb3BzLm9uQ2hhbmdlKHVybCk7XG4gICAgfTtcblxuICAgIGhhbmRsZVJlbW92ZSA9IGUgPT4ge1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgdGhpcy5wcm9wcy5vbkNsZWFyTWVkaWFDb250cm9sKHRoaXMuY29udHJvbElEKTtcbiAgICAgIHJldHVybiB0aGlzLnByb3BzLm9uQ2hhbmdlKCcnKTtcbiAgICB9O1xuXG4gICAgb25SZW1vdmVPbmUgPSBpbmRleCA9PiAoKSA9PiB7XG4gICAgICBjb25zdCB7IHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgdmFsdWUuc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgIHJldHVybiB0aGlzLnByb3BzLm9uQ2hhbmdlKHNpemVPZlZhbHVlKHZhbHVlKSA+IDAgPyBbLi4udmFsdWVdIDogbnVsbCk7XG4gICAgfTtcblxuICAgIG9uUmVwbGFjZU9uZSA9IGluZGV4ID0+ICgpID0+IHtcbiAgICAgIGNvbnN0IHsgZmllbGQsIG9uT3Blbk1lZGlhTGlicmFyeSwgdmFsdWUgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMgPSB0aGlzLmdldE1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucygpO1xuXG4gICAgICByZXR1cm4gb25PcGVuTWVkaWFMaWJyYXJ5KHtcbiAgICAgICAgY29udHJvbElEOiB0aGlzLmNvbnRyb2xJRCxcbiAgICAgICAgZm9ySW1hZ2UsXG4gICAgICAgIHByaXZhdGVVcGxvYWQ6IGZpZWxkLmdldCgncHJpdmF0ZScpLFxuICAgICAgICB2YWx1ZTogdmFsdWVMaXN0VG9BcnJheSh2YWx1ZSksXG4gICAgICAgIHJlcGxhY2VJbmRleDogaW5kZXgsXG4gICAgICAgIGFsbG93TXVsdGlwbGU6IGZhbHNlLFxuICAgICAgICBjb25maWc6IG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycpLFxuICAgICAgICBmaWVsZCxcbiAgICAgIH0pO1xuICAgIH07XG5cbiAgICBnZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMgPSAoKSA9PiB7XG4gICAgICBjb25zdCB7IGZpZWxkIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgICBpZiAoZmllbGQuaGFzSW4oWydvcHRpb25zJywgJ21lZGlhX2xpYnJhcnknXSkpIHtcbiAgICAgICAgd2FybkRlcHJlY2F0ZWRPcHRpb25zKGZpZWxkKTtcbiAgICAgICAgcmV0dXJuIGZpZWxkLmdldEluKFsnb3B0aW9ucycsICdtZWRpYV9saWJyYXJ5J10sIE1hcCgpKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZpZWxkLmdldCgnbWVkaWFfbGlicmFyeScsIE1hcCgpKTtcbiAgICB9O1xuXG4gICAgYWxsb3dzTXVsdGlwbGUgPSAoKSA9PiB7XG4gICAgICBjb25zdCBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMgPSB0aGlzLmdldE1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucygpO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zLmdldCgnY29uZmlnJywgZmFsc2UpICYmXG4gICAgICAgIG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycpLmdldCgnbXVsdGlwbGUnLCBmYWxzZSlcbiAgICAgICk7XG4gICAgfTtcblxuICAgIG9uU29ydEVuZCA9ICh7IG9sZEluZGV4LCBuZXdJbmRleCB9KSA9PiB7XG4gICAgICBjb25zdCB7IHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgbmV3VmFsdWUgPSBhcnJheU1vdmUodmFsdWUsIG9sZEluZGV4LCBuZXdJbmRleCk7XG4gICAgICByZXR1cm4gdGhpcy5wcm9wcy5vbkNoYW5nZShuZXdWYWx1ZSk7XG4gICAgfTtcblxuICAgIGdldFZhbGlkYXRlVmFsdWUgPSAoKSA9PiB7XG4gICAgICBjb25zdCB7IHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgIHJldHVybiBpc011bHRpcGxlKHZhbHVlKSA/IHZhbHVlLm1hcCh2ID0+IGJhc2VuYW1lKHYpKSA6IGJhc2VuYW1lKHZhbHVlKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH07XG5cbiAgICByZW5kZXJGaWxlTGluayA9IHZhbHVlID0+IHtcbiAgICAgIGNvbnN0IHNpemUgPSBNQVhfRElTUExBWV9MRU5HVEg7XG4gICAgICBpZiAoIXZhbHVlIHx8IHZhbHVlLmxlbmd0aCA8PSBzaXplKSB7XG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHRleHQgPSBgJHt2YWx1ZS5zbGljZSgwLCBzaXplIC8gMil9XFx1MjAyNiR7dmFsdWUuc2xpY2UoLShzaXplIC8gMikgKyAxKX1gO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPEZpbGVMaW5rIGhyZWY9e3ZhbHVlfSByZWw9XCJub29wZW5lclwiIHRhcmdldD1cIl9ibGFua1wiPlxuICAgICAgICAgIHt0ZXh0fVxuICAgICAgICA8L0ZpbGVMaW5rPlxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgcmVuZGVyRmlsZUxpbmtzID0gKCkgPT4ge1xuICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcblxuICAgICAgaWYgKGlzTXVsdGlwbGUodmFsdWUpKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPEZpbGVMaW5rcz5cbiAgICAgICAgICAgIDxGaWxlTGlua0xpc3Q+XG4gICAgICAgICAgICAgIHt2YWx1ZS5tYXAodmFsID0+IChcbiAgICAgICAgICAgICAgICA8bGkga2V5PXt2YWx9Pnt0aGlzLnJlbmRlckZpbGVMaW5rKHZhbCl9PC9saT5cbiAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICA8L0ZpbGVMaW5rTGlzdD5cbiAgICAgICAgICA8L0ZpbGVMaW5rcz5cbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiA8RmlsZUxpbmtzPnt0aGlzLnJlbmRlckZpbGVMaW5rKHZhbHVlKX08L0ZpbGVMaW5rcz47XG4gICAgfTtcblxuICAgIHJlbmRlckltYWdlcyA9ICgpID0+IHtcbiAgICAgIGNvbnN0IHsgZ2V0QXNzZXQsIHZhbHVlLCBmaWVsZCB9ID0gdGhpcy5wcm9wcztcblxuICAgICAgaWYgKGlzTXVsdGlwbGUodmFsdWUpKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPFNvcnRhYmxlTXVsdGlJbWFnZVdyYXBwZXJcbiAgICAgICAgICAgIGl0ZW1zPXt2YWx1ZX1cbiAgICAgICAgICAgIG9uU29ydEVuZD17dGhpcy5vblNvcnRFbmR9XG4gICAgICAgICAgICBvblJlbW92ZU9uZT17dGhpcy5vblJlbW92ZU9uZX1cbiAgICAgICAgICAgIG9uUmVwbGFjZU9uZT17dGhpcy5vblJlcGxhY2VPbmV9XG4gICAgICAgICAgICBkaXN0YW5jZT17NH1cbiAgICAgICAgICAgIGdldEFzc2V0PXtnZXRBc3NldH1cbiAgICAgICAgICAgIGZpZWxkPXtmaWVsZH1cbiAgICAgICAgICAgIGF4aXM9XCJ4eVwiXG4gICAgICAgICAgICBsb2NrVG9Db250YWluZXJFZGdlcz17dHJ1ZX1cbiAgICAgICAgICA+PC9Tb3J0YWJsZU11bHRpSW1hZ2VXcmFwcGVyPlxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBzcmMgPSBnZXRBc3NldCh2YWx1ZSwgZmllbGQpO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPEltYWdlV3JhcHBlcj5cbiAgICAgICAgICA8SW1hZ2Ugc3JjPXtzcmMgfHwgJyd9IC8+XG4gICAgICAgIDwvSW1hZ2VXcmFwcGVyPlxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgcmVuZGVyU2VsZWN0aW9uID0gc3ViamVjdCA9PiB7XG4gICAgICBjb25zdCB7IHQsIGZpZWxkIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgYWxsb3dzTXVsdGlwbGUgPSB0aGlzLmFsbG93c011bHRpcGxlKCk7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2PlxuICAgICAgICAgIHtmb3JJbWFnZSA/IHRoaXMucmVuZGVySW1hZ2VzKCkgOiBudWxsfVxuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICB7Zm9ySW1hZ2UgPyBudWxsIDogdGhpcy5yZW5kZXJGaWxlTGlua3MoKX1cbiAgICAgICAgICAgIDxGaWxlV2lkZ2V0QnV0dG9uIG9uQ2xpY2s9e3RoaXMuaGFuZGxlQ2hhbmdlfT5cbiAgICAgICAgICAgICAge3QoXG4gICAgICAgICAgICAgICAgYGVkaXRvci5lZGl0b3JXaWRnZXRzLiR7c3ViamVjdH0uJHtcbiAgICAgICAgICAgICAgICAgIHRoaXMuYWxsb3dzTXVsdGlwbGUoKSA/ICdhZGRNb3JlJyA6ICdjaG9vc2VEaWZmZXJlbnQnXG4gICAgICAgICAgICAgICAgfWAsXG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b24+XG4gICAgICAgICAgICB7ZmllbGQuZ2V0KCdjaG9vc2VfdXJsJywgdHJ1ZSkgJiYgIXRoaXMuYWxsb3dzTXVsdGlwbGUoKSA/IChcbiAgICAgICAgICAgICAgPEZpbGVXaWRnZXRCdXR0b24gb25DbGljaz17dGhpcy5oYW5kbGVVcmwoc3ViamVjdCl9PlxuICAgICAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LnJlcGxhY2VVcmxgKX1cbiAgICAgICAgICAgICAgPC9GaWxlV2lkZ2V0QnV0dG9uPlxuICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvblJlbW92ZSBvbkNsaWNrPXt0aGlzLmhhbmRsZVJlbW92ZX0+XG4gICAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LnJlbW92ZSR7YWxsb3dzTXVsdGlwbGUgPyAnQWxsJyA6ICcnfWApfVxuICAgICAgICAgICAgPC9GaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICk7XG4gICAgfTtcblxuICAgIHJlbmRlck5vU2VsZWN0aW9uID0gc3ViamVjdCA9PiB7XG4gICAgICBjb25zdCB7IHQsIGZpZWxkIH0gPSB0aGlzLnByb3BzO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPD5cbiAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvbiBvbkNsaWNrPXt0aGlzLmhhbmRsZUNoYW5nZX0+XG4gICAgICAgICAgICB7dChgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS5jaG9vc2Uke3RoaXMuYWxsb3dzTXVsdGlwbGUoKSA/ICdNdWx0aXBsZScgOiAnJ31gKX1cbiAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b24+XG4gICAgICAgICAge2ZpZWxkLmdldCgnY2hvb3NlX3VybCcsIHRydWUpID8gKFxuICAgICAgICAgICAgPEZpbGVXaWRnZXRCdXR0b24gb25DbGljaz17dGhpcy5oYW5kbGVVcmwoc3ViamVjdCl9PlxuICAgICAgICAgICAgICB7dChgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS5jaG9vc2VVcmxgKX1cbiAgICAgICAgICAgIDwvRmlsZVdpZGdldEJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC8+XG4gICAgICApO1xuICAgIH07XG5cbiAgICByZW5kZXIoKSB7XG4gICAgICBjb25zdCB7IHZhbHVlLCBjbGFzc05hbWVXcmFwcGVyIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3Qgc3ViamVjdCA9IGZvckltYWdlID8gJ2ltYWdlJyA6ICdmaWxlJztcblxuICAgICAgcmV0dXJuIChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e2NsYXNzTmFtZVdyYXBwZXJ9PlxuICAgICAgICAgIDxzcGFuPnt2YWx1ZSA/IHRoaXMucmVuZGVyU2VsZWN0aW9uKHN1YmplY3QpIDogdGhpcy5yZW5kZXJOb1NlbGVjdGlvbihzdWJqZWN0KX08L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKTtcbiAgICB9XG4gIH07XG59XG4iXX0= */",
|
|
55
|
+
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy93aXRoRmlsZUNvbnRyb2wuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBeUQ4QiIsImZpbGUiOiIuLi8uLi9zcmMvd2l0aEZpbGVDb250cm9sLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgSW1tdXRhYmxlUHJvcFR5cGVzIGZyb20gJ3JlYWN0LWltbXV0YWJsZS1wcm9wdHlwZXMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vY29yZSc7XG5pbXBvcnQgeyBNYXAsIExpc3QgfSBmcm9tICdpbW11dGFibGUnO1xuaW1wb3J0IHsgb25jZSB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyB2NCBhcyB1dWlkIH0gZnJvbSAndXVpZCc7XG5pbXBvcnQgeyBvbmVMaW5lIH0gZnJvbSAnY29tbW9uLXRhZ3MnO1xuaW1wb3J0IHtcbiAgbGVuZ3RocyxcbiAgY29tcG9uZW50cyxcbiAgYnV0dG9ucyxcbiAgYm9yZGVycyxcbiAgZWZmZWN0cyxcbiAgc2hhZG93cyxcbiAgSWNvbkJ1dHRvbixcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuaW1wb3J0IHsgYmFzZW5hbWUgfSBmcm9tICdkZWNhcC1jbXMtbGliLXV0aWwnO1xuaW1wb3J0IHsgYXJyYXlNb3ZlSW1tdXRhYmxlIGFzIGFycmF5TW92ZSB9IGZyb20gJ2FycmF5LW1vdmUnO1xuaW1wb3J0IHtcbiAgRG5kQ29udGV4dCxcbiAgTW91c2VTZW5zb3IsXG4gIFRvdWNoU2Vuc29yLFxuICBjbG9zZXN0Q2VudGVyLFxuICB1c2VTZW5zb3IsXG4gIHVzZVNlbnNvcnMsXG59IGZyb20gJ0BkbmQta2l0L2NvcmUnO1xuaW1wb3J0IHsgU29ydGFibGVDb250ZXh0LCB1c2VTb3J0YWJsZSB9IGZyb20gJ0BkbmQta2l0L3NvcnRhYmxlJztcbmltcG9ydCB7IENTUyB9IGZyb20gJ0BkbmQta2l0L3V0aWxpdGllcyc7XG5pbXBvcnQgeyByZXN0cmljdFRvUGFyZW50RWxlbWVudCB9IGZyb20gJ0BkbmQta2l0L21vZGlmaWVycyc7XG5cbmNvbnN0IE1BWF9ESVNQTEFZX0xFTkdUSCA9IDUwO1xuXG5jb25zdCBJbWFnZVdyYXBwZXIgPSBzdHlsZWQuZGl2YFxuICBmbGV4LWJhc2lzOiAxNTVweDtcbiAgd2lkdGg6IDE1NXB4O1xuICBoZWlnaHQ6IDEwMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGJvcmRlcjogJHtib3JkZXJzLnRleHRGaWVsZH07XG4gIGJvcmRlci1yYWRpdXM6ICR7bGVuZ3Rocy5ib3JkZXJSYWRpdXN9O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAke2VmZmVjdHMuY2hlY2tlcmJvYXJkfTtcbiAgJHtzaGFkb3dzLmluc2V0fTtcbiAgY3Vyc29yOiAke3Byb3BzID0+IChwcm9wcy5zb3J0YWJsZSA/ICdwb2ludGVyJyA6ICdhdXRvJyl9O1xuYDtcblxuY29uc3QgU29ydGFibGVJbWFnZUJ1dHRvbnNXcmFwcGVyID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGNvbHVtbi1nYXA6IDEwcHg7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbiAgbWFyZ2luLXRvcDogLTEwcHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG5gO1xuXG5jb25zdCBTdHlsZWRJbWFnZSA9IHN0eWxlZC5pbWdgXG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvbnRhaW47XG5gO1xuXG5mdW5jdGlvbiBJbWFnZShwcm9wcykge1xuICByZXR1cm4gPFN0eWxlZEltYWdlIHJvbGU9XCJwcmVzZW50YXRpb25cIiB7Li4ucHJvcHN9IC8+O1xufVxuXG5mdW5jdGlvbiBTb3J0YWJsZUltYWdlQnV0dG9ucyh7IG9uUmVtb3ZlLCBvblJlcGxhY2UgfSkge1xuICByZXR1cm4gKFxuICAgIDxTb3J0YWJsZUltYWdlQnV0dG9uc1dyYXBwZXI+XG4gICAgICA8SWNvbkJ1dHRvbiBzaXplPVwic21hbGxcIiB0eXBlPVwibWVkaWFcIiBvbkNsaWNrPXtvblJlcGxhY2V9PjwvSWNvbkJ1dHRvbj5cbiAgICAgIDxJY29uQnV0dG9uIHNpemU9XCJzbWFsbFwiIHR5cGU9XCJjbG9zZVwiIG9uQ2xpY2s9e29uUmVtb3ZlfT48L0ljb25CdXR0b24+XG4gICAgPC9Tb3J0YWJsZUltYWdlQnV0dG9uc1dyYXBwZXI+XG4gICk7XG59XG5cbmZ1bmN0aW9uIFNvcnRhYmxlSW1hZ2UocHJvcHMpIHtcbiAgY29uc3QgeyBhdHRyaWJ1dGVzLCBsaXN0ZW5lcnMsIHNldE5vZGVSZWYsIHRyYW5zZm9ybSwgdHJhbnNpdGlvbiB9ID0gdXNlU29ydGFibGUoe1xuICAgIGlkOiBwcm9wcy5pZCxcbiAgfSk7XG5cbiAgY29uc3Qgc3R5bGUgPSB7XG4gICAgdHJhbnNmb3JtOiBDU1MuVHJhbnNmb3JtLnRvU3RyaW5nKHRyYW5zZm9ybSksXG4gICAgdHJhbnNpdGlvbixcbiAgfTtcblxuICBjb25zdCB7IGl0ZW1WYWx1ZSwgZ2V0QXNzZXQsIGZpZWxkLCBvblJlbW92ZSwgb25SZXBsYWNlIH0gPSBwcm9wcztcblxuICByZXR1cm4gKFxuICAgIDxkaXYgcmVmPXtzZXROb2RlUmVmfSBzdHlsZT17c3R5bGV9IHsuLi5hdHRyaWJ1dGVzfSB7Li4ubGlzdGVuZXJzfT5cbiAgICAgIDxJbWFnZVdyYXBwZXIgc29ydGFibGU+XG4gICAgICAgIDxJbWFnZSBzcmM9e2dldEFzc2V0KGl0ZW1WYWx1ZSwgZmllbGQpIHx8ICcnfSAvPlxuICAgICAgPC9JbWFnZVdyYXBwZXI+XG4gICAgICA8U29ydGFibGVJbWFnZUJ1dHRvbnNcbiAgICAgICAgaXRlbT17aXRlbVZhbHVlfVxuICAgICAgICBvblJlbW92ZT17b25SZW1vdmV9XG4gICAgICAgIG9uUmVwbGFjZT17b25SZXBsYWNlfVxuICAgICAgPjwvU29ydGFibGVJbWFnZUJ1dHRvbnM+XG4gICAgPC9kaXY+XG4gICk7XG59XG5cbmZ1bmN0aW9uIFNvcnRhYmxlTXVsdGlJbWFnZVdyYXBwZXIoe1xuICBpdGVtcyxcbiAgZ2V0QXNzZXQsXG4gIGZpZWxkLFxuICBvblNvcnRFbmQsXG4gIG9uUmVtb3ZlT25lLFxuICBvblJlcGxhY2VPbmUsXG59KSB7XG4gIGNvbnN0IGFjdGl2YXRpb25Db25zdHJhaW50ID0geyBkaXN0YW5jZTogNCB9O1xuICBjb25zdCBzZW5zb3JzID0gdXNlU2Vuc29ycyhcbiAgICB1c2VTZW5zb3IoTW91c2VTZW5zb3IsIHsgYWN0aXZhdGlvbkNvbnN0cmFpbnQgfSksXG4gICAgdXNlU2Vuc29yKFRvdWNoU2Vuc29yLCB7IGFjdGl2YXRpb25Db25zdHJhaW50IH0pLFxuICApO1xuXG4gIGZ1bmN0aW9uIGhhbmRsZVNvcnRFbmQoeyBhY3RpdmUsIG92ZXIgfSkge1xuICAgIG9uU29ydEVuZCh7XG4gICAgICBvbGRJbmRleDogaXRlbXMuZmluZEluZGV4KGl0ZW0gPT4gaXRlbS5pZCA9PT0gYWN0aXZlLmlkKSxcbiAgICAgIG5ld0luZGV4OiBpdGVtcy5maW5kSW5kZXgoaXRlbSA9PiBpdGVtLmlkID09PSBvdmVyLmlkKSxcbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPGRpdlxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0L25vLXVua25vd24tcHJvcGVydHlcbiAgICAgIGNzcz17Y3NzYFxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBgfVxuICAgID5cbiAgICAgIDxEbmRDb250ZXh0XG4gICAgICAgIG1vZGlmaWVycz17W3Jlc3RyaWN0VG9QYXJlbnRFbGVtZW50XX1cbiAgICAgICAgY29sbGlzaW9uRGV0ZWN0aW9uPXtjbG9zZXN0Q2VudGVyfVxuICAgICAgICBzZW5zb3JzPXtzZW5zb3JzfVxuICAgICAgICBvbkRyYWdFbmQ9e2hhbmRsZVNvcnRFbmR9XG4gICAgICA+XG4gICAgICAgIDxTb3J0YWJsZUNvbnRleHQgaXRlbXM9e2l0ZW1zfT5cbiAgICAgICAgICB7aXRlbXMubWFwKChpdGVtLCBpbmRleCkgPT4gKFxuICAgICAgICAgICAgPFNvcnRhYmxlSW1hZ2VcbiAgICAgICAgICAgICAga2V5PXtpdGVtLmlkfVxuICAgICAgICAgICAgICBpZD17aXRlbS5pZH1cbiAgICAgICAgICAgICAgaW5kZXg9e2luZGV4fVxuICAgICAgICAgICAgICBpdGVtVmFsdWU9e2l0ZW0udmFsdWV9XG4gICAgICAgICAgICAgIGdldEFzc2V0PXtnZXRBc3NldH1cbiAgICAgICAgICAgICAgZmllbGQ9e2ZpZWxkfVxuICAgICAgICAgICAgICBvblJlbW92ZT17b25SZW1vdmVPbmUoaW5kZXgpfVxuICAgICAgICAgICAgICBvblJlcGxhY2U9e29uUmVwbGFjZU9uZShpbmRleCl9XG4gICAgICAgICAgICA+PC9Tb3J0YWJsZUltYWdlPlxuICAgICAgICAgICkpfVxuICAgICAgICA8L1NvcnRhYmxlQ29udGV4dD5cbiAgICAgIDwvRG5kQ29udGV4dD5cbiAgICA8L2Rpdj5cbiAgKTtcbn1cblxuY29uc3QgRmlsZUxpbmsgPSBzdHlsZWQuYWBcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6IGluaGVyaXQ7XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG5gO1xuXG5jb25zdCBGaWxlTGlua3MgPSBzdHlsZWQuZGl2YFxuICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuYDtcblxuY29uc3QgRmlsZUxpbmtMaXN0ID0gc3R5bGVkLnVsYFxuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5gO1xuXG5jb25zdCBGaWxlV2lkZ2V0QnV0dG9uID0gc3R5bGVkLmJ1dHRvbmBcbiAgJHtidXR0b25zLmJ1dHRvbn07XG4gICR7Y29tcG9uZW50cy5iYWRnZX07XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG5gO1xuXG5jb25zdCBGaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlID0gc3R5bGVkLmJ1dHRvbmBcbiAgJHtidXR0b25zLmJ1dHRvbn07XG4gICR7Y29tcG9uZW50cy5iYWRnZURhbmdlcn07XG5gO1xuXG5mdW5jdGlvbiBpc011bHRpcGxlKHZhbHVlKSB7XG4gIHJldHVybiBBcnJheS5pc0FycmF5KHZhbHVlKSB8fCBMaXN0LmlzTGlzdCh2YWx1ZSk7XG59XG5cbmZ1bmN0aW9uIHNpemVPZlZhbHVlKHZhbHVlKSB7XG4gIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgIHJldHVybiB2YWx1ZS5sZW5ndGg7XG4gIH1cblxuICBpZiAoTGlzdC5pc0xpc3QodmFsdWUpKSB7XG4gICAgcmV0dXJuIHZhbHVlLnNpemU7XG4gIH1cblxuICByZXR1cm4gdmFsdWUgPyAxIDogMDtcbn1cblxuZnVuY3Rpb24gdmFsdWVMaXN0VG9BcnJheSh2YWx1ZSkge1xuICByZXR1cm4gTGlzdC5pc0xpc3QodmFsdWUpID8gdmFsdWUudG9BcnJheSgpIDogdmFsdWUgPz8gJyc7XG59XG5cbmZ1bmN0aW9uIHZhbHVlTGlzdFRvU29ydGFibGVBcnJheSh2YWx1ZSkge1xuICBpZiAoIWlzTXVsdGlwbGUodmFsdWUpKSB7XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG5cbiAgY29uc3QgdmFsdWVBcnJheSA9IHZhbHVlTGlzdFRvQXJyYXkodmFsdWUpLm1hcCh2YWx1ZSA9PiAoe1xuICAgIGlkOiB1dWlkKCksXG4gICAgdmFsdWUsXG4gIH0pKTtcblxuICByZXR1cm4gdmFsdWVBcnJheTtcbn1cblxuY29uc3Qgd2FybkRlcHJlY2F0ZWRPcHRpb25zID0gb25jZShmaWVsZCA9PlxuICBjb25zb2xlLndhcm4ob25lTGluZWBcbiAgRGVjYXAgQ01TIGNvbmZpZzogJHtmaWVsZC5nZXQoJ25hbWUnKX0gZmllbGQ6IHByb3BlcnR5IFwib3B0aW9uc1wiIGhhcyBiZWVuIGRlcHJlY2F0ZWQgZm9yIHRoZVxuICAke2ZpZWxkLmdldCgnd2lkZ2V0Jyl9IHdpZGdldCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IG1ham9yIHJlbGVhc2UuIFJhdGhlciB0aGFuXG4gIFxcYGZpZWxkLm9wdGlvbnMubWVkaWFfbGlicmFyeVxcYCwgYXBwbHkgbWVkaWEgbGlicmFyeSBvcHRpb25zIGZvciB0aGlzIHdpZGdldCB1bmRlclxuICBcXGBmaWVsZC5tZWRpYV9saWJyYXJ5XFxgLlxuYCksXG4pO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB3aXRoRmlsZUNvbnRyb2woeyBmb3JJbWFnZSB9ID0ge30pIHtcbiAgcmV0dXJuIGNsYXNzIEZpbGVDb250cm9sIGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50IHtcbiAgICBzdGF0aWMgcHJvcFR5cGVzID0ge1xuICAgICAgZmllbGQ6IFByb3BUeXBlcy5vYmplY3QuaXNSZXF1aXJlZCxcbiAgICAgIGdldEFzc2V0OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgbWVkaWFQYXRoczogSW1tdXRhYmxlUHJvcFR5cGVzLm1hcC5pc1JlcXVpcmVkLFxuICAgICAgb25BZGRBc3NldDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uQ2hhbmdlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgb25SZW1vdmVJbnNlcnRlZE1lZGlhOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgb25PcGVuTWVkaWFMaWJyYXJ5OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgb25DbGVhck1lZGlhQ29udHJvbDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uUmVtb3ZlTWVkaWFDb250cm9sOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgY2xhc3NOYW1lV3JhcHBlcjogUHJvcFR5cGVzLnN0cmluZy5pc1JlcXVpcmVkLFxuICAgICAgdmFsdWU6IFByb3BUeXBlcy5vbmVPZlR5cGUoW1xuICAgICAgICBQcm9wVHlwZXMuc3RyaW5nLFxuICAgICAgICBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMuc3RyaW5nKSxcbiAgICAgICAgSW1tdXRhYmxlUHJvcFR5cGVzLmxpc3RPZihQcm9wVHlwZXMuc3RyaW5nKSxcbiAgICAgIF0pLFxuICAgICAgdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICB9O1xuXG4gICAgc3RhdGljIGRlZmF1bHRQcm9wcyA9IHtcbiAgICAgIHZhbHVlOiAnJyxcbiAgICB9O1xuXG4gICAgY29uc3RydWN0b3IocHJvcHMpIHtcbiAgICAgIHN1cGVyKHByb3BzKTtcbiAgICAgIHRoaXMuY29udHJvbElEID0gdXVpZCgpO1xuICAgIH1cblxuICAgIHNob3VsZENvbXBvbmVudFVwZGF0ZShuZXh0UHJvcHMpIHtcbiAgICAgIC8qKlxuICAgICAgICogQWx3YXlzIHVwZGF0ZSBpZiB0aGUgdmFsdWUgb3IgZ2V0QXNzZXQgY2hhbmdlcy5cbiAgICAgICAqL1xuICAgICAgaWYgKHRoaXMucHJvcHMudmFsdWUgIT09IG5leHRQcm9wcy52YWx1ZSB8fCB0aGlzLnByb3BzLmdldEFzc2V0ICE9PSBuZXh0UHJvcHMuZ2V0QXNzZXQpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG5cbiAgICAgIC8qKlxuICAgICAgICogSWYgdGhlcmUgaXMgYSBtZWRpYSBwYXRoIGZvciB0aGlzIGNvbnRyb2wgaW4gdGhlIHN0YXRlIG9iamVjdCwgYW5kIHRoYXRcbiAgICAgICAqIHBhdGggaXMgZGlmZmVyZW50IHRoYW4gdGhlIHZhbHVlIGluIGBuZXh0UHJvcHNgLCB1cGRhdGUuXG4gICAgICAgKi9cbiAgICAgIGNvbnN0IG1lZGlhUGF0aCA9IG5leHRQcm9wcy5tZWRpYVBhdGhzLmdldCh0aGlzLmNvbnRyb2xJRCk7XG4gICAgICBpZiAobWVkaWFQYXRoICYmIG5leHRQcm9wcy52YWx1ZSAhPT0gbWVkaWFQYXRoKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgY29tcG9uZW50RGlkVXBkYXRlKCkge1xuICAgICAgY29uc3QgeyBtZWRpYVBhdGhzLCB2YWx1ZSwgb25SZW1vdmVJbnNlcnRlZE1lZGlhLCBvbkNoYW5nZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGNvbnN0IG1lZGlhUGF0aCA9IG1lZGlhUGF0aHMuZ2V0KHRoaXMuY29udHJvbElEKTtcbiAgICAgIGlmIChtZWRpYVBhdGggJiYgbWVkaWFQYXRoICE9PSB2YWx1ZSkge1xuICAgICAgICBvbkNoYW5nZShtZWRpYVBhdGgpO1xuICAgICAgfSBlbHNlIGlmIChtZWRpYVBhdGggJiYgbWVkaWFQYXRoID09PSB2YWx1ZSkge1xuICAgICAgICBvblJlbW92ZUluc2VydGVkTWVkaWEodGhpcy5jb250cm9sSUQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGNvbXBvbmVudFdpbGxVbm1vdW50KCkge1xuICAgICAgdGhpcy5wcm9wcy5vblJlbW92ZU1lZGlhQ29udHJvbCh0aGlzLmNvbnRyb2xJRCk7XG4gICAgfVxuXG4gICAgaGFuZGxlQ2hhbmdlID0gZSA9PiB7XG4gICAgICBjb25zdCB7IGZpZWxkLCBvbk9wZW5NZWRpYUxpYnJhcnksIHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgY29uc3QgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gdGhpcy5nZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMoKTtcblxuICAgICAgcmV0dXJuIG9uT3Blbk1lZGlhTGlicmFyeSh7XG4gICAgICAgIGNvbnRyb2xJRDogdGhpcy5jb250cm9sSUQsXG4gICAgICAgIGZvckltYWdlLFxuICAgICAgICBwcml2YXRlVXBsb2FkOiBmaWVsZC5nZXQoJ3ByaXZhdGUnKSxcbiAgICAgICAgdmFsdWU6IHZhbHVlTGlzdFRvQXJyYXkodmFsdWUpLFxuICAgICAgICBhbGxvd011bHRpcGxlOiAhIW1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2FsbG93X211bHRpcGxlJywgdHJ1ZSksXG4gICAgICAgIGNvbmZpZzogbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zLmdldCgnY29uZmlnJyksXG4gICAgICAgIGZpZWxkLFxuICAgICAgfSk7XG4gICAgfTtcblxuICAgIGhhbmRsZVVybCA9IHN1YmplY3QgPT4gZSA9PiB7XG4gICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG5cbiAgICAgIGNvbnN0IHVybCA9IHdpbmRvdy5wcm9tcHQodGhpcy5wcm9wcy50KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LnByb21wdFVybGApKTtcblxuICAgICAgcmV0dXJuIHRoaXMucHJvcHMub25DaGFuZ2UodXJsKTtcbiAgICB9O1xuXG4gICAgaGFuZGxlUmVtb3ZlID0gZSA9PiB7XG4gICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB0aGlzLnByb3BzLm9uQ2xlYXJNZWRpYUNvbnRyb2wodGhpcy5jb250cm9sSUQpO1xuICAgICAgcmV0dXJuIHRoaXMucHJvcHMub25DaGFuZ2UoJycpO1xuICAgIH07XG5cbiAgICBvblJlbW92ZU9uZSA9IGluZGV4ID0+ICgpID0+IHtcbiAgICAgIGNvbnN0IHZhbHVlID0gdmFsdWVMaXN0VG9BcnJheSh0aGlzLnByb3BzLnZhbHVlKTtcbiAgICAgIHZhbHVlLnNwbGljZShpbmRleCwgMSk7XG4gICAgICByZXR1cm4gdGhpcy5wcm9wcy5vbkNoYW5nZShzaXplT2ZWYWx1ZSh2YWx1ZSkgPiAwID8gWy4uLnZhbHVlXSA6IG51bGwpO1xuICAgIH07XG5cbiAgICBvblJlcGxhY2VPbmUgPSBpbmRleCA9PiAoKSA9PiB7XG4gICAgICBjb25zdCB7IGZpZWxkLCBvbk9wZW5NZWRpYUxpYnJhcnksIHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gdGhpcy5nZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMoKTtcblxuICAgICAgcmV0dXJuIG9uT3Blbk1lZGlhTGlicmFyeSh7XG4gICAgICAgIGNvbnRyb2xJRDogdGhpcy5jb250cm9sSUQsXG4gICAgICAgIGZvckltYWdlLFxuICAgICAgICBwcml2YXRlVXBsb2FkOiBmaWVsZC5nZXQoJ3ByaXZhdGUnKSxcbiAgICAgICAgdmFsdWU6IHZhbHVlTGlzdFRvQXJyYXkodmFsdWUpLFxuICAgICAgICByZXBsYWNlSW5kZXg6IGluZGV4LFxuICAgICAgICBhbGxvd011bHRpcGxlOiBmYWxzZSxcbiAgICAgICAgY29uZmlnOiBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMuZ2V0KCdjb25maWcnKSxcbiAgICAgICAgZmllbGQsXG4gICAgICB9KTtcbiAgICB9O1xuXG4gICAgZ2V0TWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gKCkgPT4ge1xuICAgICAgY29uc3QgeyBmaWVsZCB9ID0gdGhpcy5wcm9wcztcblxuICAgICAgaWYgKGZpZWxkLmhhc0luKFsnb3B0aW9ucycsICdtZWRpYV9saWJyYXJ5J10pKSB7XG4gICAgICAgIHdhcm5EZXByZWNhdGVkT3B0aW9ucyhmaWVsZCk7XG4gICAgICAgIHJldHVybiBmaWVsZC5nZXRJbihbJ29wdGlvbnMnLCAnbWVkaWFfbGlicmFyeSddLCBNYXAoKSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBmaWVsZC5nZXQoJ21lZGlhX2xpYnJhcnknLCBNYXAoKSk7XG4gICAgfTtcblxuICAgIGFsbG93c011bHRpcGxlID0gKCkgPT4ge1xuICAgICAgY29uc3QgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gdGhpcy5nZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMoKTtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycsIGZhbHNlKSAmJlxuICAgICAgICBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMuZ2V0KCdjb25maWcnKS5nZXQoJ211bHRpcGxlJywgZmFsc2UpXG4gICAgICApO1xuICAgIH07XG5cbiAgICBvblNvcnRFbmQgPSAoeyBvbGRJbmRleCwgbmV3SW5kZXggfSkgPT4ge1xuICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGNvbnN0IG5ld1ZhbHVlID0gYXJyYXlNb3ZlKHZhbHVlLCBvbGRJbmRleCwgbmV3SW5kZXgpO1xuICAgICAgcmV0dXJuIHRoaXMucHJvcHMub25DaGFuZ2UobmV3VmFsdWUpO1xuICAgIH07XG5cbiAgICBnZXRWYWxpZGF0ZVZhbHVlID0gKCkgPT4ge1xuICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICByZXR1cm4gaXNNdWx0aXBsZSh2YWx1ZSkgPyB2YWx1ZS5tYXAodiA9PiBiYXNlbmFtZSh2KSkgOiBiYXNlbmFtZSh2YWx1ZSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9O1xuXG4gICAgcmVuZGVyRmlsZUxpbmsgPSB2YWx1ZSA9PiB7XG4gICAgICBjb25zdCBzaXplID0gTUFYX0RJU1BMQVlfTEVOR1RIO1xuICAgICAgaWYgKCF2YWx1ZSB8fCB2YWx1ZS5sZW5ndGggPD0gc2l6ZSkge1xuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICB9XG4gICAgICBjb25zdCB0ZXh0ID0gYCR7dmFsdWUuc2xpY2UoMCwgc2l6ZSAvIDIpfVxcdTIwMjYke3ZhbHVlLnNsaWNlKC0oc2l6ZSAvIDIpICsgMSl9YDtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxGaWxlTGluayBocmVmPXt2YWx1ZX0gcmVsPVwibm9vcGVuZXJcIiB0YXJnZXQ9XCJfYmxhbmtcIj5cbiAgICAgICAgICB7dGV4dH1cbiAgICAgICAgPC9GaWxlTGluaz5cbiAgICAgICk7XG4gICAgfTtcblxuICAgIHJlbmRlckZpbGVMaW5rcyA9ICgpID0+IHtcbiAgICAgIGNvbnN0IHsgdmFsdWUgfSA9IHRoaXMucHJvcHM7XG5cbiAgICAgIGlmIChpc011bHRpcGxlKHZhbHVlKSkge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIDxGaWxlTGlua3M+XG4gICAgICAgICAgICA8RmlsZUxpbmtMaXN0PlxuICAgICAgICAgICAgICB7dmFsdWUubWFwKHZhbCA9PiAoXG4gICAgICAgICAgICAgICAgPGxpIGtleT17dmFsfT57dGhpcy5yZW5kZXJGaWxlTGluayh2YWwpfTwvbGk+XG4gICAgICAgICAgICAgICkpfVxuICAgICAgICAgICAgPC9GaWxlTGlua0xpc3Q+XG4gICAgICAgICAgPC9GaWxlTGlua3M+XG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICByZXR1cm4gPEZpbGVMaW5rcz57dGhpcy5yZW5kZXJGaWxlTGluayh2YWx1ZSl9PC9GaWxlTGlua3M+O1xuICAgIH07XG5cbiAgICByZW5kZXJJbWFnZXMgPSAoKSA9PiB7XG4gICAgICBjb25zdCB7IGdldEFzc2V0LCB2YWx1ZSwgZmllbGQgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBpdGVtcyA9IHZhbHVlTGlzdFRvU29ydGFibGVBcnJheSh2YWx1ZSk7XG4gICAgICBpZiAoaXNNdWx0aXBsZSh2YWx1ZSkpIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICA8U29ydGFibGVNdWx0aUltYWdlV3JhcHBlclxuICAgICAgICAgICAgaXRlbXM9e2l0ZW1zfVxuICAgICAgICAgICAgb25Tb3J0RW5kPXt0aGlzLm9uU29ydEVuZH1cbiAgICAgICAgICAgIG9uUmVtb3ZlT25lPXt0aGlzLm9uUmVtb3ZlT25lfVxuICAgICAgICAgICAgb25SZXBsYWNlT25lPXt0aGlzLm9uUmVwbGFjZU9uZX1cbiAgICAgICAgICAgIGRpc3RhbmNlPXs0fVxuICAgICAgICAgICAgZ2V0QXNzZXQ9e2dldEFzc2V0fVxuICAgICAgICAgICAgZmllbGQ9e2ZpZWxkfVxuICAgICAgICAgICAgYXhpcz1cInh5XCJcbiAgICAgICAgICAgIGxvY2tUb0NvbnRhaW5lckVkZ2VzPXt0cnVlfVxuICAgICAgICAgID48L1NvcnRhYmxlTXVsdGlJbWFnZVdyYXBwZXI+XG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHNyYyA9IGdldEFzc2V0KHZhbHVlLCBmaWVsZCk7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8SW1hZ2VXcmFwcGVyPlxuICAgICAgICAgIDxJbWFnZSBzcmM9e3NyYyB8fCAnJ30gLz5cbiAgICAgICAgPC9JbWFnZVdyYXBwZXI+XG4gICAgICApO1xuICAgIH07XG5cbiAgICByZW5kZXJTZWxlY3Rpb24gPSBzdWJqZWN0ID0+IHtcbiAgICAgIGNvbnN0IHsgdCwgZmllbGQgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBhbGxvd3NNdWx0aXBsZSA9IHRoaXMuYWxsb3dzTXVsdGlwbGUoKTtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge2ZvckltYWdlID8gdGhpcy5yZW5kZXJJbWFnZXMoKSA6IG51bGx9XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIHtmb3JJbWFnZSA/IG51bGwgOiB0aGlzLnJlbmRlckZpbGVMaW5rcygpfVxuICAgICAgICAgICAgPEZpbGVXaWRnZXRCdXR0b24gb25DbGljaz17dGhpcy5oYW5kbGVDaGFuZ2V9PlxuICAgICAgICAgICAgICB7dChcbiAgICAgICAgICAgICAgICBgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS4ke1xuICAgICAgICAgICAgICAgICAgdGhpcy5hbGxvd3NNdWx0aXBsZSgpID8gJ2FkZE1vcmUnIDogJ2Nob29zZURpZmZlcmVudCdcbiAgICAgICAgICAgICAgICB9YCxcbiAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIDwvRmlsZVdpZGdldEJ1dHRvbj5cbiAgICAgICAgICAgIHtmaWVsZC5nZXQoJ2Nob29zZV91cmwnLCB0cnVlKSAmJiAhdGhpcy5hbGxvd3NNdWx0aXBsZSgpID8gKFxuICAgICAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvbiBvbkNsaWNrPXt0aGlzLmhhbmRsZVVybChzdWJqZWN0KX0+XG4gICAgICAgICAgICAgICAge3QoYGVkaXRvci5lZGl0b3JXaWRnZXRzLiR7c3ViamVjdH0ucmVwbGFjZVVybGApfVxuICAgICAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b24+XG4gICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgIDxGaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlIG9uQ2xpY2s9e3RoaXMuaGFuZGxlUmVtb3ZlfT5cbiAgICAgICAgICAgICAge3QoYGVkaXRvci5lZGl0b3JXaWRnZXRzLiR7c3ViamVjdH0ucmVtb3ZlJHthbGxvd3NNdWx0aXBsZSA/ICdBbGwnIDogJyd9YCl9XG4gICAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b25SZW1vdmU+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgcmVuZGVyTm9TZWxlY3Rpb24gPSBzdWJqZWN0ID0+IHtcbiAgICAgIGNvbnN0IHsgdCwgZmllbGQgfSA9IHRoaXMucHJvcHM7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8PlxuICAgICAgICAgIDxGaWxlV2lkZ2V0QnV0dG9uIG9uQ2xpY2s9e3RoaXMuaGFuZGxlQ2hhbmdlfT5cbiAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LmNob29zZSR7dGhpcy5hbGxvd3NNdWx0aXBsZSgpID8gJ011bHRpcGxlJyA6ICcnfWApfVxuICAgICAgICAgIDwvRmlsZVdpZGdldEJ1dHRvbj5cbiAgICAgICAgICB7ZmllbGQuZ2V0KCdjaG9vc2VfdXJsJywgdHJ1ZSkgPyAoXG4gICAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvbiBvbkNsaWNrPXt0aGlzLmhhbmRsZVVybChzdWJqZWN0KX0+XG4gICAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LmNob29zZVVybGApfVxuICAgICAgICAgICAgPC9GaWxlV2lkZ2V0QnV0dG9uPlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICA8Lz5cbiAgICAgICk7XG4gICAgfTtcblxuICAgIHJlbmRlcigpIHtcbiAgICAgIGNvbnN0IHsgdmFsdWUsIGNsYXNzTmFtZVdyYXBwZXIgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBzdWJqZWN0ID0gZm9ySW1hZ2UgPyAnaW1hZ2UnIDogJ2ZpbGUnO1xuXG4gICAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Y2xhc3NOYW1lV3JhcHBlcn0+XG4gICAgICAgICAgPHNwYW4+e3ZhbHVlID8gdGhpcy5yZW5kZXJTZWxlY3Rpb24oc3ViamVjdCkgOiB0aGlzLnJlbmRlck5vU2VsZWN0aW9uKHN1YmplY3QpfTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICApO1xuICAgIH1cbiAgfTtcbn1cbiJdfQ== */",
|
|
53
56
|
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
54
57
|
});
|
|
55
58
|
function Image(props) {
|
|
@@ -71,14 +74,31 @@ function SortableImageButtons({
|
|
|
71
74
|
onClick: onRemove
|
|
72
75
|
}));
|
|
73
76
|
}
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
77
|
+
function SortableImage(props) {
|
|
78
|
+
const {
|
|
79
|
+
attributes,
|
|
80
|
+
listeners,
|
|
81
|
+
setNodeRef,
|
|
82
|
+
transform,
|
|
83
|
+
transition
|
|
84
|
+
} = (0, _sortable.useSortable)({
|
|
85
|
+
id: props.id
|
|
86
|
+
});
|
|
87
|
+
const style = {
|
|
88
|
+
transform: _utilities.CSS.Transform.toString(transform),
|
|
89
|
+
transition
|
|
90
|
+
};
|
|
91
|
+
const {
|
|
92
|
+
itemValue,
|
|
93
|
+
getAsset,
|
|
94
|
+
field,
|
|
95
|
+
onRemove,
|
|
96
|
+
onReplace
|
|
97
|
+
} = props;
|
|
98
|
+
return (0, _core.jsx)("div", _extends({
|
|
99
|
+
ref: setNodeRef,
|
|
100
|
+
style: style
|
|
101
|
+
}, attributes, listeners), (0, _core.jsx)(ImageWrapper, {
|
|
82
102
|
sortable: true
|
|
83
103
|
}, (0, _core.jsx)(Image, {
|
|
84
104
|
src: getAsset(itemValue, field) || ''
|
|
@@ -87,35 +107,62 @@ const SortableImage = (0, _reactSortableHoc.SortableElement)(({
|
|
|
87
107
|
onRemove: onRemove,
|
|
88
108
|
onReplace: onReplace
|
|
89
109
|
}));
|
|
90
|
-
}
|
|
110
|
+
}
|
|
91
111
|
var _ref = process.env.NODE_ENV === "production" ? {
|
|
92
112
|
name: "e1mylu-SortableMultiImageWrapper",
|
|
93
113
|
styles: "display:flex;flex-wrap:wrap;;label:SortableMultiImageWrapper;"
|
|
94
114
|
} : {
|
|
95
115
|
name: "e1mylu-SortableMultiImageWrapper",
|
|
96
116
|
styles: "display:flex;flex-wrap:wrap;;label:SortableMultiImageWrapper;",
|
|
97
|
-
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy93aXRoRmlsZUNvbnRyb2wuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBcUZnQiIsImZpbGUiOiIuLi8uLi9zcmMvd2l0aEZpbGVDb250cm9sLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgSW1tdXRhYmxlUHJvcFR5cGVzIGZyb20gJ3JlYWN0LWltbXV0YWJsZS1wcm9wdHlwZXMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vY29yZSc7XG5pbXBvcnQgeyBNYXAsIExpc3QgfSBmcm9tICdpbW11dGFibGUnO1xuaW1wb3J0IHsgb25jZSB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgdXVpZCBmcm9tICd1dWlkL3Y0JztcbmltcG9ydCB7IG9uZUxpbmUgfSBmcm9tICdjb21tb24tdGFncyc7XG5pbXBvcnQge1xuICBsZW5ndGhzLFxuICBjb21wb25lbnRzLFxuICBidXR0b25zLFxuICBib3JkZXJzLFxuICBlZmZlY3RzLFxuICBzaGFkb3dzLFxuICBJY29uQnV0dG9uLFxufSBmcm9tICdkZWNhcC1jbXMtdWktZGVmYXVsdCc7XG5pbXBvcnQgeyBiYXNlbmFtZSB9IGZyb20gJ2RlY2FwLWNtcy1saWItdXRpbCc7XG5pbXBvcnQgeyBTb3J0YWJsZUNvbnRhaW5lciwgU29ydGFibGVFbGVtZW50IH0gZnJvbSAncmVhY3Qtc29ydGFibGUtaG9jJztcbmltcG9ydCB7IGFycmF5TW92ZUltbXV0YWJsZSBhcyBhcnJheU1vdmUgfSBmcm9tICdhcnJheS1tb3ZlJztcblxuY29uc3QgTUFYX0RJU1BMQVlfTEVOR1RIID0gNTA7XG5cbmNvbnN0IEltYWdlV3JhcHBlciA9IHN0eWxlZC5kaXZgXG4gIGZsZXgtYmFzaXM6IDE1NXB4O1xuICB3aWR0aDogMTU1cHg7XG4gIGhlaWdodDogMTAwcHg7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgYm9yZGVyOiAke2JvcmRlcnMudGV4dEZpZWxkfTtcbiAgYm9yZGVyLXJhZGl1czogJHtsZW5ndGhzLmJvcmRlclJhZGl1c307XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gICR7ZWZmZWN0cy5jaGVja2VyYm9hcmR9O1xuICAke3NoYWRvd3MuaW5zZXR9O1xuICBjdXJzb3I6ICR7cHJvcHMgPT4gKHByb3BzLnNvcnRhYmxlID8gJ3BvaW50ZXInIDogJ2F1dG8nKX07XG5gO1xuXG5jb25zdCBTb3J0YWJsZUltYWdlQnV0dG9uc1dyYXBwZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY29sdW1uLWdhcDogMTBweDtcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbmA7XG5cbmNvbnN0IFN0eWxlZEltYWdlID0gc3R5bGVkLmltZ2BcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcbmA7XG5cbmZ1bmN0aW9uIEltYWdlKHByb3BzKSB7XG4gIHJldHVybiA8U3R5bGVkSW1hZ2Ugcm9sZT1cInByZXNlbnRhdGlvblwiIHsuLi5wcm9wc30gLz47XG59XG5cbmZ1bmN0aW9uIFNvcnRhYmxlSW1hZ2VCdXR0b25zKHsgb25SZW1vdmUsIG9uUmVwbGFjZSB9KSB7XG4gIHJldHVybiAoXG4gICAgPFNvcnRhYmxlSW1hZ2VCdXR0b25zV3JhcHBlcj5cbiAgICAgIDxJY29uQnV0dG9uIHNpemU9XCJzbWFsbFwiIHR5cGU9XCJtZWRpYVwiIG9uQ2xpY2s9e29uUmVwbGFjZX0+PC9JY29uQnV0dG9uPlxuICAgICAgPEljb25CdXR0b24gc2l6ZT1cInNtYWxsXCIgdHlwZT1cImNsb3NlXCIgb25DbGljaz17b25SZW1vdmV9PjwvSWNvbkJ1dHRvbj5cbiAgICA8L1NvcnRhYmxlSW1hZ2VCdXR0b25zV3JhcHBlcj5cbiAgKTtcbn1cblxuY29uc3QgU29ydGFibGVJbWFnZSA9IFNvcnRhYmxlRWxlbWVudCgoeyBpdGVtVmFsdWUsIGdldEFzc2V0LCBmaWVsZCwgb25SZW1vdmUsIG9uUmVwbGFjZSB9KSA9PiB7XG4gIHJldHVybiAoXG4gICAgPGRpdj5cbiAgICAgIDxJbWFnZVdyYXBwZXIgc29ydGFibGU+XG4gICAgICAgIDxJbWFnZSBzcmM9e2dldEFzc2V0KGl0ZW1WYWx1ZSwgZmllbGQpIHx8ICcnfSAvPlxuICAgICAgPC9JbWFnZVdyYXBwZXI+XG4gICAgICA8U29ydGFibGVJbWFnZUJ1dHRvbnNcbiAgICAgICAgaXRlbT17aXRlbVZhbHVlfVxuICAgICAgICBvblJlbW92ZT17b25SZW1vdmV9XG4gICAgICAgIG9uUmVwbGFjZT17b25SZXBsYWNlfVxuICAgICAgPjwvU29ydGFibGVJbWFnZUJ1dHRvbnM+XG4gICAgPC9kaXY+XG4gICk7XG59KTtcblxuY29uc3QgU29ydGFibGVNdWx0aUltYWdlV3JhcHBlciA9IFNvcnRhYmxlQ29udGFpbmVyKFxuICAoeyBpdGVtcywgZ2V0QXNzZXQsIGZpZWxkLCBvblJlbW92ZU9uZSwgb25SZXBsYWNlT25lIH0pID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgPGRpdlxuICAgICAgICBjc3M9e2Nzc2BcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgYH1cbiAgICAgID5cbiAgICAgICAge2l0ZW1zLm1hcCgoaXRlbVZhbHVlLCBpbmRleCkgPT4gKFxuICAgICAgICAgIDxTb3J0YWJsZUltYWdlXG4gICAgICAgICAgICBrZXk9e2BpdGVtLSR7aXRlbVZhbHVlfWB9XG4gICAgICAgICAgICBpbmRleD17aW5kZXh9XG4gICAgICAgICAgICBpdGVtVmFsdWU9e2l0ZW1WYWx1ZX1cbiAgICAgICAgICAgIGdldEFzc2V0PXtnZXRBc3NldH1cbiAgICAgICAgICAgIGZpZWxkPXtmaWVsZH1cbiAgICAgICAgICAgIG9uUmVtb3ZlPXtvblJlbW92ZU9uZShpbmRleCl9XG4gICAgICAgICAgICBvblJlcGxhY2U9e29uUmVwbGFjZU9uZShpbmRleCl9XG4gICAgICAgICAgLz5cbiAgICAgICAgKSl9XG4gICAgICA8L2Rpdj5cbiAgICApO1xuICB9LFxuKTtcblxuY29uc3QgRmlsZUxpbmsgPSBzdHlsZWQuYWBcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6IGluaGVyaXQ7XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG5gO1xuXG5jb25zdCBGaWxlTGlua3MgPSBzdHlsZWQuZGl2YFxuICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuYDtcblxuY29uc3QgRmlsZUxpbmtMaXN0ID0gc3R5bGVkLnVsYFxuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5gO1xuXG5jb25zdCBGaWxlV2lkZ2V0QnV0dG9uID0gc3R5bGVkLmJ1dHRvbmBcbiAgJHtidXR0b25zLmJ1dHRvbn07XG4gICR7Y29tcG9uZW50cy5iYWRnZX07XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG5gO1xuXG5jb25zdCBGaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlID0gc3R5bGVkLmJ1dHRvbmBcbiAgJHtidXR0b25zLmJ1dHRvbn07XG4gICR7Y29tcG9uZW50cy5iYWRnZURhbmdlcn07XG5gO1xuXG5mdW5jdGlvbiBpc011bHRpcGxlKHZhbHVlKSB7XG4gIHJldHVybiBBcnJheS5pc0FycmF5KHZhbHVlKSB8fCBMaXN0LmlzTGlzdCh2YWx1ZSk7XG59XG5cbmZ1bmN0aW9uIHNpemVPZlZhbHVlKHZhbHVlKSB7XG4gIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgIHJldHVybiB2YWx1ZS5sZW5ndGg7XG4gIH1cblxuICBpZiAoTGlzdC5pc0xpc3QodmFsdWUpKSB7XG4gICAgcmV0dXJuIHZhbHVlLnNpemU7XG4gIH1cblxuICByZXR1cm4gdmFsdWUgPyAxIDogMDtcbn1cblxuZnVuY3Rpb24gdmFsdWVMaXN0VG9BcnJheSh2YWx1ZSkge1xuICByZXR1cm4gTGlzdC5pc0xpc3QodmFsdWUpID8gdmFsdWUudG9BcnJheSgpIDogdmFsdWU7XG59XG5cbmNvbnN0IHdhcm5EZXByZWNhdGVkT3B0aW9ucyA9IG9uY2UoZmllbGQgPT5cbiAgY29uc29sZS53YXJuKG9uZUxpbmVgXG4gIERlY2FwIENNUyBjb25maWc6ICR7ZmllbGQuZ2V0KCduYW1lJyl9IGZpZWxkOiBwcm9wZXJ0eSBcIm9wdGlvbnNcIiBoYXMgYmVlbiBkZXByZWNhdGVkIGZvciB0aGVcbiAgJHtmaWVsZC5nZXQoJ3dpZGdldCcpfSB3aWRnZXQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgbmV4dCBtYWpvciByZWxlYXNlLiBSYXRoZXIgdGhhblxuICBcXGBmaWVsZC5vcHRpb25zLm1lZGlhX2xpYnJhcnlcXGAsIGFwcGx5IG1lZGlhIGxpYnJhcnkgb3B0aW9ucyBmb3IgdGhpcyB3aWRnZXQgdW5kZXJcbiAgXFxgZmllbGQubWVkaWFfbGlicmFyeVxcYC5cbmApLFxuKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gd2l0aEZpbGVDb250cm9sKHsgZm9ySW1hZ2UgfSA9IHt9KSB7XG4gIHJldHVybiBjbGFzcyBGaWxlQ29udHJvbCBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gICAgc3RhdGljIHByb3BUeXBlcyA9IHtcbiAgICAgIGZpZWxkOiBQcm9wVHlwZXMub2JqZWN0LmlzUmVxdWlyZWQsXG4gICAgICBnZXRBc3NldDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG1lZGlhUGF0aHM6IEltbXV0YWJsZVByb3BUeXBlcy5tYXAuaXNSZXF1aXJlZCxcbiAgICAgIG9uQWRkQXNzZXQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgICBvbkNoYW5nZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uUmVtb3ZlSW5zZXJ0ZWRNZWRpYTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uT3Blbk1lZGlhTGlicmFyeTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uQ2xlYXJNZWRpYUNvbnRyb2w6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgICBvblJlbW92ZU1lZGlhQ29udHJvbDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIGNsYXNzTmFtZVdyYXBwZXI6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgICAgIHZhbHVlOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtcbiAgICAgICAgUHJvcFR5cGVzLnN0cmluZyxcbiAgICAgICAgUHJvcFR5cGVzLmFycmF5T2YoUHJvcFR5cGVzLnN0cmluZyksXG4gICAgICAgIEltbXV0YWJsZVByb3BUeXBlcy5saXN0T2YoUHJvcFR5cGVzLnN0cmluZyksXG4gICAgICBdKSxcbiAgICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgfTtcblxuICAgIHN0YXRpYyBkZWZhdWx0UHJvcHMgPSB7XG4gICAgICB2YWx1ZTogJycsXG4gICAgfTtcblxuICAgIGNvbnN0cnVjdG9yKHByb3BzKSB7XG4gICAgICBzdXBlcihwcm9wcyk7XG4gICAgICB0aGlzLmNvbnRyb2xJRCA9IHV1aWQoKTtcbiAgICB9XG5cbiAgICBzaG91bGRDb21wb25lbnRVcGRhdGUobmV4dFByb3BzKSB7XG4gICAgICAvKipcbiAgICAgICAqIEFsd2F5cyB1cGRhdGUgaWYgdGhlIHZhbHVlIG9yIGdldEFzc2V0IGNoYW5nZXMuXG4gICAgICAgKi9cbiAgICAgIGlmICh0aGlzLnByb3BzLnZhbHVlICE9PSBuZXh0UHJvcHMudmFsdWUgfHwgdGhpcy5wcm9wcy5nZXRBc3NldCAhPT0gbmV4dFByb3BzLmdldEFzc2V0KSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuXG4gICAgICAvKipcbiAgICAgICAqIElmIHRoZXJlIGlzIGEgbWVkaWEgcGF0aCBmb3IgdGhpcyBjb250cm9sIGluIHRoZSBzdGF0ZSBvYmplY3QsIGFuZCB0aGF0XG4gICAgICAgKiBwYXRoIGlzIGRpZmZlcmVudCB0aGFuIHRoZSB2YWx1ZSBpbiBgbmV4dFByb3BzYCwgdXBkYXRlLlxuICAgICAgICovXG4gICAgICBjb25zdCBtZWRpYVBhdGggPSBuZXh0UHJvcHMubWVkaWFQYXRocy5nZXQodGhpcy5jb250cm9sSUQpO1xuICAgICAgaWYgKG1lZGlhUGF0aCAmJiBuZXh0UHJvcHMudmFsdWUgIT09IG1lZGlhUGF0aCkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGNvbXBvbmVudERpZFVwZGF0ZSgpIHtcbiAgICAgIGNvbnN0IHsgbWVkaWFQYXRocywgdmFsdWUsIG9uUmVtb3ZlSW5zZXJ0ZWRNZWRpYSwgb25DaGFuZ2UgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBtZWRpYVBhdGggPSBtZWRpYVBhdGhzLmdldCh0aGlzLmNvbnRyb2xJRCk7XG4gICAgICBpZiAobWVkaWFQYXRoICYmIG1lZGlhUGF0aCAhPT0gdmFsdWUpIHtcbiAgICAgICAgb25DaGFuZ2UobWVkaWFQYXRoKTtcbiAgICAgIH0gZWxzZSBpZiAobWVkaWFQYXRoICYmIG1lZGlhUGF0aCA9PT0gdmFsdWUpIHtcbiAgICAgICAgb25SZW1vdmVJbnNlcnRlZE1lZGlhKHRoaXMuY29udHJvbElEKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb21wb25lbnRXaWxsVW5tb3VudCgpIHtcbiAgICAgIHRoaXMucHJvcHMub25SZW1vdmVNZWRpYUNvbnRyb2wodGhpcy5jb250cm9sSUQpO1xuICAgIH1cblxuICAgIGhhbmRsZUNoYW5nZSA9IGUgPT4ge1xuICAgICAgY29uc3QgeyBmaWVsZCwgb25PcGVuTWVkaWFMaWJyYXJ5LCB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgIGNvbnN0IG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucyA9IHRoaXMuZ2V0TWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zKCk7XG5cbiAgICAgIHJldHVybiBvbk9wZW5NZWRpYUxpYnJhcnkoe1xuICAgICAgICBjb250cm9sSUQ6IHRoaXMuY29udHJvbElELFxuICAgICAgICBmb3JJbWFnZSxcbiAgICAgICAgcHJpdmF0ZVVwbG9hZDogZmllbGQuZ2V0KCdwcml2YXRlJyksXG4gICAgICAgIHZhbHVlOiB2YWx1ZUxpc3RUb0FycmF5KHZhbHVlKSxcbiAgICAgICAgYWxsb3dNdWx0aXBsZTogISFtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMuZ2V0KCdhbGxvd19tdWx0aXBsZScsIHRydWUpLFxuICAgICAgICBjb25maWc6IG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycpLFxuICAgICAgICBmaWVsZCxcbiAgICAgIH0pO1xuICAgIH07XG5cbiAgICBoYW5kbGVVcmwgPSBzdWJqZWN0ID0+IGUgPT4ge1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgICBjb25zdCB1cmwgPSB3aW5kb3cucHJvbXB0KHRoaXMucHJvcHMudChgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS5wcm9tcHRVcmxgKSk7XG5cbiAgICAgIHJldHVybiB0aGlzLnByb3BzLm9uQ2hhbmdlKHVybCk7XG4gICAgfTtcblxuICAgIGhhbmRsZVJlbW92ZSA9IGUgPT4ge1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgdGhpcy5wcm9wcy5vbkNsZWFyTWVkaWFDb250cm9sKHRoaXMuY29udHJvbElEKTtcbiAgICAgIHJldHVybiB0aGlzLnByb3BzLm9uQ2hhbmdlKCcnKTtcbiAgICB9O1xuXG4gICAgb25SZW1vdmVPbmUgPSBpbmRleCA9PiAoKSA9PiB7XG4gICAgICBjb25zdCB7IHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgdmFsdWUuc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgIHJldHVybiB0aGlzLnByb3BzLm9uQ2hhbmdlKHNpemVPZlZhbHVlKHZhbHVlKSA+IDAgPyBbLi4udmFsdWVdIDogbnVsbCk7XG4gICAgfTtcblxuICAgIG9uUmVwbGFjZU9uZSA9IGluZGV4ID0+ICgpID0+IHtcbiAgICAgIGNvbnN0IHsgZmllbGQsIG9uT3Blbk1lZGlhTGlicmFyeSwgdmFsdWUgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMgPSB0aGlzLmdldE1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucygpO1xuXG4gICAgICByZXR1cm4gb25PcGVuTWVkaWFMaWJyYXJ5KHtcbiAgICAgICAgY29udHJvbElEOiB0aGlzLmNvbnRyb2xJRCxcbiAgICAgICAgZm9ySW1hZ2UsXG4gICAgICAgIHByaXZhdGVVcGxvYWQ6IGZpZWxkLmdldCgncHJpdmF0ZScpLFxuICAgICAgICB2YWx1ZTogdmFsdWVMaXN0VG9BcnJheSh2YWx1ZSksXG4gICAgICAgIHJlcGxhY2VJbmRleDogaW5kZXgsXG4gICAgICAgIGFsbG93TXVsdGlwbGU6IGZhbHNlLFxuICAgICAgICBjb25maWc6IG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycpLFxuICAgICAgICBmaWVsZCxcbiAgICAgIH0pO1xuICAgIH07XG5cbiAgICBnZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMgPSAoKSA9PiB7XG4gICAgICBjb25zdCB7IGZpZWxkIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgICBpZiAoZmllbGQuaGFzSW4oWydvcHRpb25zJywgJ21lZGlhX2xpYnJhcnknXSkpIHtcbiAgICAgICAgd2FybkRlcHJlY2F0ZWRPcHRpb25zKGZpZWxkKTtcbiAgICAgICAgcmV0dXJuIGZpZWxkLmdldEluKFsnb3B0aW9ucycsICdtZWRpYV9saWJyYXJ5J10sIE1hcCgpKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZpZWxkLmdldCgnbWVkaWFfbGlicmFyeScsIE1hcCgpKTtcbiAgICB9O1xuXG4gICAgYWxsb3dzTXVsdGlwbGUgPSAoKSA9PiB7XG4gICAgICBjb25zdCBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMgPSB0aGlzLmdldE1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucygpO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zLmdldCgnY29uZmlnJywgZmFsc2UpICYmXG4gICAgICAgIG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycpLmdldCgnbXVsdGlwbGUnLCBmYWxzZSlcbiAgICAgICk7XG4gICAgfTtcblxuICAgIG9uU29ydEVuZCA9ICh7IG9sZEluZGV4LCBuZXdJbmRleCB9KSA9PiB7XG4gICAgICBjb25zdCB7IHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgbmV3VmFsdWUgPSBhcnJheU1vdmUodmFsdWUsIG9sZEluZGV4LCBuZXdJbmRleCk7XG4gICAgICByZXR1cm4gdGhpcy5wcm9wcy5vbkNoYW5nZShuZXdWYWx1ZSk7XG4gICAgfTtcblxuICAgIGdldFZhbGlkYXRlVmFsdWUgPSAoKSA9PiB7XG4gICAgICBjb25zdCB7IHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgIHJldHVybiBpc011bHRpcGxlKHZhbHVlKSA/IHZhbHVlLm1hcCh2ID0+IGJhc2VuYW1lKHYpKSA6IGJhc2VuYW1lKHZhbHVlKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH07XG5cbiAgICByZW5kZXJGaWxlTGluayA9IHZhbHVlID0+IHtcbiAgICAgIGNvbnN0IHNpemUgPSBNQVhfRElTUExBWV9MRU5HVEg7XG4gICAgICBpZiAoIXZhbHVlIHx8IHZhbHVlLmxlbmd0aCA8PSBzaXplKSB7XG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHRleHQgPSBgJHt2YWx1ZS5zbGljZSgwLCBzaXplIC8gMil9XFx1MjAyNiR7dmFsdWUuc2xpY2UoLShzaXplIC8gMikgKyAxKX1gO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPEZpbGVMaW5rIGhyZWY9e3ZhbHVlfSByZWw9XCJub29wZW5lclwiIHRhcmdldD1cIl9ibGFua1wiPlxuICAgICAgICAgIHt0ZXh0fVxuICAgICAgICA8L0ZpbGVMaW5rPlxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgcmVuZGVyRmlsZUxpbmtzID0gKCkgPT4ge1xuICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcblxuICAgICAgaWYgKGlzTXVsdGlwbGUodmFsdWUpKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPEZpbGVMaW5rcz5cbiAgICAgICAgICAgIDxGaWxlTGlua0xpc3Q+XG4gICAgICAgICAgICAgIHt2YWx1ZS5tYXAodmFsID0+IChcbiAgICAgICAgICAgICAgICA8bGkga2V5PXt2YWx9Pnt0aGlzLnJlbmRlckZpbGVMaW5rKHZhbCl9PC9saT5cbiAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICA8L0ZpbGVMaW5rTGlzdD5cbiAgICAgICAgICA8L0ZpbGVMaW5rcz5cbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiA8RmlsZUxpbmtzPnt0aGlzLnJlbmRlckZpbGVMaW5rKHZhbHVlKX08L0ZpbGVMaW5rcz47XG4gICAgfTtcblxuICAgIHJlbmRlckltYWdlcyA9ICgpID0+IHtcbiAgICAgIGNvbnN0IHsgZ2V0QXNzZXQsIHZhbHVlLCBmaWVsZCB9ID0gdGhpcy5wcm9wcztcblxuICAgICAgaWYgKGlzTXVsdGlwbGUodmFsdWUpKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPFNvcnRhYmxlTXVsdGlJbWFnZVdyYXBwZXJcbiAgICAgICAgICAgIGl0ZW1zPXt2YWx1ZX1cbiAgICAgICAgICAgIG9uU29ydEVuZD17dGhpcy5vblNvcnRFbmR9XG4gICAgICAgICAgICBvblJlbW92ZU9uZT17dGhpcy5vblJlbW92ZU9uZX1cbiAgICAgICAgICAgIG9uUmVwbGFjZU9uZT17dGhpcy5vblJlcGxhY2VPbmV9XG4gICAgICAgICAgICBkaXN0YW5jZT17NH1cbiAgICAgICAgICAgIGdldEFzc2V0PXtnZXRBc3NldH1cbiAgICAgICAgICAgIGZpZWxkPXtmaWVsZH1cbiAgICAgICAgICAgIGF4aXM9XCJ4eVwiXG4gICAgICAgICAgICBsb2NrVG9Db250YWluZXJFZGdlcz17dHJ1ZX1cbiAgICAgICAgICA+PC9Tb3J0YWJsZU11bHRpSW1hZ2VXcmFwcGVyPlxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBzcmMgPSBnZXRBc3NldCh2YWx1ZSwgZmllbGQpO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPEltYWdlV3JhcHBlcj5cbiAgICAgICAgICA8SW1hZ2Ugc3JjPXtzcmMgfHwgJyd9IC8+XG4gICAgICAgIDwvSW1hZ2VXcmFwcGVyPlxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgcmVuZGVyU2VsZWN0aW9uID0gc3ViamVjdCA9PiB7XG4gICAgICBjb25zdCB7IHQsIGZpZWxkIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgYWxsb3dzTXVsdGlwbGUgPSB0aGlzLmFsbG93c011bHRpcGxlKCk7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2PlxuICAgICAgICAgIHtmb3JJbWFnZSA/IHRoaXMucmVuZGVySW1hZ2VzKCkgOiBudWxsfVxuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICB7Zm9ySW1hZ2UgPyBudWxsIDogdGhpcy5yZW5kZXJGaWxlTGlua3MoKX1cbiAgICAgICAgICAgIDxGaWxlV2lkZ2V0QnV0dG9uIG9uQ2xpY2s9e3RoaXMuaGFuZGxlQ2hhbmdlfT5cbiAgICAgICAgICAgICAge3QoXG4gICAgICAgICAgICAgICAgYGVkaXRvci5lZGl0b3JXaWRnZXRzLiR7c3ViamVjdH0uJHtcbiAgICAgICAgICAgICAgICAgIHRoaXMuYWxsb3dzTXVsdGlwbGUoKSA/ICdhZGRNb3JlJyA6ICdjaG9vc2VEaWZmZXJlbnQnXG4gICAgICAgICAgICAgICAgfWAsXG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b24+XG4gICAgICAgICAgICB7ZmllbGQuZ2V0KCdjaG9vc2VfdXJsJywgdHJ1ZSkgJiYgIXRoaXMuYWxsb3dzTXVsdGlwbGUoKSA/IChcbiAgICAgICAgICAgICAgPEZpbGVXaWRnZXRCdXR0b24gb25DbGljaz17dGhpcy5oYW5kbGVVcmwoc3ViamVjdCl9PlxuICAgICAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LnJlcGxhY2VVcmxgKX1cbiAgICAgICAgICAgICAgPC9GaWxlV2lkZ2V0QnV0dG9uPlxuICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvblJlbW92ZSBvbkNsaWNrPXt0aGlzLmhhbmRsZVJlbW92ZX0+XG4gICAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LnJlbW92ZSR7YWxsb3dzTXVsdGlwbGUgPyAnQWxsJyA6ICcnfWApfVxuICAgICAgICAgICAgPC9GaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICk7XG4gICAgfTtcblxuICAgIHJlbmRlck5vU2VsZWN0aW9uID0gc3ViamVjdCA9PiB7XG4gICAgICBjb25zdCB7IHQsIGZpZWxkIH0gPSB0aGlzLnByb3BzO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPD5cbiAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvbiBvbkNsaWNrPXt0aGlzLmhhbmRsZUNoYW5nZX0+XG4gICAgICAgICAgICB7dChgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS5jaG9vc2Uke3RoaXMuYWxsb3dzTXVsdGlwbGUoKSA/ICdNdWx0aXBsZScgOiAnJ31gKX1cbiAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b24+XG4gICAgICAgICAge2ZpZWxkLmdldCgnY2hvb3NlX3VybCcsIHRydWUpID8gKFxuICAgICAgICAgICAgPEZpbGVXaWRnZXRCdXR0b24gb25DbGljaz17dGhpcy5oYW5kbGVVcmwoc3ViamVjdCl9PlxuICAgICAgICAgICAgICB7dChgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS5jaG9vc2VVcmxgKX1cbiAgICAgICAgICAgIDwvRmlsZVdpZGdldEJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC8+XG4gICAgICApO1xuICAgIH07XG5cbiAgICByZW5kZXIoKSB7XG4gICAgICBjb25zdCB7IHZhbHVlLCBjbGFzc05hbWVXcmFwcGVyIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3Qgc3ViamVjdCA9IGZvckltYWdlID8gJ2ltYWdlJyA6ICdmaWxlJztcblxuICAgICAgcmV0dXJuIChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e2NsYXNzTmFtZVdyYXBwZXJ9PlxuICAgICAgICAgIDxzcGFuPnt2YWx1ZSA/IHRoaXMucmVuZGVyU2VsZWN0aW9uKHN1YmplY3QpIDogdGhpcy5yZW5kZXJOb1NlbGVjdGlvbihzdWJqZWN0KX08L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKTtcbiAgICB9XG4gIH07XG59XG4iXX0= */",
|
|
117
|
+
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy93aXRoRmlsZUNvbnRyb2wuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBOEhjIiwiZmlsZSI6Ii4uLy4uL3NyYy93aXRoRmlsZUNvbnRyb2wuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBJbW11dGFibGVQcm9wVHlwZXMgZnJvbSAncmVhY3QtaW1tdXRhYmxlLXByb3B0eXBlcyc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9jb3JlJztcbmltcG9ydCB7IE1hcCwgTGlzdCB9IGZyb20gJ2ltbXV0YWJsZSc7XG5pbXBvcnQgeyBvbmNlIH0gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IHY0IGFzIHV1aWQgfSBmcm9tICd1dWlkJztcbmltcG9ydCB7IG9uZUxpbmUgfSBmcm9tICdjb21tb24tdGFncyc7XG5pbXBvcnQge1xuICBsZW5ndGhzLFxuICBjb21wb25lbnRzLFxuICBidXR0b25zLFxuICBib3JkZXJzLFxuICBlZmZlY3RzLFxuICBzaGFkb3dzLFxuICBJY29uQnV0dG9uLFxufSBmcm9tICdkZWNhcC1jbXMtdWktZGVmYXVsdCc7XG5pbXBvcnQgeyBiYXNlbmFtZSB9IGZyb20gJ2RlY2FwLWNtcy1saWItdXRpbCc7XG5pbXBvcnQgeyBhcnJheU1vdmVJbW11dGFibGUgYXMgYXJyYXlNb3ZlIH0gZnJvbSAnYXJyYXktbW92ZSc7XG5pbXBvcnQge1xuICBEbmRDb250ZXh0LFxuICBNb3VzZVNlbnNvcixcbiAgVG91Y2hTZW5zb3IsXG4gIGNsb3Nlc3RDZW50ZXIsXG4gIHVzZVNlbnNvcixcbiAgdXNlU2Vuc29ycyxcbn0gZnJvbSAnQGRuZC1raXQvY29yZSc7XG5pbXBvcnQgeyBTb3J0YWJsZUNvbnRleHQsIHVzZVNvcnRhYmxlIH0gZnJvbSAnQGRuZC1raXQvc29ydGFibGUnO1xuaW1wb3J0IHsgQ1NTIH0gZnJvbSAnQGRuZC1raXQvdXRpbGl0aWVzJztcbmltcG9ydCB7IHJlc3RyaWN0VG9QYXJlbnRFbGVtZW50IH0gZnJvbSAnQGRuZC1raXQvbW9kaWZpZXJzJztcblxuY29uc3QgTUFYX0RJU1BMQVlfTEVOR1RIID0gNTA7XG5cbmNvbnN0IEltYWdlV3JhcHBlciA9IHN0eWxlZC5kaXZgXG4gIGZsZXgtYmFzaXM6IDE1NXB4O1xuICB3aWR0aDogMTU1cHg7XG4gIGhlaWdodDogMTAwcHg7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgYm9yZGVyOiAke2JvcmRlcnMudGV4dEZpZWxkfTtcbiAgYm9yZGVyLXJhZGl1czogJHtsZW5ndGhzLmJvcmRlclJhZGl1c307XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gICR7ZWZmZWN0cy5jaGVja2VyYm9hcmR9O1xuICAke3NoYWRvd3MuaW5zZXR9O1xuICBjdXJzb3I6ICR7cHJvcHMgPT4gKHByb3BzLnNvcnRhYmxlID8gJ3BvaW50ZXInIDogJ2F1dG8nKX07XG5gO1xuXG5jb25zdCBTb3J0YWJsZUltYWdlQnV0dG9uc1dyYXBwZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY29sdW1uLWdhcDogMTBweDtcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbmA7XG5cbmNvbnN0IFN0eWxlZEltYWdlID0gc3R5bGVkLmltZ2BcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcbmA7XG5cbmZ1bmN0aW9uIEltYWdlKHByb3BzKSB7XG4gIHJldHVybiA8U3R5bGVkSW1hZ2Ugcm9sZT1cInByZXNlbnRhdGlvblwiIHsuLi5wcm9wc30gLz47XG59XG5cbmZ1bmN0aW9uIFNvcnRhYmxlSW1hZ2VCdXR0b25zKHsgb25SZW1vdmUsIG9uUmVwbGFjZSB9KSB7XG4gIHJldHVybiAoXG4gICAgPFNvcnRhYmxlSW1hZ2VCdXR0b25zV3JhcHBlcj5cbiAgICAgIDxJY29uQnV0dG9uIHNpemU9XCJzbWFsbFwiIHR5cGU9XCJtZWRpYVwiIG9uQ2xpY2s9e29uUmVwbGFjZX0+PC9JY29uQnV0dG9uPlxuICAgICAgPEljb25CdXR0b24gc2l6ZT1cInNtYWxsXCIgdHlwZT1cImNsb3NlXCIgb25DbGljaz17b25SZW1vdmV9PjwvSWNvbkJ1dHRvbj5cbiAgICA8L1NvcnRhYmxlSW1hZ2VCdXR0b25zV3JhcHBlcj5cbiAgKTtcbn1cblxuZnVuY3Rpb24gU29ydGFibGVJbWFnZShwcm9wcykge1xuICBjb25zdCB7IGF0dHJpYnV0ZXMsIGxpc3RlbmVycywgc2V0Tm9kZVJlZiwgdHJhbnNmb3JtLCB0cmFuc2l0aW9uIH0gPSB1c2VTb3J0YWJsZSh7XG4gICAgaWQ6IHByb3BzLmlkLFxuICB9KTtcblxuICBjb25zdCBzdHlsZSA9IHtcbiAgICB0cmFuc2Zvcm06IENTUy5UcmFuc2Zvcm0udG9TdHJpbmcodHJhbnNmb3JtKSxcbiAgICB0cmFuc2l0aW9uLFxuICB9O1xuXG4gIGNvbnN0IHsgaXRlbVZhbHVlLCBnZXRBc3NldCwgZmllbGQsIG9uUmVtb3ZlLCBvblJlcGxhY2UgfSA9IHByb3BzO1xuXG4gIHJldHVybiAoXG4gICAgPGRpdiByZWY9e3NldE5vZGVSZWZ9IHN0eWxlPXtzdHlsZX0gey4uLmF0dHJpYnV0ZXN9IHsuLi5saXN0ZW5lcnN9PlxuICAgICAgPEltYWdlV3JhcHBlciBzb3J0YWJsZT5cbiAgICAgICAgPEltYWdlIHNyYz17Z2V0QXNzZXQoaXRlbVZhbHVlLCBmaWVsZCkgfHwgJyd9IC8+XG4gICAgICA8L0ltYWdlV3JhcHBlcj5cbiAgICAgIDxTb3J0YWJsZUltYWdlQnV0dG9uc1xuICAgICAgICBpdGVtPXtpdGVtVmFsdWV9XG4gICAgICAgIG9uUmVtb3ZlPXtvblJlbW92ZX1cbiAgICAgICAgb25SZXBsYWNlPXtvblJlcGxhY2V9XG4gICAgICA+PC9Tb3J0YWJsZUltYWdlQnV0dG9ucz5cbiAgICA8L2Rpdj5cbiAgKTtcbn1cblxuZnVuY3Rpb24gU29ydGFibGVNdWx0aUltYWdlV3JhcHBlcih7XG4gIGl0ZW1zLFxuICBnZXRBc3NldCxcbiAgZmllbGQsXG4gIG9uU29ydEVuZCxcbiAgb25SZW1vdmVPbmUsXG4gIG9uUmVwbGFjZU9uZSxcbn0pIHtcbiAgY29uc3QgYWN0aXZhdGlvbkNvbnN0cmFpbnQgPSB7IGRpc3RhbmNlOiA0IH07XG4gIGNvbnN0IHNlbnNvcnMgPSB1c2VTZW5zb3JzKFxuICAgIHVzZVNlbnNvcihNb3VzZVNlbnNvciwgeyBhY3RpdmF0aW9uQ29uc3RyYWludCB9KSxcbiAgICB1c2VTZW5zb3IoVG91Y2hTZW5zb3IsIHsgYWN0aXZhdGlvbkNvbnN0cmFpbnQgfSksXG4gICk7XG5cbiAgZnVuY3Rpb24gaGFuZGxlU29ydEVuZCh7IGFjdGl2ZSwgb3ZlciB9KSB7XG4gICAgb25Tb3J0RW5kKHtcbiAgICAgIG9sZEluZGV4OiBpdGVtcy5maW5kSW5kZXgoaXRlbSA9PiBpdGVtLmlkID09PSBhY3RpdmUuaWQpLFxuICAgICAgbmV3SW5kZXg6IGl0ZW1zLmZpbmRJbmRleChpdGVtID0+IGl0ZW0uaWQgPT09IG92ZXIuaWQpLFxuICAgIH0pO1xuICB9XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2XG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcmVhY3Qvbm8tdW5rbm93bi1wcm9wZXJ0eVxuICAgICAgY3NzPXtjc3NgXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGB9XG4gICAgPlxuICAgICAgPERuZENvbnRleHRcbiAgICAgICAgbW9kaWZpZXJzPXtbcmVzdHJpY3RUb1BhcmVudEVsZW1lbnRdfVxuICAgICAgICBjb2xsaXNpb25EZXRlY3Rpb249e2Nsb3Nlc3RDZW50ZXJ9XG4gICAgICAgIHNlbnNvcnM9e3NlbnNvcnN9XG4gICAgICAgIG9uRHJhZ0VuZD17aGFuZGxlU29ydEVuZH1cbiAgICAgID5cbiAgICAgICAgPFNvcnRhYmxlQ29udGV4dCBpdGVtcz17aXRlbXN9PlxuICAgICAgICAgIHtpdGVtcy5tYXAoKGl0ZW0sIGluZGV4KSA9PiAoXG4gICAgICAgICAgICA8U29ydGFibGVJbWFnZVxuICAgICAgICAgICAgICBrZXk9e2l0ZW0uaWR9XG4gICAgICAgICAgICAgIGlkPXtpdGVtLmlkfVxuICAgICAgICAgICAgICBpbmRleD17aW5kZXh9XG4gICAgICAgICAgICAgIGl0ZW1WYWx1ZT17aXRlbS52YWx1ZX1cbiAgICAgICAgICAgICAgZ2V0QXNzZXQ9e2dldEFzc2V0fVxuICAgICAgICAgICAgICBmaWVsZD17ZmllbGR9XG4gICAgICAgICAgICAgIG9uUmVtb3ZlPXtvblJlbW92ZU9uZShpbmRleCl9XG4gICAgICAgICAgICAgIG9uUmVwbGFjZT17b25SZXBsYWNlT25lKGluZGV4KX1cbiAgICAgICAgICAgID48L1NvcnRhYmxlSW1hZ2U+XG4gICAgICAgICAgKSl9XG4gICAgICAgIDwvU29ydGFibGVDb250ZXh0PlxuICAgICAgPC9EbmRDb250ZXh0PlxuICAgIDwvZGl2PlxuICApO1xufVxuXG5jb25zdCBGaWxlTGluayA9IHN0eWxlZC5hYFxuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjb2xvcjogaW5oZXJpdDtcblxuICAmOmhvdmVyLFxuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cbmA7XG5cbmNvbnN0IEZpbGVMaW5rcyA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG5gO1xuXG5jb25zdCBGaWxlTGlua0xpc3QgPSBzdHlsZWQudWxgXG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbmA7XG5cbmNvbnN0IEZpbGVXaWRnZXRCdXR0b24gPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtjb21wb25lbnRzLmJhZGdlfTtcbiAgbWFyZ2luLWJvdHRvbTogMTJweDtcbmA7XG5cbmNvbnN0IEZpbGVXaWRnZXRCdXR0b25SZW1vdmUgPSBzdHlsZWQuYnV0dG9uYFxuICAke2J1dHRvbnMuYnV0dG9ufTtcbiAgJHtjb21wb25lbnRzLmJhZGdlRGFuZ2VyfTtcbmA7XG5cbmZ1bmN0aW9uIGlzTXVsdGlwbGUodmFsdWUpIHtcbiAgcmV0dXJuIEFycmF5LmlzQXJyYXkodmFsdWUpIHx8IExpc3QuaXNMaXN0KHZhbHVlKTtcbn1cblxuZnVuY3Rpb24gc2l6ZU9mVmFsdWUodmFsdWUpIHtcbiAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgcmV0dXJuIHZhbHVlLmxlbmd0aDtcbiAgfVxuXG4gIGlmIChMaXN0LmlzTGlzdCh2YWx1ZSkpIHtcbiAgICByZXR1cm4gdmFsdWUuc2l6ZTtcbiAgfVxuXG4gIHJldHVybiB2YWx1ZSA/IDEgOiAwO1xufVxuXG5mdW5jdGlvbiB2YWx1ZUxpc3RUb0FycmF5KHZhbHVlKSB7XG4gIHJldHVybiBMaXN0LmlzTGlzdCh2YWx1ZSkgPyB2YWx1ZS50b0FycmF5KCkgOiB2YWx1ZSA/PyAnJztcbn1cblxuZnVuY3Rpb24gdmFsdWVMaXN0VG9Tb3J0YWJsZUFycmF5KHZhbHVlKSB7XG4gIGlmICghaXNNdWx0aXBsZSh2YWx1ZSkpIHtcbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cblxuICBjb25zdCB2YWx1ZUFycmF5ID0gdmFsdWVMaXN0VG9BcnJheSh2YWx1ZSkubWFwKHZhbHVlID0+ICh7XG4gICAgaWQ6IHV1aWQoKSxcbiAgICB2YWx1ZSxcbiAgfSkpO1xuXG4gIHJldHVybiB2YWx1ZUFycmF5O1xufVxuXG5jb25zdCB3YXJuRGVwcmVjYXRlZE9wdGlvbnMgPSBvbmNlKGZpZWxkID0+XG4gIGNvbnNvbGUud2FybihvbmVMaW5lYFxuICBEZWNhcCBDTVMgY29uZmlnOiAke2ZpZWxkLmdldCgnbmFtZScpfSBmaWVsZDogcHJvcGVydHkgXCJvcHRpb25zXCIgaGFzIGJlZW4gZGVwcmVjYXRlZCBmb3IgdGhlXG4gICR7ZmllbGQuZ2V0KCd3aWRnZXQnKX0gd2lkZ2V0IGFuZCB3aWxsIGJlIHJlbW92ZWQgaW4gdGhlIG5leHQgbWFqb3IgcmVsZWFzZS4gUmF0aGVyIHRoYW5cbiAgXFxgZmllbGQub3B0aW9ucy5tZWRpYV9saWJyYXJ5XFxgLCBhcHBseSBtZWRpYSBsaWJyYXJ5IG9wdGlvbnMgZm9yIHRoaXMgd2lkZ2V0IHVuZGVyXG4gIFxcYGZpZWxkLm1lZGlhX2xpYnJhcnlcXGAuXG5gKSxcbik7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHdpdGhGaWxlQ29udHJvbCh7IGZvckltYWdlIH0gPSB7fSkge1xuICByZXR1cm4gY2xhc3MgRmlsZUNvbnRyb2wgZXh0ZW5kcyBSZWFjdC5Db21wb25lbnQge1xuICAgIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgICBmaWVsZDogUHJvcFR5cGVzLm9iamVjdC5pc1JlcXVpcmVkLFxuICAgICAgZ2V0QXNzZXQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgICBtZWRpYVBhdGhzOiBJbW11dGFibGVQcm9wVHlwZXMubWFwLmlzUmVxdWlyZWQsXG4gICAgICBvbkFkZEFzc2V0OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgb25DaGFuZ2U6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgICBvblJlbW92ZUluc2VydGVkTWVkaWE6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgICBvbk9wZW5NZWRpYUxpYnJhcnk6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgICBvbkNsZWFyTWVkaWFDb250cm9sOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgb25SZW1vdmVNZWRpYUNvbnRyb2w6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgICBjbGFzc05hbWVXcmFwcGVyOiBQcm9wVHlwZXMuc3RyaW5nLmlzUmVxdWlyZWQsXG4gICAgICB2YWx1ZTogUHJvcFR5cGVzLm9uZU9mVHlwZShbXG4gICAgICAgIFByb3BUeXBlcy5zdHJpbmcsXG4gICAgICAgIFByb3BUeXBlcy5hcnJheU9mKFByb3BUeXBlcy5zdHJpbmcpLFxuICAgICAgICBJbW11dGFibGVQcm9wVHlwZXMubGlzdE9mKFByb3BUeXBlcy5zdHJpbmcpLFxuICAgICAgXSksXG4gICAgICB0OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIH07XG5cbiAgICBzdGF0aWMgZGVmYXVsdFByb3BzID0ge1xuICAgICAgdmFsdWU6ICcnLFxuICAgIH07XG5cbiAgICBjb25zdHJ1Y3Rvcihwcm9wcykge1xuICAgICAgc3VwZXIocHJvcHMpO1xuICAgICAgdGhpcy5jb250cm9sSUQgPSB1dWlkKCk7XG4gICAgfVxuXG4gICAgc2hvdWxkQ29tcG9uZW50VXBkYXRlKG5leHRQcm9wcykge1xuICAgICAgLyoqXG4gICAgICAgKiBBbHdheXMgdXBkYXRlIGlmIHRoZSB2YWx1ZSBvciBnZXRBc3NldCBjaGFuZ2VzLlxuICAgICAgICovXG4gICAgICBpZiAodGhpcy5wcm9wcy52YWx1ZSAhPT0gbmV4dFByb3BzLnZhbHVlIHx8IHRoaXMucHJvcHMuZ2V0QXNzZXQgIT09IG5leHRQcm9wcy5nZXRBc3NldCkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgLyoqXG4gICAgICAgKiBJZiB0aGVyZSBpcyBhIG1lZGlhIHBhdGggZm9yIHRoaXMgY29udHJvbCBpbiB0aGUgc3RhdGUgb2JqZWN0LCBhbmQgdGhhdFxuICAgICAgICogcGF0aCBpcyBkaWZmZXJlbnQgdGhhbiB0aGUgdmFsdWUgaW4gYG5leHRQcm9wc2AsIHVwZGF0ZS5cbiAgICAgICAqL1xuICAgICAgY29uc3QgbWVkaWFQYXRoID0gbmV4dFByb3BzLm1lZGlhUGF0aHMuZ2V0KHRoaXMuY29udHJvbElEKTtcbiAgICAgIGlmIChtZWRpYVBhdGggJiYgbmV4dFByb3BzLnZhbHVlICE9PSBtZWRpYVBhdGgpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBjb21wb25lbnREaWRVcGRhdGUoKSB7XG4gICAgICBjb25zdCB7IG1lZGlhUGF0aHMsIHZhbHVlLCBvblJlbW92ZUluc2VydGVkTWVkaWEsIG9uQ2hhbmdlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgbWVkaWFQYXRoID0gbWVkaWFQYXRocy5nZXQodGhpcy5jb250cm9sSUQpO1xuICAgICAgaWYgKG1lZGlhUGF0aCAmJiBtZWRpYVBhdGggIT09IHZhbHVlKSB7XG4gICAgICAgIG9uQ2hhbmdlKG1lZGlhUGF0aCk7XG4gICAgICB9IGVsc2UgaWYgKG1lZGlhUGF0aCAmJiBtZWRpYVBhdGggPT09IHZhbHVlKSB7XG4gICAgICAgIG9uUmVtb3ZlSW5zZXJ0ZWRNZWRpYSh0aGlzLmNvbnRyb2xJRCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29tcG9uZW50V2lsbFVubW91bnQoKSB7XG4gICAgICB0aGlzLnByb3BzLm9uUmVtb3ZlTWVkaWFDb250cm9sKHRoaXMuY29udHJvbElEKTtcbiAgICB9XG5cbiAgICBoYW5kbGVDaGFuZ2UgPSBlID0+IHtcbiAgICAgIGNvbnN0IHsgZmllbGQsIG9uT3Blbk1lZGlhTGlicmFyeSwgdmFsdWUgfSA9IHRoaXMucHJvcHM7XG4gICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICBjb25zdCBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMgPSB0aGlzLmdldE1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucygpO1xuXG4gICAgICByZXR1cm4gb25PcGVuTWVkaWFMaWJyYXJ5KHtcbiAgICAgICAgY29udHJvbElEOiB0aGlzLmNvbnRyb2xJRCxcbiAgICAgICAgZm9ySW1hZ2UsXG4gICAgICAgIHByaXZhdGVVcGxvYWQ6IGZpZWxkLmdldCgncHJpdmF0ZScpLFxuICAgICAgICB2YWx1ZTogdmFsdWVMaXN0VG9BcnJheSh2YWx1ZSksXG4gICAgICAgIGFsbG93TXVsdGlwbGU6ICEhbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zLmdldCgnYWxsb3dfbXVsdGlwbGUnLCB0cnVlKSxcbiAgICAgICAgY29uZmlnOiBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMuZ2V0KCdjb25maWcnKSxcbiAgICAgICAgZmllbGQsXG4gICAgICB9KTtcbiAgICB9O1xuXG4gICAgaGFuZGxlVXJsID0gc3ViamVjdCA9PiBlID0+IHtcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcblxuICAgICAgY29uc3QgdXJsID0gd2luZG93LnByb21wdCh0aGlzLnByb3BzLnQoYGVkaXRvci5lZGl0b3JXaWRnZXRzLiR7c3ViamVjdH0ucHJvbXB0VXJsYCkpO1xuXG4gICAgICByZXR1cm4gdGhpcy5wcm9wcy5vbkNoYW5nZSh1cmwpO1xuICAgIH07XG5cbiAgICBoYW5kbGVSZW1vdmUgPSBlID0+IHtcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgIHRoaXMucHJvcHMub25DbGVhck1lZGlhQ29udHJvbCh0aGlzLmNvbnRyb2xJRCk7XG4gICAgICByZXR1cm4gdGhpcy5wcm9wcy5vbkNoYW5nZSgnJyk7XG4gICAgfTtcblxuICAgIG9uUmVtb3ZlT25lID0gaW5kZXggPT4gKCkgPT4ge1xuICAgICAgY29uc3QgdmFsdWUgPSB2YWx1ZUxpc3RUb0FycmF5KHRoaXMucHJvcHMudmFsdWUpO1xuICAgICAgdmFsdWUuc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgIHJldHVybiB0aGlzLnByb3BzLm9uQ2hhbmdlKHNpemVPZlZhbHVlKHZhbHVlKSA+IDAgPyBbLi4udmFsdWVdIDogbnVsbCk7XG4gICAgfTtcblxuICAgIG9uUmVwbGFjZU9uZSA9IGluZGV4ID0+ICgpID0+IHtcbiAgICAgIGNvbnN0IHsgZmllbGQsIG9uT3Blbk1lZGlhTGlicmFyeSwgdmFsdWUgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMgPSB0aGlzLmdldE1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucygpO1xuXG4gICAgICByZXR1cm4gb25PcGVuTWVkaWFMaWJyYXJ5KHtcbiAgICAgICAgY29udHJvbElEOiB0aGlzLmNvbnRyb2xJRCxcbiAgICAgICAgZm9ySW1hZ2UsXG4gICAgICAgIHByaXZhdGVVcGxvYWQ6IGZpZWxkLmdldCgncHJpdmF0ZScpLFxuICAgICAgICB2YWx1ZTogdmFsdWVMaXN0VG9BcnJheSh2YWx1ZSksXG4gICAgICAgIHJlcGxhY2VJbmRleDogaW5kZXgsXG4gICAgICAgIGFsbG93TXVsdGlwbGU6IGZhbHNlLFxuICAgICAgICBjb25maWc6IG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycpLFxuICAgICAgICBmaWVsZCxcbiAgICAgIH0pO1xuICAgIH07XG5cbiAgICBnZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMgPSAoKSA9PiB7XG4gICAgICBjb25zdCB7IGZpZWxkIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgICBpZiAoZmllbGQuaGFzSW4oWydvcHRpb25zJywgJ21lZGlhX2xpYnJhcnknXSkpIHtcbiAgICAgICAgd2FybkRlcHJlY2F0ZWRPcHRpb25zKGZpZWxkKTtcbiAgICAgICAgcmV0dXJuIGZpZWxkLmdldEluKFsnb3B0aW9ucycsICdtZWRpYV9saWJyYXJ5J10sIE1hcCgpKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZpZWxkLmdldCgnbWVkaWFfbGlicmFyeScsIE1hcCgpKTtcbiAgICB9O1xuXG4gICAgYWxsb3dzTXVsdGlwbGUgPSAoKSA9PiB7XG4gICAgICBjb25zdCBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMgPSB0aGlzLmdldE1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucygpO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zLmdldCgnY29uZmlnJywgZmFsc2UpICYmXG4gICAgICAgIG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycpLmdldCgnbXVsdGlwbGUnLCBmYWxzZSlcbiAgICAgICk7XG4gICAgfTtcblxuICAgIG9uU29ydEVuZCA9ICh7IG9sZEluZGV4LCBuZXdJbmRleCB9KSA9PiB7XG4gICAgICBjb25zdCB7IHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgbmV3VmFsdWUgPSBhcnJheU1vdmUodmFsdWUsIG9sZEluZGV4LCBuZXdJbmRleCk7XG4gICAgICByZXR1cm4gdGhpcy5wcm9wcy5vbkNoYW5nZShuZXdWYWx1ZSk7XG4gICAgfTtcblxuICAgIGdldFZhbGlkYXRlVmFsdWUgPSAoKSA9PiB7XG4gICAgICBjb25zdCB7IHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgIHJldHVybiBpc011bHRpcGxlKHZhbHVlKSA/IHZhbHVlLm1hcCh2ID0+IGJhc2VuYW1lKHYpKSA6IGJhc2VuYW1lKHZhbHVlKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH07XG5cbiAgICByZW5kZXJGaWxlTGluayA9IHZhbHVlID0+IHtcbiAgICAgIGNvbnN0IHNpemUgPSBNQVhfRElTUExBWV9MRU5HVEg7XG4gICAgICBpZiAoIXZhbHVlIHx8IHZhbHVlLmxlbmd0aCA8PSBzaXplKSB7XG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHRleHQgPSBgJHt2YWx1ZS5zbGljZSgwLCBzaXplIC8gMil9XFx1MjAyNiR7dmFsdWUuc2xpY2UoLShzaXplIC8gMikgKyAxKX1gO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPEZpbGVMaW5rIGhyZWY9e3ZhbHVlfSByZWw9XCJub29wZW5lclwiIHRhcmdldD1cIl9ibGFua1wiPlxuICAgICAgICAgIHt0ZXh0fVxuICAgICAgICA8L0ZpbGVMaW5rPlxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgcmVuZGVyRmlsZUxpbmtzID0gKCkgPT4ge1xuICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcblxuICAgICAgaWYgKGlzTXVsdGlwbGUodmFsdWUpKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPEZpbGVMaW5rcz5cbiAgICAgICAgICAgIDxGaWxlTGlua0xpc3Q+XG4gICAgICAgICAgICAgIHt2YWx1ZS5tYXAodmFsID0+IChcbiAgICAgICAgICAgICAgICA8bGkga2V5PXt2YWx9Pnt0aGlzLnJlbmRlckZpbGVMaW5rKHZhbCl9PC9saT5cbiAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICA8L0ZpbGVMaW5rTGlzdD5cbiAgICAgICAgICA8L0ZpbGVMaW5rcz5cbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiA8RmlsZUxpbmtzPnt0aGlzLnJlbmRlckZpbGVMaW5rKHZhbHVlKX08L0ZpbGVMaW5rcz47XG4gICAgfTtcblxuICAgIHJlbmRlckltYWdlcyA9ICgpID0+IHtcbiAgICAgIGNvbnN0IHsgZ2V0QXNzZXQsIHZhbHVlLCBmaWVsZCB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGNvbnN0IGl0ZW1zID0gdmFsdWVMaXN0VG9Tb3J0YWJsZUFycmF5KHZhbHVlKTtcbiAgICAgIGlmIChpc011bHRpcGxlKHZhbHVlKSkge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIDxTb3J0YWJsZU11bHRpSW1hZ2VXcmFwcGVyXG4gICAgICAgICAgICBpdGVtcz17aXRlbXN9XG4gICAgICAgICAgICBvblNvcnRFbmQ9e3RoaXMub25Tb3J0RW5kfVxuICAgICAgICAgICAgb25SZW1vdmVPbmU9e3RoaXMub25SZW1vdmVPbmV9XG4gICAgICAgICAgICBvblJlcGxhY2VPbmU9e3RoaXMub25SZXBsYWNlT25lfVxuICAgICAgICAgICAgZGlzdGFuY2U9ezR9XG4gICAgICAgICAgICBnZXRBc3NldD17Z2V0QXNzZXR9XG4gICAgICAgICAgICBmaWVsZD17ZmllbGR9XG4gICAgICAgICAgICBheGlzPVwieHlcIlxuICAgICAgICAgICAgbG9ja1RvQ29udGFpbmVyRWRnZXM9e3RydWV9XG4gICAgICAgICAgPjwvU29ydGFibGVNdWx0aUltYWdlV3JhcHBlcj5cbiAgICAgICAgKTtcbiAgICAgIH1cblxuICAgICAgY29uc3Qgc3JjID0gZ2V0QXNzZXQodmFsdWUsIGZpZWxkKTtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxJbWFnZVdyYXBwZXI+XG4gICAgICAgICAgPEltYWdlIHNyYz17c3JjIHx8ICcnfSAvPlxuICAgICAgICA8L0ltYWdlV3JhcHBlcj5cbiAgICAgICk7XG4gICAgfTtcblxuICAgIHJlbmRlclNlbGVjdGlvbiA9IHN1YmplY3QgPT4ge1xuICAgICAgY29uc3QgeyB0LCBmaWVsZCB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGNvbnN0IGFsbG93c011bHRpcGxlID0gdGhpcy5hbGxvd3NNdWx0aXBsZSgpO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPGRpdj5cbiAgICAgICAgICB7Zm9ySW1hZ2UgPyB0aGlzLnJlbmRlckltYWdlcygpIDogbnVsbH1cbiAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAge2ZvckltYWdlID8gbnVsbCA6IHRoaXMucmVuZGVyRmlsZUxpbmtzKCl9XG4gICAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvbiBvbkNsaWNrPXt0aGlzLmhhbmRsZUNoYW5nZX0+XG4gICAgICAgICAgICAgIHt0KFxuICAgICAgICAgICAgICAgIGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LiR7XG4gICAgICAgICAgICAgICAgICB0aGlzLmFsbG93c011bHRpcGxlKCkgPyAnYWRkTW9yZScgOiAnY2hvb3NlRGlmZmVyZW50J1xuICAgICAgICAgICAgICAgIH1gLFxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgPC9GaWxlV2lkZ2V0QnV0dG9uPlxuICAgICAgICAgICAge2ZpZWxkLmdldCgnY2hvb3NlX3VybCcsIHRydWUpICYmICF0aGlzLmFsbG93c011bHRpcGxlKCkgPyAoXG4gICAgICAgICAgICAgIDxGaWxlV2lkZ2V0QnV0dG9uIG9uQ2xpY2s9e3RoaXMuaGFuZGxlVXJsKHN1YmplY3QpfT5cbiAgICAgICAgICAgICAgICB7dChgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS5yZXBsYWNlVXJsYCl9XG4gICAgICAgICAgICAgIDwvRmlsZVdpZGdldEJ1dHRvbj5cbiAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgPEZpbGVXaWRnZXRCdXR0b25SZW1vdmUgb25DbGljaz17dGhpcy5oYW5kbGVSZW1vdmV9PlxuICAgICAgICAgICAgICB7dChgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS5yZW1vdmUke2FsbG93c011bHRpcGxlID8gJ0FsbCcgOiAnJ31gKX1cbiAgICAgICAgICAgIDwvRmlsZVdpZGdldEJ1dHRvblJlbW92ZT5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICApO1xuICAgIH07XG5cbiAgICByZW5kZXJOb1NlbGVjdGlvbiA9IHN1YmplY3QgPT4ge1xuICAgICAgY29uc3QgeyB0LCBmaWVsZCB9ID0gdGhpcy5wcm9wcztcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDw+XG4gICAgICAgICAgPEZpbGVXaWRnZXRCdXR0b24gb25DbGljaz17dGhpcy5oYW5kbGVDaGFuZ2V9PlxuICAgICAgICAgICAge3QoYGVkaXRvci5lZGl0b3JXaWRnZXRzLiR7c3ViamVjdH0uY2hvb3NlJHt0aGlzLmFsbG93c011bHRpcGxlKCkgPyAnTXVsdGlwbGUnIDogJyd9YCl9XG4gICAgICAgICAgPC9GaWxlV2lkZ2V0QnV0dG9uPlxuICAgICAgICAgIHtmaWVsZC5nZXQoJ2Nob29zZV91cmwnLCB0cnVlKSA/IChcbiAgICAgICAgICAgIDxGaWxlV2lkZ2V0QnV0dG9uIG9uQ2xpY2s9e3RoaXMuaGFuZGxlVXJsKHN1YmplY3QpfT5cbiAgICAgICAgICAgICAge3QoYGVkaXRvci5lZGl0b3JXaWRnZXRzLiR7c3ViamVjdH0uY2hvb3NlVXJsYCl9XG4gICAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b24+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvPlxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgcmVuZGVyKCkge1xuICAgICAgY29uc3QgeyB2YWx1ZSwgY2xhc3NOYW1lV3JhcHBlciB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGNvbnN0IHN1YmplY3QgPSBmb3JJbWFnZSA/ICdpbWFnZScgOiAnZmlsZSc7XG5cbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPXtjbGFzc05hbWVXcmFwcGVyfT5cbiAgICAgICAgICA8c3Bhbj57dmFsdWUgPyB0aGlzLnJlbmRlclNlbGVjdGlvbihzdWJqZWN0KSA6IHRoaXMucmVuZGVyTm9TZWxlY3Rpb24oc3ViamVjdCl9PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICk7XG4gICAgfVxuICB9O1xufVxuIl19 */",
|
|
98
118
|
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
99
119
|
};
|
|
100
|
-
|
|
120
|
+
function SortableMultiImageWrapper({
|
|
101
121
|
items,
|
|
102
122
|
getAsset,
|
|
103
123
|
field,
|
|
124
|
+
onSortEnd,
|
|
104
125
|
onRemoveOne,
|
|
105
126
|
onReplaceOne
|
|
106
|
-
})
|
|
127
|
+
}) {
|
|
128
|
+
const activationConstraint = {
|
|
129
|
+
distance: 4
|
|
130
|
+
};
|
|
131
|
+
const sensors = (0, _core2.useSensors)((0, _core2.useSensor)(_core2.MouseSensor, {
|
|
132
|
+
activationConstraint
|
|
133
|
+
}), (0, _core2.useSensor)(_core2.TouchSensor, {
|
|
134
|
+
activationConstraint
|
|
135
|
+
}));
|
|
136
|
+
function handleSortEnd({
|
|
137
|
+
active,
|
|
138
|
+
over
|
|
139
|
+
}) {
|
|
140
|
+
onSortEnd({
|
|
141
|
+
oldIndex: items.findIndex(item => item.id === active.id),
|
|
142
|
+
newIndex: items.findIndex(item => item.id === over.id)
|
|
143
|
+
});
|
|
144
|
+
}
|
|
107
145
|
return (0, _core.jsx)("div", {
|
|
146
|
+
// eslint-disable-next-line react/no-unknown-property
|
|
108
147
|
css: _ref
|
|
109
|
-
},
|
|
110
|
-
|
|
148
|
+
}, (0, _core.jsx)(_core2.DndContext, {
|
|
149
|
+
modifiers: [_modifiers.restrictToParentElement],
|
|
150
|
+
collisionDetection: _core2.closestCenter,
|
|
151
|
+
sensors: sensors,
|
|
152
|
+
onDragEnd: handleSortEnd
|
|
153
|
+
}, (0, _core.jsx)(_sortable.SortableContext, {
|
|
154
|
+
items: items
|
|
155
|
+
}, items.map((item, index) => (0, _core.jsx)(SortableImage, {
|
|
156
|
+
key: item.id,
|
|
157
|
+
id: item.id,
|
|
111
158
|
index: index,
|
|
112
|
-
itemValue:
|
|
159
|
+
itemValue: item.value,
|
|
113
160
|
getAsset: getAsset,
|
|
114
161
|
field: field,
|
|
115
162
|
onRemove: onRemoveOne(index),
|
|
116
163
|
onReplace: onReplaceOne(index)
|
|
117
|
-
})));
|
|
118
|
-
}
|
|
164
|
+
})))));
|
|
165
|
+
}
|
|
119
166
|
const FileLink = (0, _styledBase.default)("a", {
|
|
120
167
|
target: "e1hax4ql3",
|
|
121
168
|
label: "FileLink"
|
|
@@ -125,7 +172,7 @@ const FileLink = (0, _styledBase.default)("a", {
|
|
|
125
172
|
} : {
|
|
126
173
|
name: "7mbjrw",
|
|
127
174
|
styles: "margin-bottom:20px;font-weight:normal;color:inherit;&:hover,&:active,&:focus{text-decoration:underline;}",
|
|
128
|
-
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy93aXRoRmlsZUNvbnRyb2wuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBMEd5QiIsImZpbGUiOiIuLi8uLi9zcmMvd2l0aEZpbGVDb250cm9sLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgSW1tdXRhYmxlUHJvcFR5cGVzIGZyb20gJ3JlYWN0LWltbXV0YWJsZS1wcm9wdHlwZXMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vY29yZSc7XG5pbXBvcnQgeyBNYXAsIExpc3QgfSBmcm9tICdpbW11dGFibGUnO1xuaW1wb3J0IHsgb25jZSB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgdXVpZCBmcm9tICd1dWlkL3Y0JztcbmltcG9ydCB7IG9uZUxpbmUgfSBmcm9tICdjb21tb24tdGFncyc7XG5pbXBvcnQge1xuICBsZW5ndGhzLFxuICBjb21wb25lbnRzLFxuICBidXR0b25zLFxuICBib3JkZXJzLFxuICBlZmZlY3RzLFxuICBzaGFkb3dzLFxuICBJY29uQnV0dG9uLFxufSBmcm9tICdkZWNhcC1jbXMtdWktZGVmYXVsdCc7XG5pbXBvcnQgeyBiYXNlbmFtZSB9IGZyb20gJ2RlY2FwLWNtcy1saWItdXRpbCc7XG5pbXBvcnQgeyBTb3J0YWJsZUNvbnRhaW5lciwgU29ydGFibGVFbGVtZW50IH0gZnJvbSAncmVhY3Qtc29ydGFibGUtaG9jJztcbmltcG9ydCB7IGFycmF5TW92ZUltbXV0YWJsZSBhcyBhcnJheU1vdmUgfSBmcm9tICdhcnJheS1tb3ZlJztcblxuY29uc3QgTUFYX0RJU1BMQVlfTEVOR1RIID0gNTA7XG5cbmNvbnN0IEltYWdlV3JhcHBlciA9IHN0eWxlZC5kaXZgXG4gIGZsZXgtYmFzaXM6IDE1NXB4O1xuICB3aWR0aDogMTU1cHg7XG4gIGhlaWdodDogMTAwcHg7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgYm9yZGVyOiAke2JvcmRlcnMudGV4dEZpZWxkfTtcbiAgYm9yZGVyLXJhZGl1czogJHtsZW5ndGhzLmJvcmRlclJhZGl1c307XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gICR7ZWZmZWN0cy5jaGVja2VyYm9hcmR9O1xuICAke3NoYWRvd3MuaW5zZXR9O1xuICBjdXJzb3I6ICR7cHJvcHMgPT4gKHByb3BzLnNvcnRhYmxlID8gJ3BvaW50ZXInIDogJ2F1dG8nKX07XG5gO1xuXG5jb25zdCBTb3J0YWJsZUltYWdlQnV0dG9uc1dyYXBwZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY29sdW1uLWdhcDogMTBweDtcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbmA7XG5cbmNvbnN0IFN0eWxlZEltYWdlID0gc3R5bGVkLmltZ2BcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcbmA7XG5cbmZ1bmN0aW9uIEltYWdlKHByb3BzKSB7XG4gIHJldHVybiA8U3R5bGVkSW1hZ2Ugcm9sZT1cInByZXNlbnRhdGlvblwiIHsuLi5wcm9wc30gLz47XG59XG5cbmZ1bmN0aW9uIFNvcnRhYmxlSW1hZ2VCdXR0b25zKHsgb25SZW1vdmUsIG9uUmVwbGFjZSB9KSB7XG4gIHJldHVybiAoXG4gICAgPFNvcnRhYmxlSW1hZ2VCdXR0b25zV3JhcHBlcj5cbiAgICAgIDxJY29uQnV0dG9uIHNpemU9XCJzbWFsbFwiIHR5cGU9XCJtZWRpYVwiIG9uQ2xpY2s9e29uUmVwbGFjZX0+PC9JY29uQnV0dG9uPlxuICAgICAgPEljb25CdXR0b24gc2l6ZT1cInNtYWxsXCIgdHlwZT1cImNsb3NlXCIgb25DbGljaz17b25SZW1vdmV9PjwvSWNvbkJ1dHRvbj5cbiAgICA8L1NvcnRhYmxlSW1hZ2VCdXR0b25zV3JhcHBlcj5cbiAgKTtcbn1cblxuY29uc3QgU29ydGFibGVJbWFnZSA9IFNvcnRhYmxlRWxlbWVudCgoeyBpdGVtVmFsdWUsIGdldEFzc2V0LCBmaWVsZCwgb25SZW1vdmUsIG9uUmVwbGFjZSB9KSA9PiB7XG4gIHJldHVybiAoXG4gICAgPGRpdj5cbiAgICAgIDxJbWFnZVdyYXBwZXIgc29ydGFibGU+XG4gICAgICAgIDxJbWFnZSBzcmM9e2dldEFzc2V0KGl0ZW1WYWx1ZSwgZmllbGQpIHx8ICcnfSAvPlxuICAgICAgPC9JbWFnZVdyYXBwZXI+XG4gICAgICA8U29ydGFibGVJbWFnZUJ1dHRvbnNcbiAgICAgICAgaXRlbT17aXRlbVZhbHVlfVxuICAgICAgICBvblJlbW92ZT17b25SZW1vdmV9XG4gICAgICAgIG9uUmVwbGFjZT17b25SZXBsYWNlfVxuICAgICAgPjwvU29ydGFibGVJbWFnZUJ1dHRvbnM+XG4gICAgPC9kaXY+XG4gICk7XG59KTtcblxuY29uc3QgU29ydGFibGVNdWx0aUltYWdlV3JhcHBlciA9IFNvcnRhYmxlQ29udGFpbmVyKFxuICAoeyBpdGVtcywgZ2V0QXNzZXQsIGZpZWxkLCBvblJlbW92ZU9uZSwgb25SZXBsYWNlT25lIH0pID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgPGRpdlxuICAgICAgICBjc3M9e2Nzc2BcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgYH1cbiAgICAgID5cbiAgICAgICAge2l0ZW1zLm1hcCgoaXRlbVZhbHVlLCBpbmRleCkgPT4gKFxuICAgICAgICAgIDxTb3J0YWJsZUltYWdlXG4gICAgICAgICAgICBrZXk9e2BpdGVtLSR7aXRlbVZhbHVlfWB9XG4gICAgICAgICAgICBpbmRleD17aW5kZXh9XG4gICAgICAgICAgICBpdGVtVmFsdWU9e2l0ZW1WYWx1ZX1cbiAgICAgICAgICAgIGdldEFzc2V0PXtnZXRBc3NldH1cbiAgICAgICAgICAgIGZpZWxkPXtmaWVsZH1cbiAgICAgICAgICAgIG9uUmVtb3ZlPXtvblJlbW92ZU9uZShpbmRleCl9XG4gICAgICAgICAgICBvblJlcGxhY2U9e29uUmVwbGFjZU9uZShpbmRleCl9XG4gICAgICAgICAgLz5cbiAgICAgICAgKSl9XG4gICAgICA8L2Rpdj5cbiAgICApO1xuICB9LFxuKTtcblxuY29uc3QgRmlsZUxpbmsgPSBzdHlsZWQuYWBcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6IGluaGVyaXQ7XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG5gO1xuXG5jb25zdCBGaWxlTGlua3MgPSBzdHlsZWQuZGl2YFxuICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuYDtcblxuY29uc3QgRmlsZUxpbmtMaXN0ID0gc3R5bGVkLnVsYFxuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5gO1xuXG5jb25zdCBGaWxlV2lkZ2V0QnV0dG9uID0gc3R5bGVkLmJ1dHRvbmBcbiAgJHtidXR0b25zLmJ1dHRvbn07XG4gICR7Y29tcG9uZW50cy5iYWRnZX07XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG5gO1xuXG5jb25zdCBGaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlID0gc3R5bGVkLmJ1dHRvbmBcbiAgJHtidXR0b25zLmJ1dHRvbn07XG4gICR7Y29tcG9uZW50cy5iYWRnZURhbmdlcn07XG5gO1xuXG5mdW5jdGlvbiBpc011bHRpcGxlKHZhbHVlKSB7XG4gIHJldHVybiBBcnJheS5pc0FycmF5KHZhbHVlKSB8fCBMaXN0LmlzTGlzdCh2YWx1ZSk7XG59XG5cbmZ1bmN0aW9uIHNpemVPZlZhbHVlKHZhbHVlKSB7XG4gIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgIHJldHVybiB2YWx1ZS5sZW5ndGg7XG4gIH1cblxuICBpZiAoTGlzdC5pc0xpc3QodmFsdWUpKSB7XG4gICAgcmV0dXJuIHZhbHVlLnNpemU7XG4gIH1cblxuICByZXR1cm4gdmFsdWUgPyAxIDogMDtcbn1cblxuZnVuY3Rpb24gdmFsdWVMaXN0VG9BcnJheSh2YWx1ZSkge1xuICByZXR1cm4gTGlzdC5pc0xpc3QodmFsdWUpID8gdmFsdWUudG9BcnJheSgpIDogdmFsdWU7XG59XG5cbmNvbnN0IHdhcm5EZXByZWNhdGVkT3B0aW9ucyA9IG9uY2UoZmllbGQgPT5cbiAgY29uc29sZS53YXJuKG9uZUxpbmVgXG4gIERlY2FwIENNUyBjb25maWc6ICR7ZmllbGQuZ2V0KCduYW1lJyl9IGZpZWxkOiBwcm9wZXJ0eSBcIm9wdGlvbnNcIiBoYXMgYmVlbiBkZXByZWNhdGVkIGZvciB0aGVcbiAgJHtmaWVsZC5nZXQoJ3dpZGdldCcpfSB3aWRnZXQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgbmV4dCBtYWpvciByZWxlYXNlLiBSYXRoZXIgdGhhblxuICBcXGBmaWVsZC5vcHRpb25zLm1lZGlhX2xpYnJhcnlcXGAsIGFwcGx5IG1lZGlhIGxpYnJhcnkgb3B0aW9ucyBmb3IgdGhpcyB3aWRnZXQgdW5kZXJcbiAgXFxgZmllbGQubWVkaWFfbGlicmFyeVxcYC5cbmApLFxuKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gd2l0aEZpbGVDb250cm9sKHsgZm9ySW1hZ2UgfSA9IHt9KSB7XG4gIHJldHVybiBjbGFzcyBGaWxlQ29udHJvbCBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gICAgc3RhdGljIHByb3BUeXBlcyA9IHtcbiAgICAgIGZpZWxkOiBQcm9wVHlwZXMub2JqZWN0LmlzUmVxdWlyZWQsXG4gICAgICBnZXRBc3NldDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG1lZGlhUGF0aHM6IEltbXV0YWJsZVByb3BUeXBlcy5tYXAuaXNSZXF1aXJlZCxcbiAgICAgIG9uQWRkQXNzZXQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgICBvbkNoYW5nZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uUmVtb3ZlSW5zZXJ0ZWRNZWRpYTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uT3Blbk1lZGlhTGlicmFyeTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uQ2xlYXJNZWRpYUNvbnRyb2w6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgICBvblJlbW92ZU1lZGlhQ29udHJvbDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIGNsYXNzTmFtZVdyYXBwZXI6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgICAgIHZhbHVlOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtcbiAgICAgICAgUHJvcFR5cGVzLnN0cmluZyxcbiAgICAgICAgUHJvcFR5cGVzLmFycmF5T2YoUHJvcFR5cGVzLnN0cmluZyksXG4gICAgICAgIEltbXV0YWJsZVByb3BUeXBlcy5saXN0T2YoUHJvcFR5cGVzLnN0cmluZyksXG4gICAgICBdKSxcbiAgICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgfTtcblxuICAgIHN0YXRpYyBkZWZhdWx0UHJvcHMgPSB7XG4gICAgICB2YWx1ZTogJycsXG4gICAgfTtcblxuICAgIGNvbnN0cnVjdG9yKHByb3BzKSB7XG4gICAgICBzdXBlcihwcm9wcyk7XG4gICAgICB0aGlzLmNvbnRyb2xJRCA9IHV1aWQoKTtcbiAgICB9XG5cbiAgICBzaG91bGRDb21wb25lbnRVcGRhdGUobmV4dFByb3BzKSB7XG4gICAgICAvKipcbiAgICAgICAqIEFsd2F5cyB1cGRhdGUgaWYgdGhlIHZhbHVlIG9yIGdldEFzc2V0IGNoYW5nZXMuXG4gICAgICAgKi9cbiAgICAgIGlmICh0aGlzLnByb3BzLnZhbHVlICE9PSBuZXh0UHJvcHMudmFsdWUgfHwgdGhpcy5wcm9wcy5nZXRBc3NldCAhPT0gbmV4dFByb3BzLmdldEFzc2V0KSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuXG4gICAgICAvKipcbiAgICAgICAqIElmIHRoZXJlIGlzIGEgbWVkaWEgcGF0aCBmb3IgdGhpcyBjb250cm9sIGluIHRoZSBzdGF0ZSBvYmplY3QsIGFuZCB0aGF0XG4gICAgICAgKiBwYXRoIGlzIGRpZmZlcmVudCB0aGFuIHRoZSB2YWx1ZSBpbiBgbmV4dFByb3BzYCwgdXBkYXRlLlxuICAgICAgICovXG4gICAgICBjb25zdCBtZWRpYVBhdGggPSBuZXh0UHJvcHMubWVkaWFQYXRocy5nZXQodGhpcy5jb250cm9sSUQpO1xuICAgICAgaWYgKG1lZGlhUGF0aCAmJiBuZXh0UHJvcHMudmFsdWUgIT09IG1lZGlhUGF0aCkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGNvbXBvbmVudERpZFVwZGF0ZSgpIHtcbiAgICAgIGNvbnN0IHsgbWVkaWFQYXRocywgdmFsdWUsIG9uUmVtb3ZlSW5zZXJ0ZWRNZWRpYSwgb25DaGFuZ2UgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBtZWRpYVBhdGggPSBtZWRpYVBhdGhzLmdldCh0aGlzLmNvbnRyb2xJRCk7XG4gICAgICBpZiAobWVkaWFQYXRoICYmIG1lZGlhUGF0aCAhPT0gdmFsdWUpIHtcbiAgICAgICAgb25DaGFuZ2UobWVkaWFQYXRoKTtcbiAgICAgIH0gZWxzZSBpZiAobWVkaWFQYXRoICYmIG1lZGlhUGF0aCA9PT0gdmFsdWUpIHtcbiAgICAgICAgb25SZW1vdmVJbnNlcnRlZE1lZGlhKHRoaXMuY29udHJvbElEKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb21wb25lbnRXaWxsVW5tb3VudCgpIHtcbiAgICAgIHRoaXMucHJvcHMub25SZW1vdmVNZWRpYUNvbnRyb2wodGhpcy5jb250cm9sSUQpO1xuICAgIH1cblxuICAgIGhhbmRsZUNoYW5nZSA9IGUgPT4ge1xuICAgICAgY29uc3QgeyBmaWVsZCwgb25PcGVuTWVkaWFMaWJyYXJ5LCB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgIGNvbnN0IG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucyA9IHRoaXMuZ2V0TWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zKCk7XG5cbiAgICAgIHJldHVybiBvbk9wZW5NZWRpYUxpYnJhcnkoe1xuICAgICAgICBjb250cm9sSUQ6IHRoaXMuY29udHJvbElELFxuICAgICAgICBmb3JJbWFnZSxcbiAgICAgICAgcHJpdmF0ZVVwbG9hZDogZmllbGQuZ2V0KCdwcml2YXRlJyksXG4gICAgICAgIHZhbHVlOiB2YWx1ZUxpc3RUb0FycmF5KHZhbHVlKSxcbiAgICAgICAgYWxsb3dNdWx0aXBsZTogISFtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMuZ2V0KCdhbGxvd19tdWx0aXBsZScsIHRydWUpLFxuICAgICAgICBjb25maWc6IG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycpLFxuICAgICAgICBmaWVsZCxcbiAgICAgIH0pO1xuICAgIH07XG5cbiAgICBoYW5kbGVVcmwgPSBzdWJqZWN0ID0+IGUgPT4ge1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgICBjb25zdCB1cmwgPSB3aW5kb3cucHJvbXB0KHRoaXMucHJvcHMudChgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS5wcm9tcHRVcmxgKSk7XG5cbiAgICAgIHJldHVybiB0aGlzLnByb3BzLm9uQ2hhbmdlKHVybCk7XG4gICAgfTtcblxuICAgIGhhbmRsZVJlbW92ZSA9IGUgPT4ge1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgdGhpcy5wcm9wcy5vbkNsZWFyTWVkaWFDb250cm9sKHRoaXMuY29udHJvbElEKTtcbiAgICAgIHJldHVybiB0aGlzLnByb3BzLm9uQ2hhbmdlKCcnKTtcbiAgICB9O1xuXG4gICAgb25SZW1vdmVPbmUgPSBpbmRleCA9PiAoKSA9PiB7XG4gICAgICBjb25zdCB7IHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgdmFsdWUuc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgIHJldHVybiB0aGlzLnByb3BzLm9uQ2hhbmdlKHNpemVPZlZhbHVlKHZhbHVlKSA+IDAgPyBbLi4udmFsdWVdIDogbnVsbCk7XG4gICAgfTtcblxuICAgIG9uUmVwbGFjZU9uZSA9IGluZGV4ID0+ICgpID0+IHtcbiAgICAgIGNvbnN0IHsgZmllbGQsIG9uT3Blbk1lZGlhTGlicmFyeSwgdmFsdWUgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMgPSB0aGlzLmdldE1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucygpO1xuXG4gICAgICByZXR1cm4gb25PcGVuTWVkaWFMaWJyYXJ5KHtcbiAgICAgICAgY29udHJvbElEOiB0aGlzLmNvbnRyb2xJRCxcbiAgICAgICAgZm9ySW1hZ2UsXG4gICAgICAgIHByaXZhdGVVcGxvYWQ6IGZpZWxkLmdldCgncHJpdmF0ZScpLFxuICAgICAgICB2YWx1ZTogdmFsdWVMaXN0VG9BcnJheSh2YWx1ZSksXG4gICAgICAgIHJlcGxhY2VJbmRleDogaW5kZXgsXG4gICAgICAgIGFsbG93TXVsdGlwbGU6IGZhbHNlLFxuICAgICAgICBjb25maWc6IG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycpLFxuICAgICAgICBmaWVsZCxcbiAgICAgIH0pO1xuICAgIH07XG5cbiAgICBnZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMgPSAoKSA9PiB7XG4gICAgICBjb25zdCB7IGZpZWxkIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgICBpZiAoZmllbGQuaGFzSW4oWydvcHRpb25zJywgJ21lZGlhX2xpYnJhcnknXSkpIHtcbiAgICAgICAgd2FybkRlcHJlY2F0ZWRPcHRpb25zKGZpZWxkKTtcbiAgICAgICAgcmV0dXJuIGZpZWxkLmdldEluKFsnb3B0aW9ucycsICdtZWRpYV9saWJyYXJ5J10sIE1hcCgpKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZpZWxkLmdldCgnbWVkaWFfbGlicmFyeScsIE1hcCgpKTtcbiAgICB9O1xuXG4gICAgYWxsb3dzTXVsdGlwbGUgPSAoKSA9PiB7XG4gICAgICBjb25zdCBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMgPSB0aGlzLmdldE1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucygpO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zLmdldCgnY29uZmlnJywgZmFsc2UpICYmXG4gICAgICAgIG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycpLmdldCgnbXVsdGlwbGUnLCBmYWxzZSlcbiAgICAgICk7XG4gICAgfTtcblxuICAgIG9uU29ydEVuZCA9ICh7IG9sZEluZGV4LCBuZXdJbmRleCB9KSA9PiB7XG4gICAgICBjb25zdCB7IHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgbmV3VmFsdWUgPSBhcnJheU1vdmUodmFsdWUsIG9sZEluZGV4LCBuZXdJbmRleCk7XG4gICAgICByZXR1cm4gdGhpcy5wcm9wcy5vbkNoYW5nZShuZXdWYWx1ZSk7XG4gICAgfTtcblxuICAgIGdldFZhbGlkYXRlVmFsdWUgPSAoKSA9PiB7XG4gICAgICBjb25zdCB7IHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgIHJldHVybiBpc011bHRpcGxlKHZhbHVlKSA/IHZhbHVlLm1hcCh2ID0+IGJhc2VuYW1lKHYpKSA6IGJhc2VuYW1lKHZhbHVlKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH07XG5cbiAgICByZW5kZXJGaWxlTGluayA9IHZhbHVlID0+IHtcbiAgICAgIGNvbnN0IHNpemUgPSBNQVhfRElTUExBWV9MRU5HVEg7XG4gICAgICBpZiAoIXZhbHVlIHx8IHZhbHVlLmxlbmd0aCA8PSBzaXplKSB7XG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHRleHQgPSBgJHt2YWx1ZS5zbGljZSgwLCBzaXplIC8gMil9XFx1MjAyNiR7dmFsdWUuc2xpY2UoLShzaXplIC8gMikgKyAxKX1gO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPEZpbGVMaW5rIGhyZWY9e3ZhbHVlfSByZWw9XCJub29wZW5lclwiIHRhcmdldD1cIl9ibGFua1wiPlxuICAgICAgICAgIHt0ZXh0fVxuICAgICAgICA8L0ZpbGVMaW5rPlxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgcmVuZGVyRmlsZUxpbmtzID0gKCkgPT4ge1xuICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcblxuICAgICAgaWYgKGlzTXVsdGlwbGUodmFsdWUpKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPEZpbGVMaW5rcz5cbiAgICAgICAgICAgIDxGaWxlTGlua0xpc3Q+XG4gICAgICAgICAgICAgIHt2YWx1ZS5tYXAodmFsID0+IChcbiAgICAgICAgICAgICAgICA8bGkga2V5PXt2YWx9Pnt0aGlzLnJlbmRlckZpbGVMaW5rKHZhbCl9PC9saT5cbiAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICA8L0ZpbGVMaW5rTGlzdD5cbiAgICAgICAgICA8L0ZpbGVMaW5rcz5cbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiA8RmlsZUxpbmtzPnt0aGlzLnJlbmRlckZpbGVMaW5rKHZhbHVlKX08L0ZpbGVMaW5rcz47XG4gICAgfTtcblxuICAgIHJlbmRlckltYWdlcyA9ICgpID0+IHtcbiAgICAgIGNvbnN0IHsgZ2V0QXNzZXQsIHZhbHVlLCBmaWVsZCB9ID0gdGhpcy5wcm9wcztcblxuICAgICAgaWYgKGlzTXVsdGlwbGUodmFsdWUpKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPFNvcnRhYmxlTXVsdGlJbWFnZVdyYXBwZXJcbiAgICAgICAgICAgIGl0ZW1zPXt2YWx1ZX1cbiAgICAgICAgICAgIG9uU29ydEVuZD17dGhpcy5vblNvcnRFbmR9XG4gICAgICAgICAgICBvblJlbW92ZU9uZT17dGhpcy5vblJlbW92ZU9uZX1cbiAgICAgICAgICAgIG9uUmVwbGFjZU9uZT17dGhpcy5vblJlcGxhY2VPbmV9XG4gICAgICAgICAgICBkaXN0YW5jZT17NH1cbiAgICAgICAgICAgIGdldEFzc2V0PXtnZXRBc3NldH1cbiAgICAgICAgICAgIGZpZWxkPXtmaWVsZH1cbiAgICAgICAgICAgIGF4aXM9XCJ4eVwiXG4gICAgICAgICAgICBsb2NrVG9Db250YWluZXJFZGdlcz17dHJ1ZX1cbiAgICAgICAgICA+PC9Tb3J0YWJsZU11bHRpSW1hZ2VXcmFwcGVyPlxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBzcmMgPSBnZXRBc3NldCh2YWx1ZSwgZmllbGQpO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPEltYWdlV3JhcHBlcj5cbiAgICAgICAgICA8SW1hZ2Ugc3JjPXtzcmMgfHwgJyd9IC8+XG4gICAgICAgIDwvSW1hZ2VXcmFwcGVyPlxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgcmVuZGVyU2VsZWN0aW9uID0gc3ViamVjdCA9PiB7XG4gICAgICBjb25zdCB7IHQsIGZpZWxkIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgYWxsb3dzTXVsdGlwbGUgPSB0aGlzLmFsbG93c011bHRpcGxlKCk7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2PlxuICAgICAgICAgIHtmb3JJbWFnZSA/IHRoaXMucmVuZGVySW1hZ2VzKCkgOiBudWxsfVxuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICB7Zm9ySW1hZ2UgPyBudWxsIDogdGhpcy5yZW5kZXJGaWxlTGlua3MoKX1cbiAgICAgICAgICAgIDxGaWxlV2lkZ2V0QnV0dG9uIG9uQ2xpY2s9e3RoaXMuaGFuZGxlQ2hhbmdlfT5cbiAgICAgICAgICAgICAge3QoXG4gICAgICAgICAgICAgICAgYGVkaXRvci5lZGl0b3JXaWRnZXRzLiR7c3ViamVjdH0uJHtcbiAgICAgICAgICAgICAgICAgIHRoaXMuYWxsb3dzTXVsdGlwbGUoKSA/ICdhZGRNb3JlJyA6ICdjaG9vc2VEaWZmZXJlbnQnXG4gICAgICAgICAgICAgICAgfWAsXG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b24+XG4gICAgICAgICAgICB7ZmllbGQuZ2V0KCdjaG9vc2VfdXJsJywgdHJ1ZSkgJiYgIXRoaXMuYWxsb3dzTXVsdGlwbGUoKSA/IChcbiAgICAgICAgICAgICAgPEZpbGVXaWRnZXRCdXR0b24gb25DbGljaz17dGhpcy5oYW5kbGVVcmwoc3ViamVjdCl9PlxuICAgICAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LnJlcGxhY2VVcmxgKX1cbiAgICAgICAgICAgICAgPC9GaWxlV2lkZ2V0QnV0dG9uPlxuICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvblJlbW92ZSBvbkNsaWNrPXt0aGlzLmhhbmRsZVJlbW92ZX0+XG4gICAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LnJlbW92ZSR7YWxsb3dzTXVsdGlwbGUgPyAnQWxsJyA6ICcnfWApfVxuICAgICAgICAgICAgPC9GaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICk7XG4gICAgfTtcblxuICAgIHJlbmRlck5vU2VsZWN0aW9uID0gc3ViamVjdCA9PiB7XG4gICAgICBjb25zdCB7IHQsIGZpZWxkIH0gPSB0aGlzLnByb3BzO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPD5cbiAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvbiBvbkNsaWNrPXt0aGlzLmhhbmRsZUNoYW5nZX0+XG4gICAgICAgICAgICB7dChgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS5jaG9vc2Uke3RoaXMuYWxsb3dzTXVsdGlwbGUoKSA/ICdNdWx0aXBsZScgOiAnJ31gKX1cbiAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b24+XG4gICAgICAgICAge2ZpZWxkLmdldCgnY2hvb3NlX3VybCcsIHRydWUpID8gKFxuICAgICAgICAgICAgPEZpbGVXaWRnZXRCdXR0b24gb25DbGljaz17dGhpcy5oYW5kbGVVcmwoc3ViamVjdCl9PlxuICAgICAgICAgICAgICB7dChgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS5jaG9vc2VVcmxgKX1cbiAgICAgICAgICAgIDwvRmlsZVdpZGdldEJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC8+XG4gICAgICApO1xuICAgIH07XG5cbiAgICByZW5kZXIoKSB7XG4gICAgICBjb25zdCB7IHZhbHVlLCBjbGFzc05hbWVXcmFwcGVyIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3Qgc3ViamVjdCA9IGZvckltYWdlID8gJ2ltYWdlJyA6ICdmaWxlJztcblxuICAgICAgcmV0dXJuIChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e2NsYXNzTmFtZVdyYXBwZXJ9PlxuICAgICAgICAgIDxzcGFuPnt2YWx1ZSA/IHRoaXMucmVuZGVyU2VsZWN0aW9uKHN1YmplY3QpIDogdGhpcy5yZW5kZXJOb1NlbGVjdGlvbihzdWJqZWN0KX08L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKTtcbiAgICB9XG4gIH07XG59XG4iXX0= */",
|
|
175
|
+
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy93aXRoRmlsZUNvbnRyb2wuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBNEp5QiIsImZpbGUiOiIuLi8uLi9zcmMvd2l0aEZpbGVDb250cm9sLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgSW1tdXRhYmxlUHJvcFR5cGVzIGZyb20gJ3JlYWN0LWltbXV0YWJsZS1wcm9wdHlwZXMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vY29yZSc7XG5pbXBvcnQgeyBNYXAsIExpc3QgfSBmcm9tICdpbW11dGFibGUnO1xuaW1wb3J0IHsgb25jZSB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyB2NCBhcyB1dWlkIH0gZnJvbSAndXVpZCc7XG5pbXBvcnQgeyBvbmVMaW5lIH0gZnJvbSAnY29tbW9uLXRhZ3MnO1xuaW1wb3J0IHtcbiAgbGVuZ3RocyxcbiAgY29tcG9uZW50cyxcbiAgYnV0dG9ucyxcbiAgYm9yZGVycyxcbiAgZWZmZWN0cyxcbiAgc2hhZG93cyxcbiAgSWNvbkJ1dHRvbixcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuaW1wb3J0IHsgYmFzZW5hbWUgfSBmcm9tICdkZWNhcC1jbXMtbGliLXV0aWwnO1xuaW1wb3J0IHsgYXJyYXlNb3ZlSW1tdXRhYmxlIGFzIGFycmF5TW92ZSB9IGZyb20gJ2FycmF5LW1vdmUnO1xuaW1wb3J0IHtcbiAgRG5kQ29udGV4dCxcbiAgTW91c2VTZW5zb3IsXG4gIFRvdWNoU2Vuc29yLFxuICBjbG9zZXN0Q2VudGVyLFxuICB1c2VTZW5zb3IsXG4gIHVzZVNlbnNvcnMsXG59IGZyb20gJ0BkbmQta2l0L2NvcmUnO1xuaW1wb3J0IHsgU29ydGFibGVDb250ZXh0LCB1c2VTb3J0YWJsZSB9IGZyb20gJ0BkbmQta2l0L3NvcnRhYmxlJztcbmltcG9ydCB7IENTUyB9IGZyb20gJ0BkbmQta2l0L3V0aWxpdGllcyc7XG5pbXBvcnQgeyByZXN0cmljdFRvUGFyZW50RWxlbWVudCB9IGZyb20gJ0BkbmQta2l0L21vZGlmaWVycyc7XG5cbmNvbnN0IE1BWF9ESVNQTEFZX0xFTkdUSCA9IDUwO1xuXG5jb25zdCBJbWFnZVdyYXBwZXIgPSBzdHlsZWQuZGl2YFxuICBmbGV4LWJhc2lzOiAxNTVweDtcbiAgd2lkdGg6IDE1NXB4O1xuICBoZWlnaHQ6IDEwMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGJvcmRlcjogJHtib3JkZXJzLnRleHRGaWVsZH07XG4gIGJvcmRlci1yYWRpdXM6ICR7bGVuZ3Rocy5ib3JkZXJSYWRpdXN9O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAke2VmZmVjdHMuY2hlY2tlcmJvYXJkfTtcbiAgJHtzaGFkb3dzLmluc2V0fTtcbiAgY3Vyc29yOiAke3Byb3BzID0+IChwcm9wcy5zb3J0YWJsZSA/ICdwb2ludGVyJyA6ICdhdXRvJyl9O1xuYDtcblxuY29uc3QgU29ydGFibGVJbWFnZUJ1dHRvbnNXcmFwcGVyID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGNvbHVtbi1nYXA6IDEwcHg7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbiAgbWFyZ2luLXRvcDogLTEwcHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG5gO1xuXG5jb25zdCBTdHlsZWRJbWFnZSA9IHN0eWxlZC5pbWdgXG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvbnRhaW47XG5gO1xuXG5mdW5jdGlvbiBJbWFnZShwcm9wcykge1xuICByZXR1cm4gPFN0eWxlZEltYWdlIHJvbGU9XCJwcmVzZW50YXRpb25cIiB7Li4ucHJvcHN9IC8+O1xufVxuXG5mdW5jdGlvbiBTb3J0YWJsZUltYWdlQnV0dG9ucyh7IG9uUmVtb3ZlLCBvblJlcGxhY2UgfSkge1xuICByZXR1cm4gKFxuICAgIDxTb3J0YWJsZUltYWdlQnV0dG9uc1dyYXBwZXI+XG4gICAgICA8SWNvbkJ1dHRvbiBzaXplPVwic21hbGxcIiB0eXBlPVwibWVkaWFcIiBvbkNsaWNrPXtvblJlcGxhY2V9PjwvSWNvbkJ1dHRvbj5cbiAgICAgIDxJY29uQnV0dG9uIHNpemU9XCJzbWFsbFwiIHR5cGU9XCJjbG9zZVwiIG9uQ2xpY2s9e29uUmVtb3ZlfT48L0ljb25CdXR0b24+XG4gICAgPC9Tb3J0YWJsZUltYWdlQnV0dG9uc1dyYXBwZXI+XG4gICk7XG59XG5cbmZ1bmN0aW9uIFNvcnRhYmxlSW1hZ2UocHJvcHMpIHtcbiAgY29uc3QgeyBhdHRyaWJ1dGVzLCBsaXN0ZW5lcnMsIHNldE5vZGVSZWYsIHRyYW5zZm9ybSwgdHJhbnNpdGlvbiB9ID0gdXNlU29ydGFibGUoe1xuICAgIGlkOiBwcm9wcy5pZCxcbiAgfSk7XG5cbiAgY29uc3Qgc3R5bGUgPSB7XG4gICAgdHJhbnNmb3JtOiBDU1MuVHJhbnNmb3JtLnRvU3RyaW5nKHRyYW5zZm9ybSksXG4gICAgdHJhbnNpdGlvbixcbiAgfTtcblxuICBjb25zdCB7IGl0ZW1WYWx1ZSwgZ2V0QXNzZXQsIGZpZWxkLCBvblJlbW92ZSwgb25SZXBsYWNlIH0gPSBwcm9wcztcblxuICByZXR1cm4gKFxuICAgIDxkaXYgcmVmPXtzZXROb2RlUmVmfSBzdHlsZT17c3R5bGV9IHsuLi5hdHRyaWJ1dGVzfSB7Li4ubGlzdGVuZXJzfT5cbiAgICAgIDxJbWFnZVdyYXBwZXIgc29ydGFibGU+XG4gICAgICAgIDxJbWFnZSBzcmM9e2dldEFzc2V0KGl0ZW1WYWx1ZSwgZmllbGQpIHx8ICcnfSAvPlxuICAgICAgPC9JbWFnZVdyYXBwZXI+XG4gICAgICA8U29ydGFibGVJbWFnZUJ1dHRvbnNcbiAgICAgICAgaXRlbT17aXRlbVZhbHVlfVxuICAgICAgICBvblJlbW92ZT17b25SZW1vdmV9XG4gICAgICAgIG9uUmVwbGFjZT17b25SZXBsYWNlfVxuICAgICAgPjwvU29ydGFibGVJbWFnZUJ1dHRvbnM+XG4gICAgPC9kaXY+XG4gICk7XG59XG5cbmZ1bmN0aW9uIFNvcnRhYmxlTXVsdGlJbWFnZVdyYXBwZXIoe1xuICBpdGVtcyxcbiAgZ2V0QXNzZXQsXG4gIGZpZWxkLFxuICBvblNvcnRFbmQsXG4gIG9uUmVtb3ZlT25lLFxuICBvblJlcGxhY2VPbmUsXG59KSB7XG4gIGNvbnN0IGFjdGl2YXRpb25Db25zdHJhaW50ID0geyBkaXN0YW5jZTogNCB9O1xuICBjb25zdCBzZW5zb3JzID0gdXNlU2Vuc29ycyhcbiAgICB1c2VTZW5zb3IoTW91c2VTZW5zb3IsIHsgYWN0aXZhdGlvbkNvbnN0cmFpbnQgfSksXG4gICAgdXNlU2Vuc29yKFRvdWNoU2Vuc29yLCB7IGFjdGl2YXRpb25Db25zdHJhaW50IH0pLFxuICApO1xuXG4gIGZ1bmN0aW9uIGhhbmRsZVNvcnRFbmQoeyBhY3RpdmUsIG92ZXIgfSkge1xuICAgIG9uU29ydEVuZCh7XG4gICAgICBvbGRJbmRleDogaXRlbXMuZmluZEluZGV4KGl0ZW0gPT4gaXRlbS5pZCA9PT0gYWN0aXZlLmlkKSxcbiAgICAgIG5ld0luZGV4OiBpdGVtcy5maW5kSW5kZXgoaXRlbSA9PiBpdGVtLmlkID09PSBvdmVyLmlkKSxcbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPGRpdlxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0L25vLXVua25vd24tcHJvcGVydHlcbiAgICAgIGNzcz17Y3NzYFxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBgfVxuICAgID5cbiAgICAgIDxEbmRDb250ZXh0XG4gICAgICAgIG1vZGlmaWVycz17W3Jlc3RyaWN0VG9QYXJlbnRFbGVtZW50XX1cbiAgICAgICAgY29sbGlzaW9uRGV0ZWN0aW9uPXtjbG9zZXN0Q2VudGVyfVxuICAgICAgICBzZW5zb3JzPXtzZW5zb3JzfVxuICAgICAgICBvbkRyYWdFbmQ9e2hhbmRsZVNvcnRFbmR9XG4gICAgICA+XG4gICAgICAgIDxTb3J0YWJsZUNvbnRleHQgaXRlbXM9e2l0ZW1zfT5cbiAgICAgICAgICB7aXRlbXMubWFwKChpdGVtLCBpbmRleCkgPT4gKFxuICAgICAgICAgICAgPFNvcnRhYmxlSW1hZ2VcbiAgICAgICAgICAgICAga2V5PXtpdGVtLmlkfVxuICAgICAgICAgICAgICBpZD17aXRlbS5pZH1cbiAgICAgICAgICAgICAgaW5kZXg9e2luZGV4fVxuICAgICAgICAgICAgICBpdGVtVmFsdWU9e2l0ZW0udmFsdWV9XG4gICAgICAgICAgICAgIGdldEFzc2V0PXtnZXRBc3NldH1cbiAgICAgICAgICAgICAgZmllbGQ9e2ZpZWxkfVxuICAgICAgICAgICAgICBvblJlbW92ZT17b25SZW1vdmVPbmUoaW5kZXgpfVxuICAgICAgICAgICAgICBvblJlcGxhY2U9e29uUmVwbGFjZU9uZShpbmRleCl9XG4gICAgICAgICAgICA+PC9Tb3J0YWJsZUltYWdlPlxuICAgICAgICAgICkpfVxuICAgICAgICA8L1NvcnRhYmxlQ29udGV4dD5cbiAgICAgIDwvRG5kQ29udGV4dD5cbiAgICA8L2Rpdj5cbiAgKTtcbn1cblxuY29uc3QgRmlsZUxpbmsgPSBzdHlsZWQuYWBcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6IGluaGVyaXQ7XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG5gO1xuXG5jb25zdCBGaWxlTGlua3MgPSBzdHlsZWQuZGl2YFxuICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuYDtcblxuY29uc3QgRmlsZUxpbmtMaXN0ID0gc3R5bGVkLnVsYFxuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5gO1xuXG5jb25zdCBGaWxlV2lkZ2V0QnV0dG9uID0gc3R5bGVkLmJ1dHRvbmBcbiAgJHtidXR0b25zLmJ1dHRvbn07XG4gICR7Y29tcG9uZW50cy5iYWRnZX07XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG5gO1xuXG5jb25zdCBGaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlID0gc3R5bGVkLmJ1dHRvbmBcbiAgJHtidXR0b25zLmJ1dHRvbn07XG4gICR7Y29tcG9uZW50cy5iYWRnZURhbmdlcn07XG5gO1xuXG5mdW5jdGlvbiBpc011bHRpcGxlKHZhbHVlKSB7XG4gIHJldHVybiBBcnJheS5pc0FycmF5KHZhbHVlKSB8fCBMaXN0LmlzTGlzdCh2YWx1ZSk7XG59XG5cbmZ1bmN0aW9uIHNpemVPZlZhbHVlKHZhbHVlKSB7XG4gIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgIHJldHVybiB2YWx1ZS5sZW5ndGg7XG4gIH1cblxuICBpZiAoTGlzdC5pc0xpc3QodmFsdWUpKSB7XG4gICAgcmV0dXJuIHZhbHVlLnNpemU7XG4gIH1cblxuICByZXR1cm4gdmFsdWUgPyAxIDogMDtcbn1cblxuZnVuY3Rpb24gdmFsdWVMaXN0VG9BcnJheSh2YWx1ZSkge1xuICByZXR1cm4gTGlzdC5pc0xpc3QodmFsdWUpID8gdmFsdWUudG9BcnJheSgpIDogdmFsdWUgPz8gJyc7XG59XG5cbmZ1bmN0aW9uIHZhbHVlTGlzdFRvU29ydGFibGVBcnJheSh2YWx1ZSkge1xuICBpZiAoIWlzTXVsdGlwbGUodmFsdWUpKSB7XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG5cbiAgY29uc3QgdmFsdWVBcnJheSA9IHZhbHVlTGlzdFRvQXJyYXkodmFsdWUpLm1hcCh2YWx1ZSA9PiAoe1xuICAgIGlkOiB1dWlkKCksXG4gICAgdmFsdWUsXG4gIH0pKTtcblxuICByZXR1cm4gdmFsdWVBcnJheTtcbn1cblxuY29uc3Qgd2FybkRlcHJlY2F0ZWRPcHRpb25zID0gb25jZShmaWVsZCA9PlxuICBjb25zb2xlLndhcm4ob25lTGluZWBcbiAgRGVjYXAgQ01TIGNvbmZpZzogJHtmaWVsZC5nZXQoJ25hbWUnKX0gZmllbGQ6IHByb3BlcnR5IFwib3B0aW9uc1wiIGhhcyBiZWVuIGRlcHJlY2F0ZWQgZm9yIHRoZVxuICAke2ZpZWxkLmdldCgnd2lkZ2V0Jyl9IHdpZGdldCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IG1ham9yIHJlbGVhc2UuIFJhdGhlciB0aGFuXG4gIFxcYGZpZWxkLm9wdGlvbnMubWVkaWFfbGlicmFyeVxcYCwgYXBwbHkgbWVkaWEgbGlicmFyeSBvcHRpb25zIGZvciB0aGlzIHdpZGdldCB1bmRlclxuICBcXGBmaWVsZC5tZWRpYV9saWJyYXJ5XFxgLlxuYCksXG4pO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB3aXRoRmlsZUNvbnRyb2woeyBmb3JJbWFnZSB9ID0ge30pIHtcbiAgcmV0dXJuIGNsYXNzIEZpbGVDb250cm9sIGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50IHtcbiAgICBzdGF0aWMgcHJvcFR5cGVzID0ge1xuICAgICAgZmllbGQ6IFByb3BUeXBlcy5vYmplY3QuaXNSZXF1aXJlZCxcbiAgICAgIGdldEFzc2V0OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgbWVkaWFQYXRoczogSW1tdXRhYmxlUHJvcFR5cGVzLm1hcC5pc1JlcXVpcmVkLFxuICAgICAgb25BZGRBc3NldDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uQ2hhbmdlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgb25SZW1vdmVJbnNlcnRlZE1lZGlhOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgb25PcGVuTWVkaWFMaWJyYXJ5OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgb25DbGVhck1lZGlhQ29udHJvbDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uUmVtb3ZlTWVkaWFDb250cm9sOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgY2xhc3NOYW1lV3JhcHBlcjogUHJvcFR5cGVzLnN0cmluZy5pc1JlcXVpcmVkLFxuICAgICAgdmFsdWU6IFByb3BUeXBlcy5vbmVPZlR5cGUoW1xuICAgICAgICBQcm9wVHlwZXMuc3RyaW5nLFxuICAgICAgICBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMuc3RyaW5nKSxcbiAgICAgICAgSW1tdXRhYmxlUHJvcFR5cGVzLmxpc3RPZihQcm9wVHlwZXMuc3RyaW5nKSxcbiAgICAgIF0pLFxuICAgICAgdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICB9O1xuXG4gICAgc3RhdGljIGRlZmF1bHRQcm9wcyA9IHtcbiAgICAgIHZhbHVlOiAnJyxcbiAgICB9O1xuXG4gICAgY29uc3RydWN0b3IocHJvcHMpIHtcbiAgICAgIHN1cGVyKHByb3BzKTtcbiAgICAgIHRoaXMuY29udHJvbElEID0gdXVpZCgpO1xuICAgIH1cblxuICAgIHNob3VsZENvbXBvbmVudFVwZGF0ZShuZXh0UHJvcHMpIHtcbiAgICAgIC8qKlxuICAgICAgICogQWx3YXlzIHVwZGF0ZSBpZiB0aGUgdmFsdWUgb3IgZ2V0QXNzZXQgY2hhbmdlcy5cbiAgICAgICAqL1xuICAgICAgaWYgKHRoaXMucHJvcHMudmFsdWUgIT09IG5leHRQcm9wcy52YWx1ZSB8fCB0aGlzLnByb3BzLmdldEFzc2V0ICE9PSBuZXh0UHJvcHMuZ2V0QXNzZXQpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG5cbiAgICAgIC8qKlxuICAgICAgICogSWYgdGhlcmUgaXMgYSBtZWRpYSBwYXRoIGZvciB0aGlzIGNvbnRyb2wgaW4gdGhlIHN0YXRlIG9iamVjdCwgYW5kIHRoYXRcbiAgICAgICAqIHBhdGggaXMgZGlmZmVyZW50IHRoYW4gdGhlIHZhbHVlIGluIGBuZXh0UHJvcHNgLCB1cGRhdGUuXG4gICAgICAgKi9cbiAgICAgIGNvbnN0IG1lZGlhUGF0aCA9IG5leHRQcm9wcy5tZWRpYVBhdGhzLmdldCh0aGlzLmNvbnRyb2xJRCk7XG4gICAgICBpZiAobWVkaWFQYXRoICYmIG5leHRQcm9wcy52YWx1ZSAhPT0gbWVkaWFQYXRoKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgY29tcG9uZW50RGlkVXBkYXRlKCkge1xuICAgICAgY29uc3QgeyBtZWRpYVBhdGhzLCB2YWx1ZSwgb25SZW1vdmVJbnNlcnRlZE1lZGlhLCBvbkNoYW5nZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGNvbnN0IG1lZGlhUGF0aCA9IG1lZGlhUGF0aHMuZ2V0KHRoaXMuY29udHJvbElEKTtcbiAgICAgIGlmIChtZWRpYVBhdGggJiYgbWVkaWFQYXRoICE9PSB2YWx1ZSkge1xuICAgICAgICBvbkNoYW5nZShtZWRpYVBhdGgpO1xuICAgICAgfSBlbHNlIGlmIChtZWRpYVBhdGggJiYgbWVkaWFQYXRoID09PSB2YWx1ZSkge1xuICAgICAgICBvblJlbW92ZUluc2VydGVkTWVkaWEodGhpcy5jb250cm9sSUQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGNvbXBvbmVudFdpbGxVbm1vdW50KCkge1xuICAgICAgdGhpcy5wcm9wcy5vblJlbW92ZU1lZGlhQ29udHJvbCh0aGlzLmNvbnRyb2xJRCk7XG4gICAgfVxuXG4gICAgaGFuZGxlQ2hhbmdlID0gZSA9PiB7XG4gICAgICBjb25zdCB7IGZpZWxkLCBvbk9wZW5NZWRpYUxpYnJhcnksIHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgY29uc3QgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gdGhpcy5nZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMoKTtcblxuICAgICAgcmV0dXJuIG9uT3Blbk1lZGlhTGlicmFyeSh7XG4gICAgICAgIGNvbnRyb2xJRDogdGhpcy5jb250cm9sSUQsXG4gICAgICAgIGZvckltYWdlLFxuICAgICAgICBwcml2YXRlVXBsb2FkOiBmaWVsZC5nZXQoJ3ByaXZhdGUnKSxcbiAgICAgICAgdmFsdWU6IHZhbHVlTGlzdFRvQXJyYXkodmFsdWUpLFxuICAgICAgICBhbGxvd011bHRpcGxlOiAhIW1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2FsbG93X211bHRpcGxlJywgdHJ1ZSksXG4gICAgICAgIGNvbmZpZzogbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zLmdldCgnY29uZmlnJyksXG4gICAgICAgIGZpZWxkLFxuICAgICAgfSk7XG4gICAgfTtcblxuICAgIGhhbmRsZVVybCA9IHN1YmplY3QgPT4gZSA9PiB7XG4gICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG5cbiAgICAgIGNvbnN0IHVybCA9IHdpbmRvdy5wcm9tcHQodGhpcy5wcm9wcy50KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LnByb21wdFVybGApKTtcblxuICAgICAgcmV0dXJuIHRoaXMucHJvcHMub25DaGFuZ2UodXJsKTtcbiAgICB9O1xuXG4gICAgaGFuZGxlUmVtb3ZlID0gZSA9PiB7XG4gICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB0aGlzLnByb3BzLm9uQ2xlYXJNZWRpYUNvbnRyb2wodGhpcy5jb250cm9sSUQpO1xuICAgICAgcmV0dXJuIHRoaXMucHJvcHMub25DaGFuZ2UoJycpO1xuICAgIH07XG5cbiAgICBvblJlbW92ZU9uZSA9IGluZGV4ID0+ICgpID0+IHtcbiAgICAgIGNvbnN0IHZhbHVlID0gdmFsdWVMaXN0VG9BcnJheSh0aGlzLnByb3BzLnZhbHVlKTtcbiAgICAgIHZhbHVlLnNwbGljZShpbmRleCwgMSk7XG4gICAgICByZXR1cm4gdGhpcy5wcm9wcy5vbkNoYW5nZShzaXplT2ZWYWx1ZSh2YWx1ZSkgPiAwID8gWy4uLnZhbHVlXSA6IG51bGwpO1xuICAgIH07XG5cbiAgICBvblJlcGxhY2VPbmUgPSBpbmRleCA9PiAoKSA9PiB7XG4gICAgICBjb25zdCB7IGZpZWxkLCBvbk9wZW5NZWRpYUxpYnJhcnksIHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gdGhpcy5nZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMoKTtcblxuICAgICAgcmV0dXJuIG9uT3Blbk1lZGlhTGlicmFyeSh7XG4gICAgICAgIGNvbnRyb2xJRDogdGhpcy5jb250cm9sSUQsXG4gICAgICAgIGZvckltYWdlLFxuICAgICAgICBwcml2YXRlVXBsb2FkOiBmaWVsZC5nZXQoJ3ByaXZhdGUnKSxcbiAgICAgICAgdmFsdWU6IHZhbHVlTGlzdFRvQXJyYXkodmFsdWUpLFxuICAgICAgICByZXBsYWNlSW5kZXg6IGluZGV4LFxuICAgICAgICBhbGxvd011bHRpcGxlOiBmYWxzZSxcbiAgICAgICAgY29uZmlnOiBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMuZ2V0KCdjb25maWcnKSxcbiAgICAgICAgZmllbGQsXG4gICAgICB9KTtcbiAgICB9O1xuXG4gICAgZ2V0TWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gKCkgPT4ge1xuICAgICAgY29uc3QgeyBmaWVsZCB9ID0gdGhpcy5wcm9wcztcblxuICAgICAgaWYgKGZpZWxkLmhhc0luKFsnb3B0aW9ucycsICdtZWRpYV9saWJyYXJ5J10pKSB7XG4gICAgICAgIHdhcm5EZXByZWNhdGVkT3B0aW9ucyhmaWVsZCk7XG4gICAgICAgIHJldHVybiBmaWVsZC5nZXRJbihbJ29wdGlvbnMnLCAnbWVkaWFfbGlicmFyeSddLCBNYXAoKSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBmaWVsZC5nZXQoJ21lZGlhX2xpYnJhcnknLCBNYXAoKSk7XG4gICAgfTtcblxuICAgIGFsbG93c011bHRpcGxlID0gKCkgPT4ge1xuICAgICAgY29uc3QgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gdGhpcy5nZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMoKTtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycsIGZhbHNlKSAmJlxuICAgICAgICBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMuZ2V0KCdjb25maWcnKS5nZXQoJ211bHRpcGxlJywgZmFsc2UpXG4gICAgICApO1xuICAgIH07XG5cbiAgICBvblNvcnRFbmQgPSAoeyBvbGRJbmRleCwgbmV3SW5kZXggfSkgPT4ge1xuICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGNvbnN0IG5ld1ZhbHVlID0gYXJyYXlNb3ZlKHZhbHVlLCBvbGRJbmRleCwgbmV3SW5kZXgpO1xuICAgICAgcmV0dXJuIHRoaXMucHJvcHMub25DaGFuZ2UobmV3VmFsdWUpO1xuICAgIH07XG5cbiAgICBnZXRWYWxpZGF0ZVZhbHVlID0gKCkgPT4ge1xuICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICByZXR1cm4gaXNNdWx0aXBsZSh2YWx1ZSkgPyB2YWx1ZS5tYXAodiA9PiBiYXNlbmFtZSh2KSkgOiBiYXNlbmFtZSh2YWx1ZSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9O1xuXG4gICAgcmVuZGVyRmlsZUxpbmsgPSB2YWx1ZSA9PiB7XG4gICAgICBjb25zdCBzaXplID0gTUFYX0RJU1BMQVlfTEVOR1RIO1xuICAgICAgaWYgKCF2YWx1ZSB8fCB2YWx1ZS5sZW5ndGggPD0gc2l6ZSkge1xuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICB9XG4gICAgICBjb25zdCB0ZXh0ID0gYCR7dmFsdWUuc2xpY2UoMCwgc2l6ZSAvIDIpfVxcdTIwMjYke3ZhbHVlLnNsaWNlKC0oc2l6ZSAvIDIpICsgMSl9YDtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxGaWxlTGluayBocmVmPXt2YWx1ZX0gcmVsPVwibm9vcGVuZXJcIiB0YXJnZXQ9XCJfYmxhbmtcIj5cbiAgICAgICAgICB7dGV4dH1cbiAgICAgICAgPC9GaWxlTGluaz5cbiAgICAgICk7XG4gICAgfTtcblxuICAgIHJlbmRlckZpbGVMaW5rcyA9ICgpID0+IHtcbiAgICAgIGNvbnN0IHsgdmFsdWUgfSA9IHRoaXMucHJvcHM7XG5cbiAgICAgIGlmIChpc011bHRpcGxlKHZhbHVlKSkge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIDxGaWxlTGlua3M+XG4gICAgICAgICAgICA8RmlsZUxpbmtMaXN0PlxuICAgICAgICAgICAgICB7dmFsdWUubWFwKHZhbCA9PiAoXG4gICAgICAgICAgICAgICAgPGxpIGtleT17dmFsfT57dGhpcy5yZW5kZXJGaWxlTGluayh2YWwpfTwvbGk+XG4gICAgICAgICAgICAgICkpfVxuICAgICAgICAgICAgPC9GaWxlTGlua0xpc3Q+XG4gICAgICAgICAgPC9GaWxlTGlua3M+XG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICByZXR1cm4gPEZpbGVMaW5rcz57dGhpcy5yZW5kZXJGaWxlTGluayh2YWx1ZSl9PC9GaWxlTGlua3M+O1xuICAgIH07XG5cbiAgICByZW5kZXJJbWFnZXMgPSAoKSA9PiB7XG4gICAgICBjb25zdCB7IGdldEFzc2V0LCB2YWx1ZSwgZmllbGQgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBpdGVtcyA9IHZhbHVlTGlzdFRvU29ydGFibGVBcnJheSh2YWx1ZSk7XG4gICAgICBpZiAoaXNNdWx0aXBsZSh2YWx1ZSkpIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICA8U29ydGFibGVNdWx0aUltYWdlV3JhcHBlclxuICAgICAgICAgICAgaXRlbXM9e2l0ZW1zfVxuICAgICAgICAgICAgb25Tb3J0RW5kPXt0aGlzLm9uU29ydEVuZH1cbiAgICAgICAgICAgIG9uUmVtb3ZlT25lPXt0aGlzLm9uUmVtb3ZlT25lfVxuICAgICAgICAgICAgb25SZXBsYWNlT25lPXt0aGlzLm9uUmVwbGFjZU9uZX1cbiAgICAgICAgICAgIGRpc3RhbmNlPXs0fVxuICAgICAgICAgICAgZ2V0QXNzZXQ9e2dldEFzc2V0fVxuICAgICAgICAgICAgZmllbGQ9e2ZpZWxkfVxuICAgICAgICAgICAgYXhpcz1cInh5XCJcbiAgICAgICAgICAgIGxvY2tUb0NvbnRhaW5lckVkZ2VzPXt0cnVlfVxuICAgICAgICAgID48L1NvcnRhYmxlTXVsdGlJbWFnZVdyYXBwZXI+XG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHNyYyA9IGdldEFzc2V0KHZhbHVlLCBmaWVsZCk7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8SW1hZ2VXcmFwcGVyPlxuICAgICAgICAgIDxJbWFnZSBzcmM9e3NyYyB8fCAnJ30gLz5cbiAgICAgICAgPC9JbWFnZVdyYXBwZXI+XG4gICAgICApO1xuICAgIH07XG5cbiAgICByZW5kZXJTZWxlY3Rpb24gPSBzdWJqZWN0ID0+IHtcbiAgICAgIGNvbnN0IHsgdCwgZmllbGQgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBhbGxvd3NNdWx0aXBsZSA9IHRoaXMuYWxsb3dzTXVsdGlwbGUoKTtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge2ZvckltYWdlID8gdGhpcy5yZW5kZXJJbWFnZXMoKSA6IG51bGx9XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIHtmb3JJbWFnZSA/IG51bGwgOiB0aGlzLnJlbmRlckZpbGVMaW5rcygpfVxuICAgICAgICAgICAgPEZpbGVXaWRnZXRCdXR0b24gb25DbGljaz17dGhpcy5oYW5kbGVDaGFuZ2V9PlxuICAgICAgICAgICAgICB7dChcbiAgICAgICAgICAgICAgICBgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS4ke1xuICAgICAgICAgICAgICAgICAgdGhpcy5hbGxvd3NNdWx0aXBsZSgpID8gJ2FkZE1vcmUnIDogJ2Nob29zZURpZmZlcmVudCdcbiAgICAgICAgICAgICAgICB9YCxcbiAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIDwvRmlsZVdpZGdldEJ1dHRvbj5cbiAgICAgICAgICAgIHtmaWVsZC5nZXQoJ2Nob29zZV91cmwnLCB0cnVlKSAmJiAhdGhpcy5hbGxvd3NNdWx0aXBsZSgpID8gKFxuICAgICAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvbiBvbkNsaWNrPXt0aGlzLmhhbmRsZVVybChzdWJqZWN0KX0+XG4gICAgICAgICAgICAgICAge3QoYGVkaXRvci5lZGl0b3JXaWRnZXRzLiR7c3ViamVjdH0ucmVwbGFjZVVybGApfVxuICAgICAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b24+XG4gICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgIDxGaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlIG9uQ2xpY2s9e3RoaXMuaGFuZGxlUmVtb3ZlfT5cbiAgICAgICAgICAgICAge3QoYGVkaXRvci5lZGl0b3JXaWRnZXRzLiR7c3ViamVjdH0ucmVtb3ZlJHthbGxvd3NNdWx0aXBsZSA/ICdBbGwnIDogJyd9YCl9XG4gICAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b25SZW1vdmU+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgcmVuZGVyTm9TZWxlY3Rpb24gPSBzdWJqZWN0ID0+IHtcbiAgICAgIGNvbnN0IHsgdCwgZmllbGQgfSA9IHRoaXMucHJvcHM7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8PlxuICAgICAgICAgIDxGaWxlV2lkZ2V0QnV0dG9uIG9uQ2xpY2s9e3RoaXMuaGFuZGxlQ2hhbmdlfT5cbiAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LmNob29zZSR7dGhpcy5hbGxvd3NNdWx0aXBsZSgpID8gJ011bHRpcGxlJyA6ICcnfWApfVxuICAgICAgICAgIDwvRmlsZVdpZGdldEJ1dHRvbj5cbiAgICAgICAgICB7ZmllbGQuZ2V0KCdjaG9vc2VfdXJsJywgdHJ1ZSkgPyAoXG4gICAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvbiBvbkNsaWNrPXt0aGlzLmhhbmRsZVVybChzdWJqZWN0KX0+XG4gICAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LmNob29zZVVybGApfVxuICAgICAgICAgICAgPC9GaWxlV2lkZ2V0QnV0dG9uPlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICA8Lz5cbiAgICAgICk7XG4gICAgfTtcblxuICAgIHJlbmRlcigpIHtcbiAgICAgIGNvbnN0IHsgdmFsdWUsIGNsYXNzTmFtZVdyYXBwZXIgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBzdWJqZWN0ID0gZm9ySW1hZ2UgPyAnaW1hZ2UnIDogJ2ZpbGUnO1xuXG4gICAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Y2xhc3NOYW1lV3JhcHBlcn0+XG4gICAgICAgICAgPHNwYW4+e3ZhbHVlID8gdGhpcy5yZW5kZXJTZWxlY3Rpb24oc3ViamVjdCkgOiB0aGlzLnJlbmRlck5vU2VsZWN0aW9uKHN1YmplY3QpfTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICApO1xuICAgIH1cbiAgfTtcbn1cbiJdfQ== */",
|
|
129
176
|
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
130
177
|
});
|
|
131
178
|
const FileLinks = (0, _styledBase.default)("div", {
|
|
@@ -137,7 +184,7 @@ const FileLinks = (0, _styledBase.default)("div", {
|
|
|
137
184
|
} : {
|
|
138
185
|
name: "1upilqn",
|
|
139
186
|
styles: "margin-bottom:12px;",
|
|
140
|
-
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy93aXRoRmlsZUNvbnRyb2wuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBc0g0QiIsImZpbGUiOiIuLi8uLi9zcmMvd2l0aEZpbGVDb250cm9sLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgSW1tdXRhYmxlUHJvcFR5cGVzIGZyb20gJ3JlYWN0LWltbXV0YWJsZS1wcm9wdHlwZXMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vY29yZSc7XG5pbXBvcnQgeyBNYXAsIExpc3QgfSBmcm9tICdpbW11dGFibGUnO1xuaW1wb3J0IHsgb25jZSB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgdXVpZCBmcm9tICd1dWlkL3Y0JztcbmltcG9ydCB7IG9uZUxpbmUgfSBmcm9tICdjb21tb24tdGFncyc7XG5pbXBvcnQge1xuICBsZW5ndGhzLFxuICBjb21wb25lbnRzLFxuICBidXR0b25zLFxuICBib3JkZXJzLFxuICBlZmZlY3RzLFxuICBzaGFkb3dzLFxuICBJY29uQnV0dG9uLFxufSBmcm9tICdkZWNhcC1jbXMtdWktZGVmYXVsdCc7XG5pbXBvcnQgeyBiYXNlbmFtZSB9IGZyb20gJ2RlY2FwLWNtcy1saWItdXRpbCc7XG5pbXBvcnQgeyBTb3J0YWJsZUNvbnRhaW5lciwgU29ydGFibGVFbGVtZW50IH0gZnJvbSAncmVhY3Qtc29ydGFibGUtaG9jJztcbmltcG9ydCB7IGFycmF5TW92ZUltbXV0YWJsZSBhcyBhcnJheU1vdmUgfSBmcm9tICdhcnJheS1tb3ZlJztcblxuY29uc3QgTUFYX0RJU1BMQVlfTEVOR1RIID0gNTA7XG5cbmNvbnN0IEltYWdlV3JhcHBlciA9IHN0eWxlZC5kaXZgXG4gIGZsZXgtYmFzaXM6IDE1NXB4O1xuICB3aWR0aDogMTU1cHg7XG4gIGhlaWdodDogMTAwcHg7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgYm9yZGVyOiAke2JvcmRlcnMudGV4dEZpZWxkfTtcbiAgYm9yZGVyLXJhZGl1czogJHtsZW5ndGhzLmJvcmRlclJhZGl1c307XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gICR7ZWZmZWN0cy5jaGVja2VyYm9hcmR9O1xuICAke3NoYWRvd3MuaW5zZXR9O1xuICBjdXJzb3I6ICR7cHJvcHMgPT4gKHByb3BzLnNvcnRhYmxlID8gJ3BvaW50ZXInIDogJ2F1dG8nKX07XG5gO1xuXG5jb25zdCBTb3J0YWJsZUltYWdlQnV0dG9uc1dyYXBwZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY29sdW1uLWdhcDogMTBweDtcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbmA7XG5cbmNvbnN0IFN0eWxlZEltYWdlID0gc3R5bGVkLmltZ2BcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcbmA7XG5cbmZ1bmN0aW9uIEltYWdlKHByb3BzKSB7XG4gIHJldHVybiA8U3R5bGVkSW1hZ2Ugcm9sZT1cInByZXNlbnRhdGlvblwiIHsuLi5wcm9wc30gLz47XG59XG5cbmZ1bmN0aW9uIFNvcnRhYmxlSW1hZ2VCdXR0b25zKHsgb25SZW1vdmUsIG9uUmVwbGFjZSB9KSB7XG4gIHJldHVybiAoXG4gICAgPFNvcnRhYmxlSW1hZ2VCdXR0b25zV3JhcHBlcj5cbiAgICAgIDxJY29uQnV0dG9uIHNpemU9XCJzbWFsbFwiIHR5cGU9XCJtZWRpYVwiIG9uQ2xpY2s9e29uUmVwbGFjZX0+PC9JY29uQnV0dG9uPlxuICAgICAgPEljb25CdXR0b24gc2l6ZT1cInNtYWxsXCIgdHlwZT1cImNsb3NlXCIgb25DbGljaz17b25SZW1vdmV9PjwvSWNvbkJ1dHRvbj5cbiAgICA8L1NvcnRhYmxlSW1hZ2VCdXR0b25zV3JhcHBlcj5cbiAgKTtcbn1cblxuY29uc3QgU29ydGFibGVJbWFnZSA9IFNvcnRhYmxlRWxlbWVudCgoeyBpdGVtVmFsdWUsIGdldEFzc2V0LCBmaWVsZCwgb25SZW1vdmUsIG9uUmVwbGFjZSB9KSA9PiB7XG4gIHJldHVybiAoXG4gICAgPGRpdj5cbiAgICAgIDxJbWFnZVdyYXBwZXIgc29ydGFibGU+XG4gICAgICAgIDxJbWFnZSBzcmM9e2dldEFzc2V0KGl0ZW1WYWx1ZSwgZmllbGQpIHx8ICcnfSAvPlxuICAgICAgPC9JbWFnZVdyYXBwZXI+XG4gICAgICA8U29ydGFibGVJbWFnZUJ1dHRvbnNcbiAgICAgICAgaXRlbT17aXRlbVZhbHVlfVxuICAgICAgICBvblJlbW92ZT17b25SZW1vdmV9XG4gICAgICAgIG9uUmVwbGFjZT17b25SZXBsYWNlfVxuICAgICAgPjwvU29ydGFibGVJbWFnZUJ1dHRvbnM+XG4gICAgPC9kaXY+XG4gICk7XG59KTtcblxuY29uc3QgU29ydGFibGVNdWx0aUltYWdlV3JhcHBlciA9IFNvcnRhYmxlQ29udGFpbmVyKFxuICAoeyBpdGVtcywgZ2V0QXNzZXQsIGZpZWxkLCBvblJlbW92ZU9uZSwgb25SZXBsYWNlT25lIH0pID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgPGRpdlxuICAgICAgICBjc3M9e2Nzc2BcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgYH1cbiAgICAgID5cbiAgICAgICAge2l0ZW1zLm1hcCgoaXRlbVZhbHVlLCBpbmRleCkgPT4gKFxuICAgICAgICAgIDxTb3J0YWJsZUltYWdlXG4gICAgICAgICAgICBrZXk9e2BpdGVtLSR7aXRlbVZhbHVlfWB9XG4gICAgICAgICAgICBpbmRleD17aW5kZXh9XG4gICAgICAgICAgICBpdGVtVmFsdWU9e2l0ZW1WYWx1ZX1cbiAgICAgICAgICAgIGdldEFzc2V0PXtnZXRBc3NldH1cbiAgICAgICAgICAgIGZpZWxkPXtmaWVsZH1cbiAgICAgICAgICAgIG9uUmVtb3ZlPXtvblJlbW92ZU9uZShpbmRleCl9XG4gICAgICAgICAgICBvblJlcGxhY2U9e29uUmVwbGFjZU9uZShpbmRleCl9XG4gICAgICAgICAgLz5cbiAgICAgICAgKSl9XG4gICAgICA8L2Rpdj5cbiAgICApO1xuICB9LFxuKTtcblxuY29uc3QgRmlsZUxpbmsgPSBzdHlsZWQuYWBcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6IGluaGVyaXQ7XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG5gO1xuXG5jb25zdCBGaWxlTGlua3MgPSBzdHlsZWQuZGl2YFxuICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuYDtcblxuY29uc3QgRmlsZUxpbmtMaXN0ID0gc3R5bGVkLnVsYFxuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5gO1xuXG5jb25zdCBGaWxlV2lkZ2V0QnV0dG9uID0gc3R5bGVkLmJ1dHRvbmBcbiAgJHtidXR0b25zLmJ1dHRvbn07XG4gICR7Y29tcG9uZW50cy5iYWRnZX07XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG5gO1xuXG5jb25zdCBGaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlID0gc3R5bGVkLmJ1dHRvbmBcbiAgJHtidXR0b25zLmJ1dHRvbn07XG4gICR7Y29tcG9uZW50cy5iYWRnZURhbmdlcn07XG5gO1xuXG5mdW5jdGlvbiBpc011bHRpcGxlKHZhbHVlKSB7XG4gIHJldHVybiBBcnJheS5pc0FycmF5KHZhbHVlKSB8fCBMaXN0LmlzTGlzdCh2YWx1ZSk7XG59XG5cbmZ1bmN0aW9uIHNpemVPZlZhbHVlKHZhbHVlKSB7XG4gIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgIHJldHVybiB2YWx1ZS5sZW5ndGg7XG4gIH1cblxuICBpZiAoTGlzdC5pc0xpc3QodmFsdWUpKSB7XG4gICAgcmV0dXJuIHZhbHVlLnNpemU7XG4gIH1cblxuICByZXR1cm4gdmFsdWUgPyAxIDogMDtcbn1cblxuZnVuY3Rpb24gdmFsdWVMaXN0VG9BcnJheSh2YWx1ZSkge1xuICByZXR1cm4gTGlzdC5pc0xpc3QodmFsdWUpID8gdmFsdWUudG9BcnJheSgpIDogdmFsdWU7XG59XG5cbmNvbnN0IHdhcm5EZXByZWNhdGVkT3B0aW9ucyA9IG9uY2UoZmllbGQgPT5cbiAgY29uc29sZS53YXJuKG9uZUxpbmVgXG4gIERlY2FwIENNUyBjb25maWc6ICR7ZmllbGQuZ2V0KCduYW1lJyl9IGZpZWxkOiBwcm9wZXJ0eSBcIm9wdGlvbnNcIiBoYXMgYmVlbiBkZXByZWNhdGVkIGZvciB0aGVcbiAgJHtmaWVsZC5nZXQoJ3dpZGdldCcpfSB3aWRnZXQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgbmV4dCBtYWpvciByZWxlYXNlLiBSYXRoZXIgdGhhblxuICBcXGBmaWVsZC5vcHRpb25zLm1lZGlhX2xpYnJhcnlcXGAsIGFwcGx5IG1lZGlhIGxpYnJhcnkgb3B0aW9ucyBmb3IgdGhpcyB3aWRnZXQgdW5kZXJcbiAgXFxgZmllbGQubWVkaWFfbGlicmFyeVxcYC5cbmApLFxuKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gd2l0aEZpbGVDb250cm9sKHsgZm9ySW1hZ2UgfSA9IHt9KSB7XG4gIHJldHVybiBjbGFzcyBGaWxlQ29udHJvbCBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gICAgc3RhdGljIHByb3BUeXBlcyA9IHtcbiAgICAgIGZpZWxkOiBQcm9wVHlwZXMub2JqZWN0LmlzUmVxdWlyZWQsXG4gICAgICBnZXRBc3NldDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG1lZGlhUGF0aHM6IEltbXV0YWJsZVByb3BUeXBlcy5tYXAuaXNSZXF1aXJlZCxcbiAgICAgIG9uQWRkQXNzZXQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgICBvbkNoYW5nZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uUmVtb3ZlSW5zZXJ0ZWRNZWRpYTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uT3Blbk1lZGlhTGlicmFyeTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uQ2xlYXJNZWRpYUNvbnRyb2w6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgICBvblJlbW92ZU1lZGlhQ29udHJvbDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIGNsYXNzTmFtZVdyYXBwZXI6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgICAgIHZhbHVlOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtcbiAgICAgICAgUHJvcFR5cGVzLnN0cmluZyxcbiAgICAgICAgUHJvcFR5cGVzLmFycmF5T2YoUHJvcFR5cGVzLnN0cmluZyksXG4gICAgICAgIEltbXV0YWJsZVByb3BUeXBlcy5saXN0T2YoUHJvcFR5cGVzLnN0cmluZyksXG4gICAgICBdKSxcbiAgICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgfTtcblxuICAgIHN0YXRpYyBkZWZhdWx0UHJvcHMgPSB7XG4gICAgICB2YWx1ZTogJycsXG4gICAgfTtcblxuICAgIGNvbnN0cnVjdG9yKHByb3BzKSB7XG4gICAgICBzdXBlcihwcm9wcyk7XG4gICAgICB0aGlzLmNvbnRyb2xJRCA9IHV1aWQoKTtcbiAgICB9XG5cbiAgICBzaG91bGRDb21wb25lbnRVcGRhdGUobmV4dFByb3BzKSB7XG4gICAgICAvKipcbiAgICAgICAqIEFsd2F5cyB1cGRhdGUgaWYgdGhlIHZhbHVlIG9yIGdldEFzc2V0IGNoYW5nZXMuXG4gICAgICAgKi9cbiAgICAgIGlmICh0aGlzLnByb3BzLnZhbHVlICE9PSBuZXh0UHJvcHMudmFsdWUgfHwgdGhpcy5wcm9wcy5nZXRBc3NldCAhPT0gbmV4dFByb3BzLmdldEFzc2V0KSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuXG4gICAgICAvKipcbiAgICAgICAqIElmIHRoZXJlIGlzIGEgbWVkaWEgcGF0aCBmb3IgdGhpcyBjb250cm9sIGluIHRoZSBzdGF0ZSBvYmplY3QsIGFuZCB0aGF0XG4gICAgICAgKiBwYXRoIGlzIGRpZmZlcmVudCB0aGFuIHRoZSB2YWx1ZSBpbiBgbmV4dFByb3BzYCwgdXBkYXRlLlxuICAgICAgICovXG4gICAgICBjb25zdCBtZWRpYVBhdGggPSBuZXh0UHJvcHMubWVkaWFQYXRocy5nZXQodGhpcy5jb250cm9sSUQpO1xuICAgICAgaWYgKG1lZGlhUGF0aCAmJiBuZXh0UHJvcHMudmFsdWUgIT09IG1lZGlhUGF0aCkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGNvbXBvbmVudERpZFVwZGF0ZSgpIHtcbiAgICAgIGNvbnN0IHsgbWVkaWFQYXRocywgdmFsdWUsIG9uUmVtb3ZlSW5zZXJ0ZWRNZWRpYSwgb25DaGFuZ2UgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBtZWRpYVBhdGggPSBtZWRpYVBhdGhzLmdldCh0aGlzLmNvbnRyb2xJRCk7XG4gICAgICBpZiAobWVkaWFQYXRoICYmIG1lZGlhUGF0aCAhPT0gdmFsdWUpIHtcbiAgICAgICAgb25DaGFuZ2UobWVkaWFQYXRoKTtcbiAgICAgIH0gZWxzZSBpZiAobWVkaWFQYXRoICYmIG1lZGlhUGF0aCA9PT0gdmFsdWUpIHtcbiAgICAgICAgb25SZW1vdmVJbnNlcnRlZE1lZGlhKHRoaXMuY29udHJvbElEKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb21wb25lbnRXaWxsVW5tb3VudCgpIHtcbiAgICAgIHRoaXMucHJvcHMub25SZW1vdmVNZWRpYUNvbnRyb2wodGhpcy5jb250cm9sSUQpO1xuICAgIH1cblxuICAgIGhhbmRsZUNoYW5nZSA9IGUgPT4ge1xuICAgICAgY29uc3QgeyBmaWVsZCwgb25PcGVuTWVkaWFMaWJyYXJ5LCB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgIGNvbnN0IG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucyA9IHRoaXMuZ2V0TWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zKCk7XG5cbiAgICAgIHJldHVybiBvbk9wZW5NZWRpYUxpYnJhcnkoe1xuICAgICAgICBjb250cm9sSUQ6IHRoaXMuY29udHJvbElELFxuICAgICAgICBmb3JJbWFnZSxcbiAgICAgICAgcHJpdmF0ZVVwbG9hZDogZmllbGQuZ2V0KCdwcml2YXRlJyksXG4gICAgICAgIHZhbHVlOiB2YWx1ZUxpc3RUb0FycmF5KHZhbHVlKSxcbiAgICAgICAgYWxsb3dNdWx0aXBsZTogISFtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMuZ2V0KCdhbGxvd19tdWx0aXBsZScsIHRydWUpLFxuICAgICAgICBjb25maWc6IG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycpLFxuICAgICAgICBmaWVsZCxcbiAgICAgIH0pO1xuICAgIH07XG5cbiAgICBoYW5kbGVVcmwgPSBzdWJqZWN0ID0+IGUgPT4ge1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgICBjb25zdCB1cmwgPSB3aW5kb3cucHJvbXB0KHRoaXMucHJvcHMudChgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS5wcm9tcHRVcmxgKSk7XG5cbiAgICAgIHJldHVybiB0aGlzLnByb3BzLm9uQ2hhbmdlKHVybCk7XG4gICAgfTtcblxuICAgIGhhbmRsZVJlbW92ZSA9IGUgPT4ge1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgdGhpcy5wcm9wcy5vbkNsZWFyTWVkaWFDb250cm9sKHRoaXMuY29udHJvbElEKTtcbiAgICAgIHJldHVybiB0aGlzLnByb3BzLm9uQ2hhbmdlKCcnKTtcbiAgICB9O1xuXG4gICAgb25SZW1vdmVPbmUgPSBpbmRleCA9PiAoKSA9PiB7XG4gICAgICBjb25zdCB7IHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgdmFsdWUuc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgIHJldHVybiB0aGlzLnByb3BzLm9uQ2hhbmdlKHNpemVPZlZhbHVlKHZhbHVlKSA+IDAgPyBbLi4udmFsdWVdIDogbnVsbCk7XG4gICAgfTtcblxuICAgIG9uUmVwbGFjZU9uZSA9IGluZGV4ID0+ICgpID0+IHtcbiAgICAgIGNvbnN0IHsgZmllbGQsIG9uT3Blbk1lZGlhTGlicmFyeSwgdmFsdWUgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMgPSB0aGlzLmdldE1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucygpO1xuXG4gICAgICByZXR1cm4gb25PcGVuTWVkaWFMaWJyYXJ5KHtcbiAgICAgICAgY29udHJvbElEOiB0aGlzLmNvbnRyb2xJRCxcbiAgICAgICAgZm9ySW1hZ2UsXG4gICAgICAgIHByaXZhdGVVcGxvYWQ6IGZpZWxkLmdldCgncHJpdmF0ZScpLFxuICAgICAgICB2YWx1ZTogdmFsdWVMaXN0VG9BcnJheSh2YWx1ZSksXG4gICAgICAgIHJlcGxhY2VJbmRleDogaW5kZXgsXG4gICAgICAgIGFsbG93TXVsdGlwbGU6IGZhbHNlLFxuICAgICAgICBjb25maWc6IG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycpLFxuICAgICAgICBmaWVsZCxcbiAgICAgIH0pO1xuICAgIH07XG5cbiAgICBnZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMgPSAoKSA9PiB7XG4gICAgICBjb25zdCB7IGZpZWxkIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgICBpZiAoZmllbGQuaGFzSW4oWydvcHRpb25zJywgJ21lZGlhX2xpYnJhcnknXSkpIHtcbiAgICAgICAgd2FybkRlcHJlY2F0ZWRPcHRpb25zKGZpZWxkKTtcbiAgICAgICAgcmV0dXJuIGZpZWxkLmdldEluKFsnb3B0aW9ucycsICdtZWRpYV9saWJyYXJ5J10sIE1hcCgpKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZpZWxkLmdldCgnbWVkaWFfbGlicmFyeScsIE1hcCgpKTtcbiAgICB9O1xuXG4gICAgYWxsb3dzTXVsdGlwbGUgPSAoKSA9PiB7XG4gICAgICBjb25zdCBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMgPSB0aGlzLmdldE1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucygpO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zLmdldCgnY29uZmlnJywgZmFsc2UpICYmXG4gICAgICAgIG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycpLmdldCgnbXVsdGlwbGUnLCBmYWxzZSlcbiAgICAgICk7XG4gICAgfTtcblxuICAgIG9uU29ydEVuZCA9ICh7IG9sZEluZGV4LCBuZXdJbmRleCB9KSA9PiB7XG4gICAgICBjb25zdCB7IHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgbmV3VmFsdWUgPSBhcnJheU1vdmUodmFsdWUsIG9sZEluZGV4LCBuZXdJbmRleCk7XG4gICAgICByZXR1cm4gdGhpcy5wcm9wcy5vbkNoYW5nZShuZXdWYWx1ZSk7XG4gICAgfTtcblxuICAgIGdldFZhbGlkYXRlVmFsdWUgPSAoKSA9PiB7XG4gICAgICBjb25zdCB7IHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgIHJldHVybiBpc011bHRpcGxlKHZhbHVlKSA/IHZhbHVlLm1hcCh2ID0+IGJhc2VuYW1lKHYpKSA6IGJhc2VuYW1lKHZhbHVlKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH07XG5cbiAgICByZW5kZXJGaWxlTGluayA9IHZhbHVlID0+IHtcbiAgICAgIGNvbnN0IHNpemUgPSBNQVhfRElTUExBWV9MRU5HVEg7XG4gICAgICBpZiAoIXZhbHVlIHx8IHZhbHVlLmxlbmd0aCA8PSBzaXplKSB7XG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHRleHQgPSBgJHt2YWx1ZS5zbGljZSgwLCBzaXplIC8gMil9XFx1MjAyNiR7dmFsdWUuc2xpY2UoLShzaXplIC8gMikgKyAxKX1gO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPEZpbGVMaW5rIGhyZWY9e3ZhbHVlfSByZWw9XCJub29wZW5lclwiIHRhcmdldD1cIl9ibGFua1wiPlxuICAgICAgICAgIHt0ZXh0fVxuICAgICAgICA8L0ZpbGVMaW5rPlxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgcmVuZGVyRmlsZUxpbmtzID0gKCkgPT4ge1xuICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcblxuICAgICAgaWYgKGlzTXVsdGlwbGUodmFsdWUpKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPEZpbGVMaW5rcz5cbiAgICAgICAgICAgIDxGaWxlTGlua0xpc3Q+XG4gICAgICAgICAgICAgIHt2YWx1ZS5tYXAodmFsID0+IChcbiAgICAgICAgICAgICAgICA8bGkga2V5PXt2YWx9Pnt0aGlzLnJlbmRlckZpbGVMaW5rKHZhbCl9PC9saT5cbiAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICA8L0ZpbGVMaW5rTGlzdD5cbiAgICAgICAgICA8L0ZpbGVMaW5rcz5cbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiA8RmlsZUxpbmtzPnt0aGlzLnJlbmRlckZpbGVMaW5rKHZhbHVlKX08L0ZpbGVMaW5rcz47XG4gICAgfTtcblxuICAgIHJlbmRlckltYWdlcyA9ICgpID0+IHtcbiAgICAgIGNvbnN0IHsgZ2V0QXNzZXQsIHZhbHVlLCBmaWVsZCB9ID0gdGhpcy5wcm9wcztcblxuICAgICAgaWYgKGlzTXVsdGlwbGUodmFsdWUpKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPFNvcnRhYmxlTXVsdGlJbWFnZVdyYXBwZXJcbiAgICAgICAgICAgIGl0ZW1zPXt2YWx1ZX1cbiAgICAgICAgICAgIG9uU29ydEVuZD17dGhpcy5vblNvcnRFbmR9XG4gICAgICAgICAgICBvblJlbW92ZU9uZT17dGhpcy5vblJlbW92ZU9uZX1cbiAgICAgICAgICAgIG9uUmVwbGFjZU9uZT17dGhpcy5vblJlcGxhY2VPbmV9XG4gICAgICAgICAgICBkaXN0YW5jZT17NH1cbiAgICAgICAgICAgIGdldEFzc2V0PXtnZXRBc3NldH1cbiAgICAgICAgICAgIGZpZWxkPXtmaWVsZH1cbiAgICAgICAgICAgIGF4aXM9XCJ4eVwiXG4gICAgICAgICAgICBsb2NrVG9Db250YWluZXJFZGdlcz17dHJ1ZX1cbiAgICAgICAgICA+PC9Tb3J0YWJsZU11bHRpSW1hZ2VXcmFwcGVyPlxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBzcmMgPSBnZXRBc3NldCh2YWx1ZSwgZmllbGQpO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPEltYWdlV3JhcHBlcj5cbiAgICAgICAgICA8SW1hZ2Ugc3JjPXtzcmMgfHwgJyd9IC8+XG4gICAgICAgIDwvSW1hZ2VXcmFwcGVyPlxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgcmVuZGVyU2VsZWN0aW9uID0gc3ViamVjdCA9PiB7XG4gICAgICBjb25zdCB7IHQsIGZpZWxkIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgYWxsb3dzTXVsdGlwbGUgPSB0aGlzLmFsbG93c011bHRpcGxlKCk7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2PlxuICAgICAgICAgIHtmb3JJbWFnZSA/IHRoaXMucmVuZGVySW1hZ2VzKCkgOiBudWxsfVxuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICB7Zm9ySW1hZ2UgPyBudWxsIDogdGhpcy5yZW5kZXJGaWxlTGlua3MoKX1cbiAgICAgICAgICAgIDxGaWxlV2lkZ2V0QnV0dG9uIG9uQ2xpY2s9e3RoaXMuaGFuZGxlQ2hhbmdlfT5cbiAgICAgICAgICAgICAge3QoXG4gICAgICAgICAgICAgICAgYGVkaXRvci5lZGl0b3JXaWRnZXRzLiR7c3ViamVjdH0uJHtcbiAgICAgICAgICAgICAgICAgIHRoaXMuYWxsb3dzTXVsdGlwbGUoKSA/ICdhZGRNb3JlJyA6ICdjaG9vc2VEaWZmZXJlbnQnXG4gICAgICAgICAgICAgICAgfWAsXG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b24+XG4gICAgICAgICAgICB7ZmllbGQuZ2V0KCdjaG9vc2VfdXJsJywgdHJ1ZSkgJiYgIXRoaXMuYWxsb3dzTXVsdGlwbGUoKSA/IChcbiAgICAgICAgICAgICAgPEZpbGVXaWRnZXRCdXR0b24gb25DbGljaz17dGhpcy5oYW5kbGVVcmwoc3ViamVjdCl9PlxuICAgICAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LnJlcGxhY2VVcmxgKX1cbiAgICAgICAgICAgICAgPC9GaWxlV2lkZ2V0QnV0dG9uPlxuICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvblJlbW92ZSBvbkNsaWNrPXt0aGlzLmhhbmRsZVJlbW92ZX0+XG4gICAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LnJlbW92ZSR7YWxsb3dzTXVsdGlwbGUgPyAnQWxsJyA6ICcnfWApfVxuICAgICAgICAgICAgPC9GaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICk7XG4gICAgfTtcblxuICAgIHJlbmRlck5vU2VsZWN0aW9uID0gc3ViamVjdCA9PiB7XG4gICAgICBjb25zdCB7IHQsIGZpZWxkIH0gPSB0aGlzLnByb3BzO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPD5cbiAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvbiBvbkNsaWNrPXt0aGlzLmhhbmRsZUNoYW5nZX0+XG4gICAgICAgICAgICB7dChgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS5jaG9vc2Uke3RoaXMuYWxsb3dzTXVsdGlwbGUoKSA/ICdNdWx0aXBsZScgOiAnJ31gKX1cbiAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b24+XG4gICAgICAgICAge2ZpZWxkLmdldCgnY2hvb3NlX3VybCcsIHRydWUpID8gKFxuICAgICAgICAgICAgPEZpbGVXaWRnZXRCdXR0b24gb25DbGljaz17dGhpcy5oYW5kbGVVcmwoc3ViamVjdCl9PlxuICAgICAgICAgICAgICB7dChgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS5jaG9vc2VVcmxgKX1cbiAgICAgICAgICAgIDwvRmlsZVdpZGdldEJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC8+XG4gICAgICApO1xuICAgIH07XG5cbiAgICByZW5kZXIoKSB7XG4gICAgICBjb25zdCB7IHZhbHVlLCBjbGFzc05hbWVXcmFwcGVyIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3Qgc3ViamVjdCA9IGZvckltYWdlID8gJ2ltYWdlJyA6ICdmaWxlJztcblxuICAgICAgcmV0dXJuIChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e2NsYXNzTmFtZVdyYXBwZXJ9PlxuICAgICAgICAgIDxzcGFuPnt2YWx1ZSA/IHRoaXMucmVuZGVyU2VsZWN0aW9uKHN1YmplY3QpIDogdGhpcy5yZW5kZXJOb1NlbGVjdGlvbihzdWJqZWN0KX08L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKTtcbiAgICB9XG4gIH07XG59XG4iXX0= */",
|
|
187
|
+
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy93aXRoRmlsZUNvbnRyb2wuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBd0s0QiIsImZpbGUiOiIuLi8uLi9zcmMvd2l0aEZpbGVDb250cm9sLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgSW1tdXRhYmxlUHJvcFR5cGVzIGZyb20gJ3JlYWN0LWltbXV0YWJsZS1wcm9wdHlwZXMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vY29yZSc7XG5pbXBvcnQgeyBNYXAsIExpc3QgfSBmcm9tICdpbW11dGFibGUnO1xuaW1wb3J0IHsgb25jZSB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyB2NCBhcyB1dWlkIH0gZnJvbSAndXVpZCc7XG5pbXBvcnQgeyBvbmVMaW5lIH0gZnJvbSAnY29tbW9uLXRhZ3MnO1xuaW1wb3J0IHtcbiAgbGVuZ3RocyxcbiAgY29tcG9uZW50cyxcbiAgYnV0dG9ucyxcbiAgYm9yZGVycyxcbiAgZWZmZWN0cyxcbiAgc2hhZG93cyxcbiAgSWNvbkJ1dHRvbixcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuaW1wb3J0IHsgYmFzZW5hbWUgfSBmcm9tICdkZWNhcC1jbXMtbGliLXV0aWwnO1xuaW1wb3J0IHsgYXJyYXlNb3ZlSW1tdXRhYmxlIGFzIGFycmF5TW92ZSB9IGZyb20gJ2FycmF5LW1vdmUnO1xuaW1wb3J0IHtcbiAgRG5kQ29udGV4dCxcbiAgTW91c2VTZW5zb3IsXG4gIFRvdWNoU2Vuc29yLFxuICBjbG9zZXN0Q2VudGVyLFxuICB1c2VTZW5zb3IsXG4gIHVzZVNlbnNvcnMsXG59IGZyb20gJ0BkbmQta2l0L2NvcmUnO1xuaW1wb3J0IHsgU29ydGFibGVDb250ZXh0LCB1c2VTb3J0YWJsZSB9IGZyb20gJ0BkbmQta2l0L3NvcnRhYmxlJztcbmltcG9ydCB7IENTUyB9IGZyb20gJ0BkbmQta2l0L3V0aWxpdGllcyc7XG5pbXBvcnQgeyByZXN0cmljdFRvUGFyZW50RWxlbWVudCB9IGZyb20gJ0BkbmQta2l0L21vZGlmaWVycyc7XG5cbmNvbnN0IE1BWF9ESVNQTEFZX0xFTkdUSCA9IDUwO1xuXG5jb25zdCBJbWFnZVdyYXBwZXIgPSBzdHlsZWQuZGl2YFxuICBmbGV4LWJhc2lzOiAxNTVweDtcbiAgd2lkdGg6IDE1NXB4O1xuICBoZWlnaHQ6IDEwMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGJvcmRlcjogJHtib3JkZXJzLnRleHRGaWVsZH07XG4gIGJvcmRlci1yYWRpdXM6ICR7bGVuZ3Rocy5ib3JkZXJSYWRpdXN9O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAke2VmZmVjdHMuY2hlY2tlcmJvYXJkfTtcbiAgJHtzaGFkb3dzLmluc2V0fTtcbiAgY3Vyc29yOiAke3Byb3BzID0+IChwcm9wcy5zb3J0YWJsZSA/ICdwb2ludGVyJyA6ICdhdXRvJyl9O1xuYDtcblxuY29uc3QgU29ydGFibGVJbWFnZUJ1dHRvbnNXcmFwcGVyID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGNvbHVtbi1nYXA6IDEwcHg7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbiAgbWFyZ2luLXRvcDogLTEwcHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG5gO1xuXG5jb25zdCBTdHlsZWRJbWFnZSA9IHN0eWxlZC5pbWdgXG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvbnRhaW47XG5gO1xuXG5mdW5jdGlvbiBJbWFnZShwcm9wcykge1xuICByZXR1cm4gPFN0eWxlZEltYWdlIHJvbGU9XCJwcmVzZW50YXRpb25cIiB7Li4ucHJvcHN9IC8+O1xufVxuXG5mdW5jdGlvbiBTb3J0YWJsZUltYWdlQnV0dG9ucyh7IG9uUmVtb3ZlLCBvblJlcGxhY2UgfSkge1xuICByZXR1cm4gKFxuICAgIDxTb3J0YWJsZUltYWdlQnV0dG9uc1dyYXBwZXI+XG4gICAgICA8SWNvbkJ1dHRvbiBzaXplPVwic21hbGxcIiB0eXBlPVwibWVkaWFcIiBvbkNsaWNrPXtvblJlcGxhY2V9PjwvSWNvbkJ1dHRvbj5cbiAgICAgIDxJY29uQnV0dG9uIHNpemU9XCJzbWFsbFwiIHR5cGU9XCJjbG9zZVwiIG9uQ2xpY2s9e29uUmVtb3ZlfT48L0ljb25CdXR0b24+XG4gICAgPC9Tb3J0YWJsZUltYWdlQnV0dG9uc1dyYXBwZXI+XG4gICk7XG59XG5cbmZ1bmN0aW9uIFNvcnRhYmxlSW1hZ2UocHJvcHMpIHtcbiAgY29uc3QgeyBhdHRyaWJ1dGVzLCBsaXN0ZW5lcnMsIHNldE5vZGVSZWYsIHRyYW5zZm9ybSwgdHJhbnNpdGlvbiB9ID0gdXNlU29ydGFibGUoe1xuICAgIGlkOiBwcm9wcy5pZCxcbiAgfSk7XG5cbiAgY29uc3Qgc3R5bGUgPSB7XG4gICAgdHJhbnNmb3JtOiBDU1MuVHJhbnNmb3JtLnRvU3RyaW5nKHRyYW5zZm9ybSksXG4gICAgdHJhbnNpdGlvbixcbiAgfTtcblxuICBjb25zdCB7IGl0ZW1WYWx1ZSwgZ2V0QXNzZXQsIGZpZWxkLCBvblJlbW92ZSwgb25SZXBsYWNlIH0gPSBwcm9wcztcblxuICByZXR1cm4gKFxuICAgIDxkaXYgcmVmPXtzZXROb2RlUmVmfSBzdHlsZT17c3R5bGV9IHsuLi5hdHRyaWJ1dGVzfSB7Li4ubGlzdGVuZXJzfT5cbiAgICAgIDxJbWFnZVdyYXBwZXIgc29ydGFibGU+XG4gICAgICAgIDxJbWFnZSBzcmM9e2dldEFzc2V0KGl0ZW1WYWx1ZSwgZmllbGQpIHx8ICcnfSAvPlxuICAgICAgPC9JbWFnZVdyYXBwZXI+XG4gICAgICA8U29ydGFibGVJbWFnZUJ1dHRvbnNcbiAgICAgICAgaXRlbT17aXRlbVZhbHVlfVxuICAgICAgICBvblJlbW92ZT17b25SZW1vdmV9XG4gICAgICAgIG9uUmVwbGFjZT17b25SZXBsYWNlfVxuICAgICAgPjwvU29ydGFibGVJbWFnZUJ1dHRvbnM+XG4gICAgPC9kaXY+XG4gICk7XG59XG5cbmZ1bmN0aW9uIFNvcnRhYmxlTXVsdGlJbWFnZVdyYXBwZXIoe1xuICBpdGVtcyxcbiAgZ2V0QXNzZXQsXG4gIGZpZWxkLFxuICBvblNvcnRFbmQsXG4gIG9uUmVtb3ZlT25lLFxuICBvblJlcGxhY2VPbmUsXG59KSB7XG4gIGNvbnN0IGFjdGl2YXRpb25Db25zdHJhaW50ID0geyBkaXN0YW5jZTogNCB9O1xuICBjb25zdCBzZW5zb3JzID0gdXNlU2Vuc29ycyhcbiAgICB1c2VTZW5zb3IoTW91c2VTZW5zb3IsIHsgYWN0aXZhdGlvbkNvbnN0cmFpbnQgfSksXG4gICAgdXNlU2Vuc29yKFRvdWNoU2Vuc29yLCB7IGFjdGl2YXRpb25Db25zdHJhaW50IH0pLFxuICApO1xuXG4gIGZ1bmN0aW9uIGhhbmRsZVNvcnRFbmQoeyBhY3RpdmUsIG92ZXIgfSkge1xuICAgIG9uU29ydEVuZCh7XG4gICAgICBvbGRJbmRleDogaXRlbXMuZmluZEluZGV4KGl0ZW0gPT4gaXRlbS5pZCA9PT0gYWN0aXZlLmlkKSxcbiAgICAgIG5ld0luZGV4OiBpdGVtcy5maW5kSW5kZXgoaXRlbSA9PiBpdGVtLmlkID09PSBvdmVyLmlkKSxcbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPGRpdlxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0L25vLXVua25vd24tcHJvcGVydHlcbiAgICAgIGNzcz17Y3NzYFxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBgfVxuICAgID5cbiAgICAgIDxEbmRDb250ZXh0XG4gICAgICAgIG1vZGlmaWVycz17W3Jlc3RyaWN0VG9QYXJlbnRFbGVtZW50XX1cbiAgICAgICAgY29sbGlzaW9uRGV0ZWN0aW9uPXtjbG9zZXN0Q2VudGVyfVxuICAgICAgICBzZW5zb3JzPXtzZW5zb3JzfVxuICAgICAgICBvbkRyYWdFbmQ9e2hhbmRsZVNvcnRFbmR9XG4gICAgICA+XG4gICAgICAgIDxTb3J0YWJsZUNvbnRleHQgaXRlbXM9e2l0ZW1zfT5cbiAgICAgICAgICB7aXRlbXMubWFwKChpdGVtLCBpbmRleCkgPT4gKFxuICAgICAgICAgICAgPFNvcnRhYmxlSW1hZ2VcbiAgICAgICAgICAgICAga2V5PXtpdGVtLmlkfVxuICAgICAgICAgICAgICBpZD17aXRlbS5pZH1cbiAgICAgICAgICAgICAgaW5kZXg9e2luZGV4fVxuICAgICAgICAgICAgICBpdGVtVmFsdWU9e2l0ZW0udmFsdWV9XG4gICAgICAgICAgICAgIGdldEFzc2V0PXtnZXRBc3NldH1cbiAgICAgICAgICAgICAgZmllbGQ9e2ZpZWxkfVxuICAgICAgICAgICAgICBvblJlbW92ZT17b25SZW1vdmVPbmUoaW5kZXgpfVxuICAgICAgICAgICAgICBvblJlcGxhY2U9e29uUmVwbGFjZU9uZShpbmRleCl9XG4gICAgICAgICAgICA+PC9Tb3J0YWJsZUltYWdlPlxuICAgICAgICAgICkpfVxuICAgICAgICA8L1NvcnRhYmxlQ29udGV4dD5cbiAgICAgIDwvRG5kQ29udGV4dD5cbiAgICA8L2Rpdj5cbiAgKTtcbn1cblxuY29uc3QgRmlsZUxpbmsgPSBzdHlsZWQuYWBcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6IGluaGVyaXQ7XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG5gO1xuXG5jb25zdCBGaWxlTGlua3MgPSBzdHlsZWQuZGl2YFxuICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuYDtcblxuY29uc3QgRmlsZUxpbmtMaXN0ID0gc3R5bGVkLnVsYFxuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5gO1xuXG5jb25zdCBGaWxlV2lkZ2V0QnV0dG9uID0gc3R5bGVkLmJ1dHRvbmBcbiAgJHtidXR0b25zLmJ1dHRvbn07XG4gICR7Y29tcG9uZW50cy5iYWRnZX07XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG5gO1xuXG5jb25zdCBGaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlID0gc3R5bGVkLmJ1dHRvbmBcbiAgJHtidXR0b25zLmJ1dHRvbn07XG4gICR7Y29tcG9uZW50cy5iYWRnZURhbmdlcn07XG5gO1xuXG5mdW5jdGlvbiBpc011bHRpcGxlKHZhbHVlKSB7XG4gIHJldHVybiBBcnJheS5pc0FycmF5KHZhbHVlKSB8fCBMaXN0LmlzTGlzdCh2YWx1ZSk7XG59XG5cbmZ1bmN0aW9uIHNpemVPZlZhbHVlKHZhbHVlKSB7XG4gIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgIHJldHVybiB2YWx1ZS5sZW5ndGg7XG4gIH1cblxuICBpZiAoTGlzdC5pc0xpc3QodmFsdWUpKSB7XG4gICAgcmV0dXJuIHZhbHVlLnNpemU7XG4gIH1cblxuICByZXR1cm4gdmFsdWUgPyAxIDogMDtcbn1cblxuZnVuY3Rpb24gdmFsdWVMaXN0VG9BcnJheSh2YWx1ZSkge1xuICByZXR1cm4gTGlzdC5pc0xpc3QodmFsdWUpID8gdmFsdWUudG9BcnJheSgpIDogdmFsdWUgPz8gJyc7XG59XG5cbmZ1bmN0aW9uIHZhbHVlTGlzdFRvU29ydGFibGVBcnJheSh2YWx1ZSkge1xuICBpZiAoIWlzTXVsdGlwbGUodmFsdWUpKSB7XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG5cbiAgY29uc3QgdmFsdWVBcnJheSA9IHZhbHVlTGlzdFRvQXJyYXkodmFsdWUpLm1hcCh2YWx1ZSA9PiAoe1xuICAgIGlkOiB1dWlkKCksXG4gICAgdmFsdWUsXG4gIH0pKTtcblxuICByZXR1cm4gdmFsdWVBcnJheTtcbn1cblxuY29uc3Qgd2FybkRlcHJlY2F0ZWRPcHRpb25zID0gb25jZShmaWVsZCA9PlxuICBjb25zb2xlLndhcm4ob25lTGluZWBcbiAgRGVjYXAgQ01TIGNvbmZpZzogJHtmaWVsZC5nZXQoJ25hbWUnKX0gZmllbGQ6IHByb3BlcnR5IFwib3B0aW9uc1wiIGhhcyBiZWVuIGRlcHJlY2F0ZWQgZm9yIHRoZVxuICAke2ZpZWxkLmdldCgnd2lkZ2V0Jyl9IHdpZGdldCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IG1ham9yIHJlbGVhc2UuIFJhdGhlciB0aGFuXG4gIFxcYGZpZWxkLm9wdGlvbnMubWVkaWFfbGlicmFyeVxcYCwgYXBwbHkgbWVkaWEgbGlicmFyeSBvcHRpb25zIGZvciB0aGlzIHdpZGdldCB1bmRlclxuICBcXGBmaWVsZC5tZWRpYV9saWJyYXJ5XFxgLlxuYCksXG4pO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB3aXRoRmlsZUNvbnRyb2woeyBmb3JJbWFnZSB9ID0ge30pIHtcbiAgcmV0dXJuIGNsYXNzIEZpbGVDb250cm9sIGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50IHtcbiAgICBzdGF0aWMgcHJvcFR5cGVzID0ge1xuICAgICAgZmllbGQ6IFByb3BUeXBlcy5vYmplY3QuaXNSZXF1aXJlZCxcbiAgICAgIGdldEFzc2V0OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgbWVkaWFQYXRoczogSW1tdXRhYmxlUHJvcFR5cGVzLm1hcC5pc1JlcXVpcmVkLFxuICAgICAgb25BZGRBc3NldDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uQ2hhbmdlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgb25SZW1vdmVJbnNlcnRlZE1lZGlhOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgb25PcGVuTWVkaWFMaWJyYXJ5OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgb25DbGVhck1lZGlhQ29udHJvbDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uUmVtb3ZlTWVkaWFDb250cm9sOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgY2xhc3NOYW1lV3JhcHBlcjogUHJvcFR5cGVzLnN0cmluZy5pc1JlcXVpcmVkLFxuICAgICAgdmFsdWU6IFByb3BUeXBlcy5vbmVPZlR5cGUoW1xuICAgICAgICBQcm9wVHlwZXMuc3RyaW5nLFxuICAgICAgICBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMuc3RyaW5nKSxcbiAgICAgICAgSW1tdXRhYmxlUHJvcFR5cGVzLmxpc3RPZihQcm9wVHlwZXMuc3RyaW5nKSxcbiAgICAgIF0pLFxuICAgICAgdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICB9O1xuXG4gICAgc3RhdGljIGRlZmF1bHRQcm9wcyA9IHtcbiAgICAgIHZhbHVlOiAnJyxcbiAgICB9O1xuXG4gICAgY29uc3RydWN0b3IocHJvcHMpIHtcbiAgICAgIHN1cGVyKHByb3BzKTtcbiAgICAgIHRoaXMuY29udHJvbElEID0gdXVpZCgpO1xuICAgIH1cblxuICAgIHNob3VsZENvbXBvbmVudFVwZGF0ZShuZXh0UHJvcHMpIHtcbiAgICAgIC8qKlxuICAgICAgICogQWx3YXlzIHVwZGF0ZSBpZiB0aGUgdmFsdWUgb3IgZ2V0QXNzZXQgY2hhbmdlcy5cbiAgICAgICAqL1xuICAgICAgaWYgKHRoaXMucHJvcHMudmFsdWUgIT09IG5leHRQcm9wcy52YWx1ZSB8fCB0aGlzLnByb3BzLmdldEFzc2V0ICE9PSBuZXh0UHJvcHMuZ2V0QXNzZXQpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG5cbiAgICAgIC8qKlxuICAgICAgICogSWYgdGhlcmUgaXMgYSBtZWRpYSBwYXRoIGZvciB0aGlzIGNvbnRyb2wgaW4gdGhlIHN0YXRlIG9iamVjdCwgYW5kIHRoYXRcbiAgICAgICAqIHBhdGggaXMgZGlmZmVyZW50IHRoYW4gdGhlIHZhbHVlIGluIGBuZXh0UHJvcHNgLCB1cGRhdGUuXG4gICAgICAgKi9cbiAgICAgIGNvbnN0IG1lZGlhUGF0aCA9IG5leHRQcm9wcy5tZWRpYVBhdGhzLmdldCh0aGlzLmNvbnRyb2xJRCk7XG4gICAgICBpZiAobWVkaWFQYXRoICYmIG5leHRQcm9wcy52YWx1ZSAhPT0gbWVkaWFQYXRoKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgY29tcG9uZW50RGlkVXBkYXRlKCkge1xuICAgICAgY29uc3QgeyBtZWRpYVBhdGhzLCB2YWx1ZSwgb25SZW1vdmVJbnNlcnRlZE1lZGlhLCBvbkNoYW5nZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGNvbnN0IG1lZGlhUGF0aCA9IG1lZGlhUGF0aHMuZ2V0KHRoaXMuY29udHJvbElEKTtcbiAgICAgIGlmIChtZWRpYVBhdGggJiYgbWVkaWFQYXRoICE9PSB2YWx1ZSkge1xuICAgICAgICBvbkNoYW5nZShtZWRpYVBhdGgpO1xuICAgICAgfSBlbHNlIGlmIChtZWRpYVBhdGggJiYgbWVkaWFQYXRoID09PSB2YWx1ZSkge1xuICAgICAgICBvblJlbW92ZUluc2VydGVkTWVkaWEodGhpcy5jb250cm9sSUQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGNvbXBvbmVudFdpbGxVbm1vdW50KCkge1xuICAgICAgdGhpcy5wcm9wcy5vblJlbW92ZU1lZGlhQ29udHJvbCh0aGlzLmNvbnRyb2xJRCk7XG4gICAgfVxuXG4gICAgaGFuZGxlQ2hhbmdlID0gZSA9PiB7XG4gICAgICBjb25zdCB7IGZpZWxkLCBvbk9wZW5NZWRpYUxpYnJhcnksIHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgY29uc3QgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gdGhpcy5nZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMoKTtcblxuICAgICAgcmV0dXJuIG9uT3Blbk1lZGlhTGlicmFyeSh7XG4gICAgICAgIGNvbnRyb2xJRDogdGhpcy5jb250cm9sSUQsXG4gICAgICAgIGZvckltYWdlLFxuICAgICAgICBwcml2YXRlVXBsb2FkOiBmaWVsZC5nZXQoJ3ByaXZhdGUnKSxcbiAgICAgICAgdmFsdWU6IHZhbHVlTGlzdFRvQXJyYXkodmFsdWUpLFxuICAgICAgICBhbGxvd011bHRpcGxlOiAhIW1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2FsbG93X211bHRpcGxlJywgdHJ1ZSksXG4gICAgICAgIGNvbmZpZzogbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zLmdldCgnY29uZmlnJyksXG4gICAgICAgIGZpZWxkLFxuICAgICAgfSk7XG4gICAgfTtcblxuICAgIGhhbmRsZVVybCA9IHN1YmplY3QgPT4gZSA9PiB7XG4gICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG5cbiAgICAgIGNvbnN0IHVybCA9IHdpbmRvdy5wcm9tcHQodGhpcy5wcm9wcy50KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LnByb21wdFVybGApKTtcblxuICAgICAgcmV0dXJuIHRoaXMucHJvcHMub25DaGFuZ2UodXJsKTtcbiAgICB9O1xuXG4gICAgaGFuZGxlUmVtb3ZlID0gZSA9PiB7XG4gICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB0aGlzLnByb3BzLm9uQ2xlYXJNZWRpYUNvbnRyb2wodGhpcy5jb250cm9sSUQpO1xuICAgICAgcmV0dXJuIHRoaXMucHJvcHMub25DaGFuZ2UoJycpO1xuICAgIH07XG5cbiAgICBvblJlbW92ZU9uZSA9IGluZGV4ID0+ICgpID0+IHtcbiAgICAgIGNvbnN0IHZhbHVlID0gdmFsdWVMaXN0VG9BcnJheSh0aGlzLnByb3BzLnZhbHVlKTtcbiAgICAgIHZhbHVlLnNwbGljZShpbmRleCwgMSk7XG4gICAgICByZXR1cm4gdGhpcy5wcm9wcy5vbkNoYW5nZShzaXplT2ZWYWx1ZSh2YWx1ZSkgPiAwID8gWy4uLnZhbHVlXSA6IG51bGwpO1xuICAgIH07XG5cbiAgICBvblJlcGxhY2VPbmUgPSBpbmRleCA9PiAoKSA9PiB7XG4gICAgICBjb25zdCB7IGZpZWxkLCBvbk9wZW5NZWRpYUxpYnJhcnksIHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gdGhpcy5nZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMoKTtcblxuICAgICAgcmV0dXJuIG9uT3Blbk1lZGlhTGlicmFyeSh7XG4gICAgICAgIGNvbnRyb2xJRDogdGhpcy5jb250cm9sSUQsXG4gICAgICAgIGZvckltYWdlLFxuICAgICAgICBwcml2YXRlVXBsb2FkOiBmaWVsZC5nZXQoJ3ByaXZhdGUnKSxcbiAgICAgICAgdmFsdWU6IHZhbHVlTGlzdFRvQXJyYXkodmFsdWUpLFxuICAgICAgICByZXBsYWNlSW5kZXg6IGluZGV4LFxuICAgICAgICBhbGxvd011bHRpcGxlOiBmYWxzZSxcbiAgICAgICAgY29uZmlnOiBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMuZ2V0KCdjb25maWcnKSxcbiAgICAgICAgZmllbGQsXG4gICAgICB9KTtcbiAgICB9O1xuXG4gICAgZ2V0TWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gKCkgPT4ge1xuICAgICAgY29uc3QgeyBmaWVsZCB9ID0gdGhpcy5wcm9wcztcblxuICAgICAgaWYgKGZpZWxkLmhhc0luKFsnb3B0aW9ucycsICdtZWRpYV9saWJyYXJ5J10pKSB7XG4gICAgICAgIHdhcm5EZXByZWNhdGVkT3B0aW9ucyhmaWVsZCk7XG4gICAgICAgIHJldHVybiBmaWVsZC5nZXRJbihbJ29wdGlvbnMnLCAnbWVkaWFfbGlicmFyeSddLCBNYXAoKSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBmaWVsZC5nZXQoJ21lZGlhX2xpYnJhcnknLCBNYXAoKSk7XG4gICAgfTtcblxuICAgIGFsbG93c011bHRpcGxlID0gKCkgPT4ge1xuICAgICAgY29uc3QgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gdGhpcy5nZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMoKTtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycsIGZhbHNlKSAmJlxuICAgICAgICBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMuZ2V0KCdjb25maWcnKS5nZXQoJ211bHRpcGxlJywgZmFsc2UpXG4gICAgICApO1xuICAgIH07XG5cbiAgICBvblNvcnRFbmQgPSAoeyBvbGRJbmRleCwgbmV3SW5kZXggfSkgPT4ge1xuICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGNvbnN0IG5ld1ZhbHVlID0gYXJyYXlNb3ZlKHZhbHVlLCBvbGRJbmRleCwgbmV3SW5kZXgpO1xuICAgICAgcmV0dXJuIHRoaXMucHJvcHMub25DaGFuZ2UobmV3VmFsdWUpO1xuICAgIH07XG5cbiAgICBnZXRWYWxpZGF0ZVZhbHVlID0gKCkgPT4ge1xuICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICByZXR1cm4gaXNNdWx0aXBsZSh2YWx1ZSkgPyB2YWx1ZS5tYXAodiA9PiBiYXNlbmFtZSh2KSkgOiBiYXNlbmFtZSh2YWx1ZSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9O1xuXG4gICAgcmVuZGVyRmlsZUxpbmsgPSB2YWx1ZSA9PiB7XG4gICAgICBjb25zdCBzaXplID0gTUFYX0RJU1BMQVlfTEVOR1RIO1xuICAgICAgaWYgKCF2YWx1ZSB8fCB2YWx1ZS5sZW5ndGggPD0gc2l6ZSkge1xuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICB9XG4gICAgICBjb25zdCB0ZXh0ID0gYCR7dmFsdWUuc2xpY2UoMCwgc2l6ZSAvIDIpfVxcdTIwMjYke3ZhbHVlLnNsaWNlKC0oc2l6ZSAvIDIpICsgMSl9YDtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxGaWxlTGluayBocmVmPXt2YWx1ZX0gcmVsPVwibm9vcGVuZXJcIiB0YXJnZXQ9XCJfYmxhbmtcIj5cbiAgICAgICAgICB7dGV4dH1cbiAgICAgICAgPC9GaWxlTGluaz5cbiAgICAgICk7XG4gICAgfTtcblxuICAgIHJlbmRlckZpbGVMaW5rcyA9ICgpID0+IHtcbiAgICAgIGNvbnN0IHsgdmFsdWUgfSA9IHRoaXMucHJvcHM7XG5cbiAgICAgIGlmIChpc011bHRpcGxlKHZhbHVlKSkge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIDxGaWxlTGlua3M+XG4gICAgICAgICAgICA8RmlsZUxpbmtMaXN0PlxuICAgICAgICAgICAgICB7dmFsdWUubWFwKHZhbCA9PiAoXG4gICAgICAgICAgICAgICAgPGxpIGtleT17dmFsfT57dGhpcy5yZW5kZXJGaWxlTGluayh2YWwpfTwvbGk+XG4gICAgICAgICAgICAgICkpfVxuICAgICAgICAgICAgPC9GaWxlTGlua0xpc3Q+XG4gICAgICAgICAgPC9GaWxlTGlua3M+XG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICByZXR1cm4gPEZpbGVMaW5rcz57dGhpcy5yZW5kZXJGaWxlTGluayh2YWx1ZSl9PC9GaWxlTGlua3M+O1xuICAgIH07XG5cbiAgICByZW5kZXJJbWFnZXMgPSAoKSA9PiB7XG4gICAgICBjb25zdCB7IGdldEFzc2V0LCB2YWx1ZSwgZmllbGQgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBpdGVtcyA9IHZhbHVlTGlzdFRvU29ydGFibGVBcnJheSh2YWx1ZSk7XG4gICAgICBpZiAoaXNNdWx0aXBsZSh2YWx1ZSkpIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICA8U29ydGFibGVNdWx0aUltYWdlV3JhcHBlclxuICAgICAgICAgICAgaXRlbXM9e2l0ZW1zfVxuICAgICAgICAgICAgb25Tb3J0RW5kPXt0aGlzLm9uU29ydEVuZH1cbiAgICAgICAgICAgIG9uUmVtb3ZlT25lPXt0aGlzLm9uUmVtb3ZlT25lfVxuICAgICAgICAgICAgb25SZXBsYWNlT25lPXt0aGlzLm9uUmVwbGFjZU9uZX1cbiAgICAgICAgICAgIGRpc3RhbmNlPXs0fVxuICAgICAgICAgICAgZ2V0QXNzZXQ9e2dldEFzc2V0fVxuICAgICAgICAgICAgZmllbGQ9e2ZpZWxkfVxuICAgICAgICAgICAgYXhpcz1cInh5XCJcbiAgICAgICAgICAgIGxvY2tUb0NvbnRhaW5lckVkZ2VzPXt0cnVlfVxuICAgICAgICAgID48L1NvcnRhYmxlTXVsdGlJbWFnZVdyYXBwZXI+XG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHNyYyA9IGdldEFzc2V0KHZhbHVlLCBmaWVsZCk7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8SW1hZ2VXcmFwcGVyPlxuICAgICAgICAgIDxJbWFnZSBzcmM9e3NyYyB8fCAnJ30gLz5cbiAgICAgICAgPC9JbWFnZVdyYXBwZXI+XG4gICAgICApO1xuICAgIH07XG5cbiAgICByZW5kZXJTZWxlY3Rpb24gPSBzdWJqZWN0ID0+IHtcbiAgICAgIGNvbnN0IHsgdCwgZmllbGQgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBhbGxvd3NNdWx0aXBsZSA9IHRoaXMuYWxsb3dzTXVsdGlwbGUoKTtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge2ZvckltYWdlID8gdGhpcy5yZW5kZXJJbWFnZXMoKSA6IG51bGx9XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIHtmb3JJbWFnZSA/IG51bGwgOiB0aGlzLnJlbmRlckZpbGVMaW5rcygpfVxuICAgICAgICAgICAgPEZpbGVXaWRnZXRCdXR0b24gb25DbGljaz17dGhpcy5oYW5kbGVDaGFuZ2V9PlxuICAgICAgICAgICAgICB7dChcbiAgICAgICAgICAgICAgICBgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS4ke1xuICAgICAgICAgICAgICAgICAgdGhpcy5hbGxvd3NNdWx0aXBsZSgpID8gJ2FkZE1vcmUnIDogJ2Nob29zZURpZmZlcmVudCdcbiAgICAgICAgICAgICAgICB9YCxcbiAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIDwvRmlsZVdpZGdldEJ1dHRvbj5cbiAgICAgICAgICAgIHtmaWVsZC5nZXQoJ2Nob29zZV91cmwnLCB0cnVlKSAmJiAhdGhpcy5hbGxvd3NNdWx0aXBsZSgpID8gKFxuICAgICAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvbiBvbkNsaWNrPXt0aGlzLmhhbmRsZVVybChzdWJqZWN0KX0+XG4gICAgICAgICAgICAgICAge3QoYGVkaXRvci5lZGl0b3JXaWRnZXRzLiR7c3ViamVjdH0ucmVwbGFjZVVybGApfVxuICAgICAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b24+XG4gICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgIDxGaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlIG9uQ2xpY2s9e3RoaXMuaGFuZGxlUmVtb3ZlfT5cbiAgICAgICAgICAgICAge3QoYGVkaXRvci5lZGl0b3JXaWRnZXRzLiR7c3ViamVjdH0ucmVtb3ZlJHthbGxvd3NNdWx0aXBsZSA/ICdBbGwnIDogJyd9YCl9XG4gICAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b25SZW1vdmU+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgcmVuZGVyTm9TZWxlY3Rpb24gPSBzdWJqZWN0ID0+IHtcbiAgICAgIGNvbnN0IHsgdCwgZmllbGQgfSA9IHRoaXMucHJvcHM7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8PlxuICAgICAgICAgIDxGaWxlV2lkZ2V0QnV0dG9uIG9uQ2xpY2s9e3RoaXMuaGFuZGxlQ2hhbmdlfT5cbiAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LmNob29zZSR7dGhpcy5hbGxvd3NNdWx0aXBsZSgpID8gJ011bHRpcGxlJyA6ICcnfWApfVxuICAgICAgICAgIDwvRmlsZVdpZGdldEJ1dHRvbj5cbiAgICAgICAgICB7ZmllbGQuZ2V0KCdjaG9vc2VfdXJsJywgdHJ1ZSkgPyAoXG4gICAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvbiBvbkNsaWNrPXt0aGlzLmhhbmRsZVVybChzdWJqZWN0KX0+XG4gICAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LmNob29zZVVybGApfVxuICAgICAgICAgICAgPC9GaWxlV2lkZ2V0QnV0dG9uPlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICA8Lz5cbiAgICAgICk7XG4gICAgfTtcblxuICAgIHJlbmRlcigpIHtcbiAgICAgIGNvbnN0IHsgdmFsdWUsIGNsYXNzTmFtZVdyYXBwZXIgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBzdWJqZWN0ID0gZm9ySW1hZ2UgPyAnaW1hZ2UnIDogJ2ZpbGUnO1xuXG4gICAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Y2xhc3NOYW1lV3JhcHBlcn0+XG4gICAgICAgICAgPHNwYW4+e3ZhbHVlID8gdGhpcy5yZW5kZXJTZWxlY3Rpb24oc3ViamVjdCkgOiB0aGlzLnJlbmRlck5vU2VsZWN0aW9uKHN1YmplY3QpfTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICApO1xuICAgIH1cbiAgfTtcbn1cbiJdfQ== */",
|
|
141
188
|
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
142
189
|
});
|
|
143
190
|
const FileLinkList = (0, _styledBase.default)("ul", {
|
|
@@ -149,17 +196,17 @@ const FileLinkList = (0, _styledBase.default)("ul", {
|
|
|
149
196
|
} : {
|
|
150
197
|
name: "155za0w",
|
|
151
198
|
styles: "list-style-type:none;",
|
|
152
|
-
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy93aXRoRmlsZUNvbnRyb2wuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBMEg4QiIsImZpbGUiOiIuLi8uLi9zcmMvd2l0aEZpbGVDb250cm9sLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgSW1tdXRhYmxlUHJvcFR5cGVzIGZyb20gJ3JlYWN0LWltbXV0YWJsZS1wcm9wdHlwZXMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vY29yZSc7XG5pbXBvcnQgeyBNYXAsIExpc3QgfSBmcm9tICdpbW11dGFibGUnO1xuaW1wb3J0IHsgb25jZSB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgdXVpZCBmcm9tICd1dWlkL3Y0JztcbmltcG9ydCB7IG9uZUxpbmUgfSBmcm9tICdjb21tb24tdGFncyc7XG5pbXBvcnQge1xuICBsZW5ndGhzLFxuICBjb21wb25lbnRzLFxuICBidXR0b25zLFxuICBib3JkZXJzLFxuICBlZmZlY3RzLFxuICBzaGFkb3dzLFxuICBJY29uQnV0dG9uLFxufSBmcm9tICdkZWNhcC1jbXMtdWktZGVmYXVsdCc7XG5pbXBvcnQgeyBiYXNlbmFtZSB9IGZyb20gJ2RlY2FwLWNtcy1saWItdXRpbCc7XG5pbXBvcnQgeyBTb3J0YWJsZUNvbnRhaW5lciwgU29ydGFibGVFbGVtZW50IH0gZnJvbSAncmVhY3Qtc29ydGFibGUtaG9jJztcbmltcG9ydCB7IGFycmF5TW92ZUltbXV0YWJsZSBhcyBhcnJheU1vdmUgfSBmcm9tICdhcnJheS1tb3ZlJztcblxuY29uc3QgTUFYX0RJU1BMQVlfTEVOR1RIID0gNTA7XG5cbmNvbnN0IEltYWdlV3JhcHBlciA9IHN0eWxlZC5kaXZgXG4gIGZsZXgtYmFzaXM6IDE1NXB4O1xuICB3aWR0aDogMTU1cHg7XG4gIGhlaWdodDogMTAwcHg7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgYm9yZGVyOiAke2JvcmRlcnMudGV4dEZpZWxkfTtcbiAgYm9yZGVyLXJhZGl1czogJHtsZW5ndGhzLmJvcmRlclJhZGl1c307XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gICR7ZWZmZWN0cy5jaGVja2VyYm9hcmR9O1xuICAke3NoYWRvd3MuaW5zZXR9O1xuICBjdXJzb3I6ICR7cHJvcHMgPT4gKHByb3BzLnNvcnRhYmxlID8gJ3BvaW50ZXInIDogJ2F1dG8nKX07XG5gO1xuXG5jb25zdCBTb3J0YWJsZUltYWdlQnV0dG9uc1dyYXBwZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY29sdW1uLWdhcDogMTBweDtcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbmA7XG5cbmNvbnN0IFN0eWxlZEltYWdlID0gc3R5bGVkLmltZ2BcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcbmA7XG5cbmZ1bmN0aW9uIEltYWdlKHByb3BzKSB7XG4gIHJldHVybiA8U3R5bGVkSW1hZ2Ugcm9sZT1cInByZXNlbnRhdGlvblwiIHsuLi5wcm9wc30gLz47XG59XG5cbmZ1bmN0aW9uIFNvcnRhYmxlSW1hZ2VCdXR0b25zKHsgb25SZW1vdmUsIG9uUmVwbGFjZSB9KSB7XG4gIHJldHVybiAoXG4gICAgPFNvcnRhYmxlSW1hZ2VCdXR0b25zV3JhcHBlcj5cbiAgICAgIDxJY29uQnV0dG9uIHNpemU9XCJzbWFsbFwiIHR5cGU9XCJtZWRpYVwiIG9uQ2xpY2s9e29uUmVwbGFjZX0+PC9JY29uQnV0dG9uPlxuICAgICAgPEljb25CdXR0b24gc2l6ZT1cInNtYWxsXCIgdHlwZT1cImNsb3NlXCIgb25DbGljaz17b25SZW1vdmV9PjwvSWNvbkJ1dHRvbj5cbiAgICA8L1NvcnRhYmxlSW1hZ2VCdXR0b25zV3JhcHBlcj5cbiAgKTtcbn1cblxuY29uc3QgU29ydGFibGVJbWFnZSA9IFNvcnRhYmxlRWxlbWVudCgoeyBpdGVtVmFsdWUsIGdldEFzc2V0LCBmaWVsZCwgb25SZW1vdmUsIG9uUmVwbGFjZSB9KSA9PiB7XG4gIHJldHVybiAoXG4gICAgPGRpdj5cbiAgICAgIDxJbWFnZVdyYXBwZXIgc29ydGFibGU+XG4gICAgICAgIDxJbWFnZSBzcmM9e2dldEFzc2V0KGl0ZW1WYWx1ZSwgZmllbGQpIHx8ICcnfSAvPlxuICAgICAgPC9JbWFnZVdyYXBwZXI+XG4gICAgICA8U29ydGFibGVJbWFnZUJ1dHRvbnNcbiAgICAgICAgaXRlbT17aXRlbVZhbHVlfVxuICAgICAgICBvblJlbW92ZT17b25SZW1vdmV9XG4gICAgICAgIG9uUmVwbGFjZT17b25SZXBsYWNlfVxuICAgICAgPjwvU29ydGFibGVJbWFnZUJ1dHRvbnM+XG4gICAgPC9kaXY+XG4gICk7XG59KTtcblxuY29uc3QgU29ydGFibGVNdWx0aUltYWdlV3JhcHBlciA9IFNvcnRhYmxlQ29udGFpbmVyKFxuICAoeyBpdGVtcywgZ2V0QXNzZXQsIGZpZWxkLCBvblJlbW92ZU9uZSwgb25SZXBsYWNlT25lIH0pID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgPGRpdlxuICAgICAgICBjc3M9e2Nzc2BcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgYH1cbiAgICAgID5cbiAgICAgICAge2l0ZW1zLm1hcCgoaXRlbVZhbHVlLCBpbmRleCkgPT4gKFxuICAgICAgICAgIDxTb3J0YWJsZUltYWdlXG4gICAgICAgICAgICBrZXk9e2BpdGVtLSR7aXRlbVZhbHVlfWB9XG4gICAgICAgICAgICBpbmRleD17aW5kZXh9XG4gICAgICAgICAgICBpdGVtVmFsdWU9e2l0ZW1WYWx1ZX1cbiAgICAgICAgICAgIGdldEFzc2V0PXtnZXRBc3NldH1cbiAgICAgICAgICAgIGZpZWxkPXtmaWVsZH1cbiAgICAgICAgICAgIG9uUmVtb3ZlPXtvblJlbW92ZU9uZShpbmRleCl9XG4gICAgICAgICAgICBvblJlcGxhY2U9e29uUmVwbGFjZU9uZShpbmRleCl9XG4gICAgICAgICAgLz5cbiAgICAgICAgKSl9XG4gICAgICA8L2Rpdj5cbiAgICApO1xuICB9LFxuKTtcblxuY29uc3QgRmlsZUxpbmsgPSBzdHlsZWQuYWBcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6IGluaGVyaXQ7XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG5gO1xuXG5jb25zdCBGaWxlTGlua3MgPSBzdHlsZWQuZGl2YFxuICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuYDtcblxuY29uc3QgRmlsZUxpbmtMaXN0ID0gc3R5bGVkLnVsYFxuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5gO1xuXG5jb25zdCBGaWxlV2lkZ2V0QnV0dG9uID0gc3R5bGVkLmJ1dHRvbmBcbiAgJHtidXR0b25zLmJ1dHRvbn07XG4gICR7Y29tcG9uZW50cy5iYWRnZX07XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG5gO1xuXG5jb25zdCBGaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlID0gc3R5bGVkLmJ1dHRvbmBcbiAgJHtidXR0b25zLmJ1dHRvbn07XG4gICR7Y29tcG9uZW50cy5iYWRnZURhbmdlcn07XG5gO1xuXG5mdW5jdGlvbiBpc011bHRpcGxlKHZhbHVlKSB7XG4gIHJldHVybiBBcnJheS5pc0FycmF5KHZhbHVlKSB8fCBMaXN0LmlzTGlzdCh2YWx1ZSk7XG59XG5cbmZ1bmN0aW9uIHNpemVPZlZhbHVlKHZhbHVlKSB7XG4gIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgIHJldHVybiB2YWx1ZS5sZW5ndGg7XG4gIH1cblxuICBpZiAoTGlzdC5pc0xpc3QodmFsdWUpKSB7XG4gICAgcmV0dXJuIHZhbHVlLnNpemU7XG4gIH1cblxuICByZXR1cm4gdmFsdWUgPyAxIDogMDtcbn1cblxuZnVuY3Rpb24gdmFsdWVMaXN0VG9BcnJheSh2YWx1ZSkge1xuICByZXR1cm4gTGlzdC5pc0xpc3QodmFsdWUpID8gdmFsdWUudG9BcnJheSgpIDogdmFsdWU7XG59XG5cbmNvbnN0IHdhcm5EZXByZWNhdGVkT3B0aW9ucyA9IG9uY2UoZmllbGQgPT5cbiAgY29uc29sZS53YXJuKG9uZUxpbmVgXG4gIERlY2FwIENNUyBjb25maWc6ICR7ZmllbGQuZ2V0KCduYW1lJyl9IGZpZWxkOiBwcm9wZXJ0eSBcIm9wdGlvbnNcIiBoYXMgYmVlbiBkZXByZWNhdGVkIGZvciB0aGVcbiAgJHtmaWVsZC5nZXQoJ3dpZGdldCcpfSB3aWRnZXQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgbmV4dCBtYWpvciByZWxlYXNlLiBSYXRoZXIgdGhhblxuICBcXGBmaWVsZC5vcHRpb25zLm1lZGlhX2xpYnJhcnlcXGAsIGFwcGx5IG1lZGlhIGxpYnJhcnkgb3B0aW9ucyBmb3IgdGhpcyB3aWRnZXQgdW5kZXJcbiAgXFxgZmllbGQubWVkaWFfbGlicmFyeVxcYC5cbmApLFxuKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gd2l0aEZpbGVDb250cm9sKHsgZm9ySW1hZ2UgfSA9IHt9KSB7XG4gIHJldHVybiBjbGFzcyBGaWxlQ29udHJvbCBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gICAgc3RhdGljIHByb3BUeXBlcyA9IHtcbiAgICAgIGZpZWxkOiBQcm9wVHlwZXMub2JqZWN0LmlzUmVxdWlyZWQsXG4gICAgICBnZXRBc3NldDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG1lZGlhUGF0aHM6IEltbXV0YWJsZVByb3BUeXBlcy5tYXAuaXNSZXF1aXJlZCxcbiAgICAgIG9uQWRkQXNzZXQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgICBvbkNoYW5nZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uUmVtb3ZlSW5zZXJ0ZWRNZWRpYTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uT3Blbk1lZGlhTGlicmFyeTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uQ2xlYXJNZWRpYUNvbnRyb2w6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgICBvblJlbW92ZU1lZGlhQ29udHJvbDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIGNsYXNzTmFtZVdyYXBwZXI6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgICAgIHZhbHVlOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtcbiAgICAgICAgUHJvcFR5cGVzLnN0cmluZyxcbiAgICAgICAgUHJvcFR5cGVzLmFycmF5T2YoUHJvcFR5cGVzLnN0cmluZyksXG4gICAgICAgIEltbXV0YWJsZVByb3BUeXBlcy5saXN0T2YoUHJvcFR5cGVzLnN0cmluZyksXG4gICAgICBdKSxcbiAgICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgfTtcblxuICAgIHN0YXRpYyBkZWZhdWx0UHJvcHMgPSB7XG4gICAgICB2YWx1ZTogJycsXG4gICAgfTtcblxuICAgIGNvbnN0cnVjdG9yKHByb3BzKSB7XG4gICAgICBzdXBlcihwcm9wcyk7XG4gICAgICB0aGlzLmNvbnRyb2xJRCA9IHV1aWQoKTtcbiAgICB9XG5cbiAgICBzaG91bGRDb21wb25lbnRVcGRhdGUobmV4dFByb3BzKSB7XG4gICAgICAvKipcbiAgICAgICAqIEFsd2F5cyB1cGRhdGUgaWYgdGhlIHZhbHVlIG9yIGdldEFzc2V0IGNoYW5nZXMuXG4gICAgICAgKi9cbiAgICAgIGlmICh0aGlzLnByb3BzLnZhbHVlICE9PSBuZXh0UHJvcHMudmFsdWUgfHwgdGhpcy5wcm9wcy5nZXRBc3NldCAhPT0gbmV4dFByb3BzLmdldEFzc2V0KSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuXG4gICAgICAvKipcbiAgICAgICAqIElmIHRoZXJlIGlzIGEgbWVkaWEgcGF0aCBmb3IgdGhpcyBjb250cm9sIGluIHRoZSBzdGF0ZSBvYmplY3QsIGFuZCB0aGF0XG4gICAgICAgKiBwYXRoIGlzIGRpZmZlcmVudCB0aGFuIHRoZSB2YWx1ZSBpbiBgbmV4dFByb3BzYCwgdXBkYXRlLlxuICAgICAgICovXG4gICAgICBjb25zdCBtZWRpYVBhdGggPSBuZXh0UHJvcHMubWVkaWFQYXRocy5nZXQodGhpcy5jb250cm9sSUQpO1xuICAgICAgaWYgKG1lZGlhUGF0aCAmJiBuZXh0UHJvcHMudmFsdWUgIT09IG1lZGlhUGF0aCkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGNvbXBvbmVudERpZFVwZGF0ZSgpIHtcbiAgICAgIGNvbnN0IHsgbWVkaWFQYXRocywgdmFsdWUsIG9uUmVtb3ZlSW5zZXJ0ZWRNZWRpYSwgb25DaGFuZ2UgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBtZWRpYVBhdGggPSBtZWRpYVBhdGhzLmdldCh0aGlzLmNvbnRyb2xJRCk7XG4gICAgICBpZiAobWVkaWFQYXRoICYmIG1lZGlhUGF0aCAhPT0gdmFsdWUpIHtcbiAgICAgICAgb25DaGFuZ2UobWVkaWFQYXRoKTtcbiAgICAgIH0gZWxzZSBpZiAobWVkaWFQYXRoICYmIG1lZGlhUGF0aCA9PT0gdmFsdWUpIHtcbiAgICAgICAgb25SZW1vdmVJbnNlcnRlZE1lZGlhKHRoaXMuY29udHJvbElEKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb21wb25lbnRXaWxsVW5tb3VudCgpIHtcbiAgICAgIHRoaXMucHJvcHMub25SZW1vdmVNZWRpYUNvbnRyb2wodGhpcy5jb250cm9sSUQpO1xuICAgIH1cblxuICAgIGhhbmRsZUNoYW5nZSA9IGUgPT4ge1xuICAgICAgY29uc3QgeyBmaWVsZCwgb25PcGVuTWVkaWFMaWJyYXJ5LCB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgIGNvbnN0IG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucyA9IHRoaXMuZ2V0TWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zKCk7XG5cbiAgICAgIHJldHVybiBvbk9wZW5NZWRpYUxpYnJhcnkoe1xuICAgICAgICBjb250cm9sSUQ6IHRoaXMuY29udHJvbElELFxuICAgICAgICBmb3JJbWFnZSxcbiAgICAgICAgcHJpdmF0ZVVwbG9hZDogZmllbGQuZ2V0KCdwcml2YXRlJyksXG4gICAgICAgIHZhbHVlOiB2YWx1ZUxpc3RUb0FycmF5KHZhbHVlKSxcbiAgICAgICAgYWxsb3dNdWx0aXBsZTogISFtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMuZ2V0KCdhbGxvd19tdWx0aXBsZScsIHRydWUpLFxuICAgICAgICBjb25maWc6IG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycpLFxuICAgICAgICBmaWVsZCxcbiAgICAgIH0pO1xuICAgIH07XG5cbiAgICBoYW5kbGVVcmwgPSBzdWJqZWN0ID0+IGUgPT4ge1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgICBjb25zdCB1cmwgPSB3aW5kb3cucHJvbXB0KHRoaXMucHJvcHMudChgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS5wcm9tcHRVcmxgKSk7XG5cbiAgICAgIHJldHVybiB0aGlzLnByb3BzLm9uQ2hhbmdlKHVybCk7XG4gICAgfTtcblxuICAgIGhhbmRsZVJlbW92ZSA9IGUgPT4ge1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgdGhpcy5wcm9wcy5vbkNsZWFyTWVkaWFDb250cm9sKHRoaXMuY29udHJvbElEKTtcbiAgICAgIHJldHVybiB0aGlzLnByb3BzLm9uQ2hhbmdlKCcnKTtcbiAgICB9O1xuXG4gICAgb25SZW1vdmVPbmUgPSBpbmRleCA9PiAoKSA9PiB7XG4gICAgICBjb25zdCB7IHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgdmFsdWUuc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgIHJldHVybiB0aGlzLnByb3BzLm9uQ2hhbmdlKHNpemVPZlZhbHVlKHZhbHVlKSA+IDAgPyBbLi4udmFsdWVdIDogbnVsbCk7XG4gICAgfTtcblxuICAgIG9uUmVwbGFjZU9uZSA9IGluZGV4ID0+ICgpID0+IHtcbiAgICAgIGNvbnN0IHsgZmllbGQsIG9uT3Blbk1lZGlhTGlicmFyeSwgdmFsdWUgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMgPSB0aGlzLmdldE1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucygpO1xuXG4gICAgICByZXR1cm4gb25PcGVuTWVkaWFMaWJyYXJ5KHtcbiAgICAgICAgY29udHJvbElEOiB0aGlzLmNvbnRyb2xJRCxcbiAgICAgICAgZm9ySW1hZ2UsXG4gICAgICAgIHByaXZhdGVVcGxvYWQ6IGZpZWxkLmdldCgncHJpdmF0ZScpLFxuICAgICAgICB2YWx1ZTogdmFsdWVMaXN0VG9BcnJheSh2YWx1ZSksXG4gICAgICAgIHJlcGxhY2VJbmRleDogaW5kZXgsXG4gICAgICAgIGFsbG93TXVsdGlwbGU6IGZhbHNlLFxuICAgICAgICBjb25maWc6IG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycpLFxuICAgICAgICBmaWVsZCxcbiAgICAgIH0pO1xuICAgIH07XG5cbiAgICBnZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMgPSAoKSA9PiB7XG4gICAgICBjb25zdCB7IGZpZWxkIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgICBpZiAoZmllbGQuaGFzSW4oWydvcHRpb25zJywgJ21lZGlhX2xpYnJhcnknXSkpIHtcbiAgICAgICAgd2FybkRlcHJlY2F0ZWRPcHRpb25zKGZpZWxkKTtcbiAgICAgICAgcmV0dXJuIGZpZWxkLmdldEluKFsnb3B0aW9ucycsICdtZWRpYV9saWJyYXJ5J10sIE1hcCgpKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZpZWxkLmdldCgnbWVkaWFfbGlicmFyeScsIE1hcCgpKTtcbiAgICB9O1xuXG4gICAgYWxsb3dzTXVsdGlwbGUgPSAoKSA9PiB7XG4gICAgICBjb25zdCBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMgPSB0aGlzLmdldE1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucygpO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zLmdldCgnY29uZmlnJywgZmFsc2UpICYmXG4gICAgICAgIG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycpLmdldCgnbXVsdGlwbGUnLCBmYWxzZSlcbiAgICAgICk7XG4gICAgfTtcblxuICAgIG9uU29ydEVuZCA9ICh7IG9sZEluZGV4LCBuZXdJbmRleCB9KSA9PiB7XG4gICAgICBjb25zdCB7IHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgbmV3VmFsdWUgPSBhcnJheU1vdmUodmFsdWUsIG9sZEluZGV4LCBuZXdJbmRleCk7XG4gICAgICByZXR1cm4gdGhpcy5wcm9wcy5vbkNoYW5nZShuZXdWYWx1ZSk7XG4gICAgfTtcblxuICAgIGdldFZhbGlkYXRlVmFsdWUgPSAoKSA9PiB7XG4gICAgICBjb25zdCB7IHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgIHJldHVybiBpc011bHRpcGxlKHZhbHVlKSA/IHZhbHVlLm1hcCh2ID0+IGJhc2VuYW1lKHYpKSA6IGJhc2VuYW1lKHZhbHVlKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH07XG5cbiAgICByZW5kZXJGaWxlTGluayA9IHZhbHVlID0+IHtcbiAgICAgIGNvbnN0IHNpemUgPSBNQVhfRElTUExBWV9MRU5HVEg7XG4gICAgICBpZiAoIXZhbHVlIHx8IHZhbHVlLmxlbmd0aCA8PSBzaXplKSB7XG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHRleHQgPSBgJHt2YWx1ZS5zbGljZSgwLCBzaXplIC8gMil9XFx1MjAyNiR7dmFsdWUuc2xpY2UoLShzaXplIC8gMikgKyAxKX1gO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPEZpbGVMaW5rIGhyZWY9e3ZhbHVlfSByZWw9XCJub29wZW5lclwiIHRhcmdldD1cIl9ibGFua1wiPlxuICAgICAgICAgIHt0ZXh0fVxuICAgICAgICA8L0ZpbGVMaW5rPlxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgcmVuZGVyRmlsZUxpbmtzID0gKCkgPT4ge1xuICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcblxuICAgICAgaWYgKGlzTXVsdGlwbGUodmFsdWUpKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPEZpbGVMaW5rcz5cbiAgICAgICAgICAgIDxGaWxlTGlua0xpc3Q+XG4gICAgICAgICAgICAgIHt2YWx1ZS5tYXAodmFsID0+IChcbiAgICAgICAgICAgICAgICA8bGkga2V5PXt2YWx9Pnt0aGlzLnJlbmRlckZpbGVMaW5rKHZhbCl9PC9saT5cbiAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICA8L0ZpbGVMaW5rTGlzdD5cbiAgICAgICAgICA8L0ZpbGVMaW5rcz5cbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiA8RmlsZUxpbmtzPnt0aGlzLnJlbmRlckZpbGVMaW5rKHZhbHVlKX08L0ZpbGVMaW5rcz47XG4gICAgfTtcblxuICAgIHJlbmRlckltYWdlcyA9ICgpID0+IHtcbiAgICAgIGNvbnN0IHsgZ2V0QXNzZXQsIHZhbHVlLCBmaWVsZCB9ID0gdGhpcy5wcm9wcztcblxuICAgICAgaWYgKGlzTXVsdGlwbGUodmFsdWUpKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPFNvcnRhYmxlTXVsdGlJbWFnZVdyYXBwZXJcbiAgICAgICAgICAgIGl0ZW1zPXt2YWx1ZX1cbiAgICAgICAgICAgIG9uU29ydEVuZD17dGhpcy5vblNvcnRFbmR9XG4gICAgICAgICAgICBvblJlbW92ZU9uZT17dGhpcy5vblJlbW92ZU9uZX1cbiAgICAgICAgICAgIG9uUmVwbGFjZU9uZT17dGhpcy5vblJlcGxhY2VPbmV9XG4gICAgICAgICAgICBkaXN0YW5jZT17NH1cbiAgICAgICAgICAgIGdldEFzc2V0PXtnZXRBc3NldH1cbiAgICAgICAgICAgIGZpZWxkPXtmaWVsZH1cbiAgICAgICAgICAgIGF4aXM9XCJ4eVwiXG4gICAgICAgICAgICBsb2NrVG9Db250YWluZXJFZGdlcz17dHJ1ZX1cbiAgICAgICAgICA+PC9Tb3J0YWJsZU11bHRpSW1hZ2VXcmFwcGVyPlxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBzcmMgPSBnZXRBc3NldCh2YWx1ZSwgZmllbGQpO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPEltYWdlV3JhcHBlcj5cbiAgICAgICAgICA8SW1hZ2Ugc3JjPXtzcmMgfHwgJyd9IC8+XG4gICAgICAgIDwvSW1hZ2VXcmFwcGVyPlxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgcmVuZGVyU2VsZWN0aW9uID0gc3ViamVjdCA9PiB7XG4gICAgICBjb25zdCB7IHQsIGZpZWxkIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgYWxsb3dzTXVsdGlwbGUgPSB0aGlzLmFsbG93c011bHRpcGxlKCk7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2PlxuICAgICAgICAgIHtmb3JJbWFnZSA/IHRoaXMucmVuZGVySW1hZ2VzKCkgOiBudWxsfVxuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICB7Zm9ySW1hZ2UgPyBudWxsIDogdGhpcy5yZW5kZXJGaWxlTGlua3MoKX1cbiAgICAgICAgICAgIDxGaWxlV2lkZ2V0QnV0dG9uIG9uQ2xpY2s9e3RoaXMuaGFuZGxlQ2hhbmdlfT5cbiAgICAgICAgICAgICAge3QoXG4gICAgICAgICAgICAgICAgYGVkaXRvci5lZGl0b3JXaWRnZXRzLiR7c3ViamVjdH0uJHtcbiAgICAgICAgICAgICAgICAgIHRoaXMuYWxsb3dzTXVsdGlwbGUoKSA/ICdhZGRNb3JlJyA6ICdjaG9vc2VEaWZmZXJlbnQnXG4gICAgICAgICAgICAgICAgfWAsXG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b24+XG4gICAgICAgICAgICB7ZmllbGQuZ2V0KCdjaG9vc2VfdXJsJywgdHJ1ZSkgJiYgIXRoaXMuYWxsb3dzTXVsdGlwbGUoKSA/IChcbiAgICAgICAgICAgICAgPEZpbGVXaWRnZXRCdXR0b24gb25DbGljaz17dGhpcy5oYW5kbGVVcmwoc3ViamVjdCl9PlxuICAgICAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LnJlcGxhY2VVcmxgKX1cbiAgICAgICAgICAgICAgPC9GaWxlV2lkZ2V0QnV0dG9uPlxuICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvblJlbW92ZSBvbkNsaWNrPXt0aGlzLmhhbmRsZVJlbW92ZX0+XG4gICAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LnJlbW92ZSR7YWxsb3dzTXVsdGlwbGUgPyAnQWxsJyA6ICcnfWApfVxuICAgICAgICAgICAgPC9GaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICk7XG4gICAgfTtcblxuICAgIHJlbmRlck5vU2VsZWN0aW9uID0gc3ViamVjdCA9PiB7XG4gICAgICBjb25zdCB7IHQsIGZpZWxkIH0gPSB0aGlzLnByb3BzO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPD5cbiAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvbiBvbkNsaWNrPXt0aGlzLmhhbmRsZUNoYW5nZX0+XG4gICAgICAgICAgICB7dChgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS5jaG9vc2Uke3RoaXMuYWxsb3dzTXVsdGlwbGUoKSA/ICdNdWx0aXBsZScgOiAnJ31gKX1cbiAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b24+XG4gICAgICAgICAge2ZpZWxkLmdldCgnY2hvb3NlX3VybCcsIHRydWUpID8gKFxuICAgICAgICAgICAgPEZpbGVXaWRnZXRCdXR0b24gb25DbGljaz17dGhpcy5oYW5kbGVVcmwoc3ViamVjdCl9PlxuICAgICAgICAgICAgICB7dChgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS5jaG9vc2VVcmxgKX1cbiAgICAgICAgICAgIDwvRmlsZVdpZGdldEJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC8+XG4gICAgICApO1xuICAgIH07XG5cbiAgICByZW5kZXIoKSB7XG4gICAgICBjb25zdCB7IHZhbHVlLCBjbGFzc05hbWVXcmFwcGVyIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3Qgc3ViamVjdCA9IGZvckltYWdlID8gJ2ltYWdlJyA6ICdmaWxlJztcblxuICAgICAgcmV0dXJuIChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e2NsYXNzTmFtZVdyYXBwZXJ9PlxuICAgICAgICAgIDxzcGFuPnt2YWx1ZSA/IHRoaXMucmVuZGVyU2VsZWN0aW9uKHN1YmplY3QpIDogdGhpcy5yZW5kZXJOb1NlbGVjdGlvbihzdWJqZWN0KX08L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKTtcbiAgICB9XG4gIH07XG59XG4iXX0= */",
|
|
199
|
+
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy93aXRoRmlsZUNvbnRyb2wuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBNEs4QiIsImZpbGUiOiIuLi8uLi9zcmMvd2l0aEZpbGVDb250cm9sLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgSW1tdXRhYmxlUHJvcFR5cGVzIGZyb20gJ3JlYWN0LWltbXV0YWJsZS1wcm9wdHlwZXMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vY29yZSc7XG5pbXBvcnQgeyBNYXAsIExpc3QgfSBmcm9tICdpbW11dGFibGUnO1xuaW1wb3J0IHsgb25jZSB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyB2NCBhcyB1dWlkIH0gZnJvbSAndXVpZCc7XG5pbXBvcnQgeyBvbmVMaW5lIH0gZnJvbSAnY29tbW9uLXRhZ3MnO1xuaW1wb3J0IHtcbiAgbGVuZ3RocyxcbiAgY29tcG9uZW50cyxcbiAgYnV0dG9ucyxcbiAgYm9yZGVycyxcbiAgZWZmZWN0cyxcbiAgc2hhZG93cyxcbiAgSWNvbkJ1dHRvbixcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuaW1wb3J0IHsgYmFzZW5hbWUgfSBmcm9tICdkZWNhcC1jbXMtbGliLXV0aWwnO1xuaW1wb3J0IHsgYXJyYXlNb3ZlSW1tdXRhYmxlIGFzIGFycmF5TW92ZSB9IGZyb20gJ2FycmF5LW1vdmUnO1xuaW1wb3J0IHtcbiAgRG5kQ29udGV4dCxcbiAgTW91c2VTZW5zb3IsXG4gIFRvdWNoU2Vuc29yLFxuICBjbG9zZXN0Q2VudGVyLFxuICB1c2VTZW5zb3IsXG4gIHVzZVNlbnNvcnMsXG59IGZyb20gJ0BkbmQta2l0L2NvcmUnO1xuaW1wb3J0IHsgU29ydGFibGVDb250ZXh0LCB1c2VTb3J0YWJsZSB9IGZyb20gJ0BkbmQta2l0L3NvcnRhYmxlJztcbmltcG9ydCB7IENTUyB9IGZyb20gJ0BkbmQta2l0L3V0aWxpdGllcyc7XG5pbXBvcnQgeyByZXN0cmljdFRvUGFyZW50RWxlbWVudCB9IGZyb20gJ0BkbmQta2l0L21vZGlmaWVycyc7XG5cbmNvbnN0IE1BWF9ESVNQTEFZX0xFTkdUSCA9IDUwO1xuXG5jb25zdCBJbWFnZVdyYXBwZXIgPSBzdHlsZWQuZGl2YFxuICBmbGV4LWJhc2lzOiAxNTVweDtcbiAgd2lkdGg6IDE1NXB4O1xuICBoZWlnaHQ6IDEwMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGJvcmRlcjogJHtib3JkZXJzLnRleHRGaWVsZH07XG4gIGJvcmRlci1yYWRpdXM6ICR7bGVuZ3Rocy5ib3JkZXJSYWRpdXN9O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAke2VmZmVjdHMuY2hlY2tlcmJvYXJkfTtcbiAgJHtzaGFkb3dzLmluc2V0fTtcbiAgY3Vyc29yOiAke3Byb3BzID0+IChwcm9wcy5zb3J0YWJsZSA/ICdwb2ludGVyJyA6ICdhdXRvJyl9O1xuYDtcblxuY29uc3QgU29ydGFibGVJbWFnZUJ1dHRvbnNXcmFwcGVyID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGNvbHVtbi1nYXA6IDEwcHg7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbiAgbWFyZ2luLXRvcDogLTEwcHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG5gO1xuXG5jb25zdCBTdHlsZWRJbWFnZSA9IHN0eWxlZC5pbWdgXG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvbnRhaW47XG5gO1xuXG5mdW5jdGlvbiBJbWFnZShwcm9wcykge1xuICByZXR1cm4gPFN0eWxlZEltYWdlIHJvbGU9XCJwcmVzZW50YXRpb25cIiB7Li4ucHJvcHN9IC8+O1xufVxuXG5mdW5jdGlvbiBTb3J0YWJsZUltYWdlQnV0dG9ucyh7IG9uUmVtb3ZlLCBvblJlcGxhY2UgfSkge1xuICByZXR1cm4gKFxuICAgIDxTb3J0YWJsZUltYWdlQnV0dG9uc1dyYXBwZXI+XG4gICAgICA8SWNvbkJ1dHRvbiBzaXplPVwic21hbGxcIiB0eXBlPVwibWVkaWFcIiBvbkNsaWNrPXtvblJlcGxhY2V9PjwvSWNvbkJ1dHRvbj5cbiAgICAgIDxJY29uQnV0dG9uIHNpemU9XCJzbWFsbFwiIHR5cGU9XCJjbG9zZVwiIG9uQ2xpY2s9e29uUmVtb3ZlfT48L0ljb25CdXR0b24+XG4gICAgPC9Tb3J0YWJsZUltYWdlQnV0dG9uc1dyYXBwZXI+XG4gICk7XG59XG5cbmZ1bmN0aW9uIFNvcnRhYmxlSW1hZ2UocHJvcHMpIHtcbiAgY29uc3QgeyBhdHRyaWJ1dGVzLCBsaXN0ZW5lcnMsIHNldE5vZGVSZWYsIHRyYW5zZm9ybSwgdHJhbnNpdGlvbiB9ID0gdXNlU29ydGFibGUoe1xuICAgIGlkOiBwcm9wcy5pZCxcbiAgfSk7XG5cbiAgY29uc3Qgc3R5bGUgPSB7XG4gICAgdHJhbnNmb3JtOiBDU1MuVHJhbnNmb3JtLnRvU3RyaW5nKHRyYW5zZm9ybSksXG4gICAgdHJhbnNpdGlvbixcbiAgfTtcblxuICBjb25zdCB7IGl0ZW1WYWx1ZSwgZ2V0QXNzZXQsIGZpZWxkLCBvblJlbW92ZSwgb25SZXBsYWNlIH0gPSBwcm9wcztcblxuICByZXR1cm4gKFxuICAgIDxkaXYgcmVmPXtzZXROb2RlUmVmfSBzdHlsZT17c3R5bGV9IHsuLi5hdHRyaWJ1dGVzfSB7Li4ubGlzdGVuZXJzfT5cbiAgICAgIDxJbWFnZVdyYXBwZXIgc29ydGFibGU+XG4gICAgICAgIDxJbWFnZSBzcmM9e2dldEFzc2V0KGl0ZW1WYWx1ZSwgZmllbGQpIHx8ICcnfSAvPlxuICAgICAgPC9JbWFnZVdyYXBwZXI+XG4gICAgICA8U29ydGFibGVJbWFnZUJ1dHRvbnNcbiAgICAgICAgaXRlbT17aXRlbVZhbHVlfVxuICAgICAgICBvblJlbW92ZT17b25SZW1vdmV9XG4gICAgICAgIG9uUmVwbGFjZT17b25SZXBsYWNlfVxuICAgICAgPjwvU29ydGFibGVJbWFnZUJ1dHRvbnM+XG4gICAgPC9kaXY+XG4gICk7XG59XG5cbmZ1bmN0aW9uIFNvcnRhYmxlTXVsdGlJbWFnZVdyYXBwZXIoe1xuICBpdGVtcyxcbiAgZ2V0QXNzZXQsXG4gIGZpZWxkLFxuICBvblNvcnRFbmQsXG4gIG9uUmVtb3ZlT25lLFxuICBvblJlcGxhY2VPbmUsXG59KSB7XG4gIGNvbnN0IGFjdGl2YXRpb25Db25zdHJhaW50ID0geyBkaXN0YW5jZTogNCB9O1xuICBjb25zdCBzZW5zb3JzID0gdXNlU2Vuc29ycyhcbiAgICB1c2VTZW5zb3IoTW91c2VTZW5zb3IsIHsgYWN0aXZhdGlvbkNvbnN0cmFpbnQgfSksXG4gICAgdXNlU2Vuc29yKFRvdWNoU2Vuc29yLCB7IGFjdGl2YXRpb25Db25zdHJhaW50IH0pLFxuICApO1xuXG4gIGZ1bmN0aW9uIGhhbmRsZVNvcnRFbmQoeyBhY3RpdmUsIG92ZXIgfSkge1xuICAgIG9uU29ydEVuZCh7XG4gICAgICBvbGRJbmRleDogaXRlbXMuZmluZEluZGV4KGl0ZW0gPT4gaXRlbS5pZCA9PT0gYWN0aXZlLmlkKSxcbiAgICAgIG5ld0luZGV4OiBpdGVtcy5maW5kSW5kZXgoaXRlbSA9PiBpdGVtLmlkID09PSBvdmVyLmlkKSxcbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPGRpdlxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0L25vLXVua25vd24tcHJvcGVydHlcbiAgICAgIGNzcz17Y3NzYFxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBgfVxuICAgID5cbiAgICAgIDxEbmRDb250ZXh0XG4gICAgICAgIG1vZGlmaWVycz17W3Jlc3RyaWN0VG9QYXJlbnRFbGVtZW50XX1cbiAgICAgICAgY29sbGlzaW9uRGV0ZWN0aW9uPXtjbG9zZXN0Q2VudGVyfVxuICAgICAgICBzZW5zb3JzPXtzZW5zb3JzfVxuICAgICAgICBvbkRyYWdFbmQ9e2hhbmRsZVNvcnRFbmR9XG4gICAgICA+XG4gICAgICAgIDxTb3J0YWJsZUNvbnRleHQgaXRlbXM9e2l0ZW1zfT5cbiAgICAgICAgICB7aXRlbXMubWFwKChpdGVtLCBpbmRleCkgPT4gKFxuICAgICAgICAgICAgPFNvcnRhYmxlSW1hZ2VcbiAgICAgICAgICAgICAga2V5PXtpdGVtLmlkfVxuICAgICAgICAgICAgICBpZD17aXRlbS5pZH1cbiAgICAgICAgICAgICAgaW5kZXg9e2luZGV4fVxuICAgICAgICAgICAgICBpdGVtVmFsdWU9e2l0ZW0udmFsdWV9XG4gICAgICAgICAgICAgIGdldEFzc2V0PXtnZXRBc3NldH1cbiAgICAgICAgICAgICAgZmllbGQ9e2ZpZWxkfVxuICAgICAgICAgICAgICBvblJlbW92ZT17b25SZW1vdmVPbmUoaW5kZXgpfVxuICAgICAgICAgICAgICBvblJlcGxhY2U9e29uUmVwbGFjZU9uZShpbmRleCl9XG4gICAgICAgICAgICA+PC9Tb3J0YWJsZUltYWdlPlxuICAgICAgICAgICkpfVxuICAgICAgICA8L1NvcnRhYmxlQ29udGV4dD5cbiAgICAgIDwvRG5kQ29udGV4dD5cbiAgICA8L2Rpdj5cbiAgKTtcbn1cblxuY29uc3QgRmlsZUxpbmsgPSBzdHlsZWQuYWBcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6IGluaGVyaXQ7XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG5gO1xuXG5jb25zdCBGaWxlTGlua3MgPSBzdHlsZWQuZGl2YFxuICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuYDtcblxuY29uc3QgRmlsZUxpbmtMaXN0ID0gc3R5bGVkLnVsYFxuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5gO1xuXG5jb25zdCBGaWxlV2lkZ2V0QnV0dG9uID0gc3R5bGVkLmJ1dHRvbmBcbiAgJHtidXR0b25zLmJ1dHRvbn07XG4gICR7Y29tcG9uZW50cy5iYWRnZX07XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG5gO1xuXG5jb25zdCBGaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlID0gc3R5bGVkLmJ1dHRvbmBcbiAgJHtidXR0b25zLmJ1dHRvbn07XG4gICR7Y29tcG9uZW50cy5iYWRnZURhbmdlcn07XG5gO1xuXG5mdW5jdGlvbiBpc011bHRpcGxlKHZhbHVlKSB7XG4gIHJldHVybiBBcnJheS5pc0FycmF5KHZhbHVlKSB8fCBMaXN0LmlzTGlzdCh2YWx1ZSk7XG59XG5cbmZ1bmN0aW9uIHNpemVPZlZhbHVlKHZhbHVlKSB7XG4gIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgIHJldHVybiB2YWx1ZS5sZW5ndGg7XG4gIH1cblxuICBpZiAoTGlzdC5pc0xpc3QodmFsdWUpKSB7XG4gICAgcmV0dXJuIHZhbHVlLnNpemU7XG4gIH1cblxuICByZXR1cm4gdmFsdWUgPyAxIDogMDtcbn1cblxuZnVuY3Rpb24gdmFsdWVMaXN0VG9BcnJheSh2YWx1ZSkge1xuICByZXR1cm4gTGlzdC5pc0xpc3QodmFsdWUpID8gdmFsdWUudG9BcnJheSgpIDogdmFsdWUgPz8gJyc7XG59XG5cbmZ1bmN0aW9uIHZhbHVlTGlzdFRvU29ydGFibGVBcnJheSh2YWx1ZSkge1xuICBpZiAoIWlzTXVsdGlwbGUodmFsdWUpKSB7XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG5cbiAgY29uc3QgdmFsdWVBcnJheSA9IHZhbHVlTGlzdFRvQXJyYXkodmFsdWUpLm1hcCh2YWx1ZSA9PiAoe1xuICAgIGlkOiB1dWlkKCksXG4gICAgdmFsdWUsXG4gIH0pKTtcblxuICByZXR1cm4gdmFsdWVBcnJheTtcbn1cblxuY29uc3Qgd2FybkRlcHJlY2F0ZWRPcHRpb25zID0gb25jZShmaWVsZCA9PlxuICBjb25zb2xlLndhcm4ob25lTGluZWBcbiAgRGVjYXAgQ01TIGNvbmZpZzogJHtmaWVsZC5nZXQoJ25hbWUnKX0gZmllbGQ6IHByb3BlcnR5IFwib3B0aW9uc1wiIGhhcyBiZWVuIGRlcHJlY2F0ZWQgZm9yIHRoZVxuICAke2ZpZWxkLmdldCgnd2lkZ2V0Jyl9IHdpZGdldCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IG1ham9yIHJlbGVhc2UuIFJhdGhlciB0aGFuXG4gIFxcYGZpZWxkLm9wdGlvbnMubWVkaWFfbGlicmFyeVxcYCwgYXBwbHkgbWVkaWEgbGlicmFyeSBvcHRpb25zIGZvciB0aGlzIHdpZGdldCB1bmRlclxuICBcXGBmaWVsZC5tZWRpYV9saWJyYXJ5XFxgLlxuYCksXG4pO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB3aXRoRmlsZUNvbnRyb2woeyBmb3JJbWFnZSB9ID0ge30pIHtcbiAgcmV0dXJuIGNsYXNzIEZpbGVDb250cm9sIGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50IHtcbiAgICBzdGF0aWMgcHJvcFR5cGVzID0ge1xuICAgICAgZmllbGQ6IFByb3BUeXBlcy5vYmplY3QuaXNSZXF1aXJlZCxcbiAgICAgIGdldEFzc2V0OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgbWVkaWFQYXRoczogSW1tdXRhYmxlUHJvcFR5cGVzLm1hcC5pc1JlcXVpcmVkLFxuICAgICAgb25BZGRBc3NldDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uQ2hhbmdlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgb25SZW1vdmVJbnNlcnRlZE1lZGlhOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgb25PcGVuTWVkaWFMaWJyYXJ5OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgb25DbGVhck1lZGlhQ29udHJvbDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uUmVtb3ZlTWVkaWFDb250cm9sOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgY2xhc3NOYW1lV3JhcHBlcjogUHJvcFR5cGVzLnN0cmluZy5pc1JlcXVpcmVkLFxuICAgICAgdmFsdWU6IFByb3BUeXBlcy5vbmVPZlR5cGUoW1xuICAgICAgICBQcm9wVHlwZXMuc3RyaW5nLFxuICAgICAgICBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMuc3RyaW5nKSxcbiAgICAgICAgSW1tdXRhYmxlUHJvcFR5cGVzLmxpc3RPZihQcm9wVHlwZXMuc3RyaW5nKSxcbiAgICAgIF0pLFxuICAgICAgdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICB9O1xuXG4gICAgc3RhdGljIGRlZmF1bHRQcm9wcyA9IHtcbiAgICAgIHZhbHVlOiAnJyxcbiAgICB9O1xuXG4gICAgY29uc3RydWN0b3IocHJvcHMpIHtcbiAgICAgIHN1cGVyKHByb3BzKTtcbiAgICAgIHRoaXMuY29udHJvbElEID0gdXVpZCgpO1xuICAgIH1cblxuICAgIHNob3VsZENvbXBvbmVudFVwZGF0ZShuZXh0UHJvcHMpIHtcbiAgICAgIC8qKlxuICAgICAgICogQWx3YXlzIHVwZGF0ZSBpZiB0aGUgdmFsdWUgb3IgZ2V0QXNzZXQgY2hhbmdlcy5cbiAgICAgICAqL1xuICAgICAgaWYgKHRoaXMucHJvcHMudmFsdWUgIT09IG5leHRQcm9wcy52YWx1ZSB8fCB0aGlzLnByb3BzLmdldEFzc2V0ICE9PSBuZXh0UHJvcHMuZ2V0QXNzZXQpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG5cbiAgICAgIC8qKlxuICAgICAgICogSWYgdGhlcmUgaXMgYSBtZWRpYSBwYXRoIGZvciB0aGlzIGNvbnRyb2wgaW4gdGhlIHN0YXRlIG9iamVjdCwgYW5kIHRoYXRcbiAgICAgICAqIHBhdGggaXMgZGlmZmVyZW50IHRoYW4gdGhlIHZhbHVlIGluIGBuZXh0UHJvcHNgLCB1cGRhdGUuXG4gICAgICAgKi9cbiAgICAgIGNvbnN0IG1lZGlhUGF0aCA9IG5leHRQcm9wcy5tZWRpYVBhdGhzLmdldCh0aGlzLmNvbnRyb2xJRCk7XG4gICAgICBpZiAobWVkaWFQYXRoICYmIG5leHRQcm9wcy52YWx1ZSAhPT0gbWVkaWFQYXRoKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgY29tcG9uZW50RGlkVXBkYXRlKCkge1xuICAgICAgY29uc3QgeyBtZWRpYVBhdGhzLCB2YWx1ZSwgb25SZW1vdmVJbnNlcnRlZE1lZGlhLCBvbkNoYW5nZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGNvbnN0IG1lZGlhUGF0aCA9IG1lZGlhUGF0aHMuZ2V0KHRoaXMuY29udHJvbElEKTtcbiAgICAgIGlmIChtZWRpYVBhdGggJiYgbWVkaWFQYXRoICE9PSB2YWx1ZSkge1xuICAgICAgICBvbkNoYW5nZShtZWRpYVBhdGgpO1xuICAgICAgfSBlbHNlIGlmIChtZWRpYVBhdGggJiYgbWVkaWFQYXRoID09PSB2YWx1ZSkge1xuICAgICAgICBvblJlbW92ZUluc2VydGVkTWVkaWEodGhpcy5jb250cm9sSUQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGNvbXBvbmVudFdpbGxVbm1vdW50KCkge1xuICAgICAgdGhpcy5wcm9wcy5vblJlbW92ZU1lZGlhQ29udHJvbCh0aGlzLmNvbnRyb2xJRCk7XG4gICAgfVxuXG4gICAgaGFuZGxlQ2hhbmdlID0gZSA9PiB7XG4gICAgICBjb25zdCB7IGZpZWxkLCBvbk9wZW5NZWRpYUxpYnJhcnksIHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgY29uc3QgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gdGhpcy5nZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMoKTtcblxuICAgICAgcmV0dXJuIG9uT3Blbk1lZGlhTGlicmFyeSh7XG4gICAgICAgIGNvbnRyb2xJRDogdGhpcy5jb250cm9sSUQsXG4gICAgICAgIGZvckltYWdlLFxuICAgICAgICBwcml2YXRlVXBsb2FkOiBmaWVsZC5nZXQoJ3ByaXZhdGUnKSxcbiAgICAgICAgdmFsdWU6IHZhbHVlTGlzdFRvQXJyYXkodmFsdWUpLFxuICAgICAgICBhbGxvd011bHRpcGxlOiAhIW1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2FsbG93X211bHRpcGxlJywgdHJ1ZSksXG4gICAgICAgIGNvbmZpZzogbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zLmdldCgnY29uZmlnJyksXG4gICAgICAgIGZpZWxkLFxuICAgICAgfSk7XG4gICAgfTtcblxuICAgIGhhbmRsZVVybCA9IHN1YmplY3QgPT4gZSA9PiB7XG4gICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG5cbiAgICAgIGNvbnN0IHVybCA9IHdpbmRvdy5wcm9tcHQodGhpcy5wcm9wcy50KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LnByb21wdFVybGApKTtcblxuICAgICAgcmV0dXJuIHRoaXMucHJvcHMub25DaGFuZ2UodXJsKTtcbiAgICB9O1xuXG4gICAgaGFuZGxlUmVtb3ZlID0gZSA9PiB7XG4gICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB0aGlzLnByb3BzLm9uQ2xlYXJNZWRpYUNvbnRyb2wodGhpcy5jb250cm9sSUQpO1xuICAgICAgcmV0dXJuIHRoaXMucHJvcHMub25DaGFuZ2UoJycpO1xuICAgIH07XG5cbiAgICBvblJlbW92ZU9uZSA9IGluZGV4ID0+ICgpID0+IHtcbiAgICAgIGNvbnN0IHZhbHVlID0gdmFsdWVMaXN0VG9BcnJheSh0aGlzLnByb3BzLnZhbHVlKTtcbiAgICAgIHZhbHVlLnNwbGljZShpbmRleCwgMSk7XG4gICAgICByZXR1cm4gdGhpcy5wcm9wcy5vbkNoYW5nZShzaXplT2ZWYWx1ZSh2YWx1ZSkgPiAwID8gWy4uLnZhbHVlXSA6IG51bGwpO1xuICAgIH07XG5cbiAgICBvblJlcGxhY2VPbmUgPSBpbmRleCA9PiAoKSA9PiB7XG4gICAgICBjb25zdCB7IGZpZWxkLCBvbk9wZW5NZWRpYUxpYnJhcnksIHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gdGhpcy5nZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMoKTtcblxuICAgICAgcmV0dXJuIG9uT3Blbk1lZGlhTGlicmFyeSh7XG4gICAgICAgIGNvbnRyb2xJRDogdGhpcy5jb250cm9sSUQsXG4gICAgICAgIGZvckltYWdlLFxuICAgICAgICBwcml2YXRlVXBsb2FkOiBmaWVsZC5nZXQoJ3ByaXZhdGUnKSxcbiAgICAgICAgdmFsdWU6IHZhbHVlTGlzdFRvQXJyYXkodmFsdWUpLFxuICAgICAgICByZXBsYWNlSW5kZXg6IGluZGV4LFxuICAgICAgICBhbGxvd011bHRpcGxlOiBmYWxzZSxcbiAgICAgICAgY29uZmlnOiBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMuZ2V0KCdjb25maWcnKSxcbiAgICAgICAgZmllbGQsXG4gICAgICB9KTtcbiAgICB9O1xuXG4gICAgZ2V0TWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gKCkgPT4ge1xuICAgICAgY29uc3QgeyBmaWVsZCB9ID0gdGhpcy5wcm9wcztcblxuICAgICAgaWYgKGZpZWxkLmhhc0luKFsnb3B0aW9ucycsICdtZWRpYV9saWJyYXJ5J10pKSB7XG4gICAgICAgIHdhcm5EZXByZWNhdGVkT3B0aW9ucyhmaWVsZCk7XG4gICAgICAgIHJldHVybiBmaWVsZC5nZXRJbihbJ29wdGlvbnMnLCAnbWVkaWFfbGlicmFyeSddLCBNYXAoKSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBmaWVsZC5nZXQoJ21lZGlhX2xpYnJhcnknLCBNYXAoKSk7XG4gICAgfTtcblxuICAgIGFsbG93c011bHRpcGxlID0gKCkgPT4ge1xuICAgICAgY29uc3QgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gdGhpcy5nZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMoKTtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycsIGZhbHNlKSAmJlxuICAgICAgICBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMuZ2V0KCdjb25maWcnKS5nZXQoJ211bHRpcGxlJywgZmFsc2UpXG4gICAgICApO1xuICAgIH07XG5cbiAgICBvblNvcnRFbmQgPSAoeyBvbGRJbmRleCwgbmV3SW5kZXggfSkgPT4ge1xuICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGNvbnN0IG5ld1ZhbHVlID0gYXJyYXlNb3ZlKHZhbHVlLCBvbGRJbmRleCwgbmV3SW5kZXgpO1xuICAgICAgcmV0dXJuIHRoaXMucHJvcHMub25DaGFuZ2UobmV3VmFsdWUpO1xuICAgIH07XG5cbiAgICBnZXRWYWxpZGF0ZVZhbHVlID0gKCkgPT4ge1xuICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICByZXR1cm4gaXNNdWx0aXBsZSh2YWx1ZSkgPyB2YWx1ZS5tYXAodiA9PiBiYXNlbmFtZSh2KSkgOiBiYXNlbmFtZSh2YWx1ZSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9O1xuXG4gICAgcmVuZGVyRmlsZUxpbmsgPSB2YWx1ZSA9PiB7XG4gICAgICBjb25zdCBzaXplID0gTUFYX0RJU1BMQVlfTEVOR1RIO1xuICAgICAgaWYgKCF2YWx1ZSB8fCB2YWx1ZS5sZW5ndGggPD0gc2l6ZSkge1xuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICB9XG4gICAgICBjb25zdCB0ZXh0ID0gYCR7dmFsdWUuc2xpY2UoMCwgc2l6ZSAvIDIpfVxcdTIwMjYke3ZhbHVlLnNsaWNlKC0oc2l6ZSAvIDIpICsgMSl9YDtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxGaWxlTGluayBocmVmPXt2YWx1ZX0gcmVsPVwibm9vcGVuZXJcIiB0YXJnZXQ9XCJfYmxhbmtcIj5cbiAgICAgICAgICB7dGV4dH1cbiAgICAgICAgPC9GaWxlTGluaz5cbiAgICAgICk7XG4gICAgfTtcblxuICAgIHJlbmRlckZpbGVMaW5rcyA9ICgpID0+IHtcbiAgICAgIGNvbnN0IHsgdmFsdWUgfSA9IHRoaXMucHJvcHM7XG5cbiAgICAgIGlmIChpc011bHRpcGxlKHZhbHVlKSkge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIDxGaWxlTGlua3M+XG4gICAgICAgICAgICA8RmlsZUxpbmtMaXN0PlxuICAgICAgICAgICAgICB7dmFsdWUubWFwKHZhbCA9PiAoXG4gICAgICAgICAgICAgICAgPGxpIGtleT17dmFsfT57dGhpcy5yZW5kZXJGaWxlTGluayh2YWwpfTwvbGk+XG4gICAgICAgICAgICAgICkpfVxuICAgICAgICAgICAgPC9GaWxlTGlua0xpc3Q+XG4gICAgICAgICAgPC9GaWxlTGlua3M+XG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICByZXR1cm4gPEZpbGVMaW5rcz57dGhpcy5yZW5kZXJGaWxlTGluayh2YWx1ZSl9PC9GaWxlTGlua3M+O1xuICAgIH07XG5cbiAgICByZW5kZXJJbWFnZXMgPSAoKSA9PiB7XG4gICAgICBjb25zdCB7IGdldEFzc2V0LCB2YWx1ZSwgZmllbGQgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBpdGVtcyA9IHZhbHVlTGlzdFRvU29ydGFibGVBcnJheSh2YWx1ZSk7XG4gICAgICBpZiAoaXNNdWx0aXBsZSh2YWx1ZSkpIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICA8U29ydGFibGVNdWx0aUltYWdlV3JhcHBlclxuICAgICAgICAgICAgaXRlbXM9e2l0ZW1zfVxuICAgICAgICAgICAgb25Tb3J0RW5kPXt0aGlzLm9uU29ydEVuZH1cbiAgICAgICAgICAgIG9uUmVtb3ZlT25lPXt0aGlzLm9uUmVtb3ZlT25lfVxuICAgICAgICAgICAgb25SZXBsYWNlT25lPXt0aGlzLm9uUmVwbGFjZU9uZX1cbiAgICAgICAgICAgIGRpc3RhbmNlPXs0fVxuICAgICAgICAgICAgZ2V0QXNzZXQ9e2dldEFzc2V0fVxuICAgICAgICAgICAgZmllbGQ9e2ZpZWxkfVxuICAgICAgICAgICAgYXhpcz1cInh5XCJcbiAgICAgICAgICAgIGxvY2tUb0NvbnRhaW5lckVkZ2VzPXt0cnVlfVxuICAgICAgICAgID48L1NvcnRhYmxlTXVsdGlJbWFnZVdyYXBwZXI+XG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHNyYyA9IGdldEFzc2V0KHZhbHVlLCBmaWVsZCk7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8SW1hZ2VXcmFwcGVyPlxuICAgICAgICAgIDxJbWFnZSBzcmM9e3NyYyB8fCAnJ30gLz5cbiAgICAgICAgPC9JbWFnZVdyYXBwZXI+XG4gICAgICApO1xuICAgIH07XG5cbiAgICByZW5kZXJTZWxlY3Rpb24gPSBzdWJqZWN0ID0+IHtcbiAgICAgIGNvbnN0IHsgdCwgZmllbGQgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBhbGxvd3NNdWx0aXBsZSA9IHRoaXMuYWxsb3dzTXVsdGlwbGUoKTtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge2ZvckltYWdlID8gdGhpcy5yZW5kZXJJbWFnZXMoKSA6IG51bGx9XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIHtmb3JJbWFnZSA/IG51bGwgOiB0aGlzLnJlbmRlckZpbGVMaW5rcygpfVxuICAgICAgICAgICAgPEZpbGVXaWRnZXRCdXR0b24gb25DbGljaz17dGhpcy5oYW5kbGVDaGFuZ2V9PlxuICAgICAgICAgICAgICB7dChcbiAgICAgICAgICAgICAgICBgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS4ke1xuICAgICAgICAgICAgICAgICAgdGhpcy5hbGxvd3NNdWx0aXBsZSgpID8gJ2FkZE1vcmUnIDogJ2Nob29zZURpZmZlcmVudCdcbiAgICAgICAgICAgICAgICB9YCxcbiAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIDwvRmlsZVdpZGdldEJ1dHRvbj5cbiAgICAgICAgICAgIHtmaWVsZC5nZXQoJ2Nob29zZV91cmwnLCB0cnVlKSAmJiAhdGhpcy5hbGxvd3NNdWx0aXBsZSgpID8gKFxuICAgICAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvbiBvbkNsaWNrPXt0aGlzLmhhbmRsZVVybChzdWJqZWN0KX0+XG4gICAgICAgICAgICAgICAge3QoYGVkaXRvci5lZGl0b3JXaWRnZXRzLiR7c3ViamVjdH0ucmVwbGFjZVVybGApfVxuICAgICAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b24+XG4gICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgIDxGaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlIG9uQ2xpY2s9e3RoaXMuaGFuZGxlUmVtb3ZlfT5cbiAgICAgICAgICAgICAge3QoYGVkaXRvci5lZGl0b3JXaWRnZXRzLiR7c3ViamVjdH0ucmVtb3ZlJHthbGxvd3NNdWx0aXBsZSA/ICdBbGwnIDogJyd9YCl9XG4gICAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b25SZW1vdmU+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgcmVuZGVyTm9TZWxlY3Rpb24gPSBzdWJqZWN0ID0+IHtcbiAgICAgIGNvbnN0IHsgdCwgZmllbGQgfSA9IHRoaXMucHJvcHM7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8PlxuICAgICAgICAgIDxGaWxlV2lkZ2V0QnV0dG9uIG9uQ2xpY2s9e3RoaXMuaGFuZGxlQ2hhbmdlfT5cbiAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LmNob29zZSR7dGhpcy5hbGxvd3NNdWx0aXBsZSgpID8gJ011bHRpcGxlJyA6ICcnfWApfVxuICAgICAgICAgIDwvRmlsZVdpZGdldEJ1dHRvbj5cbiAgICAgICAgICB7ZmllbGQuZ2V0KCdjaG9vc2VfdXJsJywgdHJ1ZSkgPyAoXG4gICAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvbiBvbkNsaWNrPXt0aGlzLmhhbmRsZVVybChzdWJqZWN0KX0+XG4gICAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LmNob29zZVVybGApfVxuICAgICAgICAgICAgPC9GaWxlV2lkZ2V0QnV0dG9uPlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICA8Lz5cbiAgICAgICk7XG4gICAgfTtcblxuICAgIHJlbmRlcigpIHtcbiAgICAgIGNvbnN0IHsgdmFsdWUsIGNsYXNzTmFtZVdyYXBwZXIgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBzdWJqZWN0ID0gZm9ySW1hZ2UgPyAnaW1hZ2UnIDogJ2ZpbGUnO1xuXG4gICAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Y2xhc3NOYW1lV3JhcHBlcn0+XG4gICAgICAgICAgPHNwYW4+e3ZhbHVlID8gdGhpcy5yZW5kZXJTZWxlY3Rpb24oc3ViamVjdCkgOiB0aGlzLnJlbmRlck5vU2VsZWN0aW9uKHN1YmplY3QpfTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICApO1xuICAgIH1cbiAgfTtcbn1cbiJdfQ== */",
|
|
153
200
|
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
154
201
|
});
|
|
155
202
|
const FileWidgetButton = (0, _styledBase.default)("button", {
|
|
156
203
|
target: "e1hax4ql6",
|
|
157
204
|
label: "FileWidgetButton"
|
|
158
|
-
})(_decapCmsUiDefault.buttons.button, ";", _decapCmsUiDefault.components.badge, ";margin-bottom:12px;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy93aXRoRmlsZUNvbnRyb2wuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBOEhzQyIsImZpbGUiOiIuLi8uLi9zcmMvd2l0aEZpbGVDb250cm9sLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgSW1tdXRhYmxlUHJvcFR5cGVzIGZyb20gJ3JlYWN0LWltbXV0YWJsZS1wcm9wdHlwZXMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vY29yZSc7XG5pbXBvcnQgeyBNYXAsIExpc3QgfSBmcm9tICdpbW11dGFibGUnO1xuaW1wb3J0IHsgb25jZSB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgdXVpZCBmcm9tICd1dWlkL3Y0JztcbmltcG9ydCB7IG9uZUxpbmUgfSBmcm9tICdjb21tb24tdGFncyc7XG5pbXBvcnQge1xuICBsZW5ndGhzLFxuICBjb21wb25lbnRzLFxuICBidXR0b25zLFxuICBib3JkZXJzLFxuICBlZmZlY3RzLFxuICBzaGFkb3dzLFxuICBJY29uQnV0dG9uLFxufSBmcm9tICdkZWNhcC1jbXMtdWktZGVmYXVsdCc7XG5pbXBvcnQgeyBiYXNlbmFtZSB9IGZyb20gJ2RlY2FwLWNtcy1saWItdXRpbCc7XG5pbXBvcnQgeyBTb3J0YWJsZUNvbnRhaW5lciwgU29ydGFibGVFbGVtZW50IH0gZnJvbSAncmVhY3Qtc29ydGFibGUtaG9jJztcbmltcG9ydCB7IGFycmF5TW92ZUltbXV0YWJsZSBhcyBhcnJheU1vdmUgfSBmcm9tICdhcnJheS1tb3ZlJztcblxuY29uc3QgTUFYX0RJU1BMQVlfTEVOR1RIID0gNTA7XG5cbmNvbnN0IEltYWdlV3JhcHBlciA9IHN0eWxlZC5kaXZgXG4gIGZsZXgtYmFzaXM6IDE1NXB4O1xuICB3aWR0aDogMTU1cHg7XG4gIGhlaWdodDogMTAwcHg7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgYm9yZGVyOiAke2JvcmRlcnMudGV4dEZpZWxkfTtcbiAgYm9yZGVyLXJhZGl1czogJHtsZW5ndGhzLmJvcmRlclJhZGl1c307XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gICR7ZWZmZWN0cy5jaGVja2VyYm9hcmR9O1xuICAke3NoYWRvd3MuaW5zZXR9O1xuICBjdXJzb3I6ICR7cHJvcHMgPT4gKHByb3BzLnNvcnRhYmxlID8gJ3BvaW50ZXInIDogJ2F1dG8nKX07XG5gO1xuXG5jb25zdCBTb3J0YWJsZUltYWdlQnV0dG9uc1dyYXBwZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY29sdW1uLWdhcDogMTBweDtcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbmA7XG5cbmNvbnN0IFN0eWxlZEltYWdlID0gc3R5bGVkLmltZ2BcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcbmA7XG5cbmZ1bmN0aW9uIEltYWdlKHByb3BzKSB7XG4gIHJldHVybiA8U3R5bGVkSW1hZ2Ugcm9sZT1cInByZXNlbnRhdGlvblwiIHsuLi5wcm9wc30gLz47XG59XG5cbmZ1bmN0aW9uIFNvcnRhYmxlSW1hZ2VCdXR0b25zKHsgb25SZW1vdmUsIG9uUmVwbGFjZSB9KSB7XG4gIHJldHVybiAoXG4gICAgPFNvcnRhYmxlSW1hZ2VCdXR0b25zV3JhcHBlcj5cbiAgICAgIDxJY29uQnV0dG9uIHNpemU9XCJzbWFsbFwiIHR5cGU9XCJtZWRpYVwiIG9uQ2xpY2s9e29uUmVwbGFjZX0+PC9JY29uQnV0dG9uPlxuICAgICAgPEljb25CdXR0b24gc2l6ZT1cInNtYWxsXCIgdHlwZT1cImNsb3NlXCIgb25DbGljaz17b25SZW1vdmV9PjwvSWNvbkJ1dHRvbj5cbiAgICA8L1NvcnRhYmxlSW1hZ2VCdXR0b25zV3JhcHBlcj5cbiAgKTtcbn1cblxuY29uc3QgU29ydGFibGVJbWFnZSA9IFNvcnRhYmxlRWxlbWVudCgoeyBpdGVtVmFsdWUsIGdldEFzc2V0LCBmaWVsZCwgb25SZW1vdmUsIG9uUmVwbGFjZSB9KSA9PiB7XG4gIHJldHVybiAoXG4gICAgPGRpdj5cbiAgICAgIDxJbWFnZVdyYXBwZXIgc29ydGFibGU+XG4gICAgICAgIDxJbWFnZSBzcmM9e2dldEFzc2V0KGl0ZW1WYWx1ZSwgZmllbGQpIHx8ICcnfSAvPlxuICAgICAgPC9JbWFnZVdyYXBwZXI+XG4gICAgICA8U29ydGFibGVJbWFnZUJ1dHRvbnNcbiAgICAgICAgaXRlbT17aXRlbVZhbHVlfVxuICAgICAgICBvblJlbW92ZT17b25SZW1vdmV9XG4gICAgICAgIG9uUmVwbGFjZT17b25SZXBsYWNlfVxuICAgICAgPjwvU29ydGFibGVJbWFnZUJ1dHRvbnM+XG4gICAgPC9kaXY+XG4gICk7XG59KTtcblxuY29uc3QgU29ydGFibGVNdWx0aUltYWdlV3JhcHBlciA9IFNvcnRhYmxlQ29udGFpbmVyKFxuICAoeyBpdGVtcywgZ2V0QXNzZXQsIGZpZWxkLCBvblJlbW92ZU9uZSwgb25SZXBsYWNlT25lIH0pID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgPGRpdlxuICAgICAgICBjc3M9e2Nzc2BcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgYH1cbiAgICAgID5cbiAgICAgICAge2l0ZW1zLm1hcCgoaXRlbVZhbHVlLCBpbmRleCkgPT4gKFxuICAgICAgICAgIDxTb3J0YWJsZUltYWdlXG4gICAgICAgICAgICBrZXk9e2BpdGVtLSR7aXRlbVZhbHVlfWB9XG4gICAgICAgICAgICBpbmRleD17aW5kZXh9XG4gICAgICAgICAgICBpdGVtVmFsdWU9e2l0ZW1WYWx1ZX1cbiAgICAgICAgICAgIGdldEFzc2V0PXtnZXRBc3NldH1cbiAgICAgICAgICAgIGZpZWxkPXtmaWVsZH1cbiAgICAgICAgICAgIG9uUmVtb3ZlPXtvblJlbW92ZU9uZShpbmRleCl9XG4gICAgICAgICAgICBvblJlcGxhY2U9e29uUmVwbGFjZU9uZShpbmRleCl9XG4gICAgICAgICAgLz5cbiAgICAgICAgKSl9XG4gICAgICA8L2Rpdj5cbiAgICApO1xuICB9LFxuKTtcblxuY29uc3QgRmlsZUxpbmsgPSBzdHlsZWQuYWBcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6IGluaGVyaXQ7XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG5gO1xuXG5jb25zdCBGaWxlTGlua3MgPSBzdHlsZWQuZGl2YFxuICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuYDtcblxuY29uc3QgRmlsZUxpbmtMaXN0ID0gc3R5bGVkLnVsYFxuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5gO1xuXG5jb25zdCBGaWxlV2lkZ2V0QnV0dG9uID0gc3R5bGVkLmJ1dHRvbmBcbiAgJHtidXR0b25zLmJ1dHRvbn07XG4gICR7Y29tcG9uZW50cy5iYWRnZX07XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG5gO1xuXG5jb25zdCBGaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlID0gc3R5bGVkLmJ1dHRvbmBcbiAgJHtidXR0b25zLmJ1dHRvbn07XG4gICR7Y29tcG9uZW50cy5iYWRnZURhbmdlcn07XG5gO1xuXG5mdW5jdGlvbiBpc011bHRpcGxlKHZhbHVlKSB7XG4gIHJldHVybiBBcnJheS5pc0FycmF5KHZhbHVlKSB8fCBMaXN0LmlzTGlzdCh2YWx1ZSk7XG59XG5cbmZ1bmN0aW9uIHNpemVPZlZhbHVlKHZhbHVlKSB7XG4gIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgIHJldHVybiB2YWx1ZS5sZW5ndGg7XG4gIH1cblxuICBpZiAoTGlzdC5pc0xpc3QodmFsdWUpKSB7XG4gICAgcmV0dXJuIHZhbHVlLnNpemU7XG4gIH1cblxuICByZXR1cm4gdmFsdWUgPyAxIDogMDtcbn1cblxuZnVuY3Rpb24gdmFsdWVMaXN0VG9BcnJheSh2YWx1ZSkge1xuICByZXR1cm4gTGlzdC5pc0xpc3QodmFsdWUpID8gdmFsdWUudG9BcnJheSgpIDogdmFsdWU7XG59XG5cbmNvbnN0IHdhcm5EZXByZWNhdGVkT3B0aW9ucyA9IG9uY2UoZmllbGQgPT5cbiAgY29uc29sZS53YXJuKG9uZUxpbmVgXG4gIERlY2FwIENNUyBjb25maWc6ICR7ZmllbGQuZ2V0KCduYW1lJyl9IGZpZWxkOiBwcm9wZXJ0eSBcIm9wdGlvbnNcIiBoYXMgYmVlbiBkZXByZWNhdGVkIGZvciB0aGVcbiAgJHtmaWVsZC5nZXQoJ3dpZGdldCcpfSB3aWRnZXQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgbmV4dCBtYWpvciByZWxlYXNlLiBSYXRoZXIgdGhhblxuICBcXGBmaWVsZC5vcHRpb25zLm1lZGlhX2xpYnJhcnlcXGAsIGFwcGx5IG1lZGlhIGxpYnJhcnkgb3B0aW9ucyBmb3IgdGhpcyB3aWRnZXQgdW5kZXJcbiAgXFxgZmllbGQubWVkaWFfbGlicmFyeVxcYC5cbmApLFxuKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gd2l0aEZpbGVDb250cm9sKHsgZm9ySW1hZ2UgfSA9IHt9KSB7XG4gIHJldHVybiBjbGFzcyBGaWxlQ29udHJvbCBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gICAgc3RhdGljIHByb3BUeXBlcyA9IHtcbiAgICAgIGZpZWxkOiBQcm9wVHlwZXMub2JqZWN0LmlzUmVxdWlyZWQsXG4gICAgICBnZXRBc3NldDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG1lZGlhUGF0aHM6IEltbXV0YWJsZVByb3BUeXBlcy5tYXAuaXNSZXF1aXJlZCxcbiAgICAgIG9uQWRkQXNzZXQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgICBvbkNoYW5nZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uUmVtb3ZlSW5zZXJ0ZWRNZWRpYTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uT3Blbk1lZGlhTGlicmFyeTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uQ2xlYXJNZWRpYUNvbnRyb2w6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgICBvblJlbW92ZU1lZGlhQ29udHJvbDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIGNsYXNzTmFtZVdyYXBwZXI6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgICAgIHZhbHVlOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtcbiAgICAgICAgUHJvcFR5cGVzLnN0cmluZyxcbiAgICAgICAgUHJvcFR5cGVzLmFycmF5T2YoUHJvcFR5cGVzLnN0cmluZyksXG4gICAgICAgIEltbXV0YWJsZVByb3BUeXBlcy5saXN0T2YoUHJvcFR5cGVzLnN0cmluZyksXG4gICAgICBdKSxcbiAgICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgfTtcblxuICAgIHN0YXRpYyBkZWZhdWx0UHJvcHMgPSB7XG4gICAgICB2YWx1ZTogJycsXG4gICAgfTtcblxuICAgIGNvbnN0cnVjdG9yKHByb3BzKSB7XG4gICAgICBzdXBlcihwcm9wcyk7XG4gICAgICB0aGlzLmNvbnRyb2xJRCA9IHV1aWQoKTtcbiAgICB9XG5cbiAgICBzaG91bGRDb21wb25lbnRVcGRhdGUobmV4dFByb3BzKSB7XG4gICAgICAvKipcbiAgICAgICAqIEFsd2F5cyB1cGRhdGUgaWYgdGhlIHZhbHVlIG9yIGdldEFzc2V0IGNoYW5nZXMuXG4gICAgICAgKi9cbiAgICAgIGlmICh0aGlzLnByb3BzLnZhbHVlICE9PSBuZXh0UHJvcHMudmFsdWUgfHwgdGhpcy5wcm9wcy5nZXRBc3NldCAhPT0gbmV4dFByb3BzLmdldEFzc2V0KSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuXG4gICAgICAvKipcbiAgICAgICAqIElmIHRoZXJlIGlzIGEgbWVkaWEgcGF0aCBmb3IgdGhpcyBjb250cm9sIGluIHRoZSBzdGF0ZSBvYmplY3QsIGFuZCB0aGF0XG4gICAgICAgKiBwYXRoIGlzIGRpZmZlcmVudCB0aGFuIHRoZSB2YWx1ZSBpbiBgbmV4dFByb3BzYCwgdXBkYXRlLlxuICAgICAgICovXG4gICAgICBjb25zdCBtZWRpYVBhdGggPSBuZXh0UHJvcHMubWVkaWFQYXRocy5nZXQodGhpcy5jb250cm9sSUQpO1xuICAgICAgaWYgKG1lZGlhUGF0aCAmJiBuZXh0UHJvcHMudmFsdWUgIT09IG1lZGlhUGF0aCkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGNvbXBvbmVudERpZFVwZGF0ZSgpIHtcbiAgICAgIGNvbnN0IHsgbWVkaWFQYXRocywgdmFsdWUsIG9uUmVtb3ZlSW5zZXJ0ZWRNZWRpYSwgb25DaGFuZ2UgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBtZWRpYVBhdGggPSBtZWRpYVBhdGhzLmdldCh0aGlzLmNvbnRyb2xJRCk7XG4gICAgICBpZiAobWVkaWFQYXRoICYmIG1lZGlhUGF0aCAhPT0gdmFsdWUpIHtcbiAgICAgICAgb25DaGFuZ2UobWVkaWFQYXRoKTtcbiAgICAgIH0gZWxzZSBpZiAobWVkaWFQYXRoICYmIG1lZGlhUGF0aCA9PT0gdmFsdWUpIHtcbiAgICAgICAgb25SZW1vdmVJbnNlcnRlZE1lZGlhKHRoaXMuY29udHJvbElEKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb21wb25lbnRXaWxsVW5tb3VudCgpIHtcbiAgICAgIHRoaXMucHJvcHMub25SZW1vdmVNZWRpYUNvbnRyb2wodGhpcy5jb250cm9sSUQpO1xuICAgIH1cblxuICAgIGhhbmRsZUNoYW5nZSA9IGUgPT4ge1xuICAgICAgY29uc3QgeyBmaWVsZCwgb25PcGVuTWVkaWFMaWJyYXJ5LCB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgIGNvbnN0IG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucyA9IHRoaXMuZ2V0TWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zKCk7XG5cbiAgICAgIHJldHVybiBvbk9wZW5NZWRpYUxpYnJhcnkoe1xuICAgICAgICBjb250cm9sSUQ6IHRoaXMuY29udHJvbElELFxuICAgICAgICBmb3JJbWFnZSxcbiAgICAgICAgcHJpdmF0ZVVwbG9hZDogZmllbGQuZ2V0KCdwcml2YXRlJyksXG4gICAgICAgIHZhbHVlOiB2YWx1ZUxpc3RUb0FycmF5KHZhbHVlKSxcbiAgICAgICAgYWxsb3dNdWx0aXBsZTogISFtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMuZ2V0KCdhbGxvd19tdWx0aXBsZScsIHRydWUpLFxuICAgICAgICBjb25maWc6IG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycpLFxuICAgICAgICBmaWVsZCxcbiAgICAgIH0pO1xuICAgIH07XG5cbiAgICBoYW5kbGVVcmwgPSBzdWJqZWN0ID0+IGUgPT4ge1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgICBjb25zdCB1cmwgPSB3aW5kb3cucHJvbXB0KHRoaXMucHJvcHMudChgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS5wcm9tcHRVcmxgKSk7XG5cbiAgICAgIHJldHVybiB0aGlzLnByb3BzLm9uQ2hhbmdlKHVybCk7XG4gICAgfTtcblxuICAgIGhhbmRsZVJlbW92ZSA9IGUgPT4ge1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgdGhpcy5wcm9wcy5vbkNsZWFyTWVkaWFDb250cm9sKHRoaXMuY29udHJvbElEKTtcbiAgICAgIHJldHVybiB0aGlzLnByb3BzLm9uQ2hhbmdlKCcnKTtcbiAgICB9O1xuXG4gICAgb25SZW1vdmVPbmUgPSBpbmRleCA9PiAoKSA9PiB7XG4gICAgICBjb25zdCB7IHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgdmFsdWUuc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgIHJldHVybiB0aGlzLnByb3BzLm9uQ2hhbmdlKHNpemVPZlZhbHVlKHZhbHVlKSA+IDAgPyBbLi4udmFsdWVdIDogbnVsbCk7XG4gICAgfTtcblxuICAgIG9uUmVwbGFjZU9uZSA9IGluZGV4ID0+ICgpID0+IHtcbiAgICAgIGNvbnN0IHsgZmllbGQsIG9uT3Blbk1lZGlhTGlicmFyeSwgdmFsdWUgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMgPSB0aGlzLmdldE1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucygpO1xuXG4gICAgICByZXR1cm4gb25PcGVuTWVkaWFMaWJyYXJ5KHtcbiAgICAgICAgY29udHJvbElEOiB0aGlzLmNvbnRyb2xJRCxcbiAgICAgICAgZm9ySW1hZ2UsXG4gICAgICAgIHByaXZhdGVVcGxvYWQ6IGZpZWxkLmdldCgncHJpdmF0ZScpLFxuICAgICAgICB2YWx1ZTogdmFsdWVMaXN0VG9BcnJheSh2YWx1ZSksXG4gICAgICAgIHJlcGxhY2VJbmRleDogaW5kZXgsXG4gICAgICAgIGFsbG93TXVsdGlwbGU6IGZhbHNlLFxuICAgICAgICBjb25maWc6IG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycpLFxuICAgICAgICBmaWVsZCxcbiAgICAgIH0pO1xuICAgIH07XG5cbiAgICBnZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMgPSAoKSA9PiB7XG4gICAgICBjb25zdCB7IGZpZWxkIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgICBpZiAoZmllbGQuaGFzSW4oWydvcHRpb25zJywgJ21lZGlhX2xpYnJhcnknXSkpIHtcbiAgICAgICAgd2FybkRlcHJlY2F0ZWRPcHRpb25zKGZpZWxkKTtcbiAgICAgICAgcmV0dXJuIGZpZWxkLmdldEluKFsnb3B0aW9ucycsICdtZWRpYV9saWJyYXJ5J10sIE1hcCgpKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZpZWxkLmdldCgnbWVkaWFfbGlicmFyeScsIE1hcCgpKTtcbiAgICB9O1xuXG4gICAgYWxsb3dzTXVsdGlwbGUgPSAoKSA9PiB7XG4gICAgICBjb25zdCBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMgPSB0aGlzLmdldE1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucygpO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zLmdldCgnY29uZmlnJywgZmFsc2UpICYmXG4gICAgICAgIG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycpLmdldCgnbXVsdGlwbGUnLCBmYWxzZSlcbiAgICAgICk7XG4gICAgfTtcblxuICAgIG9uU29ydEVuZCA9ICh7IG9sZEluZGV4LCBuZXdJbmRleCB9KSA9PiB7XG4gICAgICBjb25zdCB7IHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgbmV3VmFsdWUgPSBhcnJheU1vdmUodmFsdWUsIG9sZEluZGV4LCBuZXdJbmRleCk7XG4gICAgICByZXR1cm4gdGhpcy5wcm9wcy5vbkNoYW5nZShuZXdWYWx1ZSk7XG4gICAgfTtcblxuICAgIGdldFZhbGlkYXRlVmFsdWUgPSAoKSA9PiB7XG4gICAgICBjb25zdCB7IHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgIHJldHVybiBpc011bHRpcGxlKHZhbHVlKSA/IHZhbHVlLm1hcCh2ID0+IGJhc2VuYW1lKHYpKSA6IGJhc2VuYW1lKHZhbHVlKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH07XG5cbiAgICByZW5kZXJGaWxlTGluayA9IHZhbHVlID0+IHtcbiAgICAgIGNvbnN0IHNpemUgPSBNQVhfRElTUExBWV9MRU5HVEg7XG4gICAgICBpZiAoIXZhbHVlIHx8IHZhbHVlLmxlbmd0aCA8PSBzaXplKSB7XG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHRleHQgPSBgJHt2YWx1ZS5zbGljZSgwLCBzaXplIC8gMil9XFx1MjAyNiR7dmFsdWUuc2xpY2UoLShzaXplIC8gMikgKyAxKX1gO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPEZpbGVMaW5rIGhyZWY9e3ZhbHVlfSByZWw9XCJub29wZW5lclwiIHRhcmdldD1cIl9ibGFua1wiPlxuICAgICAgICAgIHt0ZXh0fVxuICAgICAgICA8L0ZpbGVMaW5rPlxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgcmVuZGVyRmlsZUxpbmtzID0gKCkgPT4ge1xuICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcblxuICAgICAgaWYgKGlzTXVsdGlwbGUodmFsdWUpKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPEZpbGVMaW5rcz5cbiAgICAgICAgICAgIDxGaWxlTGlua0xpc3Q+XG4gICAgICAgICAgICAgIHt2YWx1ZS5tYXAodmFsID0+IChcbiAgICAgICAgICAgICAgICA8bGkga2V5PXt2YWx9Pnt0aGlzLnJlbmRlckZpbGVMaW5rKHZhbCl9PC9saT5cbiAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICA8L0ZpbGVMaW5rTGlzdD5cbiAgICAgICAgICA8L0ZpbGVMaW5rcz5cbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiA8RmlsZUxpbmtzPnt0aGlzLnJlbmRlckZpbGVMaW5rKHZhbHVlKX08L0ZpbGVMaW5rcz47XG4gICAgfTtcblxuICAgIHJlbmRlckltYWdlcyA9ICgpID0+IHtcbiAgICAgIGNvbnN0IHsgZ2V0QXNzZXQsIHZhbHVlLCBmaWVsZCB9ID0gdGhpcy5wcm9wcztcblxuICAgICAgaWYgKGlzTXVsdGlwbGUodmFsdWUpKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPFNvcnRhYmxlTXVsdGlJbWFnZVdyYXBwZXJcbiAgICAgICAgICAgIGl0ZW1zPXt2YWx1ZX1cbiAgICAgICAgICAgIG9uU29ydEVuZD17dGhpcy5vblNvcnRFbmR9XG4gICAgICAgICAgICBvblJlbW92ZU9uZT17dGhpcy5vblJlbW92ZU9uZX1cbiAgICAgICAgICAgIG9uUmVwbGFjZU9uZT17dGhpcy5vblJlcGxhY2VPbmV9XG4gICAgICAgICAgICBkaXN0YW5jZT17NH1cbiAgICAgICAgICAgIGdldEFzc2V0PXtnZXRBc3NldH1cbiAgICAgICAgICAgIGZpZWxkPXtmaWVsZH1cbiAgICAgICAgICAgIGF4aXM9XCJ4eVwiXG4gICAgICAgICAgICBsb2NrVG9Db250YWluZXJFZGdlcz17dHJ1ZX1cbiAgICAgICAgICA+PC9Tb3J0YWJsZU11bHRpSW1hZ2VXcmFwcGVyPlxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBzcmMgPSBnZXRBc3NldCh2YWx1ZSwgZmllbGQpO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPEltYWdlV3JhcHBlcj5cbiAgICAgICAgICA8SW1hZ2Ugc3JjPXtzcmMgfHwgJyd9IC8+XG4gICAgICAgIDwvSW1hZ2VXcmFwcGVyPlxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgcmVuZGVyU2VsZWN0aW9uID0gc3ViamVjdCA9PiB7XG4gICAgICBjb25zdCB7IHQsIGZpZWxkIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgYWxsb3dzTXVsdGlwbGUgPSB0aGlzLmFsbG93c011bHRpcGxlKCk7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2PlxuICAgICAgICAgIHtmb3JJbWFnZSA/IHRoaXMucmVuZGVySW1hZ2VzKCkgOiBudWxsfVxuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICB7Zm9ySW1hZ2UgPyBudWxsIDogdGhpcy5yZW5kZXJGaWxlTGlua3MoKX1cbiAgICAgICAgICAgIDxGaWxlV2lkZ2V0QnV0dG9uIG9uQ2xpY2s9e3RoaXMuaGFuZGxlQ2hhbmdlfT5cbiAgICAgICAgICAgICAge3QoXG4gICAgICAgICAgICAgICAgYGVkaXRvci5lZGl0b3JXaWRnZXRzLiR7c3ViamVjdH0uJHtcbiAgICAgICAgICAgICAgICAgIHRoaXMuYWxsb3dzTXVsdGlwbGUoKSA/ICdhZGRNb3JlJyA6ICdjaG9vc2VEaWZmZXJlbnQnXG4gICAgICAgICAgICAgICAgfWAsXG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b24+XG4gICAgICAgICAgICB7ZmllbGQuZ2V0KCdjaG9vc2VfdXJsJywgdHJ1ZSkgJiYgIXRoaXMuYWxsb3dzTXVsdGlwbGUoKSA/IChcbiAgICAgICAgICAgICAgPEZpbGVXaWRnZXRCdXR0b24gb25DbGljaz17dGhpcy5oYW5kbGVVcmwoc3ViamVjdCl9PlxuICAgICAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LnJlcGxhY2VVcmxgKX1cbiAgICAgICAgICAgICAgPC9GaWxlV2lkZ2V0QnV0dG9uPlxuICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvblJlbW92ZSBvbkNsaWNrPXt0aGlzLmhhbmRsZVJlbW92ZX0+XG4gICAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LnJlbW92ZSR7YWxsb3dzTXVsdGlwbGUgPyAnQWxsJyA6ICcnfWApfVxuICAgICAgICAgICAgPC9GaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICk7XG4gICAgfTtcblxuICAgIHJlbmRlck5vU2VsZWN0aW9uID0gc3ViamVjdCA9PiB7XG4gICAgICBjb25zdCB7IHQsIGZpZWxkIH0gPSB0aGlzLnByb3BzO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPD5cbiAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvbiBvbkNsaWNrPXt0aGlzLmhhbmRsZUNoYW5nZX0+XG4gICAgICAgICAgICB7dChgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS5jaG9vc2Uke3RoaXMuYWxsb3dzTXVsdGlwbGUoKSA/ICdNdWx0aXBsZScgOiAnJ31gKX1cbiAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b24+XG4gICAgICAgICAge2ZpZWxkLmdldCgnY2hvb3NlX3VybCcsIHRydWUpID8gKFxuICAgICAgICAgICAgPEZpbGVXaWRnZXRCdXR0b24gb25DbGljaz17dGhpcy5oYW5kbGVVcmwoc3ViamVjdCl9PlxuICAgICAgICAgICAgICB7dChgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS5jaG9vc2VVcmxgKX1cbiAgICAgICAgICAgIDwvRmlsZVdpZGdldEJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC8+XG4gICAgICApO1xuICAgIH07XG5cbiAgICByZW5kZXIoKSB7XG4gICAgICBjb25zdCB7IHZhbHVlLCBjbGFzc05hbWVXcmFwcGVyIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3Qgc3ViamVjdCA9IGZvckltYWdlID8gJ2ltYWdlJyA6ICdmaWxlJztcblxuICAgICAgcmV0dXJuIChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e2NsYXNzTmFtZVdyYXBwZXJ9PlxuICAgICAgICAgIDxzcGFuPnt2YWx1ZSA/IHRoaXMucmVuZGVyU2VsZWN0aW9uKHN1YmplY3QpIDogdGhpcy5yZW5kZXJOb1NlbGVjdGlvbihzdWJqZWN0KX08L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKTtcbiAgICB9XG4gIH07XG59XG4iXX0= */"));
|
|
205
|
+
})(_decapCmsUiDefault.buttons.button, ";", _decapCmsUiDefault.components.badge, ";margin-bottom:12px;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy93aXRoRmlsZUNvbnRyb2wuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBZ0xzQyIsImZpbGUiOiIuLi8uLi9zcmMvd2l0aEZpbGVDb250cm9sLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgSW1tdXRhYmxlUHJvcFR5cGVzIGZyb20gJ3JlYWN0LWltbXV0YWJsZS1wcm9wdHlwZXMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vY29yZSc7XG5pbXBvcnQgeyBNYXAsIExpc3QgfSBmcm9tICdpbW11dGFibGUnO1xuaW1wb3J0IHsgb25jZSB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyB2NCBhcyB1dWlkIH0gZnJvbSAndXVpZCc7XG5pbXBvcnQgeyBvbmVMaW5lIH0gZnJvbSAnY29tbW9uLXRhZ3MnO1xuaW1wb3J0IHtcbiAgbGVuZ3RocyxcbiAgY29tcG9uZW50cyxcbiAgYnV0dG9ucyxcbiAgYm9yZGVycyxcbiAgZWZmZWN0cyxcbiAgc2hhZG93cyxcbiAgSWNvbkJ1dHRvbixcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuaW1wb3J0IHsgYmFzZW5hbWUgfSBmcm9tICdkZWNhcC1jbXMtbGliLXV0aWwnO1xuaW1wb3J0IHsgYXJyYXlNb3ZlSW1tdXRhYmxlIGFzIGFycmF5TW92ZSB9IGZyb20gJ2FycmF5LW1vdmUnO1xuaW1wb3J0IHtcbiAgRG5kQ29udGV4dCxcbiAgTW91c2VTZW5zb3IsXG4gIFRvdWNoU2Vuc29yLFxuICBjbG9zZXN0Q2VudGVyLFxuICB1c2VTZW5zb3IsXG4gIHVzZVNlbnNvcnMsXG59IGZyb20gJ0BkbmQta2l0L2NvcmUnO1xuaW1wb3J0IHsgU29ydGFibGVDb250ZXh0LCB1c2VTb3J0YWJsZSB9IGZyb20gJ0BkbmQta2l0L3NvcnRhYmxlJztcbmltcG9ydCB7IENTUyB9IGZyb20gJ0BkbmQta2l0L3V0aWxpdGllcyc7XG5pbXBvcnQgeyByZXN0cmljdFRvUGFyZW50RWxlbWVudCB9IGZyb20gJ0BkbmQta2l0L21vZGlmaWVycyc7XG5cbmNvbnN0IE1BWF9ESVNQTEFZX0xFTkdUSCA9IDUwO1xuXG5jb25zdCBJbWFnZVdyYXBwZXIgPSBzdHlsZWQuZGl2YFxuICBmbGV4LWJhc2lzOiAxNTVweDtcbiAgd2lkdGg6IDE1NXB4O1xuICBoZWlnaHQ6IDEwMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGJvcmRlcjogJHtib3JkZXJzLnRleHRGaWVsZH07XG4gIGJvcmRlci1yYWRpdXM6ICR7bGVuZ3Rocy5ib3JkZXJSYWRpdXN9O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAke2VmZmVjdHMuY2hlY2tlcmJvYXJkfTtcbiAgJHtzaGFkb3dzLmluc2V0fTtcbiAgY3Vyc29yOiAke3Byb3BzID0+IChwcm9wcy5zb3J0YWJsZSA/ICdwb2ludGVyJyA6ICdhdXRvJyl9O1xuYDtcblxuY29uc3QgU29ydGFibGVJbWFnZUJ1dHRvbnNXcmFwcGVyID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGNvbHVtbi1nYXA6IDEwcHg7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbiAgbWFyZ2luLXRvcDogLTEwcHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG5gO1xuXG5jb25zdCBTdHlsZWRJbWFnZSA9IHN0eWxlZC5pbWdgXG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvbnRhaW47XG5gO1xuXG5mdW5jdGlvbiBJbWFnZShwcm9wcykge1xuICByZXR1cm4gPFN0eWxlZEltYWdlIHJvbGU9XCJwcmVzZW50YXRpb25cIiB7Li4ucHJvcHN9IC8+O1xufVxuXG5mdW5jdGlvbiBTb3J0YWJsZUltYWdlQnV0dG9ucyh7IG9uUmVtb3ZlLCBvblJlcGxhY2UgfSkge1xuICByZXR1cm4gKFxuICAgIDxTb3J0YWJsZUltYWdlQnV0dG9uc1dyYXBwZXI+XG4gICAgICA8SWNvbkJ1dHRvbiBzaXplPVwic21hbGxcIiB0eXBlPVwibWVkaWFcIiBvbkNsaWNrPXtvblJlcGxhY2V9PjwvSWNvbkJ1dHRvbj5cbiAgICAgIDxJY29uQnV0dG9uIHNpemU9XCJzbWFsbFwiIHR5cGU9XCJjbG9zZVwiIG9uQ2xpY2s9e29uUmVtb3ZlfT48L0ljb25CdXR0b24+XG4gICAgPC9Tb3J0YWJsZUltYWdlQnV0dG9uc1dyYXBwZXI+XG4gICk7XG59XG5cbmZ1bmN0aW9uIFNvcnRhYmxlSW1hZ2UocHJvcHMpIHtcbiAgY29uc3QgeyBhdHRyaWJ1dGVzLCBsaXN0ZW5lcnMsIHNldE5vZGVSZWYsIHRyYW5zZm9ybSwgdHJhbnNpdGlvbiB9ID0gdXNlU29ydGFibGUoe1xuICAgIGlkOiBwcm9wcy5pZCxcbiAgfSk7XG5cbiAgY29uc3Qgc3R5bGUgPSB7XG4gICAgdHJhbnNmb3JtOiBDU1MuVHJhbnNmb3JtLnRvU3RyaW5nKHRyYW5zZm9ybSksXG4gICAgdHJhbnNpdGlvbixcbiAgfTtcblxuICBjb25zdCB7IGl0ZW1WYWx1ZSwgZ2V0QXNzZXQsIGZpZWxkLCBvblJlbW92ZSwgb25SZXBsYWNlIH0gPSBwcm9wcztcblxuICByZXR1cm4gKFxuICAgIDxkaXYgcmVmPXtzZXROb2RlUmVmfSBzdHlsZT17c3R5bGV9IHsuLi5hdHRyaWJ1dGVzfSB7Li4ubGlzdGVuZXJzfT5cbiAgICAgIDxJbWFnZVdyYXBwZXIgc29ydGFibGU+XG4gICAgICAgIDxJbWFnZSBzcmM9e2dldEFzc2V0KGl0ZW1WYWx1ZSwgZmllbGQpIHx8ICcnfSAvPlxuICAgICAgPC9JbWFnZVdyYXBwZXI+XG4gICAgICA8U29ydGFibGVJbWFnZUJ1dHRvbnNcbiAgICAgICAgaXRlbT17aXRlbVZhbHVlfVxuICAgICAgICBvblJlbW92ZT17b25SZW1vdmV9XG4gICAgICAgIG9uUmVwbGFjZT17b25SZXBsYWNlfVxuICAgICAgPjwvU29ydGFibGVJbWFnZUJ1dHRvbnM+XG4gICAgPC9kaXY+XG4gICk7XG59XG5cbmZ1bmN0aW9uIFNvcnRhYmxlTXVsdGlJbWFnZVdyYXBwZXIoe1xuICBpdGVtcyxcbiAgZ2V0QXNzZXQsXG4gIGZpZWxkLFxuICBvblNvcnRFbmQsXG4gIG9uUmVtb3ZlT25lLFxuICBvblJlcGxhY2VPbmUsXG59KSB7XG4gIGNvbnN0IGFjdGl2YXRpb25Db25zdHJhaW50ID0geyBkaXN0YW5jZTogNCB9O1xuICBjb25zdCBzZW5zb3JzID0gdXNlU2Vuc29ycyhcbiAgICB1c2VTZW5zb3IoTW91c2VTZW5zb3IsIHsgYWN0aXZhdGlvbkNvbnN0cmFpbnQgfSksXG4gICAgdXNlU2Vuc29yKFRvdWNoU2Vuc29yLCB7IGFjdGl2YXRpb25Db25zdHJhaW50IH0pLFxuICApO1xuXG4gIGZ1bmN0aW9uIGhhbmRsZVNvcnRFbmQoeyBhY3RpdmUsIG92ZXIgfSkge1xuICAgIG9uU29ydEVuZCh7XG4gICAgICBvbGRJbmRleDogaXRlbXMuZmluZEluZGV4KGl0ZW0gPT4gaXRlbS5pZCA9PT0gYWN0aXZlLmlkKSxcbiAgICAgIG5ld0luZGV4OiBpdGVtcy5maW5kSW5kZXgoaXRlbSA9PiBpdGVtLmlkID09PSBvdmVyLmlkKSxcbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPGRpdlxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0L25vLXVua25vd24tcHJvcGVydHlcbiAgICAgIGNzcz17Y3NzYFxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBgfVxuICAgID5cbiAgICAgIDxEbmRDb250ZXh0XG4gICAgICAgIG1vZGlmaWVycz17W3Jlc3RyaWN0VG9QYXJlbnRFbGVtZW50XX1cbiAgICAgICAgY29sbGlzaW9uRGV0ZWN0aW9uPXtjbG9zZXN0Q2VudGVyfVxuICAgICAgICBzZW5zb3JzPXtzZW5zb3JzfVxuICAgICAgICBvbkRyYWdFbmQ9e2hhbmRsZVNvcnRFbmR9XG4gICAgICA+XG4gICAgICAgIDxTb3J0YWJsZUNvbnRleHQgaXRlbXM9e2l0ZW1zfT5cbiAgICAgICAgICB7aXRlbXMubWFwKChpdGVtLCBpbmRleCkgPT4gKFxuICAgICAgICAgICAgPFNvcnRhYmxlSW1hZ2VcbiAgICAgICAgICAgICAga2V5PXtpdGVtLmlkfVxuICAgICAgICAgICAgICBpZD17aXRlbS5pZH1cbiAgICAgICAgICAgICAgaW5kZXg9e2luZGV4fVxuICAgICAgICAgICAgICBpdGVtVmFsdWU9e2l0ZW0udmFsdWV9XG4gICAgICAgICAgICAgIGdldEFzc2V0PXtnZXRBc3NldH1cbiAgICAgICAgICAgICAgZmllbGQ9e2ZpZWxkfVxuICAgICAgICAgICAgICBvblJlbW92ZT17b25SZW1vdmVPbmUoaW5kZXgpfVxuICAgICAgICAgICAgICBvblJlcGxhY2U9e29uUmVwbGFjZU9uZShpbmRleCl9XG4gICAgICAgICAgICA+PC9Tb3J0YWJsZUltYWdlPlxuICAgICAgICAgICkpfVxuICAgICAgICA8L1NvcnRhYmxlQ29udGV4dD5cbiAgICAgIDwvRG5kQ29udGV4dD5cbiAgICA8L2Rpdj5cbiAgKTtcbn1cblxuY29uc3QgRmlsZUxpbmsgPSBzdHlsZWQuYWBcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6IGluaGVyaXQ7XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG5gO1xuXG5jb25zdCBGaWxlTGlua3MgPSBzdHlsZWQuZGl2YFxuICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuYDtcblxuY29uc3QgRmlsZUxpbmtMaXN0ID0gc3R5bGVkLnVsYFxuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5gO1xuXG5jb25zdCBGaWxlV2lkZ2V0QnV0dG9uID0gc3R5bGVkLmJ1dHRvbmBcbiAgJHtidXR0b25zLmJ1dHRvbn07XG4gICR7Y29tcG9uZW50cy5iYWRnZX07XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG5gO1xuXG5jb25zdCBGaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlID0gc3R5bGVkLmJ1dHRvbmBcbiAgJHtidXR0b25zLmJ1dHRvbn07XG4gICR7Y29tcG9uZW50cy5iYWRnZURhbmdlcn07XG5gO1xuXG5mdW5jdGlvbiBpc011bHRpcGxlKHZhbHVlKSB7XG4gIHJldHVybiBBcnJheS5pc0FycmF5KHZhbHVlKSB8fCBMaXN0LmlzTGlzdCh2YWx1ZSk7XG59XG5cbmZ1bmN0aW9uIHNpemVPZlZhbHVlKHZhbHVlKSB7XG4gIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgIHJldHVybiB2YWx1ZS5sZW5ndGg7XG4gIH1cblxuICBpZiAoTGlzdC5pc0xpc3QodmFsdWUpKSB7XG4gICAgcmV0dXJuIHZhbHVlLnNpemU7XG4gIH1cblxuICByZXR1cm4gdmFsdWUgPyAxIDogMDtcbn1cblxuZnVuY3Rpb24gdmFsdWVMaXN0VG9BcnJheSh2YWx1ZSkge1xuICByZXR1cm4gTGlzdC5pc0xpc3QodmFsdWUpID8gdmFsdWUudG9BcnJheSgpIDogdmFsdWUgPz8gJyc7XG59XG5cbmZ1bmN0aW9uIHZhbHVlTGlzdFRvU29ydGFibGVBcnJheSh2YWx1ZSkge1xuICBpZiAoIWlzTXVsdGlwbGUodmFsdWUpKSB7XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG5cbiAgY29uc3QgdmFsdWVBcnJheSA9IHZhbHVlTGlzdFRvQXJyYXkodmFsdWUpLm1hcCh2YWx1ZSA9PiAoe1xuICAgIGlkOiB1dWlkKCksXG4gICAgdmFsdWUsXG4gIH0pKTtcblxuICByZXR1cm4gdmFsdWVBcnJheTtcbn1cblxuY29uc3Qgd2FybkRlcHJlY2F0ZWRPcHRpb25zID0gb25jZShmaWVsZCA9PlxuICBjb25zb2xlLndhcm4ob25lTGluZWBcbiAgRGVjYXAgQ01TIGNvbmZpZzogJHtmaWVsZC5nZXQoJ25hbWUnKX0gZmllbGQ6IHByb3BlcnR5IFwib3B0aW9uc1wiIGhhcyBiZWVuIGRlcHJlY2F0ZWQgZm9yIHRoZVxuICAke2ZpZWxkLmdldCgnd2lkZ2V0Jyl9IHdpZGdldCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IG1ham9yIHJlbGVhc2UuIFJhdGhlciB0aGFuXG4gIFxcYGZpZWxkLm9wdGlvbnMubWVkaWFfbGlicmFyeVxcYCwgYXBwbHkgbWVkaWEgbGlicmFyeSBvcHRpb25zIGZvciB0aGlzIHdpZGdldCB1bmRlclxuICBcXGBmaWVsZC5tZWRpYV9saWJyYXJ5XFxgLlxuYCksXG4pO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB3aXRoRmlsZUNvbnRyb2woeyBmb3JJbWFnZSB9ID0ge30pIHtcbiAgcmV0dXJuIGNsYXNzIEZpbGVDb250cm9sIGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50IHtcbiAgICBzdGF0aWMgcHJvcFR5cGVzID0ge1xuICAgICAgZmllbGQ6IFByb3BUeXBlcy5vYmplY3QuaXNSZXF1aXJlZCxcbiAgICAgIGdldEFzc2V0OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgbWVkaWFQYXRoczogSW1tdXRhYmxlUHJvcFR5cGVzLm1hcC5pc1JlcXVpcmVkLFxuICAgICAgb25BZGRBc3NldDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uQ2hhbmdlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgb25SZW1vdmVJbnNlcnRlZE1lZGlhOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgb25PcGVuTWVkaWFMaWJyYXJ5OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgb25DbGVhck1lZGlhQ29udHJvbDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uUmVtb3ZlTWVkaWFDb250cm9sOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgY2xhc3NOYW1lV3JhcHBlcjogUHJvcFR5cGVzLnN0cmluZy5pc1JlcXVpcmVkLFxuICAgICAgdmFsdWU6IFByb3BUeXBlcy5vbmVPZlR5cGUoW1xuICAgICAgICBQcm9wVHlwZXMuc3RyaW5nLFxuICAgICAgICBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMuc3RyaW5nKSxcbiAgICAgICAgSW1tdXRhYmxlUHJvcFR5cGVzLmxpc3RPZihQcm9wVHlwZXMuc3RyaW5nKSxcbiAgICAgIF0pLFxuICAgICAgdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICB9O1xuXG4gICAgc3RhdGljIGRlZmF1bHRQcm9wcyA9IHtcbiAgICAgIHZhbHVlOiAnJyxcbiAgICB9O1xuXG4gICAgY29uc3RydWN0b3IocHJvcHMpIHtcbiAgICAgIHN1cGVyKHByb3BzKTtcbiAgICAgIHRoaXMuY29udHJvbElEID0gdXVpZCgpO1xuICAgIH1cblxuICAgIHNob3VsZENvbXBvbmVudFVwZGF0ZShuZXh0UHJvcHMpIHtcbiAgICAgIC8qKlxuICAgICAgICogQWx3YXlzIHVwZGF0ZSBpZiB0aGUgdmFsdWUgb3IgZ2V0QXNzZXQgY2hhbmdlcy5cbiAgICAgICAqL1xuICAgICAgaWYgKHRoaXMucHJvcHMudmFsdWUgIT09IG5leHRQcm9wcy52YWx1ZSB8fCB0aGlzLnByb3BzLmdldEFzc2V0ICE9PSBuZXh0UHJvcHMuZ2V0QXNzZXQpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG5cbiAgICAgIC8qKlxuICAgICAgICogSWYgdGhlcmUgaXMgYSBtZWRpYSBwYXRoIGZvciB0aGlzIGNvbnRyb2wgaW4gdGhlIHN0YXRlIG9iamVjdCwgYW5kIHRoYXRcbiAgICAgICAqIHBhdGggaXMgZGlmZmVyZW50IHRoYW4gdGhlIHZhbHVlIGluIGBuZXh0UHJvcHNgLCB1cGRhdGUuXG4gICAgICAgKi9cbiAgICAgIGNvbnN0IG1lZGlhUGF0aCA9IG5leHRQcm9wcy5tZWRpYVBhdGhzLmdldCh0aGlzLmNvbnRyb2xJRCk7XG4gICAgICBpZiAobWVkaWFQYXRoICYmIG5leHRQcm9wcy52YWx1ZSAhPT0gbWVkaWFQYXRoKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgY29tcG9uZW50RGlkVXBkYXRlKCkge1xuICAgICAgY29uc3QgeyBtZWRpYVBhdGhzLCB2YWx1ZSwgb25SZW1vdmVJbnNlcnRlZE1lZGlhLCBvbkNoYW5nZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGNvbnN0IG1lZGlhUGF0aCA9IG1lZGlhUGF0aHMuZ2V0KHRoaXMuY29udHJvbElEKTtcbiAgICAgIGlmIChtZWRpYVBhdGggJiYgbWVkaWFQYXRoICE9PSB2YWx1ZSkge1xuICAgICAgICBvbkNoYW5nZShtZWRpYVBhdGgpO1xuICAgICAgfSBlbHNlIGlmIChtZWRpYVBhdGggJiYgbWVkaWFQYXRoID09PSB2YWx1ZSkge1xuICAgICAgICBvblJlbW92ZUluc2VydGVkTWVkaWEodGhpcy5jb250cm9sSUQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGNvbXBvbmVudFdpbGxVbm1vdW50KCkge1xuICAgICAgdGhpcy5wcm9wcy5vblJlbW92ZU1lZGlhQ29udHJvbCh0aGlzLmNvbnRyb2xJRCk7XG4gICAgfVxuXG4gICAgaGFuZGxlQ2hhbmdlID0gZSA9PiB7XG4gICAgICBjb25zdCB7IGZpZWxkLCBvbk9wZW5NZWRpYUxpYnJhcnksIHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgY29uc3QgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gdGhpcy5nZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMoKTtcblxuICAgICAgcmV0dXJuIG9uT3Blbk1lZGlhTGlicmFyeSh7XG4gICAgICAgIGNvbnRyb2xJRDogdGhpcy5jb250cm9sSUQsXG4gICAgICAgIGZvckltYWdlLFxuICAgICAgICBwcml2YXRlVXBsb2FkOiBmaWVsZC5nZXQoJ3ByaXZhdGUnKSxcbiAgICAgICAgdmFsdWU6IHZhbHVlTGlzdFRvQXJyYXkodmFsdWUpLFxuICAgICAgICBhbGxvd011bHRpcGxlOiAhIW1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2FsbG93X211bHRpcGxlJywgdHJ1ZSksXG4gICAgICAgIGNvbmZpZzogbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zLmdldCgnY29uZmlnJyksXG4gICAgICAgIGZpZWxkLFxuICAgICAgfSk7XG4gICAgfTtcblxuICAgIGhhbmRsZVVybCA9IHN1YmplY3QgPT4gZSA9PiB7XG4gICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG5cbiAgICAgIGNvbnN0IHVybCA9IHdpbmRvdy5wcm9tcHQodGhpcy5wcm9wcy50KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LnByb21wdFVybGApKTtcblxuICAgICAgcmV0dXJuIHRoaXMucHJvcHMub25DaGFuZ2UodXJsKTtcbiAgICB9O1xuXG4gICAgaGFuZGxlUmVtb3ZlID0gZSA9PiB7XG4gICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB0aGlzLnByb3BzLm9uQ2xlYXJNZWRpYUNvbnRyb2wodGhpcy5jb250cm9sSUQpO1xuICAgICAgcmV0dXJuIHRoaXMucHJvcHMub25DaGFuZ2UoJycpO1xuICAgIH07XG5cbiAgICBvblJlbW92ZU9uZSA9IGluZGV4ID0+ICgpID0+IHtcbiAgICAgIGNvbnN0IHZhbHVlID0gdmFsdWVMaXN0VG9BcnJheSh0aGlzLnByb3BzLnZhbHVlKTtcbiAgICAgIHZhbHVlLnNwbGljZShpbmRleCwgMSk7XG4gICAgICByZXR1cm4gdGhpcy5wcm9wcy5vbkNoYW5nZShzaXplT2ZWYWx1ZSh2YWx1ZSkgPiAwID8gWy4uLnZhbHVlXSA6IG51bGwpO1xuICAgIH07XG5cbiAgICBvblJlcGxhY2VPbmUgPSBpbmRleCA9PiAoKSA9PiB7XG4gICAgICBjb25zdCB7IGZpZWxkLCBvbk9wZW5NZWRpYUxpYnJhcnksIHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gdGhpcy5nZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMoKTtcblxuICAgICAgcmV0dXJuIG9uT3Blbk1lZGlhTGlicmFyeSh7XG4gICAgICAgIGNvbnRyb2xJRDogdGhpcy5jb250cm9sSUQsXG4gICAgICAgIGZvckltYWdlLFxuICAgICAgICBwcml2YXRlVXBsb2FkOiBmaWVsZC5nZXQoJ3ByaXZhdGUnKSxcbiAgICAgICAgdmFsdWU6IHZhbHVlTGlzdFRvQXJyYXkodmFsdWUpLFxuICAgICAgICByZXBsYWNlSW5kZXg6IGluZGV4LFxuICAgICAgICBhbGxvd011bHRpcGxlOiBmYWxzZSxcbiAgICAgICAgY29uZmlnOiBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMuZ2V0KCdjb25maWcnKSxcbiAgICAgICAgZmllbGQsXG4gICAgICB9KTtcbiAgICB9O1xuXG4gICAgZ2V0TWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gKCkgPT4ge1xuICAgICAgY29uc3QgeyBmaWVsZCB9ID0gdGhpcy5wcm9wcztcblxuICAgICAgaWYgKGZpZWxkLmhhc0luKFsnb3B0aW9ucycsICdtZWRpYV9saWJyYXJ5J10pKSB7XG4gICAgICAgIHdhcm5EZXByZWNhdGVkT3B0aW9ucyhmaWVsZCk7XG4gICAgICAgIHJldHVybiBmaWVsZC5nZXRJbihbJ29wdGlvbnMnLCAnbWVkaWFfbGlicmFyeSddLCBNYXAoKSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBmaWVsZC5nZXQoJ21lZGlhX2xpYnJhcnknLCBNYXAoKSk7XG4gICAgfTtcblxuICAgIGFsbG93c011bHRpcGxlID0gKCkgPT4ge1xuICAgICAgY29uc3QgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gdGhpcy5nZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMoKTtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycsIGZhbHNlKSAmJlxuICAgICAgICBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMuZ2V0KCdjb25maWcnKS5nZXQoJ211bHRpcGxlJywgZmFsc2UpXG4gICAgICApO1xuICAgIH07XG5cbiAgICBvblNvcnRFbmQgPSAoeyBvbGRJbmRleCwgbmV3SW5kZXggfSkgPT4ge1xuICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGNvbnN0IG5ld1ZhbHVlID0gYXJyYXlNb3ZlKHZhbHVlLCBvbGRJbmRleCwgbmV3SW5kZXgpO1xuICAgICAgcmV0dXJuIHRoaXMucHJvcHMub25DaGFuZ2UobmV3VmFsdWUpO1xuICAgIH07XG5cbiAgICBnZXRWYWxpZGF0ZVZhbHVlID0gKCkgPT4ge1xuICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICByZXR1cm4gaXNNdWx0aXBsZSh2YWx1ZSkgPyB2YWx1ZS5tYXAodiA9PiBiYXNlbmFtZSh2KSkgOiBiYXNlbmFtZSh2YWx1ZSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9O1xuXG4gICAgcmVuZGVyRmlsZUxpbmsgPSB2YWx1ZSA9PiB7XG4gICAgICBjb25zdCBzaXplID0gTUFYX0RJU1BMQVlfTEVOR1RIO1xuICAgICAgaWYgKCF2YWx1ZSB8fCB2YWx1ZS5sZW5ndGggPD0gc2l6ZSkge1xuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICB9XG4gICAgICBjb25zdCB0ZXh0ID0gYCR7dmFsdWUuc2xpY2UoMCwgc2l6ZSAvIDIpfVxcdTIwMjYke3ZhbHVlLnNsaWNlKC0oc2l6ZSAvIDIpICsgMSl9YDtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxGaWxlTGluayBocmVmPXt2YWx1ZX0gcmVsPVwibm9vcGVuZXJcIiB0YXJnZXQ9XCJfYmxhbmtcIj5cbiAgICAgICAgICB7dGV4dH1cbiAgICAgICAgPC9GaWxlTGluaz5cbiAgICAgICk7XG4gICAgfTtcblxuICAgIHJlbmRlckZpbGVMaW5rcyA9ICgpID0+IHtcbiAgICAgIGNvbnN0IHsgdmFsdWUgfSA9IHRoaXMucHJvcHM7XG5cbiAgICAgIGlmIChpc011bHRpcGxlKHZhbHVlKSkge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIDxGaWxlTGlua3M+XG4gICAgICAgICAgICA8RmlsZUxpbmtMaXN0PlxuICAgICAgICAgICAgICB7dmFsdWUubWFwKHZhbCA9PiAoXG4gICAgICAgICAgICAgICAgPGxpIGtleT17dmFsfT57dGhpcy5yZW5kZXJGaWxlTGluayh2YWwpfTwvbGk+XG4gICAgICAgICAgICAgICkpfVxuICAgICAgICAgICAgPC9GaWxlTGlua0xpc3Q+XG4gICAgICAgICAgPC9GaWxlTGlua3M+XG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICByZXR1cm4gPEZpbGVMaW5rcz57dGhpcy5yZW5kZXJGaWxlTGluayh2YWx1ZSl9PC9GaWxlTGlua3M+O1xuICAgIH07XG5cbiAgICByZW5kZXJJbWFnZXMgPSAoKSA9PiB7XG4gICAgICBjb25zdCB7IGdldEFzc2V0LCB2YWx1ZSwgZmllbGQgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBpdGVtcyA9IHZhbHVlTGlzdFRvU29ydGFibGVBcnJheSh2YWx1ZSk7XG4gICAgICBpZiAoaXNNdWx0aXBsZSh2YWx1ZSkpIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICA8U29ydGFibGVNdWx0aUltYWdlV3JhcHBlclxuICAgICAgICAgICAgaXRlbXM9e2l0ZW1zfVxuICAgICAgICAgICAgb25Tb3J0RW5kPXt0aGlzLm9uU29ydEVuZH1cbiAgICAgICAgICAgIG9uUmVtb3ZlT25lPXt0aGlzLm9uUmVtb3ZlT25lfVxuICAgICAgICAgICAgb25SZXBsYWNlT25lPXt0aGlzLm9uUmVwbGFjZU9uZX1cbiAgICAgICAgICAgIGRpc3RhbmNlPXs0fVxuICAgICAgICAgICAgZ2V0QXNzZXQ9e2dldEFzc2V0fVxuICAgICAgICAgICAgZmllbGQ9e2ZpZWxkfVxuICAgICAgICAgICAgYXhpcz1cInh5XCJcbiAgICAgICAgICAgIGxvY2tUb0NvbnRhaW5lckVkZ2VzPXt0cnVlfVxuICAgICAgICAgID48L1NvcnRhYmxlTXVsdGlJbWFnZVdyYXBwZXI+XG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHNyYyA9IGdldEFzc2V0KHZhbHVlLCBmaWVsZCk7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8SW1hZ2VXcmFwcGVyPlxuICAgICAgICAgIDxJbWFnZSBzcmM9e3NyYyB8fCAnJ30gLz5cbiAgICAgICAgPC9JbWFnZVdyYXBwZXI+XG4gICAgICApO1xuICAgIH07XG5cbiAgICByZW5kZXJTZWxlY3Rpb24gPSBzdWJqZWN0ID0+IHtcbiAgICAgIGNvbnN0IHsgdCwgZmllbGQgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBhbGxvd3NNdWx0aXBsZSA9IHRoaXMuYWxsb3dzTXVsdGlwbGUoKTtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge2ZvckltYWdlID8gdGhpcy5yZW5kZXJJbWFnZXMoKSA6IG51bGx9XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIHtmb3JJbWFnZSA/IG51bGwgOiB0aGlzLnJlbmRlckZpbGVMaW5rcygpfVxuICAgICAgICAgICAgPEZpbGVXaWRnZXRCdXR0b24gb25DbGljaz17dGhpcy5oYW5kbGVDaGFuZ2V9PlxuICAgICAgICAgICAgICB7dChcbiAgICAgICAgICAgICAgICBgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS4ke1xuICAgICAgICAgICAgICAgICAgdGhpcy5hbGxvd3NNdWx0aXBsZSgpID8gJ2FkZE1vcmUnIDogJ2Nob29zZURpZmZlcmVudCdcbiAgICAgICAgICAgICAgICB9YCxcbiAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIDwvRmlsZVdpZGdldEJ1dHRvbj5cbiAgICAgICAgICAgIHtmaWVsZC5nZXQoJ2Nob29zZV91cmwnLCB0cnVlKSAmJiAhdGhpcy5hbGxvd3NNdWx0aXBsZSgpID8gKFxuICAgICAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvbiBvbkNsaWNrPXt0aGlzLmhhbmRsZVVybChzdWJqZWN0KX0+XG4gICAgICAgICAgICAgICAge3QoYGVkaXRvci5lZGl0b3JXaWRnZXRzLiR7c3ViamVjdH0ucmVwbGFjZVVybGApfVxuICAgICAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b24+XG4gICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgIDxGaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlIG9uQ2xpY2s9e3RoaXMuaGFuZGxlUmVtb3ZlfT5cbiAgICAgICAgICAgICAge3QoYGVkaXRvci5lZGl0b3JXaWRnZXRzLiR7c3ViamVjdH0ucmVtb3ZlJHthbGxvd3NNdWx0aXBsZSA/ICdBbGwnIDogJyd9YCl9XG4gICAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b25SZW1vdmU+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgcmVuZGVyTm9TZWxlY3Rpb24gPSBzdWJqZWN0ID0+IHtcbiAgICAgIGNvbnN0IHsgdCwgZmllbGQgfSA9IHRoaXMucHJvcHM7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8PlxuICAgICAgICAgIDxGaWxlV2lkZ2V0QnV0dG9uIG9uQ2xpY2s9e3RoaXMuaGFuZGxlQ2hhbmdlfT5cbiAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LmNob29zZSR7dGhpcy5hbGxvd3NNdWx0aXBsZSgpID8gJ011bHRpcGxlJyA6ICcnfWApfVxuICAgICAgICAgIDwvRmlsZVdpZGdldEJ1dHRvbj5cbiAgICAgICAgICB7ZmllbGQuZ2V0KCdjaG9vc2VfdXJsJywgdHJ1ZSkgPyAoXG4gICAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvbiBvbkNsaWNrPXt0aGlzLmhhbmRsZVVybChzdWJqZWN0KX0+XG4gICAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LmNob29zZVVybGApfVxuICAgICAgICAgICAgPC9GaWxlV2lkZ2V0QnV0dG9uPlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICA8Lz5cbiAgICAgICk7XG4gICAgfTtcblxuICAgIHJlbmRlcigpIHtcbiAgICAgIGNvbnN0IHsgdmFsdWUsIGNsYXNzTmFtZVdyYXBwZXIgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBzdWJqZWN0ID0gZm9ySW1hZ2UgPyAnaW1hZ2UnIDogJ2ZpbGUnO1xuXG4gICAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Y2xhc3NOYW1lV3JhcHBlcn0+XG4gICAgICAgICAgPHNwYW4+e3ZhbHVlID8gdGhpcy5yZW5kZXJTZWxlY3Rpb24oc3ViamVjdCkgOiB0aGlzLnJlbmRlck5vU2VsZWN0aW9uKHN1YmplY3QpfTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICApO1xuICAgIH1cbiAgfTtcbn1cbiJdfQ== */"));
|
|
159
206
|
const FileWidgetButtonRemove = (0, _styledBase.default)("button", {
|
|
160
207
|
target: "e1hax4ql7",
|
|
161
208
|
label: "FileWidgetButtonRemove"
|
|
162
|
-
})(_decapCmsUiDefault.buttons.button, ";", _decapCmsUiDefault.components.badgeDanger, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy93aXRoRmlsZUNvbnRyb2wuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBb0k0QyIsImZpbGUiOiIuLi8uLi9zcmMvd2l0aEZpbGVDb250cm9sLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgSW1tdXRhYmxlUHJvcFR5cGVzIGZyb20gJ3JlYWN0LWltbXV0YWJsZS1wcm9wdHlwZXMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vY29yZSc7XG5pbXBvcnQgeyBNYXAsIExpc3QgfSBmcm9tICdpbW11dGFibGUnO1xuaW1wb3J0IHsgb25jZSB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgdXVpZCBmcm9tICd1dWlkL3Y0JztcbmltcG9ydCB7IG9uZUxpbmUgfSBmcm9tICdjb21tb24tdGFncyc7XG5pbXBvcnQge1xuICBsZW5ndGhzLFxuICBjb21wb25lbnRzLFxuICBidXR0b25zLFxuICBib3JkZXJzLFxuICBlZmZlY3RzLFxuICBzaGFkb3dzLFxuICBJY29uQnV0dG9uLFxufSBmcm9tICdkZWNhcC1jbXMtdWktZGVmYXVsdCc7XG5pbXBvcnQgeyBiYXNlbmFtZSB9IGZyb20gJ2RlY2FwLWNtcy1saWItdXRpbCc7XG5pbXBvcnQgeyBTb3J0YWJsZUNvbnRhaW5lciwgU29ydGFibGVFbGVtZW50IH0gZnJvbSAncmVhY3Qtc29ydGFibGUtaG9jJztcbmltcG9ydCB7IGFycmF5TW92ZUltbXV0YWJsZSBhcyBhcnJheU1vdmUgfSBmcm9tICdhcnJheS1tb3ZlJztcblxuY29uc3QgTUFYX0RJU1BMQVlfTEVOR1RIID0gNTA7XG5cbmNvbnN0IEltYWdlV3JhcHBlciA9IHN0eWxlZC5kaXZgXG4gIGZsZXgtYmFzaXM6IDE1NXB4O1xuICB3aWR0aDogMTU1cHg7XG4gIGhlaWdodDogMTAwcHg7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgYm9yZGVyOiAke2JvcmRlcnMudGV4dEZpZWxkfTtcbiAgYm9yZGVyLXJhZGl1czogJHtsZW5ndGhzLmJvcmRlclJhZGl1c307XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gICR7ZWZmZWN0cy5jaGVja2VyYm9hcmR9O1xuICAke3NoYWRvd3MuaW5zZXR9O1xuICBjdXJzb3I6ICR7cHJvcHMgPT4gKHByb3BzLnNvcnRhYmxlID8gJ3BvaW50ZXInIDogJ2F1dG8nKX07XG5gO1xuXG5jb25zdCBTb3J0YWJsZUltYWdlQnV0dG9uc1dyYXBwZXIgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY29sdW1uLWdhcDogMTBweDtcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbmA7XG5cbmNvbnN0IFN0eWxlZEltYWdlID0gc3R5bGVkLmltZ2BcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcbmA7XG5cbmZ1bmN0aW9uIEltYWdlKHByb3BzKSB7XG4gIHJldHVybiA8U3R5bGVkSW1hZ2Ugcm9sZT1cInByZXNlbnRhdGlvblwiIHsuLi5wcm9wc30gLz47XG59XG5cbmZ1bmN0aW9uIFNvcnRhYmxlSW1hZ2VCdXR0b25zKHsgb25SZW1vdmUsIG9uUmVwbGFjZSB9KSB7XG4gIHJldHVybiAoXG4gICAgPFNvcnRhYmxlSW1hZ2VCdXR0b25zV3JhcHBlcj5cbiAgICAgIDxJY29uQnV0dG9uIHNpemU9XCJzbWFsbFwiIHR5cGU9XCJtZWRpYVwiIG9uQ2xpY2s9e29uUmVwbGFjZX0+PC9JY29uQnV0dG9uPlxuICAgICAgPEljb25CdXR0b24gc2l6ZT1cInNtYWxsXCIgdHlwZT1cImNsb3NlXCIgb25DbGljaz17b25SZW1vdmV9PjwvSWNvbkJ1dHRvbj5cbiAgICA8L1NvcnRhYmxlSW1hZ2VCdXR0b25zV3JhcHBlcj5cbiAgKTtcbn1cblxuY29uc3QgU29ydGFibGVJbWFnZSA9IFNvcnRhYmxlRWxlbWVudCgoeyBpdGVtVmFsdWUsIGdldEFzc2V0LCBmaWVsZCwgb25SZW1vdmUsIG9uUmVwbGFjZSB9KSA9PiB7XG4gIHJldHVybiAoXG4gICAgPGRpdj5cbiAgICAgIDxJbWFnZVdyYXBwZXIgc29ydGFibGU+XG4gICAgICAgIDxJbWFnZSBzcmM9e2dldEFzc2V0KGl0ZW1WYWx1ZSwgZmllbGQpIHx8ICcnfSAvPlxuICAgICAgPC9JbWFnZVdyYXBwZXI+XG4gICAgICA8U29ydGFibGVJbWFnZUJ1dHRvbnNcbiAgICAgICAgaXRlbT17aXRlbVZhbHVlfVxuICAgICAgICBvblJlbW92ZT17b25SZW1vdmV9XG4gICAgICAgIG9uUmVwbGFjZT17b25SZXBsYWNlfVxuICAgICAgPjwvU29ydGFibGVJbWFnZUJ1dHRvbnM+XG4gICAgPC9kaXY+XG4gICk7XG59KTtcblxuY29uc3QgU29ydGFibGVNdWx0aUltYWdlV3JhcHBlciA9IFNvcnRhYmxlQ29udGFpbmVyKFxuICAoeyBpdGVtcywgZ2V0QXNzZXQsIGZpZWxkLCBvblJlbW92ZU9uZSwgb25SZXBsYWNlT25lIH0pID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgPGRpdlxuICAgICAgICBjc3M9e2Nzc2BcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgYH1cbiAgICAgID5cbiAgICAgICAge2l0ZW1zLm1hcCgoaXRlbVZhbHVlLCBpbmRleCkgPT4gKFxuICAgICAgICAgIDxTb3J0YWJsZUltYWdlXG4gICAgICAgICAgICBrZXk9e2BpdGVtLSR7aXRlbVZhbHVlfWB9XG4gICAgICAgICAgICBpbmRleD17aW5kZXh9XG4gICAgICAgICAgICBpdGVtVmFsdWU9e2l0ZW1WYWx1ZX1cbiAgICAgICAgICAgIGdldEFzc2V0PXtnZXRBc3NldH1cbiAgICAgICAgICAgIGZpZWxkPXtmaWVsZH1cbiAgICAgICAgICAgIG9uUmVtb3ZlPXtvblJlbW92ZU9uZShpbmRleCl9XG4gICAgICAgICAgICBvblJlcGxhY2U9e29uUmVwbGFjZU9uZShpbmRleCl9XG4gICAgICAgICAgLz5cbiAgICAgICAgKSl9XG4gICAgICA8L2Rpdj5cbiAgICApO1xuICB9LFxuKTtcblxuY29uc3QgRmlsZUxpbmsgPSBzdHlsZWQuYWBcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6IGluaGVyaXQ7XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG5gO1xuXG5jb25zdCBGaWxlTGlua3MgPSBzdHlsZWQuZGl2YFxuICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuYDtcblxuY29uc3QgRmlsZUxpbmtMaXN0ID0gc3R5bGVkLnVsYFxuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5gO1xuXG5jb25zdCBGaWxlV2lkZ2V0QnV0dG9uID0gc3R5bGVkLmJ1dHRvbmBcbiAgJHtidXR0b25zLmJ1dHRvbn07XG4gICR7Y29tcG9uZW50cy5iYWRnZX07XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG5gO1xuXG5jb25zdCBGaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlID0gc3R5bGVkLmJ1dHRvbmBcbiAgJHtidXR0b25zLmJ1dHRvbn07XG4gICR7Y29tcG9uZW50cy5iYWRnZURhbmdlcn07XG5gO1xuXG5mdW5jdGlvbiBpc011bHRpcGxlKHZhbHVlKSB7XG4gIHJldHVybiBBcnJheS5pc0FycmF5KHZhbHVlKSB8fCBMaXN0LmlzTGlzdCh2YWx1ZSk7XG59XG5cbmZ1bmN0aW9uIHNpemVPZlZhbHVlKHZhbHVlKSB7XG4gIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgIHJldHVybiB2YWx1ZS5sZW5ndGg7XG4gIH1cblxuICBpZiAoTGlzdC5pc0xpc3QodmFsdWUpKSB7XG4gICAgcmV0dXJuIHZhbHVlLnNpemU7XG4gIH1cblxuICByZXR1cm4gdmFsdWUgPyAxIDogMDtcbn1cblxuZnVuY3Rpb24gdmFsdWVMaXN0VG9BcnJheSh2YWx1ZSkge1xuICByZXR1cm4gTGlzdC5pc0xpc3QodmFsdWUpID8gdmFsdWUudG9BcnJheSgpIDogdmFsdWU7XG59XG5cbmNvbnN0IHdhcm5EZXByZWNhdGVkT3B0aW9ucyA9IG9uY2UoZmllbGQgPT5cbiAgY29uc29sZS53YXJuKG9uZUxpbmVgXG4gIERlY2FwIENNUyBjb25maWc6ICR7ZmllbGQuZ2V0KCduYW1lJyl9IGZpZWxkOiBwcm9wZXJ0eSBcIm9wdGlvbnNcIiBoYXMgYmVlbiBkZXByZWNhdGVkIGZvciB0aGVcbiAgJHtmaWVsZC5nZXQoJ3dpZGdldCcpfSB3aWRnZXQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiB0aGUgbmV4dCBtYWpvciByZWxlYXNlLiBSYXRoZXIgdGhhblxuICBcXGBmaWVsZC5vcHRpb25zLm1lZGlhX2xpYnJhcnlcXGAsIGFwcGx5IG1lZGlhIGxpYnJhcnkgb3B0aW9ucyBmb3IgdGhpcyB3aWRnZXQgdW5kZXJcbiAgXFxgZmllbGQubWVkaWFfbGlicmFyeVxcYC5cbmApLFxuKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gd2l0aEZpbGVDb250cm9sKHsgZm9ySW1hZ2UgfSA9IHt9KSB7XG4gIHJldHVybiBjbGFzcyBGaWxlQ29udHJvbCBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gICAgc3RhdGljIHByb3BUeXBlcyA9IHtcbiAgICAgIGZpZWxkOiBQcm9wVHlwZXMub2JqZWN0LmlzUmVxdWlyZWQsXG4gICAgICBnZXRBc3NldDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG1lZGlhUGF0aHM6IEltbXV0YWJsZVByb3BUeXBlcy5tYXAuaXNSZXF1aXJlZCxcbiAgICAgIG9uQWRkQXNzZXQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgICBvbkNoYW5nZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uUmVtb3ZlSW5zZXJ0ZWRNZWRpYTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uT3Blbk1lZGlhTGlicmFyeTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uQ2xlYXJNZWRpYUNvbnRyb2w6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgICBvblJlbW92ZU1lZGlhQ29udHJvbDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIGNsYXNzTmFtZVdyYXBwZXI6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgICAgIHZhbHVlOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtcbiAgICAgICAgUHJvcFR5cGVzLnN0cmluZyxcbiAgICAgICAgUHJvcFR5cGVzLmFycmF5T2YoUHJvcFR5cGVzLnN0cmluZyksXG4gICAgICAgIEltbXV0YWJsZVByb3BUeXBlcy5saXN0T2YoUHJvcFR5cGVzLnN0cmluZyksXG4gICAgICBdKSxcbiAgICAgIHQ6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgfTtcblxuICAgIHN0YXRpYyBkZWZhdWx0UHJvcHMgPSB7XG4gICAgICB2YWx1ZTogJycsXG4gICAgfTtcblxuICAgIGNvbnN0cnVjdG9yKHByb3BzKSB7XG4gICAgICBzdXBlcihwcm9wcyk7XG4gICAgICB0aGlzLmNvbnRyb2xJRCA9IHV1aWQoKTtcbiAgICB9XG5cbiAgICBzaG91bGRDb21wb25lbnRVcGRhdGUobmV4dFByb3BzKSB7XG4gICAgICAvKipcbiAgICAgICAqIEFsd2F5cyB1cGRhdGUgaWYgdGhlIHZhbHVlIG9yIGdldEFzc2V0IGNoYW5nZXMuXG4gICAgICAgKi9cbiAgICAgIGlmICh0aGlzLnByb3BzLnZhbHVlICE9PSBuZXh0UHJvcHMudmFsdWUgfHwgdGhpcy5wcm9wcy5nZXRBc3NldCAhPT0gbmV4dFByb3BzLmdldEFzc2V0KSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuXG4gICAgICAvKipcbiAgICAgICAqIElmIHRoZXJlIGlzIGEgbWVkaWEgcGF0aCBmb3IgdGhpcyBjb250cm9sIGluIHRoZSBzdGF0ZSBvYmplY3QsIGFuZCB0aGF0XG4gICAgICAgKiBwYXRoIGlzIGRpZmZlcmVudCB0aGFuIHRoZSB2YWx1ZSBpbiBgbmV4dFByb3BzYCwgdXBkYXRlLlxuICAgICAgICovXG4gICAgICBjb25zdCBtZWRpYVBhdGggPSBuZXh0UHJvcHMubWVkaWFQYXRocy5nZXQodGhpcy5jb250cm9sSUQpO1xuICAgICAgaWYgKG1lZGlhUGF0aCAmJiBuZXh0UHJvcHMudmFsdWUgIT09IG1lZGlhUGF0aCkge1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGNvbXBvbmVudERpZFVwZGF0ZSgpIHtcbiAgICAgIGNvbnN0IHsgbWVkaWFQYXRocywgdmFsdWUsIG9uUmVtb3ZlSW5zZXJ0ZWRNZWRpYSwgb25DaGFuZ2UgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBtZWRpYVBhdGggPSBtZWRpYVBhdGhzLmdldCh0aGlzLmNvbnRyb2xJRCk7XG4gICAgICBpZiAobWVkaWFQYXRoICYmIG1lZGlhUGF0aCAhPT0gdmFsdWUpIHtcbiAgICAgICAgb25DaGFuZ2UobWVkaWFQYXRoKTtcbiAgICAgIH0gZWxzZSBpZiAobWVkaWFQYXRoICYmIG1lZGlhUGF0aCA9PT0gdmFsdWUpIHtcbiAgICAgICAgb25SZW1vdmVJbnNlcnRlZE1lZGlhKHRoaXMuY29udHJvbElEKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb21wb25lbnRXaWxsVW5tb3VudCgpIHtcbiAgICAgIHRoaXMucHJvcHMub25SZW1vdmVNZWRpYUNvbnRyb2wodGhpcy5jb250cm9sSUQpO1xuICAgIH1cblxuICAgIGhhbmRsZUNoYW5nZSA9IGUgPT4ge1xuICAgICAgY29uc3QgeyBmaWVsZCwgb25PcGVuTWVkaWFMaWJyYXJ5LCB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGUucHJldmVudERlZmF1bHQoKTtcbiAgICAgIGNvbnN0IG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucyA9IHRoaXMuZ2V0TWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zKCk7XG5cbiAgICAgIHJldHVybiBvbk9wZW5NZWRpYUxpYnJhcnkoe1xuICAgICAgICBjb250cm9sSUQ6IHRoaXMuY29udHJvbElELFxuICAgICAgICBmb3JJbWFnZSxcbiAgICAgICAgcHJpdmF0ZVVwbG9hZDogZmllbGQuZ2V0KCdwcml2YXRlJyksXG4gICAgICAgIHZhbHVlOiB2YWx1ZUxpc3RUb0FycmF5KHZhbHVlKSxcbiAgICAgICAgYWxsb3dNdWx0aXBsZTogISFtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMuZ2V0KCdhbGxvd19tdWx0aXBsZScsIHRydWUpLFxuICAgICAgICBjb25maWc6IG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycpLFxuICAgICAgICBmaWVsZCxcbiAgICAgIH0pO1xuICAgIH07XG5cbiAgICBoYW5kbGVVcmwgPSBzdWJqZWN0ID0+IGUgPT4ge1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgICBjb25zdCB1cmwgPSB3aW5kb3cucHJvbXB0KHRoaXMucHJvcHMudChgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS5wcm9tcHRVcmxgKSk7XG5cbiAgICAgIHJldHVybiB0aGlzLnByb3BzLm9uQ2hhbmdlKHVybCk7XG4gICAgfTtcblxuICAgIGhhbmRsZVJlbW92ZSA9IGUgPT4ge1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgdGhpcy5wcm9wcy5vbkNsZWFyTWVkaWFDb250cm9sKHRoaXMuY29udHJvbElEKTtcbiAgICAgIHJldHVybiB0aGlzLnByb3BzLm9uQ2hhbmdlKCcnKTtcbiAgICB9O1xuXG4gICAgb25SZW1vdmVPbmUgPSBpbmRleCA9PiAoKSA9PiB7XG4gICAgICBjb25zdCB7IHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgdmFsdWUuc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgIHJldHVybiB0aGlzLnByb3BzLm9uQ2hhbmdlKHNpemVPZlZhbHVlKHZhbHVlKSA+IDAgPyBbLi4udmFsdWVdIDogbnVsbCk7XG4gICAgfTtcblxuICAgIG9uUmVwbGFjZU9uZSA9IGluZGV4ID0+ICgpID0+IHtcbiAgICAgIGNvbnN0IHsgZmllbGQsIG9uT3Blbk1lZGlhTGlicmFyeSwgdmFsdWUgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMgPSB0aGlzLmdldE1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucygpO1xuXG4gICAgICByZXR1cm4gb25PcGVuTWVkaWFMaWJyYXJ5KHtcbiAgICAgICAgY29udHJvbElEOiB0aGlzLmNvbnRyb2xJRCxcbiAgICAgICAgZm9ySW1hZ2UsXG4gICAgICAgIHByaXZhdGVVcGxvYWQ6IGZpZWxkLmdldCgncHJpdmF0ZScpLFxuICAgICAgICB2YWx1ZTogdmFsdWVMaXN0VG9BcnJheSh2YWx1ZSksXG4gICAgICAgIHJlcGxhY2VJbmRleDogaW5kZXgsXG4gICAgICAgIGFsbG93TXVsdGlwbGU6IGZhbHNlLFxuICAgICAgICBjb25maWc6IG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycpLFxuICAgICAgICBmaWVsZCxcbiAgICAgIH0pO1xuICAgIH07XG5cbiAgICBnZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMgPSAoKSA9PiB7XG4gICAgICBjb25zdCB7IGZpZWxkIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgICBpZiAoZmllbGQuaGFzSW4oWydvcHRpb25zJywgJ21lZGlhX2xpYnJhcnknXSkpIHtcbiAgICAgICAgd2FybkRlcHJlY2F0ZWRPcHRpb25zKGZpZWxkKTtcbiAgICAgICAgcmV0dXJuIGZpZWxkLmdldEluKFsnb3B0aW9ucycsICdtZWRpYV9saWJyYXJ5J10sIE1hcCgpKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZpZWxkLmdldCgnbWVkaWFfbGlicmFyeScsIE1hcCgpKTtcbiAgICB9O1xuXG4gICAgYWxsb3dzTXVsdGlwbGUgPSAoKSA9PiB7XG4gICAgICBjb25zdCBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMgPSB0aGlzLmdldE1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucygpO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zLmdldCgnY29uZmlnJywgZmFsc2UpICYmXG4gICAgICAgIG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycpLmdldCgnbXVsdGlwbGUnLCBmYWxzZSlcbiAgICAgICk7XG4gICAgfTtcblxuICAgIG9uU29ydEVuZCA9ICh7IG9sZEluZGV4LCBuZXdJbmRleCB9KSA9PiB7XG4gICAgICBjb25zdCB7IHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgbmV3VmFsdWUgPSBhcnJheU1vdmUodmFsdWUsIG9sZEluZGV4LCBuZXdJbmRleCk7XG4gICAgICByZXR1cm4gdGhpcy5wcm9wcy5vbkNoYW5nZShuZXdWYWx1ZSk7XG4gICAgfTtcblxuICAgIGdldFZhbGlkYXRlVmFsdWUgPSAoKSA9PiB7XG4gICAgICBjb25zdCB7IHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgIHJldHVybiBpc011bHRpcGxlKHZhbHVlKSA/IHZhbHVlLm1hcCh2ID0+IGJhc2VuYW1lKHYpKSA6IGJhc2VuYW1lKHZhbHVlKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH07XG5cbiAgICByZW5kZXJGaWxlTGluayA9IHZhbHVlID0+IHtcbiAgICAgIGNvbnN0IHNpemUgPSBNQVhfRElTUExBWV9MRU5HVEg7XG4gICAgICBpZiAoIXZhbHVlIHx8IHZhbHVlLmxlbmd0aCA8PSBzaXplKSB7XG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHRleHQgPSBgJHt2YWx1ZS5zbGljZSgwLCBzaXplIC8gMil9XFx1MjAyNiR7dmFsdWUuc2xpY2UoLShzaXplIC8gMikgKyAxKX1gO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPEZpbGVMaW5rIGhyZWY9e3ZhbHVlfSByZWw9XCJub29wZW5lclwiIHRhcmdldD1cIl9ibGFua1wiPlxuICAgICAgICAgIHt0ZXh0fVxuICAgICAgICA8L0ZpbGVMaW5rPlxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgcmVuZGVyRmlsZUxpbmtzID0gKCkgPT4ge1xuICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcblxuICAgICAgaWYgKGlzTXVsdGlwbGUodmFsdWUpKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPEZpbGVMaW5rcz5cbiAgICAgICAgICAgIDxGaWxlTGlua0xpc3Q+XG4gICAgICAgICAgICAgIHt2YWx1ZS5tYXAodmFsID0+IChcbiAgICAgICAgICAgICAgICA8bGkga2V5PXt2YWx9Pnt0aGlzLnJlbmRlckZpbGVMaW5rKHZhbCl9PC9saT5cbiAgICAgICAgICAgICAgKSl9XG4gICAgICAgICAgICA8L0ZpbGVMaW5rTGlzdD5cbiAgICAgICAgICA8L0ZpbGVMaW5rcz5cbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiA8RmlsZUxpbmtzPnt0aGlzLnJlbmRlckZpbGVMaW5rKHZhbHVlKX08L0ZpbGVMaW5rcz47XG4gICAgfTtcblxuICAgIHJlbmRlckltYWdlcyA9ICgpID0+IHtcbiAgICAgIGNvbnN0IHsgZ2V0QXNzZXQsIHZhbHVlLCBmaWVsZCB9ID0gdGhpcy5wcm9wcztcblxuICAgICAgaWYgKGlzTXVsdGlwbGUodmFsdWUpKSB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPFNvcnRhYmxlTXVsdGlJbWFnZVdyYXBwZXJcbiAgICAgICAgICAgIGl0ZW1zPXt2YWx1ZX1cbiAgICAgICAgICAgIG9uU29ydEVuZD17dGhpcy5vblNvcnRFbmR9XG4gICAgICAgICAgICBvblJlbW92ZU9uZT17dGhpcy5vblJlbW92ZU9uZX1cbiAgICAgICAgICAgIG9uUmVwbGFjZU9uZT17dGhpcy5vblJlcGxhY2VPbmV9XG4gICAgICAgICAgICBkaXN0YW5jZT17NH1cbiAgICAgICAgICAgIGdldEFzc2V0PXtnZXRBc3NldH1cbiAgICAgICAgICAgIGZpZWxkPXtmaWVsZH1cbiAgICAgICAgICAgIGF4aXM9XCJ4eVwiXG4gICAgICAgICAgICBsb2NrVG9Db250YWluZXJFZGdlcz17dHJ1ZX1cbiAgICAgICAgICA+PC9Tb3J0YWJsZU11bHRpSW1hZ2VXcmFwcGVyPlxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBzcmMgPSBnZXRBc3NldCh2YWx1ZSwgZmllbGQpO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPEltYWdlV3JhcHBlcj5cbiAgICAgICAgICA8SW1hZ2Ugc3JjPXtzcmMgfHwgJyd9IC8+XG4gICAgICAgIDwvSW1hZ2VXcmFwcGVyPlxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgcmVuZGVyU2VsZWN0aW9uID0gc3ViamVjdCA9PiB7XG4gICAgICBjb25zdCB7IHQsIGZpZWxkIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgYWxsb3dzTXVsdGlwbGUgPSB0aGlzLmFsbG93c011bHRpcGxlKCk7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2PlxuICAgICAgICAgIHtmb3JJbWFnZSA/IHRoaXMucmVuZGVySW1hZ2VzKCkgOiBudWxsfVxuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICB7Zm9ySW1hZ2UgPyBudWxsIDogdGhpcy5yZW5kZXJGaWxlTGlua3MoKX1cbiAgICAgICAgICAgIDxGaWxlV2lkZ2V0QnV0dG9uIG9uQ2xpY2s9e3RoaXMuaGFuZGxlQ2hhbmdlfT5cbiAgICAgICAgICAgICAge3QoXG4gICAgICAgICAgICAgICAgYGVkaXRvci5lZGl0b3JXaWRnZXRzLiR7c3ViamVjdH0uJHtcbiAgICAgICAgICAgICAgICAgIHRoaXMuYWxsb3dzTXVsdGlwbGUoKSA/ICdhZGRNb3JlJyA6ICdjaG9vc2VEaWZmZXJlbnQnXG4gICAgICAgICAgICAgICAgfWAsXG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b24+XG4gICAgICAgICAgICB7ZmllbGQuZ2V0KCdjaG9vc2VfdXJsJywgdHJ1ZSkgJiYgIXRoaXMuYWxsb3dzTXVsdGlwbGUoKSA/IChcbiAgICAgICAgICAgICAgPEZpbGVXaWRnZXRCdXR0b24gb25DbGljaz17dGhpcy5oYW5kbGVVcmwoc3ViamVjdCl9PlxuICAgICAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LnJlcGxhY2VVcmxgKX1cbiAgICAgICAgICAgICAgPC9GaWxlV2lkZ2V0QnV0dG9uPlxuICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvblJlbW92ZSBvbkNsaWNrPXt0aGlzLmhhbmRsZVJlbW92ZX0+XG4gICAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LnJlbW92ZSR7YWxsb3dzTXVsdGlwbGUgPyAnQWxsJyA6ICcnfWApfVxuICAgICAgICAgICAgPC9GaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICk7XG4gICAgfTtcblxuICAgIHJlbmRlck5vU2VsZWN0aW9uID0gc3ViamVjdCA9PiB7XG4gICAgICBjb25zdCB7IHQsIGZpZWxkIH0gPSB0aGlzLnByb3BzO1xuICAgICAgcmV0dXJuIChcbiAgICAgICAgPD5cbiAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvbiBvbkNsaWNrPXt0aGlzLmhhbmRsZUNoYW5nZX0+XG4gICAgICAgICAgICB7dChgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS5jaG9vc2Uke3RoaXMuYWxsb3dzTXVsdGlwbGUoKSA/ICdNdWx0aXBsZScgOiAnJ31gKX1cbiAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b24+XG4gICAgICAgICAge2ZpZWxkLmdldCgnY2hvb3NlX3VybCcsIHRydWUpID8gKFxuICAgICAgICAgICAgPEZpbGVXaWRnZXRCdXR0b24gb25DbGljaz17dGhpcy5oYW5kbGVVcmwoc3ViamVjdCl9PlxuICAgICAgICAgICAgICB7dChgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS5jaG9vc2VVcmxgKX1cbiAgICAgICAgICAgIDwvRmlsZVdpZGdldEJ1dHRvbj5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC8+XG4gICAgICApO1xuICAgIH07XG5cbiAgICByZW5kZXIoKSB7XG4gICAgICBjb25zdCB7IHZhbHVlLCBjbGFzc05hbWVXcmFwcGVyIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3Qgc3ViamVjdCA9IGZvckltYWdlID8gJ2ltYWdlJyA6ICdmaWxlJztcblxuICAgICAgcmV0dXJuIChcbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e2NsYXNzTmFtZVdyYXBwZXJ9PlxuICAgICAgICAgIDxzcGFuPnt2YWx1ZSA/IHRoaXMucmVuZGVyU2VsZWN0aW9uKHN1YmplY3QpIDogdGhpcy5yZW5kZXJOb1NlbGVjdGlvbihzdWJqZWN0KX08L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKTtcbiAgICB9XG4gIH07XG59XG4iXX0= */"));
|
|
209
|
+
})(_decapCmsUiDefault.buttons.button, ";", _decapCmsUiDefault.components.badgeDanger, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy93aXRoRmlsZUNvbnRyb2wuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBc0w0QyIsImZpbGUiOiIuLi8uLi9zcmMvd2l0aEZpbGVDb250cm9sLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgSW1tdXRhYmxlUHJvcFR5cGVzIGZyb20gJ3JlYWN0LWltbXV0YWJsZS1wcm9wdHlwZXMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vY29yZSc7XG5pbXBvcnQgeyBNYXAsIExpc3QgfSBmcm9tICdpbW11dGFibGUnO1xuaW1wb3J0IHsgb25jZSB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyB2NCBhcyB1dWlkIH0gZnJvbSAndXVpZCc7XG5pbXBvcnQgeyBvbmVMaW5lIH0gZnJvbSAnY29tbW9uLXRhZ3MnO1xuaW1wb3J0IHtcbiAgbGVuZ3RocyxcbiAgY29tcG9uZW50cyxcbiAgYnV0dG9ucyxcbiAgYm9yZGVycyxcbiAgZWZmZWN0cyxcbiAgc2hhZG93cyxcbiAgSWNvbkJ1dHRvbixcbn0gZnJvbSAnZGVjYXAtY21zLXVpLWRlZmF1bHQnO1xuaW1wb3J0IHsgYmFzZW5hbWUgfSBmcm9tICdkZWNhcC1jbXMtbGliLXV0aWwnO1xuaW1wb3J0IHsgYXJyYXlNb3ZlSW1tdXRhYmxlIGFzIGFycmF5TW92ZSB9IGZyb20gJ2FycmF5LW1vdmUnO1xuaW1wb3J0IHtcbiAgRG5kQ29udGV4dCxcbiAgTW91c2VTZW5zb3IsXG4gIFRvdWNoU2Vuc29yLFxuICBjbG9zZXN0Q2VudGVyLFxuICB1c2VTZW5zb3IsXG4gIHVzZVNlbnNvcnMsXG59IGZyb20gJ0BkbmQta2l0L2NvcmUnO1xuaW1wb3J0IHsgU29ydGFibGVDb250ZXh0LCB1c2VTb3J0YWJsZSB9IGZyb20gJ0BkbmQta2l0L3NvcnRhYmxlJztcbmltcG9ydCB7IENTUyB9IGZyb20gJ0BkbmQta2l0L3V0aWxpdGllcyc7XG5pbXBvcnQgeyByZXN0cmljdFRvUGFyZW50RWxlbWVudCB9IGZyb20gJ0BkbmQta2l0L21vZGlmaWVycyc7XG5cbmNvbnN0IE1BWF9ESVNQTEFZX0xFTkdUSCA9IDUwO1xuXG5jb25zdCBJbWFnZVdyYXBwZXIgPSBzdHlsZWQuZGl2YFxuICBmbGV4LWJhc2lzOiAxNTVweDtcbiAgd2lkdGg6IDE1NXB4O1xuICBoZWlnaHQ6IDEwMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGJvcmRlcjogJHtib3JkZXJzLnRleHRGaWVsZH07XG4gIGJvcmRlci1yYWRpdXM6ICR7bGVuZ3Rocy5ib3JkZXJSYWRpdXN9O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAke2VmZmVjdHMuY2hlY2tlcmJvYXJkfTtcbiAgJHtzaGFkb3dzLmluc2V0fTtcbiAgY3Vyc29yOiAke3Byb3BzID0+IChwcm9wcy5zb3J0YWJsZSA/ICdwb2ludGVyJyA6ICdhdXRvJyl9O1xuYDtcblxuY29uc3QgU29ydGFibGVJbWFnZUJ1dHRvbnNXcmFwcGVyID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGNvbHVtbi1nYXA6IDEwcHg7XG4gIG1hcmdpbi1yaWdodDogMjBweDtcbiAgbWFyZ2luLXRvcDogLTEwcHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG5gO1xuXG5jb25zdCBTdHlsZWRJbWFnZSA9IHN0eWxlZC5pbWdgXG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvbnRhaW47XG5gO1xuXG5mdW5jdGlvbiBJbWFnZShwcm9wcykge1xuICByZXR1cm4gPFN0eWxlZEltYWdlIHJvbGU9XCJwcmVzZW50YXRpb25cIiB7Li4ucHJvcHN9IC8+O1xufVxuXG5mdW5jdGlvbiBTb3J0YWJsZUltYWdlQnV0dG9ucyh7IG9uUmVtb3ZlLCBvblJlcGxhY2UgfSkge1xuICByZXR1cm4gKFxuICAgIDxTb3J0YWJsZUltYWdlQnV0dG9uc1dyYXBwZXI+XG4gICAgICA8SWNvbkJ1dHRvbiBzaXplPVwic21hbGxcIiB0eXBlPVwibWVkaWFcIiBvbkNsaWNrPXtvblJlcGxhY2V9PjwvSWNvbkJ1dHRvbj5cbiAgICAgIDxJY29uQnV0dG9uIHNpemU9XCJzbWFsbFwiIHR5cGU9XCJjbG9zZVwiIG9uQ2xpY2s9e29uUmVtb3ZlfT48L0ljb25CdXR0b24+XG4gICAgPC9Tb3J0YWJsZUltYWdlQnV0dG9uc1dyYXBwZXI+XG4gICk7XG59XG5cbmZ1bmN0aW9uIFNvcnRhYmxlSW1hZ2UocHJvcHMpIHtcbiAgY29uc3QgeyBhdHRyaWJ1dGVzLCBsaXN0ZW5lcnMsIHNldE5vZGVSZWYsIHRyYW5zZm9ybSwgdHJhbnNpdGlvbiB9ID0gdXNlU29ydGFibGUoe1xuICAgIGlkOiBwcm9wcy5pZCxcbiAgfSk7XG5cbiAgY29uc3Qgc3R5bGUgPSB7XG4gICAgdHJhbnNmb3JtOiBDU1MuVHJhbnNmb3JtLnRvU3RyaW5nKHRyYW5zZm9ybSksXG4gICAgdHJhbnNpdGlvbixcbiAgfTtcblxuICBjb25zdCB7IGl0ZW1WYWx1ZSwgZ2V0QXNzZXQsIGZpZWxkLCBvblJlbW92ZSwgb25SZXBsYWNlIH0gPSBwcm9wcztcblxuICByZXR1cm4gKFxuICAgIDxkaXYgcmVmPXtzZXROb2RlUmVmfSBzdHlsZT17c3R5bGV9IHsuLi5hdHRyaWJ1dGVzfSB7Li4ubGlzdGVuZXJzfT5cbiAgICAgIDxJbWFnZVdyYXBwZXIgc29ydGFibGU+XG4gICAgICAgIDxJbWFnZSBzcmM9e2dldEFzc2V0KGl0ZW1WYWx1ZSwgZmllbGQpIHx8ICcnfSAvPlxuICAgICAgPC9JbWFnZVdyYXBwZXI+XG4gICAgICA8U29ydGFibGVJbWFnZUJ1dHRvbnNcbiAgICAgICAgaXRlbT17aXRlbVZhbHVlfVxuICAgICAgICBvblJlbW92ZT17b25SZW1vdmV9XG4gICAgICAgIG9uUmVwbGFjZT17b25SZXBsYWNlfVxuICAgICAgPjwvU29ydGFibGVJbWFnZUJ1dHRvbnM+XG4gICAgPC9kaXY+XG4gICk7XG59XG5cbmZ1bmN0aW9uIFNvcnRhYmxlTXVsdGlJbWFnZVdyYXBwZXIoe1xuICBpdGVtcyxcbiAgZ2V0QXNzZXQsXG4gIGZpZWxkLFxuICBvblNvcnRFbmQsXG4gIG9uUmVtb3ZlT25lLFxuICBvblJlcGxhY2VPbmUsXG59KSB7XG4gIGNvbnN0IGFjdGl2YXRpb25Db25zdHJhaW50ID0geyBkaXN0YW5jZTogNCB9O1xuICBjb25zdCBzZW5zb3JzID0gdXNlU2Vuc29ycyhcbiAgICB1c2VTZW5zb3IoTW91c2VTZW5zb3IsIHsgYWN0aXZhdGlvbkNvbnN0cmFpbnQgfSksXG4gICAgdXNlU2Vuc29yKFRvdWNoU2Vuc29yLCB7IGFjdGl2YXRpb25Db25zdHJhaW50IH0pLFxuICApO1xuXG4gIGZ1bmN0aW9uIGhhbmRsZVNvcnRFbmQoeyBhY3RpdmUsIG92ZXIgfSkge1xuICAgIG9uU29ydEVuZCh7XG4gICAgICBvbGRJbmRleDogaXRlbXMuZmluZEluZGV4KGl0ZW0gPT4gaXRlbS5pZCA9PT0gYWN0aXZlLmlkKSxcbiAgICAgIG5ld0luZGV4OiBpdGVtcy5maW5kSW5kZXgoaXRlbSA9PiBpdGVtLmlkID09PSBvdmVyLmlkKSxcbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPGRpdlxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0L25vLXVua25vd24tcHJvcGVydHlcbiAgICAgIGNzcz17Y3NzYFxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBgfVxuICAgID5cbiAgICAgIDxEbmRDb250ZXh0XG4gICAgICAgIG1vZGlmaWVycz17W3Jlc3RyaWN0VG9QYXJlbnRFbGVtZW50XX1cbiAgICAgICAgY29sbGlzaW9uRGV0ZWN0aW9uPXtjbG9zZXN0Q2VudGVyfVxuICAgICAgICBzZW5zb3JzPXtzZW5zb3JzfVxuICAgICAgICBvbkRyYWdFbmQ9e2hhbmRsZVNvcnRFbmR9XG4gICAgICA+XG4gICAgICAgIDxTb3J0YWJsZUNvbnRleHQgaXRlbXM9e2l0ZW1zfT5cbiAgICAgICAgICB7aXRlbXMubWFwKChpdGVtLCBpbmRleCkgPT4gKFxuICAgICAgICAgICAgPFNvcnRhYmxlSW1hZ2VcbiAgICAgICAgICAgICAga2V5PXtpdGVtLmlkfVxuICAgICAgICAgICAgICBpZD17aXRlbS5pZH1cbiAgICAgICAgICAgICAgaW5kZXg9e2luZGV4fVxuICAgICAgICAgICAgICBpdGVtVmFsdWU9e2l0ZW0udmFsdWV9XG4gICAgICAgICAgICAgIGdldEFzc2V0PXtnZXRBc3NldH1cbiAgICAgICAgICAgICAgZmllbGQ9e2ZpZWxkfVxuICAgICAgICAgICAgICBvblJlbW92ZT17b25SZW1vdmVPbmUoaW5kZXgpfVxuICAgICAgICAgICAgICBvblJlcGxhY2U9e29uUmVwbGFjZU9uZShpbmRleCl9XG4gICAgICAgICAgICA+PC9Tb3J0YWJsZUltYWdlPlxuICAgICAgICAgICkpfVxuICAgICAgICA8L1NvcnRhYmxlQ29udGV4dD5cbiAgICAgIDwvRG5kQ29udGV4dD5cbiAgICA8L2Rpdj5cbiAgKTtcbn1cblxuY29uc3QgRmlsZUxpbmsgPSBzdHlsZWQuYWBcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6IGluaGVyaXQ7XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG5gO1xuXG5jb25zdCBGaWxlTGlua3MgPSBzdHlsZWQuZGl2YFxuICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuYDtcblxuY29uc3QgRmlsZUxpbmtMaXN0ID0gc3R5bGVkLnVsYFxuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5gO1xuXG5jb25zdCBGaWxlV2lkZ2V0QnV0dG9uID0gc3R5bGVkLmJ1dHRvbmBcbiAgJHtidXR0b25zLmJ1dHRvbn07XG4gICR7Y29tcG9uZW50cy5iYWRnZX07XG4gIG1hcmdpbi1ib3R0b206IDEycHg7XG5gO1xuXG5jb25zdCBGaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlID0gc3R5bGVkLmJ1dHRvbmBcbiAgJHtidXR0b25zLmJ1dHRvbn07XG4gICR7Y29tcG9uZW50cy5iYWRnZURhbmdlcn07XG5gO1xuXG5mdW5jdGlvbiBpc011bHRpcGxlKHZhbHVlKSB7XG4gIHJldHVybiBBcnJheS5pc0FycmF5KHZhbHVlKSB8fCBMaXN0LmlzTGlzdCh2YWx1ZSk7XG59XG5cbmZ1bmN0aW9uIHNpemVPZlZhbHVlKHZhbHVlKSB7XG4gIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgIHJldHVybiB2YWx1ZS5sZW5ndGg7XG4gIH1cblxuICBpZiAoTGlzdC5pc0xpc3QodmFsdWUpKSB7XG4gICAgcmV0dXJuIHZhbHVlLnNpemU7XG4gIH1cblxuICByZXR1cm4gdmFsdWUgPyAxIDogMDtcbn1cblxuZnVuY3Rpb24gdmFsdWVMaXN0VG9BcnJheSh2YWx1ZSkge1xuICByZXR1cm4gTGlzdC5pc0xpc3QodmFsdWUpID8gdmFsdWUudG9BcnJheSgpIDogdmFsdWUgPz8gJyc7XG59XG5cbmZ1bmN0aW9uIHZhbHVlTGlzdFRvU29ydGFibGVBcnJheSh2YWx1ZSkge1xuICBpZiAoIWlzTXVsdGlwbGUodmFsdWUpKSB7XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9XG5cbiAgY29uc3QgdmFsdWVBcnJheSA9IHZhbHVlTGlzdFRvQXJyYXkodmFsdWUpLm1hcCh2YWx1ZSA9PiAoe1xuICAgIGlkOiB1dWlkKCksXG4gICAgdmFsdWUsXG4gIH0pKTtcblxuICByZXR1cm4gdmFsdWVBcnJheTtcbn1cblxuY29uc3Qgd2FybkRlcHJlY2F0ZWRPcHRpb25zID0gb25jZShmaWVsZCA9PlxuICBjb25zb2xlLndhcm4ob25lTGluZWBcbiAgRGVjYXAgQ01TIGNvbmZpZzogJHtmaWVsZC5nZXQoJ25hbWUnKX0gZmllbGQ6IHByb3BlcnR5IFwib3B0aW9uc1wiIGhhcyBiZWVuIGRlcHJlY2F0ZWQgZm9yIHRoZVxuICAke2ZpZWxkLmdldCgnd2lkZ2V0Jyl9IHdpZGdldCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIHRoZSBuZXh0IG1ham9yIHJlbGVhc2UuIFJhdGhlciB0aGFuXG4gIFxcYGZpZWxkLm9wdGlvbnMubWVkaWFfbGlicmFyeVxcYCwgYXBwbHkgbWVkaWEgbGlicmFyeSBvcHRpb25zIGZvciB0aGlzIHdpZGdldCB1bmRlclxuICBcXGBmaWVsZC5tZWRpYV9saWJyYXJ5XFxgLlxuYCksXG4pO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB3aXRoRmlsZUNvbnRyb2woeyBmb3JJbWFnZSB9ID0ge30pIHtcbiAgcmV0dXJuIGNsYXNzIEZpbGVDb250cm9sIGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50IHtcbiAgICBzdGF0aWMgcHJvcFR5cGVzID0ge1xuICAgICAgZmllbGQ6IFByb3BUeXBlcy5vYmplY3QuaXNSZXF1aXJlZCxcbiAgICAgIGdldEFzc2V0OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgbWVkaWFQYXRoczogSW1tdXRhYmxlUHJvcFR5cGVzLm1hcC5pc1JlcXVpcmVkLFxuICAgICAgb25BZGRBc3NldDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uQ2hhbmdlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgb25SZW1vdmVJbnNlcnRlZE1lZGlhOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgb25PcGVuTWVkaWFMaWJyYXJ5OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgb25DbGVhck1lZGlhQ29udHJvbDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAgIG9uUmVtb3ZlTWVkaWFDb250cm9sOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgICAgY2xhc3NOYW1lV3JhcHBlcjogUHJvcFR5cGVzLnN0cmluZy5pc1JlcXVpcmVkLFxuICAgICAgdmFsdWU6IFByb3BUeXBlcy5vbmVPZlR5cGUoW1xuICAgICAgICBQcm9wVHlwZXMuc3RyaW5nLFxuICAgICAgICBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMuc3RyaW5nKSxcbiAgICAgICAgSW1tdXRhYmxlUHJvcFR5cGVzLmxpc3RPZihQcm9wVHlwZXMuc3RyaW5nKSxcbiAgICAgIF0pLFxuICAgICAgdDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICB9O1xuXG4gICAgc3RhdGljIGRlZmF1bHRQcm9wcyA9IHtcbiAgICAgIHZhbHVlOiAnJyxcbiAgICB9O1xuXG4gICAgY29uc3RydWN0b3IocHJvcHMpIHtcbiAgICAgIHN1cGVyKHByb3BzKTtcbiAgICAgIHRoaXMuY29udHJvbElEID0gdXVpZCgpO1xuICAgIH1cblxuICAgIHNob3VsZENvbXBvbmVudFVwZGF0ZShuZXh0UHJvcHMpIHtcbiAgICAgIC8qKlxuICAgICAgICogQWx3YXlzIHVwZGF0ZSBpZiB0aGUgdmFsdWUgb3IgZ2V0QXNzZXQgY2hhbmdlcy5cbiAgICAgICAqL1xuICAgICAgaWYgKHRoaXMucHJvcHMudmFsdWUgIT09IG5leHRQcm9wcy52YWx1ZSB8fCB0aGlzLnByb3BzLmdldEFzc2V0ICE9PSBuZXh0UHJvcHMuZ2V0QXNzZXQpIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG5cbiAgICAgIC8qKlxuICAgICAgICogSWYgdGhlcmUgaXMgYSBtZWRpYSBwYXRoIGZvciB0aGlzIGNvbnRyb2wgaW4gdGhlIHN0YXRlIG9iamVjdCwgYW5kIHRoYXRcbiAgICAgICAqIHBhdGggaXMgZGlmZmVyZW50IHRoYW4gdGhlIHZhbHVlIGluIGBuZXh0UHJvcHNgLCB1cGRhdGUuXG4gICAgICAgKi9cbiAgICAgIGNvbnN0IG1lZGlhUGF0aCA9IG5leHRQcm9wcy5tZWRpYVBhdGhzLmdldCh0aGlzLmNvbnRyb2xJRCk7XG4gICAgICBpZiAobWVkaWFQYXRoICYmIG5leHRQcm9wcy52YWx1ZSAhPT0gbWVkaWFQYXRoKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgY29tcG9uZW50RGlkVXBkYXRlKCkge1xuICAgICAgY29uc3QgeyBtZWRpYVBhdGhzLCB2YWx1ZSwgb25SZW1vdmVJbnNlcnRlZE1lZGlhLCBvbkNoYW5nZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGNvbnN0IG1lZGlhUGF0aCA9IG1lZGlhUGF0aHMuZ2V0KHRoaXMuY29udHJvbElEKTtcbiAgICAgIGlmIChtZWRpYVBhdGggJiYgbWVkaWFQYXRoICE9PSB2YWx1ZSkge1xuICAgICAgICBvbkNoYW5nZShtZWRpYVBhdGgpO1xuICAgICAgfSBlbHNlIGlmIChtZWRpYVBhdGggJiYgbWVkaWFQYXRoID09PSB2YWx1ZSkge1xuICAgICAgICBvblJlbW92ZUluc2VydGVkTWVkaWEodGhpcy5jb250cm9sSUQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGNvbXBvbmVudFdpbGxVbm1vdW50KCkge1xuICAgICAgdGhpcy5wcm9wcy5vblJlbW92ZU1lZGlhQ29udHJvbCh0aGlzLmNvbnRyb2xJRCk7XG4gICAgfVxuXG4gICAgaGFuZGxlQ2hhbmdlID0gZSA9PiB7XG4gICAgICBjb25zdCB7IGZpZWxkLCBvbk9wZW5NZWRpYUxpYnJhcnksIHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgY29uc3QgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gdGhpcy5nZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMoKTtcblxuICAgICAgcmV0dXJuIG9uT3Blbk1lZGlhTGlicmFyeSh7XG4gICAgICAgIGNvbnRyb2xJRDogdGhpcy5jb250cm9sSUQsXG4gICAgICAgIGZvckltYWdlLFxuICAgICAgICBwcml2YXRlVXBsb2FkOiBmaWVsZC5nZXQoJ3ByaXZhdGUnKSxcbiAgICAgICAgdmFsdWU6IHZhbHVlTGlzdFRvQXJyYXkodmFsdWUpLFxuICAgICAgICBhbGxvd011bHRpcGxlOiAhIW1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2FsbG93X211bHRpcGxlJywgdHJ1ZSksXG4gICAgICAgIGNvbmZpZzogbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zLmdldCgnY29uZmlnJyksXG4gICAgICAgIGZpZWxkLFxuICAgICAgfSk7XG4gICAgfTtcblxuICAgIGhhbmRsZVVybCA9IHN1YmplY3QgPT4gZSA9PiB7XG4gICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG5cbiAgICAgIGNvbnN0IHVybCA9IHdpbmRvdy5wcm9tcHQodGhpcy5wcm9wcy50KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LnByb21wdFVybGApKTtcblxuICAgICAgcmV0dXJuIHRoaXMucHJvcHMub25DaGFuZ2UodXJsKTtcbiAgICB9O1xuXG4gICAgaGFuZGxlUmVtb3ZlID0gZSA9PiB7XG4gICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB0aGlzLnByb3BzLm9uQ2xlYXJNZWRpYUNvbnRyb2wodGhpcy5jb250cm9sSUQpO1xuICAgICAgcmV0dXJuIHRoaXMucHJvcHMub25DaGFuZ2UoJycpO1xuICAgIH07XG5cbiAgICBvblJlbW92ZU9uZSA9IGluZGV4ID0+ICgpID0+IHtcbiAgICAgIGNvbnN0IHZhbHVlID0gdmFsdWVMaXN0VG9BcnJheSh0aGlzLnByb3BzLnZhbHVlKTtcbiAgICAgIHZhbHVlLnNwbGljZShpbmRleCwgMSk7XG4gICAgICByZXR1cm4gdGhpcy5wcm9wcy5vbkNoYW5nZShzaXplT2ZWYWx1ZSh2YWx1ZSkgPiAwID8gWy4uLnZhbHVlXSA6IG51bGwpO1xuICAgIH07XG5cbiAgICBvblJlcGxhY2VPbmUgPSBpbmRleCA9PiAoKSA9PiB7XG4gICAgICBjb25zdCB7IGZpZWxkLCBvbk9wZW5NZWRpYUxpYnJhcnksIHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gdGhpcy5nZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMoKTtcblxuICAgICAgcmV0dXJuIG9uT3Blbk1lZGlhTGlicmFyeSh7XG4gICAgICAgIGNvbnRyb2xJRDogdGhpcy5jb250cm9sSUQsXG4gICAgICAgIGZvckltYWdlLFxuICAgICAgICBwcml2YXRlVXBsb2FkOiBmaWVsZC5nZXQoJ3ByaXZhdGUnKSxcbiAgICAgICAgdmFsdWU6IHZhbHVlTGlzdFRvQXJyYXkodmFsdWUpLFxuICAgICAgICByZXBsYWNlSW5kZXg6IGluZGV4LFxuICAgICAgICBhbGxvd011bHRpcGxlOiBmYWxzZSxcbiAgICAgICAgY29uZmlnOiBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMuZ2V0KCdjb25maWcnKSxcbiAgICAgICAgZmllbGQsXG4gICAgICB9KTtcbiAgICB9O1xuXG4gICAgZ2V0TWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gKCkgPT4ge1xuICAgICAgY29uc3QgeyBmaWVsZCB9ID0gdGhpcy5wcm9wcztcblxuICAgICAgaWYgKGZpZWxkLmhhc0luKFsnb3B0aW9ucycsICdtZWRpYV9saWJyYXJ5J10pKSB7XG4gICAgICAgIHdhcm5EZXByZWNhdGVkT3B0aW9ucyhmaWVsZCk7XG4gICAgICAgIHJldHVybiBmaWVsZC5nZXRJbihbJ29wdGlvbnMnLCAnbWVkaWFfbGlicmFyeSddLCBNYXAoKSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBmaWVsZC5nZXQoJ21lZGlhX2xpYnJhcnknLCBNYXAoKSk7XG4gICAgfTtcblxuICAgIGFsbG93c011bHRpcGxlID0gKCkgPT4ge1xuICAgICAgY29uc3QgbWVkaWFMaWJyYXJ5RmllbGRPcHRpb25zID0gdGhpcy5nZXRNZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMoKTtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIG1lZGlhTGlicmFyeUZpZWxkT3B0aW9ucy5nZXQoJ2NvbmZpZycsIGZhbHNlKSAmJlxuICAgICAgICBtZWRpYUxpYnJhcnlGaWVsZE9wdGlvbnMuZ2V0KCdjb25maWcnKS5nZXQoJ211bHRpcGxlJywgZmFsc2UpXG4gICAgICApO1xuICAgIH07XG5cbiAgICBvblNvcnRFbmQgPSAoeyBvbGRJbmRleCwgbmV3SW5kZXggfSkgPT4ge1xuICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGNvbnN0IG5ld1ZhbHVlID0gYXJyYXlNb3ZlKHZhbHVlLCBvbGRJbmRleCwgbmV3SW5kZXgpO1xuICAgICAgcmV0dXJuIHRoaXMucHJvcHMub25DaGFuZ2UobmV3VmFsdWUpO1xuICAgIH07XG5cbiAgICBnZXRWYWxpZGF0ZVZhbHVlID0gKCkgPT4ge1xuICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICByZXR1cm4gaXNNdWx0aXBsZSh2YWx1ZSkgPyB2YWx1ZS5tYXAodiA9PiBiYXNlbmFtZSh2KSkgOiBiYXNlbmFtZSh2YWx1ZSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9O1xuXG4gICAgcmVuZGVyRmlsZUxpbmsgPSB2YWx1ZSA9PiB7XG4gICAgICBjb25zdCBzaXplID0gTUFYX0RJU1BMQVlfTEVOR1RIO1xuICAgICAgaWYgKCF2YWx1ZSB8fCB2YWx1ZS5sZW5ndGggPD0gc2l6ZSkge1xuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICB9XG4gICAgICBjb25zdCB0ZXh0ID0gYCR7dmFsdWUuc2xpY2UoMCwgc2l6ZSAvIDIpfVxcdTIwMjYke3ZhbHVlLnNsaWNlKC0oc2l6ZSAvIDIpICsgMSl9YDtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxGaWxlTGluayBocmVmPXt2YWx1ZX0gcmVsPVwibm9vcGVuZXJcIiB0YXJnZXQ9XCJfYmxhbmtcIj5cbiAgICAgICAgICB7dGV4dH1cbiAgICAgICAgPC9GaWxlTGluaz5cbiAgICAgICk7XG4gICAgfTtcblxuICAgIHJlbmRlckZpbGVMaW5rcyA9ICgpID0+IHtcbiAgICAgIGNvbnN0IHsgdmFsdWUgfSA9IHRoaXMucHJvcHM7XG5cbiAgICAgIGlmIChpc011bHRpcGxlKHZhbHVlKSkge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIDxGaWxlTGlua3M+XG4gICAgICAgICAgICA8RmlsZUxpbmtMaXN0PlxuICAgICAgICAgICAgICB7dmFsdWUubWFwKHZhbCA9PiAoXG4gICAgICAgICAgICAgICAgPGxpIGtleT17dmFsfT57dGhpcy5yZW5kZXJGaWxlTGluayh2YWwpfTwvbGk+XG4gICAgICAgICAgICAgICkpfVxuICAgICAgICAgICAgPC9GaWxlTGlua0xpc3Q+XG4gICAgICAgICAgPC9GaWxlTGlua3M+XG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICByZXR1cm4gPEZpbGVMaW5rcz57dGhpcy5yZW5kZXJGaWxlTGluayh2YWx1ZSl9PC9GaWxlTGlua3M+O1xuICAgIH07XG5cbiAgICByZW5kZXJJbWFnZXMgPSAoKSA9PiB7XG4gICAgICBjb25zdCB7IGdldEFzc2V0LCB2YWx1ZSwgZmllbGQgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBpdGVtcyA9IHZhbHVlTGlzdFRvU29ydGFibGVBcnJheSh2YWx1ZSk7XG4gICAgICBpZiAoaXNNdWx0aXBsZSh2YWx1ZSkpIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICA8U29ydGFibGVNdWx0aUltYWdlV3JhcHBlclxuICAgICAgICAgICAgaXRlbXM9e2l0ZW1zfVxuICAgICAgICAgICAgb25Tb3J0RW5kPXt0aGlzLm9uU29ydEVuZH1cbiAgICAgICAgICAgIG9uUmVtb3ZlT25lPXt0aGlzLm9uUmVtb3ZlT25lfVxuICAgICAgICAgICAgb25SZXBsYWNlT25lPXt0aGlzLm9uUmVwbGFjZU9uZX1cbiAgICAgICAgICAgIGRpc3RhbmNlPXs0fVxuICAgICAgICAgICAgZ2V0QXNzZXQ9e2dldEFzc2V0fVxuICAgICAgICAgICAgZmllbGQ9e2ZpZWxkfVxuICAgICAgICAgICAgYXhpcz1cInh5XCJcbiAgICAgICAgICAgIGxvY2tUb0NvbnRhaW5lckVkZ2VzPXt0cnVlfVxuICAgICAgICAgID48L1NvcnRhYmxlTXVsdGlJbWFnZVdyYXBwZXI+XG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHNyYyA9IGdldEFzc2V0KHZhbHVlLCBmaWVsZCk7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8SW1hZ2VXcmFwcGVyPlxuICAgICAgICAgIDxJbWFnZSBzcmM9e3NyYyB8fCAnJ30gLz5cbiAgICAgICAgPC9JbWFnZVdyYXBwZXI+XG4gICAgICApO1xuICAgIH07XG5cbiAgICByZW5kZXJTZWxlY3Rpb24gPSBzdWJqZWN0ID0+IHtcbiAgICAgIGNvbnN0IHsgdCwgZmllbGQgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBhbGxvd3NNdWx0aXBsZSA9IHRoaXMuYWxsb3dzTXVsdGlwbGUoKTtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxkaXY+XG4gICAgICAgICAge2ZvckltYWdlID8gdGhpcy5yZW5kZXJJbWFnZXMoKSA6IG51bGx9XG4gICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgIHtmb3JJbWFnZSA/IG51bGwgOiB0aGlzLnJlbmRlckZpbGVMaW5rcygpfVxuICAgICAgICAgICAgPEZpbGVXaWRnZXRCdXR0b24gb25DbGljaz17dGhpcy5oYW5kbGVDaGFuZ2V9PlxuICAgICAgICAgICAgICB7dChcbiAgICAgICAgICAgICAgICBgZWRpdG9yLmVkaXRvcldpZGdldHMuJHtzdWJqZWN0fS4ke1xuICAgICAgICAgICAgICAgICAgdGhpcy5hbGxvd3NNdWx0aXBsZSgpID8gJ2FkZE1vcmUnIDogJ2Nob29zZURpZmZlcmVudCdcbiAgICAgICAgICAgICAgICB9YCxcbiAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIDwvRmlsZVdpZGdldEJ1dHRvbj5cbiAgICAgICAgICAgIHtmaWVsZC5nZXQoJ2Nob29zZV91cmwnLCB0cnVlKSAmJiAhdGhpcy5hbGxvd3NNdWx0aXBsZSgpID8gKFxuICAgICAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvbiBvbkNsaWNrPXt0aGlzLmhhbmRsZVVybChzdWJqZWN0KX0+XG4gICAgICAgICAgICAgICAge3QoYGVkaXRvci5lZGl0b3JXaWRnZXRzLiR7c3ViamVjdH0ucmVwbGFjZVVybGApfVxuICAgICAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b24+XG4gICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgIDxGaWxlV2lkZ2V0QnV0dG9uUmVtb3ZlIG9uQ2xpY2s9e3RoaXMuaGFuZGxlUmVtb3ZlfT5cbiAgICAgICAgICAgICAge3QoYGVkaXRvci5lZGl0b3JXaWRnZXRzLiR7c3ViamVjdH0ucmVtb3ZlJHthbGxvd3NNdWx0aXBsZSA/ICdBbGwnIDogJyd9YCl9XG4gICAgICAgICAgICA8L0ZpbGVXaWRnZXRCdXR0b25SZW1vdmU+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgcmVuZGVyTm9TZWxlY3Rpb24gPSBzdWJqZWN0ID0+IHtcbiAgICAgIGNvbnN0IHsgdCwgZmllbGQgfSA9IHRoaXMucHJvcHM7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8PlxuICAgICAgICAgIDxGaWxlV2lkZ2V0QnV0dG9uIG9uQ2xpY2s9e3RoaXMuaGFuZGxlQ2hhbmdlfT5cbiAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LmNob29zZSR7dGhpcy5hbGxvd3NNdWx0aXBsZSgpID8gJ011bHRpcGxlJyA6ICcnfWApfVxuICAgICAgICAgIDwvRmlsZVdpZGdldEJ1dHRvbj5cbiAgICAgICAgICB7ZmllbGQuZ2V0KCdjaG9vc2VfdXJsJywgdHJ1ZSkgPyAoXG4gICAgICAgICAgICA8RmlsZVdpZGdldEJ1dHRvbiBvbkNsaWNrPXt0aGlzLmhhbmRsZVVybChzdWJqZWN0KX0+XG4gICAgICAgICAgICAgIHt0KGBlZGl0b3IuZWRpdG9yV2lkZ2V0cy4ke3N1YmplY3R9LmNob29zZVVybGApfVxuICAgICAgICAgICAgPC9GaWxlV2lkZ2V0QnV0dG9uPlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICA8Lz5cbiAgICAgICk7XG4gICAgfTtcblxuICAgIHJlbmRlcigpIHtcbiAgICAgIGNvbnN0IHsgdmFsdWUsIGNsYXNzTmFtZVdyYXBwZXIgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCBzdWJqZWN0ID0gZm9ySW1hZ2UgPyAnaW1hZ2UnIDogJ2ZpbGUnO1xuXG4gICAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Y2xhc3NOYW1lV3JhcHBlcn0+XG4gICAgICAgICAgPHNwYW4+e3ZhbHVlID8gdGhpcy5yZW5kZXJTZWxlY3Rpb24oc3ViamVjdCkgOiB0aGlzLnJlbmRlck5vU2VsZWN0aW9uKHN1YmplY3QpfTwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICApO1xuICAgIH1cbiAgfTtcbn1cbiJdfQ== */"));
|
|
163
210
|
function isMultiple(value) {
|
|
164
211
|
return Array.isArray(value) || _immutable.List.isList(value);
|
|
165
212
|
}
|
|
@@ -173,7 +220,17 @@ function sizeOfValue(value) {
|
|
|
173
220
|
return value ? 1 : 0;
|
|
174
221
|
}
|
|
175
222
|
function valueListToArray(value) {
|
|
176
|
-
return _immutable.List.isList(value) ? value.toArray() : value;
|
|
223
|
+
return _immutable.List.isList(value) ? value.toArray() : value !== null && value !== void 0 ? value : '';
|
|
224
|
+
}
|
|
225
|
+
function valueListToSortableArray(value) {
|
|
226
|
+
if (!isMultiple(value)) {
|
|
227
|
+
return value;
|
|
228
|
+
}
|
|
229
|
+
const valueArray = valueListToArray(value).map(value => ({
|
|
230
|
+
id: (0, _uuid.v4)(),
|
|
231
|
+
value
|
|
232
|
+
}));
|
|
233
|
+
return valueArray;
|
|
177
234
|
}
|
|
178
235
|
const warnDeprecatedOptions = (0, _once2.default)(field => console.warn((0, _commonTags.oneLine)`
|
|
179
236
|
Decap CMS config: ${field.get('name')} field: property "options" has been deprecated for the
|
|
@@ -217,9 +274,7 @@ function withFileControl({
|
|
|
217
274
|
return this.props.onChange('');
|
|
218
275
|
});
|
|
219
276
|
_defineProperty(this, "onRemoveOne", index => () => {
|
|
220
|
-
const
|
|
221
|
-
value
|
|
222
|
-
} = this.props;
|
|
277
|
+
const value = valueListToArray(this.props.value);
|
|
223
278
|
value.splice(index, 1);
|
|
224
279
|
return this.props.onChange(sizeOfValue(value) > 0 ? [...value] : null);
|
|
225
280
|
});
|
|
@@ -303,9 +358,10 @@ function withFileControl({
|
|
|
303
358
|
value,
|
|
304
359
|
field
|
|
305
360
|
} = this.props;
|
|
361
|
+
const items = valueListToSortableArray(value);
|
|
306
362
|
if (isMultiple(value)) {
|
|
307
363
|
return (0, _core.jsx)(SortableMultiImageWrapper, {
|
|
308
|
-
items:
|
|
364
|
+
items: items,
|
|
309
365
|
onSortEnd: this.onSortEnd,
|
|
310
366
|
onRemoveOne: this.onRemoveOne,
|
|
311
367
|
onReplaceOne: this.onReplaceOne,
|
|
@@ -346,7 +402,7 @@ function withFileControl({
|
|
|
346
402
|
onClick: this.handleUrl(subject)
|
|
347
403
|
}, t(`editor.editorWidgets.${subject}.chooseUrl`)) : null);
|
|
348
404
|
});
|
|
349
|
-
this.controlID = (0,
|
|
405
|
+
this.controlID = (0, _uuid.v4)();
|
|
350
406
|
}
|
|
351
407
|
shouldComponentUpdate(nextProps) {
|
|
352
408
|
/**
|