dynamicsmobile
Version:
Allows development of off-line mobile and web business apps over the Dynamics Mobile platform. More info on https://www.dynamicsmobile.com
40 lines • 1.83 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.PlatformBridgeFactory = void 0;
const dms_platform_android_1 = require("../platform-android/dms-platform-android");
const dms_platform_ios_1 = require("../platform-ios/dms-platform-ios");
const dms_platform_win_1 = require("../platform-win/dms-platform-win");
const dms_platform_web_1 = require("../platform-web/dms-platform-web");
const dms_platform_type_1 = require("./dms-platform-type");
const dms_platform_test_1 = require("../platform-test/dms-platform-test");
function PlatformBridgeFactory(dms) {
//make sure we have only one bridge instance on the web page
var bridge;
if (typeof window === 'object')
bridge = window['$dmsbridge'];
if (!bridge) {
var platformType = (0, dms_platform_type_1.getPlatformType)();
switch (platformType) {
case dms_platform_type_1.PlatformType.Android:
bridge = new dms_platform_android_1.AndroidPlatformBridge(dms);
break;
case dms_platform_type_1.PlatformType.iOS:
bridge = new dms_platform_ios_1.iOsPlatformBridge(dms);
break;
case dms_platform_type_1.PlatformType.Windows:
bridge = new dms_platform_win_1.WinPlatformBridge(dms);
break;
case dms_platform_type_1.PlatformType.Test:
bridge = new dms_platform_test_1.TestPlatformBridge(dms);
break;
default:
bridge = new dms_platform_web_1.WebPlatformBridge(dms);
break;
}
if (typeof window === 'object')
window['$dmsbridge'] = bridge;
}
return bridge;
}
exports.PlatformBridgeFactory = PlatformBridgeFactory;
//# sourceMappingURL=dms-platform-bridge-factory.js.map