@retikz/core 0.0.1-rc.3 → 0.1.0-alpha.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/LICENSE +21 -21
- package/dist/es/compile/compile.d.ts +27 -0
- package/dist/es/compile/compile.d.ts.map +1 -0
- package/dist/es/compile/compile.js +43 -0
- package/dist/es/compile/index.d.ts +9 -0
- package/dist/es/compile/index.d.ts.map +1 -0
- package/dist/es/compile/node.d.ts +76 -0
- package/dist/es/compile/node.d.ts.map +1 -0
- package/dist/es/compile/node.js +240 -0
- package/dist/es/compile/parseTarget.d.ts +25 -0
- package/dist/es/compile/parseTarget.d.ts.map +1 -0
- package/dist/es/compile/parseTarget.js +48 -0
- package/dist/es/compile/path.d.ts +29 -0
- package/dist/es/compile/path.d.ts.map +1 -0
- package/dist/es/compile/path.js +298 -0
- package/dist/es/compile/position.d.ts +9 -0
- package/dist/es/compile/position.d.ts.map +1 -0
- package/dist/es/compile/position.js +24 -0
- package/dist/es/compile/precision.d.ts +5 -0
- package/dist/es/compile/precision.d.ts.map +1 -0
- package/dist/es/compile/precision.js +8 -0
- package/dist/es/compile/text-metrics.d.ts +32 -0
- package/dist/es/compile/text-metrics.d.ts.map +1 -0
- package/dist/es/compile/text-metrics.js +8 -0
- package/dist/es/compile/view-box.d.ts +8 -0
- package/dist/es/compile/view-box.d.ts.map +1 -0
- package/dist/es/compile/view-box.js +31 -0
- package/dist/es/geometry/circle.d.ts +32 -0
- package/dist/es/geometry/circle.d.ts.map +1 -0
- package/dist/es/geometry/circle.js +79 -0
- package/dist/es/geometry/diamond.d.ts +44 -0
- package/dist/es/geometry/diamond.d.ts.map +1 -0
- package/dist/es/geometry/diamond.js +87 -0
- package/dist/es/geometry/ellipse.d.ts +38 -0
- package/dist/es/geometry/ellipse.d.ts.map +1 -0
- package/dist/es/geometry/ellipse.js +86 -0
- package/dist/es/geometry/index.d.ts +7 -0
- package/dist/es/geometry/index.d.ts.map +1 -0
- package/dist/es/geometry/point.d.ts +25 -0
- package/dist/es/geometry/point.d.ts.map +1 -0
- package/dist/es/geometry/point.js +34 -0
- package/dist/es/geometry/polar.d.ts +44 -0
- package/dist/es/geometry/polar.d.ts.map +1 -0
- package/dist/es/geometry/polar.js +45 -0
- package/dist/es/geometry/rect.d.ts +59 -0
- package/dist/es/geometry/rect.d.ts.map +1 -0
- package/dist/es/geometry/rect.js +120 -0
- package/dist/es/index.d.ts +20 -10
- package/dist/es/index.d.ts.map +1 -0
- package/dist/es/index.js +18 -12
- package/dist/es/ir/index.d.ts +5 -0
- package/dist/es/ir/index.d.ts.map +1 -0
- package/dist/es/ir/node.d.ts +73 -0
- package/dist/es/ir/node.d.ts.map +1 -0
- package/dist/es/ir/node.js +41 -0
- package/dist/es/ir/path/arrow.d.ts +26 -0
- package/dist/es/ir/path/arrow.d.ts.map +1 -0
- package/dist/es/ir/path/arrow.js +25 -0
- package/dist/es/ir/path/index.d.ts +5 -0
- package/dist/es/ir/path/index.d.ts.map +1 -0
- package/dist/es/ir/path/path.d.ts +123 -0
- package/dist/es/ir/path/path.d.ts.map +1 -0
- package/dist/es/ir/path/path.js +22 -0
- package/dist/es/ir/path/step.d.ts +116 -0
- package/dist/es/ir/path/step.d.ts.map +1 -0
- package/dist/es/ir/path/step.js +31 -0
- package/dist/es/ir/path/target.d.ts +5 -0
- package/dist/es/ir/path/target.d.ts.map +1 -0
- package/dist/es/ir/path/target.js +11 -0
- package/dist/es/ir/position/index.d.ts +3 -0
- package/dist/es/ir/position/index.d.ts.map +1 -0
- package/dist/es/ir/position/polar-position.d.ts +9 -0
- package/dist/es/ir/position/polar-position.d.ts.map +1 -0
- package/dist/es/ir/position/polar-position.js +18 -0
- package/dist/es/ir/position/position.d.ts +5 -0
- package/dist/es/ir/position/position.d.ts.map +1 -0
- package/dist/es/ir/position/position.js +5 -0
- package/dist/es/ir/scene.d.ts +424 -0
- package/dist/es/ir/scene.d.ts.map +1 -0
- package/dist/es/ir/scene.js +14 -0
- package/dist/es/parsers/index.d.ts +2 -0
- package/dist/es/parsers/index.d.ts.map +1 -0
- package/dist/es/parsers/parseWay.d.ts +71 -0
- package/dist/es/parsers/parseWay.d.ts.map +1 -0
- package/dist/es/parsers/parseWay.js +92 -0
- package/dist/es/primitive/ellipse.d.ts +32 -0
- package/dist/es/primitive/ellipse.d.ts.map +1 -0
- package/dist/es/primitive/group.d.ts +11 -0
- package/dist/es/primitive/group.d.ts.map +1 -0
- package/dist/es/primitive/index.d.ts +8 -0
- package/dist/es/primitive/index.d.ts.map +1 -0
- package/dist/es/primitive/path.d.ts +29 -0
- package/dist/es/primitive/path.d.ts.map +1 -0
- package/dist/es/primitive/rect.d.ts +28 -0
- package/dist/es/primitive/rect.d.ts.map +1 -0
- package/dist/es/primitive/scene.d.ts +21 -0
- package/dist/es/primitive/scene.d.ts.map +1 -0
- package/dist/es/primitive/text.d.ts +32 -0
- package/dist/es/primitive/text.d.ts.map +1 -0
- package/dist/es/primitive/view-box.d.ts +12 -0
- package/dist/es/primitive/view-box.d.ts.map +1 -0
- package/dist/es/types.d.ts +3 -0
- package/dist/es/types.d.ts.map +1 -0
- package/dist/lib/compile/compile.cjs +43 -0
- package/dist/lib/compile/compile.d.ts +27 -0
- package/dist/lib/compile/compile.d.ts.map +1 -0
- package/dist/lib/compile/index.d.ts +9 -0
- package/dist/lib/compile/index.d.ts.map +1 -0
- package/dist/lib/compile/node.cjs +244 -0
- package/dist/lib/compile/node.d.ts +76 -0
- package/dist/lib/compile/node.d.ts.map +1 -0
- package/dist/lib/compile/parseTarget.cjs +48 -0
- package/dist/lib/compile/parseTarget.d.ts +25 -0
- package/dist/lib/compile/parseTarget.d.ts.map +1 -0
- package/dist/lib/compile/path.cjs +298 -0
- package/dist/lib/compile/path.d.ts +29 -0
- package/dist/lib/compile/path.d.ts.map +1 -0
- package/dist/lib/compile/position.cjs +24 -0
- package/dist/lib/compile/position.d.ts +9 -0
- package/dist/lib/compile/position.d.ts.map +1 -0
- package/dist/lib/compile/precision.cjs +8 -0
- package/dist/lib/compile/precision.d.ts +5 -0
- package/dist/lib/compile/precision.d.ts.map +1 -0
- package/dist/lib/compile/text-metrics.cjs +8 -0
- package/dist/lib/compile/text-metrics.d.ts +32 -0
- package/dist/lib/compile/text-metrics.d.ts.map +1 -0
- package/dist/lib/compile/view-box.cjs +31 -0
- package/dist/lib/compile/view-box.d.ts +8 -0
- package/dist/lib/compile/view-box.d.ts.map +1 -0
- package/dist/lib/geometry/circle.cjs +79 -0
- package/dist/lib/geometry/circle.d.ts +32 -0
- package/dist/lib/geometry/circle.d.ts.map +1 -0
- package/dist/lib/geometry/diamond.cjs +87 -0
- package/dist/lib/geometry/diamond.d.ts +44 -0
- package/dist/lib/geometry/diamond.d.ts.map +1 -0
- package/dist/lib/geometry/ellipse.cjs +86 -0
- package/dist/lib/geometry/ellipse.d.ts +38 -0
- package/dist/lib/geometry/ellipse.d.ts.map +1 -0
- package/dist/lib/geometry/index.d.ts +7 -0
- package/dist/lib/geometry/index.d.ts.map +1 -0
- package/dist/lib/geometry/point.cjs +34 -0
- package/dist/lib/geometry/point.d.ts +25 -0
- package/dist/lib/geometry/point.d.ts.map +1 -0
- package/dist/lib/geometry/polar.cjs +45 -0
- package/dist/lib/geometry/polar.d.ts +44 -0
- package/dist/lib/geometry/polar.d.ts.map +1 -0
- package/dist/lib/geometry/rect.cjs +121 -0
- package/dist/lib/geometry/rect.d.ts +59 -0
- package/dist/lib/geometry/rect.d.ts.map +1 -0
- package/dist/lib/index.cjs +43 -11
- package/dist/lib/index.d.ts +20 -10
- package/dist/lib/index.d.ts.map +1 -0
- package/dist/lib/ir/index.d.ts +5 -0
- package/dist/lib/ir/index.d.ts.map +1 -0
- package/dist/lib/ir/node.cjs +42 -0
- package/dist/lib/ir/node.d.ts +73 -0
- package/dist/lib/ir/node.d.ts.map +1 -0
- package/dist/lib/ir/path/arrow.cjs +25 -0
- package/dist/lib/ir/path/arrow.d.ts +26 -0
- package/dist/lib/ir/path/arrow.d.ts.map +1 -0
- package/dist/lib/ir/path/index.d.ts +5 -0
- package/dist/lib/ir/path/index.d.ts.map +1 -0
- package/dist/lib/ir/path/path.cjs +22 -0
- package/dist/lib/ir/path/path.d.ts +123 -0
- package/dist/lib/ir/path/path.d.ts.map +1 -0
- package/dist/lib/ir/path/step.cjs +35 -0
- package/dist/lib/ir/path/step.d.ts +116 -0
- package/dist/lib/ir/path/step.d.ts.map +1 -0
- package/dist/lib/ir/path/target.cjs +11 -0
- package/dist/lib/ir/path/target.d.ts +5 -0
- package/dist/lib/ir/path/target.d.ts.map +1 -0
- package/dist/lib/ir/position/index.d.ts +3 -0
- package/dist/lib/ir/position/index.d.ts.map +1 -0
- package/dist/lib/ir/position/polar-position.cjs +18 -0
- package/dist/lib/ir/position/polar-position.d.ts +9 -0
- package/dist/lib/ir/position/polar-position.d.ts.map +1 -0
- package/dist/lib/ir/position/position.cjs +5 -0
- package/dist/lib/ir/position/position.d.ts +5 -0
- package/dist/lib/ir/position/position.d.ts.map +1 -0
- package/dist/lib/ir/scene.cjs +16 -0
- package/dist/lib/ir/scene.d.ts +424 -0
- package/dist/lib/ir/scene.d.ts.map +1 -0
- package/dist/lib/parsers/index.d.ts +2 -0
- package/dist/lib/parsers/index.d.ts.map +1 -0
- package/dist/lib/parsers/parseWay.cjs +93 -0
- package/dist/lib/parsers/parseWay.d.ts +71 -0
- package/dist/lib/parsers/parseWay.d.ts.map +1 -0
- package/dist/lib/primitive/ellipse.d.ts +32 -0
- package/dist/lib/primitive/ellipse.d.ts.map +1 -0
- package/dist/lib/primitive/group.d.ts +11 -0
- package/dist/lib/primitive/group.d.ts.map +1 -0
- package/dist/lib/primitive/index.d.ts +8 -0
- package/dist/lib/primitive/index.d.ts.map +1 -0
- package/dist/lib/primitive/path.d.ts +29 -0
- package/dist/lib/primitive/path.d.ts.map +1 -0
- package/dist/lib/primitive/rect.d.ts +28 -0
- package/dist/lib/primitive/rect.d.ts.map +1 -0
- package/dist/lib/primitive/scene.d.ts +21 -0
- package/dist/lib/primitive/scene.d.ts.map +1 -0
- package/dist/lib/primitive/text.d.ts +32 -0
- package/dist/lib/primitive/text.d.ts.map +1 -0
- package/dist/lib/primitive/view-box.d.ts +12 -0
- package/dist/lib/primitive/view-box.d.ts.map +1 -0
- package/dist/lib/types.d.ts +3 -0
- package/dist/lib/types.d.ts.map +1 -0
- package/package.json +26 -34
- package/README.md +0 -2
- package/dist/es/components/Scope.d.ts +0 -6
- package/dist/es/components/Scope.js +0 -12
- package/dist/es/components/TikZ.d.ts +0 -9
- package/dist/es/components/TikZ.js +0 -12
- package/dist/es/components/draw/Draw.d.ts +0 -26
- package/dist/es/components/draw/Draw.js +0 -59
- package/dist/es/components/draw/InnerDraw.d.ts +0 -17
- package/dist/es/components/draw/InnerDraw.js +0 -52
- package/dist/es/components/draw/arrow/circle.d.ts +0 -7
- package/dist/es/components/draw/arrow/circle.js +0 -20
- package/dist/es/components/draw/arrow/index.d.ts +0 -9
- package/dist/es/components/draw/arrow/index.js +0 -13
- package/dist/es/components/draw/arrow/stealth.d.ts +0 -7
- package/dist/es/components/draw/arrow/stealth.js +0 -29
- package/dist/es/components/draw/arrow/types.d.ts +0 -21
- package/dist/es/components/draw/common.d.ts +0 -4
- package/dist/es/components/draw/common.js +0 -12
- package/dist/es/components/draw/index.d.ts +0 -3
- package/dist/es/components/draw/index.js +0 -4
- package/dist/es/components/draw/segment/Segment.d.ts +0 -12
- package/dist/es/components/draw/segment/Segment.js +0 -41
- package/dist/es/components/draw/segment/index.d.ts +0 -15
- package/dist/es/components/draw/segment/index.js +0 -41
- package/dist/es/components/draw/segment/useArrow.d.ts +0 -12
- package/dist/es/components/draw/segment/useArrow.js +0 -52
- package/dist/es/components/draw/segment/useConvertWay.d.ts +0 -14
- package/dist/es/components/draw/segment/useConvertWay.js +0 -117
- package/dist/es/components/draw/types.d.ts +0 -29
- package/dist/es/components/node/InnerNode.d.ts +0 -33
- package/dist/es/components/node/InnerNode.js +0 -88
- package/dist/es/components/node/Node.d.ts +0 -93
- package/dist/es/components/node/Node.js +0 -88
- package/dist/es/components/node/_hooks/useNodeConfig.d.ts +0 -3
- package/dist/es/components/node/_hooks/useNodeConfig.js +0 -13
- package/dist/es/components/node/_hooks/useNodeContent.d.ts +0 -4
- package/dist/es/components/node/_hooks/useNodeContent.js +0 -30
- package/dist/es/components/node/_hooks/useNodeShape.d.ts +0 -4
- package/dist/es/components/node/_hooks/useNodeShape.js +0 -34
- package/dist/es/components/node/index.d.ts +0 -3
- package/dist/es/components/node/index.js +0 -4
- package/dist/es/components/path-node/PathNode.d.ts +0 -48
- package/dist/es/components/path-node/PathNode.js +0 -76
- package/dist/es/components/path-node/index.d.ts +0 -3
- package/dist/es/components/path-node/index.js +0 -4
- package/dist/es/components/path-node/useAnchor.d.ts +0 -6
- package/dist/es/components/path-node/useAnchor.js +0 -49
- package/dist/es/container/Group.d.ts +0 -6
- package/dist/es/container/Group.js +0 -8
- package/dist/es/container/Surface.d.ts +0 -19
- package/dist/es/container/Surface.js +0 -23
- package/dist/es/elements/Path.d.ts +0 -4
- package/dist/es/elements/Path.js +0 -14
- package/dist/es/elements/Rect.d.ts +0 -4
- package/dist/es/elements/Rect.js +0 -9
- package/dist/es/elements/Text.d.ts +0 -18
- package/dist/es/elements/Text.js +0 -35
- package/dist/es/hooks/context/useCalculate.d.ts +0 -7
- package/dist/es/hooks/context/useCalculate.js +0 -9
- package/dist/es/hooks/context/useNodes.d.ts +0 -9
- package/dist/es/hooks/context/useNodes.js +0 -33
- package/dist/es/hooks/context/usePath.d.ts +0 -13
- package/dist/es/hooks/context/usePath.js +0 -20
- package/dist/es/hooks/context/useScope.d.ts +0 -11
- package/dist/es/hooks/context/useScope.js +0 -7
- package/dist/es/hooks/useForceUpdate.d.ts +0 -2
- package/dist/es/hooks/useForceUpdate.js +0 -8
- package/dist/es/model/component/node.d.ts +0 -45
- package/dist/es/model/component/node.js +0 -164
- package/dist/es/model/component/path.d.ts +0 -19
- package/dist/es/model/component/path.js +0 -47
- package/dist/es/model/equation/line.d.ts +0 -21
- package/dist/es/model/equation/line.js +0 -76
- package/dist/es/model/geometry/point/DescartesPoint.d.ts +0 -21
- package/dist/es/model/geometry/point/DescartesPoint.js +0 -50
- package/dist/es/model/geometry/point/PolarPoint.d.ts +0 -14
- package/dist/es/model/geometry/point/PolarPoint.js +0 -27
- package/dist/es/node_modules/.pnpm/d3-color@3.1.0/node_modules/d3-color/src/color.js +0 -338
- package/dist/es/node_modules/.pnpm/d3-color@3.1.0/node_modules/d3-color/src/define.js +0 -13
- package/dist/es/node_modules/.pnpm/d3-path@3.1.0/node_modules/d3-path/src/path.js +0 -88
- package/dist/es/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/array.js +0 -6
- package/dist/es/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/constant.js +0 -8
- package/dist/es/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/curve/linear.js +0 -39
- package/dist/es/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/line.js +0 -41
- package/dist/es/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/path.js +0 -19
- package/dist/es/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/point.js +0 -10
- package/dist/es/test.d.ts +0 -3
- package/dist/es/types/coordinate/descartes.d.ts +0 -23
- package/dist/es/types/coordinate/index.d.ts +0 -5
- package/dist/es/types/coordinate/polar.d.ts +0 -5
- package/dist/es/types/distance/index.d.ts +0 -8
- package/dist/es/types/distance/sep.d.ts +0 -9
- package/dist/es/types/shape/index.d.ts +0 -8
- package/dist/es/types/shape/index.js +0 -9
- package/dist/es/types/shape/rect.d.ts +0 -25
- package/dist/es/types/shape/rect.js +0 -30
- package/dist/es/types/svg/font.d.ts +0 -10
- package/dist/es/types/svg/stroke.d.ts +0 -10
- package/dist/es/types/tikz/index.d.ts +0 -6
- package/dist/es/utils/compare.d.ts +0 -4
- package/dist/es/utils/compare.js +0 -20
- package/dist/es/utils/css.d.ts +0 -6
- package/dist/es/utils/css.js +0 -26
- package/dist/es/utils/math.d.ts +0 -9
- package/dist/es/utils/math.js +0 -26
- package/dist/es/utils/string.d.ts +0 -7
- package/dist/es/utils/string.js +0 -7
- package/dist/es/utils/style/font.d.ts +0 -17
- package/dist/es/utils/style/font.js +0 -34
- package/dist/es/utils/style/stroke.d.ts +0 -20
- package/dist/es/utils/style/stroke.js +0 -42
- package/dist/lib/components/Scope.cjs +0 -12
- package/dist/lib/components/Scope.d.ts +0 -6
- package/dist/lib/components/TikZ.cjs +0 -12
- package/dist/lib/components/TikZ.d.ts +0 -9
- package/dist/lib/components/draw/Draw.cjs +0 -59
- package/dist/lib/components/draw/Draw.d.ts +0 -26
- package/dist/lib/components/draw/InnerDraw.cjs +0 -52
- package/dist/lib/components/draw/InnerDraw.d.ts +0 -17
- package/dist/lib/components/draw/arrow/circle.cjs +0 -20
- package/dist/lib/components/draw/arrow/circle.d.ts +0 -7
- package/dist/lib/components/draw/arrow/index.cjs +0 -13
- package/dist/lib/components/draw/arrow/index.d.ts +0 -9
- package/dist/lib/components/draw/arrow/stealth.cjs +0 -29
- package/dist/lib/components/draw/arrow/stealth.d.ts +0 -7
- package/dist/lib/components/draw/arrow/types.d.ts +0 -21
- package/dist/lib/components/draw/common.cjs +0 -12
- package/dist/lib/components/draw/common.d.ts +0 -4
- package/dist/lib/components/draw/index.cjs +0 -4
- package/dist/lib/components/draw/index.d.ts +0 -3
- package/dist/lib/components/draw/segment/Segment.cjs +0 -41
- package/dist/lib/components/draw/segment/Segment.d.ts +0 -12
- package/dist/lib/components/draw/segment/index.cjs +0 -41
- package/dist/lib/components/draw/segment/index.d.ts +0 -15
- package/dist/lib/components/draw/segment/useArrow.cjs +0 -52
- package/dist/lib/components/draw/segment/useArrow.d.ts +0 -12
- package/dist/lib/components/draw/segment/useConvertWay.cjs +0 -117
- package/dist/lib/components/draw/segment/useConvertWay.d.ts +0 -14
- package/dist/lib/components/draw/types.d.ts +0 -29
- package/dist/lib/components/node/InnerNode.cjs +0 -88
- package/dist/lib/components/node/InnerNode.d.ts +0 -33
- package/dist/lib/components/node/Node.cjs +0 -88
- package/dist/lib/components/node/Node.d.ts +0 -93
- package/dist/lib/components/node/_hooks/useNodeConfig.cjs +0 -13
- package/dist/lib/components/node/_hooks/useNodeConfig.d.ts +0 -3
- package/dist/lib/components/node/_hooks/useNodeContent.cjs +0 -30
- package/dist/lib/components/node/_hooks/useNodeContent.d.ts +0 -4
- package/dist/lib/components/node/_hooks/useNodeShape.cjs +0 -34
- package/dist/lib/components/node/_hooks/useNodeShape.d.ts +0 -4
- package/dist/lib/components/node/index.cjs +0 -4
- package/dist/lib/components/node/index.d.ts +0 -3
- package/dist/lib/components/path-node/PathNode.cjs +0 -76
- package/dist/lib/components/path-node/PathNode.d.ts +0 -48
- package/dist/lib/components/path-node/index.cjs +0 -4
- package/dist/lib/components/path-node/index.d.ts +0 -3
- package/dist/lib/components/path-node/useAnchor.cjs +0 -49
- package/dist/lib/components/path-node/useAnchor.d.ts +0 -6
- package/dist/lib/container/Group.cjs +0 -8
- package/dist/lib/container/Group.d.ts +0 -6
- package/dist/lib/container/Surface.cjs +0 -23
- package/dist/lib/container/Surface.d.ts +0 -19
- package/dist/lib/elements/Path.cjs +0 -14
- package/dist/lib/elements/Path.d.ts +0 -4
- package/dist/lib/elements/Rect.cjs +0 -9
- package/dist/lib/elements/Rect.d.ts +0 -4
- package/dist/lib/elements/Text.cjs +0 -35
- package/dist/lib/elements/Text.d.ts +0 -18
- package/dist/lib/hooks/context/useCalculate.cjs +0 -9
- package/dist/lib/hooks/context/useCalculate.d.ts +0 -7
- package/dist/lib/hooks/context/useNodes.cjs +0 -33
- package/dist/lib/hooks/context/useNodes.d.ts +0 -9
- package/dist/lib/hooks/context/usePath.cjs +0 -20
- package/dist/lib/hooks/context/usePath.d.ts +0 -13
- package/dist/lib/hooks/context/useScope.cjs +0 -7
- package/dist/lib/hooks/context/useScope.d.ts +0 -11
- package/dist/lib/hooks/useForceUpdate.cjs +0 -8
- package/dist/lib/hooks/useForceUpdate.d.ts +0 -2
- package/dist/lib/model/component/node.cjs +0 -164
- package/dist/lib/model/component/node.d.ts +0 -45
- package/dist/lib/model/component/path.cjs +0 -47
- package/dist/lib/model/component/path.d.ts +0 -19
- package/dist/lib/model/equation/line.cjs +0 -76
- package/dist/lib/model/equation/line.d.ts +0 -21
- package/dist/lib/model/geometry/point/DescartesPoint.cjs +0 -50
- package/dist/lib/model/geometry/point/DescartesPoint.d.ts +0 -21
- package/dist/lib/model/geometry/point/PolarPoint.cjs +0 -27
- package/dist/lib/model/geometry/point/PolarPoint.d.ts +0 -14
- package/dist/lib/node_modules/.pnpm/d3-color@3.1.0/node_modules/d3-color/src/color.cjs +0 -338
- package/dist/lib/node_modules/.pnpm/d3-color@3.1.0/node_modules/d3-color/src/define.cjs +0 -13
- package/dist/lib/node_modules/.pnpm/d3-path@3.1.0/node_modules/d3-path/src/path.cjs +0 -88
- package/dist/lib/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/array.cjs +0 -6
- package/dist/lib/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/constant.cjs +0 -8
- package/dist/lib/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/curve/linear.cjs +0 -39
- package/dist/lib/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/line.cjs +0 -41
- package/dist/lib/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/path.cjs +0 -19
- package/dist/lib/node_modules/.pnpm/d3-shape@3.2.0/node_modules/d3-shape/src/point.cjs +0 -10
- package/dist/lib/test.d.ts +0 -3
- package/dist/lib/types/coordinate/descartes.d.ts +0 -23
- package/dist/lib/types/coordinate/index.d.ts +0 -5
- package/dist/lib/types/coordinate/polar.d.ts +0 -5
- package/dist/lib/types/distance/index.d.ts +0 -8
- package/dist/lib/types/distance/sep.d.ts +0 -9
- package/dist/lib/types/shape/index.cjs +0 -9
- package/dist/lib/types/shape/index.d.ts +0 -8
- package/dist/lib/types/shape/rect.cjs +0 -30
- package/dist/lib/types/shape/rect.d.ts +0 -25
- package/dist/lib/types/svg/font.d.ts +0 -10
- package/dist/lib/types/svg/stroke.d.ts +0 -10
- package/dist/lib/types/tikz/index.d.ts +0 -6
- package/dist/lib/utils/compare.cjs +0 -20
- package/dist/lib/utils/compare.d.ts +0 -4
- package/dist/lib/utils/css.cjs +0 -26
- package/dist/lib/utils/css.d.ts +0 -6
- package/dist/lib/utils/math.cjs +0 -26
- package/dist/lib/utils/math.d.ts +0 -9
- package/dist/lib/utils/string.cjs +0 -7
- package/dist/lib/utils/string.d.ts +0 -7
- package/dist/lib/utils/style/font.cjs +0 -34
- package/dist/lib/utils/style/font.d.ts +0 -17
- package/dist/lib/utils/style/stroke.cjs +0 -42
- package/dist/lib/utils/style/stroke.d.ts +0 -20
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
//#region src/geometry/diamond.ts
|
|
2
|
+
var localToWorld = (d, local) => {
|
|
3
|
+
const angle = d.rotate ?? 0;
|
|
4
|
+
if (angle === 0) return [d.x + local[0], d.y + local[1]];
|
|
5
|
+
const cos = Math.cos(angle);
|
|
6
|
+
const sin = Math.sin(angle);
|
|
7
|
+
return [d.x + local[0] * cos - local[1] * sin, d.y + local[0] * sin + local[1] * cos];
|
|
8
|
+
};
|
|
9
|
+
var worldToLocal = (d, world) => {
|
|
10
|
+
const tx = world[0] - d.x;
|
|
11
|
+
const ty = world[1] - d.y;
|
|
12
|
+
const angle = d.rotate ?? 0;
|
|
13
|
+
if (angle === 0) return [tx, ty];
|
|
14
|
+
const cos = Math.cos(angle);
|
|
15
|
+
const sin = Math.sin(angle);
|
|
16
|
+
return [tx * cos + ty * sin, -tx * sin + ty * cos];
|
|
17
|
+
};
|
|
18
|
+
/** 菱形相关基础工具 */
|
|
19
|
+
var diamond = {
|
|
20
|
+
/** 中心 */
|
|
21
|
+
center: (d) => [d.x, d.y],
|
|
22
|
+
/**
|
|
23
|
+
* 判断点是否在菱形内(含边界,考虑旋转)。
|
|
24
|
+
* 菱形方程:|x|/halfA + |y|/halfB ≤ 1。
|
|
25
|
+
*/
|
|
26
|
+
contains: (d, p) => {
|
|
27
|
+
const [lx, ly] = worldToLocal(d, p);
|
|
28
|
+
return Math.abs(lx) / d.halfA + Math.abs(ly) / d.halfB <= 1.000000001;
|
|
29
|
+
},
|
|
30
|
+
/**
|
|
31
|
+
* 9 个标准 anchor 的世界坐标。
|
|
32
|
+
* - N/S/E/W:四个顶点
|
|
33
|
+
* - NE/NW/SE/SW:四条边的中点
|
|
34
|
+
* - center:几何中心
|
|
35
|
+
*/
|
|
36
|
+
anchor: (d, name) => {
|
|
37
|
+
let lx = 0;
|
|
38
|
+
let ly = 0;
|
|
39
|
+
switch (name) {
|
|
40
|
+
case "center": break;
|
|
41
|
+
case "north":
|
|
42
|
+
ly = -d.halfB;
|
|
43
|
+
break;
|
|
44
|
+
case "south":
|
|
45
|
+
ly = d.halfB;
|
|
46
|
+
break;
|
|
47
|
+
case "east":
|
|
48
|
+
lx = d.halfA;
|
|
49
|
+
break;
|
|
50
|
+
case "west":
|
|
51
|
+
lx = -d.halfA;
|
|
52
|
+
break;
|
|
53
|
+
case "north-east":
|
|
54
|
+
lx = d.halfA / 2;
|
|
55
|
+
ly = -d.halfB / 2;
|
|
56
|
+
break;
|
|
57
|
+
case "north-west":
|
|
58
|
+
lx = -d.halfA / 2;
|
|
59
|
+
ly = -d.halfB / 2;
|
|
60
|
+
break;
|
|
61
|
+
case "south-east":
|
|
62
|
+
lx = d.halfA / 2;
|
|
63
|
+
ly = d.halfB / 2;
|
|
64
|
+
break;
|
|
65
|
+
case "south-west":
|
|
66
|
+
lx = -d.halfA / 2;
|
|
67
|
+
ly = d.halfB / 2;
|
|
68
|
+
break;
|
|
69
|
+
}
|
|
70
|
+
return localToWorld(d, [lx, ly]);
|
|
71
|
+
},
|
|
72
|
+
/**
|
|
73
|
+
* 从中心向 toward 方向画射线,求与菱形 4 条边之一的交点。
|
|
74
|
+
* 菱形方程:|x|/halfA + |y|/halfB = 1。
|
|
75
|
+
* 沿方向 (lx, ly) 缩放 t 倍命中:t × (|lx|/halfA + |ly|/halfB) = 1
|
|
76
|
+
* → t = 1 / (|lx|/halfA + |ly|/halfB)。
|
|
77
|
+
*/
|
|
78
|
+
boundaryPoint: (d, toward) => {
|
|
79
|
+
const [lx, ly] = worldToLocal(d, toward);
|
|
80
|
+
const denom = Math.abs(lx) / d.halfA + Math.abs(ly) / d.halfB;
|
|
81
|
+
if (denom === 0) return [d.x, d.y];
|
|
82
|
+
const t = 1 / denom;
|
|
83
|
+
return localToWorld(d, [lx * t, ly * t]);
|
|
84
|
+
}
|
|
85
|
+
};
|
|
86
|
+
//#endregion
|
|
87
|
+
export { diamond };
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { Position } from './point';
|
|
2
|
+
/** 椭圆:几何中心 (x, y) + 半长轴 rx / 半短轴 ry + 可选旋转(弧度) */
|
|
3
|
+
export type Ellipse = {
|
|
4
|
+
/** 中心横坐标 */
|
|
5
|
+
x: number;
|
|
6
|
+
/** 中心纵坐标 */
|
|
7
|
+
y: number;
|
|
8
|
+
/** 半长轴(沿本地 +x 方向) */
|
|
9
|
+
rx: number;
|
|
10
|
+
/** 半短轴(沿本地 +y 方向) */
|
|
11
|
+
ry: number;
|
|
12
|
+
/** 绕几何中心旋转弧度;省略或 0 表示不旋转 */
|
|
13
|
+
rotate?: number;
|
|
14
|
+
};
|
|
15
|
+
/** 椭圆 9 个标准 anchor 名(含义与 RECT_ANCHORS 一致) */
|
|
16
|
+
export type EllipseAnchor = 'center' | 'north' | 'south' | 'east' | 'west' | 'north-east' | 'north-west' | 'south-east' | 'south-west';
|
|
17
|
+
/** 椭圆相关基础工具 */
|
|
18
|
+
export declare const ellipse: {
|
|
19
|
+
/** 中心 */
|
|
20
|
+
center: (e: Ellipse) => Position;
|
|
21
|
+
/** 判断点是否在椭圆内(含边界,考虑旋转) */
|
|
22
|
+
contains: (e: Ellipse, p: Position) => boolean;
|
|
23
|
+
/**
|
|
24
|
+
* 9 个标准 anchor 的世界坐标。
|
|
25
|
+
* 对角 anchor(NE/NW/SE/SW)取参数曲线 t=π/4 处的点:
|
|
26
|
+
* (rx·cos(π/4), ry·sin(π/4)) = (rx/√2, ry/√2)。
|
|
27
|
+
* 这与 TikZ 椭圆对角 anchor 的"参数等分"约定一致。
|
|
28
|
+
*/
|
|
29
|
+
anchor: (e: Ellipse, name: EllipseAnchor) => Position;
|
|
30
|
+
/**
|
|
31
|
+
* 从中心向 toward 方向画射线,求与椭圆的交点。
|
|
32
|
+
* 椭圆方程:(x/rx)² + (y/ry)² = 1。
|
|
33
|
+
* 沿方向 (lx, ly) 缩放 t 倍命中:t² × ((lx/rx)² + (ly/ry)²) = 1
|
|
34
|
+
* → t = 1 / √((lx/rx)² + (ly/ry)²)。
|
|
35
|
+
*/
|
|
36
|
+
boundaryPoint: (e: Ellipse, toward: Position) => Position;
|
|
37
|
+
};
|
|
38
|
+
//# sourceMappingURL=ellipse.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ellipse.d.ts","sourceRoot":"","sources":["../../../src/geometry/ellipse.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAExC,kDAAkD;AAClD,MAAM,MAAM,OAAO,GAAG;IACpB,YAAY;IACZ,CAAC,EAAE,MAAM,CAAC;IACV,YAAY;IACZ,CAAC,EAAE,MAAM,CAAC;IACV,qBAAqB;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,qBAAqB;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,4BAA4B;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAIF,6CAA6C;AAC7C,MAAM,MAAM,aAAa,GACrB,QAAQ,GACR,OAAO,GACP,OAAO,GACP,MAAM,GACN,MAAM,GACN,YAAY,GACZ,YAAY,GACZ,YAAY,GACZ,YAAY,CAAC;AAoBjB,eAAe;AACf,eAAO,MAAM,OAAO;IAClB,SAAS;gBACG,OAAO,KAAG,QAAQ;IAC9B,0BAA0B;kBACZ,OAAO,KAAK,QAAQ,KAAG,OAAO;IAI5C;;;;;OAKG;gBACS,OAAO,QAAQ,aAAa,KAAG,QAAQ;IAqCnD;;;;;OAKG;uBACgB,OAAO,UAAU,QAAQ,KAAG,QAAQ;CAQxD,CAAC"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
//#region src/geometry/ellipse.ts
|
|
2
|
+
var SQRT_HALF = Math.SQRT1_2;
|
|
3
|
+
var localToWorld = (e, local) => {
|
|
4
|
+
const angle = e.rotate ?? 0;
|
|
5
|
+
if (angle === 0) return [e.x + local[0], e.y + local[1]];
|
|
6
|
+
const cos = Math.cos(angle);
|
|
7
|
+
const sin = Math.sin(angle);
|
|
8
|
+
return [e.x + local[0] * cos - local[1] * sin, e.y + local[0] * sin + local[1] * cos];
|
|
9
|
+
};
|
|
10
|
+
var worldToLocal = (e, world) => {
|
|
11
|
+
const tx = world[0] - e.x;
|
|
12
|
+
const ty = world[1] - e.y;
|
|
13
|
+
const angle = e.rotate ?? 0;
|
|
14
|
+
if (angle === 0) return [tx, ty];
|
|
15
|
+
const cos = Math.cos(angle);
|
|
16
|
+
const sin = Math.sin(angle);
|
|
17
|
+
return [tx * cos + ty * sin, -tx * sin + ty * cos];
|
|
18
|
+
};
|
|
19
|
+
/** 椭圆相关基础工具 */
|
|
20
|
+
var ellipse = {
|
|
21
|
+
/** 中心 */
|
|
22
|
+
center: (e) => [e.x, e.y],
|
|
23
|
+
/** 判断点是否在椭圆内(含边界,考虑旋转) */
|
|
24
|
+
contains: (e, p) => {
|
|
25
|
+
const [lx, ly] = worldToLocal(e, p);
|
|
26
|
+
return lx * lx / (e.rx * e.rx) + ly * ly / (e.ry * e.ry) <= 1;
|
|
27
|
+
},
|
|
28
|
+
/**
|
|
29
|
+
* 9 个标准 anchor 的世界坐标。
|
|
30
|
+
* 对角 anchor(NE/NW/SE/SW)取参数曲线 t=π/4 处的点:
|
|
31
|
+
* (rx·cos(π/4), ry·sin(π/4)) = (rx/√2, ry/√2)。
|
|
32
|
+
* 这与 TikZ 椭圆对角 anchor 的"参数等分"约定一致。
|
|
33
|
+
*/
|
|
34
|
+
anchor: (e, name) => {
|
|
35
|
+
let lx = 0;
|
|
36
|
+
let ly = 0;
|
|
37
|
+
switch (name) {
|
|
38
|
+
case "center": break;
|
|
39
|
+
case "north":
|
|
40
|
+
ly = -e.ry;
|
|
41
|
+
break;
|
|
42
|
+
case "south":
|
|
43
|
+
ly = e.ry;
|
|
44
|
+
break;
|
|
45
|
+
case "east":
|
|
46
|
+
lx = e.rx;
|
|
47
|
+
break;
|
|
48
|
+
case "west":
|
|
49
|
+
lx = -e.rx;
|
|
50
|
+
break;
|
|
51
|
+
case "north-east":
|
|
52
|
+
lx = e.rx * SQRT_HALF;
|
|
53
|
+
ly = -e.ry * SQRT_HALF;
|
|
54
|
+
break;
|
|
55
|
+
case "north-west":
|
|
56
|
+
lx = -e.rx * SQRT_HALF;
|
|
57
|
+
ly = -e.ry * SQRT_HALF;
|
|
58
|
+
break;
|
|
59
|
+
case "south-east":
|
|
60
|
+
lx = e.rx * SQRT_HALF;
|
|
61
|
+
ly = e.ry * SQRT_HALF;
|
|
62
|
+
break;
|
|
63
|
+
case "south-west":
|
|
64
|
+
lx = -e.rx * SQRT_HALF;
|
|
65
|
+
ly = e.ry * SQRT_HALF;
|
|
66
|
+
break;
|
|
67
|
+
}
|
|
68
|
+
return localToWorld(e, [lx, ly]);
|
|
69
|
+
},
|
|
70
|
+
/**
|
|
71
|
+
* 从中心向 toward 方向画射线,求与椭圆的交点。
|
|
72
|
+
* 椭圆方程:(x/rx)² + (y/ry)² = 1。
|
|
73
|
+
* 沿方向 (lx, ly) 缩放 t 倍命中:t² × ((lx/rx)² + (ly/ry)²) = 1
|
|
74
|
+
* → t = 1 / √((lx/rx)² + (ly/ry)²)。
|
|
75
|
+
*/
|
|
76
|
+
boundaryPoint: (e, toward) => {
|
|
77
|
+
const [lx, ly] = worldToLocal(e, toward);
|
|
78
|
+
if (lx === 0 && ly === 0) return [e.x, e.y];
|
|
79
|
+
const a = lx / e.rx;
|
|
80
|
+
const b = ly / e.ry;
|
|
81
|
+
const t = 1 / Math.sqrt(a * a + b * b);
|
|
82
|
+
return localToWorld(e, [lx * t, ly * t]);
|
|
83
|
+
}
|
|
84
|
+
};
|
|
85
|
+
//#endregion
|
|
86
|
+
export { ellipse };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/geometry/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { PolarPosition } from './polar';
|
|
2
|
+
/** 笛卡尔坐标点 [x, y] */
|
|
3
|
+
export type Position = [number, number];
|
|
4
|
+
/** 二维向量 / 坐标的基础运算工具集 */
|
|
5
|
+
export declare const point: {
|
|
6
|
+
/** 两点相加(向量加法):a + b */
|
|
7
|
+
add: (a: Position, b: Position) => Position;
|
|
8
|
+
/** 两点相减(向量减法):a - b */
|
|
9
|
+
sub: (a: Position, b: Position) => Position;
|
|
10
|
+
/** 等比缩放:a * k */
|
|
11
|
+
scale: (a: Position, k: number) => Position;
|
|
12
|
+
/** 判断两点坐标是否完全相等(精确比较,不带容差) */
|
|
13
|
+
equal: (a: Position, b: Position) => boolean;
|
|
14
|
+
/** 笛卡尔点 → 极坐标(angle 落在 (-180, 180],origin 取默认 [0, 0]) */
|
|
15
|
+
toPolar: (p: Position) => PolarPosition;
|
|
16
|
+
/**
|
|
17
|
+
* 判断两个点是否相同(跨坐标系)。每个参数可以是笛卡尔 [x, y] 或 PolarPosition;
|
|
18
|
+
* 极坐标先转为笛卡尔,再按 precision 指定的小数位数四舍五入比较。
|
|
19
|
+
* `polar.equal` 委托到本方法。
|
|
20
|
+
* @param precision 小数点后位数;默认 2
|
|
21
|
+
* @throws 当 PolarPosition 的 origin 是节点 id 字符串时——字符串解析需 Scene 上下文
|
|
22
|
+
*/
|
|
23
|
+
equalPolar: (a: Position | PolarPosition, b: Position | PolarPosition, precision?: number) => boolean;
|
|
24
|
+
};
|
|
25
|
+
//# sourceMappingURL=point.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"point.d.ts","sourceRoot":"","sources":["../../../src/geometry/point.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAS,MAAM,SAAS,CAAC;AAEpD,oBAAoB;AACpB,MAAM,MAAM,QAAQ,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAIxC,wBAAwB;AACxB,eAAO,MAAM,KAAK;IAChB,uBAAuB;aACd,QAAQ,KAAK,QAAQ,KAAG,QAAQ;IACzC,uBAAuB;aACd,QAAQ,KAAK,QAAQ,KAAG,QAAQ;IACzC,iBAAiB;eACN,QAAQ,KAAK,MAAM,KAAG,QAAQ;IACzC,8BAA8B;eACnB,QAAQ,KAAK,QAAQ,KAAG,OAAO;IAC1C,yDAAyD;iBAC5C,QAAQ,KAAG,aAAa;IAIrC;;;;;;OAMG;oBAEE,QAAQ,GAAG,aAAa,KACxB,QAAQ,GAAG,aAAa,yBAE1B,OAAO;CASX,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { polar } from "./polar.js";
|
|
2
|
+
//#region src/geometry/point.ts
|
|
3
|
+
var RAD_TO_DEG = 180 / Math.PI;
|
|
4
|
+
/** 二维向量 / 坐标的基础运算工具集 */
|
|
5
|
+
var point = {
|
|
6
|
+
/** 两点相加(向量加法):a + b */
|
|
7
|
+
add: (a, b) => [a[0] + b[0], a[1] + b[1]],
|
|
8
|
+
/** 两点相减(向量减法):a - b */
|
|
9
|
+
sub: (a, b) => [a[0] - b[0], a[1] - b[1]],
|
|
10
|
+
/** 等比缩放:a * k */
|
|
11
|
+
scale: (a, k) => [a[0] * k, a[1] * k],
|
|
12
|
+
/** 判断两点坐标是否完全相等(精确比较,不带容差) */
|
|
13
|
+
equal: (a, b) => a[0] === b[0] && a[1] === b[1],
|
|
14
|
+
/** 笛卡尔点 → 极坐标(angle 落在 (-180, 180],origin 取默认 [0, 0]) */
|
|
15
|
+
toPolar: (p) => ({
|
|
16
|
+
angle: Math.atan2(p[1], p[0]) * RAD_TO_DEG,
|
|
17
|
+
radius: Math.hypot(p[0], p[1])
|
|
18
|
+
}),
|
|
19
|
+
/**
|
|
20
|
+
* 判断两个点是否相同(跨坐标系)。每个参数可以是笛卡尔 [x, y] 或 PolarPosition;
|
|
21
|
+
* 极坐标先转为笛卡尔,再按 precision 指定的小数位数四舍五入比较。
|
|
22
|
+
* `polar.equal` 委托到本方法。
|
|
23
|
+
* @param precision 小数点后位数;默认 2
|
|
24
|
+
* @throws 当 PolarPosition 的 origin 是节点 id 字符串时——字符串解析需 Scene 上下文
|
|
25
|
+
*/
|
|
26
|
+
equalPolar: (a, b, precision = 2) => {
|
|
27
|
+
const aCart = Array.isArray(a) ? a : polar.toPosition(a);
|
|
28
|
+
const bCart = Array.isArray(b) ? b : polar.toPosition(b);
|
|
29
|
+
const factor = 10 ** precision;
|
|
30
|
+
return Math.round(aCart[0] * factor) === Math.round(bCart[0] * factor) && Math.round(aCart[1] * factor) === Math.round(bCart[1] * factor);
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
//#endregion
|
|
34
|
+
export { point };
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { Position } from './point';
|
|
2
|
+
/**
|
|
3
|
+
* 极坐标点:相对 origin 的角度 + 半径偏移。
|
|
4
|
+
* - 可进 IR;Scene 编译时统一解析为笛卡尔
|
|
5
|
+
* - 不直接参与几何计算,参与时先转为 Position(见本文件顶部说明)
|
|
6
|
+
* - origin 可嵌套(PolarPosition),可引用节点 id(string),可直接给坐标(Position),省略表示原点 [0, 0]
|
|
7
|
+
*/
|
|
8
|
+
export type PolarPosition = {
|
|
9
|
+
/** 极坐标原点:节点 id / 笛卡尔位置 / 嵌套极坐标;省略表示 [0, 0] */
|
|
10
|
+
origin?: string | Position | PolarPosition;
|
|
11
|
+
/** 角度(度数,逆时针为正,与 TikZ / 数学习惯一致) */
|
|
12
|
+
angle: number;
|
|
13
|
+
/** 半径(user units,应为非负) */
|
|
14
|
+
radius: number;
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* 极坐标 ↔ 笛卡尔坐标 转换工具集。
|
|
18
|
+
*
|
|
19
|
+
* 注意 polar 不参与几何计算——参与计算时一律先用 `polar.toPosition` 转成 Position。
|
|
20
|
+
* 详见本文件顶部的整体说明。
|
|
21
|
+
*/
|
|
22
|
+
export declare const polar: {
|
|
23
|
+
/**
|
|
24
|
+
* 极坐标 → 笛卡尔位置(递归处理 origin)。
|
|
25
|
+
* **限制**:origin 为字符串(节点 id)时本方法无法解析,会抛错——
|
|
26
|
+
* 字符串解析依赖 Scene 编译器的 nodeIndex 上下文。
|
|
27
|
+
*/
|
|
28
|
+
toPosition: (p: PolarPosition) => Position;
|
|
29
|
+
/** 笛卡尔位置 → 极坐标(angle 落在 (-180, 180],origin 取默认 [0, 0]) */
|
|
30
|
+
fromPosition: (p: Position) => PolarPosition;
|
|
31
|
+
/** 在某个原点附近按极坐标偏移;返回结果点的世界笛卡尔坐标 */
|
|
32
|
+
offsetFrom: (origin: Position, offset: {
|
|
33
|
+
angle: number;
|
|
34
|
+
radius: number;
|
|
35
|
+
}) => Position;
|
|
36
|
+
/**
|
|
37
|
+
* 判断两个点是否相同(跨坐标系)。每个参数可以是笛卡尔 [x, y] 或 PolarPosition;
|
|
38
|
+
* 极坐标先转为笛卡尔,再按 precision 指定的小数位数四舍五入比较。
|
|
39
|
+
* 实际是 `point.equalPolar` 的别名(同一份实现,两处可发现)。
|
|
40
|
+
* @param precision 小数点后位数;默认 2
|
|
41
|
+
*/
|
|
42
|
+
equal: (a: Position | PolarPosition, b: Position | PolarPosition, precision?: number) => boolean;
|
|
43
|
+
};
|
|
44
|
+
//# sourceMappingURL=polar.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"polar.d.ts","sourceRoot":"","sources":["../../../src/geometry/polar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAS,MAAM,SAAS,CAAC;AAkB/C;;;;;GAKG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B,8CAA8C;IAC9C,MAAM,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,aAAa,CAAC;IAC3C,mCAAmC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,0BAA0B;IAC1B,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAKF;;;;;GAKG;AACH,eAAO,MAAM,KAAK;IAChB;;;;OAIG;oBACa,aAAa,KAAG,QAAQ;IAmBxC,0DAA0D;sBACxC,QAAQ,KAAG,aAAa;IAI1C,kCAAkC;yBAExB,QAAQ,UACR;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,KACxC,QAAQ;IAOX;;;;;OAKG;eAEE,QAAQ,GAAG,aAAa,KACxB,QAAQ,GAAG,aAAa,yBAE1B,OAAO;CACX,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { point } from "./point.js";
|
|
2
|
+
//#region src/geometry/polar.ts
|
|
3
|
+
var DEG_TO_RAD = Math.PI / 180;
|
|
4
|
+
var RAD_TO_DEG = 180 / Math.PI;
|
|
5
|
+
/**
|
|
6
|
+
* 极坐标 ↔ 笛卡尔坐标 转换工具集。
|
|
7
|
+
*
|
|
8
|
+
* 注意 polar 不参与几何计算——参与计算时一律先用 `polar.toPosition` 转成 Position。
|
|
9
|
+
* 详见本文件顶部的整体说明。
|
|
10
|
+
*/
|
|
11
|
+
var polar = {
|
|
12
|
+
/**
|
|
13
|
+
* 极坐标 → 笛卡尔位置(递归处理 origin)。
|
|
14
|
+
* **限制**:origin 为字符串(节点 id)时本方法无法解析,会抛错——
|
|
15
|
+
* 字符串解析依赖 Scene 编译器的 nodeIndex 上下文。
|
|
16
|
+
*/
|
|
17
|
+
toPosition: (p) => {
|
|
18
|
+
let origin;
|
|
19
|
+
if (!p.origin) origin = [0, 0];
|
|
20
|
+
else if (typeof p.origin === "string") throw new Error("polar.toPosition: cannot resolve string origin (node id) without node context; use the Scene compiler");
|
|
21
|
+
else if (Array.isArray(p.origin)) origin = p.origin;
|
|
22
|
+
else origin = polar.toPosition(p.origin);
|
|
23
|
+
const rad = p.angle * DEG_TO_RAD;
|
|
24
|
+
return [origin[0] + Math.cos(rad) * p.radius, origin[1] + Math.sin(rad) * p.radius];
|
|
25
|
+
},
|
|
26
|
+
/** 笛卡尔位置 → 极坐标(angle 落在 (-180, 180],origin 取默认 [0, 0]) */
|
|
27
|
+
fromPosition: (p) => ({
|
|
28
|
+
angle: Math.atan2(p[1], p[0]) * RAD_TO_DEG,
|
|
29
|
+
radius: Math.hypot(p[0], p[1])
|
|
30
|
+
}),
|
|
31
|
+
/** 在某个原点附近按极坐标偏移;返回结果点的世界笛卡尔坐标 */
|
|
32
|
+
offsetFrom: (origin, offset) => {
|
|
33
|
+
const rad = offset.angle * DEG_TO_RAD;
|
|
34
|
+
return [origin[0] + Math.cos(rad) * offset.radius, origin[1] + Math.sin(rad) * offset.radius];
|
|
35
|
+
},
|
|
36
|
+
/**
|
|
37
|
+
* 判断两个点是否相同(跨坐标系)。每个参数可以是笛卡尔 [x, y] 或 PolarPosition;
|
|
38
|
+
* 极坐标先转为笛卡尔,再按 precision 指定的小数位数四舍五入比较。
|
|
39
|
+
* 实际是 `point.equalPolar` 的别名(同一份实现,两处可发现)。
|
|
40
|
+
* @param precision 小数点后位数;默认 2
|
|
41
|
+
*/
|
|
42
|
+
equal: (a, b, precision = 2) => point.equalPolar(a, b, precision)
|
|
43
|
+
};
|
|
44
|
+
//#endregion
|
|
45
|
+
export { polar };
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { Position } from './point';
|
|
2
|
+
/** 轴对齐矩形:几何中心 (x, y) + 宽高 + 可选绕中心旋转 */
|
|
3
|
+
export type Rect = {
|
|
4
|
+
/** 矩形几何中心横坐标 */
|
|
5
|
+
x: number;
|
|
6
|
+
/** 矩形几何中心纵坐标 */
|
|
7
|
+
y: number;
|
|
8
|
+
/** 矩形宽度(user units) */
|
|
9
|
+
width: number;
|
|
10
|
+
/** 矩形高度(user units) */
|
|
11
|
+
height: number;
|
|
12
|
+
/** 绕几何中心的旋转角(弧度);省略或 0 表示不旋转 */
|
|
13
|
+
rotate?: number;
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* 矩形 9 个标准 anchor 名常量集合,对应 TikZ 节点的 9 个标准 anchor。
|
|
17
|
+
* 与 `RectAnchor` 类型配对使用——值用 `RECT_ANCHORS.NORTH` 避免拼错,
|
|
18
|
+
* 类型位置用 `RectAnchor`。
|
|
19
|
+
*/
|
|
20
|
+
export declare const RECT_ANCHORS: {
|
|
21
|
+
/** 几何中心 */
|
|
22
|
+
readonly CENTER: "center";
|
|
23
|
+
/** 上边中点 */
|
|
24
|
+
readonly NORTH: "north";
|
|
25
|
+
/** 下边中点 */
|
|
26
|
+
readonly SOUTH: "south";
|
|
27
|
+
/** 右边中点 */
|
|
28
|
+
readonly EAST: "east";
|
|
29
|
+
/** 左边中点 */
|
|
30
|
+
readonly WEST: "west";
|
|
31
|
+
/** 右上角 */
|
|
32
|
+
readonly NORTH_EAST: "north-east";
|
|
33
|
+
/** 左上角 */
|
|
34
|
+
readonly NORTH_WEST: "north-west";
|
|
35
|
+
/** 右下角 */
|
|
36
|
+
readonly SOUTH_EAST: "south-east";
|
|
37
|
+
/** 左下角 */
|
|
38
|
+
readonly SOUTH_WEST: "south-west";
|
|
39
|
+
};
|
|
40
|
+
/** 矩形 anchor 名(与 TikZ 命名约定一致),由 `RECT_ANCHORS` 常量集合派生 */
|
|
41
|
+
export type RectAnchor = (typeof RECT_ANCHORS)[keyof typeof RECT_ANCHORS];
|
|
42
|
+
/** 矩形相关基础工具 */
|
|
43
|
+
export declare const rect: {
|
|
44
|
+
/** 矩形几何中心点 */
|
|
45
|
+
center: (r: Rect) => Position;
|
|
46
|
+
/** 判断点是否落在矩形范围内(含边界,考虑旋转) */
|
|
47
|
+
contains: (r: Rect, p: Position) => boolean;
|
|
48
|
+
/**
|
|
49
|
+
* 取矩形 9 个标准 anchor 之一的世界坐标,考虑旋转。
|
|
50
|
+
* 名字与 TikZ 节点 anchor 一致(north / south / east / west / north-east / ... / center)。
|
|
51
|
+
*/
|
|
52
|
+
anchor: (r: Rect, name: RectAnchor) => Position;
|
|
53
|
+
/**
|
|
54
|
+
* 从矩形中心向 toward 方向画射线,求与矩形边界的交点(考虑旋转)。
|
|
55
|
+
* 用于把 Path 端点贴到 Node 边界(避免线段穿过节点内部)。
|
|
56
|
+
*/
|
|
57
|
+
boundaryPoint: (r: Rect, toward: Position) => Position;
|
|
58
|
+
};
|
|
59
|
+
//# sourceMappingURL=rect.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rect.d.ts","sourceRoot":"","sources":["../../../src/geometry/rect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAExC,uCAAuC;AACvC,MAAM,MAAM,IAAI,GAAG;IACjB,gBAAgB;IAChB,CAAC,EAAE,MAAM,CAAC;IACV,gBAAgB;IAChB,CAAC,EAAE,MAAM,CAAC;IACV,uBAAuB;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,uBAAuB;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,gCAAgC;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,YAAY;IACvB,WAAW;;IAEX,WAAW;;IAEX,WAAW;;IAEX,WAAW;;IAEX,WAAW;;IAEX,UAAU;;IAEV,UAAU;;IAEV,UAAU;;IAEV,UAAU;;CAEF,CAAC;AAEX,yDAAyD;AACzD,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,OAAO,YAAY,CAAC,CAAC;AAgC1E,eAAe;AACf,eAAO,MAAM,IAAI;IACf,cAAc;gBACF,IAAI,KAAG,QAAQ;IAC3B,6BAA6B;kBACf,IAAI,KAAK,QAAQ,KAAG,OAAO;IAMzC;;;OAGG;gBACS,IAAI,QAAQ,UAAU,KAAG,QAAQ;IAuC7C;;;OAGG;uBACgB,IAAI,UAAU,QAAQ,KAAG,QAAQ;CAUrD,CAAC"}
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
//#region src/geometry/rect.ts
|
|
2
|
+
/**
|
|
3
|
+
* 矩形 9 个标准 anchor 名常量集合,对应 TikZ 节点的 9 个标准 anchor。
|
|
4
|
+
* 与 `RectAnchor` 类型配对使用——值用 `RECT_ANCHORS.NORTH` 避免拼错,
|
|
5
|
+
* 类型位置用 `RectAnchor`。
|
|
6
|
+
*/
|
|
7
|
+
var RECT_ANCHORS = {
|
|
8
|
+
/** 几何中心 */
|
|
9
|
+
CENTER: "center",
|
|
10
|
+
/** 上边中点 */
|
|
11
|
+
NORTH: "north",
|
|
12
|
+
/** 下边中点 */
|
|
13
|
+
SOUTH: "south",
|
|
14
|
+
/** 右边中点 */
|
|
15
|
+
EAST: "east",
|
|
16
|
+
/** 左边中点 */
|
|
17
|
+
WEST: "west",
|
|
18
|
+
/** 右上角 */
|
|
19
|
+
NORTH_EAST: "north-east",
|
|
20
|
+
/** 左上角 */
|
|
21
|
+
NORTH_WEST: "north-west",
|
|
22
|
+
/** 右下角 */
|
|
23
|
+
SOUTH_EAST: "south-east",
|
|
24
|
+
/** 左下角 */
|
|
25
|
+
SOUTH_WEST: "south-west"
|
|
26
|
+
};
|
|
27
|
+
/**
|
|
28
|
+
* 把"以矩形中心为原点的本地坐标"转换为世界坐标。
|
|
29
|
+
* 考虑 rect.rotate(弧度)的旋转。
|
|
30
|
+
*/
|
|
31
|
+
var localToWorld = (r, local) => {
|
|
32
|
+
const angle = r.rotate ?? 0;
|
|
33
|
+
if (angle === 0) return [r.x + local[0], r.y + local[1]];
|
|
34
|
+
const cos = Math.cos(angle);
|
|
35
|
+
const sin = Math.sin(angle);
|
|
36
|
+
return [r.x + local[0] * cos - local[1] * sin, r.y + local[0] * sin + local[1] * cos];
|
|
37
|
+
};
|
|
38
|
+
/**
|
|
39
|
+
* 把世界坐标转换为"以矩形中心为原点的本地坐标"。
|
|
40
|
+
* 与 localToWorld 互为逆变换。
|
|
41
|
+
*/
|
|
42
|
+
var worldToLocal = (r, world) => {
|
|
43
|
+
const tx = world[0] - r.x;
|
|
44
|
+
const ty = world[1] - r.y;
|
|
45
|
+
const angle = r.rotate ?? 0;
|
|
46
|
+
if (angle === 0) return [tx, ty];
|
|
47
|
+
const cos = Math.cos(angle);
|
|
48
|
+
const sin = Math.sin(angle);
|
|
49
|
+
return [tx * cos + ty * sin, -tx * sin + ty * cos];
|
|
50
|
+
};
|
|
51
|
+
/** 矩形相关基础工具 */
|
|
52
|
+
var rect = {
|
|
53
|
+
/** 矩形几何中心点 */
|
|
54
|
+
center: (r) => [r.x, r.y],
|
|
55
|
+
/** 判断点是否落在矩形范围内(含边界,考虑旋转) */
|
|
56
|
+
contains: (r, p) => {
|
|
57
|
+
const [lx, ly] = worldToLocal(r, p);
|
|
58
|
+
const halfW = r.width / 2;
|
|
59
|
+
const halfH = r.height / 2;
|
|
60
|
+
return lx >= -halfW && lx <= halfW && ly >= -halfH && ly <= halfH;
|
|
61
|
+
},
|
|
62
|
+
/**
|
|
63
|
+
* 取矩形 9 个标准 anchor 之一的世界坐标,考虑旋转。
|
|
64
|
+
* 名字与 TikZ 节点 anchor 一致(north / south / east / west / north-east / ... / center)。
|
|
65
|
+
*/
|
|
66
|
+
anchor: (r, name) => {
|
|
67
|
+
const halfW = r.width / 2;
|
|
68
|
+
const halfH = r.height / 2;
|
|
69
|
+
let lx = 0;
|
|
70
|
+
let ly = 0;
|
|
71
|
+
switch (name) {
|
|
72
|
+
case "center": break;
|
|
73
|
+
case "north":
|
|
74
|
+
ly = -halfH;
|
|
75
|
+
break;
|
|
76
|
+
case "south":
|
|
77
|
+
ly = halfH;
|
|
78
|
+
break;
|
|
79
|
+
case "east":
|
|
80
|
+
lx = halfW;
|
|
81
|
+
break;
|
|
82
|
+
case "west":
|
|
83
|
+
lx = -halfW;
|
|
84
|
+
break;
|
|
85
|
+
case "north-east":
|
|
86
|
+
lx = halfW;
|
|
87
|
+
ly = -halfH;
|
|
88
|
+
break;
|
|
89
|
+
case "north-west":
|
|
90
|
+
lx = -halfW;
|
|
91
|
+
ly = -halfH;
|
|
92
|
+
break;
|
|
93
|
+
case "south-east":
|
|
94
|
+
lx = halfW;
|
|
95
|
+
ly = halfH;
|
|
96
|
+
break;
|
|
97
|
+
case "south-west":
|
|
98
|
+
lx = -halfW;
|
|
99
|
+
ly = halfH;
|
|
100
|
+
break;
|
|
101
|
+
}
|
|
102
|
+
return localToWorld(r, [lx, ly]);
|
|
103
|
+
},
|
|
104
|
+
/**
|
|
105
|
+
* 从矩形中心向 toward 方向画射线,求与矩形边界的交点(考虑旋转)。
|
|
106
|
+
* 用于把 Path 端点贴到 Node 边界(避免线段穿过节点内部)。
|
|
107
|
+
*/
|
|
108
|
+
boundaryPoint: (r, toward) => {
|
|
109
|
+
const [localX, localY] = worldToLocal(r, toward);
|
|
110
|
+
if (localX === 0 && localY === 0) return [r.x, r.y];
|
|
111
|
+
const halfW = r.width / 2;
|
|
112
|
+
const halfH = r.height / 2;
|
|
113
|
+
const tx = localX === 0 ? Infinity : halfW / Math.abs(localX);
|
|
114
|
+
const ty = localY === 0 ? Infinity : halfH / Math.abs(localY);
|
|
115
|
+
const t = Math.min(tx, ty);
|
|
116
|
+
return localToWorld(r, [localX * t, localY * t]);
|
|
117
|
+
}
|
|
118
|
+
};
|
|
119
|
+
//#endregion
|
|
120
|
+
export { RECT_ANCHORS, rect };
|
package/dist/es/index.d.ts
CHANGED
|
@@ -1,10 +1,20 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
export {
|
|
10
|
-
export type {
|
|
1
|
+
/**
|
|
2
|
+
* @retikz/core 公开 API
|
|
3
|
+
*
|
|
4
|
+
* 任何 framework adapter(@retikz/react、@retikz/vue、@retikz/canvas、@retikz/ssr)
|
|
5
|
+
* 只能 import 本文件导出的内容,不准走子路径。
|
|
6
|
+
*
|
|
7
|
+
* 本包零 React、零 DOM 依赖。
|
|
8
|
+
*/
|
|
9
|
+
export { PositionSchema, PolarPositionSchema, TargetSchema, MoveStepSchema, LineStepSchema, FoldStepSchema, CycleStepSchema, StepSchema, NodeSchema, PathSchema, ChildSchema, SceneSchema, CURRENT_IR_VERSION, } from './ir';
|
|
10
|
+
export type { IRPosition, IRTarget, IRMoveStep, IRLineStep, IRFoldStep, IRCycleStep, IRStep, IRNode, IRPath, IRChild, IR, ArrowShape, NodeShape, } from './ir';
|
|
11
|
+
export { ARROW_SHAPES, NODE_SHAPES } from './ir';
|
|
12
|
+
export type { ScenePrimitive, RectPrim, EllipsePrim, TextPrim, PathPrim, GroupPrim, ViewBox, Scene, } from './primitive';
|
|
13
|
+
export type { FontSpec, TextMetrics, TextMeasurer, CompileOptions, } from './compile';
|
|
14
|
+
export { fallbackMeasurer, compileToScene } from './compile';
|
|
15
|
+
export type { WayItem, WayDSL, WayCycle, WayVia } from './parsers';
|
|
16
|
+
export { parseWay, DrawWay } from './parsers';
|
|
17
|
+
export type { Position, Rect, RectAnchor, Circle, CircleAnchor, Ellipse, EllipseAnchor, Diamond, DiamondAnchor, PolarPosition, } from './geometry';
|
|
18
|
+
export { point, rect, circle, ellipse, diamond, RECT_ANCHORS, polar } from './geometry';
|
|
19
|
+
export type { ValueOf } from './types';
|
|
20
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EACL,cAAc,EACd,mBAAmB,EACnB,YAAY,EACZ,cAAc,EACd,cAAc,EACd,cAAc,EACd,eAAe,EACf,UAAU,EACV,UAAU,EACV,UAAU,EACV,WAAW,EACX,WAAW,EACX,kBAAkB,GACnB,MAAM,MAAM,CAAC;AACd,YAAY,EACV,UAAU,EACV,QAAQ,EACR,UAAU,EACV,UAAU,EACV,UAAU,EACV,WAAW,EACX,MAAM,EACN,MAAM,EACN,MAAM,EACN,OAAO,EACP,EAAE,EACF,UAAU,EACV,SAAS,GACV,MAAM,MAAM,CAAC;AACd,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AAGjD,YAAY,EACV,cAAc,EACd,QAAQ,EACR,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,OAAO,EACP,KAAK,GACN,MAAM,aAAa,CAAC;AAGrB,YAAY,EACV,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,cAAc,GACf,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAG7D,YAAY,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAI9C,YAAY,EACV,QAAQ,EACR,IAAI,EACJ,UAAU,EACV,MAAM,EACN,YAAY,EACZ,OAAO,EACP,aAAa,EACb,OAAO,EACP,aAAa,EACb,aAAa,GACd,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAGxF,YAAY,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC"}
|
package/dist/es/index.js
CHANGED
|
@@ -1,12 +1,18 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
};
|
|
1
|
+
import { PositionSchema } from "./ir/position/position.js";
|
|
2
|
+
import { PolarPositionSchema } from "./ir/position/polar-position.js";
|
|
3
|
+
import { ARROW_SHAPES } from "./ir/path/arrow.js";
|
|
4
|
+
import { TargetSchema } from "./ir/path/target.js";
|
|
5
|
+
import { CycleStepSchema, FoldStepSchema, LineStepSchema, MoveStepSchema, StepSchema } from "./ir/path/step.js";
|
|
6
|
+
import { PathSchema } from "./ir/path/path.js";
|
|
7
|
+
import { NODE_SHAPES, NodeSchema } from "./ir/node.js";
|
|
8
|
+
import { CURRENT_IR_VERSION, ChildSchema, SceneSchema } from "./ir/scene.js";
|
|
9
|
+
import { RECT_ANCHORS, rect } from "./geometry/rect.js";
|
|
10
|
+
import { circle } from "./geometry/circle.js";
|
|
11
|
+
import { diamond } from "./geometry/diamond.js";
|
|
12
|
+
import { ellipse } from "./geometry/ellipse.js";
|
|
13
|
+
import { fallbackMeasurer } from "./compile/text-metrics.js";
|
|
14
|
+
import { compileToScene } from "./compile/compile.js";
|
|
15
|
+
import { DrawWay, parseWay } from "./parsers/parseWay.js";
|
|
16
|
+
import { polar } from "./geometry/polar.js";
|
|
17
|
+
import { point } from "./geometry/point.js";
|
|
18
|
+
export { ARROW_SHAPES, CURRENT_IR_VERSION, ChildSchema, CycleStepSchema, DrawWay, FoldStepSchema, LineStepSchema, MoveStepSchema, NODE_SHAPES, NodeSchema, PathSchema, PolarPositionSchema, PositionSchema, RECT_ANCHORS, SceneSchema, StepSchema, TargetSchema, circle, compileToScene, diamond, ellipse, fallbackMeasurer, parseWay, point, polar, rect };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ir/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC"}
|