UNPKG

dynamicsmobile

Version:

Allows development of off-line mobile and web business apps over the Dynamics Mobile platform. More info on https://www.dynamicsmobile.com

149 lines 11.1 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.WebPlatformDevice = void 0; const tslib_1 = require("tslib"); const dms_platform_web_configuration_manager_1 = require("./dms-platform-web-configuration-manager"); const dms_api_wrapper_1 = require("./dms-api-wrapper"); const jwtDecode = require("jwt-decode"); const querystring_1 = require("querystring"); const mobile_inmemory_db_1 = require("../lib-mobile/mobile-inmemory-db"); class WebPlatformDevice extends dms_api_wrapper_1.DmsAPIWrapper { getUserIdentity() { let appareaOverride = null; if (window.parent.location.href.indexOf('?') > 0) { const urlTokens = window.parent.location.href.split('?'); const parsed = (0, querystring_1.parse)(urlTokens[1]); if (parsed && parsed.appArea) { appareaOverride = parsed.appArea; appareaOverride = appareaOverride.replace('#', ''); } } let c = dms_api_wrapper_1.DmsAPIWrapper.getCookie("dmc-identity-idv2"); if (!c) return {}; const decoded = jwtDecode(c); return { userName: decoded['cognito:username'], name: decoded.name, email: decoded.email, defaultAppCode: decoded.appCode, currentAppArea: appareaOverride ? appareaOverride : decoded.appArea, userType: decoded.userType, email_verified: decoded.email_verified, roleId: decoded.userRole }; } barcodeScan() { return tslib_1.__awaiter(this, void 0, void 0, function* () { return { content: '075678164125', success: true, message: '', format: 'ean13' }; }); } //RootDIContainer.inject(UserInterfaceService).launchTask("Index"); takePicture() { return tslib_1.__awaiter(this, void 0, void 0, function* () { return { url: "https://www.dynamicsmobile.com/wp-content/themes/dynamics-mobile/images/logo-color.svg" }; }); } selectPicture() { return tslib_1.__awaiter(this, void 0, void 0, function* () { return { url: "https://www.dynamicsmobile.com/wp-content/themes/dynamics-mobile/images/logo-color.svg" }; }); } convertPictureToBase64(pic) { return tslib_1.__awaiter(this, void 0, void 0, function* () { return 'data:image/jpeg;base64,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'; }); } getUsername() { return tslib_1.__awaiter(this, void 0, void 0, function* () { let c = dms_api_wrapper_1.DmsAPIWrapper.getCookie("dmc-identity"); if (c) { let parsed = JSON.parse(c); let u = parsed.user; if (!u) { //fix: development login page( index.html) //construct wrong coockie where the user is exposed via user //instead of username u = parsed.username; } return u; } else { let c = dms_api_wrapper_1.DmsAPIWrapper.getCookie("dmc-identity-idv2"); if (!c) { console.log('ERROR: Get Authorization Token Failed. Redirecting to login'); //mobile task is called Index - capital letter, aws s3 is case-sensitive const api = new dms_api_wrapper_1.DmsAPIWrapper(null); api.logOut(); } const decoded = jwtDecode(c); return decoded["cognito:username"]; } }); } getApparea() { return dms_api_wrapper_1.DmsAPIWrapper.getApparea(); } getInfo() { return tslib_1.__awaiter(this, void 0, void 0, function* () { var regexps = { 'Chrome': [/Chrome\/(\S+)/], 'Firefox': [/Firefox\/(\S+)/], 'MSIE': [/MSIE (\S+);/], 'Opera': [ /Opera\/.*?Version\/(\S+)/, /Opera\/(\S+)/ /* Opera 9 and older */ ], 'Safari': [/Version\/(\S+).*?Safari\//] }, re, m, browser, version; var userAgent = navigator.userAgent; var elements = 2; for (browser in regexps) while (re = regexps[browser].shift()) if (m = userAgent.match(re)) { version = (m[1].match(new RegExp('[^.]+(?:\.[^.]+){0,' + --elements + '}')))[0]; return { platform: browser, version: version, isDevice: false, isBrowser: true, isWebview: false, shellVersion: version, webviewVersion: version, appVersion: this.dms.version, appCode: this.dms.appCode, }; } return {}; }); } sync() { return tslib_1.__awaiter(this, void 0, void 0, function* () { var me = this; var cfg = new dms_platform_web_configuration_manager_1.WebPlatformConfigurationManager(this.dms); var settings = yield cfg.fetchSettingsFromServer(); yield cfg.saveSettings(settings); const inMemDb = new mobile_inmemory_db_1.InMemoryDatabase(); yield inMemDb.downloadFromCloud(); }); } hideOnScreenKeyboard() { return tslib_1.__awaiter(this, void 0, void 0, function* () { //const platform = PlatformBridgeFactory(DmsApplicationService); //return platform.execute("hideKeyboard", null); }); } getLanguage() { return tslib_1.__awaiter(this, void 0, void 0, function* () { const lang = sessionStorage ? sessionStorage.getItem('language') : 'en'; if (lang) { return lang; } else { return 'en'; } }); } } exports.WebPlatformDevice = WebPlatformDevice; //# sourceMappingURL=dms-platform-web-device.js.map