@linkiez/dxf-renew 5.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintignore +17 -0
- package/.eslintrc.json +61 -0
- package/.gitattributes +4 -0
- package/.github/instructions/project-en_US.instructions.md +352 -0
- package/.github/workflows/release.yml +110 -0
- package/.husky/commit-msg +4 -0
- package/.husky/pre-commit +1 -0
- package/.prettierignore +1 -0
- package/.prettierrc.json +6 -0
- package/.releaserc.json +76 -0
- package/.travis.yml +6 -0
- package/.yarn/install-state.gz +0 -0
- package/.yarnrc.yml +1 -0
- package/CHANGELOG.md +134 -0
- package/CONTRIBUTING.md +271 -0
- package/LICENSE +21 -0
- package/PLAN.md +517 -0
- package/README.md +306 -0
- package/build.mjs +66 -0
- package/commitlint.config.js +25 -0
- package/dist/dxf.js +7234 -0
- package/docs/CODE_PATTERNS.md +182 -0
- package/docs/DIMENSION_SUMMARY.md +248 -0
- package/docs/DIMENSION_SUMMARY.pt-BR.md +248 -0
- package/docs/IMPLEMENTED-2D-ENTITIES.md +54 -0
- package/docs/IMPLEMENTED-2D-ENTITIES.pt-BR.md +54 -0
- package/docs/TEXT-MTEXT-DIMENSION-SUPPORT.md +241 -0
- package/docs/TEXT-MTEXT-DIMENSION-SUPPORT.pt-BR.md +169 -0
- package/docs/autocad_2012_pdf_dxf-reference_enu.md +8272 -0
- package/examples/dxf.html +36 -0
- package/examples/example.es5.js +30 -0
- package/examples/example.es6.js +30 -0
- package/examples/text-dimension-viewer.html +133 -0
- package/lib/Helper.cjs +89 -0
- package/lib/Helper.cjs.map +7 -0
- package/lib/Helper.js +59 -0
- package/lib/Helper.js.map +7 -0
- package/lib/applyTransforms.cjs +59 -0
- package/lib/applyTransforms.cjs.map +7 -0
- package/lib/applyTransforms.js +39 -0
- package/lib/applyTransforms.js.map +7 -0
- package/lib/cli.cjs +53 -0
- package/lib/cli.cjs.map +7 -0
- package/lib/cli.js +29 -0
- package/lib/cli.js.map +7 -0
- package/lib/config.cjs +30 -0
- package/lib/config.cjs.map +7 -0
- package/lib/config.js +10 -0
- package/lib/config.js.map +7 -0
- package/lib/constants.cjs +39 -0
- package/lib/constants.cjs.map +7 -0
- package/lib/constants.js +15 -0
- package/lib/constants.js.map +7 -0
- package/lib/denormalise.cjs +148 -0
- package/lib/denormalise.cjs.map +7 -0
- package/lib/denormalise.js +118 -0
- package/lib/denormalise.js.map +7 -0
- package/lib/dimensionToSVG.cjs +307 -0
- package/lib/dimensionToSVG.cjs.map +7 -0
- package/lib/dimensionToSVG.js +273 -0
- package/lib/dimensionToSVG.js.map +7 -0
- package/lib/entityToPolyline.cjs +248 -0
- package/lib/entityToPolyline.cjs.map +7 -0
- package/lib/entityToPolyline.js +213 -0
- package/lib/entityToPolyline.js.map +7 -0
- package/lib/getRGBForEntity.cjs +53 -0
- package/lib/getRGBForEntity.cjs.map +7 -0
- package/lib/getRGBForEntity.js +23 -0
- package/lib/getRGBForEntity.js.map +7 -0
- package/lib/groupEntitiesByLayer.cjs +34 -0
- package/lib/groupEntitiesByLayer.cjs.map +7 -0
- package/lib/groupEntitiesByLayer.js +14 -0
- package/lib/groupEntitiesByLayer.js.map +7 -0
- package/lib/handlers/blocks.cjs +93 -0
- package/lib/handlers/blocks.cjs.map +7 -0
- package/lib/handlers/blocks.js +63 -0
- package/lib/handlers/blocks.js.map +7 -0
- package/lib/handlers/entities.cjs +118 -0
- package/lib/handlers/entities.cjs.map +7 -0
- package/lib/handlers/entities.js +88 -0
- package/lib/handlers/entities.js.map +7 -0
- package/lib/handlers/entity/arc.cjs +82 -0
- package/lib/handlers/entity/arc.cjs.map +7 -0
- package/lib/handlers/entity/arc.js +47 -0
- package/lib/handlers/entity/arc.js.map +7 -0
- package/lib/handlers/entity/attdef.cjs +318 -0
- package/lib/handlers/entity/attdef.cjs.map +7 -0
- package/lib/handlers/entity/attdef.js +282 -0
- package/lib/handlers/entity/attdef.js.map +7 -0
- package/lib/handlers/entity/attrib.cjs +52 -0
- package/lib/handlers/entity/attrib.cjs.map +7 -0
- package/lib/handlers/entity/attrib.js +27 -0
- package/lib/handlers/entity/attrib.js.map +7 -0
- package/lib/handlers/entity/circle.cjs +73 -0
- package/lib/handlers/entity/circle.cjs.map +7 -0
- package/lib/handlers/entity/circle.js +38 -0
- package/lib/handlers/entity/circle.js.map +7 -0
- package/lib/handlers/entity/common.cjs +83 -0
- package/lib/handlers/entity/common.cjs.map +7 -0
- package/lib/handlers/entity/common.js +63 -0
- package/lib/handlers/entity/common.js.map +7 -0
- package/lib/handlers/entity/dimension.cjs +203 -0
- package/lib/handlers/entity/dimension.cjs.map +7 -0
- package/lib/handlers/entity/dimension.js +168 -0
- package/lib/handlers/entity/dimension.js.map +7 -0
- package/lib/handlers/entity/ellipse.cjs +88 -0
- package/lib/handlers/entity/ellipse.cjs.map +7 -0
- package/lib/handlers/entity/ellipse.js +53 -0
- package/lib/handlers/entity/ellipse.js.map +7 -0
- package/lib/handlers/entity/hatch.cjs +470 -0
- package/lib/handlers/entity/hatch.cjs.map +7 -0
- package/lib/handlers/entity/hatch.js +435 -0
- package/lib/handlers/entity/hatch.js.map +7 -0
- package/lib/handlers/entity/insert.cjs +106 -0
- package/lib/handlers/entity/insert.cjs.map +7 -0
- package/lib/handlers/entity/insert.js +71 -0
- package/lib/handlers/entity/insert.js.map +7 -0
- package/lib/handlers/entity/line.cjs +84 -0
- package/lib/handlers/entity/line.cjs.map +7 -0
- package/lib/handlers/entity/line.js +49 -0
- package/lib/handlers/entity/line.js.map +7 -0
- package/lib/handlers/entity/lwpolyline.cjs +82 -0
- package/lib/handlers/entity/lwpolyline.cjs.map +7 -0
- package/lib/handlers/entity/lwpolyline.js +47 -0
- package/lib/handlers/entity/lwpolyline.js.map +7 -0
- package/lib/handlers/entity/mtext.cjs +121 -0
- package/lib/handlers/entity/mtext.cjs.map +7 -0
- package/lib/handlers/entity/mtext.js +85 -0
- package/lib/handlers/entity/mtext.js.map +7 -0
- package/lib/handlers/entity/ole2Frame.cjs +98 -0
- package/lib/handlers/entity/ole2Frame.cjs.map +7 -0
- package/lib/handlers/entity/ole2Frame.js +63 -0
- package/lib/handlers/entity/ole2Frame.js.map +7 -0
- package/lib/handlers/entity/point.cjs +73 -0
- package/lib/handlers/entity/point.cjs.map +7 -0
- package/lib/handlers/entity/point.js +38 -0
- package/lib/handlers/entity/point.js.map +7 -0
- package/lib/handlers/entity/polyline.cjs +70 -0
- package/lib/handlers/entity/polyline.cjs.map +7 -0
- package/lib/handlers/entity/polyline.js +35 -0
- package/lib/handlers/entity/polyline.js.map +7 -0
- package/lib/handlers/entity/solid.cjs +101 -0
- package/lib/handlers/entity/solid.cjs.map +7 -0
- package/lib/handlers/entity/solid.js +66 -0
- package/lib/handlers/entity/solid.js.map +7 -0
- package/lib/handlers/entity/spline.cjs +109 -0
- package/lib/handlers/entity/spline.cjs.map +7 -0
- package/lib/handlers/entity/spline.js +74 -0
- package/lib/handlers/entity/spline.js.map +7 -0
- package/lib/handlers/entity/text.cjs +85 -0
- package/lib/handlers/entity/text.cjs.map +7 -0
- package/lib/handlers/entity/text.js +49 -0
- package/lib/handlers/entity/text.js.map +7 -0
- package/lib/handlers/entity/threeDFace.cjs +98 -0
- package/lib/handlers/entity/threeDFace.cjs.map +7 -0
- package/lib/handlers/entity/threeDFace.js +63 -0
- package/lib/handlers/entity/threeDFace.js.map +7 -0
- package/lib/handlers/entity/vertex.cjs +78 -0
- package/lib/handlers/entity/vertex.cjs.map +7 -0
- package/lib/handlers/entity/vertex.js +53 -0
- package/lib/handlers/entity/vertex.js.map +7 -0
- package/lib/handlers/entity/viewport.cjs +153 -0
- package/lib/handlers/entity/viewport.cjs.map +7 -0
- package/lib/handlers/entity/viewport.js +118 -0
- package/lib/handlers/entity/viewport.js.map +7 -0
- package/lib/handlers/header.cjs +92 -0
- package/lib/handlers/header.cjs.map +7 -0
- package/lib/handlers/header.js +72 -0
- package/lib/handlers/header.js.map +7 -0
- package/lib/handlers/objects.cjs +170 -0
- package/lib/handlers/objects.cjs.map +7 -0
- package/lib/handlers/objects.js +150 -0
- package/lib/handlers/objects.js.map +7 -0
- package/lib/handlers/tables.cjs +587 -0
- package/lib/handlers/tables.cjs.map +7 -0
- package/lib/handlers/tables.js +557 -0
- package/lib/handlers/tables.js.map +7 -0
- package/lib/index.cjs +60 -0
- package/lib/index.cjs.map +7 -0
- package/lib/index.js +19 -0
- package/lib/index.js.map +7 -0
- package/lib/parseString.cjs +118 -0
- package/lib/parseString.cjs.map +7 -0
- package/lib/parseString.js +88 -0
- package/lib/parseString.js.map +7 -0
- package/lib/toPolylines.cjs +69 -0
- package/lib/toPolylines.cjs.map +7 -0
- package/lib/toPolylines.js +39 -0
- package/lib/toPolylines.js.map +7 -0
- package/lib/toSVG.cjs +395 -0
- package/lib/toSVG.cjs.map +7 -0
- package/lib/toSVG.js +361 -0
- package/lib/toSVG.js.map +7 -0
- package/lib/types/arc-entity.cjs +17 -0
- package/lib/types/arc-entity.cjs.map +7 -0
- package/lib/types/arc-entity.js +1 -0
- package/lib/types/arc-entity.js.map +7 -0
- package/lib/types/base-entity.cjs +17 -0
- package/lib/types/base-entity.cjs.map +7 -0
- package/lib/types/base-entity.js +1 -0
- package/lib/types/base-entity.js.map +7 -0
- package/lib/types/circle-entity.cjs +17 -0
- package/lib/types/circle-entity.cjs.map +7 -0
- package/lib/types/circle-entity.js +1 -0
- package/lib/types/circle-entity.js.map +7 -0
- package/lib/types/common.cjs +17 -0
- package/lib/types/common.cjs.map +7 -0
- package/lib/types/common.js +1 -0
- package/lib/types/common.js.map +7 -0
- package/lib/types/dimension-entity.cjs +17 -0
- package/lib/types/dimension-entity.cjs.map +7 -0
- package/lib/types/dimension-entity.js +1 -0
- package/lib/types/dimension-entity.js.map +7 -0
- package/lib/types/dxf.cjs +17 -0
- package/lib/types/dxf.cjs.map +7 -0
- package/lib/types/dxf.js +1 -0
- package/lib/types/dxf.js.map +7 -0
- package/lib/types/ellipse-entity.cjs +17 -0
- package/lib/types/ellipse-entity.cjs.map +7 -0
- package/lib/types/ellipse-entity.js +1 -0
- package/lib/types/ellipse-entity.js.map +7 -0
- package/lib/types/entity.cjs +17 -0
- package/lib/types/entity.cjs.map +7 -0
- package/lib/types/entity.js +1 -0
- package/lib/types/entity.js.map +7 -0
- package/lib/types/handler-internal.cjs +17 -0
- package/lib/types/handler-internal.cjs.map +7 -0
- package/lib/types/handler-internal.js +1 -0
- package/lib/types/handler-internal.js.map +7 -0
- package/lib/types/handler.cjs +17 -0
- package/lib/types/handler.cjs.map +7 -0
- package/lib/types/handler.js +1 -0
- package/lib/types/handler.js.map +7 -0
- package/lib/types/hatch-entity.cjs +17 -0
- package/lib/types/hatch-entity.cjs.map +7 -0
- package/lib/types/hatch-entity.js +1 -0
- package/lib/types/hatch-entity.js.map +7 -0
- package/lib/types/helper.cjs +17 -0
- package/lib/types/helper.cjs.map +7 -0
- package/lib/types/helper.js +1 -0
- package/lib/types/helper.js.map +7 -0
- package/lib/types/index.cjs +77 -0
- package/lib/types/index.cjs.map +7 -0
- package/lib/types/index.js +29 -0
- package/lib/types/index.js.map +7 -0
- package/lib/types/insert-entity.cjs +17 -0
- package/lib/types/insert-entity.cjs.map +7 -0
- package/lib/types/insert-entity.js +1 -0
- package/lib/types/insert-entity.js.map +7 -0
- package/lib/types/layer-groups.cjs +17 -0
- package/lib/types/layer-groups.cjs.map +7 -0
- package/lib/types/layer-groups.js +1 -0
- package/lib/types/layer-groups.js.map +7 -0
- package/lib/types/line-entity.cjs +17 -0
- package/lib/types/line-entity.cjs.map +7 -0
- package/lib/types/line-entity.js +1 -0
- package/lib/types/line-entity.js.map +7 -0
- package/lib/types/mtext-entity.cjs +17 -0
- package/lib/types/mtext-entity.cjs.map +7 -0
- package/lib/types/mtext-entity.js +1 -0
- package/lib/types/mtext-entity.js.map +7 -0
- package/lib/types/ole2frame-entity.cjs +17 -0
- package/lib/types/ole2frame-entity.cjs.map +7 -0
- package/lib/types/ole2frame-entity.js +1 -0
- package/lib/types/ole2frame-entity.js.map +7 -0
- package/lib/types/options.cjs +17 -0
- package/lib/types/options.cjs.map +7 -0
- package/lib/types/options.js +1 -0
- package/lib/types/options.js.map +7 -0
- package/lib/types/point-entity.cjs +17 -0
- package/lib/types/point-entity.cjs.map +7 -0
- package/lib/types/point-entity.js +1 -0
- package/lib/types/point-entity.js.map +7 -0
- package/lib/types/polyline-entity.cjs +17 -0
- package/lib/types/polyline-entity.cjs.map +7 -0
- package/lib/types/polyline-entity.js +1 -0
- package/lib/types/polyline-entity.js.map +7 -0
- package/lib/types/polylines.cjs +17 -0
- package/lib/types/polylines.cjs.map +7 -0
- package/lib/types/polylines.js +1 -0
- package/lib/types/polylines.js.map +7 -0
- package/lib/types/solid-entity.cjs +17 -0
- package/lib/types/solid-entity.cjs.map +7 -0
- package/lib/types/solid-entity.js +1 -0
- package/lib/types/solid-entity.js.map +7 -0
- package/lib/types/spline-entity.cjs +17 -0
- package/lib/types/spline-entity.cjs.map +7 -0
- package/lib/types/spline-entity.js +1 -0
- package/lib/types/spline-entity.js.map +7 -0
- package/lib/types/svg.cjs +17 -0
- package/lib/types/svg.cjs.map +7 -0
- package/lib/types/svg.js +1 -0
- package/lib/types/svg.js.map +7 -0
- package/lib/types/tables.cjs +17 -0
- package/lib/types/tables.cjs.map +7 -0
- package/lib/types/tables.js +1 -0
- package/lib/types/tables.js.map +7 -0
- package/lib/types/text-entity.cjs +17 -0
- package/lib/types/text-entity.cjs.map +7 -0
- package/lib/types/text-entity.js +1 -0
- package/lib/types/text-entity.js.map +7 -0
- package/lib/types/util-types.cjs +17 -0
- package/lib/types/util-types.cjs.map +7 -0
- package/lib/types/util-types.js +1 -0
- package/lib/types/util-types.js.map +7 -0
- package/lib/types/vecks.d.cjs +2 -0
- package/lib/types/vecks.d.cjs.map +7 -0
- package/lib/types/vecks.d.js +1 -0
- package/lib/types/vecks.d.js.map +7 -0
- package/lib/types/viewport-entity.cjs +17 -0
- package/lib/types/viewport-entity.cjs.map +7 -0
- package/lib/types/viewport-entity.js +1 -0
- package/lib/types/viewport-entity.js.map +7 -0
- package/lib/types.cjs +23 -0
- package/lib/types.cjs.map +7 -0
- package/lib/types.js +2 -0
- package/lib/types.js.map +7 -0
- package/lib/util/bSpline.cjs +95 -0
- package/lib/util/bSpline.cjs.map +7 -0
- package/lib/util/bSpline.js +65 -0
- package/lib/util/bSpline.js.map +7 -0
- package/lib/util/colors.cjs +283 -0
- package/lib/util/colors.cjs.map +7 -0
- package/lib/util/colors.js +263 -0
- package/lib/util/colors.js.map +7 -0
- package/lib/util/createArcForLWPolyline.cjs +84 -0
- package/lib/util/createArcForLWPolyline.cjs.map +7 -0
- package/lib/util/createArcForLWPolyline.js +64 -0
- package/lib/util/createArcForLWPolyline.js.map +7 -0
- package/lib/util/dxfColorToRGB.cjs +115 -0
- package/lib/util/dxfColorToRGB.cjs.map +7 -0
- package/lib/util/dxfColorToRGB.js +90 -0
- package/lib/util/dxfColorToRGB.js.map +7 -0
- package/lib/util/insertKnot.cjs +77 -0
- package/lib/util/insertKnot.cjs.map +7 -0
- package/lib/util/insertKnot.js +57 -0
- package/lib/util/insertKnot.js.map +7 -0
- package/lib/util/logger.cjs +53 -0
- package/lib/util/logger.cjs.map +7 -0
- package/lib/util/logger.js +23 -0
- package/lib/util/logger.js.map +7 -0
- package/lib/util/rgbToColorAttribute.cjs +32 -0
- package/lib/util/rgbToColorAttribute.cjs.map +7 -0
- package/lib/util/rgbToColorAttribute.js +12 -0
- package/lib/util/rgbToColorAttribute.js.map +7 -0
- package/lib/util/rotate.cjs +30 -0
- package/lib/util/rotate.cjs.map +7 -0
- package/lib/util/rotate.js +10 -0
- package/lib/util/rotate.js.map +7 -0
- package/lib/util/round10.cjs +38 -0
- package/lib/util/round10.cjs.map +7 -0
- package/lib/util/round10.js +18 -0
- package/lib/util/round10.js.map +7 -0
- package/lib/util/toPiecewiseBezier.cjs +90 -0
- package/lib/util/toPiecewiseBezier.cjs.map +7 -0
- package/lib/util/toPiecewiseBezier.js +54 -0
- package/lib/util/toPiecewiseBezier.js.map +7 -0
- package/lib/util/transformBoundingBoxAndElement.cjs +80 -0
- package/lib/util/transformBoundingBoxAndElement.cjs.map +7 -0
- package/lib/util/transformBoundingBoxAndElement.js +60 -0
- package/lib/util/transformBoundingBoxAndElement.js.map +7 -0
- package/package.json +127 -0
- package/src/Helper.ts +71 -0
- package/src/applyTransforms.ts +54 -0
- package/src/cli.ts +41 -0
- package/src/config.ts +10 -0
- package/src/constants.ts +14 -0
- package/src/denormalise.ts +153 -0
- package/src/dimensionToSVG.ts +427 -0
- package/src/entityToPolyline.ts +338 -0
- package/src/getRGBForEntity.ts +28 -0
- package/src/groupEntitiesByLayer.ts +14 -0
- package/src/handlers/blocks.ts +65 -0
- package/src/handlers/entities.ts +111 -0
- package/src/handlers/entity/arc.ts +61 -0
- package/src/handlers/entity/attdef.ts +284 -0
- package/src/handlers/entity/attrib.ts +29 -0
- package/src/handlers/entity/circle.ts +47 -0
- package/src/handlers/entity/common.ts +79 -0
- package/src/handlers/entity/dimension.ts +217 -0
- package/src/handlers/entity/ellipse.ts +55 -0
- package/src/handlers/entity/hatch.ts +471 -0
- package/src/handlers/entity/insert.ts +73 -0
- package/src/handlers/entity/line.ts +56 -0
- package/src/handlers/entity/lwpolyline.ts +54 -0
- package/src/handlers/entity/mtext.ts +150 -0
- package/src/handlers/entity/ole2Frame.ts +64 -0
- package/src/handlers/entity/point.ts +47 -0
- package/src/handlers/entity/polyline.ts +49 -0
- package/src/handlers/entity/solid.ts +73 -0
- package/src/handlers/entity/spline.ts +103 -0
- package/src/handlers/entity/text.ts +83 -0
- package/src/handlers/entity/threeDFace.ts +69 -0
- package/src/handlers/entity/vertex.ts +55 -0
- package/src/handlers/entity/viewport.ts +119 -0
- package/src/handlers/header.ts +73 -0
- package/src/handlers/objects.ts +152 -0
- package/src/handlers/tables.ts +581 -0
- package/src/index.ts +19 -0
- package/src/parseString.ts +97 -0
- package/src/toPolylines.ts +47 -0
- package/src/toSVG.ts +518 -0
- package/src/types/README.md +91 -0
- package/src/types/arc-entity.ts +10 -0
- package/src/types/base-entity.ts +25 -0
- package/src/types/circle-entity.ts +8 -0
- package/src/types/common.ts +37 -0
- package/src/types/dimension-entity.ts +23 -0
- package/src/types/dxf.ts +64 -0
- package/src/types/ellipse-entity.ts +13 -0
- package/src/types/entity.ts +32 -0
- package/src/types/handler-internal.ts +51 -0
- package/src/types/handler.ts +10 -0
- package/src/types/hatch-entity.ts +127 -0
- package/src/types/helper.ts +12 -0
- package/src/types/index.ts +53 -0
- package/src/types/insert-entity.ts +19 -0
- package/src/types/layer-groups.ts +8 -0
- package/src/types/line-entity.ts +10 -0
- package/src/types/mtext-entity.ts +35 -0
- package/src/types/ole2frame-entity.ts +35 -0
- package/src/types/options.ts +17 -0
- package/src/types/point-entity.ts +7 -0
- package/src/types/polyline-entity.ts +20 -0
- package/src/types/polylines.ts +22 -0
- package/src/types/solid-entity.ts +9 -0
- package/src/types/spline-entity.ts +12 -0
- package/src/types/svg.ts +31 -0
- package/src/types/tables.ts +414 -0
- package/src/types/text-entity.ts +23 -0
- package/src/types/util-types.ts +27 -0
- package/src/types/vecks.d.ts +29 -0
- package/src/types/viewport-entity.ts +81 -0
- package/src/types.ts +5 -0
- package/src/util/bSpline.ts +97 -0
- package/src/util/colors.ts +266 -0
- package/src/util/createArcForLWPolyline.ts +93 -0
- package/src/util/diagram.png +0 -0
- package/src/util/dxfColorToRGB.ts +106 -0
- package/src/util/insertKnot.ts +69 -0
- package/src/util/logger.ts +23 -0
- package/src/util/rgbToColorAttribute.ts +14 -0
- package/src/util/rotate.ts +14 -0
- package/src/util/round10.ts +24 -0
- package/src/util/toPiecewiseBezier.ts +70 -0
- package/src/util/transformBoundingBoxAndElement.ts +74 -0
- package/tsconfig.json +34 -0
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
import common from "./common";
|
|
2
|
+
const TYPE = "DIMENSION";
|
|
3
|
+
const process = (tuples) => {
|
|
4
|
+
return tuples.reduce(
|
|
5
|
+
(entity, tuple) => {
|
|
6
|
+
const type = tuple[0];
|
|
7
|
+
const value = tuple[1];
|
|
8
|
+
switch (type) {
|
|
9
|
+
case 1:
|
|
10
|
+
entity.text = value;
|
|
11
|
+
break;
|
|
12
|
+
case 2:
|
|
13
|
+
entity.block = value;
|
|
14
|
+
break;
|
|
15
|
+
case 3:
|
|
16
|
+
entity.styleName = value;
|
|
17
|
+
break;
|
|
18
|
+
case 10:
|
|
19
|
+
entity.start.x = value;
|
|
20
|
+
break;
|
|
21
|
+
case 20:
|
|
22
|
+
entity.start.y = value;
|
|
23
|
+
break;
|
|
24
|
+
case 30:
|
|
25
|
+
entity.start.z = value;
|
|
26
|
+
break;
|
|
27
|
+
case 11:
|
|
28
|
+
entity.textMidpoint.x = value;
|
|
29
|
+
break;
|
|
30
|
+
case 21:
|
|
31
|
+
entity.textMidpoint.y = value;
|
|
32
|
+
break;
|
|
33
|
+
case 31:
|
|
34
|
+
entity.textMidpoint.z = value;
|
|
35
|
+
break;
|
|
36
|
+
case 13:
|
|
37
|
+
entity.measureStart.x = value;
|
|
38
|
+
break;
|
|
39
|
+
case 23:
|
|
40
|
+
entity.measureStart.y = value;
|
|
41
|
+
break;
|
|
42
|
+
case 33:
|
|
43
|
+
entity.measureStart.z = value;
|
|
44
|
+
break;
|
|
45
|
+
case 14:
|
|
46
|
+
entity.measureEnd.x = value;
|
|
47
|
+
break;
|
|
48
|
+
case 24:
|
|
49
|
+
entity.measureEnd.y = value;
|
|
50
|
+
break;
|
|
51
|
+
case 34:
|
|
52
|
+
entity.measureEnd.z = value;
|
|
53
|
+
break;
|
|
54
|
+
case 50:
|
|
55
|
+
entity.rotation = value;
|
|
56
|
+
break;
|
|
57
|
+
case 51:
|
|
58
|
+
entity.horizonRotation = value;
|
|
59
|
+
break;
|
|
60
|
+
case 52:
|
|
61
|
+
entity.extensionRotation = value;
|
|
62
|
+
break;
|
|
63
|
+
case 53:
|
|
64
|
+
entity.textRotation = value;
|
|
65
|
+
break;
|
|
66
|
+
case 70: {
|
|
67
|
+
const dimType = parseBitCombinationsFromValue(value);
|
|
68
|
+
if (dimType.ordinateType) {
|
|
69
|
+
entity.ordinateType = true;
|
|
70
|
+
}
|
|
71
|
+
if (dimType.uniqueBlockReference) {
|
|
72
|
+
entity.uniqueBlockReference = true;
|
|
73
|
+
}
|
|
74
|
+
if (dimType.userDefinedLocation) {
|
|
75
|
+
entity.userDefinedLocation = true;
|
|
76
|
+
}
|
|
77
|
+
entity.dimensionType = dimType.dimensionType;
|
|
78
|
+
break;
|
|
79
|
+
}
|
|
80
|
+
case 71:
|
|
81
|
+
entity.attachementPoint = value;
|
|
82
|
+
break;
|
|
83
|
+
case 210:
|
|
84
|
+
entity.extrudeDirection = entity.extrudeDirection || {
|
|
85
|
+
x: 0,
|
|
86
|
+
y: 0,
|
|
87
|
+
z: 0
|
|
88
|
+
};
|
|
89
|
+
entity.extrudeDirection.x = value;
|
|
90
|
+
break;
|
|
91
|
+
case 220:
|
|
92
|
+
entity.extrudeDirection = entity.extrudeDirection || {
|
|
93
|
+
x: 0,
|
|
94
|
+
y: 0,
|
|
95
|
+
z: 0
|
|
96
|
+
};
|
|
97
|
+
entity.extrudeDirection.y = value;
|
|
98
|
+
break;
|
|
99
|
+
case 230:
|
|
100
|
+
entity.extrudeDirection = entity.extrudeDirection || {
|
|
101
|
+
x: 0,
|
|
102
|
+
y: 0,
|
|
103
|
+
z: 0
|
|
104
|
+
};
|
|
105
|
+
entity.extrudeDirection.z = value;
|
|
106
|
+
break;
|
|
107
|
+
default:
|
|
108
|
+
Object.assign(entity, common(type, value));
|
|
109
|
+
break;
|
|
110
|
+
}
|
|
111
|
+
return entity;
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
type: TYPE,
|
|
115
|
+
start: { x: 0, y: 0, z: 0 },
|
|
116
|
+
measureStart: { x: 0, y: 0, z: 0 },
|
|
117
|
+
measureEnd: { x: 0, y: 0, z: 0 },
|
|
118
|
+
textMidpoint: { x: 0, y: 0, z: 0 },
|
|
119
|
+
attachementPoint: 1,
|
|
120
|
+
dimensionType: 0
|
|
121
|
+
}
|
|
122
|
+
);
|
|
123
|
+
};
|
|
124
|
+
function parseBitCombinationsFromValue(value) {
|
|
125
|
+
let uniqueBlockReference = false;
|
|
126
|
+
let ordinateType = false;
|
|
127
|
+
let userDefinedLocation = false;
|
|
128
|
+
if (value > 6) {
|
|
129
|
+
const alt1 = value - 32;
|
|
130
|
+
const alt2 = value - 64;
|
|
131
|
+
const alt3 = value - 32 - 64;
|
|
132
|
+
const alt4 = value - 32 - 128;
|
|
133
|
+
const alt5 = value - 32 - 64 - 128;
|
|
134
|
+
if (alt1 >= 0 && alt1 <= 6) {
|
|
135
|
+
uniqueBlockReference = true;
|
|
136
|
+
value = alt1;
|
|
137
|
+
} else if (alt2 >= 0 && alt2 <= 6) {
|
|
138
|
+
ordinateType = true;
|
|
139
|
+
value = alt2;
|
|
140
|
+
} else if (alt3 >= 0 && alt3 <= 6) {
|
|
141
|
+
uniqueBlockReference = true;
|
|
142
|
+
ordinateType = true;
|
|
143
|
+
value = alt3;
|
|
144
|
+
} else if (alt4 >= 0 && alt4 <= 6) {
|
|
145
|
+
uniqueBlockReference = true;
|
|
146
|
+
userDefinedLocation = true;
|
|
147
|
+
value = alt4;
|
|
148
|
+
} else if (alt5 >= 0 && alt5 <= 6) {
|
|
149
|
+
uniqueBlockReference = true;
|
|
150
|
+
ordinateType = true;
|
|
151
|
+
userDefinedLocation = true;
|
|
152
|
+
value = alt5;
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
return {
|
|
156
|
+
dimensionType: value,
|
|
157
|
+
uniqueBlockReference,
|
|
158
|
+
ordinateType,
|
|
159
|
+
userDefinedLocation
|
|
160
|
+
};
|
|
161
|
+
}
|
|
162
|
+
var dimension_default = { TYPE, process };
|
|
163
|
+
export {
|
|
164
|
+
TYPE,
|
|
165
|
+
dimension_default as default,
|
|
166
|
+
process
|
|
167
|
+
};
|
|
168
|
+
//# sourceMappingURL=dimension.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/handlers/entity/dimension.ts"],
|
|
4
|
+
"sourcesContent": ["import type { DXFTuple } from '../../types/dxf'\n\nimport common from './common'\n\nexport const TYPE = 'DIMENSION'\n\n\ninterface Point3D {\n x: number\n y: number\n z: number\n}\n\ninterface DimensionEntity {\n type: typeof TYPE\n block?: string\n start: Point3D\n textMidpoint: Point3D\n measureStart: Point3D\n measureEnd: Point3D\n rotation?: number\n horizonRotation?: number\n extensionRotation?: number\n textRotation?: number\n ordinateType?: boolean\n uniqueBlockReference?: boolean\n userDefinedLocation?: boolean\n dimensionType: number\n attachementPoint: number\n extrudeDirection?: Point3D\n [key: string]: unknown\n}\n\ninterface BitCombinationsResult {\n dimensionType: number\n uniqueBlockReference: boolean\n ordinateType: boolean\n userDefinedLocation: boolean\n}\n\nexport const process = (tuples: DXFTuple[]): DimensionEntity => {\n return tuples.reduce(\n (entity, tuple) => {\n const type = tuple[0]\n const value = tuple[1]\n switch (type) {\n case 1:\n entity.text = value as string\n break\n case 2:\n entity.block = value as string\n break\n case 3:\n entity.styleName = value as string\n break\n case 10:\n entity.start.x = value as number\n break\n case 20:\n entity.start.y = value as number\n break\n case 30:\n entity.start.z = value as number\n break\n case 11:\n entity.textMidpoint.x = value as number\n break\n case 21:\n entity.textMidpoint.y = value as number\n break\n case 31:\n entity.textMidpoint.z = value as number\n break\n case 13:\n entity.measureStart.x = value as number\n break\n case 23:\n entity.measureStart.y = value as number\n break\n case 33:\n entity.measureStart.z = value as number\n break\n case 14:\n entity.measureEnd.x = value as number\n break\n case 24:\n entity.measureEnd.y = value as number\n break\n case 34:\n entity.measureEnd.z = value as number\n break\n case 50:\n entity.rotation = value as number\n break\n case 51:\n entity.horizonRotation = value as number\n break\n case 52:\n entity.extensionRotation = value as number\n break\n case 53:\n entity.textRotation = value as number\n break\n case 70: {\n const dimType = parseBitCombinationsFromValue(value as number)\n if (dimType.ordinateType) {\n entity.ordinateType = true\n }\n if (dimType.uniqueBlockReference) {\n entity.uniqueBlockReference = true\n }\n if (dimType.userDefinedLocation) {\n entity.userDefinedLocation = true\n }\n entity.dimensionType = dimType.dimensionType\n break\n }\n case 71:\n entity.attachementPoint = value as number\n break\n case 210:\n entity.extrudeDirection = entity.extrudeDirection || {\n x: 0,\n y: 0,\n z: 0,\n }\n entity.extrudeDirection.x = value as number\n break\n case 220:\n entity.extrudeDirection = entity.extrudeDirection || {\n x: 0,\n y: 0,\n z: 0,\n }\n entity.extrudeDirection.y = value as number\n break\n case 230:\n entity.extrudeDirection = entity.extrudeDirection || {\n x: 0,\n y: 0,\n z: 0,\n }\n entity.extrudeDirection.z = 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 start: { x: 0, y: 0, z: 0 },\n measureStart: { x: 0, y: 0, z: 0 },\n measureEnd: { x: 0, y: 0, z: 0 },\n textMidpoint: { x: 0, y: 0, z: 0 },\n attachementPoint: 1,\n dimensionType: 0,\n } as DimensionEntity,\n )\n}\n\n/**\n * From DXF Reference for DIMENSION\n * Values 0-6 are integer values that represent the dimension type. Values 32, 64, and 128\n * are bit values, which are added to the integer values (value 32 is always set in R13 and\n * later releases)\n * 0 = Rotated, horizontal, or vertical; 1 = Aligned\n * 2 = Angular; 3 = Diameter; 4 = Radius\n * 5 = Angular 3 point; 6 = Ordinate\n * 32 = Indicates that the block reference (group code 2) is referenced by this dimension only\n * 64 = Ordinate type. This is a bit value (bit 7) used only with integer value 6. If set, ordinate is X-type; if not set, ordinate is Y-type\n * 128 = This is a bit value (bit 8) added to the other group 70 values if the dimension text has been positioned at a user-defined location rather than at the default location\n */\nfunction parseBitCombinationsFromValue(value: number): BitCombinationsResult {\n let uniqueBlockReference = false\n let ordinateType = false\n let userDefinedLocation = false\n\n // ToDo: Solve in some more clever way??\n if (value > 6) {\n const alt1 = value - 32\n const alt2 = value - 64\n const alt3 = value - 32 - 64\n const alt4 = value - 32 - 128\n const alt5 = value - 32 - 64 - 128\n\n if (alt1 >= 0 && alt1 <= 6) {\n uniqueBlockReference = true\n value = alt1\n } else if (alt2 >= 0 && alt2 <= 6) {\n ordinateType = true\n value = alt2\n } else if (alt3 >= 0 && alt3 <= 6) {\n uniqueBlockReference = true\n ordinateType = true\n value = alt3\n } else if (alt4 >= 0 && alt4 <= 6) {\n uniqueBlockReference = true\n userDefinedLocation = true\n value = alt4\n } else if (alt5 >= 0 && alt5 <= 6) {\n uniqueBlockReference = true\n ordinateType = true\n userDefinedLocation = true\n value = alt5\n }\n }\n return {\n dimensionType: value,\n uniqueBlockReference,\n ordinateType,\n userDefinedLocation,\n }\n}\n\nexport default { TYPE, process }\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var ellipse_exports = {};
|
|
30
|
+
__export(ellipse_exports, {
|
|
31
|
+
TYPE: () => TYPE,
|
|
32
|
+
default: () => ellipse_default,
|
|
33
|
+
process: () => process
|
|
34
|
+
});
|
|
35
|
+
module.exports = __toCommonJS(ellipse_exports);
|
|
36
|
+
var import_common = __toESM(require("./common"), 1);
|
|
37
|
+
const TYPE = "ELLIPSE";
|
|
38
|
+
const process = (tuples) => {
|
|
39
|
+
return tuples.reduce(
|
|
40
|
+
(entity, tuple) => {
|
|
41
|
+
const type = tuple[0];
|
|
42
|
+
const value = tuple[1];
|
|
43
|
+
switch (type) {
|
|
44
|
+
case 10:
|
|
45
|
+
entity.x = value;
|
|
46
|
+
break;
|
|
47
|
+
case 11:
|
|
48
|
+
entity.majorX = value;
|
|
49
|
+
break;
|
|
50
|
+
case 20:
|
|
51
|
+
entity.y = value;
|
|
52
|
+
break;
|
|
53
|
+
case 21:
|
|
54
|
+
entity.majorY = value;
|
|
55
|
+
break;
|
|
56
|
+
case 30:
|
|
57
|
+
entity.z = value;
|
|
58
|
+
break;
|
|
59
|
+
case 31:
|
|
60
|
+
entity.majorZ = value;
|
|
61
|
+
break;
|
|
62
|
+
case 40:
|
|
63
|
+
entity.axisRatio = value;
|
|
64
|
+
break;
|
|
65
|
+
case 41:
|
|
66
|
+
entity.startAngle = value;
|
|
67
|
+
break;
|
|
68
|
+
case 42:
|
|
69
|
+
entity.endAngle = value;
|
|
70
|
+
break;
|
|
71
|
+
default:
|
|
72
|
+
Object.assign(entity, (0, import_common.default)(type, value));
|
|
73
|
+
break;
|
|
74
|
+
}
|
|
75
|
+
return entity;
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
type: TYPE
|
|
79
|
+
}
|
|
80
|
+
);
|
|
81
|
+
};
|
|
82
|
+
var ellipse_default = { TYPE, process };
|
|
83
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
84
|
+
0 && (module.exports = {
|
|
85
|
+
TYPE,
|
|
86
|
+
process
|
|
87
|
+
});
|
|
88
|
+
//# sourceMappingURL=ellipse.cjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/handlers/entity/ellipse.ts"],
|
|
4
|
+
"sourcesContent": ["import type { DXFTuple } from '../../types/dxf'\n\nimport common from './common'\n\nimport type { EllipseEntity } from '../../types'\n\nexport const TYPE = 'ELLIPSE'\n\n\nexport const process = (tuples: DXFTuple[]): EllipseEntity => {\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.x = value as number\n break\n case 11:\n entity.majorX = value as number\n break\n case 20:\n entity.y = value as number\n break\n case 21:\n entity.majorY = value as number\n break\n case 30:\n entity.z = value as number\n break\n case 31:\n entity.majorZ = value as number\n break\n case 40:\n entity.axisRatio = value as number\n break\n case 41:\n entity.startAngle = value as number\n break\n case 42:\n entity.endAngle = 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 } as EllipseEntity,\n )\n}\n\nexport default { TYPE, process }\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,oBAAmB;AAIZ,MAAM,OAAO;AAGb,MAAM,UAAU,CAAC,WAAsC;AAC5D,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,IAAI;AACX;AAAA,QACF,KAAK;AACH,iBAAO,SAAS;AAChB;AAAA,QACF,KAAK;AACH,iBAAO,IAAI;AACX;AAAA,QACF,KAAK;AACH,iBAAO,SAAS;AAChB;AAAA,QACF,KAAK;AACH,iBAAO,IAAI;AACX;AAAA,QACF,KAAK;AACH,iBAAO,SAAS;AAChB;AAAA,QACF,KAAK;AACH,iBAAO,YAAY;AACnB;AAAA,QACF,KAAK;AACH,iBAAO,aAAa;AACpB;AAAA,QACF,KAAK;AACH,iBAAO,WAAW;AAClB;AAAA,QACF;AACE,iBAAO,OAAO,YAAQ,cAAAA,SAAO,MAAM,KAAK,CAAC;AACzC;AAAA,MACJ;AACA,aAAO;AAAA,IACT;AAAA,IACA;AAAA,MACE,MAAM;AAAA,IACR;AAAA,EACF;AACF;AAEA,IAAO,kBAAQ,EAAE,MAAM,QAAQ;",
|
|
6
|
+
"names": ["common"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import common from "./common";
|
|
2
|
+
const TYPE = "ELLIPSE";
|
|
3
|
+
const process = (tuples) => {
|
|
4
|
+
return tuples.reduce(
|
|
5
|
+
(entity, tuple) => {
|
|
6
|
+
const type = tuple[0];
|
|
7
|
+
const value = tuple[1];
|
|
8
|
+
switch (type) {
|
|
9
|
+
case 10:
|
|
10
|
+
entity.x = value;
|
|
11
|
+
break;
|
|
12
|
+
case 11:
|
|
13
|
+
entity.majorX = value;
|
|
14
|
+
break;
|
|
15
|
+
case 20:
|
|
16
|
+
entity.y = value;
|
|
17
|
+
break;
|
|
18
|
+
case 21:
|
|
19
|
+
entity.majorY = value;
|
|
20
|
+
break;
|
|
21
|
+
case 30:
|
|
22
|
+
entity.z = value;
|
|
23
|
+
break;
|
|
24
|
+
case 31:
|
|
25
|
+
entity.majorZ = value;
|
|
26
|
+
break;
|
|
27
|
+
case 40:
|
|
28
|
+
entity.axisRatio = value;
|
|
29
|
+
break;
|
|
30
|
+
case 41:
|
|
31
|
+
entity.startAngle = value;
|
|
32
|
+
break;
|
|
33
|
+
case 42:
|
|
34
|
+
entity.endAngle = value;
|
|
35
|
+
break;
|
|
36
|
+
default:
|
|
37
|
+
Object.assign(entity, common(type, value));
|
|
38
|
+
break;
|
|
39
|
+
}
|
|
40
|
+
return entity;
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
type: TYPE
|
|
44
|
+
}
|
|
45
|
+
);
|
|
46
|
+
};
|
|
47
|
+
var ellipse_default = { TYPE, process };
|
|
48
|
+
export {
|
|
49
|
+
TYPE,
|
|
50
|
+
ellipse_default as default,
|
|
51
|
+
process
|
|
52
|
+
};
|
|
53
|
+
//# sourceMappingURL=ellipse.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/handlers/entity/ellipse.ts"],
|
|
4
|
+
"sourcesContent": ["import type { DXFTuple } from '../../types/dxf'\n\nimport common from './common'\n\nimport type { EllipseEntity } from '../../types'\n\nexport const TYPE = 'ELLIPSE'\n\n\nexport const process = (tuples: DXFTuple[]): EllipseEntity => {\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.x = value as number\n break\n case 11:\n entity.majorX = value as number\n break\n case 20:\n entity.y = value as number\n break\n case 21:\n entity.majorY = value as number\n break\n case 30:\n entity.z = value as number\n break\n case 31:\n entity.majorZ = value as number\n break\n case 40:\n entity.axisRatio = value as number\n break\n case 41:\n entity.startAngle = value as number\n break\n case 42:\n entity.endAngle = 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 } as EllipseEntity,\n )\n}\n\nexport default { TYPE, process }\n"],
|
|
5
|
+
"mappings": "AAEA,OAAO,YAAY;AAIZ,MAAM,OAAO;AAGb,MAAM,UAAU,CAAC,WAAsC;AAC5D,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,IAAI;AACX;AAAA,QACF,KAAK;AACH,iBAAO,SAAS;AAChB;AAAA,QACF,KAAK;AACH,iBAAO,IAAI;AACX;AAAA,QACF,KAAK;AACH,iBAAO,SAAS;AAChB;AAAA,QACF,KAAK;AACH,iBAAO,IAAI;AACX;AAAA,QACF,KAAK;AACH,iBAAO,SAAS;AAChB;AAAA,QACF,KAAK;AACH,iBAAO,YAAY;AACnB;AAAA,QACF,KAAK;AACH,iBAAO,aAAa;AACpB;AAAA,QACF,KAAK;AACH,iBAAO,WAAW;AAClB;AAAA,QACF;AACE,iBAAO,OAAO,QAAQ,OAAO,MAAM,KAAK,CAAC;AACzC;AAAA,MACJ;AACA,aAAO;AAAA,IACT;AAAA,IACA;AAAA,MACE,MAAM;AAAA,IACR;AAAA,EACF;AACF;AAEA,IAAO,kBAAQ,EAAE,MAAM,QAAQ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|