UNPKG

backendless

Version:

Backendless JavaScript SDK for Node.js and the browser

116 lines (115 loc) 5.23 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator")); var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator")); var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck")); var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass")); var _utils = _interopRequireDefault(require("../utils")); var _user = _interopRequireDefault(require("../users/user")); var _store = _interopRequireDefault(require("./store")); var _dataQueryBuilder = _interopRequireDefault(require("./data-query-builder")); var _groupQueryBuilder = _interopRequireDefault(require("./group-query-builder")); var _loadRelationsQueryBuilder = _interopRequireDefault(require("./load-relations-query-builder")); var _jsonUpdateBuilder = _interopRequireDefault(require("./json-update-builder")); var _point = _interopRequireDefault(require("./geo/point")); var _linestring = _interopRequireDefault(require("./geo/linestring")); var _polygon = _interopRequireDefault(require("./geo/polygon")); var _geometry = _interopRequireDefault(require("./geo/geometry")); var _spatialReferenceSystem = _interopRequireDefault(require("./geo/spatial-reference-system")); var _wktParser = _interopRequireDefault(require("./geo/wkt-parser")); var _geoJsonParser = _interopRequireDefault(require("./geo/geo-json-parser")); var _persmission = _interopRequireDefault(require("./persmission")); var Data = /*#__PURE__*/function () { function Data(app) { (0, _classCallCheck2["default"])(this, Data); this.app = app; this.classToTableMap = (0, _defineProperty2["default"])({}, _user["default"].className, _user["default"]); this.Permissions = { FIND: new _persmission["default"]('FIND', app), REMOVE: new _persmission["default"]('REMOVE', app), UPDATE: new _persmission["default"]('UPDATE', app) }; this.QueryBuilder = _dataQueryBuilder["default"]; this.GroupQueryBuilder = _groupQueryBuilder["default"]; this.LoadRelationsQueryBuilder = _loadRelationsQueryBuilder["default"]; this.JSONUpdateBuilder = _jsonUpdateBuilder["default"]; this.Point = _point["default"]; this.LineString = _linestring["default"]; this.Polygon = _polygon["default"]; this.Geometry = _geometry["default"]; this.GeoJSONParser = _geoJsonParser["default"]; this.WKTParser = _wktParser["default"]; this.SpatialReferenceSystem = _spatialReferenceSystem["default"]; } (0, _createClass2["default"])(Data, [{ key: "of", value: function of(model) { return new _store["default"](model, this); } }, { key: "describe", value: function () { var _describe = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(className) { return _regenerator["default"].wrap(function _callee$(_context) { while (1) switch (_context.prev = _context.next) { case 0: className = typeof className === 'string' ? className : _utils["default"].getClassName(className); return _context.abrupt("return", this.app.request.get({ url: this.app.urls.dataTableProps(className) })); case 2: case "end": return _context.stop(); } }, _callee, this); })); function describe(_x) { return _describe.apply(this, arguments); } return describe; }() }, { key: "getTableNameById", value: function () { var _getTableNameById = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2(tableId) { return _regenerator["default"].wrap(function _callee2$(_context2) { while (1) switch (_context2.prev = _context2.next) { case 0: return _context2.abrupt("return", this.app.request.get({ url: this.app.urls.dataTableNameById(tableId) })); case 1: case "end": return _context2.stop(); } }, _callee2, this); })); function getTableNameById(_x2) { return _getTableNameById.apply(this, arguments); } return getTableNameById; }() }, { key: "mapTableToClass", value: function mapTableToClass(tableName, clientClass) { if (typeof tableName === 'function') { clientClass = tableName; tableName = _utils["default"].getClassName(clientClass); } if (!tableName || typeof tableName !== 'string') { throw new Error('Table Name must be provided and must be a string.'); } if (!clientClass || typeof clientClass !== 'function') { throw new Error('Class must be provided and must be a constructor function.'); } this.classToTableMap[tableName] = clientClass; } }]); return Data; }(); exports["default"] = Data;