{
  "version": 3,
  "sources": ["../../../src/handlers/entity/vertex.ts"],
  "sourcesContent": ["import type { DXFTuple } from '../../types/dxf'\n\nimport type { Vertex } from '../../types'\n\nexport const TYPE = 'VERTEX'\n\n\nconst ensureFaces = (entity: Vertex): void => {\n  entity.faces = entity.faces || []\n  if ('x' in entity && !entity.x) delete entity.x\n  if ('y' in entity && !entity.y) delete entity.y\n  if ('z' in entity && !entity.z) delete entity.z\n}\n\nexport const process = (tuples: DXFTuple[]): Vertex => {\n  return tuples.reduce((entity, tuple) => {\n    const type = tuple[0]\n    const value = tuple[1]\n    switch (type) {\n      case 10:\n        entity.x = value as number\n        break\n      case 20:\n        entity.y = value as number\n        break\n      case 30:\n        entity.z = value as number\n        break\n      case 42:\n        entity.bulge = value as number\n        break\n      case 71:\n        ensureFaces(entity)\n        entity.faces![0] = value as number\n        break\n      case 72:\n        ensureFaces(entity)\n        entity.faces![1] = value as number\n        break\n      case 73:\n        ensureFaces(entity)\n        entity.faces![2] = value as number\n        break\n      case 74:\n        ensureFaces(entity)\n        entity.faces![3] = value as number\n        break\n      default:\n        break\n    }\n    return entity\n  }, {} as Vertex)\n}\n\nexport default { TYPE, process }\n"],
  "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAIO,MAAM,OAAO;AAGpB,MAAM,cAAc,CAAC,WAAyB;AAC5C,SAAO,QAAQ,OAAO,SAAS,CAAC;AAChC,MAAI,OAAO,UAAU,CAAC,OAAO,EAAG,QAAO,OAAO;AAC9C,MAAI,OAAO,UAAU,CAAC,OAAO,EAAG,QAAO,OAAO;AAC9C,MAAI,OAAO,UAAU,CAAC,OAAO,EAAG,QAAO,OAAO;AAChD;AAEO,MAAM,UAAU,CAAC,WAA+B;AACrD,SAAO,OAAO,OAAO,CAAC,QAAQ,UAAU;AACtC,UAAM,OAAO,MAAM,CAAC;AACpB,UAAM,QAAQ,MAAM,CAAC;AACrB,YAAQ,MAAM;AAAA,MACZ,KAAK;AACH,eAAO,IAAI;AACX;AAAA,MACF,KAAK;AACH,eAAO,IAAI;AACX;AAAA,MACF,KAAK;AACH,eAAO,IAAI;AACX;AAAA,MACF,KAAK;AACH,eAAO,QAAQ;AACf;AAAA,MACF,KAAK;AACH,oBAAY,MAAM;AAClB,eAAO,MAAO,CAAC,IAAI;AACnB;AAAA,MACF,KAAK;AACH,oBAAY,MAAM;AAClB,eAAO,MAAO,CAAC,IAAI;AACnB;AAAA,MACF,KAAK;AACH,oBAAY,MAAM;AAClB,eAAO,MAAO,CAAC,IAAI;AACnB;AAAA,MACF,KAAK;AACH,oBAAY,MAAM;AAClB,eAAO,MAAO,CAAC,IAAI;AACnB;AAAA,MACF;AACE;AAAA,IACJ;AACA,WAAO;AAAA,EACT,GAAG,CAAC,CAAW;AACjB;AAEA,IAAO,iBAAQ,EAAE,MAAM,QAAQ;",
  "names": []
}
