UNPKG

jaydata

Version:

Cross-platform HTML5 data-management, JavaScript Language Query (JSLQ) support for OData, SQLite, WebSQL, IndexedDB, YQL and Facebook (packaged for Node.JS)

187 lines (181 loc) 8.36 kB
'use strict'; var _core = require('../../../../core.js'); var _core2 = _interopRequireDefault(_core); var _atob = require('atob'); var _atob2 = _interopRequireDefault(_atob); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } _core2.default.mongoDBConverter = { fromDb: { '$data.Enum': function $dataEnum(v, enumType) { return _core2.default.Container.convertTo(v, enumType); }, '$data.Byte': _core2.default.Container.proxyConverter, '$data.SByte': _core2.default.Container.proxyConverter, '$data.Decimal': _core2.default.Container.proxyConverter, '$data.Float': _core2.default.Container.proxyConverter, '$data.Int16': _core2.default.Container.proxyConverter, '$data.Int64': _core2.default.Container.proxyConverter, '$data.Integer': _core2.default.Container.proxyConverter, '$data.Int32': _core2.default.Container.proxyConverter, '$data.Number': _core2.default.Container.proxyConverter, '$data.Duration': _core2.default.Container.proxyConverter, '$data.Day': _core2.default.Container.proxyConverter, '$data.Date': function $dataDate(date) { return date ? new Date(date) : date; }, '$data.DateTimeOffset': function $dataDateTimeOffset(date) { return date ? new Date(date) : date; }, '$data.Time': function $dataTime(date) { return date ? _core.Container.convertTo(date, _core2.default.Time) : date; }, '$data.String': _core2.default.Container.proxyConverter, '$data.Boolean': _core2.default.Container.proxyConverter, '$data.Blob': function $dataBlob(v) { return v ? _core2.default.Container.convertTo(typeof v === 'string' ? (0, _atob2.default)(v) : v.buffer || v, _core2.default.Blob) : v; }, '$data.Object': function $dataObject(o) { if (o === undefined) { return new _core2.default.Object(); }return o; }, '$data.Array': function $dataArray(o) { if (o === undefined) { return new _core2.default.Array(); }return o; }, '$data.ObjectID': function $dataObjectID(id) { return id ? new Buffer(id.toString(), 'ascii').toString('base64') : id; }, '$data.GeographyPoint': function $dataGeographyPoint(g) { if (g) { return new _core2.default.GeographyPoint(g); }return g; }, '$data.GeographyLineString': function $dataGeographyLineString(g) { if (g) { return new _core2.default.GeographyLineString(g); }return g; }, '$data.GeographyPolygon': function $dataGeographyPolygon(g) { if (g) { return new _core2.default.GeographyPolygon(g); }return g; }, '$data.GeographyMultiPoint': function $dataGeographyMultiPoint(g) { if (g) { return new _core2.default.GeographyMultiPoint(g); }return g; }, '$data.GeographyMultiLineString': function $dataGeographyMultiLineString(g) { if (g) { return new _core2.default.GeographyMultiLineString(g); }return g; }, '$data.GeographyMultiPolygon': function $dataGeographyMultiPolygon(g) { if (g) { return new _core2.default.GeographyMultiPolygon(g); }return g; }, '$data.GeographyCollection': function $dataGeographyCollection(g) { if (g) { return new _core2.default.GeographyCollection(g); }return g; }, '$data.GeometryPoint': function $dataGeometryPoint(g) { if (g) { return new _core2.default.GeometryPoint(g); }return g; }, '$data.GeometryLineString': function $dataGeometryLineString(g) { if (g) { return new _core2.default.GeometryLineString(g); }return g; }, '$data.GeometryPolygon': function $dataGeometryPolygon(g) { if (g) { return new _core2.default.GeometryPolygon(g); }return g; }, '$data.GeometryMultiPoint': function $dataGeometryMultiPoint(g) { if (g) { return new _core2.default.GeometryMultiPoint(g); }return g; }, '$data.GeometryMultiLineString': function $dataGeometryMultiLineString(g) { if (g) { return new _core2.default.GeometryMultiLineString(g); }return g; }, '$data.GeometryMultiPolygon': function $dataGeometryMultiPolygon(g) { if (g) { return new _core2.default.GeometryMultiPolygon(g); }return g; }, '$data.GeometryCollection': function $dataGeometryCollection(g) { if (g) { return new _core2.default.GeometryCollection(g); }return g; }, "$data.Guid": function $dataGuid(g) { return g ? _core2.default.parseGuid(g).toString() : g; } }, toDb: { '$data.Enum': _core2.default.Container.proxyConverter, '$data.Byte': _core2.default.Container.proxyConverter, '$data.SByte': _core2.default.Container.proxyConverter, '$data.Decimal': _core2.default.Container.proxyConverter, '$data.Float': _core2.default.Container.proxyConverter, '$data.Int16': _core2.default.Container.proxyConverter, '$data.Int64': _core2.default.Container.proxyConverter, '$data.Integer': _core2.default.Container.proxyConverter, '$data.Int32': _core2.default.Container.proxyConverter, '$data.Number': _core2.default.Container.proxyConverter, '$data.Date': _core2.default.Container.proxyConverter, '$data.DateTimeOffset': _core2.default.Container.proxyConverter, '$data.Time': _core2.default.Container.proxyConverter, '$data.Duration': _core2.default.Container.proxyConverter, '$data.Day': _core2.default.Container.proxyConverter, '$data.String': _core2.default.Container.proxyConverter, '$data.Boolean': _core2.default.Container.proxyConverter, '$data.Blob': _core2.default.Container.proxyConverter, '$data.Object': _core2.default.Container.proxyConverter, '$data.Array': _core2.default.Container.proxyConverter, '$data.ObjectID': function $dataObjectID(id) { if (id && typeof id === 'string') { try { return new _core2.default.ObjectID(id); } catch (e) { try { return new _core2.default.ObjectID(new Buffer(id, 'base64').toString('ascii')); } catch (e) { console.log(e); return id; } } } else return id; }, '$data.GeographyPoint': function $dataGeographyPoint(g) { return g ? g.coordinates : g; }, '$data.GeographyLineString': _core2.default.Container.proxyConverter, '$data.GeographyPolygon': _core2.default.Container.proxyConverter, '$data.GeographyMultiPoint': _core2.default.Container.proxyConverter, '$data.GeographyMultiLineString': _core2.default.Container.proxyConverter, '$data.GeographyMultiPolygon': _core2.default.Container.proxyConverter, '$data.GeographyCollection': _core2.default.Container.proxyConverter, '$data.GeometryPoint': function $dataGeometryPoint(g) { return g ? g.coordinates : g; }, '$data.GeometryLineString': _core2.default.Container.proxyConverter, '$data.GeometryPolygon': _core2.default.Container.proxyConverter, '$data.GeometryMultiPoint': _core2.default.Container.proxyConverter, '$data.GeometryMultiLineString': _core2.default.Container.proxyConverter, '$data.GeometryMultiPolygon': _core2.default.Container.proxyConverter, '$data.GeometryCollection': _core2.default.Container.proxyConverter, "$data.Guid": function $dataGuid(g) { return g ? g.toString() : g; } } };