"use strict"; (self["webpackChunk_core_volunteer_app"] = self["webpackChunk_core_volunteer_app"] || []).push([["main-src_services_p"],{ /***/ "./src/services/province/core/actions.ts": /*!***********************************************!*\ !*** ./src/services/province/core/actions.ts ***! \***********************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ createProvinceAction: () => (/* binding */ createProvinceAction), /* harmony export */ deleteProvinceAction: () => (/* binding */ deleteProvinceAction), /* harmony export */ fetchProvinces: () => (/* binding */ fetchProvinces), /* harmony export */ provinceDetailAction: () => (/* binding */ provinceDetailAction), /* harmony export */ updateProvinceAction: () => (/* binding */ updateProvinceAction) /* harmony export */ }); /* harmony import */ var _reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @reduxjs/toolkit */ "../../../node_modules/@reduxjs/toolkit/dist/redux-toolkit.modern.mjs"); /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants */ "./src/services/province/core/constants.ts"); /* harmony import */ var _services__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./services */ "./src/services/province/core/services.ts"); function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { if (r) i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n;else { var o = function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); }; o("next", 0), o("throw", 1), o("return", 2); } }, _regeneratorDefine2(e, r, n, t); } function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } var fetchProvinces = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_0__.PROVINCES, _services__WEBPACK_IMPORTED_MODULE_1__.provincesService); var provinceDetailAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_0__.PROVINCE, _services__WEBPACK_IMPORTED_MODULE_1__.provinceDetailService); var createProvinceAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_0__.PROVINCE_CREATE, /*#__PURE__*/function () { var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(_ref, _ref2) { var data, rejectWithValue, _error$response, _t; return _regenerator().w(function (_context) { while (1) switch (_context.n) { case 0: data = _ref.data; rejectWithValue = _ref2.rejectWithValue; _context.p = 1; _context.n = 2; return (0,_services__WEBPACK_IMPORTED_MODULE_1__.createProvinceService)(data); case 2: return _context.a(2, _context.v); case 3: _context.p = 3; _t = _context.v; return _context.a(2, rejectWithValue(((_error$response = _t.response) === null || _error$response === void 0 || (_error$response = _error$response.data) === null || _error$response === void 0 ? void 0 : _error$response.message) || "Failed to create province")); } }, _callee, null, [[1, 3]]); })); return function (_x, _x2) { return _ref3.apply(this, arguments); }; }()); var updateProvinceAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_0__.PROVINCE_UPDATE, /*#__PURE__*/function () { var _ref6 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(_ref4, _ref5) { var id, data, rejectWithValue, _error$response2, _t2; return _regenerator().w(function (_context2) { while (1) switch (_context2.n) { case 0: id = _ref4.id, data = _ref4.data; rejectWithValue = _ref5.rejectWithValue; _context2.p = 1; _context2.n = 2; return (0,_services__WEBPACK_IMPORTED_MODULE_1__.updateProvinceService)(id, data); case 2: return _context2.a(2, _context2.v); case 3: _context2.p = 3; _t2 = _context2.v; return _context2.a(2, rejectWithValue(((_error$response2 = _t2.response) === null || _error$response2 === void 0 || (_error$response2 = _error$response2.data) === null || _error$response2 === void 0 ? void 0 : _error$response2.message) || "Failed to update province")); } }, _callee2, null, [[1, 3]]); })); return function (_x3, _x4) { return _ref6.apply(this, arguments); }; }()); var deleteProvinceAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_0__.PROVINCE_DELETE, _services__WEBPACK_IMPORTED_MODULE_1__.deleteProvinceService); /***/ }), /***/ "./src/services/province/core/constants.ts": /*!*************************************************!*\ !*** ./src/services/province/core/constants.ts ***! \*************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ PROVINCE: () => (/* binding */ PROVINCE), /* harmony export */ PROVINCES: () => (/* binding */ PROVINCES), /* harmony export */ PROVINCE_CREATE: () => (/* binding */ PROVINCE_CREATE), /* harmony export */ PROVINCE_DELETE: () => (/* binding */ PROVINCE_DELETE), /* harmony export */ PROVINCE_UPDATE: () => (/* binding */ PROVINCE_UPDATE) /* harmony export */ }); var PROVINCES = 'provinces/fetchAll'; var PROVINCE = 'provinces/fetchByID'; var PROVINCE_CREATE = 'provinces/create'; var PROVINCE_UPDATE = 'provinces/update'; var PROVINCE_DELETE = 'provinces/delete'; /***/ }), /***/ "./src/services/province/core/reducer.ts": /*!***********************************************!*\ !*** ./src/services/province/core/reducer.ts ***! \***********************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__), /* harmony export */ provinceSlice: () => (/* binding */ provinceSlice), /* harmony export */ setProvince: () => (/* binding */ setProvince), /* harmony export */ setRegisterErrorMessage: () => (/* binding */ setRegisterErrorMessage) /* harmony export */ }); /* harmony import */ var _reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @reduxjs/toolkit */ "../../../node_modules/@reduxjs/toolkit/dist/redux-toolkit.modern.mjs"); /* harmony import */ var _actions__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./actions */ "./src/services/province/core/actions.ts"); /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./constants */ "./src/services/province/core/constants.ts"); /* eslint-disable no-console */ var initialState = { provinces: [], province: null, provincesPending: false, provinceDetailPending: false, provinceCreatePending: false, provinceUpdatePending: false, provinceDeletePending: false, registerErrorMessage: '' }; var provinceSlice = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createSlice)({ name: _constants__WEBPACK_IMPORTED_MODULE_1__.PROVINCE, initialState: initialState, reducers: { // Sets the current province setProvince: function setProvince(state, action) { state.province = action.payload; }, // Updates the register error message setRegisterErrorMessage: function setRegisterErrorMessage(state, action) { state.registerErrorMessage = action.payload; } }, extraReducers: function extraReducers(builder) { builder // handle province .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.fetchProvinces.pending, function (state) { state.provincesPending = true; state.registerErrorMessage = ''; }) // Handles rejected provinces fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.fetchProvinces.rejected, function (state, action) { state.provincesPending = false; state.registerErrorMessage = action.error.message || 'Failed to fetch provinces.'; }) // Handles fulfilled provinces fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.fetchProvinces.fulfilled, function (state, action) { var payload = action.payload; state.provinces = payload; state.provincesPending = false; state.registerErrorMessage = ''; }) // handle province detail .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.provinceDetailAction.pending, function (state) { state.provinceDetailPending = true; state.registerErrorMessage = ''; }) // Handles rejected provinces fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.provinceDetailAction.rejected, function (state, action) { state.provinceDetailPending = false; state.registerErrorMessage = action.error.message || 'Failed to fetch provinces.'; }) // Handles fulfilled provinces fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.provinceDetailAction.fulfilled, function (state, action) { var payload = action.payload; state.province = payload; state.provinceDetailPending = false; state.registerErrorMessage = ''; }) // handle province create .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.createProvinceAction.pending, function (state) { state.provinceUpdatePending = true; state.registerErrorMessage = ''; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.createProvinceAction.rejected, function (state, action) { state.provinceUpdatePending = false; state.registerErrorMessage = action.error.message || 'Failed to create provinces.'; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.createProvinceAction.fulfilled, function (state, action) { state.province = action.payload; state.provinceUpdatePending = false; state.registerErrorMessage = ''; }) // handle province update .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.updateProvinceAction.pending, function (state) { state.provinceUpdatePending = true; state.registerErrorMessage = ''; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.updateProvinceAction.rejected, function (state, action) { state.provinceUpdatePending = false; state.registerErrorMessage = action.error.message || 'Failed to update provinces.'; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.updateProvinceAction.fulfilled, function (state, action) { state.province = action.payload; state.provinceUpdatePending = false; state.registerErrorMessage = ''; }) // handle province delete .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.deleteProvinceAction.pending, function (state) { state.provinceUpdatePending = true; state.registerErrorMessage = ''; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.deleteProvinceAction.rejected, function (state, action) { state.provinceUpdatePending = false; state.registerErrorMessage = action.error.message || 'Failed to delete provinces.'; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.deleteProvinceAction.fulfilled, function (state, action) { state.province = action.payload; state.provinceUpdatePending = false; state.registerErrorMessage = ''; }); } }); var _provinceSlice$action = provinceSlice.actions, setRegisterErrorMessage = _provinceSlice$action.setRegisterErrorMessage, setProvince = _provinceSlice$action.setProvince; /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (provinceSlice.reducer); /***/ }), /***/ "./src/services/province/core/services.ts": /*!************************************************!*\ !*** ./src/services/province/core/services.ts ***! \************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ createProvinceService: () => (/* binding */ createProvinceService), /* harmony export */ deleteProvinceService: () => (/* binding */ deleteProvinceService), /* harmony export */ provinceDetailService: () => (/* binding */ provinceDetailService), /* harmony export */ provincesService: () => (/* binding */ provincesService), /* harmony export */ updateProvinceService: () => (/* binding */ updateProvinceService) /* harmony export */ }); /* harmony import */ var _shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../shared/configs/constants */ "./src/shared/configs/constants.ts"); /* harmony import */ var _shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../shared/core/base/services */ "./src/shared/core/base/services.ts"); function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { if (r) i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n;else { var o = function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); }; o("next", 0), o("throw", 1), o("return", 2); } }, _regeneratorDefine2(e, r, n, t); } function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } var provincesService = /*#__PURE__*/function () { var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() { return _regenerator().w(function (_context) { while (1) switch (_context.n) { case 0: _context.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.PROVINCE); case 1: return _context.a(2, _context.v); } }, _callee); })); return function provincesService() { return _ref.apply(this, arguments); }; }(); var provinceDetailService = /*#__PURE__*/function () { var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(id) { return _regenerator().w(function (_context2) { while (1) switch (_context2.n) { case 0: _context2.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.PROVINCE).concat(id)); case 1: return _context2.a(2, _context2.v); } }, _callee2); })); return function provinceDetailService(_x) { return _ref2.apply(this, arguments); }; }(); var createProvinceService = /*#__PURE__*/function () { var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(data) { return _regenerator().w(function (_context3) { while (1) switch (_context3.n) { case 0: return _context3.a(2, (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.postWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.PROVINCE), data)); } }, _callee3); })); return function createProvinceService(_x2) { return _ref3.apply(this, arguments); }; }(); var updateProvinceService = /*#__PURE__*/function () { var _ref4 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4(id, data) { return _regenerator().w(function (_context4) { while (1) switch (_context4.n) { case 0: return _context4.a(2, (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.putWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.PROVINCE).concat(id), data)); } }, _callee4); })); return function updateProvinceService(_x3, _x4) { return _ref4.apply(this, arguments); }; }(); var deleteProvinceService = /*#__PURE__*/function () { var _ref5 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5(id) { return _regenerator().w(function (_context5) { while (1) switch (_context5.n) { case 0: _context5.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.removeWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.PROVINCE).concat(id)); case 1: return _context5.a(2, _context5.v); } }, _callee5); })); return function deleteProvinceService(_x5) { return _ref5.apply(this, arguments); }; }(); /***/ }), /***/ "./src/services/skill/core/actions.ts": /*!********************************************!*\ !*** ./src/services/skill/core/actions.ts ***! \********************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ createSkillAction: () => (/* binding */ createSkillAction), /* harmony export */ deleteSkillAction: () => (/* binding */ deleteSkillAction), /* harmony export */ fetchSkills: () => (/* binding */ fetchSkills), /* harmony export */ skillDetailAction: () => (/* binding */ skillDetailAction), /* harmony export */ updateSkillAction: () => (/* binding */ updateSkillAction) /* harmony export */ }); /* harmony import */ var _reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @reduxjs/toolkit */ "../../../node_modules/@reduxjs/toolkit/dist/redux-toolkit.modern.mjs"); /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants */ "./src/services/skill/core/constants.ts"); /* harmony import */ var _services__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./services */ "./src/services/skill/core/services.ts"); function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { if (r) i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n;else { var o = function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); }; o("next", 0), o("throw", 1), o("return", 2); } }, _regeneratorDefine2(e, r, n, t); } function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } var fetchSkills = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_0__.SKILLS, _services__WEBPACK_IMPORTED_MODULE_1__.skillsService); var skillDetailAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_0__.SKILL, _services__WEBPACK_IMPORTED_MODULE_1__.skillDetailService); var createSkillAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_0__.SKILL_CREATE, /*#__PURE__*/function () { var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(_ref, _ref2) { var data, rejectWithValue, _error$response, _t; return _regenerator().w(function (_context) { while (1) switch (_context.n) { case 0: data = _ref.data; rejectWithValue = _ref2.rejectWithValue; _context.p = 1; _context.n = 2; return (0,_services__WEBPACK_IMPORTED_MODULE_1__.createSkillService)(data); case 2: return _context.a(2, _context.v); case 3: _context.p = 3; _t = _context.v; return _context.a(2, rejectWithValue(((_error$response = _t.response) === null || _error$response === void 0 || (_error$response = _error$response.data) === null || _error$response === void 0 ? void 0 : _error$response.message) || "Failed to create skill")); } }, _callee, null, [[1, 3]]); })); return function (_x, _x2) { return _ref3.apply(this, arguments); }; }()); var updateSkillAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_0__.SKILL_UPDATE, /*#__PURE__*/function () { var _ref6 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(_ref4, _ref5) { var id, data, rejectWithValue, _error$response2, _t2; return _regenerator().w(function (_context2) { while (1) switch (_context2.n) { case 0: id = _ref4.id, data = _ref4.data; rejectWithValue = _ref5.rejectWithValue; _context2.p = 1; _context2.n = 2; return (0,_services__WEBPACK_IMPORTED_MODULE_1__.updateSkillService)(id, data); case 2: return _context2.a(2, _context2.v); case 3: _context2.p = 3; _t2 = _context2.v; return _context2.a(2, rejectWithValue(((_error$response2 = _t2.response) === null || _error$response2 === void 0 || (_error$response2 = _error$response2.data) === null || _error$response2 === void 0 ? void 0 : _error$response2.message) || "Failed to update skill")); } }, _callee2, null, [[1, 3]]); })); return function (_x3, _x4) { return _ref6.apply(this, arguments); }; }()); var deleteSkillAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_0__.SKILL_DELETE, _services__WEBPACK_IMPORTED_MODULE_1__.deleteSkillService); /***/ }), /***/ "./src/services/skill/core/constants.ts": /*!**********************************************!*\ !*** ./src/services/skill/core/constants.ts ***! \**********************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ SKILL: () => (/* binding */ SKILL), /* harmony export */ SKILLS: () => (/* binding */ SKILLS), /* harmony export */ SKILL_CREATE: () => (/* binding */ SKILL_CREATE), /* harmony export */ SKILL_DELETE: () => (/* binding */ SKILL_DELETE), /* harmony export */ SKILL_UPDATE: () => (/* binding */ SKILL_UPDATE) /* harmony export */ }); var SKILLS = 'skills/fetchAll'; var SKILL = 'skills/fetchByID'; var SKILL_CREATE = 'skills/create'; var SKILL_UPDATE = 'skills/update'; var SKILL_DELETE = 'skills/delete'; /***/ }), /***/ "./src/services/skill/core/reducer.ts": /*!********************************************!*\ !*** ./src/services/skill/core/reducer.ts ***! \********************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__), /* harmony export */ setRegisterErrorMessage: () => (/* binding */ setRegisterErrorMessage), /* harmony export */ setSkill: () => (/* binding */ setSkill), /* harmony export */ skillSlice: () => (/* binding */ skillSlice) /* harmony export */ }); /* harmony import */ var _reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @reduxjs/toolkit */ "../../../node_modules/@reduxjs/toolkit/dist/redux-toolkit.modern.mjs"); /* harmony import */ var _actions__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./actions */ "./src/services/skill/core/actions.ts"); /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./constants */ "./src/services/skill/core/constants.ts"); /* eslint-disable no-console */ var initialState = { skills: [], skill: null, skillsPending: false, skillDetailPending: false, skillCreatePending: false, skillUpdatePending: false, skillDeletePending: false, registerErrorMessage: '' }; var skillSlice = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createSlice)({ name: _constants__WEBPACK_IMPORTED_MODULE_1__.SKILL, initialState: initialState, reducers: { // Sets the current skill setSkill: function setSkill(state, action) { state.skill = action.payload; }, // Updates the register error message setRegisterErrorMessage: function setRegisterErrorMessage(state, action) { state.registerErrorMessage = action.payload; } }, extraReducers: function extraReducers(builder) { builder // handle skill .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.fetchSkills.pending, function (state) { state.skillsPending = true; state.registerErrorMessage = ''; }) // Handles rejected skills fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.fetchSkills.rejected, function (state, action) { state.skillsPending = false; state.registerErrorMessage = action.error.message || 'Failed to fetch skills.'; }) // Handles fulfilled skills fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.fetchSkills.fulfilled, function (state, action) { var payload = action.payload; state.skills = payload; state.skillsPending = false; state.registerErrorMessage = ''; }) // handle skill detail .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.skillDetailAction.pending, function (state) { state.skillDetailPending = true; state.registerErrorMessage = ''; }) // Handles rejected skills fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.skillDetailAction.rejected, function (state, action) { state.skillDetailPending = false; state.registerErrorMessage = action.error.message || 'Failed to fetch skills.'; }) // Handles fulfilled skills fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.skillDetailAction.fulfilled, function (state, action) { var payload = action.payload; state.skill = payload; state.skillDetailPending = false; state.registerErrorMessage = ''; }) // handle skill create .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.createSkillAction.pending, function (state) { state.skillUpdatePending = true; state.registerErrorMessage = ''; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.createSkillAction.rejected, function (state, action) { state.skillUpdatePending = false; state.registerErrorMessage = action.error.message || 'Failed to create skills.'; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.createSkillAction.fulfilled, function (state, action) { state.skill = action.payload; state.skillUpdatePending = false; state.registerErrorMessage = ''; }) // handle skill update .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.updateSkillAction.pending, function (state) { state.skillUpdatePending = true; state.registerErrorMessage = ''; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.updateSkillAction.rejected, function (state, action) { state.skillUpdatePending = false; state.registerErrorMessage = action.error.message || 'Failed to update skills.'; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.updateSkillAction.fulfilled, function (state, action) { state.skill = action.payload; state.skillUpdatePending = false; state.registerErrorMessage = ''; }) // handle skill delete .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.deleteSkillAction.pending, function (state) { state.skillUpdatePending = true; state.registerErrorMessage = ''; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.deleteSkillAction.rejected, function (state, action) { state.skillUpdatePending = false; state.registerErrorMessage = action.error.message || 'Failed to delete skills.'; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.deleteSkillAction.fulfilled, function (state, action) { state.skill = action.payload; state.skillUpdatePending = false; state.registerErrorMessage = ''; }); } }); var _skillSlice$actions = skillSlice.actions, setRegisterErrorMessage = _skillSlice$actions.setRegisterErrorMessage, setSkill = _skillSlice$actions.setSkill; /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (skillSlice.reducer); /***/ }), /***/ "./src/services/skill/core/services.ts": /*!*********************************************!*\ !*** ./src/services/skill/core/services.ts ***! \*********************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ createSkillService: () => (/* binding */ createSkillService), /* harmony export */ deleteSkillService: () => (/* binding */ deleteSkillService), /* harmony export */ skillDetailService: () => (/* binding */ skillDetailService), /* harmony export */ skillsService: () => (/* binding */ skillsService), /* harmony export */ updateSkillService: () => (/* binding */ updateSkillService) /* harmony export */ }); /* harmony import */ var _shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../shared/configs/constants */ "./src/shared/configs/constants.ts"); /* harmony import */ var _shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../shared/core/base/services */ "./src/shared/core/base/services.ts"); function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { if (r) i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n;else { var o = function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); }; o("next", 0), o("throw", 1), o("return", 2); } }, _regeneratorDefine2(e, r, n, t); } function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } var skillsService = /*#__PURE__*/function () { var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() { return _regenerator().w(function (_context) { while (1) switch (_context.n) { case 0: _context.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.SKILL); case 1: return _context.a(2, _context.v); } }, _callee); })); return function skillsService() { return _ref.apply(this, arguments); }; }(); var skillDetailService = /*#__PURE__*/function () { var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(id) { return _regenerator().w(function (_context2) { while (1) switch (_context2.n) { case 0: _context2.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.SKILL).concat(id)); case 1: return _context2.a(2, _context2.v); } }, _callee2); })); return function skillDetailService(_x) { return _ref2.apply(this, arguments); }; }(); var createSkillService = /*#__PURE__*/function () { var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(data) { return _regenerator().w(function (_context3) { while (1) switch (_context3.n) { case 0: return _context3.a(2, (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.postWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.SKILL), data)); } }, _callee3); })); return function createSkillService(_x2) { return _ref3.apply(this, arguments); }; }(); var updateSkillService = /*#__PURE__*/function () { var _ref4 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4(id, data) { return _regenerator().w(function (_context4) { while (1) switch (_context4.n) { case 0: return _context4.a(2, (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.putWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.SKILL).concat(id), data)); } }, _callee4); })); return function updateSkillService(_x3, _x4) { return _ref4.apply(this, arguments); }; }(); var deleteSkillService = /*#__PURE__*/function () { var _ref5 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5(id) { return _regenerator().w(function (_context5) { while (1) switch (_context5.n) { case 0: _context5.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.removeWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.SKILL).concat(id)); case 1: return _context5.a(2, _context5.v); } }, _callee5); })); return function deleteSkillService(_x5) { return _ref5.apply(this, arguments); }; }(); /***/ }), /***/ "./src/services/terms_condition/core/actions.ts": /*!******************************************************!*\ !*** ./src/services/terms_condition/core/actions.ts ***! \******************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ createTermsConditionAction: () => (/* binding */ createTermsConditionAction), /* harmony export */ deleteTermsConditionAction: () => (/* binding */ deleteTermsConditionAction), /* harmony export */ fetchTermsConditions: () => (/* binding */ fetchTermsConditions), /* harmony export */ termsConditionDetailAction: () => (/* binding */ termsConditionDetailAction), /* harmony export */ updateTermsConditionAction: () => (/* binding */ updateTermsConditionAction) /* harmony export */ }); /* harmony import */ var _reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @reduxjs/toolkit */ "../../../node_modules/@reduxjs/toolkit/dist/redux-toolkit.modern.mjs"); /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants */ "./src/services/terms_condition/core/constants.ts"); /* harmony import */ var _services__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./services */ "./src/services/terms_condition/core/services.ts"); function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { if (r) i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n;else { var o = function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); }; o("next", 0), o("throw", 1), o("return", 2); } }, _regeneratorDefine2(e, r, n, t); } function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } var fetchTermsConditions = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_0__.TERMS_CONDITIONS, _services__WEBPACK_IMPORTED_MODULE_1__.termsConditionsService); var termsConditionDetailAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_0__.TERMS_CONDITION, _services__WEBPACK_IMPORTED_MODULE_1__.termsConditionDetailService); var createTermsConditionAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_0__.TERMS_CONDITION_CREATE, /*#__PURE__*/function () { var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(_ref, _ref2) { var data, rejectWithValue, _error$response, _t; return _regenerator().w(function (_context) { while (1) switch (_context.n) { case 0: data = _ref.data; rejectWithValue = _ref2.rejectWithValue; _context.p = 1; _context.n = 2; return (0,_services__WEBPACK_IMPORTED_MODULE_1__.createTermsConditionService)(data); case 2: return _context.a(2, _context.v); case 3: _context.p = 3; _t = _context.v; return _context.a(2, rejectWithValue(((_error$response = _t.response) === null || _error$response === void 0 || (_error$response = _error$response.data) === null || _error$response === void 0 ? void 0 : _error$response.message) || "Failed to create terms condition")); } }, _callee, null, [[1, 3]]); })); return function (_x, _x2) { return _ref3.apply(this, arguments); }; }()); var updateTermsConditionAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_0__.TERMS_CONDITION_UPDATE, /*#__PURE__*/function () { var _ref6 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(_ref4, _ref5) { var id, data, rejectWithValue, _error$response2, _t2; return _regenerator().w(function (_context2) { while (1) switch (_context2.n) { case 0: id = _ref4.id, data = _ref4.data; rejectWithValue = _ref5.rejectWithValue; _context2.p = 1; _context2.n = 2; return (0,_services__WEBPACK_IMPORTED_MODULE_1__.updateTermsConditionService)(id, data); case 2: return _context2.a(2, _context2.v); case 3: _context2.p = 3; _t2 = _context2.v; return _context2.a(2, rejectWithValue(((_error$response2 = _t2.response) === null || _error$response2 === void 0 || (_error$response2 = _error$response2.data) === null || _error$response2 === void 0 ? void 0 : _error$response2.message) || "Failed to update terms condition")); } }, _callee2, null, [[1, 3]]); })); return function (_x3, _x4) { return _ref6.apply(this, arguments); }; }()); var deleteTermsConditionAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_0__.TERMS_CONDITION_DELETE, _services__WEBPACK_IMPORTED_MODULE_1__.deleteTermsConditionService); /***/ }), /***/ "./src/services/terms_condition/core/constants.ts": /*!********************************************************!*\ !*** ./src/services/terms_condition/core/constants.ts ***! \********************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ TERMS_CONDITION: () => (/* binding */ TERMS_CONDITION), /* harmony export */ TERMS_CONDITIONS: () => (/* binding */ TERMS_CONDITIONS), /* harmony export */ TERMS_CONDITION_CREATE: () => (/* binding */ TERMS_CONDITION_CREATE), /* harmony export */ TERMS_CONDITION_DELETE: () => (/* binding */ TERMS_CONDITION_DELETE), /* harmony export */ TERMS_CONDITION_UPDATE: () => (/* binding */ TERMS_CONDITION_UPDATE) /* harmony export */ }); var TERMS_CONDITIONS = 'terms-conditions/fetchAll'; var TERMS_CONDITION = 'terms-conditions/fetchByID'; var TERMS_CONDITION_CREATE = 'terms-conditions/create'; var TERMS_CONDITION_UPDATE = 'terms-conditions/update'; var TERMS_CONDITION_DELETE = 'terms-conditions/delete'; /***/ }), /***/ "./src/services/terms_condition/core/reducer.ts": /*!******************************************************!*\ !*** ./src/services/terms_condition/core/reducer.ts ***! \******************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__), /* harmony export */ setRegisterErrorMessage: () => (/* binding */ setRegisterErrorMessage), /* harmony export */ setTermsCondition: () => (/* binding */ setTermsCondition), /* harmony export */ termsConditionSlice: () => (/* binding */ termsConditionSlice) /* harmony export */ }); /* harmony import */ var _reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @reduxjs/toolkit */ "../../../node_modules/@reduxjs/toolkit/dist/redux-toolkit.modern.mjs"); /* harmony import */ var _actions__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./actions */ "./src/services/terms_condition/core/actions.ts"); /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./constants */ "./src/services/terms_condition/core/constants.ts"); /* eslint-disable no-console */ var initialState = { termsConditions: [], termsCondition: null, termsConditionsPending: false, termsConditionDetailPending: false, termsConditionCreatePending: false, termsConditionUpdatePending: false, termsConditionDeletePending: false, registerErrorMessage: '' }; var termsConditionSlice = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createSlice)({ name: _constants__WEBPACK_IMPORTED_MODULE_1__.TERMS_CONDITION, initialState: initialState, reducers: { // Sets the current termsCondition setTermsCondition: function setTermsCondition(state, action) { state.termsCondition = action.payload; }, // Updates the register error message setRegisterErrorMessage: function setRegisterErrorMessage(state, action) { state.registerErrorMessage = action.payload; } }, extraReducers: function extraReducers(builder) { builder // handle terms condition .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.fetchTermsConditions.pending, function (state) { state.termsConditionsPending = true; state.registerErrorMessage = ''; }) // Handles rejected terms conditions fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.fetchTermsConditions.rejected, function (state, action) { state.termsConditionsPending = false; state.registerErrorMessage = action.error.message || 'Failed to fetch terms conditions.'; }) // Handles fulfilled terms conditions fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.fetchTermsConditions.fulfilled, function (state, action) { var payload = action.payload; state.termsConditions = payload; state.termsConditionsPending = false; state.registerErrorMessage = ''; }) // handle terms condition detail .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.termsConditionDetailAction.pending, function (state) { state.termsConditionDetailPending = true; state.registerErrorMessage = ''; }) // Handles rejected terms conditions fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.termsConditionDetailAction.rejected, function (state, action) { state.termsConditionDetailPending = false; state.registerErrorMessage = action.error.message || 'Failed to fetch terms conditions.'; }) // Handles fulfilled terms conditions fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.termsConditionDetailAction.fulfilled, function (state, action) { var payload = action.payload; state.termsCondition = payload; state.termsConditionDetailPending = false; state.registerErrorMessage = ''; }) // handle termsCondition create .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.createTermsConditionAction.pending, function (state) { state.termsConditionUpdatePending = true; state.registerErrorMessage = ''; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.createTermsConditionAction.rejected, function (state, action) { state.termsConditionUpdatePending = false; state.registerErrorMessage = action.error.message || 'Failed to create terms conditions.'; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.createTermsConditionAction.fulfilled, function (state, action) { state.termsCondition = action.payload; state.termsConditionUpdatePending = false; state.registerErrorMessage = ''; }) // handle termsCondition update .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.updateTermsConditionAction.pending, function (state) { state.termsConditionUpdatePending = true; state.registerErrorMessage = ''; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.updateTermsConditionAction.rejected, function (state, action) { state.termsConditionUpdatePending = false; state.registerErrorMessage = action.error.message || 'Failed to update terms conditions.'; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.updateTermsConditionAction.fulfilled, function (state, action) { state.termsCondition = action.payload; state.termsConditionUpdatePending = false; state.registerErrorMessage = ''; }) // handle termsCondition delete .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.deleteTermsConditionAction.pending, function (state) { state.termsConditionUpdatePending = true; state.registerErrorMessage = ''; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.deleteTermsConditionAction.rejected, function (state, action) { state.termsConditionUpdatePending = false; state.registerErrorMessage = action.error.message || 'Failed to delete terms conditions.'; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.deleteTermsConditionAction.fulfilled, function (state, action) { state.termsCondition = action.payload; state.termsConditionUpdatePending = false; state.registerErrorMessage = ''; }); } }); var _termsConditionSlice$ = termsConditionSlice.actions, setRegisterErrorMessage = _termsConditionSlice$.setRegisterErrorMessage, setTermsCondition = _termsConditionSlice$.setTermsCondition; /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (termsConditionSlice.reducer); /***/ }), /***/ "./src/services/terms_condition/core/services.ts": /*!*******************************************************!*\ !*** ./src/services/terms_condition/core/services.ts ***! \*******************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ createTermsConditionService: () => (/* binding */ createTermsConditionService), /* harmony export */ deleteTermsConditionService: () => (/* binding */ deleteTermsConditionService), /* harmony export */ termsConditionDetailService: () => (/* binding */ termsConditionDetailService), /* harmony export */ termsConditionsService: () => (/* binding */ termsConditionsService), /* harmony export */ updateTermsConditionService: () => (/* binding */ updateTermsConditionService) /* harmony export */ }); /* harmony import */ var _shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../shared/configs/constants */ "./src/shared/configs/constants.ts"); /* harmony import */ var _shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../shared/core/base/services */ "./src/shared/core/base/services.ts"); function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { if (r) i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n;else { var o = function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); }; o("next", 0), o("throw", 1), o("return", 2); } }, _regeneratorDefine2(e, r, n, t); } function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } var termsConditionsService = /*#__PURE__*/function () { var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() { return _regenerator().w(function (_context) { while (1) switch (_context.n) { case 0: _context.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.TERMS_CONDITION); case 1: return _context.a(2, _context.v); } }, _callee); })); return function termsConditionsService() { return _ref.apply(this, arguments); }; }(); var termsConditionDetailService = /*#__PURE__*/function () { var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(id) { return _regenerator().w(function (_context2) { while (1) switch (_context2.n) { case 0: _context2.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.TERMS_CONDITION).concat(id)); case 1: return _context2.a(2, _context2.v); } }, _callee2); })); return function termsConditionDetailService(_x) { return _ref2.apply(this, arguments); }; }(); var createTermsConditionService = /*#__PURE__*/function () { var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(data) { return _regenerator().w(function (_context3) { while (1) switch (_context3.n) { case 0: return _context3.a(2, (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.postWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.TERMS_CONDITION), data)); } }, _callee3); })); return function createTermsConditionService(_x2) { return _ref3.apply(this, arguments); }; }(); var updateTermsConditionService = /*#__PURE__*/function () { var _ref4 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4(id, data) { return _regenerator().w(function (_context4) { while (1) switch (_context4.n) { case 0: return _context4.a(2, (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.putWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.TERMS_CONDITION).concat(id), data)); } }, _callee4); })); return function updateTermsConditionService(_x3, _x4) { return _ref4.apply(this, arguments); }; }(); var deleteTermsConditionService = /*#__PURE__*/function () { var _ref5 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5(id) { return _regenerator().w(function (_context5) { while (1) switch (_context5.n) { case 0: _context5.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.removeWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.TERMS_CONDITION).concat(id)); case 1: return _context5.a(2, _context5.v); } }, _callee5); })); return function deleteTermsConditionService(_x5) { return _ref5.apply(this, arguments); }; }(); /***/ }), /***/ "./src/services/training_session/core/actions.ts": /*!*******************************************************!*\ !*** ./src/services/training_session/core/actions.ts ***! \*******************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ createTrainingSessionAction: () => (/* binding */ createTrainingSessionAction), /* harmony export */ deleteTrainingSessionAction: () => (/* binding */ deleteTrainingSessionAction), /* harmony export */ fetchTrainingSessions: () => (/* binding */ fetchTrainingSessions), /* harmony export */ trainingSessionDetailAction: () => (/* binding */ trainingSessionDetailAction), /* harmony export */ updateTrainingSessionAction: () => (/* binding */ updateTrainingSessionAction) /* harmony export */ }); /* harmony import */ var _reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @reduxjs/toolkit */ "../../../node_modules/@reduxjs/toolkit/dist/redux-toolkit.modern.mjs"); /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants */ "./src/services/training_session/core/constants.ts"); /* harmony import */ var _services__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./services */ "./src/services/training_session/core/services.ts"); function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { if (r) i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n;else { var o = function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); }; o("next", 0), o("throw", 1), o("return", 2); } }, _regeneratorDefine2(e, r, n, t); } function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } var fetchTrainingSessions = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_0__.TRAINING_SESSIONS, _services__WEBPACK_IMPORTED_MODULE_1__.trainingSessionsService); var trainingSessionDetailAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_0__.TRAINING_SESSION, _services__WEBPACK_IMPORTED_MODULE_1__.trainingSessionDetailService); var createTrainingSessionAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_0__.TRAINING_SESSION_CREATE, /*#__PURE__*/function () { var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(_ref, _ref2) { var data, rejectWithValue, _error$response, _t; return _regenerator().w(function (_context) { while (1) switch (_context.n) { case 0: data = _ref.data; rejectWithValue = _ref2.rejectWithValue; _context.p = 1; _context.n = 2; return (0,_services__WEBPACK_IMPORTED_MODULE_1__.createTrainingSessionService)(data); case 2: return _context.a(2, _context.v); case 3: _context.p = 3; _t = _context.v; return _context.a(2, rejectWithValue(((_error$response = _t.response) === null || _error$response === void 0 || (_error$response = _error$response.data) === null || _error$response === void 0 ? void 0 : _error$response.message) || "Failed to create training session")); } }, _callee, null, [[1, 3]]); })); return function (_x, _x2) { return _ref3.apply(this, arguments); }; }()); var updateTrainingSessionAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_0__.TRAINING_SESSION_UPDATE, /*#__PURE__*/function () { var _ref6 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(_ref4, _ref5) { var id, data, rejectWithValue, _error$response2, _t2; return _regenerator().w(function (_context2) { while (1) switch (_context2.n) { case 0: id = _ref4.id, data = _ref4.data; rejectWithValue = _ref5.rejectWithValue; _context2.p = 1; _context2.n = 2; return (0,_services__WEBPACK_IMPORTED_MODULE_1__.updateTrainingSessionService)(id, data); case 2: return _context2.a(2, _context2.v); case 3: _context2.p = 3; _t2 = _context2.v; return _context2.a(2, rejectWithValue(((_error$response2 = _t2.response) === null || _error$response2 === void 0 || (_error$response2 = _error$response2.data) === null || _error$response2 === void 0 ? void 0 : _error$response2.message) || "Failed to update training session")); } }, _callee2, null, [[1, 3]]); })); return function (_x3, _x4) { return _ref6.apply(this, arguments); }; }()); var deleteTrainingSessionAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_0__.TRAINING_SESSION_DELETE, _services__WEBPACK_IMPORTED_MODULE_1__.deleteTrainingSessionService); /***/ }), /***/ "./src/services/training_session/core/constants.ts": /*!*********************************************************!*\ !*** ./src/services/training_session/core/constants.ts ***! \*********************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ TRAINING_SESSION: () => (/* binding */ TRAINING_SESSION), /* harmony export */ TRAINING_SESSIONS: () => (/* binding */ TRAINING_SESSIONS), /* harmony export */ TRAINING_SESSION_CREATE: () => (/* binding */ TRAINING_SESSION_CREATE), /* harmony export */ TRAINING_SESSION_DELETE: () => (/* binding */ TRAINING_SESSION_DELETE), /* harmony export */ TRAINING_SESSION_UPDATE: () => (/* binding */ TRAINING_SESSION_UPDATE) /* harmony export */ }); var TRAINING_SESSIONS = 'training-sessions/fetchAll'; var TRAINING_SESSION = 'training-sessions/fetchByID'; var TRAINING_SESSION_CREATE = 'training-sessions/create'; var TRAINING_SESSION_UPDATE = 'training-sessions/update'; var TRAINING_SESSION_DELETE = 'training-sessions/delete'; /***/ }), /***/ "./src/services/training_session/core/reducer.ts": /*!*******************************************************!*\ !*** ./src/services/training_session/core/reducer.ts ***! \*******************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__), /* harmony export */ setRegisterErrorMessage: () => (/* binding */ setRegisterErrorMessage), /* harmony export */ setTrainingSession: () => (/* binding */ setTrainingSession), /* harmony export */ trainingSessionSlice: () => (/* binding */ trainingSessionSlice) /* harmony export */ }); /* harmony import */ var _reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @reduxjs/toolkit */ "../../../node_modules/@reduxjs/toolkit/dist/redux-toolkit.modern.mjs"); /* harmony import */ var _actions__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./actions */ "./src/services/training_session/core/actions.ts"); /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./constants */ "./src/services/training_session/core/constants.ts"); /* eslint-disable no-console */ var initialState = { trainingSessions: [], trainingSession: null, trainingSessionsPending: false, trainingSessionDetailPending: false, trainingSessionCreatePending: false, trainingSessionUpdatePending: false, trainingSessionDeletePending: false, registerErrorMessage: '' }; var trainingSessionSlice = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createSlice)({ name: _constants__WEBPACK_IMPORTED_MODULE_1__.TRAINING_SESSION, initialState: initialState, reducers: { // Sets the current trainingSession setTrainingSession: function setTrainingSession(state, action) { state.trainingSession = action.payload; }, // Updates the register error message setRegisterErrorMessage: function setRegisterErrorMessage(state, action) { state.registerErrorMessage = action.payload; } }, extraReducers: function extraReducers(builder) { builder // handle training session .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.fetchTrainingSessions.pending, function (state) { state.trainingSessionsPending = true; state.registerErrorMessage = ''; }) // Handles rejected training sessions fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.fetchTrainingSessions.rejected, function (state, action) { state.trainingSessionsPending = false; state.registerErrorMessage = action.error.message || 'Failed to fetch training sessions.'; }) // Handles fulfilled training sessions fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.fetchTrainingSessions.fulfilled, function (state, action) { var payload = action.payload; state.trainingSessions = payload; state.trainingSessionsPending = false; state.registerErrorMessage = ''; }) // handle training session detail .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.trainingSessionDetailAction.pending, function (state) { state.trainingSessionDetailPending = true; state.registerErrorMessage = ''; }) // Handles rejected training sessions fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.trainingSessionDetailAction.rejected, function (state, action) { state.trainingSessionDetailPending = false; state.registerErrorMessage = action.error.message || 'Failed to fetch training sessions.'; }) // Handles fulfilled training sessions fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.trainingSessionDetailAction.fulfilled, function (state, action) { var payload = action.payload; state.trainingSession = payload; state.trainingSessionDetailPending = false; state.registerErrorMessage = ''; }) // handle trainingSession create .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.createTrainingSessionAction.pending, function (state) { state.trainingSessionUpdatePending = true; state.registerErrorMessage = ''; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.createTrainingSessionAction.rejected, function (state, action) { state.trainingSessionUpdatePending = false; state.registerErrorMessage = action.error.message || 'Failed to create training sessions.'; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.createTrainingSessionAction.fulfilled, function (state, action) { state.trainingSession = action.payload; state.trainingSessionUpdatePending = false; state.registerErrorMessage = ''; }) // handle trainingSession update .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.updateTrainingSessionAction.pending, function (state) { state.trainingSessionUpdatePending = true; state.registerErrorMessage = ''; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.updateTrainingSessionAction.rejected, function (state, action) { state.trainingSessionUpdatePending = false; state.registerErrorMessage = action.error.message || 'Failed to update training sessions.'; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.updateTrainingSessionAction.fulfilled, function (state, action) { state.trainingSession = action.payload; state.trainingSessionUpdatePending = false; state.registerErrorMessage = ''; }) // handle trainingSession delete .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.deleteTrainingSessionAction.pending, function (state) { state.trainingSessionUpdatePending = true; state.registerErrorMessage = ''; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.deleteTrainingSessionAction.rejected, function (state, action) { state.trainingSessionUpdatePending = false; state.registerErrorMessage = action.error.message || 'Failed to delete training sessions.'; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.deleteTrainingSessionAction.fulfilled, function (state, action) { state.trainingSession = action.payload; state.trainingSessionUpdatePending = false; state.registerErrorMessage = ''; }); } }); var _trainingSessionSlice = trainingSessionSlice.actions, setRegisterErrorMessage = _trainingSessionSlice.setRegisterErrorMessage, setTrainingSession = _trainingSessionSlice.setTrainingSession; /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (trainingSessionSlice.reducer); /***/ }), /***/ "./src/services/training_session/core/services.ts": /*!********************************************************!*\ !*** ./src/services/training_session/core/services.ts ***! \********************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ createTrainingSessionService: () => (/* binding */ createTrainingSessionService), /* harmony export */ deleteTrainingSessionService: () => (/* binding */ deleteTrainingSessionService), /* harmony export */ trainingSessionDetailService: () => (/* binding */ trainingSessionDetailService), /* harmony export */ trainingSessionsService: () => (/* binding */ trainingSessionsService), /* harmony export */ updateTrainingSessionService: () => (/* binding */ updateTrainingSessionService) /* harmony export */ }); /* harmony import */ var _shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../shared/configs/constants */ "./src/shared/configs/constants.ts"); /* harmony import */ var _shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../shared/core/base/services */ "./src/shared/core/base/services.ts"); function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { if (r) i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n;else { var o = function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); }; o("next", 0), o("throw", 1), o("return", 2); } }, _regeneratorDefine2(e, r, n, t); } function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } var trainingSessionsService = /*#__PURE__*/function () { var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() { return _regenerator().w(function (_context) { while (1) switch (_context.n) { case 0: _context.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.TRAINING_SESSION); case 1: return _context.a(2, _context.v); } }, _callee); })); return function trainingSessionsService() { return _ref.apply(this, arguments); }; }(); var trainingSessionDetailService = /*#__PURE__*/function () { var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(id) { return _regenerator().w(function (_context2) { while (1) switch (_context2.n) { case 0: _context2.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.TRAINING_SESSION).concat(id)); case 1: return _context2.a(2, _context2.v); } }, _callee2); })); return function trainingSessionDetailService(_x) { return _ref2.apply(this, arguments); }; }(); var createTrainingSessionService = /*#__PURE__*/function () { var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(data) { return _regenerator().w(function (_context3) { while (1) switch (_context3.n) { case 0: return _context3.a(2, (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.postWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.TRAINING_SESSION), data)); } }, _callee3); })); return function createTrainingSessionService(_x2) { return _ref3.apply(this, arguments); }; }(); var updateTrainingSessionService = /*#__PURE__*/function () { var _ref4 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4(id, data) { return _regenerator().w(function (_context4) { while (1) switch (_context4.n) { case 0: return _context4.a(2, (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.putWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.TRAINING_SESSION).concat(id), data)); } }, _callee4); })); return function updateTrainingSessionService(_x3, _x4) { return _ref4.apply(this, arguments); }; }(); var deleteTrainingSessionService = /*#__PURE__*/function () { var _ref5 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5(id) { return _regenerator().w(function (_context5) { while (1) switch (_context5.n) { case 0: _context5.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.removeWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.TRAINING_SESSION).concat(id)); case 1: return _context5.a(2, _context5.v); } }, _callee5); })); return function deleteTrainingSessionService(_x5) { return _ref5.apply(this, arguments); }; }(); /***/ }), /***/ "./src/services/travel_day/core/actions.ts": /*!*************************************************!*\ !*** ./src/services/travel_day/core/actions.ts ***! \*************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ createTravelDayAction: () => (/* binding */ createTravelDayAction), /* harmony export */ deleteTravelDayAction: () => (/* binding */ deleteTravelDayAction), /* harmony export */ fetchTravelDays: () => (/* binding */ fetchTravelDays), /* harmony export */ travelDayDetailAction: () => (/* binding */ travelDayDetailAction), /* harmony export */ updateTravelDayAction: () => (/* binding */ updateTravelDayAction) /* harmony export */ }); /* harmony import */ var _reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @reduxjs/toolkit */ "../../../node_modules/@reduxjs/toolkit/dist/redux-toolkit.modern.mjs"); /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants */ "./src/services/travel_day/core/constants.ts"); /* harmony import */ var _services__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./services */ "./src/services/travel_day/core/services.ts"); function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { if (r) i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n;else { var o = function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); }; o("next", 0), o("throw", 1), o("return", 2); } }, _regeneratorDefine2(e, r, n, t); } function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } var fetchTravelDays = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_0__.TRAVEL_DAYS, _services__WEBPACK_IMPORTED_MODULE_1__.travelDaysService); var travelDayDetailAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_0__.TRAVEL_DAY, _services__WEBPACK_IMPORTED_MODULE_1__.travelDayDetailService); var createTravelDayAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_0__.TRAVEL_DAY_CREATE, /*#__PURE__*/function () { var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(_ref, _ref2) { var data, rejectWithValue, _error$response, _t; return _regenerator().w(function (_context) { while (1) switch (_context.n) { case 0: data = _ref.data; rejectWithValue = _ref2.rejectWithValue; _context.p = 1; _context.n = 2; return (0,_services__WEBPACK_IMPORTED_MODULE_1__.createTravelDayService)(data); case 2: return _context.a(2, _context.v); case 3: _context.p = 3; _t = _context.v; return _context.a(2, rejectWithValue(((_error$response = _t.response) === null || _error$response === void 0 || (_error$response = _error$response.data) === null || _error$response === void 0 ? void 0 : _error$response.message) || "Failed to create travel day")); } }, _callee, null, [[1, 3]]); })); return function (_x, _x2) { return _ref3.apply(this, arguments); }; }()); var updateTravelDayAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_0__.TRAVEL_DAY_UPDATE, /*#__PURE__*/function () { var _ref6 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(_ref4, _ref5) { var id, data, rejectWithValue, _error$response2, _t2; return _regenerator().w(function (_context2) { while (1) switch (_context2.n) { case 0: id = _ref4.id, data = _ref4.data; rejectWithValue = _ref5.rejectWithValue; _context2.p = 1; _context2.n = 2; return (0,_services__WEBPACK_IMPORTED_MODULE_1__.updateTravelDayService)(id, data); case 2: return _context2.a(2, _context2.v); case 3: _context2.p = 3; _t2 = _context2.v; return _context2.a(2, rejectWithValue(((_error$response2 = _t2.response) === null || _error$response2 === void 0 || (_error$response2 = _error$response2.data) === null || _error$response2 === void 0 ? void 0 : _error$response2.message) || "Failed to update travel day")); } }, _callee2, null, [[1, 3]]); })); return function (_x3, _x4) { return _ref6.apply(this, arguments); }; }()); var deleteTravelDayAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_0__.TRAVEL_DAY_DELETE, _services__WEBPACK_IMPORTED_MODULE_1__.deleteTravelDayService); /***/ }), /***/ "./src/services/travel_day/core/constants.ts": /*!***************************************************!*\ !*** ./src/services/travel_day/core/constants.ts ***! \***************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ TRAVEL_DAY: () => (/* binding */ TRAVEL_DAY), /* harmony export */ TRAVEL_DAYS: () => (/* binding */ TRAVEL_DAYS), /* harmony export */ TRAVEL_DAY_CREATE: () => (/* binding */ TRAVEL_DAY_CREATE), /* harmony export */ TRAVEL_DAY_DELETE: () => (/* binding */ TRAVEL_DAY_DELETE), /* harmony export */ TRAVEL_DAY_UPDATE: () => (/* binding */ TRAVEL_DAY_UPDATE) /* harmony export */ }); var TRAVEL_DAYS = 'travel-days/fetchAll'; var TRAVEL_DAY = 'travel-days/fetchByID'; var TRAVEL_DAY_CREATE = 'travel-days/create'; var TRAVEL_DAY_UPDATE = 'travel-days/update'; var TRAVEL_DAY_DELETE = 'travel-days/delete'; /***/ }), /***/ "./src/services/travel_day/core/reducer.ts": /*!*************************************************!*\ !*** ./src/services/travel_day/core/reducer.ts ***! \*************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__), /* harmony export */ setRegisterErrorMessage: () => (/* binding */ setRegisterErrorMessage), /* harmony export */ setTravelDay: () => (/* binding */ setTravelDay), /* harmony export */ travelDaySlice: () => (/* binding */ travelDaySlice) /* harmony export */ }); /* harmony import */ var _reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @reduxjs/toolkit */ "../../../node_modules/@reduxjs/toolkit/dist/redux-toolkit.modern.mjs"); /* harmony import */ var _actions__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./actions */ "./src/services/travel_day/core/actions.ts"); /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./constants */ "./src/services/travel_day/core/constants.ts"); /* eslint-disable no-console */ var initialState = { travelDays: [], travelDay: null, travelDaysPending: false, travelDayDetailPending: false, travelDayCreatePending: false, travelDayUpdatePending: false, travelDayDeletePending: false, registerErrorMessage: '' }; var travelDaySlice = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createSlice)({ name: _constants__WEBPACK_IMPORTED_MODULE_1__.TRAVEL_DAY, initialState: initialState, reducers: { // Sets the current travelDay setTravelDay: function setTravelDay(state, action) { state.travelDay = action.payload; }, // Updates the register error message setRegisterErrorMessage: function setRegisterErrorMessage(state, action) { state.registerErrorMessage = action.payload; } }, extraReducers: function extraReducers(builder) { builder // handle travel day .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.fetchTravelDays.pending, function (state) { state.travelDaysPending = true; state.registerErrorMessage = ''; }) // Handles rejected travel days fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.fetchTravelDays.rejected, function (state, action) { state.travelDaysPending = false; state.registerErrorMessage = action.error.message || 'Failed to fetch travel days.'; }) // Handles fulfilled travel days fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.fetchTravelDays.fulfilled, function (state, action) { var payload = action.payload; state.travelDays = payload; state.travelDaysPending = false; state.registerErrorMessage = ''; }) // handle travel day detail .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.travelDayDetailAction.pending, function (state) { state.travelDayDetailPending = true; state.registerErrorMessage = ''; }) // Handles rejected travel days fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.travelDayDetailAction.rejected, function (state, action) { state.travelDayDetailPending = false; state.registerErrorMessage = action.error.message || 'Failed to fetch travel days.'; }) // Handles fulfilled travel days fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.travelDayDetailAction.fulfilled, function (state, action) { var payload = action.payload; state.travelDay = payload; state.travelDayDetailPending = false; state.registerErrorMessage = ''; }) // handle travelDay create .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.createTravelDayAction.pending, function (state) { state.travelDayUpdatePending = true; state.registerErrorMessage = ''; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.createTravelDayAction.rejected, function (state, action) { state.travelDayUpdatePending = false; state.registerErrorMessage = action.error.message || 'Failed to create travel days.'; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.createTravelDayAction.fulfilled, function (state, action) { state.travelDay = action.payload; state.travelDayUpdatePending = false; state.registerErrorMessage = ''; }) // handle travelDay update .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.updateTravelDayAction.pending, function (state) { state.travelDayUpdatePending = true; state.registerErrorMessage = ''; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.updateTravelDayAction.rejected, function (state, action) { state.travelDayUpdatePending = false; state.registerErrorMessage = action.error.message || 'Failed to update travel days.'; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.updateTravelDayAction.fulfilled, function (state, action) { state.travelDay = action.payload; state.travelDayUpdatePending = false; state.registerErrorMessage = ''; }) // handle travelDay delete .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.deleteTravelDayAction.pending, function (state) { state.travelDayUpdatePending = true; state.registerErrorMessage = ''; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.deleteTravelDayAction.rejected, function (state, action) { state.travelDayUpdatePending = false; state.registerErrorMessage = action.error.message || 'Failed to delete travel days.'; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.deleteTravelDayAction.fulfilled, function (state, action) { state.travelDay = action.payload; state.travelDayUpdatePending = false; state.registerErrorMessage = ''; }); } }); var _travelDaySlice$actio = travelDaySlice.actions, setRegisterErrorMessage = _travelDaySlice$actio.setRegisterErrorMessage, setTravelDay = _travelDaySlice$actio.setTravelDay; /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (travelDaySlice.reducer); /***/ }), /***/ "./src/services/travel_day/core/services.ts": /*!**************************************************!*\ !*** ./src/services/travel_day/core/services.ts ***! \**************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ createTravelDayService: () => (/* binding */ createTravelDayService), /* harmony export */ deleteTravelDayService: () => (/* binding */ deleteTravelDayService), /* harmony export */ travelDayDetailService: () => (/* binding */ travelDayDetailService), /* harmony export */ travelDaysService: () => (/* binding */ travelDaysService), /* harmony export */ updateTravelDayService: () => (/* binding */ updateTravelDayService) /* harmony export */ }); /* harmony import */ var _shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../shared/configs/constants */ "./src/shared/configs/constants.ts"); /* harmony import */ var _shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../shared/core/base/services */ "./src/shared/core/base/services.ts"); function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { if (r) i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n;else { var o = function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); }; o("next", 0), o("throw", 1), o("return", 2); } }, _regeneratorDefine2(e, r, n, t); } function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } var travelDaysService = /*#__PURE__*/function () { var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() { return _regenerator().w(function (_context) { while (1) switch (_context.n) { case 0: _context.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.TRAVEL_DAY); case 1: return _context.a(2, _context.v); } }, _callee); })); return function travelDaysService() { return _ref.apply(this, arguments); }; }(); var travelDayDetailService = /*#__PURE__*/function () { var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(id) { return _regenerator().w(function (_context2) { while (1) switch (_context2.n) { case 0: _context2.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.TRAVEL_DAY).concat(id)); case 1: return _context2.a(2, _context2.v); } }, _callee2); })); return function travelDayDetailService(_x) { return _ref2.apply(this, arguments); }; }(); var createTravelDayService = /*#__PURE__*/function () { var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(data) { return _regenerator().w(function (_context3) { while (1) switch (_context3.n) { case 0: return _context3.a(2, (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.postWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.TRAVEL_DAY), data)); } }, _callee3); })); return function createTravelDayService(_x2) { return _ref3.apply(this, arguments); }; }(); var updateTravelDayService = /*#__PURE__*/function () { var _ref4 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4(id, data) { return _regenerator().w(function (_context4) { while (1) switch (_context4.n) { case 0: return _context4.a(2, (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.putWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.TRAVEL_DAY).concat(id), data)); } }, _callee4); })); return function updateTravelDayService(_x3, _x4) { return _ref4.apply(this, arguments); }; }(); var deleteTravelDayService = /*#__PURE__*/function () { var _ref5 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5(id) { return _regenerator().w(function (_context5) { while (1) switch (_context5.n) { case 0: _context5.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.removeWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.TRAVEL_DAY).concat(id)); case 1: return _context5.a(2, _context5.v); } }, _callee5); })); return function deleteTravelDayService(_x5) { return _ref5.apply(this, arguments); }; }(); /***/ }), /***/ "./src/services/user/core/actions.ts": /*!*******************************************!*\ !*** ./src/services/user/core/actions.ts ***! \*******************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ createUserAction: () => (/* binding */ createUserAction), /* harmony export */ deleteUserAction: () => (/* binding */ deleteUserAction), /* harmony export */ fetchUsers: () => (/* binding */ fetchUsers), /* harmony export */ updateUserAction: () => (/* binding */ updateUserAction), /* harmony export */ userDetailAction: () => (/* binding */ userDetailAction) /* harmony export */ }); /* harmony import */ var _reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @reduxjs/toolkit */ "../../../node_modules/@reduxjs/toolkit/dist/redux-toolkit.modern.mjs"); /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants */ "./src/services/user/core/constants.ts"); /* harmony import */ var _services__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./services */ "./src/services/user/core/services.ts"); function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { if (r) i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n;else { var o = function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); }; o("next", 0), o("throw", 1), o("return", 2); } }, _regeneratorDefine2(e, r, n, t); } function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } var fetchUsers = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_0__.USERS, _services__WEBPACK_IMPORTED_MODULE_1__.usersService); var userDetailAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_0__.USER, _services__WEBPACK_IMPORTED_MODULE_1__.userDetailService); var createUserAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_0__.USER_CREATE, /*#__PURE__*/function () { var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(_ref, _ref2) { var data, rejectWithValue, _error$response, _t; return _regenerator().w(function (_context) { while (1) switch (_context.n) { case 0: data = _ref.data; rejectWithValue = _ref2.rejectWithValue; _context.p = 1; _context.n = 2; return (0,_services__WEBPACK_IMPORTED_MODULE_1__.createUserService)(data); case 2: return _context.a(2, _context.v); case 3: _context.p = 3; _t = _context.v; return _context.a(2, rejectWithValue(((_error$response = _t.response) === null || _error$response === void 0 || (_error$response = _error$response.data) === null || _error$response === void 0 ? void 0 : _error$response.message) || "Failed to create user")); } }, _callee, null, [[1, 3]]); })); return function (_x, _x2) { return _ref3.apply(this, arguments); }; }()); var updateUserAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_0__.USER_UPDATE, /*#__PURE__*/function () { var _ref6 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(_ref4, _ref5) { var id, data, rejectWithValue, _error$response2, _t2; return _regenerator().w(function (_context2) { while (1) switch (_context2.n) { case 0: id = _ref4.id, data = _ref4.data; rejectWithValue = _ref5.rejectWithValue; _context2.p = 1; _context2.n = 2; return (0,_services__WEBPACK_IMPORTED_MODULE_1__.updateUserService)(id, data); case 2: return _context2.a(2, _context2.v); case 3: _context2.p = 3; _t2 = _context2.v; return _context2.a(2, rejectWithValue(((_error$response2 = _t2.response) === null || _error$response2 === void 0 || (_error$response2 = _error$response2.data) === null || _error$response2 === void 0 ? void 0 : _error$response2.message) || "Failed to update user")); } }, _callee2, null, [[1, 3]]); })); return function (_x3, _x4) { return _ref6.apply(this, arguments); }; }()); var deleteUserAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_0__.USER_DELETE, _services__WEBPACK_IMPORTED_MODULE_1__.deleteUserService); /***/ }), /***/ "./src/services/user/core/constants.ts": /*!*********************************************!*\ !*** ./src/services/user/core/constants.ts ***! \*********************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ USER: () => (/* binding */ USER), /* harmony export */ USERS: () => (/* binding */ USERS), /* harmony export */ USER_CREATE: () => (/* binding */ USER_CREATE), /* harmony export */ USER_DELETE: () => (/* binding */ USER_DELETE), /* harmony export */ USER_UPDATE: () => (/* binding */ USER_UPDATE) /* harmony export */ }); var USERS = 'users/fetchAll'; var USER = 'users/fetchByID'; var USER_CREATE = 'users/create'; var USER_UPDATE = 'users/update'; var USER_DELETE = 'users/delete'; /***/ }), /***/ "./src/services/user/core/reducer.ts": /*!*******************************************!*\ !*** ./src/services/user/core/reducer.ts ***! \*******************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__), /* harmony export */ setRegisterErrorMessage: () => (/* binding */ setRegisterErrorMessage), /* harmony export */ setUser: () => (/* binding */ setUser), /* harmony export */ userSlice: () => (/* binding */ userSlice) /* harmony export */ }); /* harmony import */ var _reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @reduxjs/toolkit */ "../../../node_modules/@reduxjs/toolkit/dist/redux-toolkit.modern.mjs"); /* harmony import */ var _actions__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./actions */ "./src/services/user/core/actions.ts"); /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./constants */ "./src/services/user/core/constants.ts"); /* eslint-disable no-console */ var initialState = { users: [], user: null, usersPending: false, userDetailPending: false, userCreatePending: false, userUpdatePending: false, userDeletePending: false, registerErrorMessage: '' }; var userSlice = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createSlice)({ name: _constants__WEBPACK_IMPORTED_MODULE_1__.USER, initialState: initialState, reducers: { // Sets the current user setUser: function setUser(state, action) { state.user = action.payload; }, // Updates the register error message setRegisterErrorMessage: function setRegisterErrorMessage(state, action) { state.registerErrorMessage = action.payload; } }, extraReducers: function extraReducers(builder) { builder // handle user .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.fetchUsers.pending, function (state) { state.usersPending = true; state.registerErrorMessage = ''; }) // Handles rejected users fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.fetchUsers.rejected, function (state, action) { state.usersPending = false; state.registerErrorMessage = action.error.message || 'Failed to fetch users.'; }) // Handles fulfilled users fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.fetchUsers.fulfilled, function (state, action) { var payload = action.payload; state.users = payload; state.usersPending = false; state.registerErrorMessage = ''; }) // handle user detail .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.userDetailAction.pending, function (state) { state.userDetailPending = true; state.registerErrorMessage = ''; }) // Handles rejected users fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.userDetailAction.rejected, function (state, action) { state.userDetailPending = false; state.registerErrorMessage = action.error.message || 'Failed to fetch users.'; }) // Handles fulfilled users fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.userDetailAction.fulfilled, function (state, action) { var payload = action.payload; state.user = payload; state.userDetailPending = false; state.registerErrorMessage = ''; }) // handle user create .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.createUserAction.pending, function (state) { state.userUpdatePending = true; state.registerErrorMessage = ''; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.createUserAction.rejected, function (state, action) { state.userUpdatePending = false; state.registerErrorMessage = action.error.message || 'Failed to create users.'; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.createUserAction.fulfilled, function (state, action) { state.user = action.payload; state.userUpdatePending = false; state.registerErrorMessage = ''; }) // handle user update .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.updateUserAction.pending, function (state) { state.userUpdatePending = true; state.registerErrorMessage = ''; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.updateUserAction.rejected, function (state, action) { state.userUpdatePending = false; state.registerErrorMessage = action.error.message || 'Failed to update users.'; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.updateUserAction.fulfilled, function (state, action) { state.user = action.payload; state.userUpdatePending = false; state.registerErrorMessage = ''; }) // handle user delete .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.deleteUserAction.pending, function (state) { state.userUpdatePending = true; state.registerErrorMessage = ''; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.deleteUserAction.rejected, function (state, action) { state.userUpdatePending = false; state.registerErrorMessage = action.error.message || 'Failed to delete users.'; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.deleteUserAction.fulfilled, function (state, action) { state.user = action.payload; state.userUpdatePending = false; state.registerErrorMessage = ''; }); } }); var _userSlice$actions = userSlice.actions, setRegisterErrorMessage = _userSlice$actions.setRegisterErrorMessage, setUser = _userSlice$actions.setUser; /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (userSlice.reducer); /***/ }), /***/ "./src/services/user/core/services.ts": /*!********************************************!*\ !*** ./src/services/user/core/services.ts ***! \********************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ createUserService: () => (/* binding */ createUserService), /* harmony export */ deleteUserService: () => (/* binding */ deleteUserService), /* harmony export */ updateUserService: () => (/* binding */ updateUserService), /* harmony export */ userDetailService: () => (/* binding */ userDetailService), /* harmony export */ userTelegramService: () => (/* binding */ userTelegramService), /* harmony export */ usersService: () => (/* binding */ usersService) /* harmony export */ }); /* harmony import */ var _shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../shared/configs/constants */ "./src/shared/configs/constants.ts"); /* harmony import */ var _shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../shared/core/base/services */ "./src/shared/core/base/services.ts"); function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { if (r) i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n;else { var o = function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); }; o("next", 0), o("throw", 1), o("return", 2); } }, _regeneratorDefine2(e, r, n, t); } function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } var usersService = /*#__PURE__*/function () { var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() { return _regenerator().w(function (_context) { while (1) switch (_context.n) { case 0: _context.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.USER); case 1: return _context.a(2, _context.v); } }, _callee); })); return function usersService() { return _ref.apply(this, arguments); }; }(); var userDetailService = /*#__PURE__*/function () { var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(id) { return _regenerator().w(function (_context2) { while (1) switch (_context2.n) { case 0: _context2.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.USER).concat(id)); case 1: return _context2.a(2, _context2.v); } }, _callee2); })); return function userDetailService(_x) { return _ref2.apply(this, arguments); }; }(); var createUserService = /*#__PURE__*/function () { var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(data) { return _regenerator().w(function (_context3) { while (1) switch (_context3.n) { case 0: return _context3.a(2, (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.postWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.USER), data)); } }, _callee3); })); return function createUserService(_x2) { return _ref3.apply(this, arguments); }; }(); var updateUserService = /*#__PURE__*/function () { var _ref4 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4(id, data) { return _regenerator().w(function (_context4) { while (1) switch (_context4.n) { case 0: return _context4.a(2, (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.putWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.USER).concat(id), data)); } }, _callee4); })); return function updateUserService(_x3, _x4) { return _ref4.apply(this, arguments); }; }(); var deleteUserService = /*#__PURE__*/function () { var _ref5 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5(id) { return _regenerator().w(function (_context5) { while (1) switch (_context5.n) { case 0: _context5.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.removeWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.USER).concat(id)); case 1: return _context5.a(2, _context5.v); } }, _callee5); })); return function deleteUserService(_x5) { return _ref5.apply(this, arguments); }; }(); var userTelegramService = /*#__PURE__*/function () { var _ref6 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6(id) { return _regenerator().w(function (_context6) { while (1) switch (_context6.n) { case 0: _context6.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.PUBLIC, "telegram/").concat(id)); case 1: return _context6.a(2, _context6.v); } }, _callee6); })); return function userTelegramService(_x6) { return _ref6.apply(this, arguments); }; }(); /***/ }), /***/ "./src/services/user_attendance/core/actions.ts": /*!******************************************************!*\ !*** ./src/services/user_attendance/core/actions.ts ***! \******************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ createUserAttendanceAction: () => (/* binding */ createUserAttendanceAction), /* harmony export */ deleteUserAttendanceAction: () => (/* binding */ deleteUserAttendanceAction), /* harmony export */ fetchUserAttendances: () => (/* binding */ fetchUserAttendances), /* harmony export */ updateUserAttendanceAction: () => (/* binding */ updateUserAttendanceAction), /* harmony export */ userAttendanceDetailAction: () => (/* binding */ userAttendanceDetailAction) /* harmony export */ }); /* harmony import */ var _reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @reduxjs/toolkit */ "../../../node_modules/@reduxjs/toolkit/dist/redux-toolkit.modern.mjs"); /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./constants */ "./src/services/user_attendance/core/constants.ts"); /* harmony import */ var _services__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./services */ "./src/services/user_attendance/core/services.ts"); function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { if (r) i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n;else { var o = function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); }; o("next", 0), o("throw", 1), o("return", 2); } }, _regeneratorDefine2(e, r, n, t); } function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } var fetchUserAttendances = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_0__.USER_ATTENDANCES, _services__WEBPACK_IMPORTED_MODULE_1__.userAttendancesService); var userAttendanceDetailAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_0__.USER_ATTENDANCE, _services__WEBPACK_IMPORTED_MODULE_1__.userAttendanceDetailService); var createUserAttendanceAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_0__.USER_ATTENDANCE_CREATE, /*#__PURE__*/function () { var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(_ref, _ref2) { var data, rejectWithValue, _error$response, _t; return _regenerator().w(function (_context) { while (1) switch (_context.n) { case 0: data = _ref.data; rejectWithValue = _ref2.rejectWithValue; _context.p = 1; _context.n = 2; return (0,_services__WEBPACK_IMPORTED_MODULE_1__.createUserAttendanceService)(data); case 2: return _context.a(2, _context.v); case 3: _context.p = 3; _t = _context.v; return _context.a(2, rejectWithValue(((_error$response = _t.response) === null || _error$response === void 0 || (_error$response = _error$response.data) === null || _error$response === void 0 ? void 0 : _error$response.message) || "Failed to create user attendance")); } }, _callee, null, [[1, 3]]); })); return function (_x, _x2) { return _ref3.apply(this, arguments); }; }()); var updateUserAttendanceAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_0__.USER_ATTENDANCE_UPDATE, /*#__PURE__*/function () { var _ref6 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(_ref4, _ref5) { var id, data, rejectWithValue, _error$response2, _t2; return _regenerator().w(function (_context2) { while (1) switch (_context2.n) { case 0: id = _ref4.id, data = _ref4.data; rejectWithValue = _ref5.rejectWithValue; _context2.p = 1; _context2.n = 2; return (0,_services__WEBPACK_IMPORTED_MODULE_1__.updateUserAttendanceService)(id, data); case 2: return _context2.a(2, _context2.v); case 3: _context2.p = 3; _t2 = _context2.v; return _context2.a(2, rejectWithValue(((_error$response2 = _t2.response) === null || _error$response2 === void 0 || (_error$response2 = _error$response2.data) === null || _error$response2 === void 0 ? void 0 : _error$response2.message) || "Failed to update user attendance")); } }, _callee2, null, [[1, 3]]); })); return function (_x3, _x4) { return _ref6.apply(this, arguments); }; }()); var deleteUserAttendanceAction = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createAsyncThunk)(_constants__WEBPACK_IMPORTED_MODULE_0__.USER_ATTENDANCE_DELETE, _services__WEBPACK_IMPORTED_MODULE_1__.deleteUserAttendanceService); /***/ }), /***/ "./src/services/user_attendance/core/constants.ts": /*!********************************************************!*\ !*** ./src/services/user_attendance/core/constants.ts ***! \********************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ USER_ATTENDANCE: () => (/* binding */ USER_ATTENDANCE), /* harmony export */ USER_ATTENDANCES: () => (/* binding */ USER_ATTENDANCES), /* harmony export */ USER_ATTENDANCE_CREATE: () => (/* binding */ USER_ATTENDANCE_CREATE), /* harmony export */ USER_ATTENDANCE_DELETE: () => (/* binding */ USER_ATTENDANCE_DELETE), /* harmony export */ USER_ATTENDANCE_UPDATE: () => (/* binding */ USER_ATTENDANCE_UPDATE) /* harmony export */ }); var USER_ATTENDANCES = 'user-attendances/fetchAll'; var USER_ATTENDANCE = 'user-attendances/fetchByID'; var USER_ATTENDANCE_CREATE = 'user-attendances/create'; var USER_ATTENDANCE_UPDATE = 'user-attendances/update'; var USER_ATTENDANCE_DELETE = 'user-attendances/delete'; /***/ }), /***/ "./src/services/user_attendance/core/reducer.ts": /*!******************************************************!*\ !*** ./src/services/user_attendance/core/reducer.ts ***! \******************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__), /* harmony export */ setRegisterErrorMessage: () => (/* binding */ setRegisterErrorMessage), /* harmony export */ setUserAttendance: () => (/* binding */ setUserAttendance), /* harmony export */ userAttendanceSlice: () => (/* binding */ userAttendanceSlice) /* harmony export */ }); /* harmony import */ var _reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @reduxjs/toolkit */ "../../../node_modules/@reduxjs/toolkit/dist/redux-toolkit.modern.mjs"); /* harmony import */ var _actions__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./actions */ "./src/services/user_attendance/core/actions.ts"); /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./constants */ "./src/services/user_attendance/core/constants.ts"); /* eslint-disable no-console */ var initialState = { userAttendances: [], userAttendance: null, userAttendancesPending: false, userAttendanceDetailPending: false, userAttendanceCreatePending: false, userAttendanceUpdatePending: false, userAttendanceDeletePending: false, registerErrorMessage: '' }; var userAttendanceSlice = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_2__.createSlice)({ name: _constants__WEBPACK_IMPORTED_MODULE_1__.USER_ATTENDANCE, initialState: initialState, reducers: { // Sets the current userAttendance setUserAttendance: function setUserAttendance(state, action) { state.userAttendance = action.payload; }, // Updates the register error message setRegisterErrorMessage: function setRegisterErrorMessage(state, action) { state.registerErrorMessage = action.payload; } }, extraReducers: function extraReducers(builder) { builder // handle user attendance .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.fetchUserAttendances.pending, function (state) { state.userAttendancesPending = true; state.registerErrorMessage = ''; }) // Handles rejected user attendances fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.fetchUserAttendances.rejected, function (state, action) { state.userAttendancesPending = false; state.registerErrorMessage = action.error.message || 'Failed to fetch user attendances.'; }) // Handles fulfilled user attendances fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.fetchUserAttendances.fulfilled, function (state, action) { var payload = action.payload; state.userAttendances = payload; state.userAttendancesPending = false; state.registerErrorMessage = ''; }) // handle user attendance detail .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.userAttendanceDetailAction.pending, function (state) { state.userAttendanceDetailPending = true; state.registerErrorMessage = ''; }) // Handles rejected user attendances fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.userAttendanceDetailAction.rejected, function (state, action) { state.userAttendanceDetailPending = false; state.registerErrorMessage = action.error.message || 'Failed to fetch user attendances.'; }) // Handles fulfilled user attendances fetch .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.userAttendanceDetailAction.fulfilled, function (state, action) { var payload = action.payload; state.userAttendance = payload; state.userAttendanceDetailPending = false; state.registerErrorMessage = ''; }) // handle userAttendance create .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.createUserAttendanceAction.pending, function (state) { state.userAttendanceUpdatePending = true; state.registerErrorMessage = ''; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.createUserAttendanceAction.rejected, function (state, action) { state.userAttendanceUpdatePending = false; state.registerErrorMessage = action.error.message || 'Failed to create user attendances.'; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.createUserAttendanceAction.fulfilled, function (state, action) { state.userAttendance = action.payload; state.userAttendanceUpdatePending = false; state.registerErrorMessage = ''; }) // handle userAttendance update .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.updateUserAttendanceAction.pending, function (state) { state.userAttendanceUpdatePending = true; state.registerErrorMessage = ''; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.updateUserAttendanceAction.rejected, function (state, action) { state.userAttendanceUpdatePending = false; state.registerErrorMessage = action.error.message || 'Failed to update user attendances.'; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.updateUserAttendanceAction.fulfilled, function (state, action) { state.userAttendance = action.payload; state.userAttendanceUpdatePending = false; state.registerErrorMessage = ''; }) // handle userAttendance delete .addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.deleteUserAttendanceAction.pending, function (state) { state.userAttendanceUpdatePending = true; state.registerErrorMessage = ''; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.deleteUserAttendanceAction.rejected, function (state, action) { state.userAttendanceUpdatePending = false; state.registerErrorMessage = action.error.message || 'Failed to delete user attendances.'; }).addCase(_actions__WEBPACK_IMPORTED_MODULE_0__.deleteUserAttendanceAction.fulfilled, function (state, action) { state.userAttendance = action.payload; state.userAttendanceUpdatePending = false; state.registerErrorMessage = ''; }); } }); var _userAttendanceSlice$ = userAttendanceSlice.actions, setRegisterErrorMessage = _userAttendanceSlice$.setRegisterErrorMessage, setUserAttendance = _userAttendanceSlice$.setUserAttendance; /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (userAttendanceSlice.reducer); /***/ }), /***/ "./src/services/user_attendance/core/services.ts": /*!*******************************************************!*\ !*** ./src/services/user_attendance/core/services.ts ***! \*******************************************************/ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ createUserAttendanceService: () => (/* binding */ createUserAttendanceService), /* harmony export */ deleteUserAttendanceService: () => (/* binding */ deleteUserAttendanceService), /* harmony export */ updateUserAttendanceService: () => (/* binding */ updateUserAttendanceService), /* harmony export */ userAttendanceDetailService: () => (/* binding */ userAttendanceDetailService), /* harmony export */ userAttendancesService: () => (/* binding */ userAttendancesService) /* harmony export */ }); /* harmony import */ var _shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../shared/configs/constants */ "./src/shared/configs/constants.ts"); /* harmony import */ var _shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../shared/core/base/services */ "./src/shared/core/base/services.ts"); function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); } function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { if (r) i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n;else { var o = function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); }; o("next", 0), o("throw", 1), o("return", 2); } }, _regeneratorDefine2(e, r, n, t); } function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); } function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; } var userAttendancesService = /*#__PURE__*/function () { var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() { return _regenerator().w(function (_context) { while (1) switch (_context.n) { case 0: _context.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.USER_ATTENDANCE); case 1: return _context.a(2, _context.v); } }, _callee); })); return function userAttendancesService() { return _ref.apply(this, arguments); }; }(); var userAttendanceDetailService = /*#__PURE__*/function () { var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(id) { return _regenerator().w(function (_context2) { while (1) switch (_context2.n) { case 0: _context2.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.getWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.USER_ATTENDANCE).concat(id)); case 1: return _context2.a(2, _context2.v); } }, _callee2); })); return function userAttendanceDetailService(_x) { return _ref2.apply(this, arguments); }; }(); var createUserAttendanceService = /*#__PURE__*/function () { var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(data) { return _regenerator().w(function (_context3) { while (1) switch (_context3.n) { case 0: return _context3.a(2, (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.postWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.USER_ATTENDANCE), data)); } }, _callee3); })); return function createUserAttendanceService(_x2) { return _ref3.apply(this, arguments); }; }(); var updateUserAttendanceService = /*#__PURE__*/function () { var _ref4 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4(id, data) { return _regenerator().w(function (_context4) { while (1) switch (_context4.n) { case 0: return _context4.a(2, (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.putWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.USER_ATTENDANCE).concat(id), data)); } }, _callee4); })); return function updateUserAttendanceService(_x3, _x4) { return _ref4.apply(this, arguments); }; }(); var deleteUserAttendanceService = /*#__PURE__*/function () { var _ref5 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5(id) { return _regenerator().w(function (_context5) { while (1) switch (_context5.n) { case 0: _context5.n = 1; return (0,_shared_core_base_services__WEBPACK_IMPORTED_MODULE_1__.removeWithConfig)("".concat(_shared_configs_constants__WEBPACK_IMPORTED_MODULE_0__.URL.USER_ATTENDANCE).concat(id)); case 1: return _context5.a(2, _context5.v); } }, _callee5); })); return function deleteUserAttendanceService(_x5) { return _ref5.apply(this, arguments); }; }(); /***/ }) }]); //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianMvbWFpbi1zcmNfc2VydmljZXNfcC52b2x1bnRlZXJhcGkuNDRlZjA0NGZhYWEyZDk5OWYwMzMuYnVuZGxlLmpzIiwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzBCQUNBLHVLQUFBQSxDQUFBLEVBQUFDLENBQUEsRUFBQUMsQ0FBQSx3QkFBQUMsTUFBQSxHQUFBQSxNQUFBLE9BQUFDLENBQUEsR0FBQUYsQ0FBQSxDQUFBRyxRQUFBLGtCQUFBQyxDQUFBLEdBQUFKLENBQUEsQ0FBQUssV0FBQSw4QkFBQUMsRUFBQU4sQ0FBQSxFQUFBRSxDQUFBLEVBQUFFLENBQUEsRUFBQUUsQ0FBQSxRQUFBQyxDQUFBLEdBQUFMLENBQUEsSUFBQUEsQ0FBQSxDQUFBTSxTQUFBLFlBQUFDLFNBQUEsR0FBQVAsQ0FBQSxHQUFBTyxTQUFBLEVBQUFDLENBQUEsR0FBQUMsTUFBQSxDQUFBQyxNQUFBLENBQUFMLENBQUEsQ0FBQUMsU0FBQSxVQUFBSyxtQkFBQSxDQUFBSCxDQUFBLHVCQUFBVixDQUFBLEVBQUFFLENBQUEsRUFBQUUsQ0FBQSxRQUFBRSxDQUFBLEVBQUFDLENBQUEsRUFBQUcsQ0FBQSxFQUFBSSxDQUFBLE1BQUFDLENBQUEsR0FBQVgsQ0FBQSxRQUFBWSxDQUFBLE9BQUFDLENBQUEsS0FBQUYsQ0FBQSxLQUFBYixDQUFBLEtBQUFnQixDQUFBLEVBQUFwQixDQUFBLEVBQUFxQixDQUFBLEVBQUFDLENBQUEsRUFBQU4sQ0FBQSxFQUFBTSxDQUFBLENBQUFDLElBQUEsQ0FBQXZCLENBQUEsTUFBQXNCLENBQUEsV0FBQUEsRUFBQXJCLENBQUEsRUFBQUMsQ0FBQSxXQUFBTSxDQUFBLEdBQUFQLENBQUEsRUFBQVEsQ0FBQSxNQUFBRyxDQUFBLEdBQUFaLENBQUEsRUFBQW1CLENBQUEsQ0FBQWYsQ0FBQSxHQUFBRixDQUFBLEVBQUFtQixDQUFBLGdCQUFBQyxFQUFBcEIsQ0FBQSxFQUFBRSxDQUFBLFNBQUFLLENBQUEsR0FBQVAsQ0FBQSxFQUFBVSxDQUFBLEdB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eEMsRUFBRSxHQUFJZCxJQUFJLENBQUM7TUFBQTtJQUFBLEdBQUF5RCxRQUFBO0VBQUEsQ0FDMUQ7RUFBQSxnQkFGWStJLDJCQUEyQkEsQ0FBQXRMLEdBQUEsRUFBQUMsR0FBQTtJQUFBLE9BQUFQLEtBQUEsQ0FBQWpDLEtBQUEsT0FBQUQsU0FBQTtFQUFBO0FBQUEsR0FFdkM7QUFFTSxJQUFNK04sMkJBQTJCO0VBQUEsSUFBQTVMLEtBQUEsR0FBQXBDLGlCQUFBLGNBQUFiLFlBQUEsR0FBQUUsQ0FBQSxDQUFHLFNBQUE2RixTQUFNN0MsRUFBVTtJQUFBLE9BQUFsRCxZQUFBLEdBQUFDLENBQUEsV0FBQStGLFNBQUE7TUFBQSxrQkFBQUEsU0FBQSxDQUFBaEksQ0FBQTtRQUFBO1VBQUFnSSxTQUFBLENBQUFoSSxDQUFBO1VBQUEsT0FDNUN5SCw0RUFBZ0IsSUFBQUMsTUFBQSxDQUFJTCwwREFBRyxDQUFDZ0osZUFBZSxFQUFBM0ksTUFBQSxDQUFHeEMsRUFBRSxDQUFFLENBQUM7UUFBQTtVQUFBLE9BQUE4QyxTQUFBLENBQUEvRyxDQUFBLElBQUErRyxTQUFBLENBQUFoSCxDQUFBO01BQUE7SUFBQSxHQUFBK0csUUFBQTtFQUFBLENBQzdEO0VBQUEsZ0JBRlk4SSwyQkFBMkJBLENBQUE1SSxHQUFBO0lBQUEsT0FBQWhELEtBQUEsQ0FBQWxDLEtBQUEsT0FBQUQsU0FBQTtFQUFBO0FBQUEsR0FFdkMsQyIsInNvdXJjZXMiOlsid2VicGFjazovL0Bjb3JlL3ZvbHVudGVlcl9hcHAvLi9zcmMvc2VydmljZXMvcHJvdmluY2UvY29yZS9hY3Rpb25zLnRzIiwid2VicGFjazovL0Bjb3JlL3ZvbHVudGVlcl9hcHAvLi9zcmMvc2VydmljZXMvcHJvdmluY2UvY29yZS9jb25zdGFudHMudHMiLCJ3ZWJwYWNrOi8vQGNvcmUvdm9sdW50ZWVyX2FwcC8uL3NyYy9zZXJ2aWNlcy9wcm92aW5jZS9jb3JlL3JlZHVjZXIudHMiLCJ3ZWJwYWNrOi8vQGNvcmUvdm9sdW50ZWVyX2FwcC8uL3NyYy9zZXJ2aWNlcy9wcm92aW5jZS9jb3JlL3NlcnZpY2VzLnRzIiwid2VicGFjazovL0Bjb3JlL3ZvbHVudGVlcl9hcHAvLi9zcmMvc2VydmljZXMvc2tpbGwvY29yZS9hY3Rpb25zLnRzIiwid2VicGFjazovL0Bjb3JlL3ZvbHVudGVlcl9hcHAvLi9zcmMvc2VydmljZXMvc2tpbGwvY29yZS9jb25zdGFudHMudHMiLCJ3ZWJwYWNrOi8vQGNvcmUvdm9sdW50ZWVyX2FwcC8uL3NyYy9zZXJ2aWNlcy9za2lsbC9jb3JlL3JlZHVjZXIudHMiLCJ3ZWJwYWNrOi8vQGNvcmUvdm9sdW50ZWVyX2FwcC8uL3NyYy9zZXJ2aWNlcy9za2lsbC9jb3JlL3NlcnZpY2VzLnRzIiwid2VicGFjazovL0Bjb3JlL3ZvbHVudGVlcl9hcHAvLi9zcmMvc2VydmljZXMvdGVybXNfY29uZGl0aW9uL2NvcmUvYWN0aW9ucy50cyIsIndlYnBhY2s6Ly9AY29yZS92b2x1bnRlZXJfYXBwLy4vc3JjL3NlcnZpY2VzL3Rlcm1zX2NvbmRpdGlvbi9jb3JlL2NvbnN0YW50cy50cyIsIndlYnBhY2s6Ly9AY29yZS92b2x1bnRlZXJfYXBwLy4vc3JjL3NlcnZpY2VzL3Rlcm1zX2NvbmRpdGlvbi9jb3JlL3JlZHVjZXIudHMiLCJ3ZWJwYWNrOi8vQGNvcmUvdm9sdW50ZWVyX2FwcC8uL3NyYy9zZXJ2aWNlcy90ZXJtc19jb25kaXRpb24vY29yZS9zZXJ2aWNlcy50cyIsIndlYnBhY2s6Ly9AY29yZS92b2x1bnRlZXJfYXBwLy4vc3JjL3NlcnZpY2VzL3RyYWluaW5nX3Nlc3Npb24vY29yZS9hY3Rpb25zLnRzIiwid2VicGFjazovL0Bjb3JlL3ZvbHVudGVlcl9hcHAvLi9zcmMvc2VydmljZXMvdHJhaW5pbmdfc2Vzc2lvbi9jb3JlL2NvbnN0YW50cy50cyIsIndlYnBhY2s6Ly9AY29yZS92b2x1bnRlZXJfYXBwLy4vc3JjL3NlcnZpY2VzL3RyYWluaW5nX3Nlc3Npb24vY29yZS9yZWR1Y2VyLnRzIiwid2VicGFjazovL0Bjb3JlL3ZvbHVudGVlcl9hcHAvLi9zcmMvc2VydmljZXMvdHJhaW5pbmdfc2Vzc2lvbi9jb3JlL3NlcnZpY2VzLnRzIiwid2VicGFjazovL0Bjb3JlL3ZvbHVudGVlcl9hcHAvLi9zcmMvc2VydmljZXMvdHJhdmVsX2RheS9jb3JlL2FjdGlvbnMudHMiLCJ3ZWJwYWNrOi8vQGNvcmUvdm9sdW50ZWVyX2FwcC8uL3NyYy9zZXJ2aWNlcy90cmF2ZWxfZGF5L2NvcmUvY29uc3RhbnRzLnRzIiwid2VicGFjazovL0Bjb3JlL3ZvbHVudGVlcl9hcHAvLi9zcmMvc2VydmljZXMvdHJhdmVsX2RheS9jb3JlL3JlZHVjZXIudHMiLCJ3ZWJwYWNrOi8vQGNvcmUvdm9sdW50ZWVyX2FwcC8uL3NyYy9zZXJ2aWNlcy90cmF2ZWxfZGF5L2NvcmUvc2VydmljZXMudHMiLCJ3ZWJwYWNrOi8vQGNvcmUvdm9sdW50ZWVyX2FwcC8uL3NyYy9zZXJ2aWNlcy91c2VyL2NvcmUvYWN0aW9ucy50cyIsIndlYnBhY2s6Ly9AY29yZS92b2x1bnRlZXJfYXBwLy4vc3JjL3NlcnZpY2VzL3VzZXIvY29yZS9jb25zdGFudHMudHMiLCJ3ZWJwYWNrOi8vQGNvcmUvdm9sdW50ZWVyX2FwcC8uL3NyYy9zZXJ2aWNlcy91c2VyL2NvcmUvcmVkdWNlci50cyIsIndlYnBhY2s6Ly9AY29yZS92b2x1bnRlZXJfYXBwLy4vc3JjL3NlcnZpY2VzL3VzZXIvY29yZS9zZXJ2aWNlcy50cyIsIndlYnBhY2s6Ly9AY29yZS92b2x1bnRlZXJfYXBwLy4vc3JjL3NlcnZpY2VzL3VzZXJfYXR0ZW5kYW5jZS9jb3JlL2FjdGlvbnMudHMiLCJ3ZWJwYWNrOi8vQGNvcmUvdm9sdW50ZWVyX2FwcC8uL3NyYy9zZXJ2aWNlcy91c2VyX2F0dGVuZGFuY2UvY29yZS9jb25zdGFudHMudHMiLCJ3ZWJwYWNrOi8vQGNvcmUvdm9sdW50ZWVyX2FwcC8uL3NyYy9zZXJ2aWNlcy91c2VyX2F0dGVuZGFuY2UvY29yZS9yZWR1Y2VyLnRzIiwid2VicGFjazovL0Bjb3JlL3ZvbHVudGVlcl9hcHAvLi9zcmMvc2VydmljZXMvdXNlcl9hdHRlbmRhbmNlL2NvcmUvc2VydmljZXMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlQXN5bmNUaHVuayB9IGZyb20gJ0ByZWR1eGpzL3Rvb2xraXQnO1xuaW1wb3J0IHsgUFJPVklOQ0VTLCBQUk9WSU5DRSwgUFJPVklOQ0VfREVMRVRFLCBQUk9WSU5DRV9DUkVBVEUsIFBST1ZJTkNFX1VQREFURSB9IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCB7IHByb3ZpbmNlc1NlcnZpY2UsIHByb3ZpbmNlRGV0YWlsU2VydmljZSwgY3JlYXRlUHJvdmluY2VTZXJ2aWNlLCB1cGRhdGVQcm92aW5jZVNlcnZpY2UsIGRlbGV0ZVByb3ZpbmNlU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMnO1xuaW1wb3J0IHsgUHJvdmluY2UgfSBmcm9tICdAL3NoYXJlZC9pbnRlcmZhY2VzJztcblxuZXhwb3J0IGNvbnN0IGZldGNoUHJvdmluY2VzOiBhbnkgPSBjcmVhdGVBc3luY1RodW5rKFxuICBQUk9WSU5DRVMsXG4gIHByb3ZpbmNlc1NlcnZpY2Vcbik7XG5cbmV4cG9ydCBjb25zdCBwcm92aW5jZURldGFpbEFjdGlvbjogYW55ID0gY3JlYXRlQXN5bmNUaHVuayhcbiAgUFJPVklOQ0UsXG4gIHByb3ZpbmNlRGV0YWlsU2VydmljZVxuKVxuXG5leHBvcnQgY29uc3QgY3JlYXRlUHJvdmluY2VBY3Rpb24gPSBjcmVhdGVBc3luY1RodW5rPFByb3ZpbmNlLCB7IGRhdGE6IFByb3ZpbmNlIH0+KFxuICBQUk9WSU5DRV9DUkVBVEUsXG4gIGFzeW5jICh7IGRhdGEgfSwgeyByZWplY3RXaXRoVmFsdWUgfSkgPT4ge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gYXdhaXQgY3JlYXRlUHJvdmluY2VTZXJ2aWNlKGRhdGEpO1xuICAgIH0gY2F0Y2ggKGVycm9yOiBhbnkpIHtcbiAgICAgIHJldHVybiByZWplY3RXaXRoVmFsdWUoZXJyb3IucmVzcG9uc2U/LmRhdGE/Lm1lc3NhZ2UgfHwgXCJGYWlsZWQgdG8gY3JlYXRlIHByb3ZpbmNlXCIpO1xuICAgIH1cbiAgfVxuKTtcblxuZXhwb3J0IGNvbnN0IHVwZGF0ZVByb3ZpbmNlQWN0aW9uID0gY3JlYXRlQXN5bmNUaHVuazxQcm92aW5jZSwgeyBpZDogbnVtYmVyOyBkYXRhOiBQcm92aW5jZSB9PihcbiAgUFJPVklOQ0VfVVBEQVRFLFxuICBhc3luYyAoeyBpZCwgZGF0YSB9LCB7IHJlamVjdFdpdGhWYWx1ZSB9KSA9PiB7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiBhd2FpdCB1cGRhdGVQcm92aW5jZVNlcnZpY2UoaWQsIGRhdGEpO1xuICAgIH0gY2F0Y2ggKGVycm9yOiBhbnkpIHtcbiAgICAgIHJldHVybiByZWplY3RXaXRoVmFsdWUoZXJyb3IucmVzcG9uc2U/LmRhdGE/Lm1lc3NhZ2UgfHwgXCJGYWlsZWQgdG8gdXBkYXRlIHByb3ZpbmNlXCIpO1xuICAgIH1cbiAgfVxuKTtcblxuZXhwb3J0IGNvbnN0IGRlbGV0ZVByb3ZpbmNlQWN0aW9uOiBhbnkgPSBjcmVhdGVBc3luY1RodW5rKFxuICBQUk9WSU5DRV9ERUxFVEUsXG4gIGRlbGV0ZVByb3ZpbmNlU2VydmljZVxuKVxuIiwiZXhwb3J0IGNvbnN0IFBST1ZJTkNFUyA9ICdwcm92aW5jZXMvZmV0Y2hBbGwnO1xuZXhwb3J0IGNvbnN0IFBST1ZJTkNFID0gJ3Byb3ZpbmNlcy9mZXRjaEJ5SUQnO1xuZXhwb3J0IGNvbnN0IFBST1ZJTkNFX0NSRUFURSA9ICdwcm92aW5jZXMvY3JlYXRlJztcbmV4cG9ydCBjb25zdCBQUk9WSU5DRV9VUERBVEUgPSAncHJvdmluY2VzL3VwZGF0ZSc7XG5leHBvcnQgY29uc3QgUFJPVklOQ0VfREVMRVRFID0gJ3Byb3ZpbmNlcy9kZWxldGUnO1xuIiwiLyogZXNsaW50LWRpc2FibGUgbm8tY29uc29sZSAqL1xuXG5pbXBvcnQgeyBjcmVhdGVTbGljZSwgUGF5bG9hZEFjdGlvbiB9IGZyb20gJ0ByZWR1eGpzL3Rvb2xraXQnO1xuaW1wb3J0IHsgUHJvdmluY2UsIFByb3ZpbmNlU3RhdGUgfSBmcm9tICdAL3NoYXJlZC9pbnRlcmZhY2VzJztcbmltcG9ydCB7IGZldGNoUHJvdmluY2VzLCB1cGRhdGVQcm92aW5jZUFjdGlvbiwgcHJvdmluY2VEZXRhaWxBY3Rpb24sIGNyZWF0ZVByb3ZpbmNlQWN0aW9uLCBkZWxldGVQcm92aW5jZUFjdGlvbiB9IGZyb20gJy4vYWN0aW9ucyc7XG5pbXBvcnQgeyBQUk9WSU5DRSB9IGZyb20gJy4vY29uc3RhbnRzJztcblxuY29uc3QgaW5pdGlhbFN0YXRlOiBQcm92aW5jZVN0YXRlID0ge1xuICBwcm92aW5jZXM6IFtdLFxuICBwcm92aW5jZTogbnVsbCxcbiAgcHJvdmluY2VzUGVuZGluZzogZmFsc2UsXG4gIHByb3ZpbmNlRGV0YWlsUGVuZGluZzogZmFsc2UsXG4gIHByb3ZpbmNlQ3JlYXRlUGVuZGluZzogZmFsc2UsXG4gIHByb3ZpbmNlVXBkYXRlUGVuZGluZzogZmFsc2UsXG4gIHByb3ZpbmNlRGVsZXRlUGVuZGluZzogZmFsc2UsXG4gIHJlZ2lzdGVyRXJyb3JNZXNzYWdlOiAnJyxcbn07XG5cbmV4cG9ydCBjb25zdCBwcm92aW5jZVNsaWNlID0gY3JlYXRlU2xpY2Uoe1xuICBuYW1lOiBQUk9WSU5DRSxcbiAgaW5pdGlhbFN0YXRlLFxuICByZWR1Y2Vyczoge1xuICAgIC8vIFNldHMgdGhlIGN1cnJlbnQgcHJvdmluY2VcbiAgICBzZXRQcm92aW5jZTogKHN0YXRlLCBhY3Rpb246IFBheWxvYWRBY3Rpb248UHJvdmluY2U+KSA9PiB7XG4gICAgICBzdGF0ZS5wcm92aW5jZSA9IGFjdGlvbi5wYXlsb2FkO1xuICAgIH0sXG5cbiAgICAvLyBVcGRhdGVzIHRoZSByZWdpc3RlciBlcnJvciBtZXNzYWdlXG4gICAgc2V0UmVnaXN0ZXJFcnJvck1lc3NhZ2U6IChzdGF0ZSwgYWN0aW9uOiBQYXlsb2FkQWN0aW9uPHN0cmluZz4pID0+IHtcbiAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gYWN0aW9uLnBheWxvYWQ7XG4gICAgfSxcbiAgfSxcblxuICBleHRyYVJlZHVjZXJzOiAoYnVpbGRlcikgPT4ge1xuICAgIGJ1aWxkZXJcbiAgICAgIC8vIGhhbmRsZSBwcm92aW5jZVxuICAgICAgLmFkZENhc2UoZmV0Y2hQcm92aW5jZXMucGVuZGluZywgKHN0YXRlKSA9PiB7XG4gICAgICAgIHN0YXRlLnByb3ZpbmNlc1BlbmRpbmcgPSB0cnVlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9ICcnO1xuICAgICAgfSlcbiAgICAgIC8vIEhhbmRsZXMgcmVqZWN0ZWQgcHJvdmluY2VzIGZldGNoXG4gICAgICAuYWRkQ2FzZShmZXRjaFByb3ZpbmNlcy5yZWplY3RlZCwgKHN0YXRlLCBhY3Rpb24pID0+IHtcbiAgICAgICAgc3RhdGUucHJvdmluY2VzUGVuZGluZyA9IGZhbHNlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9IGFjdGlvbi5lcnJvci5tZXNzYWdlIHx8ICdGYWlsZWQgdG8gZmV0Y2ggcHJvdmluY2VzLic7XG4gICAgICB9KVxuICAgICAgLy8gSGFuZGxlcyBmdWxmaWxsZWQgcHJvdmluY2VzIGZldGNoXG4gICAgICAuYWRkQ2FzZShmZXRjaFByb3ZpbmNlcy5mdWxmaWxsZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIGNvbnN0IHsgcGF5bG9hZCB9ID0gYWN0aW9uO1xuICAgICAgICBzdGF0ZS5wcm92aW5jZXMgPSBwYXlsb2FkO1xuICAgICAgICBzdGF0ZS5wcm92aW5jZXNQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gJyc7XG4gICAgICB9KVxuXG4gICAgICAvLyBoYW5kbGUgcHJvdmluY2UgZGV0YWlsXG4gICAgICAuYWRkQ2FzZShwcm92aW5jZURldGFpbEFjdGlvbi5wZW5kaW5nLCAoc3RhdGUpID0+IHtcbiAgICAgICAgc3RhdGUucHJvdmluY2VEZXRhaWxQZW5kaW5nID0gdHJ1ZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSAnJztcbiAgICAgIH0pXG4gICAgICAvLyBIYW5kbGVzIHJlamVjdGVkIHByb3ZpbmNlcyBmZXRjaFxuICAgICAgLmFkZENhc2UocHJvdmluY2VEZXRhaWxBY3Rpb24ucmVqZWN0ZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIHN0YXRlLnByb3ZpbmNlRGV0YWlsUGVuZGluZyA9IGZhbHNlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9IGFjdGlvbi5lcnJvci5tZXNzYWdlIHx8ICdGYWlsZWQgdG8gZmV0Y2ggcHJvdmluY2VzLic7XG4gICAgICB9KVxuICAgICAgLy8gSGFuZGxlcyBmdWxmaWxsZWQgcHJvdmluY2VzIGZldGNoXG4gICAgICAuYWRkQ2FzZShwcm92aW5jZURldGFpbEFjdGlvbi5mdWxmaWxsZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIGNvbnN0IHsgcGF5bG9hZCB9ID0gYWN0aW9uO1xuICAgICAgICBzdGF0ZS5wcm92aW5jZSA9IHBheWxvYWQ7XG4gICAgICAgIHN0YXRlLnByb3ZpbmNlRGV0YWlsUGVuZGluZyA9IGZhbHNlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9ICcnO1xuICAgICAgfSlcblxuICAgICAgLy8gaGFuZGxlIHByb3ZpbmNlIGNyZWF0ZVxuICAgICAgLmFkZENhc2UoY3JlYXRlUHJvdmluY2VBY3Rpb24ucGVuZGluZywgKHN0YXRlKSA9PiB7XG4gICAgICAgIHN0YXRlLnByb3ZpbmNlVXBkYXRlUGVuZGluZyA9IHRydWU7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gJyc7XG4gICAgICB9KVxuICAgICAgLmFkZENhc2UoY3JlYXRlUHJvdmluY2VBY3Rpb24ucmVqZWN0ZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIHN0YXRlLnByb3ZpbmNlVXBkYXRlUGVuZGluZyA9IGZhbHNlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9IGFjdGlvbi5lcnJvci5tZXNzYWdlIHx8ICdGYWlsZWQgdG8gY3JlYXRlIHByb3ZpbmNlcy4nO1xuICAgICAgfSlcbiAgICAgIC5hZGRDYXNlKGNyZWF0ZVByb3ZpbmNlQWN0aW9uLmZ1bGZpbGxlZCwgKHN0YXRlLCBhY3Rpb24pID0+IHtcbiAgICAgICAgc3RhdGUucHJvdmluY2UgPSBhY3Rpb24ucGF5bG9hZDtcbiAgICAgICAgc3RhdGUucHJvdmluY2VVcGRhdGVQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gJyc7XG4gICAgICB9KVxuXG4gICAgICAvLyBoYW5kbGUgcHJvdmluY2UgdXBkYXRlXG4gICAgICAuYWRkQ2FzZSh1cGRhdGVQcm92aW5jZUFjdGlvbi5wZW5kaW5nLCAoc3RhdGUpID0+IHtcbiAgICAgICAgc3RhdGUucHJvdmluY2VVcGRhdGVQZW5kaW5nID0gdHJ1ZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSAnJztcbiAgICAgIH0pXG4gICAgICAuYWRkQ2FzZSh1cGRhdGVQcm92aW5jZUFjdGlvbi5yZWplY3RlZCwgKHN0YXRlLCBhY3Rpb24pID0+IHtcbiAgICAgICAgc3RhdGUucHJvdmluY2VVcGRhdGVQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gYWN0aW9uLmVycm9yLm1lc3NhZ2UgfHwgJ0ZhaWxlZCB0byB1cGRhdGUgcHJvdmluY2VzLic7XG4gICAgICB9KVxuICAgICAgLmFkZENhc2UodXBkYXRlUHJvdmluY2VBY3Rpb24uZnVsZmlsbGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS5wcm92aW5jZSA9IGFjdGlvbi5wYXlsb2FkO1xuICAgICAgICBzdGF0ZS5wcm92aW5jZVVwZGF0ZVBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSAnJztcbiAgICAgIH0pXG5cbiAgICAgIC8vIGhhbmRsZSBwcm92aW5jZSBkZWxldGVcbiAgICAgIC5hZGRDYXNlKGRlbGV0ZVByb3ZpbmNlQWN0aW9uLnBlbmRpbmcsIChzdGF0ZSkgPT4ge1xuICAgICAgICBzdGF0ZS5wcm92aW5jZVVwZGF0ZVBlbmRpbmcgPSB0cnVlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9ICcnO1xuICAgICAgfSlcbiAgICAgIC5hZGRDYXNlKGRlbGV0ZVByb3ZpbmNlQWN0aW9uLnJlamVjdGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS5wcm92aW5jZVVwZGF0ZVBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSBhY3Rpb24uZXJyb3IubWVzc2FnZSB8fCAnRmFpbGVkIHRvIGRlbGV0ZSBwcm92aW5jZXMuJztcbiAgICAgIH0pXG4gICAgICAuYWRkQ2FzZShkZWxldGVQcm92aW5jZUFjdGlvbi5mdWxmaWxsZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIHN0YXRlLnByb3ZpbmNlID0gYWN0aW9uLnBheWxvYWQ7XG4gICAgICAgIHN0YXRlLnByb3ZpbmNlVXBkYXRlUGVuZGluZyA9IGZhbHNlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9ICcnO1xuICAgICAgfSlcbiAgfSxcbn0pO1xuXG5leHBvcnQgY29uc3QgeyBzZXRSZWdpc3RlckVycm9yTWVzc2FnZSwgc2V0UHJvdmluY2UgfSA9IHByb3ZpbmNlU2xpY2UuYWN0aW9ucztcblxuZXhwb3J0IGRlZmF1bHQgcHJvdmluY2VTbGljZS5yZWR1Y2VyO1xuIiwiaW1wb3J0IHsgUHJvdmluY2UgfSBmcm9tICdAL3NoYXJlZC9pbnRlcmZhY2VzJztcbmltcG9ydCB7IFVSTCB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9jb25maWdzL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBnZXRXaXRoQ29uZmlnLCBwb3N0V2l0aENvbmZpZywgcHV0V2l0aENvbmZpZywgcmVtb3ZlV2l0aENvbmZpZyB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9jb3JlL2Jhc2Uvc2VydmljZXMnO1xuXG5leHBvcnQgY29uc3QgcHJvdmluY2VzU2VydmljZSA9IGFzeW5jKCkgPT4ge1xuICByZXR1cm4gYXdhaXQgZ2V0V2l0aENvbmZpZyhVUkwuUFJPVklOQ0UpXG59XG5cbmV4cG9ydCBjb25zdCBwcm92aW5jZURldGFpbFNlcnZpY2UgPSBhc3luYyhpZDogbnVtYmVyKSA9PiB7XG4gIHJldHVybiBhd2FpdCBnZXRXaXRoQ29uZmlnKGAke1VSTC5QUk9WSU5DRX0ke2lkfWApXG59XG5cbmV4cG9ydCBjb25zdCBjcmVhdGVQcm92aW5jZVNlcnZpY2UgPSBhc3luYyAoZGF0YTogUHJvdmluY2UpOiBQcm9taXNlPFByb3ZpbmNlPiA9PiB7XG4gIHJldHVybiBwb3N0V2l0aENvbmZpZyhgJHtVUkwuUFJPVklOQ0V9YCwgZGF0YSk7XG59O1xuXG5leHBvcnQgY29uc3QgdXBkYXRlUHJvdmluY2VTZXJ2aWNlID0gYXN5bmMgKGlkOiBudW1iZXIsIGRhdGE6IFByb3ZpbmNlKTogUHJvbWlzZTxQcm92aW5jZT4gPT4ge1xuICByZXR1cm4gcHV0V2l0aENvbmZpZyhgJHtVUkwuUFJPVklOQ0V9JHtpZH1gLCBkYXRhKTtcbn07XG5cbmV4cG9ydCBjb25zdCBkZWxldGVQcm92aW5jZVNlcnZpY2UgPSBhc3luYyhpZDogbnVtYmVyKSA9PntcbiAgcmV0dXJuIGF3YWl0IHJlbW92ZVdpdGhDb25maWcoYCR7VVJMLlBST1ZJTkNFfSR7aWR9YClcbn1cbiIsImltcG9ydCB7IGNyZWF0ZUFzeW5jVGh1bmsgfSBmcm9tICdAcmVkdXhqcy90b29sa2l0JztcbmltcG9ydCB7IFNLSUxMUywgU0tJTEwsIFNLSUxMX0RFTEVURSwgU0tJTExfQ1JFQVRFLCBTS0lMTF9VUERBVEUgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBza2lsbHNTZXJ2aWNlLCBza2lsbERldGFpbFNlcnZpY2UsIGNyZWF0ZVNraWxsU2VydmljZSwgdXBkYXRlU2tpbGxTZXJ2aWNlLCBkZWxldGVTa2lsbFNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzJztcbmltcG9ydCB7IFNraWxsIH0gZnJvbSAnQC9zaGFyZWQvaW50ZXJmYWNlcyc7XG5cbmV4cG9ydCBjb25zdCBmZXRjaFNraWxsczogYW55ID0gY3JlYXRlQXN5bmNUaHVuayhcbiAgU0tJTExTLFxuICBza2lsbHNTZXJ2aWNlXG4pO1xuXG5leHBvcnQgY29uc3Qgc2tpbGxEZXRhaWxBY3Rpb246IGFueSA9IGNyZWF0ZUFzeW5jVGh1bmsoXG4gIFNLSUxMLFxuICBza2lsbERldGFpbFNlcnZpY2VcbilcblxuZXhwb3J0IGNvbnN0IGNyZWF0ZVNraWxsQWN0aW9uID0gY3JlYXRlQXN5bmNUaHVuazxTa2lsbCwgeyBkYXRhOiBTa2lsbCB9PihcbiAgU0tJTExfQ1JFQVRFLFxuICBhc3luYyAoeyBkYXRhIH0sIHsgcmVqZWN0V2l0aFZhbHVlIH0pID0+IHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIGF3YWl0IGNyZWF0ZVNraWxsU2VydmljZShkYXRhKTtcbiAgICB9IGNhdGNoIChlcnJvcjogYW55KSB7XG4gICAgICByZXR1cm4gcmVqZWN0V2l0aFZhbHVlKGVycm9yLnJlc3BvbnNlPy5kYXRhPy5tZXNzYWdlIHx8IFwiRmFpbGVkIHRvIGNyZWF0ZSBza2lsbFwiKTtcbiAgICB9XG4gIH1cbik7XG5cbmV4cG9ydCBjb25zdCB1cGRhdGVTa2lsbEFjdGlvbiA9IGNyZWF0ZUFzeW5jVGh1bms8U2tpbGwsIHsgaWQ6IG51bWJlcjsgZGF0YTogU2tpbGwgfT4oXG4gIFNLSUxMX1VQREFURSxcbiAgYXN5bmMgKHsgaWQsIGRhdGEgfSwgeyByZWplY3RXaXRoVmFsdWUgfSkgPT4ge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gYXdhaXQgdXBkYXRlU2tpbGxTZXJ2aWNlKGlkLCBkYXRhKTtcbiAgICB9IGNhdGNoIChlcnJvcjogYW55KSB7XG4gICAgICByZXR1cm4gcmVqZWN0V2l0aFZhbHVlKGVycm9yLnJlc3BvbnNlPy5kYXRhPy5tZXNzYWdlIHx8IFwiRmFpbGVkIHRvIHVwZGF0ZSBza2lsbFwiKTtcbiAgICB9XG4gIH1cbik7XG5cbmV4cG9ydCBjb25zdCBkZWxldGVTa2lsbEFjdGlvbjogYW55ID0gY3JlYXRlQXN5bmNUaHVuayhcbiAgU0tJTExfREVMRVRFLFxuICBkZWxldGVTa2lsbFNlcnZpY2VcbilcbiIsImV4cG9ydCBjb25zdCBTS0lMTFMgPSAnc2tpbGxzL2ZldGNoQWxsJztcbmV4cG9ydCBjb25zdCBTS0lMTCA9ICdza2lsbHMvZmV0Y2hCeUlEJztcbmV4cG9ydCBjb25zdCBTS0lMTF9DUkVBVEUgPSAnc2tpbGxzL2NyZWF0ZSc7XG5leHBvcnQgY29uc3QgU0tJTExfVVBEQVRFID0gJ3NraWxscy91cGRhdGUnO1xuZXhwb3J0IGNvbnN0IFNLSUxMX0RFTEVURSA9ICdza2lsbHMvZGVsZXRlJztcbiIsIi8qIGVzbGludC1kaXNhYmxlIG5vLWNvbnNvbGUgKi9cblxuaW1wb3J0IHsgY3JlYXRlU2xpY2UsIFBheWxvYWRBY3Rpb24gfSBmcm9tICdAcmVkdXhqcy90b29sa2l0JztcbmltcG9ydCB7IFNraWxsLCBTa2lsbFN0YXRlIH0gZnJvbSAnQC9zaGFyZWQvaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBmZXRjaFNraWxscywgdXBkYXRlU2tpbGxBY3Rpb24sIHNraWxsRGV0YWlsQWN0aW9uLCBjcmVhdGVTa2lsbEFjdGlvbiwgZGVsZXRlU2tpbGxBY3Rpb24gfSBmcm9tICcuL2FjdGlvbnMnO1xuaW1wb3J0IHsgU0tJTEwgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5cbmNvbnN0IGluaXRpYWxTdGF0ZTogU2tpbGxTdGF0ZSA9IHtcbiAgc2tpbGxzOiBbXSxcbiAgc2tpbGw6IG51bGwsXG4gIHNraWxsc1BlbmRpbmc6IGZhbHNlLFxuICBza2lsbERldGFpbFBlbmRpbmc6IGZhbHNlLFxuICBza2lsbENyZWF0ZVBlbmRpbmc6IGZhbHNlLFxuICBza2lsbFVwZGF0ZVBlbmRpbmc6IGZhbHNlLFxuICBza2lsbERlbGV0ZVBlbmRpbmc6IGZhbHNlLFxuICByZWdpc3RlckVycm9yTWVzc2FnZTogJycsXG59O1xuXG5leHBvcnQgY29uc3Qgc2tpbGxTbGljZSA9IGNyZWF0ZVNsaWNlKHtcbiAgbmFtZTogU0tJTEwsXG4gIGluaXRpYWxTdGF0ZSxcbiAgcmVkdWNlcnM6IHtcbiAgICAvLyBTZXRzIHRoZSBjdXJyZW50IHNraWxsXG4gICAgc2V0U2tpbGw6IChzdGF0ZSwgYWN0aW9uOiBQYXlsb2FkQWN0aW9uPFNraWxsPikgPT4ge1xuICAgICAgc3RhdGUuc2tpbGwgPSBhY3Rpb24ucGF5bG9hZDtcbiAgICB9LFxuXG4gICAgLy8gVXBkYXRlcyB0aGUgcmVnaXN0ZXIgZXJyb3IgbWVzc2FnZVxuICAgIHNldFJlZ2lzdGVyRXJyb3JNZXNzYWdlOiAoc3RhdGUsIGFjdGlvbjogUGF5bG9hZEFjdGlvbjxzdHJpbmc+KSA9PiB7XG4gICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9IGFjdGlvbi5wYXlsb2FkO1xuICAgIH0sXG4gIH0sXG5cbiAgZXh0cmFSZWR1Y2VyczogKGJ1aWxkZXIpID0+IHtcbiAgICBidWlsZGVyXG4gICAgICAvLyBoYW5kbGUgc2tpbGxcbiAgICAgIC5hZGRDYXNlKGZldGNoU2tpbGxzLnBlbmRpbmcsIChzdGF0ZSkgPT4ge1xuICAgICAgICBzdGF0ZS5za2lsbHNQZW5kaW5nID0gdHJ1ZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSAnJztcbiAgICAgIH0pXG4gICAgICAvLyBIYW5kbGVzIHJlamVjdGVkIHNraWxscyBmZXRjaFxuICAgICAgLmFkZENhc2UoZmV0Y2hTa2lsbHMucmVqZWN0ZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIHN0YXRlLnNraWxsc1BlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSBhY3Rpb24uZXJyb3IubWVzc2FnZSB8fCAnRmFpbGVkIHRvIGZldGNoIHNraWxscy4nO1xuICAgICAgfSlcbiAgICAgIC8vIEhhbmRsZXMgZnVsZmlsbGVkIHNraWxscyBmZXRjaFxuICAgICAgLmFkZENhc2UoZmV0Y2hTa2lsbHMuZnVsZmlsbGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBjb25zdCB7IHBheWxvYWQgfSA9IGFjdGlvbjtcbiAgICAgICAgc3RhdGUuc2tpbGxzID0gcGF5bG9hZDtcbiAgICAgICAgc3RhdGUuc2tpbGxzUGVuZGluZyA9IGZhbHNlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9ICcnO1xuICAgICAgfSlcblxuICAgICAgLy8gaGFuZGxlIHNraWxsIGRldGFpbFxuICAgICAgLmFkZENhc2Uoc2tpbGxEZXRhaWxBY3Rpb24ucGVuZGluZywgKHN0YXRlKSA9PiB7XG4gICAgICAgIHN0YXRlLnNraWxsRGV0YWlsUGVuZGluZyA9IHRydWU7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gJyc7XG4gICAgICB9KVxuICAgICAgLy8gSGFuZGxlcyByZWplY3RlZCBza2lsbHMgZmV0Y2hcbiAgICAgIC5hZGRDYXNlKHNraWxsRGV0YWlsQWN0aW9uLnJlamVjdGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS5za2lsbERldGFpbFBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSBhY3Rpb24uZXJyb3IubWVzc2FnZSB8fCAnRmFpbGVkIHRvIGZldGNoIHNraWxscy4nO1xuICAgICAgfSlcbiAgICAgIC8vIEhhbmRsZXMgZnVsZmlsbGVkIHNraWxscyBmZXRjaFxuICAgICAgLmFkZENhc2Uoc2tpbGxEZXRhaWxBY3Rpb24uZnVsZmlsbGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBjb25zdCB7IHBheWxvYWQgfSA9IGFjdGlvbjtcbiAgICAgICAgc3RhdGUuc2tpbGwgPSBwYXlsb2FkO1xuICAgICAgICBzdGF0ZS5za2lsbERldGFpbFBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSAnJztcbiAgICAgIH0pXG5cbiAgICAgIC8vIGhhbmRsZSBza2lsbCBjcmVhdGVcbiAgICAgIC5hZGRDYXNlKGNyZWF0ZVNraWxsQWN0aW9uLnBlbmRpbmcsIChzdGF0ZSkgPT4ge1xuICAgICAgICBzdGF0ZS5za2lsbFVwZGF0ZVBlbmRpbmcgPSB0cnVlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9ICcnO1xuICAgICAgfSlcbiAgICAgIC5hZGRDYXNlKGNyZWF0ZVNraWxsQWN0aW9uLnJlamVjdGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS5za2lsbFVwZGF0ZVBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSBhY3Rpb24uZXJyb3IubWVzc2FnZSB8fCAnRmFpbGVkIHRvIGNyZWF0ZSBza2lsbHMuJztcbiAgICAgIH0pXG4gICAgICAuYWRkQ2FzZShjcmVhdGVTa2lsbEFjdGlvbi5mdWxmaWxsZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIHN0YXRlLnNraWxsID0gYWN0aW9uLnBheWxvYWQ7XG4gICAgICAgIHN0YXRlLnNraWxsVXBkYXRlUGVuZGluZyA9IGZhbHNlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9ICcnO1xuICAgICAgfSlcblxuICAgICAgLy8gaGFuZGxlIHNraWxsIHVwZGF0ZVxuICAgICAgLmFkZENhc2UodXBkYXRlU2tpbGxBY3Rpb24ucGVuZGluZywgKHN0YXRlKSA9PiB7XG4gICAgICAgIHN0YXRlLnNraWxsVXBkYXRlUGVuZGluZyA9IHRydWU7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gJyc7XG4gICAgICB9KVxuICAgICAgLmFkZENhc2UodXBkYXRlU2tpbGxBY3Rpb24ucmVqZWN0ZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIHN0YXRlLnNraWxsVXBkYXRlUGVuZGluZyA9IGZhbHNlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9IGFjdGlvbi5lcnJvci5tZXNzYWdlIHx8ICdGYWlsZWQgdG8gdXBkYXRlIHNraWxscy4nO1xuICAgICAgfSlcbiAgICAgIC5hZGRDYXNlKHVwZGF0ZVNraWxsQWN0aW9uLmZ1bGZpbGxlZCwgKHN0YXRlLCBhY3Rpb24pID0+IHtcbiAgICAgICAgc3RhdGUuc2tpbGwgPSBhY3Rpb24ucGF5bG9hZDtcbiAgICAgICAgc3RhdGUuc2tpbGxVcGRhdGVQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gJyc7XG4gICAgICB9KVxuXG4gICAgICAvLyBoYW5kbGUgc2tpbGwgZGVsZXRlXG4gICAgICAuYWRkQ2FzZShkZWxldGVTa2lsbEFjdGlvbi5wZW5kaW5nLCAoc3RhdGUpID0+IHtcbiAgICAgICAgc3RhdGUuc2tpbGxVcGRhdGVQZW5kaW5nID0gdHJ1ZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSAnJztcbiAgICAgIH0pXG4gICAgICAuYWRkQ2FzZShkZWxldGVTa2lsbEFjdGlvbi5yZWplY3RlZCwgKHN0YXRlLCBhY3Rpb24pID0+IHtcbiAgICAgICAgc3RhdGUuc2tpbGxVcGRhdGVQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gYWN0aW9uLmVycm9yLm1lc3NhZ2UgfHwgJ0ZhaWxlZCB0byBkZWxldGUgc2tpbGxzLic7XG4gICAgICB9KVxuICAgICAgLmFkZENhc2UoZGVsZXRlU2tpbGxBY3Rpb24uZnVsZmlsbGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS5za2lsbCA9IGFjdGlvbi5wYXlsb2FkO1xuICAgICAgICBzdGF0ZS5za2lsbFVwZGF0ZVBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSAnJztcbiAgICAgIH0pXG4gIH0sXG59KTtcblxuZXhwb3J0IGNvbnN0IHsgc2V0UmVnaXN0ZXJFcnJvck1lc3NhZ2UsIHNldFNraWxsIH0gPSBza2lsbFNsaWNlLmFjdGlvbnM7XG5cbmV4cG9ydCBkZWZhdWx0IHNraWxsU2xpY2UucmVkdWNlcjtcbiIsImltcG9ydCB7IFNraWxsIH0gZnJvbSAnQC9zaGFyZWQvaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBVUkwgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvY29uZmlncy9jb25zdGFudHMnO1xuaW1wb3J0IHsgZ2V0V2l0aENvbmZpZywgcG9zdFdpdGhDb25maWcsIHB1dFdpdGhDb25maWcsIHJlbW92ZVdpdGhDb25maWcgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvY29yZS9iYXNlL3NlcnZpY2VzJztcblxuZXhwb3J0IGNvbnN0IHNraWxsc1NlcnZpY2UgPSBhc3luYygpID0+IHtcbiAgcmV0dXJuIGF3YWl0IGdldFdpdGhDb25maWcoVVJMLlNLSUxMKVxufVxuXG5leHBvcnQgY29uc3Qgc2tpbGxEZXRhaWxTZXJ2aWNlID0gYXN5bmMoaWQ6IG51bWJlcikgPT4ge1xuICByZXR1cm4gYXdhaXQgZ2V0V2l0aENvbmZpZyhgJHtVUkwuU0tJTEx9JHtpZH1gKVxufVxuXG5leHBvcnQgY29uc3QgY3JlYXRlU2tpbGxTZXJ2aWNlID0gYXN5bmMgKGRhdGE6IFNraWxsKTogUHJvbWlzZTxTa2lsbD4gPT4ge1xuICByZXR1cm4gcG9zdFdpdGhDb25maWcoYCR7VVJMLlNLSUxMfWAsIGRhdGEpO1xufTtcblxuZXhwb3J0IGNvbnN0IHVwZGF0ZVNraWxsU2VydmljZSA9IGFzeW5jIChpZDogbnVtYmVyLCBkYXRhOiBTa2lsbCk6IFByb21pc2U8U2tpbGw+ID0+IHtcbiAgcmV0dXJuIHB1dFdpdGhDb25maWcoYCR7VVJMLlNLSUxMfSR7aWR9YCwgZGF0YSk7XG59O1xuXG5leHBvcnQgY29uc3QgZGVsZXRlU2tpbGxTZXJ2aWNlID0gYXN5bmMoaWQ6IG51bWJlcikgPT57XG4gIHJldHVybiBhd2FpdCByZW1vdmVXaXRoQ29uZmlnKGAke1VSTC5TS0lMTH0ke2lkfWApXG59XG4iLCJpbXBvcnQgeyBjcmVhdGVBc3luY1RodW5rIH0gZnJvbSAnQHJlZHV4anMvdG9vbGtpdCc7XG5pbXBvcnQgeyBURVJNU19DT05ESVRJT05TLCBURVJNU19DT05ESVRJT04sIFRFUk1TX0NPTkRJVElPTl9ERUxFVEUsIFRFUk1TX0NPTkRJVElPTl9DUkVBVEUsIFRFUk1TX0NPTkRJVElPTl9VUERBVEUgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgeyB0ZXJtc0NvbmRpdGlvbnNTZXJ2aWNlLCB0ZXJtc0NvbmRpdGlvbkRldGFpbFNlcnZpY2UsIGNyZWF0ZVRlcm1zQ29uZGl0aW9uU2VydmljZSwgdXBkYXRlVGVybXNDb25kaXRpb25TZXJ2aWNlLCBkZWxldGVUZXJtc0NvbmRpdGlvblNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzJztcbmltcG9ydCB7IFRlcm1zQ29uZGl0aW9uIH0gZnJvbSAnQC9zaGFyZWQvaW50ZXJmYWNlcyc7XG5cbmV4cG9ydCBjb25zdCBmZXRjaFRlcm1zQ29uZGl0aW9uczogYW55ID0gY3JlYXRlQXN5bmNUaHVuayhcbiAgVEVSTVNfQ09ORElUSU9OUyxcbiAgdGVybXNDb25kaXRpb25zU2VydmljZVxuKTtcblxuZXhwb3J0IGNvbnN0IHRlcm1zQ29uZGl0aW9uRGV0YWlsQWN0aW9uOiBhbnkgPSBjcmVhdGVBc3luY1RodW5rKFxuICBURVJNU19DT05ESVRJT04sXG4gIHRlcm1zQ29uZGl0aW9uRGV0YWlsU2VydmljZVxuKVxuXG5leHBvcnQgY29uc3QgY3JlYXRlVGVybXNDb25kaXRpb25BY3Rpb24gPSBjcmVhdGVBc3luY1RodW5rPFRlcm1zQ29uZGl0aW9uLCB7IGRhdGE6IFRlcm1zQ29uZGl0aW9uIH0+KFxuICBURVJNU19DT05ESVRJT05fQ1JFQVRFLFxuICBhc3luYyAoeyBkYXRhIH0sIHsgcmVqZWN0V2l0aFZhbHVlIH0pID0+IHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIGF3YWl0IGNyZWF0ZVRlcm1zQ29uZGl0aW9uU2VydmljZShkYXRhKTtcbiAgICB9IGNhdGNoIChlcnJvcjogYW55KSB7XG4gICAgICByZXR1cm4gcmVqZWN0V2l0aFZhbHVlKGVycm9yLnJlc3BvbnNlPy5kYXRhPy5tZXNzYWdlIHx8IFwiRmFpbGVkIHRvIGNyZWF0ZSB0ZXJtcyBjb25kaXRpb25cIik7XG4gICAgfVxuICB9XG4pO1xuXG5leHBvcnQgY29uc3QgdXBkYXRlVGVybXNDb25kaXRpb25BY3Rpb24gPSBjcmVhdGVBc3luY1RodW5rPFRlcm1zQ29uZGl0aW9uLCB7IGlkOiBudW1iZXI7IGRhdGE6IFRlcm1zQ29uZGl0aW9uIH0+KFxuICBURVJNU19DT05ESVRJT05fVVBEQVRFLFxuICBhc3luYyAoeyBpZCwgZGF0YSB9LCB7IHJlamVjdFdpdGhWYWx1ZSB9KSA9PiB7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiBhd2FpdCB1cGRhdGVUZXJtc0NvbmRpdGlvblNlcnZpY2UoaWQsIGRhdGEpO1xuICAgIH0gY2F0Y2ggKGVycm9yOiBhbnkpIHtcbiAgICAgIHJldHVybiByZWplY3RXaXRoVmFsdWUoZXJyb3IucmVzcG9uc2U/LmRhdGE/Lm1lc3NhZ2UgfHwgXCJGYWlsZWQgdG8gdXBkYXRlIHRlcm1zIGNvbmRpdGlvblwiKTtcbiAgICB9XG4gIH1cbik7XG5cbmV4cG9ydCBjb25zdCBkZWxldGVUZXJtc0NvbmRpdGlvbkFjdGlvbjogYW55ID0gY3JlYXRlQXN5bmNUaHVuayhcbiAgVEVSTVNfQ09ORElUSU9OX0RFTEVURSxcbiAgZGVsZXRlVGVybXNDb25kaXRpb25TZXJ2aWNlXG4pXG4iLCJleHBvcnQgY29uc3QgVEVSTVNfQ09ORElUSU9OUyA9ICd0ZXJtcy1jb25kaXRpb25zL2ZldGNoQWxsJztcbmV4cG9ydCBjb25zdCBURVJNU19DT05ESVRJT04gPSAndGVybXMtY29uZGl0aW9ucy9mZXRjaEJ5SUQnO1xuZXhwb3J0IGNvbnN0IFRFUk1TX0NPTkRJVElPTl9DUkVBVEUgPSAndGVybXMtY29uZGl0aW9ucy9jcmVhdGUnO1xuZXhwb3J0IGNvbnN0IFRFUk1TX0NPTkRJVElPTl9VUERBVEUgPSAndGVybXMtY29uZGl0aW9ucy91cGRhdGUnO1xuZXhwb3J0IGNvbnN0IFRFUk1TX0NPTkRJVElPTl9ERUxFVEUgPSAndGVybXMtY29uZGl0aW9ucy9kZWxldGUnO1xuIiwiLyogZXNsaW50LWRpc2FibGUgbm8tY29uc29sZSAqL1xuXG5pbXBvcnQgeyBjcmVhdGVTbGljZSwgUGF5bG9hZEFjdGlvbiB9IGZyb20gJ0ByZWR1eGpzL3Rvb2xraXQnO1xuaW1wb3J0IHsgVGVybXNDb25kaXRpb24sIFRlcm1zQ29uZGl0aW9uU3RhdGUgfSBmcm9tICdAL3NoYXJlZC9pbnRlcmZhY2VzJztcbmltcG9ydCB7IGZldGNoVGVybXNDb25kaXRpb25zLCB1cGRhdGVUZXJtc0NvbmRpdGlvbkFjdGlvbiwgdGVybXNDb25kaXRpb25EZXRhaWxBY3Rpb24sIGNyZWF0ZVRlcm1zQ29uZGl0aW9uQWN0aW9uLCBkZWxldGVUZXJtc0NvbmRpdGlvbkFjdGlvbiB9IGZyb20gJy4vYWN0aW9ucyc7XG5pbXBvcnQgeyBURVJNU19DT05ESVRJT04gfSBmcm9tICcuL2NvbnN0YW50cyc7XG5cbmNvbnN0IGluaXRpYWxTdGF0ZTogVGVybXNDb25kaXRpb25TdGF0ZSA9IHtcbiAgdGVybXNDb25kaXRpb25zOiBbXSxcbiAgdGVybXNDb25kaXRpb246IG51bGwsXG4gIHRlcm1zQ29uZGl0aW9uc1BlbmRpbmc6IGZhbHNlLFxuICB0ZXJtc0NvbmRpdGlvbkRldGFpbFBlbmRpbmc6IGZhbHNlLFxuICB0ZXJtc0NvbmRpdGlvbkNyZWF0ZVBlbmRpbmc6IGZhbHNlLFxuICB0ZXJtc0NvbmRpdGlvblVwZGF0ZVBlbmRpbmc6IGZhbHNlLFxuICB0ZXJtc0NvbmRpdGlvbkRlbGV0ZVBlbmRpbmc6IGZhbHNlLFxuICByZWdpc3RlckVycm9yTWVzc2FnZTogJycsXG59O1xuXG5leHBvcnQgY29uc3QgdGVybXNDb25kaXRpb25TbGljZSA9IGNyZWF0ZVNsaWNlKHtcbiAgbmFtZTogVEVSTVNfQ09ORElUSU9OLFxuICBpbml0aWFsU3RhdGUsXG4gIHJlZHVjZXJzOiB7XG4gICAgLy8gU2V0cyB0aGUgY3VycmVudCB0ZXJtc0NvbmRpdGlvblxuICAgIHNldFRlcm1zQ29uZGl0aW9uOiAoc3RhdGUsIGFjdGlvbjogUGF5bG9hZEFjdGlvbjxUZXJtc0NvbmRpdGlvbj4pID0+IHtcbiAgICAgIHN0YXRlLnRlcm1zQ29uZGl0aW9uID0gYWN0aW9uLnBheWxvYWQ7XG4gICAgfSxcblxuICAgIC8vIFVwZGF0ZXMgdGhlIHJlZ2lzdGVyIGVycm9yIG1lc3NhZ2VcbiAgICBzZXRSZWdpc3RlckVycm9yTWVzc2FnZTogKHN0YXRlLCBhY3Rpb246IFBheWxvYWRBY3Rpb248c3RyaW5nPikgPT4ge1xuICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSBhY3Rpb24ucGF5bG9hZDtcbiAgICB9LFxuICB9LFxuXG4gIGV4dHJhUmVkdWNlcnM6IChidWlsZGVyKSA9PiB7XG4gICAgYnVpbGRlclxuICAgICAgLy8gaGFuZGxlIHRlcm1zIGNvbmRpdGlvblxuICAgICAgLmFkZENhc2UoZmV0Y2hUZXJtc0NvbmRpdGlvbnMucGVuZGluZywgKHN0YXRlKSA9PiB7XG4gICAgICAgIHN0YXRlLnRlcm1zQ29uZGl0aW9uc1BlbmRpbmcgPSB0cnVlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9ICcnO1xuICAgICAgfSlcbiAgICAgIC8vIEhhbmRsZXMgcmVqZWN0ZWQgdGVybXMgY29uZGl0aW9ucyBmZXRjaFxuICAgICAgLmFkZENhc2UoZmV0Y2hUZXJtc0NvbmRpdGlvbnMucmVqZWN0ZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIHN0YXRlLnRlcm1zQ29uZGl0aW9uc1BlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSBhY3Rpb24uZXJyb3IubWVzc2FnZSB8fCAnRmFpbGVkIHRvIGZldGNoIHRlcm1zIGNvbmRpdGlvbnMuJztcbiAgICAgIH0pXG4gICAgICAvLyBIYW5kbGVzIGZ1bGZpbGxlZCB0ZXJtcyBjb25kaXRpb25zIGZldGNoXG4gICAgICAuYWRkQ2FzZShmZXRjaFRlcm1zQ29uZGl0aW9ucy5mdWxmaWxsZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIGNvbnN0IHsgcGF5bG9hZCB9ID0gYWN0aW9uO1xuICAgICAgICBzdGF0ZS50ZXJtc0NvbmRpdGlvbnMgPSBwYXlsb2FkO1xuICAgICAgICBzdGF0ZS50ZXJtc0NvbmRpdGlvbnNQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gJyc7XG4gICAgICB9KVxuXG4gICAgICAvLyBoYW5kbGUgdGVybXMgY29uZGl0aW9uIGRldGFpbFxuICAgICAgLmFkZENhc2UodGVybXNDb25kaXRpb25EZXRhaWxBY3Rpb24ucGVuZGluZywgKHN0YXRlKSA9PiB7XG4gICAgICAgIHN0YXRlLnRlcm1zQ29uZGl0aW9uRGV0YWlsUGVuZGluZyA9IHRydWU7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gJyc7XG4gICAgICB9KVxuICAgICAgLy8gSGFuZGxlcyByZWplY3RlZCB0ZXJtcyBjb25kaXRpb25zIGZldGNoXG4gICAgICAuYWRkQ2FzZSh0ZXJtc0NvbmRpdGlvbkRldGFpbEFjdGlvbi5yZWplY3RlZCwgKHN0YXRlLCBhY3Rpb24pID0+IHtcbiAgICAgICAgc3RhdGUudGVybXNDb25kaXRpb25EZXRhaWxQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gYWN0aW9uLmVycm9yLm1lc3NhZ2UgfHwgJ0ZhaWxlZCB0byBmZXRjaCB0ZXJtcyBjb25kaXRpb25zLic7XG4gICAgICB9KVxuICAgICAgLy8gSGFuZGxlcyBmdWxmaWxsZWQgdGVybXMgY29uZGl0aW9ucyBmZXRjaFxuICAgICAgLmFkZENhc2UodGVybXNDb25kaXRpb25EZXRhaWxBY3Rpb24uZnVsZmlsbGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBjb25zdCB7IHBheWxvYWQgfSA9IGFjdGlvbjtcbiAgICAgICAgc3RhdGUudGVybXNDb25kaXRpb24gPSBwYXlsb2FkO1xuICAgICAgICBzdGF0ZS50ZXJtc0NvbmRpdGlvbkRldGFpbFBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSAnJztcbiAgICAgIH0pXG5cbiAgICAgIC8vIGhhbmRsZSB0ZXJtc0NvbmRpdGlvbiBjcmVhdGVcbiAgICAgIC5hZGRDYXNlKGNyZWF0ZVRlcm1zQ29uZGl0aW9uQWN0aW9uLnBlbmRpbmcsIChzdGF0ZSkgPT4ge1xuICAgICAgICBzdGF0ZS50ZXJtc0NvbmRpdGlvblVwZGF0ZVBlbmRpbmcgPSB0cnVlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9ICcnO1xuICAgICAgfSlcbiAgICAgIC5hZGRDYXNlKGNyZWF0ZVRlcm1zQ29uZGl0aW9uQWN0aW9uLnJlamVjdGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS50ZXJtc0NvbmRpdGlvblVwZGF0ZVBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSBhY3Rpb24uZXJyb3IubWVzc2FnZSB8fCAnRmFpbGVkIHRvIGNyZWF0ZSB0ZXJtcyBjb25kaXRpb25zLic7XG4gICAgICB9KVxuICAgICAgLmFkZENhc2UoY3JlYXRlVGVybXNDb25kaXRpb25BY3Rpb24uZnVsZmlsbGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS50ZXJtc0NvbmRpdGlvbiA9IGFjdGlvbi5wYXlsb2FkO1xuICAgICAgICBzdGF0ZS50ZXJtc0NvbmRpdGlvblVwZGF0ZVBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSAnJztcbiAgICAgIH0pXG5cbiAgICAgIC8vIGhhbmRsZSB0ZXJtc0NvbmRpdGlvbiB1cGRhdGVcbiAgICAgIC5hZGRDYXNlKHVwZGF0ZVRlcm1zQ29uZGl0aW9uQWN0aW9uLnBlbmRpbmcsIChzdGF0ZSkgPT4ge1xuICAgICAgICBzdGF0ZS50ZXJtc0NvbmRpdGlvblVwZGF0ZVBlbmRpbmcgPSB0cnVlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9ICcnO1xuICAgICAgfSlcbiAgICAgIC5hZGRDYXNlKHVwZGF0ZVRlcm1zQ29uZGl0aW9uQWN0aW9uLnJlamVjdGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS50ZXJtc0NvbmRpdGlvblVwZGF0ZVBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSBhY3Rpb24uZXJyb3IubWVzc2FnZSB8fCAnRmFpbGVkIHRvIHVwZGF0ZSB0ZXJtcyBjb25kaXRpb25zLic7XG4gICAgICB9KVxuICAgICAgLmFkZENhc2UodXBkYXRlVGVybXNDb25kaXRpb25BY3Rpb24uZnVsZmlsbGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS50ZXJtc0NvbmRpdGlvbiA9IGFjdGlvbi5wYXlsb2FkO1xuICAgICAgICBzdGF0ZS50ZXJtc0NvbmRpdGlvblVwZGF0ZVBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSAnJztcbiAgICAgIH0pXG5cbiAgICAgIC8vIGhhbmRsZSB0ZXJtc0NvbmRpdGlvbiBkZWxldGVcbiAgICAgIC5hZGRDYXNlKGRlbGV0ZVRlcm1zQ29uZGl0aW9uQWN0aW9uLnBlbmRpbmcsIChzdGF0ZSkgPT4ge1xuICAgICAgICBzdGF0ZS50ZXJtc0NvbmRpdGlvblVwZGF0ZVBlbmRpbmcgPSB0cnVlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9ICcnO1xuICAgICAgfSlcbiAgICAgIC5hZGRDYXNlKGRlbGV0ZVRlcm1zQ29uZGl0aW9uQWN0aW9uLnJlamVjdGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS50ZXJtc0NvbmRpdGlvblVwZGF0ZVBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSBhY3Rpb24uZXJyb3IubWVzc2FnZSB8fCAnRmFpbGVkIHRvIGRlbGV0ZSB0ZXJtcyBjb25kaXRpb25zLic7XG4gICAgICB9KVxuICAgICAgLmFkZENhc2UoZGVsZXRlVGVybXNDb25kaXRpb25BY3Rpb24uZnVsZmlsbGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS50ZXJtc0NvbmRpdGlvbiA9IGFjdGlvbi5wYXlsb2FkO1xuICAgICAgICBzdGF0ZS50ZXJtc0NvbmRpdGlvblVwZGF0ZVBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSAnJztcbiAgICAgIH0pXG4gIH0sXG59KTtcblxuZXhwb3J0IGNvbnN0IHsgc2V0UmVnaXN0ZXJFcnJvck1lc3NhZ2UsIHNldFRlcm1zQ29uZGl0aW9uIH0gPSB0ZXJtc0NvbmRpdGlvblNsaWNlLmFjdGlvbnM7XG5cbmV4cG9ydCBkZWZhdWx0IHRlcm1zQ29uZGl0aW9uU2xpY2UucmVkdWNlcjtcbiIsImltcG9ydCB7IFRlcm1zQ29uZGl0aW9uIH0gZnJvbSAnQC9zaGFyZWQvaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBVUkwgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvY29uZmlncy9jb25zdGFudHMnO1xuaW1wb3J0IHsgZ2V0V2l0aENvbmZpZywgcG9zdFdpdGhDb25maWcsIHB1dFdpdGhDb25maWcsIHJlbW92ZVdpdGhDb25maWcgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvY29yZS9iYXNlL3NlcnZpY2VzJztcblxuZXhwb3J0IGNvbnN0IHRlcm1zQ29uZGl0aW9uc1NlcnZpY2UgPSBhc3luYygpID0+IHtcbiAgcmV0dXJuIGF3YWl0IGdldFdpdGhDb25maWcoVVJMLlRFUk1TX0NPTkRJVElPTilcbn1cblxuZXhwb3J0IGNvbnN0IHRlcm1zQ29uZGl0aW9uRGV0YWlsU2VydmljZSA9IGFzeW5jKGlkOiBudW1iZXIpID0+IHtcbiAgcmV0dXJuIGF3YWl0IGdldFdpdGhDb25maWcoYCR7VVJMLlRFUk1TX0NPTkRJVElPTn0ke2lkfWApXG59XG5cbmV4cG9ydCBjb25zdCBjcmVhdGVUZXJtc0NvbmRpdGlvblNlcnZpY2UgPSBhc3luYyAoZGF0YTogVGVybXNDb25kaXRpb24pOiBQcm9taXNlPFRlcm1zQ29uZGl0aW9uPiA9PiB7XG4gIHJldHVybiBwb3N0V2l0aENvbmZpZyhgJHtVUkwuVEVSTVNfQ09ORElUSU9OfWAsIGRhdGEpO1xufTtcblxuZXhwb3J0IGNvbnN0IHVwZGF0ZVRlcm1zQ29uZGl0aW9uU2VydmljZSA9IGFzeW5jIChpZDogbnVtYmVyLCBkYXRhOiBUZXJtc0NvbmRpdGlvbik6IFByb21pc2U8VGVybXNDb25kaXRpb24+ID0+IHtcbiAgcmV0dXJuIHB1dFdpdGhDb25maWcoYCR7VVJMLlRFUk1TX0NPTkRJVElPTn0ke2lkfWAsIGRhdGEpO1xufTtcblxuZXhwb3J0IGNvbnN0IGRlbGV0ZVRlcm1zQ29uZGl0aW9uU2VydmljZSA9IGFzeW5jKGlkOiBudW1iZXIpID0+e1xuICByZXR1cm4gYXdhaXQgcmVtb3ZlV2l0aENvbmZpZyhgJHtVUkwuVEVSTVNfQ09ORElUSU9OfSR7aWR9YClcbn1cbiIsImltcG9ydCB7IGNyZWF0ZUFzeW5jVGh1bmsgfSBmcm9tICdAcmVkdXhqcy90b29sa2l0JztcbmltcG9ydCB7IFRSQUlOSU5HX1NFU1NJT05TLCBUUkFJTklOR19TRVNTSU9OLCBUUkFJTklOR19TRVNTSU9OX0RFTEVURSwgVFJBSU5JTkdfU0VTU0lPTl9DUkVBVEUsIFRSQUlOSU5HX1NFU1NJT05fVVBEQVRFIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgdHJhaW5pbmdTZXNzaW9uc1NlcnZpY2UsIHRyYWluaW5nU2Vzc2lvbkRldGFpbFNlcnZpY2UsIGNyZWF0ZVRyYWluaW5nU2Vzc2lvblNlcnZpY2UsIHVwZGF0ZVRyYWluaW5nU2Vzc2lvblNlcnZpY2UsIGRlbGV0ZVRyYWluaW5nU2Vzc2lvblNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzJztcbmltcG9ydCB7IFRyYWluaW5nU2Vzc2lvbiB9IGZyb20gJ0Avc2hhcmVkL2ludGVyZmFjZXMnO1xuXG5leHBvcnQgY29uc3QgZmV0Y2hUcmFpbmluZ1Nlc3Npb25zOiBhbnkgPSBjcmVhdGVBc3luY1RodW5rKFxuICBUUkFJTklOR19TRVNTSU9OUyxcbiAgdHJhaW5pbmdTZXNzaW9uc1NlcnZpY2Vcbik7XG5cbmV4cG9ydCBjb25zdCB0cmFpbmluZ1Nlc3Npb25EZXRhaWxBY3Rpb246IGFueSA9IGNyZWF0ZUFzeW5jVGh1bmsoXG4gIFRSQUlOSU5HX1NFU1NJT04sXG4gIHRyYWluaW5nU2Vzc2lvbkRldGFpbFNlcnZpY2VcbilcblxuZXhwb3J0IGNvbnN0IGNyZWF0ZVRyYWluaW5nU2Vzc2lvbkFjdGlvbiA9IGNyZWF0ZUFzeW5jVGh1bms8VHJhaW5pbmdTZXNzaW9uLCB7IGRhdGE6IFRyYWluaW5nU2Vzc2lvbiB9PihcbiAgVFJBSU5JTkdfU0VTU0lPTl9DUkVBVEUsXG4gIGFzeW5jICh7IGRhdGEgfSwgeyByZWplY3RXaXRoVmFsdWUgfSkgPT4ge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gYXdhaXQgY3JlYXRlVHJhaW5pbmdTZXNzaW9uU2VydmljZShkYXRhKTtcbiAgICB9IGNhdGNoIChlcnJvcjogYW55KSB7XG4gICAgICByZXR1cm4gcmVqZWN0V2l0aFZhbHVlKGVycm9yLnJlc3BvbnNlPy5kYXRhPy5tZXNzYWdlIHx8IFwiRmFpbGVkIHRvIGNyZWF0ZSB0cmFpbmluZyBzZXNzaW9uXCIpO1xuICAgIH1cbiAgfVxuKTtcblxuZXhwb3J0IGNvbnN0IHVwZGF0ZVRyYWluaW5nU2Vzc2lvbkFjdGlvbiA9IGNyZWF0ZUFzeW5jVGh1bms8VHJhaW5pbmdTZXNzaW9uLCB7IGlkOiBudW1iZXI7IGRhdGE6IFRyYWluaW5nU2Vzc2lvbiB9PihcbiAgVFJBSU5JTkdfU0VTU0lPTl9VUERBVEUsXG4gIGFzeW5jICh7IGlkLCBkYXRhIH0sIHsgcmVqZWN0V2l0aFZhbHVlIH0pID0+IHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIGF3YWl0IHVwZGF0ZVRyYWluaW5nU2Vzc2lvblNlcnZpY2UoaWQsIGRhdGEpO1xuICAgIH0gY2F0Y2ggKGVycm9yOiBhbnkpIHtcbiAgICAgIHJldHVybiByZWplY3RXaXRoVmFsdWUoZXJyb3IucmVzcG9uc2U/LmRhdGE/Lm1lc3NhZ2UgfHwgXCJGYWlsZWQgdG8gdXBkYXRlIHRyYWluaW5nIHNlc3Npb25cIik7XG4gICAgfVxuICB9XG4pO1xuXG5leHBvcnQgY29uc3QgZGVsZXRlVHJhaW5pbmdTZXNzaW9uQWN0aW9uOiBhbnkgPSBjcmVhdGVBc3luY1RodW5rKFxuICBUUkFJTklOR19TRVNTSU9OX0RFTEVURSxcbiAgZGVsZXRlVHJhaW5pbmdTZXNzaW9uU2VydmljZVxuKVxuIiwiZXhwb3J0IGNvbnN0IFRSQUlOSU5HX1NFU1NJT05TID0gJ3RyYWluaW5nLXNlc3Npb25zL2ZldGNoQWxsJztcbmV4cG9ydCBjb25zdCBUUkFJTklOR19TRVNTSU9OID0gJ3RyYWluaW5nLXNlc3Npb25zL2ZldGNoQnlJRCc7XG5leHBvcnQgY29uc3QgVFJBSU5JTkdfU0VTU0lPTl9DUkVBVEUgPSAndHJhaW5pbmctc2Vzc2lvbnMvY3JlYXRlJztcbmV4cG9ydCBjb25zdCBUUkFJTklOR19TRVNTSU9OX1VQREFURSA9ICd0cmFpbmluZy1zZXNzaW9ucy91cGRhdGUnO1xuZXhwb3J0IGNvbnN0IFRSQUlOSU5HX1NFU1NJT05fREVMRVRFID0gJ3RyYWluaW5nLXNlc3Npb25zL2RlbGV0ZSc7XG4iLCIvKiBlc2xpbnQtZGlzYWJsZSBuby1jb25zb2xlICovXG5cbmltcG9ydCB7IGNyZWF0ZVNsaWNlLCBQYXlsb2FkQWN0aW9uIH0gZnJvbSAnQHJlZHV4anMvdG9vbGtpdCc7XG5pbXBvcnQgeyBUcmFpbmluZ1Nlc3Npb24sIFRyYWluaW5nU2Vzc2lvblN0YXRlIH0gZnJvbSAnQC9zaGFyZWQvaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBmZXRjaFRyYWluaW5nU2Vzc2lvbnMsIHVwZGF0ZVRyYWluaW5nU2Vzc2lvbkFjdGlvbiwgdHJhaW5pbmdTZXNzaW9uRGV0YWlsQWN0aW9uLCBjcmVhdGVUcmFpbmluZ1Nlc3Npb25BY3Rpb24sIGRlbGV0ZVRyYWluaW5nU2Vzc2lvbkFjdGlvbiB9IGZyb20gJy4vYWN0aW9ucyc7XG5pbXBvcnQgeyBUUkFJTklOR19TRVNTSU9OIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuXG5jb25zdCBpbml0aWFsU3RhdGU6IFRyYWluaW5nU2Vzc2lvblN0YXRlID0ge1xuICB0cmFpbmluZ1Nlc3Npb25zOiBbXSxcbiAgdHJhaW5pbmdTZXNzaW9uOiBudWxsLFxuICB0cmFpbmluZ1Nlc3Npb25zUGVuZGluZzogZmFsc2UsXG4gIHRyYWluaW5nU2Vzc2lvbkRldGFpbFBlbmRpbmc6IGZhbHNlLFxuICB0cmFpbmluZ1Nlc3Npb25DcmVhdGVQZW5kaW5nOiBmYWxzZSxcbiAgdHJhaW5pbmdTZXNzaW9uVXBkYXRlUGVuZGluZzogZmFsc2UsXG4gIHRyYWluaW5nU2Vzc2lvbkRlbGV0ZVBlbmRpbmc6IGZhbHNlLFxuICByZWdpc3RlckVycm9yTWVzc2FnZTogJycsXG59O1xuXG5leHBvcnQgY29uc3QgdHJhaW5pbmdTZXNzaW9uU2xpY2UgPSBjcmVhdGVTbGljZSh7XG4gIG5hbWU6IFRSQUlOSU5HX1NFU1NJT04sXG4gIGluaXRpYWxTdGF0ZSxcbiAgcmVkdWNlcnM6IHtcbiAgICAvLyBTZXRzIHRoZSBjdXJyZW50IHRyYWluaW5nU2Vzc2lvblxuICAgIHNldFRyYWluaW5nU2Vzc2lvbjogKHN0YXRlLCBhY3Rpb246IFBheWxvYWRBY3Rpb248VHJhaW5pbmdTZXNzaW9uPikgPT4ge1xuICAgICAgc3RhdGUudHJhaW5pbmdTZXNzaW9uID0gYWN0aW9uLnBheWxvYWQ7XG4gICAgfSxcblxuICAgIC8vIFVwZGF0ZXMgdGhlIHJlZ2lzdGVyIGVycm9yIG1lc3NhZ2VcbiAgICBzZXRSZWdpc3RlckVycm9yTWVzc2FnZTogKHN0YXRlLCBhY3Rpb246IFBheWxvYWRBY3Rpb248c3RyaW5nPikgPT4ge1xuICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSBhY3Rpb24ucGF5bG9hZDtcbiAgICB9LFxuICB9LFxuXG4gIGV4dHJhUmVkdWNlcnM6IChidWlsZGVyKSA9PiB7XG4gICAgYnVpbGRlclxuICAgICAgLy8gaGFuZGxlIHRyYWluaW5nIHNlc3Npb25cbiAgICAgIC5hZGRDYXNlKGZldGNoVHJhaW5pbmdTZXNzaW9ucy5wZW5kaW5nLCAoc3RhdGUpID0+IHtcbiAgICAgICAgc3RhdGUudHJhaW5pbmdTZXNzaW9uc1BlbmRpbmcgPSB0cnVlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9ICcnO1xuICAgICAgfSlcbiAgICAgIC8vIEhhbmRsZXMgcmVqZWN0ZWQgdHJhaW5pbmcgc2Vzc2lvbnMgZmV0Y2hcbiAgICAgIC5hZGRDYXNlKGZldGNoVHJhaW5pbmdTZXNzaW9ucy5yZWplY3RlZCwgKHN0YXRlLCBhY3Rpb24pID0+IHtcbiAgICAgICAgc3RhdGUudHJhaW5pbmdTZXNzaW9uc1BlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSBhY3Rpb24uZXJyb3IubWVzc2FnZSB8fCAnRmFpbGVkIHRvIGZldGNoIHRyYWluaW5nIHNlc3Npb25zLic7XG4gICAgICB9KVxuICAgICAgLy8gSGFuZGxlcyBmdWxmaWxsZWQgdHJhaW5pbmcgc2Vzc2lvbnMgZmV0Y2hcbiAgICAgIC5hZGRDYXNlKGZldGNoVHJhaW5pbmdTZXNzaW9ucy5mdWxmaWxsZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIGNvbnN0IHsgcGF5bG9hZCB9ID0gYWN0aW9uO1xuICAgICAgICBzdGF0ZS50cmFpbmluZ1Nlc3Npb25zID0gcGF5bG9hZDtcbiAgICAgICAgc3RhdGUudHJhaW5pbmdTZXNzaW9uc1BlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSAnJztcbiAgICAgIH0pXG5cbiAgICAgIC8vIGhhbmRsZSB0cmFpbmluZyBzZXNzaW9uIGRldGFpbFxuICAgICAgLmFkZENhc2UodHJhaW5pbmdTZXNzaW9uRGV0YWlsQWN0aW9uLnBlbmRpbmcsIChzdGF0ZSkgPT4ge1xuICAgICAgICBzdGF0ZS50cmFpbmluZ1Nlc3Npb25EZXRhaWxQZW5kaW5nID0gdHJ1ZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSAnJztcbiAgICAgIH0pXG4gICAgICAvLyBIYW5kbGVzIHJlamVjdGVkIHRyYWluaW5nIHNlc3Npb25zIGZldGNoXG4gICAgICAuYWRkQ2FzZSh0cmFpbmluZ1Nlc3Npb25EZXRhaWxBY3Rpb24ucmVqZWN0ZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIHN0YXRlLnRyYWluaW5nU2Vzc2lvbkRldGFpbFBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSBhY3Rpb24uZXJyb3IubWVzc2FnZSB8fCAnRmFpbGVkIHRvIGZldGNoIHRyYWluaW5nIHNlc3Npb25zLic7XG4gICAgICB9KVxuICAgICAgLy8gSGFuZGxlcyBmdWxmaWxsZWQgdHJhaW5pbmcgc2Vzc2lvbnMgZmV0Y2hcbiAgICAgIC5hZGRDYXNlKHRyYWluaW5nU2Vzc2lvbkRldGFpbEFjdGlvbi5mdWxmaWxsZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIGNvbnN0IHsgcGF5bG9hZCB9ID0gYWN0aW9uO1xuICAgICAgICBzdGF0ZS50cmFpbmluZ1Nlc3Npb24gPSBwYXlsb2FkO1xuICAgICAgICBzdGF0ZS50cmFpbmluZ1Nlc3Npb25EZXRhaWxQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gJyc7XG4gICAgICB9KVxuXG4gICAgICAvLyBoYW5kbGUgdHJhaW5pbmdTZXNzaW9uIGNyZWF0ZVxuICAgICAgLmFkZENhc2UoY3JlYXRlVHJhaW5pbmdTZXNzaW9uQWN0aW9uLnBlbmRpbmcsIChzdGF0ZSkgPT4ge1xuICAgICAgICBzdGF0ZS50cmFpbmluZ1Nlc3Npb25VcGRhdGVQZW5kaW5nID0gdHJ1ZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSAnJztcbiAgICAgIH0pXG4gICAgICAuYWRkQ2FzZShjcmVhdGVUcmFpbmluZ1Nlc3Npb25BY3Rpb24ucmVqZWN0ZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIHN0YXRlLnRyYWluaW5nU2Vzc2lvblVwZGF0ZVBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSBhY3Rpb24uZXJyb3IubWVzc2FnZSB8fCAnRmFpbGVkIHRvIGNyZWF0ZSB0cmFpbmluZyBzZXNzaW9ucy4nO1xuICAgICAgfSlcbiAgICAgIC5hZGRDYXNlKGNyZWF0ZVRyYWluaW5nU2Vzc2lvbkFjdGlvbi5mdWxmaWxsZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIHN0YXRlLnRyYWluaW5nU2Vzc2lvbiA9IGFjdGlvbi5wYXlsb2FkO1xuICAgICAgICBzdGF0ZS50cmFpbmluZ1Nlc3Npb25VcGRhdGVQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gJyc7XG4gICAgICB9KVxuXG4gICAgICAvLyBoYW5kbGUgdHJhaW5pbmdTZXNzaW9uIHVwZGF0ZVxuICAgICAgLmFkZENhc2UodXBkYXRlVHJhaW5pbmdTZXNzaW9uQWN0aW9uLnBlbmRpbmcsIChzdGF0ZSkgPT4ge1xuICAgICAgICBzdGF0ZS50cmFpbmluZ1Nlc3Npb25VcGRhdGVQZW5kaW5nID0gdHJ1ZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSAnJztcbiAgICAgIH0pXG4gICAgICAuYWRkQ2FzZSh1cGRhdGVUcmFpbmluZ1Nlc3Npb25BY3Rpb24ucmVqZWN0ZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIHN0YXRlLnRyYWluaW5nU2Vzc2lvblVwZGF0ZVBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSBhY3Rpb24uZXJyb3IubWVzc2FnZSB8fCAnRmFpbGVkIHRvIHVwZGF0ZSB0cmFpbmluZyBzZXNzaW9ucy4nO1xuICAgICAgfSlcbiAgICAgIC5hZGRDYXNlKHVwZGF0ZVRyYWluaW5nU2Vzc2lvbkFjdGlvbi5mdWxmaWxsZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIHN0YXRlLnRyYWluaW5nU2Vzc2lvbiA9IGFjdGlvbi5wYXlsb2FkO1xuICAgICAgICBzdGF0ZS50cmFpbmluZ1Nlc3Npb25VcGRhdGVQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gJyc7XG4gICAgICB9KVxuXG4gICAgICAvLyBoYW5kbGUgdHJhaW5pbmdTZXNzaW9uIGRlbGV0ZVxuICAgICAgLmFkZENhc2UoZGVsZXRlVHJhaW5pbmdTZXNzaW9uQWN0aW9uLnBlbmRpbmcsIChzdGF0ZSkgPT4ge1xuICAgICAgICBzdGF0ZS50cmFpbmluZ1Nlc3Npb25VcGRhdGVQZW5kaW5nID0gdHJ1ZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSAnJztcbiAgICAgIH0pXG4gICAgICAuYWRkQ2FzZShkZWxldGVUcmFpbmluZ1Nlc3Npb25BY3Rpb24ucmVqZWN0ZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIHN0YXRlLnRyYWluaW5nU2Vzc2lvblVwZGF0ZVBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSBhY3Rpb24uZXJyb3IubWVzc2FnZSB8fCAnRmFpbGVkIHRvIGRlbGV0ZSB0cmFpbmluZyBzZXNzaW9ucy4nO1xuICAgICAgfSlcbiAgICAgIC5hZGRDYXNlKGRlbGV0ZVRyYWluaW5nU2Vzc2lvbkFjdGlvbi5mdWxmaWxsZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIHN0YXRlLnRyYWluaW5nU2Vzc2lvbiA9IGFjdGlvbi5wYXlsb2FkO1xuICAgICAgICBzdGF0ZS50cmFpbmluZ1Nlc3Npb25VcGRhdGVQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gJyc7XG4gICAgICB9KVxuICB9LFxufSk7XG5cbmV4cG9ydCBjb25zdCB7IHNldFJlZ2lzdGVyRXJyb3JNZXNzYWdlLCBzZXRUcmFpbmluZ1Nlc3Npb24gfSA9IHRyYWluaW5nU2Vzc2lvblNsaWNlLmFjdGlvbnM7XG5cbmV4cG9ydCBkZWZhdWx0IHRyYWluaW5nU2Vzc2lvblNsaWNlLnJlZHVjZXI7XG4iLCJpbXBvcnQgeyBUcmFpbmluZ1Nlc3Npb24gfSBmcm9tICdAL3NoYXJlZC9pbnRlcmZhY2VzJztcbmltcG9ydCB7IFVSTCB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9jb25maWdzL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBnZXRXaXRoQ29uZmlnLCBwb3N0V2l0aENvbmZpZywgcHV0V2l0aENvbmZpZywgcmVtb3ZlV2l0aENvbmZpZyB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9jb3JlL2Jhc2Uvc2VydmljZXMnO1xuXG5leHBvcnQgY29uc3QgdHJhaW5pbmdTZXNzaW9uc1NlcnZpY2UgPSBhc3luYygpID0+IHtcbiAgcmV0dXJuIGF3YWl0IGdldFdpdGhDb25maWcoVVJMLlRSQUlOSU5HX1NFU1NJT04pXG59XG5cbmV4cG9ydCBjb25zdCB0cmFpbmluZ1Nlc3Npb25EZXRhaWxTZXJ2aWNlID0gYXN5bmMoaWQ6IG51bWJlcikgPT4ge1xuICByZXR1cm4gYXdhaXQgZ2V0V2l0aENvbmZpZyhgJHtVUkwuVFJBSU5JTkdfU0VTU0lPTn0ke2lkfWApXG59XG5cbmV4cG9ydCBjb25zdCBjcmVhdGVUcmFpbmluZ1Nlc3Npb25TZXJ2aWNlID0gYXN5bmMgKGRhdGE6IFRyYWluaW5nU2Vzc2lvbik6IFByb21pc2U8VHJhaW5pbmdTZXNzaW9uPiA9PiB7XG4gIHJldHVybiBwb3N0V2l0aENvbmZpZyhgJHtVUkwuVFJBSU5JTkdfU0VTU0lPTn1gLCBkYXRhKTtcbn07XG5cbmV4cG9ydCBjb25zdCB1cGRhdGVUcmFpbmluZ1Nlc3Npb25TZXJ2aWNlID0gYXN5bmMgKGlkOiBudW1iZXIsIGRhdGE6IFRyYWluaW5nU2Vzc2lvbik6IFByb21pc2U8VHJhaW5pbmdTZXNzaW9uPiA9PiB7XG4gIHJldHVybiBwdXRXaXRoQ29uZmlnKGAke1VSTC5UUkFJTklOR19TRVNTSU9OfSR7aWR9YCwgZGF0YSk7XG59O1xuXG5leHBvcnQgY29uc3QgZGVsZXRlVHJhaW5pbmdTZXNzaW9uU2VydmljZSA9IGFzeW5jKGlkOiBudW1iZXIpID0+e1xuICByZXR1cm4gYXdhaXQgcmVtb3ZlV2l0aENvbmZpZyhgJHtVUkwuVFJBSU5JTkdfU0VTU0lPTn0ke2lkfWApXG59XG4iLCJpbXBvcnQgeyBjcmVhdGVBc3luY1RodW5rIH0gZnJvbSAnQHJlZHV4anMvdG9vbGtpdCc7XG5pbXBvcnQgeyBUUkFWRUxfREFZUywgVFJBVkVMX0RBWSwgVFJBVkVMX0RBWV9ERUxFVEUsIFRSQVZFTF9EQVlfQ1JFQVRFLCBUUkFWRUxfREFZX1VQREFURSB9IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCB7IHRyYXZlbERheXNTZXJ2aWNlLCB0cmF2ZWxEYXlEZXRhaWxTZXJ2aWNlLCBjcmVhdGVUcmF2ZWxEYXlTZXJ2aWNlLCB1cGRhdGVUcmF2ZWxEYXlTZXJ2aWNlLCBkZWxldGVUcmF2ZWxEYXlTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcyc7XG5pbXBvcnQgeyBUcmF2ZWxEYXkgfSBmcm9tICdAL3NoYXJlZC9pbnRlcmZhY2VzJztcblxuZXhwb3J0IGNvbnN0IGZldGNoVHJhdmVsRGF5czogYW55ID0gY3JlYXRlQXN5bmNUaHVuayhcbiAgVFJBVkVMX0RBWVMsXG4gIHRyYXZlbERheXNTZXJ2aWNlXG4pO1xuXG5leHBvcnQgY29uc3QgdHJhdmVsRGF5RGV0YWlsQWN0aW9uOiBhbnkgPSBjcmVhdGVBc3luY1RodW5rKFxuICBUUkFWRUxfREFZLFxuICB0cmF2ZWxEYXlEZXRhaWxTZXJ2aWNlXG4pXG5cbmV4cG9ydCBjb25zdCBjcmVhdGVUcmF2ZWxEYXlBY3Rpb24gPSBjcmVhdGVBc3luY1RodW5rPFRyYXZlbERheSwgeyBkYXRhOiBUcmF2ZWxEYXkgfT4oXG4gIFRSQVZFTF9EQVlfQ1JFQVRFLFxuICBhc3luYyAoeyBkYXRhIH0sIHsgcmVqZWN0V2l0aFZhbHVlIH0pID0+IHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIGF3YWl0IGNyZWF0ZVRyYXZlbERheVNlcnZpY2UoZGF0YSk7XG4gICAgfSBjYXRjaCAoZXJyb3I6IGFueSkge1xuICAgICAgcmV0dXJuIHJlamVjdFdpdGhWYWx1ZShlcnJvci5yZXNwb25zZT8uZGF0YT8ubWVzc2FnZSB8fCBcIkZhaWxlZCB0byBjcmVhdGUgdHJhdmVsIGRheVwiKTtcbiAgICB9XG4gIH1cbik7XG5cbmV4cG9ydCBjb25zdCB1cGRhdGVUcmF2ZWxEYXlBY3Rpb24gPSBjcmVhdGVBc3luY1RodW5rPFRyYXZlbERheSwgeyBpZDogbnVtYmVyOyBkYXRhOiBUcmF2ZWxEYXkgfT4oXG4gIFRSQVZFTF9EQVlfVVBEQVRFLFxuICBhc3luYyAoeyBpZCwgZGF0YSB9LCB7IHJlamVjdFdpdGhWYWx1ZSB9KSA9PiB7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiBhd2FpdCB1cGRhdGVUcmF2ZWxEYXlTZXJ2aWNlKGlkLCBkYXRhKTtcbiAgICB9IGNhdGNoIChlcnJvcjogYW55KSB7XG4gICAgICByZXR1cm4gcmVqZWN0V2l0aFZhbHVlKGVycm9yLnJlc3BvbnNlPy5kYXRhPy5tZXNzYWdlIHx8IFwiRmFpbGVkIHRvIHVwZGF0ZSB0cmF2ZWwgZGF5XCIpO1xuICAgIH1cbiAgfVxuKTtcblxuZXhwb3J0IGNvbnN0IGRlbGV0ZVRyYXZlbERheUFjdGlvbjogYW55ID0gY3JlYXRlQXN5bmNUaHVuayhcbiAgVFJBVkVMX0RBWV9ERUxFVEUsXG4gIGRlbGV0ZVRyYXZlbERheVNlcnZpY2VcbilcbiIsImV4cG9ydCBjb25zdCBUUkFWRUxfREFZUyA9ICd0cmF2ZWwtZGF5cy9mZXRjaEFsbCc7XG5leHBvcnQgY29uc3QgVFJBVkVMX0RBWSA9ICd0cmF2ZWwtZGF5cy9mZXRjaEJ5SUQnO1xuZXhwb3J0IGNvbnN0IFRSQVZFTF9EQVlfQ1JFQVRFID0gJ3RyYXZlbC1kYXlzL2NyZWF0ZSc7XG5leHBvcnQgY29uc3QgVFJBVkVMX0RBWV9VUERBVEUgPSAndHJhdmVsLWRheXMvdXBkYXRlJztcbmV4cG9ydCBjb25zdCBUUkFWRUxfREFZX0RFTEVURSA9ICd0cmF2ZWwtZGF5cy9kZWxldGUnO1xuIiwiLyogZXNsaW50LWRpc2FibGUgbm8tY29uc29sZSAqL1xuXG5pbXBvcnQgeyBjcmVhdGVTbGljZSwgUGF5bG9hZEFjdGlvbiB9IGZyb20gJ0ByZWR1eGpzL3Rvb2xraXQnO1xuaW1wb3J0IHsgVHJhdmVsRGF5LCBUcmF2ZWxEYXlTdGF0ZSB9IGZyb20gJ0Avc2hhcmVkL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgZmV0Y2hUcmF2ZWxEYXlzLCB1cGRhdGVUcmF2ZWxEYXlBY3Rpb24sIHRyYXZlbERheURldGFpbEFjdGlvbiwgY3JlYXRlVHJhdmVsRGF5QWN0aW9uLCBkZWxldGVUcmF2ZWxEYXlBY3Rpb24gfSBmcm9tICcuL2FjdGlvbnMnO1xuaW1wb3J0IHsgVFJBVkVMX0RBWSB9IGZyb20gJy4vY29uc3RhbnRzJztcblxuY29uc3QgaW5pdGlhbFN0YXRlOiBUcmF2ZWxEYXlTdGF0ZSA9IHtcbiAgdHJhdmVsRGF5czogW10sXG4gIHRyYXZlbERheTogbnVsbCxcbiAgdHJhdmVsRGF5c1BlbmRpbmc6IGZhbHNlLFxuICB0cmF2ZWxEYXlEZXRhaWxQZW5kaW5nOiBmYWxzZSxcbiAgdHJhdmVsRGF5Q3JlYXRlUGVuZGluZzogZmFsc2UsXG4gIHRyYXZlbERheVVwZGF0ZVBlbmRpbmc6IGZhbHNlLFxuICB0cmF2ZWxEYXlEZWxldGVQZW5kaW5nOiBmYWxzZSxcbiAgcmVnaXN0ZXJFcnJvck1lc3NhZ2U6ICcnLFxufTtcblxuZXhwb3J0IGNvbnN0IHRyYXZlbERheVNsaWNlID0gY3JlYXRlU2xpY2Uoe1xuICBuYW1lOiBUUkFWRUxfREFZLFxuICBpbml0aWFsU3RhdGUsXG4gIHJlZHVjZXJzOiB7XG4gICAgLy8gU2V0cyB0aGUgY3VycmVudCB0cmF2ZWxEYXlcbiAgICBzZXRUcmF2ZWxEYXk6IChzdGF0ZSwgYWN0aW9uOiBQYXlsb2FkQWN0aW9uPFRyYXZlbERheT4pID0+IHtcbiAgICAgIHN0YXRlLnRyYXZlbERheSA9IGFjdGlvbi5wYXlsb2FkO1xuICAgIH0sXG5cbiAgICAvLyBVcGRhdGVzIHRoZSByZWdpc3RlciBlcnJvciBtZXNzYWdlXG4gICAgc2V0UmVnaXN0ZXJFcnJvck1lc3NhZ2U6IChzdGF0ZSwgYWN0aW9uOiBQYXlsb2FkQWN0aW9uPHN0cmluZz4pID0+IHtcbiAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gYWN0aW9uLnBheWxvYWQ7XG4gICAgfSxcbiAgfSxcblxuICBleHRyYVJlZHVjZXJzOiAoYnVpbGRlcikgPT4ge1xuICAgIGJ1aWxkZXJcbiAgICAgIC8vIGhhbmRsZSB0cmF2ZWwgZGF5XG4gICAgICAuYWRkQ2FzZShmZXRjaFRyYXZlbERheXMucGVuZGluZywgKHN0YXRlKSA9PiB7XG4gICAgICAgIHN0YXRlLnRyYXZlbERheXNQZW5kaW5nID0gdHJ1ZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSAnJztcbiAgICAgIH0pXG4gICAgICAvLyBIYW5kbGVzIHJlamVjdGVkIHRyYXZlbCBkYXlzIGZldGNoXG4gICAgICAuYWRkQ2FzZShmZXRjaFRyYXZlbERheXMucmVqZWN0ZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIHN0YXRlLnRyYXZlbERheXNQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gYWN0aW9uLmVycm9yLm1lc3NhZ2UgfHwgJ0ZhaWxlZCB0byBmZXRjaCB0cmF2ZWwgZGF5cy4nO1xuICAgICAgfSlcbiAgICAgIC8vIEhhbmRsZXMgZnVsZmlsbGVkIHRyYXZlbCBkYXlzIGZldGNoXG4gICAgICAuYWRkQ2FzZShmZXRjaFRyYXZlbERheXMuZnVsZmlsbGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBjb25zdCB7IHBheWxvYWQgfSA9IGFjdGlvbjtcbiAgICAgICAgc3RhdGUudHJhdmVsRGF5cyA9IHBheWxvYWQ7XG4gICAgICAgIHN0YXRlLnRyYXZlbERheXNQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gJyc7XG4gICAgICB9KVxuXG4gICAgICAvLyBoYW5kbGUgdHJhdmVsIGRheSBkZXRhaWxcbiAgICAgIC5hZGRDYXNlKHRyYXZlbERheURldGFpbEFjdGlvbi5wZW5kaW5nLCAoc3RhdGUpID0+IHtcbiAgICAgICAgc3RhdGUudHJhdmVsRGF5RGV0YWlsUGVuZGluZyA9IHRydWU7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gJyc7XG4gICAgICB9KVxuICAgICAgLy8gSGFuZGxlcyByZWplY3RlZCB0cmF2ZWwgZGF5cyBmZXRjaFxuICAgICAgLmFkZENhc2UodHJhdmVsRGF5RGV0YWlsQWN0aW9uLnJlamVjdGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS50cmF2ZWxEYXlEZXRhaWxQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gYWN0aW9uLmVycm9yLm1lc3NhZ2UgfHwgJ0ZhaWxlZCB0byBmZXRjaCB0cmF2ZWwgZGF5cy4nO1xuICAgICAgfSlcbiAgICAgIC8vIEhhbmRsZXMgZnVsZmlsbGVkIHRyYXZlbCBkYXlzIGZldGNoXG4gICAgICAuYWRkQ2FzZSh0cmF2ZWxEYXlEZXRhaWxBY3Rpb24uZnVsZmlsbGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBjb25zdCB7IHBheWxvYWQgfSA9IGFjdGlvbjtcbiAgICAgICAgc3RhdGUudHJhdmVsRGF5ID0gcGF5bG9hZDtcbiAgICAgICAgc3RhdGUudHJhdmVsRGF5RGV0YWlsUGVuZGluZyA9IGZhbHNlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9ICcnO1xuICAgICAgfSlcblxuICAgICAgLy8gaGFuZGxlIHRyYXZlbERheSBjcmVhdGVcbiAgICAgIC5hZGRDYXNlKGNyZWF0ZVRyYXZlbERheUFjdGlvbi5wZW5kaW5nLCAoc3RhdGUpID0+IHtcbiAgICAgICAgc3RhdGUudHJhdmVsRGF5VXBkYXRlUGVuZGluZyA9IHRydWU7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gJyc7XG4gICAgICB9KVxuICAgICAgLmFkZENhc2UoY3JlYXRlVHJhdmVsRGF5QWN0aW9uLnJlamVjdGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS50cmF2ZWxEYXlVcGRhdGVQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gYWN0aW9uLmVycm9yLm1lc3NhZ2UgfHwgJ0ZhaWxlZCB0byBjcmVhdGUgdHJhdmVsIGRheXMuJztcbiAgICAgIH0pXG4gICAgICAuYWRkQ2FzZShjcmVhdGVUcmF2ZWxEYXlBY3Rpb24uZnVsZmlsbGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS50cmF2ZWxEYXkgPSBhY3Rpb24ucGF5bG9hZDtcbiAgICAgICAgc3RhdGUudHJhdmVsRGF5VXBkYXRlUGVuZGluZyA9IGZhbHNlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9ICcnO1xuICAgICAgfSlcblxuICAgICAgLy8gaGFuZGxlIHRyYXZlbERheSB1cGRhdGVcbiAgICAgIC5hZGRDYXNlKHVwZGF0ZVRyYXZlbERheUFjdGlvbi5wZW5kaW5nLCAoc3RhdGUpID0+IHtcbiAgICAgICAgc3RhdGUudHJhdmVsRGF5VXBkYXRlUGVuZGluZyA9IHRydWU7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gJyc7XG4gICAgICB9KVxuICAgICAgLmFkZENhc2UodXBkYXRlVHJhdmVsRGF5QWN0aW9uLnJlamVjdGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS50cmF2ZWxEYXlVcGRhdGVQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gYWN0aW9uLmVycm9yLm1lc3NhZ2UgfHwgJ0ZhaWxlZCB0byB1cGRhdGUgdHJhdmVsIGRheXMuJztcbiAgICAgIH0pXG4gICAgICAuYWRkQ2FzZSh1cGRhdGVUcmF2ZWxEYXlBY3Rpb24uZnVsZmlsbGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS50cmF2ZWxEYXkgPSBhY3Rpb24ucGF5bG9hZDtcbiAgICAgICAgc3RhdGUudHJhdmVsRGF5VXBkYXRlUGVuZGluZyA9IGZhbHNlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9ICcnO1xuICAgICAgfSlcblxuICAgICAgLy8gaGFuZGxlIHRyYXZlbERheSBkZWxldGVcbiAgICAgIC5hZGRDYXNlKGRlbGV0ZVRyYXZlbERheUFjdGlvbi5wZW5kaW5nLCAoc3RhdGUpID0+IHtcbiAgICAgICAgc3RhdGUudHJhdmVsRGF5VXBkYXRlUGVuZGluZyA9IHRydWU7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gJyc7XG4gICAgICB9KVxuICAgICAgLmFkZENhc2UoZGVsZXRlVHJhdmVsRGF5QWN0aW9uLnJlamVjdGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS50cmF2ZWxEYXlVcGRhdGVQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gYWN0aW9uLmVycm9yLm1lc3NhZ2UgfHwgJ0ZhaWxlZCB0byBkZWxldGUgdHJhdmVsIGRheXMuJztcbiAgICAgIH0pXG4gICAgICAuYWRkQ2FzZShkZWxldGVUcmF2ZWxEYXlBY3Rpb24uZnVsZmlsbGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS50cmF2ZWxEYXkgPSBhY3Rpb24ucGF5bG9hZDtcbiAgICAgICAgc3RhdGUudHJhdmVsRGF5VXBkYXRlUGVuZGluZyA9IGZhbHNlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9ICcnO1xuICAgICAgfSlcbiAgfSxcbn0pO1xuXG5leHBvcnQgY29uc3QgeyBzZXRSZWdpc3RlckVycm9yTWVzc2FnZSwgc2V0VHJhdmVsRGF5IH0gPSB0cmF2ZWxEYXlTbGljZS5hY3Rpb25zO1xuXG5leHBvcnQgZGVmYXVsdCB0cmF2ZWxEYXlTbGljZS5yZWR1Y2VyO1xuIiwiaW1wb3J0IHsgVHJhdmVsRGF5IH0gZnJvbSAnQC9zaGFyZWQvaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBVUkwgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvY29uZmlncy9jb25zdGFudHMnO1xuaW1wb3J0IHsgZ2V0V2l0aENvbmZpZywgcG9zdFdpdGhDb25maWcsIHB1dFdpdGhDb25maWcsIHJlbW92ZVdpdGhDb25maWcgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvY29yZS9iYXNlL3NlcnZpY2VzJztcblxuZXhwb3J0IGNvbnN0IHRyYXZlbERheXNTZXJ2aWNlID0gYXN5bmMoKSA9PiB7XG4gIHJldHVybiBhd2FpdCBnZXRXaXRoQ29uZmlnKFVSTC5UUkFWRUxfREFZKVxufVxuXG5leHBvcnQgY29uc3QgdHJhdmVsRGF5RGV0YWlsU2VydmljZSA9IGFzeW5jKGlkOiBudW1iZXIpID0+IHtcbiAgcmV0dXJuIGF3YWl0IGdldFdpdGhDb25maWcoYCR7VVJMLlRSQVZFTF9EQVl9JHtpZH1gKVxufVxuXG5leHBvcnQgY29uc3QgY3JlYXRlVHJhdmVsRGF5U2VydmljZSA9IGFzeW5jIChkYXRhOiBUcmF2ZWxEYXkpOiBQcm9taXNlPFRyYXZlbERheT4gPT4ge1xuICByZXR1cm4gcG9zdFdpdGhDb25maWcoYCR7VVJMLlRSQVZFTF9EQVl9YCwgZGF0YSk7XG59O1xuXG5leHBvcnQgY29uc3QgdXBkYXRlVHJhdmVsRGF5U2VydmljZSA9IGFzeW5jIChpZDogbnVtYmVyLCBkYXRhOiBUcmF2ZWxEYXkpOiBQcm9taXNlPFRyYXZlbERheT4gPT4ge1xuICByZXR1cm4gcHV0V2l0aENvbmZpZyhgJHtVUkwuVFJBVkVMX0RBWX0ke2lkfWAsIGRhdGEpO1xufTtcblxuZXhwb3J0IGNvbnN0IGRlbGV0ZVRyYXZlbERheVNlcnZpY2UgPSBhc3luYyhpZDogbnVtYmVyKSA9PntcbiAgcmV0dXJuIGF3YWl0IHJlbW92ZVdpdGhDb25maWcoYCR7VVJMLlRSQVZFTF9EQVl9JHtpZH1gKVxufVxuIiwiaW1wb3J0IHsgY3JlYXRlQXN5bmNUaHVuayB9IGZyb20gJ0ByZWR1eGpzL3Rvb2xraXQnO1xuaW1wb3J0IHsgVVNFUlMsIFVTRVIsIFVTRVJfREVMRVRFLCBVU0VSX0NSRUFURSwgVVNFUl9VUERBVEUgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgeyB1c2Vyc1NlcnZpY2UsIHVzZXJEZXRhaWxTZXJ2aWNlLCBjcmVhdGVVc2VyU2VydmljZSwgdXBkYXRlVXNlclNlcnZpY2UsIGRlbGV0ZVVzZXJTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcyc7XG5pbXBvcnQgeyBVc2VyTWFuYWdlbWVudCB9IGZyb20gJ0Avc2hhcmVkL2ludGVyZmFjZXMnO1xuXG5leHBvcnQgY29uc3QgZmV0Y2hVc2VyczogYW55ID0gY3JlYXRlQXN5bmNUaHVuayhcbiAgVVNFUlMsXG4gIHVzZXJzU2VydmljZVxuKTtcblxuZXhwb3J0IGNvbnN0IHVzZXJEZXRhaWxBY3Rpb246IGFueSA9IGNyZWF0ZUFzeW5jVGh1bmsoXG4gIFVTRVIsXG4gIHVzZXJEZXRhaWxTZXJ2aWNlXG4pXG5cbmV4cG9ydCBjb25zdCBjcmVhdGVVc2VyQWN0aW9uID0gY3JlYXRlQXN5bmNUaHVuazxVc2VyTWFuYWdlbWVudCwgeyBkYXRhOiBVc2VyTWFuYWdlbWVudCB9PihcbiAgVVNFUl9DUkVBVEUsXG4gIGFzeW5jICh7IGRhdGEgfSwgeyByZWplY3RXaXRoVmFsdWUgfSkgPT4ge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gYXdhaXQgY3JlYXRlVXNlclNlcnZpY2UoZGF0YSk7XG4gICAgfSBjYXRjaCAoZXJyb3I6IGFueSkge1xuICAgICAgcmV0dXJuIHJlamVjdFdpdGhWYWx1ZShlcnJvci5yZXNwb25zZT8uZGF0YT8ubWVzc2FnZSB8fCBcIkZhaWxlZCB0byBjcmVhdGUgdXNlclwiKTtcbiAgICB9XG4gIH1cbik7XG5cbmV4cG9ydCBjb25zdCB1cGRhdGVVc2VyQWN0aW9uID0gY3JlYXRlQXN5bmNUaHVuazxVc2VyTWFuYWdlbWVudCwgeyBpZDogbnVtYmVyOyBkYXRhOiBVc2VyTWFuYWdlbWVudCB9PihcbiAgVVNFUl9VUERBVEUsXG4gIGFzeW5jICh7IGlkLCBkYXRhIH0sIHsgcmVqZWN0V2l0aFZhbHVlIH0pID0+IHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIGF3YWl0IHVwZGF0ZVVzZXJTZXJ2aWNlKGlkLCBkYXRhKTtcbiAgICB9IGNhdGNoIChlcnJvcjogYW55KSB7XG4gICAgICByZXR1cm4gcmVqZWN0V2l0aFZhbHVlKGVycm9yLnJlc3BvbnNlPy5kYXRhPy5tZXNzYWdlIHx8IFwiRmFpbGVkIHRvIHVwZGF0ZSB1c2VyXCIpO1xuICAgIH1cbiAgfVxuKTtcblxuZXhwb3J0IGNvbnN0IGRlbGV0ZVVzZXJBY3Rpb246IGFueSA9IGNyZWF0ZUFzeW5jVGh1bmsoXG4gIFVTRVJfREVMRVRFLFxuICBkZWxldGVVc2VyU2VydmljZVxuKVxuIiwiZXhwb3J0IGNvbnN0IFVTRVJTID0gJ3VzZXJzL2ZldGNoQWxsJztcbmV4cG9ydCBjb25zdCBVU0VSID0gJ3VzZXJzL2ZldGNoQnlJRCc7XG5leHBvcnQgY29uc3QgVVNFUl9DUkVBVEUgPSAndXNlcnMvY3JlYXRlJztcbmV4cG9ydCBjb25zdCBVU0VSX1VQREFURSA9ICd1c2Vycy91cGRhdGUnO1xuZXhwb3J0IGNvbnN0IFVTRVJfREVMRVRFID0gJ3VzZXJzL2RlbGV0ZSc7XG4iLCIvKiBlc2xpbnQtZGlzYWJsZSBuby1jb25zb2xlICovXG5cbmltcG9ydCB7IGNyZWF0ZVNsaWNlLCBQYXlsb2FkQWN0aW9uIH0gZnJvbSAnQHJlZHV4anMvdG9vbGtpdCc7XG5pbXBvcnQgeyBVc2VyTWFuYWdlbWVudCwgVXNlck1hbmFnZW1lbnRTdGF0ZSB9IGZyb20gJ0Avc2hhcmVkL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgZmV0Y2hVc2VycywgdXBkYXRlVXNlckFjdGlvbiwgdXNlckRldGFpbEFjdGlvbiwgY3JlYXRlVXNlckFjdGlvbiwgZGVsZXRlVXNlckFjdGlvbiB9IGZyb20gJy4vYWN0aW9ucyc7XG5pbXBvcnQgeyBVU0VSIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuXG5jb25zdCBpbml0aWFsU3RhdGU6IFVzZXJNYW5hZ2VtZW50U3RhdGUgPSB7XG4gIHVzZXJzOiBbXSxcbiAgdXNlcjogbnVsbCxcbiAgdXNlcnNQZW5kaW5nOiBmYWxzZSxcbiAgdXNlckRldGFpbFBlbmRpbmc6IGZhbHNlLFxuICB1c2VyQ3JlYXRlUGVuZGluZzogZmFsc2UsXG4gIHVzZXJVcGRhdGVQZW5kaW5nOiBmYWxzZSxcbiAgdXNlckRlbGV0ZVBlbmRpbmc6IGZhbHNlLFxuICByZWdpc3RlckVycm9yTWVzc2FnZTogJycsXG59O1xuXG5leHBvcnQgY29uc3QgdXNlclNsaWNlID0gY3JlYXRlU2xpY2Uoe1xuICBuYW1lOiBVU0VSLFxuICBpbml0aWFsU3RhdGUsXG4gIHJlZHVjZXJzOiB7XG4gICAgLy8gU2V0cyB0aGUgY3VycmVudCB1c2VyXG4gICAgc2V0VXNlcjogKHN0YXRlLCBhY3Rpb246IFBheWxvYWRBY3Rpb248VXNlck1hbmFnZW1lbnQ+KSA9PiB7XG4gICAgICBzdGF0ZS51c2VyID0gYWN0aW9uLnBheWxvYWQ7XG4gICAgfSxcblxuICAgIC8vIFVwZGF0ZXMgdGhlIHJlZ2lzdGVyIGVycm9yIG1lc3NhZ2VcbiAgICBzZXRSZWdpc3RlckVycm9yTWVzc2FnZTogKHN0YXRlLCBhY3Rpb246IFBheWxvYWRBY3Rpb248c3RyaW5nPikgPT4ge1xuICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSBhY3Rpb24ucGF5bG9hZDtcbiAgICB9LFxuICB9LFxuXG4gIGV4dHJhUmVkdWNlcnM6IChidWlsZGVyKSA9PiB7XG4gICAgYnVpbGRlclxuICAgICAgLy8gaGFuZGxlIHVzZXJcbiAgICAgIC5hZGRDYXNlKGZldGNoVXNlcnMucGVuZGluZywgKHN0YXRlKSA9PiB7XG4gICAgICAgIHN0YXRlLnVzZXJzUGVuZGluZyA9IHRydWU7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gJyc7XG4gICAgICB9KVxuICAgICAgLy8gSGFuZGxlcyByZWplY3RlZCB1c2VycyBmZXRjaFxuICAgICAgLmFkZENhc2UoZmV0Y2hVc2Vycy5yZWplY3RlZCwgKHN0YXRlLCBhY3Rpb24pID0+IHtcbiAgICAgICAgc3RhdGUudXNlcnNQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gYWN0aW9uLmVycm9yLm1lc3NhZ2UgfHwgJ0ZhaWxlZCB0byBmZXRjaCB1c2Vycy4nO1xuICAgICAgfSlcbiAgICAgIC8vIEhhbmRsZXMgZnVsZmlsbGVkIHVzZXJzIGZldGNoXG4gICAgICAuYWRkQ2FzZShmZXRjaFVzZXJzLmZ1bGZpbGxlZCwgKHN0YXRlLCBhY3Rpb24pID0+IHtcbiAgICAgICAgY29uc3QgeyBwYXlsb2FkIH0gPSBhY3Rpb247XG4gICAgICAgIHN0YXRlLnVzZXJzID0gcGF5bG9hZDtcbiAgICAgICAgc3RhdGUudXNlcnNQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gJyc7XG4gICAgICB9KVxuXG4gICAgICAvLyBoYW5kbGUgdXNlciBkZXRhaWxcbiAgICAgIC5hZGRDYXNlKHVzZXJEZXRhaWxBY3Rpb24ucGVuZGluZywgKHN0YXRlKSA9PiB7XG4gICAgICAgIHN0YXRlLnVzZXJEZXRhaWxQZW5kaW5nID0gdHJ1ZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSAnJztcbiAgICAgIH0pXG4gICAgICAvLyBIYW5kbGVzIHJlamVjdGVkIHVzZXJzIGZldGNoXG4gICAgICAuYWRkQ2FzZSh1c2VyRGV0YWlsQWN0aW9uLnJlamVjdGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS51c2VyRGV0YWlsUGVuZGluZyA9IGZhbHNlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9IGFjdGlvbi5lcnJvci5tZXNzYWdlIHx8ICdGYWlsZWQgdG8gZmV0Y2ggdXNlcnMuJztcbiAgICAgIH0pXG4gICAgICAvLyBIYW5kbGVzIGZ1bGZpbGxlZCB1c2VycyBmZXRjaFxuICAgICAgLmFkZENhc2UodXNlckRldGFpbEFjdGlvbi5mdWxmaWxsZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIGNvbnN0IHsgcGF5bG9hZCB9ID0gYWN0aW9uO1xuICAgICAgICBzdGF0ZS51c2VyID0gcGF5bG9hZDtcbiAgICAgICAgc3RhdGUudXNlckRldGFpbFBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSAnJztcbiAgICAgIH0pXG5cbiAgICAgIC8vIGhhbmRsZSB1c2VyIGNyZWF0ZVxuICAgICAgLmFkZENhc2UoY3JlYXRlVXNlckFjdGlvbi5wZW5kaW5nLCAoc3RhdGUpID0+IHtcbiAgICAgICAgc3RhdGUudXNlclVwZGF0ZVBlbmRpbmcgPSB0cnVlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9ICcnO1xuICAgICAgfSlcbiAgICAgIC5hZGRDYXNlKGNyZWF0ZVVzZXJBY3Rpb24ucmVqZWN0ZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIHN0YXRlLnVzZXJVcGRhdGVQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gYWN0aW9uLmVycm9yLm1lc3NhZ2UgfHwgJ0ZhaWxlZCB0byBjcmVhdGUgdXNlcnMuJztcbiAgICAgIH0pXG4gICAgICAuYWRkQ2FzZShjcmVhdGVVc2VyQWN0aW9uLmZ1bGZpbGxlZCwgKHN0YXRlLCBhY3Rpb24pID0+IHtcbiAgICAgICAgc3RhdGUudXNlciA9IGFjdGlvbi5wYXlsb2FkO1xuICAgICAgICBzdGF0ZS51c2VyVXBkYXRlUGVuZGluZyA9IGZhbHNlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9ICcnO1xuICAgICAgfSlcblxuICAgICAgLy8gaGFuZGxlIHVzZXIgdXBkYXRlXG4gICAgICAuYWRkQ2FzZSh1cGRhdGVVc2VyQWN0aW9uLnBlbmRpbmcsIChzdGF0ZSkgPT4ge1xuICAgICAgICBzdGF0ZS51c2VyVXBkYXRlUGVuZGluZyA9IHRydWU7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gJyc7XG4gICAgICB9KVxuICAgICAgLmFkZENhc2UodXBkYXRlVXNlckFjdGlvbi5yZWplY3RlZCwgKHN0YXRlLCBhY3Rpb24pID0+IHtcbiAgICAgICAgc3RhdGUudXNlclVwZGF0ZVBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSBhY3Rpb24uZXJyb3IubWVzc2FnZSB8fCAnRmFpbGVkIHRvIHVwZGF0ZSB1c2Vycy4nO1xuICAgICAgfSlcbiAgICAgIC5hZGRDYXNlKHVwZGF0ZVVzZXJBY3Rpb24uZnVsZmlsbGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS51c2VyID0gYWN0aW9uLnBheWxvYWQ7XG4gICAgICAgIHN0YXRlLnVzZXJVcGRhdGVQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gJyc7XG4gICAgICB9KVxuXG4gICAgICAvLyBoYW5kbGUgdXNlciBkZWxldGVcbiAgICAgIC5hZGRDYXNlKGRlbGV0ZVVzZXJBY3Rpb24ucGVuZGluZywgKHN0YXRlKSA9PiB7XG4gICAgICAgIHN0YXRlLnVzZXJVcGRhdGVQZW5kaW5nID0gdHJ1ZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSAnJztcbiAgICAgIH0pXG4gICAgICAuYWRkQ2FzZShkZWxldGVVc2VyQWN0aW9uLnJlamVjdGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS51c2VyVXBkYXRlUGVuZGluZyA9IGZhbHNlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9IGFjdGlvbi5lcnJvci5tZXNzYWdlIHx8ICdGYWlsZWQgdG8gZGVsZXRlIHVzZXJzLic7XG4gICAgICB9KVxuICAgICAgLmFkZENhc2UoZGVsZXRlVXNlckFjdGlvbi5mdWxmaWxsZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIHN0YXRlLnVzZXIgPSBhY3Rpb24ucGF5bG9hZDtcbiAgICAgICAgc3RhdGUudXNlclVwZGF0ZVBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSAnJztcbiAgICAgIH0pXG4gIH0sXG59KTtcblxuZXhwb3J0IGNvbnN0IHsgc2V0UmVnaXN0ZXJFcnJvck1lc3NhZ2UsIHNldFVzZXIgfSA9IHVzZXJTbGljZS5hY3Rpb25zO1xuXG5leHBvcnQgZGVmYXVsdCB1c2VyU2xpY2UucmVkdWNlcjtcbiIsImltcG9ydCB7IFVzZXJNYW5hZ2VtZW50IH0gZnJvbSAnQC9zaGFyZWQvaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBVUkwgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvY29uZmlncy9jb25zdGFudHMnO1xuaW1wb3J0IHsgZ2V0V2l0aENvbmZpZywgcG9zdFdpdGhDb25maWcsIHB1dFdpdGhDb25maWcsIHJlbW92ZVdpdGhDb25maWcgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvY29yZS9iYXNlL3NlcnZpY2VzJztcblxuZXhwb3J0IGNvbnN0IHVzZXJzU2VydmljZSA9IGFzeW5jKCkgPT4ge1xuICByZXR1cm4gYXdhaXQgZ2V0V2l0aENvbmZpZyhVUkwuVVNFUilcbn1cblxuZXhwb3J0IGNvbnN0IHVzZXJEZXRhaWxTZXJ2aWNlID0gYXN5bmMoaWQ6IG51bWJlcikgPT4ge1xuICByZXR1cm4gYXdhaXQgZ2V0V2l0aENvbmZpZyhgJHtVUkwuVVNFUn0ke2lkfWApXG59XG5cbmV4cG9ydCBjb25zdCBjcmVhdGVVc2VyU2VydmljZSA9IGFzeW5jIChkYXRhOiBVc2VyTWFuYWdlbWVudCk6IFByb21pc2U8VXNlck1hbmFnZW1lbnQ+ID0+IHtcbiAgcmV0dXJuIHBvc3RXaXRoQ29uZmlnKGAke1VSTC5VU0VSfWAsIGRhdGEpO1xufTtcblxuZXhwb3J0IGNvbnN0IHVwZGF0ZVVzZXJTZXJ2aWNlID0gYXN5bmMgKGlkOiBudW1iZXIsIGRhdGE6IFVzZXJNYW5hZ2VtZW50KTogUHJvbWlzZTxVc2VyTWFuYWdlbWVudD4gPT4ge1xuICByZXR1cm4gcHV0V2l0aENvbmZpZyhgJHtVUkwuVVNFUn0ke2lkfWAsIGRhdGEpO1xufTtcblxuZXhwb3J0IGNvbnN0IGRlbGV0ZVVzZXJTZXJ2aWNlID0gYXN5bmMoaWQ6IG51bWJlcikgPT57XG4gIHJldHVybiBhd2FpdCByZW1vdmVXaXRoQ29uZmlnKGAke1VSTC5VU0VSfSR7aWR9YClcbn1cblxuZXhwb3J0IGNvbnN0IHVzZXJUZWxlZ3JhbVNlcnZpY2UgPSBhc3luYyhpZDogc3RyaW5nKSA9PiB7XG4gIHJldHVybiBhd2FpdCBnZXRXaXRoQ29uZmlnKGAke1VSTC5QVUJMSUN9dGVsZWdyYW0vJHtpZH1gKVxufVxuXG4iLCJpbXBvcnQgeyBjcmVhdGVBc3luY1RodW5rIH0gZnJvbSAnQHJlZHV4anMvdG9vbGtpdCc7XG5pbXBvcnQgeyBVU0VSX0FUVEVOREFOQ0VTLCBVU0VSX0FUVEVOREFOQ0UsIFVTRVJfQVRURU5EQU5DRV9ERUxFVEUsIFVTRVJfQVRURU5EQU5DRV9DUkVBVEUsIFVTRVJfQVRURU5EQU5DRV9VUERBVEUgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgeyB1c2VyQXR0ZW5kYW5jZXNTZXJ2aWNlLCB1c2VyQXR0ZW5kYW5jZURldGFpbFNlcnZpY2UsIGNyZWF0ZVVzZXJBdHRlbmRhbmNlU2VydmljZSwgdXBkYXRlVXNlckF0dGVuZGFuY2VTZXJ2aWNlLCBkZWxldGVVc2VyQXR0ZW5kYW5jZVNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzJztcbmltcG9ydCB7IFVzZXJBdHRlbmRhbmNlIH0gZnJvbSAnQC9zaGFyZWQvaW50ZXJmYWNlcyc7XG5cbmV4cG9ydCBjb25zdCBmZXRjaFVzZXJBdHRlbmRhbmNlczogYW55ID0gY3JlYXRlQXN5bmNUaHVuayhcbiAgVVNFUl9BVFRFTkRBTkNFUyxcbiAgdXNlckF0dGVuZGFuY2VzU2VydmljZVxuKTtcblxuZXhwb3J0IGNvbnN0IHVzZXJBdHRlbmRhbmNlRGV0YWlsQWN0aW9uOiBhbnkgPSBjcmVhdGVBc3luY1RodW5rKFxuICBVU0VSX0FUVEVOREFOQ0UsXG4gIHVzZXJBdHRlbmRhbmNlRGV0YWlsU2VydmljZVxuKVxuXG5leHBvcnQgY29uc3QgY3JlYXRlVXNlckF0dGVuZGFuY2VBY3Rpb24gPSBjcmVhdGVBc3luY1RodW5rPFVzZXJBdHRlbmRhbmNlLCB7IGRhdGE6IFVzZXJBdHRlbmRhbmNlIH0+KFxuICBVU0VSX0FUVEVOREFOQ0VfQ1JFQVRFLFxuICBhc3luYyAoeyBkYXRhIH0sIHsgcmVqZWN0V2l0aFZhbHVlIH0pID0+IHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIGF3YWl0IGNyZWF0ZVVzZXJBdHRlbmRhbmNlU2VydmljZShkYXRhKTtcbiAgICB9IGNhdGNoIChlcnJvcjogYW55KSB7XG4gICAgICByZXR1cm4gcmVqZWN0V2l0aFZhbHVlKGVycm9yLnJlc3BvbnNlPy5kYXRhPy5tZXNzYWdlIHx8IFwiRmFpbGVkIHRvIGNyZWF0ZSB1c2VyIGF0dGVuZGFuY2VcIik7XG4gICAgfVxuICB9XG4pO1xuXG5leHBvcnQgY29uc3QgdXBkYXRlVXNlckF0dGVuZGFuY2VBY3Rpb24gPSBjcmVhdGVBc3luY1RodW5rPFVzZXJBdHRlbmRhbmNlLCB7IGlkOiBudW1iZXI7IGRhdGE6IFVzZXJBdHRlbmRhbmNlIH0+KFxuICBVU0VSX0FUVEVOREFOQ0VfVVBEQVRFLFxuICBhc3luYyAoeyBpZCwgZGF0YSB9LCB7IHJlamVjdFdpdGhWYWx1ZSB9KSA9PiB7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiBhd2FpdCB1cGRhdGVVc2VyQXR0ZW5kYW5jZVNlcnZpY2UoaWQsIGRhdGEpO1xuICAgIH0gY2F0Y2ggKGVycm9yOiBhbnkpIHtcbiAgICAgIHJldHVybiByZWplY3RXaXRoVmFsdWUoZXJyb3IucmVzcG9uc2U/LmRhdGE/Lm1lc3NhZ2UgfHwgXCJGYWlsZWQgdG8gdXBkYXRlIHVzZXIgYXR0ZW5kYW5jZVwiKTtcbiAgICB9XG4gIH1cbik7XG5cbmV4cG9ydCBjb25zdCBkZWxldGVVc2VyQXR0ZW5kYW5jZUFjdGlvbjogYW55ID0gY3JlYXRlQXN5bmNUaHVuayhcbiAgVVNFUl9BVFRFTkRBTkNFX0RFTEVURSxcbiAgZGVsZXRlVXNlckF0dGVuZGFuY2VTZXJ2aWNlXG4pXG4iLCJleHBvcnQgY29uc3QgVVNFUl9BVFRFTkRBTkNFUyA9ICd1c2VyLWF0dGVuZGFuY2VzL2ZldGNoQWxsJztcbmV4cG9ydCBjb25zdCBVU0VSX0FUVEVOREFOQ0UgPSAndXNlci1hdHRlbmRhbmNlcy9mZXRjaEJ5SUQnO1xuZXhwb3J0IGNvbnN0IFVTRVJfQVRURU5EQU5DRV9DUkVBVEUgPSAndXNlci1hdHRlbmRhbmNlcy9jcmVhdGUnO1xuZXhwb3J0IGNvbnN0IFVTRVJfQVRURU5EQU5DRV9VUERBVEUgPSAndXNlci1hdHRlbmRhbmNlcy91cGRhdGUnO1xuZXhwb3J0IGNvbnN0IFVTRVJfQVRURU5EQU5DRV9ERUxFVEUgPSAndXNlci1hdHRlbmRhbmNlcy9kZWxldGUnO1xuIiwiLyogZXNsaW50LWRpc2FibGUgbm8tY29uc29sZSAqL1xuXG5pbXBvcnQgeyBjcmVhdGVTbGljZSwgUGF5bG9hZEFjdGlvbiB9IGZyb20gJ0ByZWR1eGpzL3Rvb2xraXQnO1xuaW1wb3J0IHsgVXNlckF0dGVuZGFuY2UsIFVzZXJBdHRlbmRhbmNlU3RhdGUgfSBmcm9tICdAL3NoYXJlZC9pbnRlcmZhY2VzJztcbmltcG9ydCB7IGZldGNoVXNlckF0dGVuZGFuY2VzLCB1cGRhdGVVc2VyQXR0ZW5kYW5jZUFjdGlvbiwgdXNlckF0dGVuZGFuY2VEZXRhaWxBY3Rpb24sIGNyZWF0ZVVzZXJBdHRlbmRhbmNlQWN0aW9uLCBkZWxldGVVc2VyQXR0ZW5kYW5jZUFjdGlvbiB9IGZyb20gJy4vYWN0aW9ucyc7XG5pbXBvcnQgeyBVU0VSX0FUVEVOREFOQ0UgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5cbmNvbnN0IGluaXRpYWxTdGF0ZTogVXNlckF0dGVuZGFuY2VTdGF0ZSA9IHtcbiAgdXNlckF0dGVuZGFuY2VzOiBbXSxcbiAgdXNlckF0dGVuZGFuY2U6IG51bGwsXG4gIHVzZXJBdHRlbmRhbmNlc1BlbmRpbmc6IGZhbHNlLFxuICB1c2VyQXR0ZW5kYW5jZURldGFpbFBlbmRpbmc6IGZhbHNlLFxuICB1c2VyQXR0ZW5kYW5jZUNyZWF0ZVBlbmRpbmc6IGZhbHNlLFxuICB1c2VyQXR0ZW5kYW5jZVVwZGF0ZVBlbmRpbmc6IGZhbHNlLFxuICB1c2VyQXR0ZW5kYW5jZURlbGV0ZVBlbmRpbmc6IGZhbHNlLFxuICByZWdpc3RlckVycm9yTWVzc2FnZTogJycsXG59O1xuXG5leHBvcnQgY29uc3QgdXNlckF0dGVuZGFuY2VTbGljZSA9IGNyZWF0ZVNsaWNlKHtcbiAgbmFtZTogVVNFUl9BVFRFTkRBTkNFLFxuICBpbml0aWFsU3RhdGUsXG4gIHJlZHVjZXJzOiB7XG4gICAgLy8gU2V0cyB0aGUgY3VycmVudCB1c2VyQXR0ZW5kYW5jZVxuICAgIHNldFVzZXJBdHRlbmRhbmNlOiAoc3RhdGUsIGFjdGlvbjogUGF5bG9hZEFjdGlvbjxVc2VyQXR0ZW5kYW5jZT4pID0+IHtcbiAgICAgIHN0YXRlLnVzZXJBdHRlbmRhbmNlID0gYWN0aW9uLnBheWxvYWQ7XG4gICAgfSxcblxuICAgIC8vIFVwZGF0ZXMgdGhlIHJlZ2lzdGVyIGVycm9yIG1lc3NhZ2VcbiAgICBzZXRSZWdpc3RlckVycm9yTWVzc2FnZTogKHN0YXRlLCBhY3Rpb246IFBheWxvYWRBY3Rpb248c3RyaW5nPikgPT4ge1xuICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSBhY3Rpb24ucGF5bG9hZDtcbiAgICB9LFxuICB9LFxuXG4gIGV4dHJhUmVkdWNlcnM6IChidWlsZGVyKSA9PiB7XG4gICAgYnVpbGRlclxuICAgICAgLy8gaGFuZGxlIHVzZXIgYXR0ZW5kYW5jZVxuICAgICAgLmFkZENhc2UoZmV0Y2hVc2VyQXR0ZW5kYW5jZXMucGVuZGluZywgKHN0YXRlKSA9PiB7XG4gICAgICAgIHN0YXRlLnVzZXJBdHRlbmRhbmNlc1BlbmRpbmcgPSB0cnVlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9ICcnO1xuICAgICAgfSlcbiAgICAgIC8vIEhhbmRsZXMgcmVqZWN0ZWQgdXNlciBhdHRlbmRhbmNlcyBmZXRjaFxuICAgICAgLmFkZENhc2UoZmV0Y2hVc2VyQXR0ZW5kYW5jZXMucmVqZWN0ZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIHN0YXRlLnVzZXJBdHRlbmRhbmNlc1BlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSBhY3Rpb24uZXJyb3IubWVzc2FnZSB8fCAnRmFpbGVkIHRvIGZldGNoIHVzZXIgYXR0ZW5kYW5jZXMuJztcbiAgICAgIH0pXG4gICAgICAvLyBIYW5kbGVzIGZ1bGZpbGxlZCB1c2VyIGF0dGVuZGFuY2VzIGZldGNoXG4gICAgICAuYWRkQ2FzZShmZXRjaFVzZXJBdHRlbmRhbmNlcy5mdWxmaWxsZWQsIChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gICAgICAgIGNvbnN0IHsgcGF5bG9hZCB9ID0gYWN0aW9uO1xuICAgICAgICBzdGF0ZS51c2VyQXR0ZW5kYW5jZXMgPSBwYXlsb2FkO1xuICAgICAgICBzdGF0ZS51c2VyQXR0ZW5kYW5jZXNQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gJyc7XG4gICAgICB9KVxuXG4gICAgICAvLyBoYW5kbGUgdXNlciBhdHRlbmRhbmNlIGRldGFpbFxuICAgICAgLmFkZENhc2UodXNlckF0dGVuZGFuY2VEZXRhaWxBY3Rpb24ucGVuZGluZywgKHN0YXRlKSA9PiB7XG4gICAgICAgIHN0YXRlLnVzZXJBdHRlbmRhbmNlRGV0YWlsUGVuZGluZyA9IHRydWU7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gJyc7XG4gICAgICB9KVxuICAgICAgLy8gSGFuZGxlcyByZWplY3RlZCB1c2VyIGF0dGVuZGFuY2VzIGZldGNoXG4gICAgICAuYWRkQ2FzZSh1c2VyQXR0ZW5kYW5jZURldGFpbEFjdGlvbi5yZWplY3RlZCwgKHN0YXRlLCBhY3Rpb24pID0+IHtcbiAgICAgICAgc3RhdGUudXNlckF0dGVuZGFuY2VEZXRhaWxQZW5kaW5nID0gZmFsc2U7XG4gICAgICAgIHN0YXRlLnJlZ2lzdGVyRXJyb3JNZXNzYWdlID0gYWN0aW9uLmVycm9yLm1lc3NhZ2UgfHwgJ0ZhaWxlZCB0byBmZXRjaCB1c2VyIGF0dGVuZGFuY2VzLic7XG4gICAgICB9KVxuICAgICAgLy8gSGFuZGxlcyBmdWxmaWxsZWQgdXNlciBhdHRlbmRhbmNlcyBmZXRjaFxuICAgICAgLmFkZENhc2UodXNlckF0dGVuZGFuY2VEZXRhaWxBY3Rpb24uZnVsZmlsbGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBjb25zdCB7IHBheWxvYWQgfSA9IGFjdGlvbjtcbiAgICAgICAgc3RhdGUudXNlckF0dGVuZGFuY2UgPSBwYXlsb2FkO1xuICAgICAgICBzdGF0ZS51c2VyQXR0ZW5kYW5jZURldGFpbFBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSAnJztcbiAgICAgIH0pXG5cbiAgICAgIC8vIGhhbmRsZSB1c2VyQXR0ZW5kYW5jZSBjcmVhdGVcbiAgICAgIC5hZGRDYXNlKGNyZWF0ZVVzZXJBdHRlbmRhbmNlQWN0aW9uLnBlbmRpbmcsIChzdGF0ZSkgPT4ge1xuICAgICAgICBzdGF0ZS51c2VyQXR0ZW5kYW5jZVVwZGF0ZVBlbmRpbmcgPSB0cnVlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9ICcnO1xuICAgICAgfSlcbiAgICAgIC5hZGRDYXNlKGNyZWF0ZVVzZXJBdHRlbmRhbmNlQWN0aW9uLnJlamVjdGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS51c2VyQXR0ZW5kYW5jZVVwZGF0ZVBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSBhY3Rpb24uZXJyb3IubWVzc2FnZSB8fCAnRmFpbGVkIHRvIGNyZWF0ZSB1c2VyIGF0dGVuZGFuY2VzLic7XG4gICAgICB9KVxuICAgICAgLmFkZENhc2UoY3JlYXRlVXNlckF0dGVuZGFuY2VBY3Rpb24uZnVsZmlsbGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS51c2VyQXR0ZW5kYW5jZSA9IGFjdGlvbi5wYXlsb2FkO1xuICAgICAgICBzdGF0ZS51c2VyQXR0ZW5kYW5jZVVwZGF0ZVBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSAnJztcbiAgICAgIH0pXG5cbiAgICAgIC8vIGhhbmRsZSB1c2VyQXR0ZW5kYW5jZSB1cGRhdGVcbiAgICAgIC5hZGRDYXNlKHVwZGF0ZVVzZXJBdHRlbmRhbmNlQWN0aW9uLnBlbmRpbmcsIChzdGF0ZSkgPT4ge1xuICAgICAgICBzdGF0ZS51c2VyQXR0ZW5kYW5jZVVwZGF0ZVBlbmRpbmcgPSB0cnVlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9ICcnO1xuICAgICAgfSlcbiAgICAgIC5hZGRDYXNlKHVwZGF0ZVVzZXJBdHRlbmRhbmNlQWN0aW9uLnJlamVjdGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS51c2VyQXR0ZW5kYW5jZVVwZGF0ZVBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSBhY3Rpb24uZXJyb3IubWVzc2FnZSB8fCAnRmFpbGVkIHRvIHVwZGF0ZSB1c2VyIGF0dGVuZGFuY2VzLic7XG4gICAgICB9KVxuICAgICAgLmFkZENhc2UodXBkYXRlVXNlckF0dGVuZGFuY2VBY3Rpb24uZnVsZmlsbGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS51c2VyQXR0ZW5kYW5jZSA9IGFjdGlvbi5wYXlsb2FkO1xuICAgICAgICBzdGF0ZS51c2VyQXR0ZW5kYW5jZVVwZGF0ZVBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSAnJztcbiAgICAgIH0pXG5cbiAgICAgIC8vIGhhbmRsZSB1c2VyQXR0ZW5kYW5jZSBkZWxldGVcbiAgICAgIC5hZGRDYXNlKGRlbGV0ZVVzZXJBdHRlbmRhbmNlQWN0aW9uLnBlbmRpbmcsIChzdGF0ZSkgPT4ge1xuICAgICAgICBzdGF0ZS51c2VyQXR0ZW5kYW5jZVVwZGF0ZVBlbmRpbmcgPSB0cnVlO1xuICAgICAgICBzdGF0ZS5yZWdpc3RlckVycm9yTWVzc2FnZSA9ICcnO1xuICAgICAgfSlcbiAgICAgIC5hZGRDYXNlKGRlbGV0ZVVzZXJBdHRlbmRhbmNlQWN0aW9uLnJlamVjdGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS51c2VyQXR0ZW5kYW5jZVVwZGF0ZVBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSBhY3Rpb24uZXJyb3IubWVzc2FnZSB8fCAnRmFpbGVkIHRvIGRlbGV0ZSB1c2VyIGF0dGVuZGFuY2VzLic7XG4gICAgICB9KVxuICAgICAgLmFkZENhc2UoZGVsZXRlVXNlckF0dGVuZGFuY2VBY3Rpb24uZnVsZmlsbGVkLCAoc3RhdGUsIGFjdGlvbikgPT4ge1xuICAgICAgICBzdGF0ZS51c2VyQXR0ZW5kYW5jZSA9IGFjdGlvbi5wYXlsb2FkO1xuICAgICAgICBzdGF0ZS51c2VyQXR0ZW5kYW5jZVVwZGF0ZVBlbmRpbmcgPSBmYWxzZTtcbiAgICAgICAgc3RhdGUucmVnaXN0ZXJFcnJvck1lc3NhZ2UgPSAnJztcbiAgICAgIH0pXG4gIH0sXG59KTtcblxuZXhwb3J0IGNvbnN0IHsgc2V0UmVnaXN0ZXJFcnJvck1lc3NhZ2UsIHNldFVzZXJBdHRlbmRhbmNlIH0gPSB1c2VyQXR0ZW5kYW5jZVNsaWNlLmFjdGlvbnM7XG5cbmV4cG9ydCBkZWZhdWx0IHVzZXJBdHRlbmRhbmNlU2xpY2UucmVkdWNlcjtcbiIsImltcG9ydCB7IFVzZXJBdHRlbmRhbmNlIH0gZnJvbSAnQC9zaGFyZWQvaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBVUkwgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvY29uZmlncy9jb25zdGFudHMnO1xuaW1wb3J0IHsgZ2V0V2l0aENvbmZpZywgcG9zdFdpdGhDb25maWcsIHB1dFdpdGhDb25maWcsIHJlbW92ZVdpdGhDb25maWcgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvY29yZS9iYXNlL3NlcnZpY2VzJztcblxuZXhwb3J0IGNvbnN0IHVzZXJBdHRlbmRhbmNlc1NlcnZpY2UgPSBhc3luYygpID0+IHtcbiAgcmV0dXJuIGF3YWl0IGdldFdpdGhDb25maWcoVVJMLlVTRVJfQVRURU5EQU5DRSlcbn1cblxuZXhwb3J0IGNvbnN0IHVzZXJBdHRlbmRhbmNlRGV0YWlsU2VydmljZSA9IGFzeW5jKGlkOiBudW1iZXIpID0+IHtcbiAgcmV0dXJuIGF3YWl0IGdldFdpdGhDb25maWcoYCR7VVJMLlVTRVJfQVRURU5EQU5DRX0ke2lkfWApXG59XG5cbmV4cG9ydCBjb25zdCBjcmVhdGVVc2VyQXR0ZW5kYW5jZVNlcnZpY2UgPSBhc3luYyAoZGF0YTogVXNlckF0dGVuZGFuY2UpOiBQcm9taXNlPFVzZXJBdHRlbmRhbmNlPiA9PiB7XG4gIHJldHVybiBwb3N0V2l0aENvbmZpZyhgJHtVUkwuVVNFUl9BVFRFTkRBTkNFfWAsIGRhdGEpO1xufTtcblxuZXhwb3J0IGNvbnN0IHVwZGF0ZVVzZXJBdHRlbmRhbmNlU2VydmljZSA9IGFzeW5jIChpZDogbnVtYmVyLCBkYXRhOiBVc2VyQXR0ZW5kYW5jZSk6IFByb21pc2U8VXNlckF0dGVuZGFuY2U+ID0+IHtcbiAgcmV0dXJuIHB1dFdpdGhDb25maWcoYCR7VVJMLlVTRVJfQVRURU5EQU5DRX0ke2lkfWAsIGRhdGEpO1xufTtcblxuZXhwb3J0IGNvbnN0IGRlbGV0ZVVzZXJBdHRlbmRhbmNlU2VydmljZSA9IGFzeW5jKGlkOiBudW1iZXIpID0+e1xuICByZXR1cm4gYXdhaXQgcmVtb3ZlV2l0aENvbmZpZyhgJHtVUkwuVVNFUl9BVFRFTkRBTkNFfSR7aWR9YClcbn1cbiJdLCJuYW1lcyI6WyJlIiwidCIsInIiLCJTeW1ib2wiLCJuIiwiaXRlcmF0b3IiLCJvIiwidG9TdHJpbmdUYWciLCJpIiwiYyIsInByb3RvdHlwZSIsIkdlbmVyYXRvciIsInUiLCJPYmplY3QiLCJjcmVhdGUiLCJfcmVnZW5lcmF0b3JEZWZpbmUyIiwiZiIsInAiLCJ5IiwiRyIsInYiLCJhIiwiZCIsImJpbmQiLCJsZW5ndGgiLCJsIiwiVHlwZUVycm9yIiwiY2FsbCIsImRvbmUiLCJ2YWx1ZSIsIkdlbmVyYXRvckZ1bmN0aW9uIiwiR2VuZXJhdG9yRnVuY3Rpb25Qcm90b3R5cGUiLCJnZXRQcm90b3R5cGVPZiIsInNldFByb3RvdHlwZU9mIiwiX19wcm90b19fIiwiZGlzcGxheU5hbWUiLCJfcmVnZW5lcmF0b3IiLCJ3IiwibSIsImRlZmluZVByb3BlcnR5IiwiX3JlZ2VuZXJhdG9yRGVmaW5lIiwiZW51bWVyYWJsZSIsImNvbmZpZ3VyYWJsZSIsIndyaXRhYmxlIiwiX2ludm9rZSIsImFzeW5jR2VuZXJhdG9yU3RlcCIsIlByb21pc2UiLCJyZXNvbHZlIiwidGhlbiIsIl9hc3luY1RvR2VuZXJhdG9yIiwiYXJndW1lbnRzIiwiYXBwbHkiLCJfbmV4dCIsIl90aHJvdyIsImNyZWF0ZUFzeW5jVGh1bmsiLCJQUk9WSU5DRVMiLCJQUk9WSU5DRSIsIlBST1ZJTkNFX0RFTEVURSIsIlBST1ZJTkNFX0NSRUFURSIsIlBST1ZJTkNFX1VQREFURSIsInByb3ZpbmNlc1NlcnZpY2UiLCJwcm92aW5jZURldGFpbFNlcnZpY2UiLCJjcmVhdGVQcm92aW5jZVNlcnZpY2UiLCJ1cGRhdGVQcm92aW5jZVNlcnZpY2UiLCJkZWxldGVQcm92aW5jZVNlcnZpY2UiLCJmZXRjaFByb3ZpbmNlcyIsInByb3ZpbmNlRGV0YWlsQWN0aW9uIiwiY3JlYXRlUHJvdmluY2VBY3Rpb24iLCJfcmVmMyIsIl9jYWxsZWUiLCJfcmVmIiwiX3JlZjIiLCJkYXRhIiwicmVqZWN0V2l0aFZhbHVlIiwiX2Vycm9yJHJlc3BvbnNlIiwiX3QiLCJfY29udGV4dCIsInJlc3BvbnNlIiwibWVzc2FnZSIsIl94IiwiX3gyIiwidXBkYXRlUHJvdmluY2VBY3Rpb24iLCJfcmVmNiIsIl9jYWxsZWUyIiwiX3JlZjQiLCJfcmVmNSIsImlkIiwiX2Vycm9yJHJlc3BvbnNlMiIsIl90MiIsIl9jb250ZXh0MiIsIl94MyIsIl94NCIsImRlbGV0ZVByb3ZpbmNlQWN0aW9uIiwiY3JlYXRlU2xpY2UiLCJpbml0aWFsU3RhdGUiLCJwcm92aW5jZXMiLCJwcm92aW5jZSIsInByb3ZpbmNlc1BlbmRpbmciLCJwcm92aW5jZURldGFpbFBlbmRpbmciLCJwcm92aW5jZUNyZWF0ZVBlbmRpbmciLCJwcm92aW5jZVVwZGF0ZVBlbmRpbmciLCJwcm92aW5jZURlbGV0ZVBlbmRpbmciLCJyZWdpc3RlckVycm9yTWVzc2FnZSIsInByb3ZpbmNlU2xpY2UiLCJuYW1lIiwicmVkdWNlcnMiLCJzZXRQcm92aW5jZSIsInN0YXRlIiwiYWN0aW9uIiwicGF5bG9hZCIsInNldFJlZ2lzdGVyRXJyb3JNZXNzYWdlIiwiZXh0cmFSZWR1Y2VycyIsImJ1aWxkZXIiLCJhZGRDYXNlIiwicGVuZGluZyIsInJlamVjdGVkIiwiZXJyb3IiLCJmdWxmaWxsZWQiLCJfcHJvdmluY2VTbGljZSRhY3Rpb24iLCJhY3Rpb25zIiwicmVkdWNlciIsIlVSTCIsImdldFdpdGhDb25maWciLCJwb3N0V2l0aENvbmZpZyIsInB1dFdpdGhDb25maWciLCJyZW1vdmVXaXRoQ29uZmlnIiwiY29uY2F0IiwiX2NhbGxlZTMiLCJfY29udGV4dDMiLCJfY2FsbGVlNCIsIl9jb250ZXh0NCIsIl9jYWxsZWU1IiwiX2NvbnRleHQ1IiwiX3g1IiwiU0tJTExTIiwiU0tJTEwiLCJTS0lMTF9ERUxFVEUiLCJTS0lMTF9DUkVBVEUiLCJTS0lMTF9VUERBVEUiLCJza2lsbHNTZXJ2aWNlIiwic2tpbGxEZXRhaWxTZXJ2aWNlIiwiY3JlYXRlU2tpbGxTZXJ2aWNlIiwidXBkYXRlU2tpbGxTZXJ2aWNlIiwiZGVsZXRlU2tpbGxTZXJ2aWNlIiwiZmV0Y2hTa2lsbHMiLCJza2lsbERldGFpbEFjdGlvbiIsImNyZWF0ZVNraWxsQWN0aW9uIiwidXBkYXRlU2tpbGxBY3Rpb24iLCJkZWxldGVTa2lsbEFjdGlvbiIsInNraWxscyIsInNraWxsIiwic2tpbGxzUGVuZGluZyIsInNraWxsRGV0YWlsUGVuZGluZyIsInNraWxsQ3JlYXRlUGVuZGluZyIsInNraWxsVXBkYXRlUGVuZGluZyIsInNraWxsRGVsZXRlUGVuZGluZyIsInNraWxsU2xpY2UiLCJzZXRTa2lsbCIsIl9za2lsbFNsaWNlJGFjdGlvbnMiLCJURVJNU19DT05ESVRJT05TIiwiVEVSTVNfQ09ORElUSU9OIiwiVEVSTVNfQ09ORElUSU9OX0RFTEVURSIsIlRFUk1TX0NPTkRJVElPTl9DUkVBVEUiLCJURVJNU19DT05ESVRJT05fVVBEQVRFIiwidGVybXNDb25kaXRpb25zU2VydmljZSIsInRlcm1zQ29uZGl0aW9uRGV0YWlsU2VydmljZSIsImNyZWF0ZVRlcm1zQ29uZGl0aW9uU2VydmljZSIsInVwZGF0ZVRlcm1zQ29uZGl0aW9uU2VydmljZSIsImRlbGV0ZVRlcm1zQ29uZGl0aW9uU2VydmljZSIsImZldGNoVGVybXNDb25kaXRpb25zIiwidGVybXNDb25kaXRpb25EZXRhaWxBY3Rpb24iLCJjcmVhdGVUZXJtc0NvbmRpdGlvbkFjdGlvbiIsInVwZGF0ZVRlcm1zQ29uZGl0aW9uQWN0aW9uIiwiZGVsZXRlVGVybXNDb25kaXRpb25BY3Rpb24iLCJ0ZXJtc0NvbmRpdGlvbnMiLCJ0ZXJtc0NvbmRpdGlvbiIsInRlcm1zQ29uZGl0aW9uc1BlbmRpbmciLCJ0ZXJtc0NvbmRpdGlvbkRldGFpbFBlbmRpbmciLCJ0ZXJtc0NvbmRpdGlvbkNyZWF0ZVBlbmRpbmciLCJ0ZXJtc0NvbmRpdGlvblVwZGF0ZVBlbmRpbmciLCJ0ZXJtc0NvbmRpdGlvbkRlbGV0ZVBlbmRpbmciLCJ0ZXJtc0NvbmRpdGlvblNsaWNlIiwic2V0VGVybXNDb25kaXRpb24iLCJfdGVybXNDb25kaXRpb25TbGljZSQiLCJUUkFJTklOR19TRVNTSU9OUyIsIlRSQUlOSU5HX1NFU1NJT04iLCJUUkFJTklOR19TRVNTSU9OX0RFTEVURSIsIlRSQUlOSU5HX1NFU1NJT05fQ1JFQVRFIiwiVFJBSU5JTkdfU0VTU0lPTl9VUERBVEUiLCJ0cmFpbmluZ1Nlc3Npb25zU2VydmljZSIsInRyYWluaW5nU2Vzc2lvbkRldGFpbFNlcnZpY2UiLCJjcmVhdGVUcmFpbmluZ1Nlc3Npb25TZXJ2aWNlIiwidXBkYXRlVHJhaW5pbmdTZXNzaW9uU2VydmljZSIsImRlbGV0ZVRyYWluaW5nU2Vzc2lvblNlcnZpY2UiLCJmZXRjaFRyYWluaW5nU2Vzc2lvbnMiLCJ0cmFpbmluZ1Nlc3Npb25EZXRhaWxBY3Rpb24iLCJjcmVhdGVUcmFpbmluZ1Nlc3Npb25BY3Rpb24iLCJ1cGRhdGVUcmFpbmluZ1Nlc3Npb25BY3Rpb24iLCJkZWxldGVUcmFpbmluZ1Nlc3Npb25BY3Rpb24iLCJ0cmFpbmluZ1Nlc3Npb25zIiwidHJhaW5pbmdTZXNzaW9uIiwidHJhaW5pbmdTZXNzaW9uc1BlbmRpbmciLCJ0cmFpbmluZ1Nlc3Npb25EZXRhaWxQZW5kaW5nIiwidHJhaW5pbmdTZXNzaW9uQ3JlYXRlUGVuZGluZyIsInRyYWluaW5nU2Vzc2lvblVwZGF0ZVBlbmRpbmciLCJ0cmFpbmluZ1Nlc3Npb25EZWxldGVQZW5kaW5nIiwidHJhaW5pbmdTZXNzaW9uU2xpY2UiLCJzZXRUcmFpbmluZ1Nlc3Npb24iLCJfdHJhaW5pbmdTZXNzaW9uU2xpY2UiLCJUUkFWRUxfREFZUyIsIlRSQVZFTF9EQVkiLCJUUkFWRUxfREFZX0RFTEVURSIsIlRSQVZFTF9EQVlfQ1JFQVRFIiwiVFJBVkVMX0RBWV9VUERBVEUiLCJ0cmF2ZWxEYXlzU2VydmljZSIsInRyYXZlbERheURldGFpbFNlcnZpY2UiLCJjcmVhdGVUcmF2ZWxEYXlTZXJ2aWNlIiwidXBkYXRlVHJhdmVsRGF5U2VydmljZSIsImRlbGV0ZVRyYXZlbERheVNlcnZpY2UiLCJmZXRjaFRyYXZlbERheXMiLCJ0cmF2ZWxEYXlEZXRhaWxBY3Rpb24iLCJjcmVhdGVUcmF2ZWxEYXlBY3Rpb24iLCJ1cGRhdGVUcmF2ZWxEYXlBY3Rpb24iLCJkZWxldGVUcmF2ZWxEYXlBY3Rpb24iLCJ0cmF2ZWxEYXlzIiwidHJhdmVsRGF5IiwidHJhdmVsRGF5c1BlbmRpbmciLCJ0cmF2ZWxEYXlEZXRhaWxQZW5kaW5nIiwidHJhdmVsRGF5Q3JlYXRlUGVuZGluZyIsInRyYXZlbERheVVwZGF0ZVBlbmRpbmciLCJ0cmF2ZWxEYXlEZWxldGVQZW5kaW5nIiwidHJhdmVsRGF5U2xpY2UiLCJzZXRUcmF2ZWxEYXkiLCJfdHJhdmVsRGF5U2xpY2UkYWN0aW8iLCJVU0VSUyIsIlVTRVIiLCJVU0VSX0RFTEVURSIsIlVTRVJfQ1JFQVRFIiwiVVNFUl9VUERBVEUiLCJ1c2Vyc1NlcnZpY2UiLCJ1c2VyRGV0YWlsU2VydmljZSIsImNyZWF0ZVVzZXJTZXJ2aWNlIiwidXBkYXRlVXNlclNlcnZpY2UiLCJkZWxldGVVc2VyU2VydmljZSIsImZldGNoVXNlcnMiLCJ1c2VyRGV0YWlsQWN0aW9uIiwiY3JlYXRlVXNlckFjdGlvbiIsInVwZGF0ZVVzZXJBY3Rpb24iLCJkZWxldGVVc2VyQWN0aW9uIiwidXNlcnMiLCJ1c2VyIiwidXNlcnNQZW5kaW5nIiwidXNlckRldGFpbFBlbmRpbmciLCJ1c2VyQ3JlYXRlUGVuZGluZyIsInVzZXJVcGRhdGVQZW5kaW5nIiwidXNlckRlbGV0ZVBlbmRpbmciLCJ1c2VyU2xpY2UiLCJzZXRVc2VyIiwiX3VzZXJTbGljZSRhY3Rpb25zIiwidXNlclRlbGVncmFtU2VydmljZSIsIl9jYWxsZWU2IiwiX2NvbnRleHQ2IiwiUFVCTElDIiwiX3g2IiwiVVNFUl9BVFRFTkRBTkNFUyIsIlVTRVJfQVRURU5EQU5DRSIsIlVTRVJfQVRURU5EQU5DRV9ERUxFVEUiLCJVU0VSX0FUVEVOREFOQ0VfQ1JFQVRFIiwiVVNFUl9BVFRFTkRBTkNFX1VQREFURSIsInVzZXJBdHRlbmRhbmNlc1NlcnZpY2UiLCJ1c2VyQXR0ZW5kYW5jZURldGFpbFNlcnZpY2UiLCJjcmVhdGVVc2VyQXR0ZW5kYW5jZVNlcnZpY2UiLCJ1cGRhdGVVc2VyQXR0ZW5kYW5jZVNlcnZpY2UiLCJkZWxldGVVc2VyQXR0ZW5kYW5jZVNlcnZpY2UiLCJmZXRjaFVzZXJBdHRlbmRhbmNlcyIsInVzZXJBdHRlbmRhbmNlRGV0YWlsQWN0aW9uIiwiY3JlYXRlVXNlckF0dGVuZGFuY2VBY3Rpb24iLCJ1cGRhdGVVc2VyQXR0ZW5kYW5jZUFjdGlvbiIsImRlbGV0ZVVzZXJBdHRlbmRhbmNlQWN0aW9uIiwidXNlckF0dGVuZGFuY2VzIiwidXNlckF0dGVuZGFuY2UiLCJ1c2VyQXR0ZW5kYW5jZXNQZW5kaW5nIiwidXNlckF0dGVuZGFuY2VEZXRhaWxQZW5kaW5nIiwidXNlckF0dGVuZGFuY2VDcmVhdGVQZW5kaW5nIiwidXNlckF0dGVuZGFuY2VVcGRhdGVQZW5kaW5nIiwidXNlckF0dGVuZGFuY2VEZWxldGVQZW5kaW5nIiwidXNlckF0dGVuZGFuY2VTbGljZSIsInNldFVzZXJBdHRlbmRhbmNlIiwiX3VzZXJBdHRlbmRhbmNlU2xpY2UkIl0sInNvdXJjZVJvb3QiOiIifQ==