UNPKG

@awhere/api

Version:

The awesome aWhere API for JavaScript.

83 lines 4.12 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var interfaces_1 = require("@awhere/interfaces"); function fromJSON(json) { if (typeof json === 'string' || typeof json === 'object') { var item = typeof json === 'string' ? JSON.parse(json) : json; switch (item.type) { case interfaces_1.ItemType.databaseItem: { switch (item.subtype) { case interfaces_1.DatabaseItemType.featureCollection: var FeatureCollection = require('../Database/FeatureCollection/FeatureCollection').default; return new FeatureCollection(item); case interfaces_1.DatabaseItemType.pointCollection: var PointCollection = require('../Database/FeatureCollection/PointCollection').default; return new PointCollection(item); case interfaces_1.DatabaseItemType.polygonCollection: var PolygonCollection = require('../Database/FeatureCollection/PolygonCollection').default; return new PolygonCollection(item); case interfaces_1.DatabaseItemType.polylineCollection: var PolylineCollection = require('../Database/FeatureCollection/PolylineCollection').default; return new PolylineCollection(item); case interfaces_1.DatabaseItemType.table: var Table = require('../Database/Table/Table').default; return new Table(item); case interfaces_1.DatabaseItemType.view: var View = require('../Database/View/View').default; return new View(item); } } case interfaces_1.ItemType.application: { var Application = require('../Application/Application').default; return new Application(item); } case interfaces_1.ItemType.database: { var Database = require('../Database/Database').default; return new Database(item); } case interfaces_1.ItemType.databaseConnection: { var DatabsaseConnection = require('../DatabsaseConnection/DatabaseConnection').default; return new DatabsaseConnection(item); } case interfaces_1.ItemType.file: { var FileItem = require('../FileItem/FileItem').default; return new FileItem(item); } case interfaces_1.ItemType.folder: { var Folder = require('../Folder/Folder').default; return new Folder(item); } case interfaces_1.ItemType.form: { var Form = require('../Form/Form').default; return new Form(item); } case interfaces_1.ItemType.processingService: { var ProcessingService = require('../ProcessingService/ProcessingService').default; return new ProcessingService(item); } case interfaces_1.ItemType.webMap: { var WebMap = require('../WebMap/WebMap').default; return new WebMap(item); } case interfaces_1.ItemType.webService: { var WebService = require('../WebService/WebService').default; return new WebService(item); } case interfaces_1.ItemType.applicationItem: { var ApplicationItem = require('../Application/ApplicationItem').default; return new ApplicationItem(item); } case interfaces_1.ItemType.webMapItem: { var WebMapItem = require('../WebMap/WebMapItem').default; return new WebMapItem(item); } default: return; } } else { throw new Error('An error occured while parsing JSON.'); } } exports.default = fromJSON; //# sourceMappingURL=fromJSON.js.map