"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("./_virtual/_tslib.js"),t=require("./load-plugins.js"),r=require("./mixins/mixins.js"),n=require("./utils/amap-helpers.js"),i=require("./mixins/props.js"),a=require("./mixins/geometry.js"),u=require("./mixins/editable.js");function s(e,t){return!(!e||!t)&&(n.near(e[0][0],t[0][0])&&n.near(e[0][1],t[0][1])&&n.near(e[1][0],t[1][0])&&n.near(e[1][1],t[1][1]))}var o=r.default(a.plane,u.default).extend({name:"AmapRectangle",amapMeta:{initComponent:function(t,r){return e.__awaiter(this,void 0,void 0,(function(){return e.__generator(this,(function(e){return[2,new t.Rectangle(r)]}))}))},editable:{events:["move","end","adjust"],loadEditor:function(){return e.__awaiter(this,void 0,void 0,(function(){return e.__generator(this,(function(e){switch(e.label){case 0:return[4,t.default("AMap.RectangleEditor")];case 1:return e.sent(),[2]}}))}))},initEditor:function(t,r,n,i){return e.__awaiter(this,void 0,void 0,(function(){return e.__generator(this,(function(e){return[2,new t.RectangleEditor(r,n,i)]}))}))},onEdit:function(e){var t=e.target,r=n.bounds2Array(t.getBounds());this.$emit("update:bounds",r)}}},props:{bounds:i.defineProp({type:Array,deep:!0,setter:function(e,t){if((this.$props.editable||this.$props.draggable)&&s(n.bounds2Array(e.getBounds()),t))return;e.setBounds(n.makeBounds(t))},getter:function(e){return n.bounds2Array(e.getBounds())},transform:n.makeBounds,clone:!0,equals:s,events:["dragging","dragend"]})}});exports.default=o;