@bringg/dashboard-sdk 9.38.1-pre → 9.39.0-pre
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/LookUp/lookup-api.d.ts +2 -2
- package/dist/LookUp/lookup-api.js.map +1 -1
- package/dist/LookUp/lookup.consts.d.ts +4 -0
- package/dist/Services/Identity/Session.js +3 -3
- package/dist/Services/Identity/Session.js.map +1 -1
- package/dist/Services/ServiceRequest.js +1 -1
- package/dist/TaskManagedAttributes/task-managed-attributes-api.js +2 -1
- package/dist/TaskManagedAttributes/task-managed-attributes-api.js.map +1 -1
- package/dist/bringg-dashboard-sdk-cjs2.js +6 -5
- package/dist/bringg-dashboard-sdk-cjs2.js.map +1 -1
- package/dist/bringg-dashboard-sdk.js +3 -3
- package/dist/bringg-dashboard-sdk.min.js +1 -1
- package/dist/bringg-dashboard-sdk.min.js.map +1 -1
- package/package.json +1 -1
|
@@ -2261,7 +2261,7 @@ eval("\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _argument
|
|
|
2261
2261
|
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
2262
2262
|
|
|
2263
2263
|
"use strict";
|
|
2264
|
-
eval("\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __generator = (this && this.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n};\nvar __values = (this && this.__values) || function(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\nvar deepmerge_1 = __importDefault(__webpack_require__(/*! deepmerge */ \"./node_modules/deepmerge/dist/cjs.js\"));\nvar BringgDashboardSDK_1 = __webpack_require__(/*! ../../BringgDashboardSDK */ \"./dist/BringgDashboardSDK.js\");\nvar BringgDashboardSDK_consts_1 = __webpack_require__(/*! ../../BringgDashboardSDK.consts */ \"./dist/BringgDashboardSDK.consts.js\");\nvar ConfigurationProvider_1 = __webpack_require__(/*! ../../Core/ConfigurationProvider */ \"./dist/Core/ConfigurationProvider.js\");\nvar Enums_1 = __webpack_require__(/*! ../../Core/Http/Enums */ \"./dist/Core/Http/Enums.js\");\nvar URLEndpoint_1 = __importDefault(__webpack_require__(/*! ../../Core/Http/URLEndpoint */ \"./dist/Core/Http/URLEndpoint.js\"));\nvar Logger_1 = __importDefault(__webpack_require__(/*! ../../Core/Logger */ \"./dist/Core/Logger.js\"));\nvar PersistentConnection_1 = __importDefault(__webpack_require__(/*! ../PersistentConnection */ \"./dist/Services/PersistentConnection.js\"));\nvar PubSubEvents_1 = __webpack_require__(/*! ../PubSubEvents */ \"./dist/Services/PubSubEvents.js\");\nvar AuthService_1 = __importDefault(__webpack_require__(/*! ./AuthService */ \"./dist/Services/Identity/AuthService.js\"));\nvar Session = /** @class */ (function () {\n function Session(user) {\n this.merchant = null;\n this.webApplicationConfiguration = null;\n this.user = user;\n this.eventHandlers = new Set();\n this.sendDataEvent = this.sendDataEvent.bind(this);\n }\n Session.prototype.setEventHandler = function (fun) {\n this.eventHandlers.add(fun);\n };\n Session.prototype.sendDataEvent = function (name, message) {\n Session.sendDataEventInternal(this.eventHandlers, name, message);\n };\n Session.prototype.update = function (key, value) {\n if (!this[key]) {\n throw new Error(\"tried to update key: \".concat(key, \" not existing!\"));\n }\n //when merging 2 arrays, prefer they new one as it full update\n var chooseLatest = function (target, source) { return source; };\n this[key] = (0, deepmerge_1.default)(this[key], value, { arrayMerge: chooseLatest });\n };\n Session.sendDataEventInternal = function (eventHandlers, name, message) {\n eventHandlers.forEach(function (fun) { return Session.checked(fun, name, message); });\n };\n Session._merge = function (obj1, obj2) {\n var e_1, _a;\n try {\n for (var obj2_1 = __values(obj2), obj2_1_1 = obj2_1.next(); !obj2_1_1.done; obj2_1_1 = obj2_1.next()) {\n var attrname = obj2_1_1.value;\n obj1[attrname] = obj2[attrname];\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (obj2_1_1 && !obj2_1_1.done && (_a = obj2_1.return)) _a.call(obj2_1);\n }\n finally { if (e_1) throw e_1.error; }\n }\n };\n Session.fromUser = function (user, initRealTime) {\n if (initRealTime === void 0) { initRealTime = true; }\n return __awaiter(this, void 0, void 0, function () {\n var ses, _a;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n ses = new Session(user);\n if (!initRealTime) return [3 /*break*/, 2];\n _a = ses;\n return [4 /*yield*/, PersistentConnection_1.default.init(ses)];\n case 1:\n _a._persistentConnection = _b.sent();\n ses._persistentConnection.subscribe(PubSubEvents_1.EMPLOYEE_UPDATE_EVENT, function (user) {\n if (user.uuid === ses.user.uuid) {\n Session._merge(ses.user, user);\n ses.sendDataEvent('current user updated', ses.user);\n }\n });\n _b.label = 2;\n case 2: return [2 /*return*/, ses];\n }\n });\n });\n };\n Object.defineProperty(Session.prototype, \"userId\", {\n get: function () {\n return this.user.id;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Session.prototype, \"region\", {\n get: function () {\n return this.user.region ? this.user.region : (0, BringgDashboardSDK_1.getConfigurationProvider)().getDefaultRegion();\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Session.prototype, \"clientId\", {\n get: function () {\n return (0, BringgDashboardSDK_1.getConfigurationProvider)().getClientId();\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Session.prototype, \"config\", {\n get: function () {\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n var _this = this;\n return new (/** @class */ (function () {\n function class_1() {\n }\n class_1.prototype.getApiEndpoint = function () {\n return URLEndpoint_1.default.parse((0, BringgDashboardSDK_1.getConfigurationProvider)().getApiEndpoint(_this.region));\n };\n class_1.prototype.getAuthenticationEndpoint = function () {\n return URLEndpoint_1.default.parse((0, BringgDashboardSDK_1.getConfigurationProvider)().getAuthenticationEndpoint(_this.region));\n };\n class_1.prototype.getMonitoringEndpoint = function () {\n return URLEndpoint_1.default.parse((0, BringgDashboardSDK_1.getConfigurationProvider)().getMonitoringEndpoint(_this.region));\n };\n return class_1;\n }()))();\n },\n enumerable: false,\n configurable: true\n });\n Session.init = function (params) {\n return __awaiter(this, void 0, void 0, function () {\n var user, authService, response, _a, email, password, merchant_uuid, otp, recaptchaToken, recaptcha_qa_token, response, emailParams, response, sessionParams, response, codeExchangeParams, response;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n user = params.user;\n if (user) {\n return [2 /*return*/, Session.fromUser(user)];\n }\n authService = AuthService_1.default.init(params.region);\n if (!params.authenticationToken) return [3 /*break*/, 2];\n return [4 /*yield*/, authService.loginWithToken(params.authenticationToken)];\n case 1:\n response = _b.sent();\n return [2 /*return*/, Session.fromUser(response)];\n case 2:\n if (!params.otp) return [3 /*break*/, 4];\n _a = params, email = _a.email, password = _a.password, merchant_uuid = _a.merchant_uuid, otp = _a.otp, recaptchaToken = _a.recaptchaToken, recaptcha_qa_token = _a.recaptcha_qa_token;\n return [4 /*yield*/, authService.loginWithOTP(email, password, otp, merchant_uuid, recaptchaToken, recaptcha_qa_token)];\n case 3:\n response = _b.sent();\n return [2 /*return*/, Session.fromUser(response)];\n case 4:\n if (!params.email) return [3 /*break*/, 6];\n emailParams = params;\n return [4 /*yield*/, this.loginWithEmailRetry(params.region, emailParams.email, emailParams.password, emailParams.merchant_uuid, emailParams.recaptchaToken, emailParams.recaptcha_qa_token, 0)];\n case 5:\n response = _b.sent();\n return [2 /*return*/, Session.fromUser(response)];\n case 6:\n if (!params.code) return [3 /*break*/, 8];\n sessionParams = params;\n return [4 /*yield*/, authService.loginWithSessionCode(sessionParams.code, sessionParams.session)];\n case 7:\n response = _b.sent();\n return [2 /*return*/, Session.fromUser(response)];\n case 8:\n codeExchangeParams = params;\n if (!(codeExchangeParams.token && codeExchangeParams.secret)) return [3 /*break*/, 10];\n return [4 /*yield*/, authService.loginWithOneTimeCode(codeExchangeParams.token, codeExchangeParams.secret)];\n case 9:\n response = _b.sent();\n return [2 /*return*/, Session.fromUser(response)];\n case 10: throw new Error('Unknown session initialization parameters type.');\n }\n });\n });\n };\n Session.loginWithEmailRetry = function (region, email, password, merchant_uuid, recaptchaToken, recaptcha_qa_token, loginRetryCount) {\n return __awaiter(this, void 0, void 0, function () {\n var currentRegion, authService, user, error_1;\n var _this_1 = this;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n currentRegion = region || (0, BringgDashboardSDK_1.getConfigurationProvider)().getDefaultRegion();\n loginRetryCount++;\n authService = AuthService_1.default.init(currentRegion);\n _a.label = 1;\n case 1:\n _a.trys.push([1, 3, , 4]);\n return [4 /*yield*/, authService.loginWithEmail(email, password, merchant_uuid, recaptchaToken, recaptcha_qa_token)];\n case 2:\n user = _a.sent();\n return [2 /*return*/, user];\n case 3:\n error_1 = _a.sent();\n if (loginRetryCount < 10 && error_1.message === Enums_1.REGION_NOT_WORKING) {\n Logger_1.default.error(\"Region is not accessible - \".concat(currentRegion, \", \").concat(error_1.message));\n return [2 /*return*/, new Promise(function (resolve, reject) {\n setTimeout(function () { return __awaiter(_this_1, void 0, void 0, function () {\n var _a, e_2;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n _b.trys.push([0, 2, , 3]);\n _a = resolve;\n return [4 /*yield*/, this.loginWithEmailRetry(ConfigurationProvider_1.ConfigurationProvider.getNextRegion(currentRegion), email, password, merchant_uuid, recaptchaToken, recaptcha_qa_token, loginRetryCount)];\n case 1:\n _a.apply(void 0, [_b.sent()]);\n return [3 /*break*/, 3];\n case 2:\n e_2 = _b.sent();\n reject(e_2);\n return [3 /*break*/, 3];\n case 3: return [2 /*return*/];\n }\n });\n }); }, 100);\n })];\n }\n else {\n throw error_1;\n }\n return [3 /*break*/, 4];\n case 4: return [2 /*return*/];\n }\n });\n });\n };\n /**\n * need this for the sake of explicit update in case realtime is down\n */\n Session.prototype.refreshCurrentUser = function () {\n return __awaiter(this, void 0, void 0, function () {\n var user;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, AuthService_1.default.init(this.user.region).loginWithToken(this.user.authentication_token)];\n case 1:\n user = _a.sent();\n Session._merge(this.user, user);\n this.sendDataEvent('current user updated', this.user);\n return [2 /*return*/, this.user];\n }\n });\n });\n };\n Session.prototype.logout = function (keepServerSession) {\n if (keepServerSession === void 0) { keepServerSession = false; }\n return __awaiter(this, void 0, void 0, function () {\n var handlers;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n handlers = new Set(this.eventHandlers.values());\n Session.sendDataEventInternal(handlers, BringgDashboardSDK_consts_1.GlobalEvents.SDK_DISPOSING);\n this.eventHandlers.clear();\n return [4 /*yield*/, this.persistentConnection.dispose()];\n case 1:\n _a.sent();\n Session.sendDataEventInternal(handlers, BringgDashboardSDK_consts_1.GlobalEvents.SDK_DISPOSED);\n if (!!keepServerSession) return [3 /*break*/, 3];\n return [4 /*yield*/, AuthService_1.default.init(this.user.region).logout(this.user.authentication_token)];\n case 2: return [2 /*return*/, _a.sent()];\n case 3: return [2 /*return*/];\n }\n });\n });\n };\n Session.prototype.switchAccounts = function () {\n return __awaiter(this, void 0, void 0, function () {\n var _a, _b;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n _b = (_a = Session).fromUser;\n return [4 /*yield*/, AuthService_1.default.init(this.user.region).switchAccounts(this.user.authentication_token)];\n case 1: return [2 /*return*/, _b.apply(_a, [_c.sent()])];\n }\n });\n });\n };\n Session.prototype.impersonate = function (user_id) {\n return __awaiter(this, void 0, void 0, function () {\n var newUser;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, AuthService_1.default.init(this.user.region).impersonate(this.user.authentication_token, user_id)];\n case 1:\n newUser = _a.sent();\n newUser.original_user = this.user;\n return [2 /*return*/, Session.fromUser(newUser)];\n }\n });\n });\n };\n Session.prototype.impersonateByTeam = function (team_id) {\n return __awaiter(this, void 0, void 0, function () {\n var newUser;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, AuthService_1.default.init(this.user.region).impersonateByTeam(this.user.authentication_token, team_id)];\n case 1:\n newUser = _a.sent();\n newUser.original_user = this.user;\n return [2 /*return*/, Session.fromUser(newUser)];\n }\n });\n });\n };\n Session.prototype.unwindImpersonation = function () {\n return __awaiter(this, void 0, void 0, function () {\n var newUser;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, AuthService_1.default.init(this.user.region).unwind(this.user.authentication_token)];\n case 1:\n newUser = _a.sent();\n return [2 /*return*/, Session.fromUser(newUser)];\n }\n });\n });\n };\n Session.initWithAuthToken = function (region, authToken, initRealTime) {\n if (initRealTime === void 0) { initRealTime = true; }\n return __awaiter(this, void 0, void 0, function () {\n var authService, user;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n authService = AuthService_1.default.init(region);\n return [4 /*yield*/, authService.loginWithToken(authToken)];\n case 1:\n user = _a.sent();\n return [2 /*return*/, Session.fromUser(user, initRealTime)];\n }\n });\n });\n };\n Object.defineProperty(Session.prototype, \"persistentConnection\", {\n get: function () {\n return this._persistentConnection;\n },\n enumerable: false,\n configurable: true\n });\n Session.checked = function (fun, name, message) {\n try {\n fun(name, message);\n }\n catch (e) {\n // do nothing\n }\n };\n return Session;\n}());\nexports[\"default\"] = Session;\n//# sourceMappingURL=Session.js.map\n\n//# sourceURL=webpack://BringgDashboardSDK/./dist/Services/Identity/Session.js?");
|
|
2264
|
+
eval("\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __generator = (this && this.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n};\nvar __values = (this && this.__values) || function(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\nvar deepmerge_1 = __importDefault(__webpack_require__(/*! deepmerge */ \"./node_modules/deepmerge/dist/cjs.js\"));\nvar BringgDashboardSDK_1 = __webpack_require__(/*! ../../BringgDashboardSDK */ \"./dist/BringgDashboardSDK.js\");\nvar BringgDashboardSDK_consts_1 = __webpack_require__(/*! ../../BringgDashboardSDK.consts */ \"./dist/BringgDashboardSDK.consts.js\");\nvar ConfigurationProvider_1 = __webpack_require__(/*! ../../Core/ConfigurationProvider */ \"./dist/Core/ConfigurationProvider.js\");\nvar Enums_1 = __webpack_require__(/*! ../../Core/Http/Enums */ \"./dist/Core/Http/Enums.js\");\nvar URLEndpoint_1 = __importDefault(__webpack_require__(/*! ../../Core/Http/URLEndpoint */ \"./dist/Core/Http/URLEndpoint.js\"));\nvar Logger_1 = __importDefault(__webpack_require__(/*! ../../Core/Logger */ \"./dist/Core/Logger.js\"));\nvar PersistentConnection_1 = __importDefault(__webpack_require__(/*! ../PersistentConnection */ \"./dist/Services/PersistentConnection.js\"));\nvar PubSubEvents_1 = __webpack_require__(/*! ../PubSubEvents */ \"./dist/Services/PubSubEvents.js\");\nvar AuthService_1 = __importDefault(__webpack_require__(/*! ./AuthService */ \"./dist/Services/Identity/AuthService.js\"));\nvar Session = /** @class */ (function () {\n function Session(user) {\n this.merchant = null;\n this.webApplicationConfiguration = null;\n this.user = user;\n this.eventHandlers = new Set();\n this.sendDataEvent = this.sendDataEvent.bind(this);\n }\n Session.prototype.setEventHandler = function (fun) {\n this.eventHandlers.add(fun);\n };\n Session.prototype.sendDataEvent = function (name, message) {\n Session.sendDataEventInternal(this.eventHandlers, name, message);\n };\n Session.prototype.update = function (key, value) {\n if (!this[key]) {\n throw new Error(\"tried to update key: \".concat(key, \" not existing!\"));\n }\n //when merging 2 arrays, prefer they new one as it full update\n var chooseLatest = function (target, source) { return source; };\n this[key] = (0, deepmerge_1.default)(this[key], value, { arrayMerge: chooseLatest });\n };\n Session.sendDataEventInternal = function (eventHandlers, name, message) {\n eventHandlers.forEach(function (fun) { return Session.checked(fun, name, message); });\n };\n Session._merge = function (obj1, obj2) {\n var e_1, _a;\n try {\n for (var obj2_1 = __values(obj2), obj2_1_1 = obj2_1.next(); !obj2_1_1.done; obj2_1_1 = obj2_1.next()) {\n var attrname = obj2_1_1.value;\n obj1[attrname] = obj2[attrname];\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (obj2_1_1 && !obj2_1_1.done && (_a = obj2_1.return)) _a.call(obj2_1);\n }\n finally { if (e_1) throw e_1.error; }\n }\n };\n Session.fromUser = function (user, initRealTime) {\n if (initRealTime === void 0) { initRealTime = true; }\n return __awaiter(this, void 0, void 0, function () {\n var ses, _a;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n ses = new Session(user);\n if (!initRealTime) return [3 /*break*/, 2];\n _a = ses;\n return [4 /*yield*/, PersistentConnection_1.default.init(ses)];\n case 1:\n _a._persistentConnection = _b.sent();\n ses._persistentConnection.subscribe(PubSubEvents_1.EMPLOYEE_UPDATE_EVENT, function (user) {\n if (user.uuid === ses.user.uuid) {\n Session._merge(ses.user, user);\n ses.sendDataEvent('current user updated', ses.user);\n }\n });\n _b.label = 2;\n case 2: return [2 /*return*/, ses];\n }\n });\n });\n };\n Object.defineProperty(Session.prototype, \"userId\", {\n get: function () {\n return this.user.id;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Session.prototype, \"region\", {\n get: function () {\n return this.user.region ? this.user.region : (0, BringgDashboardSDK_1.getConfigurationProvider)().getDefaultRegion();\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Session.prototype, \"clientId\", {\n get: function () {\n return (0, BringgDashboardSDK_1.getConfigurationProvider)().getClientId();\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Session.prototype, \"config\", {\n get: function () {\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n var _this = this;\n return new (/** @class */ (function () {\n function class_1() {\n }\n class_1.prototype.getApiEndpoint = function () {\n return URLEndpoint_1.default.parse((0, BringgDashboardSDK_1.getConfigurationProvider)().getApiEndpoint(_this.region));\n };\n class_1.prototype.getAuthenticationEndpoint = function () {\n return URLEndpoint_1.default.parse((0, BringgDashboardSDK_1.getConfigurationProvider)().getAuthenticationEndpoint(_this.region));\n };\n class_1.prototype.getMonitoringEndpoint = function () {\n return URLEndpoint_1.default.parse((0, BringgDashboardSDK_1.getConfigurationProvider)().getMonitoringEndpoint(_this.region));\n };\n return class_1;\n }()))();\n },\n enumerable: false,\n configurable: true\n });\n Session.init = function (params) {\n return __awaiter(this, void 0, void 0, function () {\n var user, authService, response, _a, email, password, merchant_uuid, otp, recaptchaToken, recaptcha_qa_token, region, response, emailParams, response, sessionParams, response, codeExchangeParams, response;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n user = params.user;\n if (user) {\n return [2 /*return*/, Session.fromUser(user)];\n }\n authService = AuthService_1.default.init(params.region);\n if (!params.authenticationToken) return [3 /*break*/, 2];\n return [4 /*yield*/, authService.loginWithToken(params.authenticationToken)];\n case 1:\n response = _b.sent();\n return [2 /*return*/, Session.fromUser(response)];\n case 2:\n if (!params.otp) return [3 /*break*/, 4];\n _a = params, email = _a.email, password = _a.password, merchant_uuid = _a.merchant_uuid, otp = _a.otp, recaptchaToken = _a.recaptchaToken, recaptcha_qa_token = _a.recaptcha_qa_token, region = _a.region;\n return [4 /*yield*/, authService.loginWithOTP(email, password, otp, merchant_uuid, recaptchaToken, recaptcha_qa_token, region)];\n case 3:\n response = _b.sent();\n return [2 /*return*/, Session.fromUser(response)];\n case 4:\n if (!params.email) return [3 /*break*/, 6];\n emailParams = params;\n return [4 /*yield*/, this.loginWithEmailRetry(params.region, emailParams.email, emailParams.password, emailParams.merchant_uuid, emailParams.recaptchaToken, emailParams.recaptcha_qa_token, 0)];\n case 5:\n response = _b.sent();\n return [2 /*return*/, Session.fromUser(response)];\n case 6:\n if (!params.code) return [3 /*break*/, 8];\n sessionParams = params;\n return [4 /*yield*/, authService.loginWithSessionCode(sessionParams.code, sessionParams.session)];\n case 7:\n response = _b.sent();\n return [2 /*return*/, Session.fromUser(response)];\n case 8:\n codeExchangeParams = params;\n if (!(codeExchangeParams.token && codeExchangeParams.secret)) return [3 /*break*/, 10];\n return [4 /*yield*/, authService.loginWithOneTimeCode(codeExchangeParams.token, codeExchangeParams.secret)];\n case 9:\n response = _b.sent();\n return [2 /*return*/, Session.fromUser(response)];\n case 10: throw new Error('Unknown session initialization parameters type.');\n }\n });\n });\n };\n Session.loginWithEmailRetry = function (region, email, password, merchant_uuid, recaptchaToken, recaptcha_qa_token, loginRetryCount) {\n return __awaiter(this, void 0, void 0, function () {\n var currentRegion, authService, user, error_1;\n var _this_1 = this;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n currentRegion = region || (0, BringgDashboardSDK_1.getConfigurationProvider)().getDefaultRegion();\n loginRetryCount++;\n authService = AuthService_1.default.init(currentRegion);\n _a.label = 1;\n case 1:\n _a.trys.push([1, 3, , 4]);\n return [4 /*yield*/, authService.loginWithEmail(email, password, merchant_uuid, recaptchaToken, recaptcha_qa_token)];\n case 2:\n user = _a.sent();\n return [2 /*return*/, user];\n case 3:\n error_1 = _a.sent();\n if (loginRetryCount < 10 && error_1.message === Enums_1.REGION_NOT_WORKING) {\n Logger_1.default.error(\"Region is not accessible - \".concat(currentRegion, \", \").concat(error_1.message));\n return [2 /*return*/, new Promise(function (resolve, reject) {\n setTimeout(function () { return __awaiter(_this_1, void 0, void 0, function () {\n var _a, e_2;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n _b.trys.push([0, 2, , 3]);\n _a = resolve;\n return [4 /*yield*/, this.loginWithEmailRetry(ConfigurationProvider_1.ConfigurationProvider.getNextRegion(currentRegion), email, password, merchant_uuid, recaptchaToken, recaptcha_qa_token, loginRetryCount)];\n case 1:\n _a.apply(void 0, [_b.sent()]);\n return [3 /*break*/, 3];\n case 2:\n e_2 = _b.sent();\n reject(e_2);\n return [3 /*break*/, 3];\n case 3: return [2 /*return*/];\n }\n });\n }); }, 100);\n })];\n }\n else {\n throw error_1;\n }\n return [3 /*break*/, 4];\n case 4: return [2 /*return*/];\n }\n });\n });\n };\n /**\n * need this for the sake of explicit update in case realtime is down\n */\n Session.prototype.refreshCurrentUser = function () {\n return __awaiter(this, void 0, void 0, function () {\n var user;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, AuthService_1.default.init(this.user.region).loginWithToken(this.user.authentication_token)];\n case 1:\n user = _a.sent();\n Session._merge(this.user, user);\n this.sendDataEvent('current user updated', this.user);\n return [2 /*return*/, this.user];\n }\n });\n });\n };\n Session.prototype.logout = function (keepServerSession) {\n if (keepServerSession === void 0) { keepServerSession = false; }\n return __awaiter(this, void 0, void 0, function () {\n var handlers;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n handlers = new Set(this.eventHandlers.values());\n Session.sendDataEventInternal(handlers, BringgDashboardSDK_consts_1.GlobalEvents.SDK_DISPOSING);\n this.eventHandlers.clear();\n return [4 /*yield*/, this.persistentConnection.dispose()];\n case 1:\n _a.sent();\n Session.sendDataEventInternal(handlers, BringgDashboardSDK_consts_1.GlobalEvents.SDK_DISPOSED);\n if (!!keepServerSession) return [3 /*break*/, 3];\n return [4 /*yield*/, AuthService_1.default.init(this.user.region).logout(this.user.authentication_token)];\n case 2: return [2 /*return*/, _a.sent()];\n case 3: return [2 /*return*/];\n }\n });\n });\n };\n Session.prototype.switchAccounts = function () {\n return __awaiter(this, void 0, void 0, function () {\n var _a, _b;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n _b = (_a = Session).fromUser;\n return [4 /*yield*/, AuthService_1.default.init(this.user.region).switchAccounts(this.user.authentication_token)];\n case 1: return [2 /*return*/, _b.apply(_a, [_c.sent()])];\n }\n });\n });\n };\n Session.prototype.impersonate = function (user_id) {\n return __awaiter(this, void 0, void 0, function () {\n var newUser;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, AuthService_1.default.init(this.user.region).impersonate(this.user.authentication_token, user_id)];\n case 1:\n newUser = _a.sent();\n newUser.original_user = this.user;\n return [2 /*return*/, Session.fromUser(newUser)];\n }\n });\n });\n };\n Session.prototype.impersonateByTeam = function (team_id) {\n return __awaiter(this, void 0, void 0, function () {\n var newUser;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, AuthService_1.default.init(this.user.region).impersonateByTeam(this.user.authentication_token, team_id)];\n case 1:\n newUser = _a.sent();\n newUser.original_user = this.user;\n return [2 /*return*/, Session.fromUser(newUser)];\n }\n });\n });\n };\n Session.prototype.unwindImpersonation = function () {\n return __awaiter(this, void 0, void 0, function () {\n var newUser;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, AuthService_1.default.init(this.user.region).unwind(this.user.authentication_token)];\n case 1:\n newUser = _a.sent();\n return [2 /*return*/, Session.fromUser(newUser)];\n }\n });\n });\n };\n Session.initWithAuthToken = function (region, authToken, initRealTime) {\n if (initRealTime === void 0) { initRealTime = true; }\n return __awaiter(this, void 0, void 0, function () {\n var authService, user;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n authService = AuthService_1.default.init(region);\n return [4 /*yield*/, authService.loginWithToken(authToken)];\n case 1:\n user = _a.sent();\n return [2 /*return*/, Session.fromUser(user, initRealTime)];\n }\n });\n });\n };\n Object.defineProperty(Session.prototype, \"persistentConnection\", {\n get: function () {\n return this._persistentConnection;\n },\n enumerable: false,\n configurable: true\n });\n Session.checked = function (fun, name, message) {\n try {\n fun(name, message);\n }\n catch (e) {\n // do nothing\n }\n };\n return Session;\n}());\nexports[\"default\"] = Session;\n//# sourceMappingURL=Session.js.map\n\n//# sourceURL=webpack://BringgDashboardSDK/./dist/Services/Identity/Session.js?");
|
|
2265
2265
|
|
|
2266
2266
|
/***/ }),
|
|
2267
2267
|
|
|
@@ -2338,7 +2338,7 @@ eval("\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\nexpo
|
|
|
2338
2338
|
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
2339
2339
|
|
|
2340
2340
|
"use strict";
|
|
2341
|
-
eval("\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __generator = (this && this.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\nexports.AnonymousServiceRequest = exports.AuthorizedServiceRequest = exports.ResponseHandler = exports.RequestOptions = exports.logErrorResponse = void 0;\nvar axios_1 = __importDefault(__webpack_require__(/*! axios */ \"./node_modules/axios/index.js\"));\nvar lodash_1 = __webpack_require__(/*! lodash */ \"./node_modules/lodash/lodash.js\");\nvar BringgException_1 = __webpack_require__(/*! ../Core/BringgException */ \"./dist/Core/BringgException.js\");\nvar Logger_1 = __importDefault(__webpack_require__(/*! ../Core/Logger */ \"./dist/Core/Logger.js\"));\nvar abort_1 = __webpack_require__(/*! ../utils/abort */ \"./dist/utils/abort.js\");\nvar version = '9.38.1-pre';\nfunction logErrorResponse(response) {\n var data = response.data, status = response.status;\n try {\n Logger_1.default.error(response.config.method.toUpperCase(), response.config.url, status);\n }\n catch (e) {\n //\n }\n try {\n Logger_1.default.info(response.config.method.toUpperCase(), response.config.url, status, data);\n }\n catch (e) {\n //\n }\n try {\n Logger_1.default.debug(response);\n }\n catch (e) {\n //\n }\n}\nexports.logErrorResponse = logErrorResponse;\nvar DEFAULT_TIMEOUT = 120000;\nvar RequestOptions = /** @class */ (function () {\n function RequestOptions(clientId, timeout, \n // eslint-disable-next-line @typescript-eslint/ban-types\n queryString, authenticationToken, \n // eslint-disable-next-line @typescript-eslint/ban-types\n headers, responseType, signal) {\n // NiceToHave: move headers to HttpHeaders class\n this.headers = __assign(__assign({ 'Content-Type': 'application/json' }, headers), { 'sdk-version': version, Client: clientId });\n this.timeout = timeout;\n this.validateStatus = lodash_1.stubTrue;\n if (queryString) {\n this.params = queryString;\n }\n if (authenticationToken) {\n this.headers['Authorization'] = \"Token token=\".concat(authenticationToken);\n }\n if (responseType) {\n this.responseType = responseType;\n }\n if (signal) {\n this.signal = signal;\n }\n }\n RequestOptions.new = function (_a) {\n var _b = _a === void 0 ? {} : _a, _c = _b.clientId, clientId = _c === void 0 ? 'Bringg Dashboard' : _c, _d = _b.timeout, timeout = _d === void 0 ? DEFAULT_TIMEOUT : _d, queryString = _b.queryString, authenticationToken = _b.authenticationToken, headers = _b.headers, responseType = _b.responseType, signal = _b.signal;\n return new RequestOptions(clientId, timeout || DEFAULT_TIMEOUT, queryString, authenticationToken, headers, responseType, signal);\n };\n return RequestOptions;\n}());\nexports.RequestOptions = RequestOptions;\nvar ResponseHandler = /** @class */ (function () {\n function ResponseHandler(response, signal) {\n this.axiosPromise = response;\n this.signal = signal;\n }\n ResponseHandler.prototype.handle = function (consumer) {\n return __awaiter(this, void 0, void 0, function () {\n var axiosResponse, e_1;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if ((0, lodash_1.isUndefined)(consumer)) {\n throw new Error('consumer must be defined');\n }\n _a.label = 1;\n case 1:\n _a.trys.push([1, 3, , 4]);\n return [4 /*yield*/, this.axiosPromise];\n case 2:\n axiosResponse = _a.sent();\n return [2 /*return*/, consumer(axiosResponse)];\n case 3:\n e_1 = _a.sent();\n if (axios_1.default.isCancel(e_1)) {\n (0, abort_1.throwAbortError)(this.signal, 'Request Aborted');\n }\n if (e_1 instanceof BringgException_1.BringgException) {\n throw e_1;\n }\n return [2 /*return*/, consumer(e_1)];\n case 4: return [2 /*return*/];\n }\n });\n });\n };\n return ResponseHandler;\n}());\nexports.ResponseHandler = ResponseHandler;\nfunction get(axiosInstance, host, uri, queryString, signal) {\n return new ResponseHandler(axiosInstance.get(\"\".concat(host).concat(uri), { params: queryString, signal: signal }), signal);\n}\nfunction post(axiosInstance, host, uri, queryString, payload, signal) {\n return new ResponseHandler(axiosInstance.post(\"\".concat(host).concat(uri), payload, { params: queryString, signal: signal }), signal);\n}\nfunction put(axiosInstance, host, uri, queryString, payload, signal) {\n return new ResponseHandler(axiosInstance.put(\"\".concat(host).concat(uri), payload, { params: queryString, signal: signal }), signal);\n}\nfunction patch(axiosInstance, host, uri, queryString, payload, signal) {\n return new ResponseHandler(axiosInstance.patch(\"\".concat(host).concat(uri), payload, { params: queryString, signal: signal }), signal);\n}\nfunction remove(axiosInstance, host, uri, queryString, payload, signal) {\n return new ResponseHandler(axiosInstance.delete(\"\".concat(host).concat(uri), { params: queryString, data: payload, signal: signal }), signal);\n}\nfunction routify(axiosInstance, endpoint, route, \n// eslint-disable-next-line @typescript-eslint/ban-types\nrouteParams, queryString, payload, signal) {\n switch (route.httpMethod) {\n case 0 /* HttpMethod.GET */:\n return get(axiosInstance, endpoint.encode(), route.applyParams(routeParams), queryString, signal);\n case 1 /* HttpMethod.POST */:\n return post(axiosInstance, endpoint.encode(), route.applyParams(routeParams), queryString, payload, signal);\n case 2 /* HttpMethod.PUT */:\n return put(axiosInstance, endpoint.encode(), route.applyParams(routeParams), queryString, payload, signal);\n case 3 /* HttpMethod.PATCH */:\n return patch(axiosInstance, endpoint.encode(), route.applyParams(routeParams), queryString, payload, signal);\n case 4 /* HttpMethod.DELETE */:\n return remove(axiosInstance, endpoint.encode(), route.applyParams(routeParams), queryString, payload, signal);\n }\n}\nfunction wrapWithInterceptors(axios) {\n axios.interceptors.request.use(function (req) {\n var method = req.method, url = req.url, params = req.params, headers = req.headers, data = req.data;\n try {\n Logger_1.default.debug('REQUEST:', method.toUpperCase(), url);\n }\n catch (e) {\n //\n }\n try {\n Logger_1.default.trace('REQUEST-query-string:', params);\n Logger_1.default.trace('REQUEST-headers:', headers);\n Logger_1.default.trace('REQUEST-data:', data);\n }\n catch (e) {\n //\n }\n return req;\n });\n axios.interceptors.response.use(function (res) {\n var statusText = res.statusText, status = res.status, headers = res.headers, data = res.data;\n try {\n Logger_1.default.debug('RESPONSE:', res.config.url, status, statusText);\n }\n catch (e) {\n //\n }\n try {\n Logger_1.default.trace('RESPONSE-headers:', headers);\n Logger_1.default.trace('RESPONSE-data:', data);\n }\n catch (e) {\n //\n }\n return res;\n });\n return axios;\n}\nfunction axiosInstance(clientId, authenticationToken, \n// eslint-disable-next-line @typescript-eslint/ban-types\nheaders, responseType, timeout, signal) {\n return wrapWithInterceptors(axios_1.default.create(RequestOptions.new({ clientId: clientId, authenticationToken: authenticationToken, headers: headers, responseType: responseType, timeout: timeout, signal: signal })));\n}\n// eslint-disable-next-line @typescript-eslint/ban-types\nfunction anonymousAxiosInstance(clientId, headers, signal) {\n return wrapWithInterceptors(axios_1.default.create(RequestOptions.new({ clientId: clientId, headers: headers, signal: signal })));\n}\nvar AuthorizedServiceRequest = /** @class */ (function () {\n function AuthorizedServiceRequest(clientId, authToken) {\n this.authToken = authToken;\n this.clientId = clientId;\n }\n AuthorizedServiceRequest.prototype.invoke = function (endpoint, route, \n // eslint-disable-next-line @typescript-eslint/ban-types\n routeParams, \n // eslint-disable-next-line @typescript-eslint/ban-types\n queryString, payload, \n // eslint-disable-next-line @typescript-eslint/ban-types\n headers, responseType, timeout, signal) {\n if (signal === null || signal === void 0 ? void 0 : signal.aborted) {\n (0, abort_1.throwAbortError)(signal, 'Request aborted (before even started the request)');\n }\n return routify(axiosInstance(this.clientId, this.authToken, headers, responseType, timeout), endpoint, route, routeParams, queryString, payload, signal);\n };\n return AuthorizedServiceRequest;\n}());\nexports.AuthorizedServiceRequest = AuthorizedServiceRequest;\nvar AnonymousServiceRequest = /** @class */ (function () {\n function AnonymousServiceRequest(clientId, headers) {\n this.clientId = clientId;\n this.headers = headers;\n }\n AnonymousServiceRequest.prototype.invoke = function (endpoint, route, \n // eslint-disable-next-line @typescript-eslint/ban-types\n routeParams, \n // eslint-disable-next-line @typescript-eslint/ban-types\n queryString, payload, signal) {\n if (signal === null || signal === void 0 ? void 0 : signal.aborted) {\n (0, abort_1.throwAbortError)(signal, 'Request aborted (before even started the request)');\n }\n return routify(anonymousAxiosInstance(this.clientId, this.headers, signal), endpoint, route, routeParams, queryString, payload);\n };\n return AnonymousServiceRequest;\n}());\nexports.AnonymousServiceRequest = AnonymousServiceRequest;\n//# sourceMappingURL=ServiceRequest.js.map\n\n//# sourceURL=webpack://BringgDashboardSDK/./dist/Services/ServiceRequest.js?");
|
|
2341
|
+
eval("\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __generator = (this && this.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\nexports.AnonymousServiceRequest = exports.AuthorizedServiceRequest = exports.ResponseHandler = exports.RequestOptions = exports.logErrorResponse = void 0;\nvar axios_1 = __importDefault(__webpack_require__(/*! axios */ \"./node_modules/axios/index.js\"));\nvar lodash_1 = __webpack_require__(/*! lodash */ \"./node_modules/lodash/lodash.js\");\nvar BringgException_1 = __webpack_require__(/*! ../Core/BringgException */ \"./dist/Core/BringgException.js\");\nvar Logger_1 = __importDefault(__webpack_require__(/*! ../Core/Logger */ \"./dist/Core/Logger.js\"));\nvar abort_1 = __webpack_require__(/*! ../utils/abort */ \"./dist/utils/abort.js\");\nvar version = '9.39.0-pre';\nfunction logErrorResponse(response) {\n var data = response.data, status = response.status;\n try {\n Logger_1.default.error(response.config.method.toUpperCase(), response.config.url, status);\n }\n catch (e) {\n //\n }\n try {\n Logger_1.default.info(response.config.method.toUpperCase(), response.config.url, status, data);\n }\n catch (e) {\n //\n }\n try {\n Logger_1.default.debug(response);\n }\n catch (e) {\n //\n }\n}\nexports.logErrorResponse = logErrorResponse;\nvar DEFAULT_TIMEOUT = 120000;\nvar RequestOptions = /** @class */ (function () {\n function RequestOptions(clientId, timeout, \n // eslint-disable-next-line @typescript-eslint/ban-types\n queryString, authenticationToken, \n // eslint-disable-next-line @typescript-eslint/ban-types\n headers, responseType, signal) {\n // NiceToHave: move headers to HttpHeaders class\n this.headers = __assign(__assign({ 'Content-Type': 'application/json' }, headers), { 'sdk-version': version, Client: clientId });\n this.timeout = timeout;\n this.validateStatus = lodash_1.stubTrue;\n if (queryString) {\n this.params = queryString;\n }\n if (authenticationToken) {\n this.headers['Authorization'] = \"Token token=\".concat(authenticationToken);\n }\n if (responseType) {\n this.responseType = responseType;\n }\n if (signal) {\n this.signal = signal;\n }\n }\n RequestOptions.new = function (_a) {\n var _b = _a === void 0 ? {} : _a, _c = _b.clientId, clientId = _c === void 0 ? 'Bringg Dashboard' : _c, _d = _b.timeout, timeout = _d === void 0 ? DEFAULT_TIMEOUT : _d, queryString = _b.queryString, authenticationToken = _b.authenticationToken, headers = _b.headers, responseType = _b.responseType, signal = _b.signal;\n return new RequestOptions(clientId, timeout || DEFAULT_TIMEOUT, queryString, authenticationToken, headers, responseType, signal);\n };\n return RequestOptions;\n}());\nexports.RequestOptions = RequestOptions;\nvar ResponseHandler = /** @class */ (function () {\n function ResponseHandler(response, signal) {\n this.axiosPromise = response;\n this.signal = signal;\n }\n ResponseHandler.prototype.handle = function (consumer) {\n return __awaiter(this, void 0, void 0, function () {\n var axiosResponse, e_1;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if ((0, lodash_1.isUndefined)(consumer)) {\n throw new Error('consumer must be defined');\n }\n _a.label = 1;\n case 1:\n _a.trys.push([1, 3, , 4]);\n return [4 /*yield*/, this.axiosPromise];\n case 2:\n axiosResponse = _a.sent();\n return [2 /*return*/, consumer(axiosResponse)];\n case 3:\n e_1 = _a.sent();\n if (axios_1.default.isCancel(e_1)) {\n (0, abort_1.throwAbortError)(this.signal, 'Request Aborted');\n }\n if (e_1 instanceof BringgException_1.BringgException) {\n throw e_1;\n }\n return [2 /*return*/, consumer(e_1)];\n case 4: return [2 /*return*/];\n }\n });\n });\n };\n return ResponseHandler;\n}());\nexports.ResponseHandler = ResponseHandler;\nfunction get(axiosInstance, host, uri, queryString, signal) {\n return new ResponseHandler(axiosInstance.get(\"\".concat(host).concat(uri), { params: queryString, signal: signal }), signal);\n}\nfunction post(axiosInstance, host, uri, queryString, payload, signal) {\n return new ResponseHandler(axiosInstance.post(\"\".concat(host).concat(uri), payload, { params: queryString, signal: signal }), signal);\n}\nfunction put(axiosInstance, host, uri, queryString, payload, signal) {\n return new ResponseHandler(axiosInstance.put(\"\".concat(host).concat(uri), payload, { params: queryString, signal: signal }), signal);\n}\nfunction patch(axiosInstance, host, uri, queryString, payload, signal) {\n return new ResponseHandler(axiosInstance.patch(\"\".concat(host).concat(uri), payload, { params: queryString, signal: signal }), signal);\n}\nfunction remove(axiosInstance, host, uri, queryString, payload, signal) {\n return new ResponseHandler(axiosInstance.delete(\"\".concat(host).concat(uri), { params: queryString, data: payload, signal: signal }), signal);\n}\nfunction routify(axiosInstance, endpoint, route, \n// eslint-disable-next-line @typescript-eslint/ban-types\nrouteParams, queryString, payload, signal) {\n switch (route.httpMethod) {\n case 0 /* HttpMethod.GET */:\n return get(axiosInstance, endpoint.encode(), route.applyParams(routeParams), queryString, signal);\n case 1 /* HttpMethod.POST */:\n return post(axiosInstance, endpoint.encode(), route.applyParams(routeParams), queryString, payload, signal);\n case 2 /* HttpMethod.PUT */:\n return put(axiosInstance, endpoint.encode(), route.applyParams(routeParams), queryString, payload, signal);\n case 3 /* HttpMethod.PATCH */:\n return patch(axiosInstance, endpoint.encode(), route.applyParams(routeParams), queryString, payload, signal);\n case 4 /* HttpMethod.DELETE */:\n return remove(axiosInstance, endpoint.encode(), route.applyParams(routeParams), queryString, payload, signal);\n }\n}\nfunction wrapWithInterceptors(axios) {\n axios.interceptors.request.use(function (req) {\n var method = req.method, url = req.url, params = req.params, headers = req.headers, data = req.data;\n try {\n Logger_1.default.debug('REQUEST:', method.toUpperCase(), url);\n }\n catch (e) {\n //\n }\n try {\n Logger_1.default.trace('REQUEST-query-string:', params);\n Logger_1.default.trace('REQUEST-headers:', headers);\n Logger_1.default.trace('REQUEST-data:', data);\n }\n catch (e) {\n //\n }\n return req;\n });\n axios.interceptors.response.use(function (res) {\n var statusText = res.statusText, status = res.status, headers = res.headers, data = res.data;\n try {\n Logger_1.default.debug('RESPONSE:', res.config.url, status, statusText);\n }\n catch (e) {\n //\n }\n try {\n Logger_1.default.trace('RESPONSE-headers:', headers);\n Logger_1.default.trace('RESPONSE-data:', data);\n }\n catch (e) {\n //\n }\n return res;\n });\n return axios;\n}\nfunction axiosInstance(clientId, authenticationToken, \n// eslint-disable-next-line @typescript-eslint/ban-types\nheaders, responseType, timeout, signal) {\n return wrapWithInterceptors(axios_1.default.create(RequestOptions.new({ clientId: clientId, authenticationToken: authenticationToken, headers: headers, responseType: responseType, timeout: timeout, signal: signal })));\n}\n// eslint-disable-next-line @typescript-eslint/ban-types\nfunction anonymousAxiosInstance(clientId, headers, signal) {\n return wrapWithInterceptors(axios_1.default.create(RequestOptions.new({ clientId: clientId, headers: headers, signal: signal })));\n}\nvar AuthorizedServiceRequest = /** @class */ (function () {\n function AuthorizedServiceRequest(clientId, authToken) {\n this.authToken = authToken;\n this.clientId = clientId;\n }\n AuthorizedServiceRequest.prototype.invoke = function (endpoint, route, \n // eslint-disable-next-line @typescript-eslint/ban-types\n routeParams, \n // eslint-disable-next-line @typescript-eslint/ban-types\n queryString, payload, \n // eslint-disable-next-line @typescript-eslint/ban-types\n headers, responseType, timeout, signal) {\n if (signal === null || signal === void 0 ? void 0 : signal.aborted) {\n (0, abort_1.throwAbortError)(signal, 'Request aborted (before even started the request)');\n }\n return routify(axiosInstance(this.clientId, this.authToken, headers, responseType, timeout), endpoint, route, routeParams, queryString, payload, signal);\n };\n return AuthorizedServiceRequest;\n}());\nexports.AuthorizedServiceRequest = AuthorizedServiceRequest;\nvar AnonymousServiceRequest = /** @class */ (function () {\n function AnonymousServiceRequest(clientId, headers) {\n this.clientId = clientId;\n this.headers = headers;\n }\n AnonymousServiceRequest.prototype.invoke = function (endpoint, route, \n // eslint-disable-next-line @typescript-eslint/ban-types\n routeParams, \n // eslint-disable-next-line @typescript-eslint/ban-types\n queryString, payload, signal) {\n if (signal === null || signal === void 0 ? void 0 : signal.aborted) {\n (0, abort_1.throwAbortError)(signal, 'Request aborted (before even started the request)');\n }\n return routify(anonymousAxiosInstance(this.clientId, this.headers, signal), endpoint, route, routeParams, queryString, payload);\n };\n return AnonymousServiceRequest;\n}());\nexports.AnonymousServiceRequest = AnonymousServiceRequest;\n//# sourceMappingURL=ServiceRequest.js.map\n\n//# sourceURL=webpack://BringgDashboardSDK/./dist/Services/ServiceRequest.js?");
|
|
2342
2342
|
|
|
2343
2343
|
/***/ }),
|
|
2344
2344
|
|
|
@@ -2745,7 +2745,7 @@ eval("\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\nexpo
|
|
|
2745
2745
|
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
2746
2746
|
|
|
2747
2747
|
"use strict";
|
|
2748
|
-
eval("\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __generator = (this && this.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n};\nvar __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\nexports.AVAILABLE_ATTRIBUTES_CACHE_TTL = void 0;\nvar light_data_store_1 = __importDefault(__webpack_require__(/*! ../Data/light-data-store */ \"./dist/Data/light-data-store.js\"));\nvar merge_mapper_1 = __webpack_require__(/*! ../Data/merge-mapper */ \"./dist/Data/merge-mapper.js\");\nvar data_store_1 = __importDefault(__webpack_require__(/*! ../data-store */ \"./dist/data-store.js\"));\nvar storable_data_service_1 = __importDefault(__webpack_require__(/*! ../storable-data-service */ \"./dist/storable-data-service.js\"));\nvar cached_item_1 = __webpack_require__(/*! ../utils/cached-item */ \"./dist/utils/cached-item.js\");\nvar task_managed_attributes_realtime_subscriptions_1 = __importDefault(__webpack_require__(/*! ./task-managed-attributes-realtime-subscriptions */ \"./dist/TaskManagedAttributes/task-managed-attributes-realtime-subscriptions.js\"));\nvar task_managed_attributes_service_1 = __importDefault(__webpack_require__(/*! ./task-managed-attributes-service */ \"./dist/TaskManagedAttributes/task-managed-attributes-service.js\"));\n// exported for testing only\nexports.AVAILABLE_ATTRIBUTES_CACHE_TTL = 1000 * 60 * 60; // 1 hour\nvar TaskManagedAttributesApi = /** @class */ (function () {\n function TaskManagedAttributesApi(session) {\n var _this = this;\n this.cachedAvailableAttributes = new cached_item_1.CachedItem({\n ttl: {\n ttlInMs: exports.AVAILABLE_ATTRIBUTES_CACHE_TTL\n }\n });\n this.dataStore = new data_store_1.default();\n var lightDataStore = new light_data_store_1.default();\n this.service = new task_managed_attributes_service_1.default(session);\n this.storableDataService = new storable_data_service_1.default(this.dataStore, function (managedAttribute) { return merge_mapper_1.mergeMapper.mergeIntoExisting(_this.dataStore, managedAttribute); }, [lightDataStore]);\n this.realtimeSubscriptions = new task_managed_attributes_realtime_subscriptions_1.default(session, this.dataStore, this.storableDataService);\n var shouldFetchMissingAttr = !session.user.feature_flags.disable_fetch_missing_attributes;\n if (shouldFetchMissingAttr) {\n this.realtimeSubscriptions.updateStoreOnEvents(function (id) { return __awaiter(_this, void 0, void 0, function () {\n var _a, managedAttributes;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0: return [4 /*yield*/, this.loadByIds([id], { useCache: false })];\n case 1:\n _a = __read.apply(void 0, [_b.sent(), 1]), managedAttributes = _a[0];\n return [2 /*return*/, managedAttributes];\n }\n });\n }); });\n }\n else {\n this.realtimeSubscriptions.updateStoreOnEvents();\n }\n }\n TaskManagedAttributesApi.prototype.get = function (id) {\n return this.getByIds([id])[0];\n };\n TaskManagedAttributesApi.prototype.getByIds = function (ids) {\n return this.storableDataService.getFromStores(ids);\n };\n TaskManagedAttributesApi.prototype.getAll = function () {\n var attributes = this.cachedAvailableAttributes.get();\n return attributes;\n };\n TaskManagedAttributesApi.prototype.loadByIds = function (ids, commonOptions) {\n var _this = this;\n if (commonOptions === void 0) { commonOptions = { useCache: true }; }\n return this.storableDataService.loadMany('loadByIds', function (idsToLoad) { return __awaiter(_this, void 0, void 0, function () {\n var managedAttributes;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.service.loadByIds(idsToLoad, commonOptions)];\n case 1:\n managedAttributes = _a.sent();\n return [2 /*return*/, Object.entries(managedAttributes).map(function (_a) {\n var _b = __read(_a, 2), id = _b[0], managedAttribute = _b[1];\n managedAttribute.id = parseInt(id, 10);\n return managedAttribute;\n })];\n }\n });\n }); }, ids, commonOptions);\n };\n TaskManagedAttributesApi.prototype.getAvailableAttributes = function () {\n return __awaiter(this, void 0, void 0, function () {\n var attributes;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n attributes = this.cachedAvailableAttributes.get();\n if (!!attributes) return [3 /*break*/, 2];\n return [4 /*yield*/, this.service.getAvailableAttributes()];\n case 1:\n attributes = _a.sent();\n this.cachedAvailableAttributes.set(attributes);\n _a.label = 2;\n case 2: return [2 /*return*/, attributes];\n }\n });\n });\n };\n TaskManagedAttributesApi.prototype.onUpdate = function (callback) {\n return this.realtimeSubscriptions.onUpdate(callback);\n };\n TaskManagedAttributesApi.prototype.fetchAvailableAttributes = function (ids, commonOptions) {\n if (commonOptions === void 0) { commonOptions = { useCache: true }; }\n return __awaiter(this, void 0, void 0, function () {\n var attributes;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.loadByIds(ids, commonOptions)];\n case 1:\n _a.sent();\n return [4 /*yield*/, this.getAvailableAttributes()];\n case 2:\n attributes = _a.sent();\n return [2 /*return*/, attributes];\n }\n });\n });\n };\n TaskManagedAttributesApi.prototype.resetAllListeners = function () {\n this.realtimeSubscriptions.resetAllListeners();\n };\n return TaskManagedAttributesApi;\n}());\nexports[\"default\"] = TaskManagedAttributesApi;\n//# sourceMappingURL=task-managed-attributes-api.js.map\n\n//# sourceURL=webpack://BringgDashboardSDK/./dist/TaskManagedAttributes/task-managed-attributes-api.js?");
|
|
2748
|
+
eval("\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __generator = (this && this.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n};\nvar __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\nexports.AVAILABLE_ATTRIBUTES_CACHE_TTL = void 0;\nvar light_data_store_1 = __importDefault(__webpack_require__(/*! ../Data/light-data-store */ \"./dist/Data/light-data-store.js\"));\nvar merge_mapper_1 = __webpack_require__(/*! ../Data/merge-mapper */ \"./dist/Data/merge-mapper.js\");\nvar data_store_1 = __importDefault(__webpack_require__(/*! ../data-store */ \"./dist/data-store.js\"));\nvar storable_data_service_1 = __importDefault(__webpack_require__(/*! ../storable-data-service */ \"./dist/storable-data-service.js\"));\nvar cached_item_1 = __webpack_require__(/*! ../utils/cached-item */ \"./dist/utils/cached-item.js\");\nvar task_managed_attributes_realtime_subscriptions_1 = __importDefault(__webpack_require__(/*! ./task-managed-attributes-realtime-subscriptions */ \"./dist/TaskManagedAttributes/task-managed-attributes-realtime-subscriptions.js\"));\nvar task_managed_attributes_service_1 = __importDefault(__webpack_require__(/*! ./task-managed-attributes-service */ \"./dist/TaskManagedAttributes/task-managed-attributes-service.js\"));\n// exported for testing only\nexports.AVAILABLE_ATTRIBUTES_CACHE_TTL = 1000 * 60 * 60; // 1 hour\nvar TaskManagedAttributesApi = /** @class */ (function () {\n function TaskManagedAttributesApi(session) {\n var _this = this;\n var _a;\n this.cachedAvailableAttributes = new cached_item_1.CachedItem({\n ttl: {\n ttlInMs: exports.AVAILABLE_ATTRIBUTES_CACHE_TTL\n }\n });\n this.dataStore = new data_store_1.default();\n var lightDataStore = new light_data_store_1.default();\n this.service = new task_managed_attributes_service_1.default(session);\n this.storableDataService = new storable_data_service_1.default(this.dataStore, function (managedAttribute) { return merge_mapper_1.mergeMapper.mergeIntoExisting(_this.dataStore, managedAttribute); }, [lightDataStore]);\n this.realtimeSubscriptions = new task_managed_attributes_realtime_subscriptions_1.default(session, this.dataStore, this.storableDataService);\n var shouldFetchMissingAttr = !((_a = session.user.feature_flags) === null || _a === void 0 ? void 0 : _a.disable_fetch_missing_attributes);\n if (shouldFetchMissingAttr) {\n this.realtimeSubscriptions.updateStoreOnEvents(function (id) { return __awaiter(_this, void 0, void 0, function () {\n var _a, managedAttributes;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0: return [4 /*yield*/, this.loadByIds([id], { useCache: false })];\n case 1:\n _a = __read.apply(void 0, [_b.sent(), 1]), managedAttributes = _a[0];\n return [2 /*return*/, managedAttributes];\n }\n });\n }); });\n }\n else {\n this.realtimeSubscriptions.updateStoreOnEvents();\n }\n }\n TaskManagedAttributesApi.prototype.get = function (id) {\n return this.getByIds([id])[0];\n };\n TaskManagedAttributesApi.prototype.getByIds = function (ids) {\n return this.storableDataService.getFromStores(ids);\n };\n TaskManagedAttributesApi.prototype.getAll = function () {\n var attributes = this.cachedAvailableAttributes.get();\n return attributes;\n };\n TaskManagedAttributesApi.prototype.loadByIds = function (ids, commonOptions) {\n var _this = this;\n if (commonOptions === void 0) { commonOptions = { useCache: true }; }\n return this.storableDataService.loadMany('loadByIds', function (idsToLoad) { return __awaiter(_this, void 0, void 0, function () {\n var managedAttributes;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.service.loadByIds(idsToLoad, commonOptions)];\n case 1:\n managedAttributes = _a.sent();\n return [2 /*return*/, Object.entries(managedAttributes).map(function (_a) {\n var _b = __read(_a, 2), id = _b[0], managedAttribute = _b[1];\n managedAttribute.id = parseInt(id, 10);\n return managedAttribute;\n })];\n }\n });\n }); }, ids, commonOptions);\n };\n TaskManagedAttributesApi.prototype.getAvailableAttributes = function () {\n return __awaiter(this, void 0, void 0, function () {\n var attributes;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n attributes = this.cachedAvailableAttributes.get();\n if (!!attributes) return [3 /*break*/, 2];\n return [4 /*yield*/, this.service.getAvailableAttributes()];\n case 1:\n attributes = _a.sent();\n this.cachedAvailableAttributes.set(attributes);\n _a.label = 2;\n case 2: return [2 /*return*/, attributes];\n }\n });\n });\n };\n TaskManagedAttributesApi.prototype.onUpdate = function (callback) {\n return this.realtimeSubscriptions.onUpdate(callback);\n };\n TaskManagedAttributesApi.prototype.fetchAvailableAttributes = function (ids, commonOptions) {\n if (commonOptions === void 0) { commonOptions = { useCache: true }; }\n return __awaiter(this, void 0, void 0, function () {\n var attributes;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, this.loadByIds(ids, commonOptions)];\n case 1:\n _a.sent();\n return [4 /*yield*/, this.getAvailableAttributes()];\n case 2:\n attributes = _a.sent();\n return [2 /*return*/, attributes];\n }\n });\n });\n };\n TaskManagedAttributesApi.prototype.resetAllListeners = function () {\n this.realtimeSubscriptions.resetAllListeners();\n };\n return TaskManagedAttributesApi;\n}());\nexports[\"default\"] = TaskManagedAttributesApi;\n//# sourceMappingURL=task-managed-attributes-api.js.map\n\n//# sourceURL=webpack://BringgDashboardSDK/./dist/TaskManagedAttributes/task-managed-attributes-api.js?");
|
|
2749
2749
|
|
|
2750
2750
|
/***/ }),
|
|
2751
2751
|
|