UNPKG

@tai-kun/surrealdb

Version:

The SurrealDB SDK for JavaScript

73 lines (71 loc) 7.89 kB
"use strict"; var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropNames = Object.getOwnPropertyNames; var __hasOwnProp = Object.prototype.hasOwnProperty; var __name = (target, value) => __defProp(target, "name", { value, configurable: true }); var __export = (target, all) => { for (var name in all) __defProp(target, name, { get: all[name], enumerable: true }); }; var __copyProps = (to, from, except, desc) => { if (from && typeof from === "object" || typeof from === "function") { for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); } return to; }; var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); // src/data-types/standard/geometry-line.ts var geometry_line_exports = {}; __export(geometry_line_exports, { GeometryLine: () => GeometryLine, GeometryLineBase: () => GeometryLineBase }); module.exports = __toCommonJS(geometry_line_exports); var import_encodable_datatypes = require("../encodable/index.cjs"); var import_geometry = require("../_internals/geometry.cjs"); var import_geometry_point = require("./geometry-point.cjs"); var _GeometryLineBase = class _GeometryLineBase extends import_encodable_datatypes.GeometryLineBase { get coordinates() { return (0, import_geometry.map)(this.line, (p) => p.coordinates); } set coordinates(source) { this.line = (0, import_geometry.map)( source, (p) => p instanceof this.types.Point ? p : new this.types.Point(p) ); } clone() { const This = this.constructor; return new This((0, import_geometry.map)(this.line, (p) => p.clone()), this.types); } equals(other) { return (0, import_geometry.isGeometryLine)(other) && other.line.length === this.line.length && other.line.every((p, i) => this.line[i].equals(p)); } isClosed() { return this.line[0].equals(this.line[this.line.length - 1]); } toClosed() { const line = this.clone(); line.close(); return line; } close() { if (!this.isClosed()) { this.line = [...this.line, this.line[0].clone()]; } } }; __name(_GeometryLineBase, "GeometryLineBase"); var GeometryLineBase = _GeometryLineBase; var _GeometryLine = class _GeometryLine extends GeometryLineBase { constructor(source) { super(source, _GeometryLine); } }; __name(_GeometryLine, "GeometryLine"); _GeometryLine.Point = import_geometry_point.GeometryPoint; var GeometryLine = _GeometryLine; //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL2RhdGEtdHlwZXMvc3RhbmRhcmQvZ2VvbWV0cnktbGluZS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiaW1wb3J0IHtcbiAgdHlwZSBHZW9Kc29uTGluZVN0cmluZyxcbiAgR2VvbWV0cnlMaW5lQmFzZSBhcyBCYXNlLFxuICB0eXBlIEdlb21ldHJ5TGluZVNvdXJjZSBhcyBHZW9tZXRyeUxpbmVTb3VyY2VCYXNlLFxuICB0eXBlIEdlb21ldHJ5TGluZVR5cGVzIGFzIEdlb21ldHJ5TGluZVR5cGVzQmFzZSxcbn0gZnJvbSBcIkB0YWkta3VuL3N1cnJlYWxkYi9lbmNvZGFibGUtZGF0YXR5cGVzXCI7XG5pbXBvcnQgeyB0eXBlIENvb3JkLCBpc0dlb21ldHJ5TGluZSwgbWFwIH0gZnJvbSBcIi4uL19pbnRlcm5hbHMvZ2VvbWV0cnlcIjtcbmltcG9ydCB7XG4gIEdlb21ldHJ5UG9pbnQsXG4gIHR5cGUgR2VvbWV0cnlQb2ludEJhc2UsXG4gIHR5cGUgR2VvbWV0cnlQb2ludFR5cGVzLFxufSBmcm9tIFwiLi9nZW9tZXRyeS1wb2ludFwiO1xuXG50eXBlIFBvaW50QmFzZSA9IG5ldyhcbiAgc291cmNlOiBhbnksXG4pID0+IEdlb21ldHJ5UG9pbnRCYXNlPEdlb21ldHJ5UG9pbnRUeXBlczxDb29yZD4+O1xuXG5leHBvcnQgdHlwZSBHZW9tZXRyeUxpbmVUeXBlczxUUG9pbnQgZXh0ZW5kcyBQb2ludEJhc2UgPSBQb2ludEJhc2U+ID1cbiAgR2VvbWV0cnlMaW5lVHlwZXNCYXNlPFRQb2ludD47XG5cbmV4cG9ydCB0eXBlIEdlb21ldHJ5TGluZVNvdXJjZTxcbiAgVFR5cGVzIGV4dGVuZHMgR2VvbWV0cnlMaW5lVHlwZXMgPSBHZW9tZXRyeUxpbmVUeXBlcyxcbj4gPSBHZW9tZXRyeUxpbmVTb3VyY2VCYXNlPFRUeXBlcz47XG5cbmV4cG9ydCB0eXBlIHsgR2VvSnNvbkxpbmVTdHJpbmcgfTtcblxuZXhwb3J0IGNsYXNzIEdlb21ldHJ5TGluZUJhc2U8VFR5cGVzIGV4dGVuZHMgR2VvbWV0cnlMaW5lVHlwZXM+XG4gIGV4dGVuZHMgQmFzZTxUVHlwZXM+XG57XG4gIC8vIEB0cy1leHBlY3QtZXJyb3IgcmVhZG9ubHkgXHUzMDkyXHU1OTE2XHUzMDU5XHUzMDYwXHUzMDUxXHUzMDAyXG4gIG92ZXJyaWRlIGxpbmU6IFtcbiAgICBJbnN0YW5jZVR5cGU8VFR5cGVzW1wiUG9pbnRcIl0+LFxuICAgIEluc3RhbmNlVHlwZTxUVHlwZXNbXCJQb2ludFwiXT4sXG4gICAgLi4uSW5zdGFuY2VUeXBlPFRUeXBlc1tcIlBvaW50XCJdPltdLFxuICBdO1xuXG4gIG92ZXJyaWRlIGdldCBjb29yZGluYXRlcygpOiBbXG4gICAgSW5zdGFuY2VUeXBlPFRUeXBlc1tcIlBvaW50XCJdPltcImNvb3JkaW5hdGVzXCJdLFxuICAgIEluc3RhbmNlVHlwZTxUVHlwZXNbXCJQb2ludFwiXT5bXCJjb29yZGluYXRlc1wiXSxcbiAgICAuLi5JbnN0YW5jZVR5cGU8VFR5cGVzW1wiUG9pbnRcIl0+W1wiY29vcmRpbmF0ZXNcIl1bXSxcbiAgXSB7XG4gICAgcmV0dXJuIG1hcCh0aGlzLmxpbmUsIHAgPT4gcC5jb29yZGluYXRlcyk7XG4gIH1cblxuICBvdmVycmlkZSBzZXQgY29vcmRpbmF0ZXMoc291cmNlOiBHZW9tZXRyeUxpbmVTb3VyY2U8VFR5cGVzPikge1xuICAgIHRoaXMubGluZSA9IG1hcChcbiAgICAgIHNvdXJjZSxcbiAgICAgIHAgPT5cbiAgICAgICAgKHAgaW5zdGFuY2VvZiB0aGlzLnR5cGVzLlBvaW50XG4gICAgICAgICAgPyBwXG4gICAgICAgICAgOiBuZXcgdGhpcy50eXBlcy5Qb2ludChwKSkgYXMgSW5zdGFuY2VUeXBlPFRUeXBlc1tcIlBvaW50XCJdPixcbiAgICApO1xuICB9XG5cbiAgY2xvbmUoKTogdGhpcyB7XG4gICAgY29uc3QgVGhpcyA9IHRoaXMuY29uc3RydWN0b3IgYXMgdHlwZW9mIEdlb21ldHJ5TGluZUJhc2U7XG5cbiAgICByZXR1cm4gbmV3IFRoaXMobWFwKHRoaXMubGluZSwgcCA9PiBwLmNsb25lKCkpLCB0aGlzLnR5cGVzKSBhcyB0aGlzO1xuICB9XG5cbiAgZXF1YWxzKG90aGVyOiB1bmtub3duKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGlzR2VvbWV0cnlMaW5lPEdlb21ldHJ5TGluZUJhc2U8R2VvbWV0cnlMaW5lVHlwZXM+PihvdGhlcilcbiAgICAgICYmIG90aGVyLmxpbmUubGVuZ3RoID09PSB0aGlzLmxpbmUubGVuZ3RoXG4gICAgICAmJiBvdGhlci5saW5lLmV2ZXJ5KChwLCBpKSA9PiB0aGlzLmxpbmVbaV0hLmVxdWFscyhwKSk7XG4gIH1cblxuICBpc0Nsb3NlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5saW5lWzBdLmVxdWFscyh0aGlzLmxpbmVbdGhpcy5saW5lLmxlbmd0aCAtIDFdKTtcbiAgfVxuXG4gIHRvQ2xvc2VkKCk6IHRoaXMge1xuICAgIGNvbnN0IGxpbmUgPSB0aGlzLmNsb25lKCk7XG4gICAgbGluZS5jbG9zZSgpO1xuXG4gICAgcmV0dXJuIGxpbmU7XG4gIH1cblxuICBjbG9zZSgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuaXNDbG9zZWQoKSkge1xuICAgICAgdGhpcy5saW5lID0gWy4uLnRoaXMubGluZSwgdGhpcy5saW5lWzBdLmNsb25lKCldO1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIFtBUEkgUmVmZXJlbmNlXShodHRwczovL3RhaS1rdW4uZ2l0aHViLmlvL3N1cnJlYWxkYi5qcy92Mi9hcGkvZGF0YS9nZW9tZXRyeS1saW5lKVxuICovXG5leHBvcnQgY2xhc3MgR2VvbWV0cnlMaW5lXG4gIGV4dGVuZHMgR2VvbWV0cnlMaW5lQmFzZTxHZW9tZXRyeUxpbmVUeXBlczx0eXBlb2YgR2VvbWV0cnlQb2ludD4+XG57XG4gIHN0YXRpYyByZWFkb25seSBQb2ludCA9IEdlb21ldHJ5UG9pbnQ7XG5cbiAgY29uc3RydWN0b3Ioc291cmNlOiBHZW9tZXRyeUxpbmVTb3VyY2U8dHlwZW9mIEdlb21ldHJ5TGluZT4pIHtcbiAgICBzdXBlcihzb3VyY2UsIEdlb21ldHJ5TGluZSk7XG4gIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLGlDQUtPO0FBQ1Asc0JBQWdEO0FBQ2hELDRCQUlPO0FBZUEsSUFBTSxvQkFBTixNQUFNLDBCQUNILDJCQUFBQSxpQkFDVjtBQUFBLEVBUUUsSUFBYSxjQUlYO0FBQ0EsZUFBTyxxQkFBSSxLQUFLLE1BQU0sT0FBSyxFQUFFLFdBQVc7QUFBQSxFQUMxQztBQUFBLEVBRUEsSUFBYSxZQUFZLFFBQW9DO0FBQzNELFNBQUssV0FBTztBQUFBLE1BQ1Y7QUFBQSxNQUNBLE9BQ0csYUFBYSxLQUFLLE1BQU0sUUFDckIsSUFDQSxJQUFJLEtBQUssTUFBTSxNQUFNLENBQUM7QUFBQSxJQUM5QjtBQUFBLEVBQ0Y7QUFBQSxFQUVBLFFBQWM7QUFDWixVQUFNLE9BQU8sS0FBSztBQUVsQixXQUFPLElBQUksU0FBSyxxQkFBSSxLQUFLLE1BQU0sT0FBSyxFQUFFLE1BQU0sQ0FBQyxHQUFHLEtBQUssS0FBSztBQUFBLEVBQzVEO0FBQUEsRUFFQSxPQUFPLE9BQXlCO0FBQzlCLGVBQU8sZ0NBQW9ELEtBQUssS0FDM0QsTUFBTSxLQUFLLFdBQVcsS0FBSyxLQUFLLFVBQ2hDLE1BQU0sS0FBSyxNQUFNLENBQUMsR0FBRyxNQUFNLEtBQUssS0FBSyxDQUFDLEVBQUcsT0FBTyxDQUFDLENBQUM7QUFBQSxFQUN6RDtBQUFBLEVBRUEsV0FBb0I7QUFDbEIsV0FBTyxLQUFLLEtBQUssQ0FBQyxFQUFFLE9BQU8sS0FBSyxLQUFLLEtBQUssS0FBSyxTQUFTLENBQUMsQ0FBQztBQUFBLEVBQzVEO0FBQUEsRUFFQSxXQUFpQjtBQUNmLFVBQU0sT0FBTyxLQUFLLE1BQU07QUFDeEIsU0FBSyxNQUFNO0FBRVgsV0FBTztBQUFBLEVBQ1Q7QUFBQSxFQUVBLFFBQWM7QUFDWixRQUFJLENBQUMsS0FBSyxTQUFTLEdBQUc7QUFDcEIsV0FBSyxPQUFPLENBQUMsR0FBRyxLQUFLLE1BQU0sS0FBSyxLQUFLLENBQUMsRUFBRSxNQUFNLENBQUM7QUFBQSxJQUNqRDtBQUFBLEVBQ0Y7QUFDRjtBQXREQTtBQUZPLElBQU0sbUJBQU47QUE2REEsSUFBTSxnQkFBTixNQUFNLHNCQUNILGlCQUNWO0FBQUEsRUFHRSxZQUFZLFFBQWlEO0FBQzNELFVBQU0sUUFBUSxhQUFZO0FBQUEsRUFDNUI7QUFDRjtBQU5BO0FBRmEsY0FHSyxRQUFRO0FBSG5CLElBQU0sZUFBTjsiLAogICJuYW1lcyI6IFsiQmFzZSJdCn0K