更新版本

This commit is contained in:
2025-10-13 14:01:33 +08:00
parent 047114c49a
commit 780d0bdadc
91 changed files with 5962 additions and 2562 deletions

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,75 @@
import { Frustum, Matrix3, Matrix4, Object3D, Vector3 } from "three";
import { Status } from "../../Common/Status";
import { ObjectSnapMode } from "../../Editor/ObjectSnapMode";
import { Box3Ext } from "../../Geometry/Box";
import { IntersectOption } from "../../GraphicsSystem/IntersectWith";
import { RenderType } from "../../GraphicsSystem/RenderType";
import { CADFiler } from "../CADFiler";
import { LayerTableRecord } from "../LayerTableRecord";
import { ObjectId } from "../ObjectId";
import { Arc } from "./Arc";
import { Curve } from "./Curve";
import { Entity } from "./Entity";
import { Line } from "./Line";
import { LineType } from "./LineType";
export declare class Curve3d extends Curve {
constructor();
Entitys: (Line | Arc)[];
private _ClosedMark;
get IsClose(): boolean;
get CloseMark(): boolean;
set CloseMark(v: boolean);
get LineType(): LineType;
set LineType(lineType: LineType);
/**
* 返回对象在自身坐标系下的Box
*/
get BoundingBoxInOCS(): Box3Ext;
get Length(): number;
get StartPoint(): Vector3;
get EndPoint(): Vector3;
get StartParam(): number;
get EndParam(): number;
UpdateJigMaterial(color?: number): void;
RestoreJigMaterial(): void;
Reverse(): this;
GetPointAtParam(param: number): Vector3;
GetParamAtDist(dist: number): number;
GetEntitysAtPoint(point: Vector3): Entity[];
GetCurveAtParam(param: number): Curve;
GetParamAtPoint(pt: Vector3, fuzz?: number): number;
GetSplitCurves(param: number[] | number): Array<Curve>;
Extend(newParam: number): void;
IntersectWith2(curve: Curve, intType: IntersectOption, tolerance?: number): import("../../GraphicsSystem/IntersectWith").IntersectResult[];
GetFirstDeriv(param: number | Vector3): Vector3;
GetCurveParamAtParam(param: number): number;
Join(cu: Curve): Status.False | Status.True;
Explode(): (Line | Arc)[];
Traverse(callback: (arg0: Entity) => void): void;
InitDrawObject(renderType?: RenderType): Object3D;
UpdateDrawObject(renderType: RenderType, obj: Object3D): void;
get ColorIndex(): number;
set ColorIndex(color: number);
get Layer(): ObjectId<LayerTableRecord>;
set Layer(id: ObjectId<LayerTableRecord>);
ApplyMatrix(m: Matrix4): this;
/**
*
* @param snapMode 捕捉模式(单一)
* @param pickPoint const
* @param lastPoint const
* @param viewXform const 最近点捕捉需要这个变量
* @returns object snap points
*/
GetObjectSnapPoints(snapMode: ObjectSnapMode, pickPoint: Vector3, lastPoint: Vector3, viewXform?: Matrix3, frustum?: Frustum): Vector3[];
GetGripPoints(): Array<Vector3>;
MoveGripCurveStartEndPoint(ent: Curve, index: number, vec: Vector3): void;
MoveGripPoints(indexList: number[], vec: Vector3): void;
GetStretchPoints(): Array<Vector3>;
MoveStretchPoints(indexList: Array<number>, vec: Vector3): void;
CloneDrawObject(from: this): void;
ApplyMirrorMatrix(m: Matrix4): this;
protected _ReadFile(file: CADFiler): void;
WriteFile(file: CADFiler): void;
}
//# sourceMappingURL=Curve3d.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"Curve3d.d.ts","sourceRoot":"","sources":["../../../../src/DatabaseServices/Entity/Curve3d.ts"],"names":[],"mappings":"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"}

View File

@@ -0,0 +1,6 @@
import { EntityRefModel } from "./EntityRefModel";
export declare class Entity3DS extends EntityRefModel {
urlStr: string;
LoadModelFromArrayBuffer(data: ArrayBuffer): string | undefined;
}
//# sourceMappingURL=Entity3DS.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"Entity3DS.d.ts","sourceRoot":"","sources":["../../../../src/DatabaseServices/Entity/Entity3DS.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGlD,qBACa,SAAU,SAAQ,cAAc;IAEzC,MAAM,SAAa;IAEnB,wBAAwB,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,GAAG,SAAS;CAMlE"}

View File

@@ -1,46 +1,9 @@
import { Group, Matrix4, Vector3 } from "three";
import { Box3Ext } from "../../Geometry/Box";
import { CADFiler } from "../CADFiler";
import { ObjectId } from "../ObjectId";
import { PhysicalMaterialRecord } from "../PhysicalMaterialRecord";
import { Entity } from "./Entity";
import { EntityRefModel } from "./EntityRefModel";
/**
* 外部引用的实体,比如glTF
*/
export declare class EntityFbx extends Entity {
private _url?;
OnlyRenderType: boolean;
private _Size;
private _ScaleSize;
private _Center;
private _OverWriteMaterial;
constructor(_url?: string);
get IsVisible(): boolean;
get Url(): string;
set Url(url: string);
get CurSize(): Vector3;
get ScaleSize(): Vector3;
set ScaleSize(size: Vector3);
get Scale(): Vector3;
get BoundingBox(): Box3Ext;
get BoundingBoxInOCS(): Box3Ext;
get OverWriteMaterial(): Map<number, ObjectId<PhysicalMaterialRecord>>;
IsMtlLockAtSlot(slotIndex: number): boolean;
SetMaterialAtSlot(mtl: ObjectId<PhysicalMaterialRecord>, slotIndex: number): void;
SetAllMaterialAtSlot(mtl: ObjectId<PhysicalMaterialRecord>): void;
GetMtlLockedStatus(): {
allMtlLocked: boolean;
partMtlLocked: boolean;
};
private _GetValidOWMtlRecord;
GetPhyMtlRecords(containErased?: boolean): PhysicalMaterialRecord[];
newObject: Group;
LoadFBXModelFromArrayBuffer(fbxArray: ArrayBuffer): string | undefined;
CloneDrawObject(from: this): void;
ApplyScaleMatrix(m: Matrix4): this;
private _GetValidOWMtl;
MoveGripPoints(indexList: Array<number>, vec: Vector3): void;
protected _ReadFile(file: CADFiler): void;
WriteFile(file: CADFiler): void;
export declare class EntityFbx extends EntityRefModel {
urlStr: string;
LoadModelFromArrayBuffer(data: ArrayBuffer): string | undefined;
}
//# sourceMappingURL=EntityFbx.d.ts.map

View File

@@ -1 +1 @@
{"version":3,"file":"EntityFbx.d.ts","sourceRoot":"","sources":["../../../../src/DatabaseServices/Entity/EntityFbx.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,OAAO,EAA8B,OAAO,EAAE,MAAM,OAAO,CAAC;AAG5E,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAG7C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC;;GAEG;AACH,qBACa,SAAU,SAAQ,MAAM;IAUrB,OAAO,CAAC,IAAI,CAAC;IARzB,cAAc,UAAQ;IAEtB,OAAO,CAAC,KAAK,CAAe;IAC5B,OAAO,CAAC,UAAU,CAAe;IACjC,OAAO,CAAC,OAAO,CAAe;IAE9B,OAAO,CAAC,kBAAkB,CAAuD;gBAE7D,IAAI,CAAC,EAAE,MAAM;IAKjC,IAAa,SAAS,YAGrB;IAED,IAAI,GAAG,IACM,MAAM,CADY;IAC/B,IAAI,GAAG,CAAC,GAAG,EAAE,MAAM,EAOlB;IAED,IAAI,OAAO,YAA6E;IAExF,IAAI,SAAS,IACO,OAAO,CADgB;IAC3C,IAAI,SAAS,CAAC,IAAI,EAAE,OAAO,EAW1B;IAED,IAAI,KAAK,YAKR;IAED,IAAI,WAAW,YAGd;IAED,IAAI,gBAAgB,YAenB;IACD,IAAI,iBAAiB,kDAGpB;IAED,eAAe,CAAC,SAAS,EAAE,MAAM;IAWjC,iBAAiB,CAAC,GAAG,EAAE,QAAQ,CAAC,sBAAsB,CAAC,EAAE,SAAS,EAAE,MAAM;IAa1E,oBAAoB,CAAC,GAAG,EAAE,QAAQ,CAAC,sBAAsB,CAAC;IAqC1D,kBAAkB;;;;IAuClB,OAAO,CAAC,oBAAoB;IAW5B,gBAAgB,CAAC,aAAa,GAAE,OAAe;IAkC/C,SAAS,EAAE,KAAK,CAAC;IAGjB,2BAA2B,CAAC,QAAQ,EAAE,WAAW,GAAG,MAAM,GAAG,SAAS;IAKtE,eAAe,CAAC,IAAI,EAAE,IAAI;IAI1B,gBAAgB,CAAC,CAAC,EAAE,OAAO;IA6B3B,OAAO,CAAC,cAAc;IAUtB,cAAc,CAAC,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,OAAO;IAYrD,SAAS,CAAC,SAAS,CAAC,IAAI,EAAE,QAAQ;IAwClC,SAAS,CAAC,IAAI,EAAE,QAAQ;CA+B3B"}
{"version":3,"file":"EntityFbx.d.ts","sourceRoot":"","sources":["../../../../src/DatabaseServices/Entity/EntityFbx.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD;;GAEG;AACH,qBACa,SAAU,SAAQ,cAAc;IAEzC,MAAM,EAAE,MAAM,CAAa;IAE3B,wBAAwB,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,GAAG,SAAS;CAMlE"}

View File

@@ -0,0 +1,6 @@
import { EntityRefModel } from "./EntityRefModel";
export declare class EntityOBJ extends EntityRefModel {
urlStr: string;
LoadModelFromArrayBuffer(data: string): string | undefined;
}
//# sourceMappingURL=EntityOBJ.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"EntityOBJ.d.ts","sourceRoot":"","sources":["../../../../src/DatabaseServices/Entity/EntityOBJ.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,qBACa,SAAU,SAAQ,cAAc;IAEzC,MAAM,EAAE,MAAM,CAAa;IAE3B,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;CAM7D"}

View File

@@ -0,0 +1,6 @@
import { EntityRefModel } from "./EntityRefModel";
export declare class EntityPLY extends EntityRefModel {
urlStr: string;
LoadModelFromArrayBuffer(data: ArrayBuffer | string): string | undefined;
}
//# sourceMappingURL=EntityPLY.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"EntityPLY.d.ts","sourceRoot":"","sources":["../../../../src/DatabaseServices/Entity/EntityPLY.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,qBACa,SAAU,SAAQ,cAAc;IAEzC,MAAM,EAAE,MAAM,CAAa;IAC3B,wBAAwB,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS;CAM3E"}

View File

@@ -0,0 +1,49 @@
import { Matrix4, MeshPhongMaterial, MeshPhysicalMaterial, Object3D, Vector3 } from "three";
import { Box3Ext } from "../../Geometry/Box";
import { CADFiler } from "../CADFiler";
import { ObjectId } from "../ObjectId";
import { PhysicalMaterialRecord } from "../PhysicalMaterialRecord";
import { Entity } from "./Entity";
/**
* 外部引用的实体,比如glTF
*/
export declare class EntityRefModel extends Entity {
private _url?;
urlStr: string;
OnlyRenderType: boolean;
protected _Size: Vector3;
protected _ScaleSize: Vector3;
protected _Center: Vector3;
protected _OverWriteMaterial: Map<number, ObjectId<PhysicalMaterialRecord>>;
constructor(_url?: string);
get IsVisible(): boolean;
get Url(): string;
set Url(url: string);
get CurSize(): Vector3;
get ScaleSize(): Vector3;
set ScaleSize(size: Vector3);
get Scale(): Vector3;
get BoundingBox(): Box3Ext;
get BoundingBoxInOCS(): Box3Ext;
get OverWriteMaterial(): Map<number, ObjectId<PhysicalMaterialRecord>>;
IsMtlLockAtSlot(slotIndex: number): boolean;
SetMaterialAtSlot(mtl: ObjectId<PhysicalMaterialRecord>, slotIndex: number): void;
SetAllMaterialAtSlot(mtl: ObjectId<PhysicalMaterialRecord>): void;
GetMtlLockedStatus(): {
allMtlLocked: boolean;
partMtlLocked: boolean;
};
private _GetValidOWMtlRecord;
GetPhyMtlRecords(containErased?: boolean): PhysicalMaterialRecord[];
newObject: Object3D;
LoadModelFromArrayBuffer(data: ArrayBuffer | string): string | undefined;
CloneDrawObject(from: this): void;
ApplyScaleMatrix(m: Matrix4): this;
private _GetValidOWMtl;
protected GetMaterial: (m: MeshPhongMaterial, index?: number) => MeshPhysicalMaterial;
LoadObject(dObj: Object3D): void;
MoveGripPoints(indexList: Array<number>, vec: Vector3): void;
protected _ReadFile(file: CADFiler): void;
WriteFile(file: CADFiler): void;
}
//# sourceMappingURL=EntityRefModel.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"EntityRefModel.d.ts","sourceRoot":"","sources":["../../../../src/DatabaseServices/Entity/EntityRefModel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAQ,iBAAiB,EAAE,oBAAoB,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAIlG,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAG7C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC;;GAEG;AACH,qBACa,cAAe,SAAQ,MAAM;IAY1B,OAAO,CAAC,IAAI,CAAC;IAVzB,MAAM,SAAM;IAEZ,cAAc,UAAQ;IAEtB,SAAS,CAAC,KAAK,UAAe;IAC9B,SAAS,CAAC,UAAU,UAAe;IACnC,SAAS,CAAC,OAAO,UAAe;IAEhC,SAAS,CAAC,kBAAkB,gDAAuD;gBAE/D,IAAI,CAAC,EAAE,MAAM;IAKjC,IAAa,SAAS,YAGrB;IAED,IAAI,GAAG,IACM,MAAM,CADY;IAC/B,IAAI,GAAG,CAAC,GAAG,EAAE,MAAM,EAOlB;IAED,IAAI,OAAO,YAA6E;IAExF,IAAI,SAAS,IACO,OAAO,CADgB;IAC3C,IAAI,SAAS,CAAC,IAAI,EAAE,OAAO,EAW1B;IAED,IAAI,KAAK,YAKR;IAED,IAAI,WAAW,YAGd;IAED,IAAI,gBAAgB,YAenB;IACD,IAAI,iBAAiB,kDAGpB;IAED,eAAe,CAAC,SAAS,EAAE,MAAM;IAWjC,iBAAiB,CAAC,GAAG,EAAE,QAAQ,CAAC,sBAAsB,CAAC,EAAE,SAAS,EAAE,MAAM;IAa1E,oBAAoB,CAAC,GAAG,EAAE,QAAQ,CAAC,sBAAsB,CAAC;IAqC1D,kBAAkB;;;;IAuClB,OAAO,CAAC,oBAAoB;IAU5B,gBAAgB,CAAC,aAAa,GAAE,OAAe;IAkC/C,SAAS,EAAE,QAAQ,CAAC;IAEpB,wBAAwB,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS;IAKxE,eAAe,CAAC,IAAI,EAAE,IAAI;IAI1B,gBAAgB,CAAC,CAAC,EAAE,OAAO;IA6B3B,OAAO,CAAC,cAAc;IAQtB,SAAS,CAAC,WAAW,GAAI,GAAG,iBAAiB,EAAE,QAAQ,MAAM,0BAO3D;IAGF,UAAU,CAAC,IAAI,EAAE,QAAQ;IAIzB,cAAc,CAAC,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,OAAO;IAYrD,SAAS,CAAC,SAAS,CAAC,IAAI,EAAE,QAAQ;IAwClC,SAAS,CAAC,IAAI,EAAE,QAAQ;CA+B3B"}

View File

@@ -0,0 +1,6 @@
import { EntityRefModel } from "./EntityRefModel";
export declare class EntitySTL extends EntityRefModel {
urlStr: string;
LoadModelFromArrayBuffer(data: ArrayBuffer | string): string | undefined;
}
//# sourceMappingURL=EntitySTL.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"EntitySTL.d.ts","sourceRoot":"","sources":["../../../../src/DatabaseServices/Entity/EntitySTL.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,qBACa,SAAU,SAAQ,cAAc;IAEzC,MAAM,EAAE,MAAM,CAAa;IAE3B,wBAAwB,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS;CAM3E"}

View File

@@ -0,0 +1,6 @@
import { EntityRefModel } from "./EntityRefModel";
export declare class EntityX3D extends EntityRefModel {
urlStr: string;
LoadModelFromArrayBuffer(data: string): string | undefined;
}
//# sourceMappingURL=EntityX3D.d.ts.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"EntityX3D.d.ts","sourceRoot":"","sources":["../../../../src/DatabaseServices/Entity/EntityX3D.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,qBACa,SAAU,SAAQ,cAAc;IAEzC,MAAM,EAAE,MAAM,CAAa;IAC3B,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;CAM7D"}

View File

@@ -1 +1 @@
{"version":3,"file":"Line.d.ts","sourceRoot":"","sources":["../../../../src/DatabaseServices/Entity/Line.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"Line.d.ts","sourceRoot":"","sources":["../../../../src/DatabaseServices/Entity/Line.ts"],"names":[],"mappings":"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"}

View File

@@ -1,19 +1,26 @@
import { Box3, BufferGeometry, Material, Matrix3, Matrix4, Object3D, Vector3 } from 'three';
import { Box3, BufferGeometry, Material, Matrix3, Matrix4, Object3D, Side, Vector3 } from 'three';
import { ObjectSnapMode } from '../../Editor/ObjectSnapMode';
import { BoolOpeartionType } from '../../GraphicsSystem/BoolOperateUtils';
import { RenderType } from '../../GraphicsSystem/RenderType';
import { CADFiler } from '../CADFiler';
import { Shape } from '../Shape';
import { ShapeManager } from '../ShapeManager';
import { Curve } from './Curve';
import { Entity } from './Entity';
export declare class Region extends Entity {
private _ShapeManager;
static CreateFromCurves(cus: Curve[] | (Curve[])[]): Region | undefined;
private _FaceSide;
get FaceSide(): Side;
set FaceSide(v: Side);
GetShapeList(): Shape[];
SetShapeList(shapes: Shape[]): void;
constructor(_ShapeManager?: ShapeManager);
get ShapeManager(): ShapeManager;
get Area(): number;
get BoundingBox(): Box3;
Explode(): Curve[] | Region[];
UpdateShapeList(): void;
/**
* 对于布尔操作,这个将会变换内部轮廓到对方坐标系.
* 并且这个变换不会更新图形绘制.
@@ -24,6 +31,8 @@ export declare class Region extends Entity {
GetObjectSnapPoints(snapMode: ObjectSnapMode, pickPoint: Vector3, lastPoint: Vector3, viewXform?: Matrix3): Vector3[];
GetGripPoints(): Array<Vector3>;
MoveGripPoints(indexList: number[], moveVec: Vector3): void;
GetStretchPoints(): Vector3[];
MoveStretchPoints(indexList: Array<number>, moveVec: Vector3): void;
ApplyMatrix(m: Matrix4): this;
get Position(): Vector3;
set Position(pt: Vector3);

View File

@@ -1 +1 @@
{"version":3,"file":"Region.d.ts","sourceRoot":"","sources":["../../../../src/DatabaseServices/Entity/Region.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,cAAc,EAAgB,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAQ,QAAQ,EAA0B,OAAO,EAAE,MAAM,OAAO,CAAC;AAIxI,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAI7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAE7D,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAGvC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,qBACa,MAAO,SAAQ,MAAM;IAelB,OAAO,CAAC,aAAa;IAbjC,MAAM,CAAC,gBAAgB,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,MAAM,GAAG,SAAS;gBAanD,aAAa,GAAE,YAAiC;IAMpE,IAAI,YAAY,iBAGf;IACD,IAAI,IAAI,WAGP;IACD,IAAI,WAAW,SAMd;IACD,OAAO;IAoBP;;;;;OAKG;IACH,gBAAgB,CAAC,CAAC,EAAE,OAAO;IAK3B,mBAAmB,CACf,QAAQ,EAAE,cAAc,EACxB,SAAS,EAAE,OAAO,EAClB,SAAS,EAAE,OAAO,EAClB,SAAS,CAAC,EAAE,OAAO,GACpB,OAAO,EAAE;IAyBZ,aAAa,IAAI,KAAK,CAAC,OAAO,CAAC;IAO/B,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,OAAO;IAMpD,WAAW,CAAC,CAAC,EAAE,OAAO,GAAG,IAAI;IAQ7B,IAAI,QAAQ,IAIK,OAAO,CADvB;IACD,IAAI,QAAQ,CAAC,EAAE,EAAE,OAAO,EAgBvB;IAED,SAAS,CAAC,gBAAgB,CAAC,CAAC,EAAE,OAAO,GAAG,IAAI;IAW5C,EAAE;IAQF,iBAAiB;IAQjB,SAAS,CAAC,iBAAiB,CAAC,CAAC,EAAE,OAAO;IAItC;;;;OAIG;IACH,WAAW,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,iBAAiB,GAAG,OAAO;IAkBtE,OAAO,CAAC,aAAa,CAAiB;IACtC,IAAI,YAAY,IAAI,cAAc,CAMjC;IAED,OAAO,CAAC,aAAa,CAAiB;IACtC,OAAO,KAAK,YAAY,GAMvB;IAED,OAAO,CAAC,cAAc;IA4CtB,kBAAkB;IAUlB,SAAS,IAAI,IAAI;IAMjB,cAAc,CAAC,UAAU,GAAE,UAAiC,GAAG,QAAQ;IAoCvE,gBAAgB,CAAC,UAAU,EAAE,UAAU,EAAE,GAAG,EAAE,QAAQ;IAyCtD;;MAEE;IACF,wBAAwB,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,QAAQ;IA8B7E,SAAS,CAAC,SAAS,CAAC,IAAI,EAAE,QAAQ;IAWlC,SAAS,CAAC,IAAI,EAAE,QAAQ;CAS3B"}
{"version":3,"file":"Region.d.ts","sourceRoot":"","sources":["../../../../src/DatabaseServices/Entity/Region.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,IAAI,EAAE,cAAc,EAAiD,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAQ,QAAQ,EAAiB,IAAI,EAAW,OAAO,EAAE,MAAM,OAAO,CAAC;AAKzL,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAI7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAG7D,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,qBACa,MAAO,SAAQ,MAAM;IAqDlB,OAAO,CAAC,aAAa;IAnDjC,MAAM,CAAC,gBAAgB,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,MAAM,GAAG,SAAS;IAavE,OAAO,CAAC,SAAS,CAAmB;IACpC,IAAI,QAAQ,IAKI,IAAI,CAFnB;IAED,IAAI,QAAQ,CAAC,CAAC,EAAE,IAAI,EAQnB;IAED,YAAY;IAMZ,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE;gBAgBR,aAAa,GAAE,YAAiC;IAMpE,IAAI,YAAY,iBAGf;IACD,IAAI,IAAI,WAGP;IACD,IAAI,WAAW,SAMd;IAED,OAAO;IAoBP,eAAe,IAAI,IAAI;IAqDvB;;;;;OAKG;IACH,gBAAgB,CAAC,CAAC,EAAE,OAAO;IAK3B,mBAAmB,CACf,QAAQ,EAAE,cAAc,EACxB,SAAS,EAAE,OAAO,EAClB,SAAS,EAAE,OAAO,EAClB,SAAS,CAAC,EAAE,OAAO,GACpB,OAAO,EAAE;IAyBZ,aAAa,IAAI,KAAK,CAAC,OAAO,CAAC;IAO/B,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,OAAO;IAyBpD,gBAAgB;IAQhB,iBAAiB,CAAC,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,OAAO;IAwB5D,WAAW,CAAC,CAAC,EAAE,OAAO,GAAG,IAAI;IAQ7B,IAAI,QAAQ,IAIK,OAAO,CADvB;IACD,IAAI,QAAQ,CAAC,EAAE,EAAE,OAAO,EAgBvB;IAED,SAAS,CAAC,gBAAgB,CAAC,CAAC,EAAE,OAAO,GAAG,IAAI;IAW5C,EAAE;IAQF,iBAAiB;IAQjB,SAAS,CAAC,iBAAiB,CAAC,CAAC,EAAE,OAAO;IAItC;;;;OAIG;IACH,WAAW,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,iBAAiB,GAAG,OAAO;IAkBtE,OAAO,CAAC,aAAa,CAAiB;IACtC,IAAI,YAAY,IAAI,cAAc,CAMjC;IAED,OAAO,CAAC,aAAa,CAAiB;IACtC,OAAO,KAAK,YAAY,GAMvB;IAED,OAAO,CAAC,cAAc;IAyFtB,kBAAkB;IAUlB,SAAS,IAAI,IAAI;IAMjB,cAAc,CAAC,UAAU,GAAE,UAAiC,GAAG,QAAQ;IAoCvE,gBAAgB,CAAC,UAAU,EAAE,UAAU,EAAE,GAAG,EAAE,QAAQ;IAyCtD;;MAEE;IACF,wBAAwB,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,QAAQ;IAmC7E,SAAS,CAAC,SAAS,CAAC,IAAI,EAAE,QAAQ;IAclC,SAAS,CAAC,IAAI,EAAE,QAAQ;CAW3B"}