{"_id":"@freesewing/plugin-transform","_rev":"9-2aa0391b6a0b9b336f54beb46be13754","name":"@freesewing/plugin-transform","dist-tags":{"latest":"4.10.2"},"versions":{"4.6.0":{"name":"@freesewing/plugin-transform","version":"4.6.0","keywords":["freesewing","design","diy","fashion","made to measure","parametric design","sewing"],"author":{"name":"Wouter van Wageningen"},"license":"MIT","_id":"@freesewing/plugin-transform@4.6.0","maintainers":[{"name":"joostdecock","email":"joost@joost.at"},{"name":"eriese","email":"enoch.riese@gmail.com"}],"homepage":"https://freesewing.eu/","bugs":{"url":"https://codeberg.org/freesewing/freesewing/issues"},"dist":{"shasum":"79bc6afc4f6777818fba5e2561f1fa1508f695c6","tarball":"https://registry.npmjs.org/@freesewing/plugin-transform/-/plugin-transform-4.6.0.tgz","fileCount":4,"integrity":"sha512-+Enpx38liJBuuhsVQFo36LH4GnmlB//RfAaaQQKUdvVKztL5vhSOHvirWvu12I8FjT/u6WX44F9lJHbMChdHvA==","signatures":[{"sig":"MEUCIQC251/feKTXNFY7E3wxx90B4F6ay41yrgh+0MHHicAILwIgIJVRlgrsq2wPpC8iWoeQJe6PwgM4pU5CJnn7yJ9BmO8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9442},"type":"module","module":"src/index.mjs","engines":{"node":">= 20"},"exports":{".":"./src/index.mjs"},"funding":{"url":"https://freesewing.eu/patrons/join","type":"individual"},"gitHead":"62e0b0ead17d3f7fb91af9ecda34bb23288b33de","scripts":{"lint":"npx eslint 'src/**' 'tests/*.mjs'","test":"npx mocha tests/*.test.mjs","tips":"node ../../scripts/help.mjs","testci":"NODE_OPTIONS=\"--conditions=internal\" npx mocha tests/*.test.mjs --reporter ../../tests/reporters/terse.js","symlink":"mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -","prettier":"npx prettier --write 'src/*.mjs' 'tests/*.mjs'"},"_npmUser":{"name":"joostdecock","email":"joost@joost.at"},"repository":{"url":"codeberg:freesewing/freesewing","type":"git"},"_npmVersion":"10.9.2","description":"A FreeSewing plugin to transform (translate, rotate, or scale) points or paths","directories":{},"_nodeVersion":"22.15.0","dependencies":{},"publishConfig":{"tag":"latest","access":"public"},"_hasShrinkwrap":false,"devDependencies":{"chai":"5.1.1","mocha":"10.4.0"},"peerDependencies":{"@freesewing/core":"4.6.0"},"_npmOperationalInternal":{"tmp":"tmp/plugin-transform_4.6.0_1772975246565_0.3725441658263695","host":"s3://npm-registry-packages-npm-production"}},"4.7.0":{"name":"@freesewing/plugin-transform","version":"4.7.0","keywords":["freesewing","design","diy","fashion","made to measure","parametric design","sewing"],"author":{"name":"Wouter van Wageningen"},"license":"MIT","_id":"@freesewing/plugin-transform@4.7.0","maintainers":[{"name":"joostdecock","email":"joost@joost.at"},{"name":"eriese","email":"enoch.riese@gmail.com"}],"homepage":"https://freesewing.eu/","bugs":{"url":"https://codeberg.org/freesewing/freesewing/issues"},"dist":{"shasum":"d19e53047b18e839e31fe4ae09c5b89d759b7168","tarball":"https://registry.npmjs.org/@freesewing/plugin-transform/-/plugin-transform-4.7.0.tgz","fileCount":4,"integrity":"sha512-vfk83C/gB5KR6iJgjWifR/5ryN9snDFl7YPSuA/TAYGabQMUtyB2cQwlONzE57mnHUEiMZdDLeaJg8SWRv8yXA==","signatures":[{"sig":"MEUCIFFMou8L7oGlgkzRCkKpbO6ZRdlrz2EotfP+rRKgeYipAiEAufnZvmCRP559ak4/H8Tgp/D4htrskUv66OoKONi43Ts=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9442},"type":"module","module":"src/index.mjs","engines":{"node":">= 20"},"exports":{".":"./src/index.mjs"},"funding":{"url":"https://freesewing.eu/patrons/join","type":"individual"},"gitHead":"1404f31e3187c1c6ab652d577e9b277e642c460f","scripts":{"lint":"npx eslint 'src/**' 'tests/*.mjs'","test":"npx mocha tests/*.test.mjs","tips":"node ../../scripts/help.mjs","testci":"NODE_OPTIONS=\"--conditions=internal\" npx mocha tests/*.test.mjs --reporter ../../tests/reporters/terse.js","symlink":"mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -","prettier":"npx prettier --write 'src/*.mjs' 'tests/*.mjs'"},"_npmUser":{"name":"joostdecock","email":"joost@joost.at"},"repository":{"url":"codeberg:freesewing/freesewing","type":"git"},"_npmVersion":"10.9.2","description":"A FreeSewing plugin to transform (translate, rotate, or scale) points or paths","directories":{},"_nodeVersion":"22.15.0","dependencies":{},"publishConfig":{"tag":"latest","access":"public"},"_hasShrinkwrap":false,"devDependencies":{"chai":"5.1.1","mocha":"10.4.0"},"peerDependencies":{"@freesewing/core":"4.7.0"},"_npmOperationalInternal":{"tmp":"tmp/plugin-transform_4.7.0_1774596684498_0.4471593940832541","host":"s3://npm-registry-packages-npm-production"}},"4.7.1":{"name":"@freesewing/plugin-transform","version":"4.7.1","keywords":["freesewing","design","diy","fashion","made to measure","parametric design","sewing"],"author":{"name":"Wouter van Wageningen"},"license":"MIT","_id":"@freesewing/plugin-transform@4.7.1","maintainers":[{"name":"joostdecock","email":"joost@joost.at"},{"name":"eriese","email":"enoch.riese@gmail.com"}],"homepage":"https://freesewing.eu/","bugs":{"url":"https://codeberg.org/freesewing/freesewing/issues"},"dist":{"shasum":"1fc2c8eb7377d658a70cd9b3e7f163a8c6e6d2a4","tarball":"https://registry.npmjs.org/@freesewing/plugin-transform/-/plugin-transform-4.7.1.tgz","fileCount":4,"integrity":"sha512-np7HDHLJayWPMmy63yO23UYlrtIuDxoXdXe3MV/E0E0LxHOJecrOAFtk8Zm/q8NJ7X4EwuOs1xYVbVoDUTmwCA==","signatures":[{"sig":"MEYCIQDPOwioL2CXEVxHu/QXTmizkQ+Rf5AJ+mDC5mB4FXBQeAIhAJOrooYpjvn2t8Iw/n9NkjIKG8WlbQTo+fSQzLXtZ/sp","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9442},"type":"module","module":"src/index.mjs","engines":{"node":">= 20"},"exports":{".":"./src/index.mjs"},"funding":{"url":"https://freesewing.eu/patrons/join","type":"individual"},"gitHead":"a851ee09aaaa131f0569a64bc397974ee2b7ad05","scripts":{"lint":"npx eslint 'src/**' 'tests/*.mjs'","test":"npx mocha tests/*.test.mjs","tips":"node ../../scripts/help.mjs","testci":"NODE_OPTIONS=\"--conditions=internal\" npx mocha tests/*.test.mjs --reporter ../../tests/reporters/terse.js","symlink":"mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -","prettier":"npx prettier --write 'src/*.mjs' 'tests/*.mjs'"},"_npmUser":{"name":"joostdecock","email":"joost@joost.at"},"repository":{"url":"codeberg:freesewing/freesewing","type":"git"},"_npmVersion":"10.9.2","description":"A FreeSewing plugin to transform (translate, rotate, or scale) points or paths","directories":{},"_nodeVersion":"22.15.0","dependencies":{},"publishConfig":{"tag":"latest","access":"public"},"_hasShrinkwrap":false,"devDependencies":{"chai":"5.1.1","mocha":"10.4.0"},"peerDependencies":{"@freesewing/core":"4.7.1"},"_npmOperationalInternal":{"tmp":"tmp/plugin-transform_4.7.1_1774852668863_0.7857039428147057","host":"s3://npm-registry-packages-npm-production"}},"4.7.2":{"name":"@freesewing/plugin-transform","version":"4.7.2","keywords":["freesewing","design","diy","fashion","made to measure","parametric design","sewing"],"author":{"name":"Wouter van Wageningen"},"license":"MIT","_id":"@freesewing/plugin-transform@4.7.2","maintainers":[{"name":"joostdecock","email":"joost@joost.at"},{"name":"eriese","email":"enoch.riese@gmail.com"}],"homepage":"https://freesewing.eu/","bugs":{"url":"https://codeberg.org/freesewing/freesewing/issues"},"dist":{"shasum":"76aefd644851dbc4300d31c92c90a0fca02d51d6","tarball":"https://registry.npmjs.org/@freesewing/plugin-transform/-/plugin-transform-4.7.2.tgz","fileCount":4,"integrity":"sha512-GeqCwjCmpzOhhDA0AoEanObXMdI0WjuXnd739V/fd6Y785a6C2Xjnl3IFreCjPMFoWMCI93EQDRc7hSU0ul+IA==","signatures":[{"sig":"MEYCIQDW/9KyAdAhQk8qzB29nF/M7OQLqa3uAzpjOga0kngGqQIhAOKrzNEYQ0L1MEHmZi/JLDLhL6OgrKAPL60PjKYnLF7l","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9442},"type":"module","module":"src/index.mjs","engines":{"node":">= 20"},"exports":{".":"./src/index.mjs"},"funding":{"url":"https://freesewing.eu/patrons/join","type":"individual"},"gitHead":"d3ec987c6e05c609c4f3aa6c0794b20d0cd3e417","scripts":{"lint":"npx eslint 'src/**' 'tests/*.mjs'","test":"npx mocha tests/*.test.mjs","tips":"node ../../scripts/help.mjs","testci":"NODE_OPTIONS=\"--conditions=internal\" npx mocha tests/*.test.mjs --reporter ../../tests/reporters/terse.js","symlink":"mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -","prettier":"npx prettier --write 'src/*.mjs' 'tests/*.mjs'"},"_npmUser":{"name":"joostdecock","email":"joost@joost.at"},"repository":{"url":"codeberg:freesewing/freesewing","type":"git"},"_npmVersion":"10.9.2","description":"A FreeSewing plugin to transform (translate, rotate, or scale) points or paths","directories":{},"_nodeVersion":"22.15.0","dependencies":{},"publishConfig":{"tag":"latest","access":"public"},"_hasShrinkwrap":false,"devDependencies":{"chai":"5.1.1","mocha":"10.4.0"},"peerDependencies":{"@freesewing/core":"4.7.2"},"_npmOperationalInternal":{"tmp":"tmp/plugin-transform_4.7.2_1775917057113_0.8583496967799604","host":"s3://npm-registry-packages-npm-production"}},"4.8.0":{"name":"@freesewing/plugin-transform","version":"4.8.0","keywords":["freesewing","design","diy","fashion","made to measure","parametric design","sewing"],"author":{"name":"Wouter van Wageningen"},"license":"MIT","_id":"@freesewing/plugin-transform@4.8.0","maintainers":[{"name":"joostdecock","email":"joost@joost.at"},{"name":"eriese","email":"enoch.riese@gmail.com"}],"homepage":"https://freesewing.eu/","bugs":{"url":"https://codeberg.org/freesewing/freesewing/issues"},"dist":{"shasum":"6f169f5c6283209765260b62b543d8ebebda9fc3","tarball":"https://registry.npmjs.org/@freesewing/plugin-transform/-/plugin-transform-4.8.0.tgz","fileCount":4,"integrity":"sha512-pN1FR5HUIH9n1MleeV3bFQZENCkvGB9xaTRDfe+gutlpSu5dNCUR3i3ybNSbIy28ieCCOroadov6cPoKREzKlA==","signatures":[{"sig":"MEQCIHSgCu7U7Aiag96cg7GXTbhP8mz0fjRmDRUwpeYJcQZZAiBN+OaGDsuiD3aMNISL3ruZfKMrdwixZ41o3SxaWX7B0A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9442},"type":"module","module":"src/index.mjs","engines":{"node":">= 20"},"exports":{".":"./src/index.mjs"},"funding":{"url":"https://freesewing.eu/patrons/join","type":"individual"},"gitHead":"db83d3c1e5d91345e1aa9a8be13fd508d186a123","scripts":{"lint":"npx eslint 'src/**' 'tests/*.mjs'","test":"npx mocha tests/*.test.mjs","tips":"node ../../scripts/help.mjs","testci":"NODE_OPTIONS=\"--conditions=internal\" npx mocha tests/*.test.mjs --reporter ../../tests/reporters/terse.js","symlink":"mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -","prettier":"npx prettier --write 'src/*.mjs' 'tests/*.mjs'"},"_npmUser":{"name":"joostdecock","email":"joost@joost.at"},"repository":{"url":"codeberg:freesewing/freesewing","type":"git"},"_npmVersion":"10.9.2","description":"A FreeSewing plugin to transform (translate, rotate, or scale) points or paths","directories":{},"_nodeVersion":"22.15.0","dependencies":{},"publishConfig":{"tag":"latest","access":"public"},"_hasShrinkwrap":false,"devDependencies":{"chai":"5.1.1","mocha":"10.4.0"},"peerDependencies":{"@freesewing/core":"4.8.0"},"_npmOperationalInternal":{"tmp":"tmp/plugin-transform_4.8.0_1776617236892_0.8137705081732678","host":"s3://npm-registry-packages-npm-production"}},"4.9.0":{"name":"@freesewing/plugin-transform","version":"4.9.0","keywords":["freesewing","design","diy","fashion","made to measure","parametric design","sewing"],"author":{"name":"Wouter van Wageningen"},"license":"MIT","_id":"@freesewing/plugin-transform@4.9.0","maintainers":[{"name":"joostdecock","email":"joost@joost.at"},{"name":"eriese","email":"enoch.riese@gmail.com"}],"homepage":"https://freesewing.eu/","bugs":{"url":"https://codeberg.org/freesewing/freesewing/issues"},"dist":{"shasum":"32c91272c978ee1ba35eb93fe337b46586c509d9","tarball":"https://registry.npmjs.org/@freesewing/plugin-transform/-/plugin-transform-4.9.0.tgz","fileCount":4,"integrity":"sha512-rNwM7qsvt67k/75tTBY5n6zpDUXoVbgGdNmr22P5tdudvB6MUnn4Y78/SuPyEg8W9EHLC1mXYqDAaDjavPhyIw==","signatures":[{"sig":"MEYCIQC/d4goJpt80v4BX96zyGViNQYDaGkeuLJJMHH/qBII3AIhANJtDXLEqZQFs8XSlKyrVe24oE8yLLp7FdCUEs11Ha1q","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9442},"type":"module","module":"src/index.mjs","engines":{"node":">= 20"},"exports":{".":"./src/index.mjs"},"funding":{"url":"https://freesewing.eu/patrons/join","type":"individual"},"gitHead":"b191da16e936b9414949d635f1b0d7a5f3ca7d28","scripts":{"lint":"npx eslint 'src/**' 'tests/*.mjs'","test":"npx mocha tests/*.test.mjs","tips":"node ../../scripts/help.mjs","testci":"NODE_OPTIONS=\"--conditions=internal\" npx mocha tests/*.test.mjs --reporter ../../tests/reporters/terse.js","symlink":"mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -","prettier":"npx prettier --write 'src/*.mjs' 'tests/*.mjs'"},"_npmUser":{"name":"joostdecock","email":"joost@joost.at"},"repository":{"url":"codeberg:freesewing/freesewing","type":"git"},"_npmVersion":"10.9.2","description":"A FreeSewing plugin to transform (translate, rotate, or scale) points or paths","directories":{},"_nodeVersion":"22.15.0","dependencies":{},"publishConfig":{"tag":"latest","access":"public"},"_hasShrinkwrap":false,"devDependencies":{"chai":"5.1.1","mocha":"10.4.0"},"peerDependencies":{"@freesewing/core":"4.9.0"},"_npmOperationalInternal":{"tmp":"tmp/plugin-transform_4.9.0_1779704164233_0.7200553727817767","host":"s3://npm-registry-packages-npm-production"}},"4.10.0":{"name":"@freesewing/plugin-transform","version":"4.10.0","keywords":["freesewing","design","diy","fashion","made to measure","parametric design","sewing"],"author":{"name":"Wouter van Wageningen"},"license":"MIT","_id":"@freesewing/plugin-transform@4.10.0","maintainers":[{"name":"joostdecock","email":"joost@joost.at"},{"name":"eriese","email":"enoch.riese@gmail.com"}],"homepage":"https://freesewing.eu/","bugs":{"url":"https://codeberg.org/freesewing/freesewing/issues"},"dist":{"shasum":"5786b311472373a6814e7879669034a73fbfd882","tarball":"https://registry.npmjs.org/@freesewing/plugin-transform/-/plugin-transform-4.10.0.tgz","fileCount":4,"integrity":"sha512-MLhUaAn83nfQt92plyWRPmwRmPisjjwitvQR/hoYxV6uM/pMLYFxGKRSqaYXlvuhFfI25x12IG/ZICT3NwUeOw==","signatures":[{"sig":"MEUCIHstoK12wIOzQewMDBRatP0vwBgkEU8KRWiHxrQEW6xWAiEAppWLSyXiFqxfZMHc2iJll4NLmz4M5By6mCv6wbv4bps=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9445},"type":"module","module":"src/index.mjs","engines":{"node":">= 20"},"exports":{".":"./src/index.mjs"},"funding":{"url":"https://freesewing.eu/patrons/join","type":"individual"},"gitHead":"0f3aa9d9dc1b824cf01d6b4110f7badb22e0e301","scripts":{"lint":"npx eslint 'src/**' 'tests/*.mjs'","test":"npx mocha tests/*.test.mjs","tips":"node ../../scripts/help.mjs","testci":"NODE_OPTIONS=\"--conditions=internal\" npx mocha tests/*.test.mjs --reporter ../../tests/reporters/terse.js","symlink":"mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -","prettier":"npx prettier --write 'src/*.mjs' 'tests/*.mjs'"},"_npmUser":{"name":"joostdecock","email":"joost@joost.at"},"repository":{"url":"codeberg:freesewing/freesewing","type":"git"},"_npmVersion":"10.9.3","description":"A FreeSewing plugin to transform (translate, rotate, or scale) points or paths","directories":{},"_nodeVersion":"22.19.0","dependencies":{},"publishConfig":{"tag":"latest","access":"public"},"_hasShrinkwrap":false,"devDependencies":{"chai":"5.1.1","mocha":"10.4.0"},"peerDependencies":{"@freesewing/core":"4.10.0"},"_npmOperationalInternal":{"tmp":"tmp/plugin-transform_4.10.0_1781871979268_0.912129801413958","host":"s3://npm-registry-packages-npm-production"}},"4.10.1":{"name":"@freesewing/plugin-transform","version":"4.10.1","keywords":["freesewing","design","diy","fashion","made to measure","parametric design","sewing"],"author":{"name":"Wouter van Wageningen"},"license":"MIT","_id":"@freesewing/plugin-transform@4.10.1","maintainers":[{"name":"joostdecock","email":"joost@joost.at"},{"name":"eriese","email":"enoch.riese@gmail.com"}],"homepage":"https://freesewing.eu/","bugs":{"url":"https://codeberg.org/freesewing/freesewing/issues"},"dist":{"shasum":"3d5064260680d138a977aec4046b0e67490a80c8","tarball":"https://registry.npmjs.org/@freesewing/plugin-transform/-/plugin-transform-4.10.1.tgz","fileCount":4,"integrity":"sha512-CgLyOvdeZCkWazattimBvKIg8U4KBrc+8kq8hGp91aAkItQIlOQXVLtw6w3lEp/h8Mw+lo+bkknf41t7fD++IQ==","signatures":[{"sig":"MEUCIGsERbARVsiwNboHK2t6xtVi4M6Bl47DpOSy5rOJAN7lAiEAx3mYVBmB3IIUITdHuQrfvxb/qZHNlPvt8w5Nwk0AM3c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9445},"type":"module","module":"src/index.mjs","engines":{"node":">= 20"},"exports":{".":"./src/index.mjs"},"funding":{"url":"https://freesewing.eu/patrons/join","type":"individual"},"gitHead":"bc9828bcf9c725096ef37150635855dd9b7bff8d","scripts":{"lint":"npx eslint 'src/**' 'tests/*.mjs'","test":"npx mocha tests/*.test.mjs","tips":"node ../../scripts/help.mjs","testci":"NODE_OPTIONS=\"--conditions=internal\" npx mocha tests/*.test.mjs --reporter ../../tests/reporters/terse.js","symlink":"mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -","prettier":"npx prettier --write 'src/*.mjs' 'tests/*.mjs'"},"_npmUser":{"name":"joostdecock","email":"joost@joost.at"},"repository":{"url":"codeberg:freesewing/freesewing","type":"git"},"_npmVersion":"10.9.2","description":"A FreeSewing plugin to transform (translate, rotate, or scale) points or paths","directories":{},"_nodeVersion":"22.15.0","dependencies":{},"publishConfig":{"tag":"latest","access":"public"},"_hasShrinkwrap":false,"devDependencies":{"chai":"5.1.1","mocha":"10.4.0"},"peerDependencies":{"@freesewing/core":"4.10.1"},"_npmOperationalInternal":{"tmp":"tmp/plugin-transform_4.10.1_1786886790550_0.5758867589101822","host":"s3://npm-registry-packages-npm-production"}},"4.10.2":{"name":"@freesewing/plugin-transform","version":"4.10.2","description":"A FreeSewing plugin to transform (translate, rotate, or scale) points or paths","author":{"name":"Wouter van Wageningen"},"homepage":"https://freesewing.eu/","repository":{"type":"git","url":"codeberg:freesewing/freesewing"},"license":"MIT","bugs":{"url":"https://codeberg.org/freesewing/freesewing/issues"},"funding":{"type":"individual","url":"https://freesewing.eu/patrons/join"},"keywords":["freesewing","design","diy","fashion","made to measure","parametric design","sewing"],"type":"module","module":"src/index.mjs","exports":{".":"./src/index.mjs"},"scripts":{"symlink":"mkdir -p ./node_modules/@freesewing && cd ./node_modules/@freesewing && ln -s -f ../../../* . && cd -","test":"npx mocha tests/*.test.mjs","tips":"node ../../scripts/help.mjs","lint":"npx eslint 'src/**' 'tests/*.mjs'","prettier":"npx prettier --write 'src/*.mjs' 'tests/*.mjs'","testci":"NODE_OPTIONS=\"--conditions=internal\" npx mocha tests/*.test.mjs --reporter ../../tests/reporters/terse.js"},"peerDependencies":{"@freesewing/core":"4.10.2"},"dependencies":{},"devDependencies":{"mocha":"10.4.0","chai":"5.1.1"},"publishConfig":{"access":"public","tag":"latest"},"engines":{"node":">= 20"},"_id":"@freesewing/plugin-transform@4.10.2","gitHead":"3d290d25d0b6a65852dd31aec125c97bc8ca6e2c","_nodeVersion":"22.15.0","_npmVersion":"10.9.2","dist":{"integrity":"sha512-yRLp7iYDNkb1WdSJWhLltfNFUrj4F90YgnKpGrosz808CsVOh+ye+PpC8dnFG+j5BM5aXH3rJHAnChS9jVZOuA==","shasum":"ecb06d85d4a8081b1f3954c1c11ffae308117a91","tarball":"https://registry.npmjs.org/@freesewing/plugin-transform/-/plugin-transform-4.10.2.tgz","fileCount":4,"unpackedSize":9445,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQD4CEL/HjMbIsMrY1afTYiUYbhL/TbXn+BnngM7GrpWpwIhALWFKzmDjVO6ZisL8uo5K8nDLL5VNQlIOPrsHIBvrqpy"}]},"_npmUser":{"name":"joostdecock","email":"joost@joost.at"},"directories":{},"maintainers":[{"name":"joostdecock","email":"joost@joost.at"},{"name":"eriese","email":"enoch.riese@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/plugin-transform_4.10.2_1789295050912_0.29732571994350887"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-08T13:07:26.509Z","modified":"2026-09-13T10:24:11.272Z","4.6.0":"2026-03-08T13:07:26.706Z","4.7.0":"2026-03-27T07:31:24.634Z","4.7.1":"2026-03-30T06:37:49.024Z","4.7.2":"2026-04-11T14:17:37.251Z","4.8.0":"2026-04-19T16:47:17.026Z","4.9.0":"2026-05-25T10:16:04.388Z","4.10.0":"2026-06-19T12:26:19.401Z","4.10.1":"2026-08-16T13:26:30.692Z","4.10.2":"2026-09-13T10:24:11.052Z"},"bugs":{"url":"https://codeberg.org/freesewing/freesewing/issues"},"author":{"name":"Wouter van Wageningen"},"license":"MIT","homepage":"https://freesewing.eu/","keywords":["freesewing","design","diy","fashion","made to measure","parametric design","sewing"],"repository":{"type":"git","url":"codeberg:freesewing/freesewing"},"description":"A FreeSewing plugin to transform (translate, rotate, or scale) points or paths","maintainers":[{"name":"joostdecock","email":"joost@joost.at"},{"name":"eriese","email":"enoch.riese@gmail.com"}],"readme":"<p align='center'><a\n  href=\"https://www.npmjs.com/package/@freesewing/plugin-transform\"\n  title=\"@freesewing/plugin-transform on NPM\"\n  ><img src=\"https://img.shields.io/npm/v/@freesewing/plugin-transform.svg\"\n  alt=\"@freesewing/plugin-transform on NPM\"/>\n  </a><a\n  href=\"https://opensource.org/licenses/MIT\"\n  title=\"License: MIT\"\n  ><img src=\"https://img.shields.io/npm/l/@freesewing/plugin-transform.svg?label=License\"\n  alt=\"License: MIT\"/>\n  </a><a\n  href=\"#contributors-\"\n  title=\"All Contributors\"\n  ><img src=\"https://img.shields.io/badge/all_contributors-131-pink.svg\"\n  alt=\"All Contributors\"/>\n  </a></p><p align='center'><a\n  href=\"https://forum.freesewing.org\"\n  title=\"Follow @freesewing_org on Twitter\"\n  ><img src=\"https://img.shields.io/badge/%F3%A0%80%A0-Forum-E4405F.svg?logo=discourse&logoColor=white&logoWidth=15\"\n  alt=\"Follow @freesewing_org on Twitter\"/>\n  </a><a\n  href=\"https://chat.freesewing.org\"\n  title=\"Chat with us on Discord\"\n  ><img src=\"https://img.shields.io/discord/698854858052075530?label=Chat%20on%20Discord\"\n  alt=\"Chat with us on Discord\"/>\n  </a><a\n  href=\"https://freesewing.org/patrons/join\"\n  title=\"Become a FreeSewing Patron\"\n  ><img src=\"https://img.shields.io/badge/%F3%A0%80%A0-Support%20us-blueviolet.svg?logo=cash-app&logoColor=white&logoWidth=15\"\n  alt=\"Become a FreeSewing Patron\"/>\n  </a></p>\n\n# @freesewing/plugin-transform\n\nA FreeSewing plugin to transform (translate, rotate, or scale) points or paths\n\n\n\n# FreeSewing\n\n> [!TIP]\n>#### Support FreeSewing: Become a patron, or make a one-time donation 🥰\n>\n> FreeSewing is an open source project maintained by Joost De Cock and financially supported by the FreeSewing patrons.\n>\n> If you feel FreeSewing is worthwhile, and you can spend a few coins without\nhardship, then you should [join us and become a patron](https://freesewing.eu/patrons/join).\n\n## What am I looking at? 🤔\n\nThis repository is the FreeSewing *monorepo* holding all FreeSewing's websites, documentation, designs, plugins, and other NPM packages.\n\nThis folder holds: @freesewing/plugin-transform\n\nIf you're not entirely sure what to do or how to start, type this command:\n\n```\nnpm run tips\n```\n\n> [!NOTE]\n> If you don't want to set up a dev environment, you can run it in your browser:\n> \n> [![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://codeberg.org/freesewing/freesewing)\n> \n> We recommend that you fork our repository and then \n> put `gitpod.io/#<entire-url-of-your-fork` into a browser \n> to start up a browser-based dev environment of your own.\n\n## About FreeSewing 💀\n\nWhere the world of makers and developers collide, that's where you'll find FreeSewing.\n\nIf you're a maker, checkout [freesewing.eu](https://freesewing.eu/) where you can generate\nsewing patterns adapted to your measurements.\n\nIf you're a developer, the FreeSewing documentation lives at [freesewing.dev](https://freesewing.dev/).\nThe FreeSewing [core library](https://freesewing.dev/reference/api/) is a *batteries-included* toolbox\nfor parametric design of sewing patterns. But FreeSewing also provides a range \nof [plugins](https://freesewing.dev/reference/plugins/) that further extend the \nfunctionality of the platform.\n\nIf you have NodeJS installed, you can try it right now by running:\n\n```bash\nnpx @freesewing/studio\n```\n\nGetting started guides are available for:\n- [Linux](https://freesewing.dev/tutorials/getting-started-linux/)\n- [MacOS](https://freesewing.dev/tutorials/getting-started-mac/)\n- [Windows](https://freesewing.dev/tutorials/getting-started-windows/)\n\nThe [pattern design tutorial](https://freesewing.dev/tutorials/pattern-design/) will\nshow you how to create your first parametric design.\n\n## Getting started ⚡ \n\nTo get started with FreeSewing, you can spin up our development environment with:\n\n```bash\nnpx @freesewing/studio\n```\n\nTo work with FreeSewing's monorepo, you'll need [NodeJS v20](https://nodejs.org) on your system.  \nOnce you have that, clone (or fork) this repo and run `npm run kickstart`:\n\n```bash\ngit clone git@codeberg.org:freesewing/freesewing.git\ncd freesewing\nnpm run kickstart\n```\n\n## Links 👩‍💻\n\n**Official channels**\n\n - 💻 Makers website: [FreeSewing.eu](https://freesewing.eu/)\n - 💻 Developers website: [FreeSewing.dev](https://freesewing.dev/)\n - ✅ [Support](https://forum.freesewing.eu/),\n   [Issues](https://codeberg.org/freesewing/freesewing/issues) &\n   [Codeberg](https://codeberg.org/freesewing/freesewing)\n\n**Social media**\n\n - 🐘 Mastodon: [@freesewing](https://freesewing.social/@freesewing) on [FreeSewing.social](https://freesewing.social/)\n - 🐘 Mastodon: [@joost](https://freesewing.social/@joost) on [FreeSewing.social](https://freesewing.social/)\n\n**Places the FreeSewing community hangs out**\n\n - 💬 [Forum](https://forum.freesewing.eu/)\n - 💬 [Discord](https://discord.freesewing.org/)\n - 💬 [Reddit](https://www.reddit.com/r/freesewing/)\n\n## License: MIT 🤓\n\n© [Joost De Cock](https://codeberg.org/joostdecock).  \nSee [the license file](https://codeberg.org/freesewing/freesewing/blob/develop/LICENSE) for details.\n\n## Where to get help 🤯\n\nFor [Support](https://freesewing.eu/support), please use the [forum](https://forum.freesewing.eu).\n\n","readmeFilename":"README.md"}