{
  "version": 3,
  "sources": ["../../../src/handlers/entity/shape.ts"],
  "sourcesContent": ["import type { DXFTuple, PartialPoint3D } from '../../types'\n\nimport common from './common'\n\nexport const TYPE = 'SHAPE'\n\ninterface ShapeEntity {\n  type: typeof TYPE\n  insertionPoint: PartialPoint3D\n  name?: string\n  size?: number\n  rotation?: number\n  relativeXScale?: number\n  oblique?: number\n  thickness?: number\n  extrusionX?: number\n  extrusionY?: number\n  [key: string]: unknown\n}\n\nexport const process = (tuples: DXFTuple[]): ShapeEntity => {\n  return tuples.reduce(\n    (entity, tuple) => {\n      const type = tuple[0]\n      const value = tuple[1]\n      switch (type) {\n        case 10:\n          entity.insertionPoint.x = value as number\n          break\n        case 20:\n          entity.insertionPoint.y = value as number\n          break\n        case 30:\n          entity.insertionPoint.z = value as number\n          break\n        case 2:\n          entity.name = String(value)\n          break\n        case 39:\n          entity.thickness = value as number\n          break\n        case 40:\n          entity.size = value as number\n          break\n        case 41:\n          entity.relativeXScale = value as number\n          break\n        case 50:\n          entity.rotation = value as number\n          break\n        case 51:\n          entity.oblique = value as number\n          break\n        case 210:\n          entity.extrusionX = value as number\n          break\n        case 220:\n          entity.extrusionY = value as number\n          break\n        default:\n          Object.assign(entity, common(type, value))\n          break\n      }\n      return entity\n    },\n    {\n      type: TYPE,\n      insertionPoint: {},\n    } as ShapeEntity,\n  )\n}\n\nexport default { TYPE, process }\n"],
  "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,oBAAmB;AAEZ,MAAM,OAAO;AAgBb,MAAM,UAAU,CAAC,WAAoC;AAC1D,SAAO,OAAO;AAAA,IACZ,CAAC,QAAQ,UAAU;AACjB,YAAM,OAAO,MAAM,CAAC;AACpB,YAAM,QAAQ,MAAM,CAAC;AACrB,cAAQ,MAAM;AAAA,QACZ,KAAK;AACH,iBAAO,eAAe,IAAI;AAC1B;AAAA,QACF,KAAK;AACH,iBAAO,eAAe,IAAI;AAC1B;AAAA,QACF,KAAK;AACH,iBAAO,eAAe,IAAI;AAC1B;AAAA,QACF,KAAK;AACH,iBAAO,OAAO,OAAO,KAAK;AAC1B;AAAA,QACF,KAAK;AACH,iBAAO,YAAY;AACnB;AAAA,QACF,KAAK;AACH,iBAAO,OAAO;AACd;AAAA,QACF,KAAK;AACH,iBAAO,iBAAiB;AACxB;AAAA,QACF,KAAK;AACH,iBAAO,WAAW;AAClB;AAAA,QACF,KAAK;AACH,iBAAO,UAAU;AACjB;AAAA,QACF,KAAK;AACH,iBAAO,aAAa;AACpB;AAAA,QACF,KAAK;AACH,iBAAO,aAAa;AACpB;AAAA,QACF;AACE,iBAAO,OAAO,YAAQ,cAAAA,SAAO,MAAM,KAAK,CAAC;AACzC;AAAA,MACJ;AACA,aAAO;AAAA,IACT;AAAA,IACA;AAAA,MACE,MAAM;AAAA,MACN,gBAAgB,CAAC;AAAA,IACnB;AAAA,EACF;AACF;AAEA,IAAO,gBAAQ,EAAE,MAAM,QAAQ;",
  "names": ["common"]
}
