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
JavaScript
;
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