{"_id":"@edv4h/usketch-plugin-scatter","_rev":"4-553f9ddeeafdb03cfdd1167c9dd98599","name":"@edv4h/usketch-plugin-scatter","dist-tags":{"latest":"0.2.2"},"versions":{"0.1.0":{"name":"@edv4h/usketch-plugin-scatter","version":"0.1.0","license":"MIT","_id":"@edv4h/usketch-plugin-scatter@0.1.0","maintainers":[{"name":"myuske","email":"circlemountain.ym@gmail.com"}],"homepage":"https://github.com/EdV4H/usketch#readme","bugs":{"url":"https://github.com/EdV4H/usketch/issues"},"dist":{"shasum":"b3e0cd6bb602e0d502b2b7816b7f8ed0dba7d01f","tarball":"https://registry.npmjs.org/@edv4h/usketch-plugin-scatter/-/usketch-plugin-scatter-0.1.0.tgz","fileCount":51,"integrity":"sha512-bFHu5i8XDAwuXnAtQkafYzza/XLW7w/tIGJd7jgDlACqkv5uKEPlR3k/GoaoE4hmhBMFMu3ihJGvl5j6DIYAxA==","signatures":[{"sig":"MEYCIQCBuDRZObJWkVzRpFNoFjYLDudrIstEYcMTbZV3Zcg1zAIhANkm2GI+BfjwBDoXhmpSl95AkritvlFHSUC7VLadRZwj","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":68082},"main":"./dist/index.js","type":"module","_from":"file:edv4h-usketch-plugin-scatter-0.1.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","source":"./src/index.ts"}},"scripts":{"test":"vitest run --passWithNoTests","build":"tsc -p tsconfig.json","clean":"rm -rf dist","typecheck":"tsc --noEmit"},"_npmUser":{"name":"myuske","email":"circlemountain.ym@gmail.com"},"_resolved":"/Users/yusukemaruyama/Projects/usketch/plugins/usketch-plugin-scatter/edv4h-usketch-plugin-scatter-0.1.0.tgz","_integrity":"sha512-bFHu5i8XDAwuXnAtQkafYzza/XLW7w/tIGJd7jgDlACqkv5uKEPlR3k/GoaoE4hmhBMFMu3ihJGvl5j6DIYAxA==","repository":{"url":"git+https://github.com/EdV4H/usketch.git","type":"git","directory":"plugins/usketch-plugin-scatter"},"_npmVersion":"11.16.0","description":"「関連する Shape をぶちまける」— an extensible engine that scatters a seed shape's **related** shapes (and/or freshly spawned ones) outward across the canvas, as one undoable step, optionally animated.","directories":{},"_nodeVersion":"26.3.0","dependencies":{"@edv4h/usketch-shared":"4.12.0","@edv4h/usketch-shape-utils":"2.2.8"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"4.1.11","typescript":"7.0.2"},"_npmOperationalInternal":{"tmp":"tmp/usketch-plugin-scatter_0.1.0_1787545161503_0.8067057931808994","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@edv4h/usketch-plugin-scatter","version":"0.2.0","license":"MIT","_id":"@edv4h/usketch-plugin-scatter@0.2.0","maintainers":[{"name":"myuske","email":"circlemountain.ym@gmail.com"}],"homepage":"https://github.com/EdV4H/usketch#readme","bugs":{"url":"https://github.com/EdV4H/usketch/issues"},"dist":{"shasum":"52c016bd5c992773c2e1f0a2d6f6fe9d9a8a88a6","tarball":"https://registry.npmjs.org/@edv4h/usketch-plugin-scatter/-/usketch-plugin-scatter-0.2.0.tgz","fileCount":55,"integrity":"sha512-hIJYO7yw0RmsMtyGoSFNXKZBOkWPZgyeox8eWVL6PR1Ks54QKSkQFnYGebA2rdTc3K/ZeMnuexGC5wP8xCcyxQ==","signatures":[{"sig":"MEUCIQDKG4UAguN7SnzWLUAc5CzGxefsv8rhVJoOBgprH7pJsAIgZ6iDFwWtT25iZPieHl8iWJZYJmElrZaaCd0pndn82kU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@edv4h%2fusketch-plugin-scatter@0.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":73184},"main":"./dist/index.js","type":"module","_from":"file:edv4h-usketch-plugin-scatter-0.2.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","source":"./src/index.ts"}},"scripts":{"test":"vitest run --passWithNoTests","build":"tsc -p tsconfig.json","clean":"rm -rf dist","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:263d0414-ec76-4b5c-8bd2-c9d080fb89da"}},"_resolved":"/tmp/eb81acce460a35ec280357d3e4f66c53/edv4h-usketch-plugin-scatter-0.2.0.tgz","_integrity":"sha512-hIJYO7yw0RmsMtyGoSFNXKZBOkWPZgyeox8eWVL6PR1Ks54QKSkQFnYGebA2rdTc3K/ZeMnuexGC5wP8xCcyxQ==","repository":{"url":"git+https://github.com/EdV4H/usketch.git","type":"git","directory":"plugins/usketch-plugin-scatter"},"_npmVersion":"12.0.2","description":"「関連する Shape をぶちまける」— an extensible engine that scatters a seed shape's **related** shapes (and/or freshly spawned ones) outward across the canvas, as one undoable step, optionally animated.","directories":{},"_nodeVersion":"24.19.0","dependencies":{"@edv4h/usketch-shared":"4.12.0","@edv4h/usketch-shape-utils":"2.2.8"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"4.1.11","typescript":"7.0.2"},"_npmOperationalInternal":{"tmp":"tmp/usketch-plugin-scatter_0.2.0_1787558981994_0.3406298622451225","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@edv4h/usketch-plugin-scatter","version":"0.2.1","license":"MIT","_id":"@edv4h/usketch-plugin-scatter@0.2.1","maintainers":[{"name":"myuske","email":"circlemountain.ym@gmail.com"}],"homepage":"https://github.com/EdV4H/usketch#readme","bugs":{"url":"https://github.com/EdV4H/usketch/issues"},"dist":{"shasum":"40d6ba0708f770f968156b6f32e65130bf9896c2","tarball":"https://registry.npmjs.org/@edv4h/usketch-plugin-scatter/-/usketch-plugin-scatter-0.2.1.tgz","fileCount":55,"integrity":"sha512-f1xQMhZbtmSdEeAsafKwACguYcuBvRlPSt4wWWRHadPwn5AbWvbFpK9M2jAdo4D7w3aQJUsQQlAi0bfc37l9ww==","signatures":[{"sig":"MEUCIBoXelB28FnMOfamUuovQAjqWBNi3d9xun2F+8WlJVmdAiEAxkPH+RyLsf3TjKRvM7xi1EC/Ei0jreOB39gFYVur+Xo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDHTVbtDSToplqNdbzmVcIUADvvLS5yC8TDNP5FMp7lmgIgeOjZTETnFk9vibLVV2cl/v+owpLrGr0lm3q+g94CVus=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@edv4h%2fusketch-plugin-scatter@0.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":73184},"main":"./dist/index.js","type":"module","_from":"file:edv4h-usketch-plugin-scatter-0.2.1.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","source":"./src/index.ts"}},"scripts":{"test":"vitest run --passWithNoTests","build":"tsc -p tsconfig.json","clean":"rm -rf dist","typecheck":"tsc --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:263d0414-ec76-4b5c-8bd2-c9d080fb89da"}},"_resolved":"/tmp/7228908a0795ce5cbd371e4bcdc46c4a/edv4h-usketch-plugin-scatter-0.2.1.tgz","_integrity":"sha512-f1xQMhZbtmSdEeAsafKwACguYcuBvRlPSt4wWWRHadPwn5AbWvbFpK9M2jAdo4D7w3aQJUsQQlAi0bfc37l9ww==","repository":{"url":"git+https://github.com/EdV4H/usketch.git","type":"git","directory":"plugins/usketch-plugin-scatter"},"_npmVersion":"12.0.2","description":"「関連する Shape をぶちまける」— an extensible engine that scatters a seed shape's **related** shapes (and/or freshly spawned ones) outward across the canvas, as one undoable step, optionally animated.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"@edv4h/usketch-shared":"4.13.0","@edv4h/usketch-shape-utils":"2.2.9"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"4.1.11","typescript":"7.0.2"},"_npmOperationalInternal":{"tmp":"tmp/usketch-plugin-scatter_0.2.1_1788762739904_0.19269260491644813","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"_id":"@edv4h/usketch-plugin-scatter@0.2.2","bugs":{"url":"https://github.com/EdV4H/usketch/issues"},"dist":{"shasum":"7412a3fbb723d134ae75177cd05b2092bdb2827f","tarball":"https://registry.npmjs.org/@edv4h/usketch-plugin-scatter/-/usketch-plugin-scatter-0.2.2.tgz","fileCount":55,"integrity":"sha512-q4cKaynFwY+tioatyC9COHI3ZEOEkm6l8VYjt39vhRd/jwftCWMPzObRDoDTeR6rmN4Fij9DpGroReB3WT0oJw==","signatures":[{"sig":"MEUCIBm4A0GslxD/L5PaaKOz2GVZTleH9kkmJRpFIruHrGMwAiEAnAGnOwZyTFjC/TKL5z6vbi/K8TWV4rc0L+NteaIrzjg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDYafxELchddC+TqApXqYjrWdtOPvt/eEmwIBbMoTfp3gIhAImfYHlpT0i2g1JPWSaFI1jGGO4xweC0qHUxjfPP9/zr"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@edv4h%2fusketch-plugin-scatter@0.2.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":73185},"main":"./dist/index.js","name":"@edv4h/usketch-plugin-scatter","type":"module","_from":"file:edv4h-usketch-plugin-scatter-0.2.2.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","source":"./src/index.ts"}},"license":"MIT","scripts":{"test":"vitest run --passWithNoTests","build":"tsc -p tsconfig.json","clean":"rm -rf dist","typecheck":"tsc --noEmit"},"version":"0.2.2","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:263d0414-ec76-4b5c-8bd2-c9d080fb89da"}},"homepage":"https://github.com/EdV4H/usketch#readme","_resolved":"/tmp/03d0989766899d6bbd23dc8603b34b27/edv4h-usketch-plugin-scatter-0.2.2.tgz","_integrity":"sha512-q4cKaynFwY+tioatyC9COHI3ZEOEkm6l8VYjt39vhRd/jwftCWMPzObRDoDTeR6rmN4Fij9DpGroReB3WT0oJw==","repository":{"url":"git+https://github.com/EdV4H/usketch.git","type":"git","directory":"plugins/usketch-plugin-scatter"},"_npmVersion":"12.1.0","description":"「関連する Shape をぶちまける」— an extensible engine that scatters a seed shape's **related** shapes (and/or freshly spawned ones) outward across the canvas, as one undoable step, optionally animated.","directories":{},"maintainers":[{"name":"myuske","email":"circlemountain.ym@gmail.com"}],"_nodeVersion":"24.20.0","dependencies":{"@edv4h/usketch-shared":"4.14.0","@edv4h/usketch-shape-utils":"2.2.10"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"4.1.11","typescript":"7.0.2"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/usketch-plugin-scatter_0.2.2_1790238018291_0.512721444559014"}}},"time":{"created":"2026-08-24T04:19:21.372Z","modified":"2026-09-24T08:20:18.707Z","0.1.0":"2026-08-24T04:19:21.684Z","0.2.0":"2026-08-24T08:09:42.129Z","0.2.1":"2026-09-07T06:32:19.996Z","0.2.2":"2026-09-24T08:20:18.360Z"},"bugs":{"url":"https://github.com/EdV4H/usketch/issues"},"license":"MIT","homepage":"https://github.com/EdV4H/usketch#readme","repository":{"url":"git+https://github.com/EdV4H/usketch.git","type":"git","directory":"plugins/usketch-plugin-scatter"},"description":"「関連する Shape をぶちまける」— an extensible engine that scatters a seed shape's **related** shapes (and/or freshly spawned ones) outward across the canvas, as one undoable step, optionally animated.","maintainers":[{"name":"myuske","email":"circlemountain.ym@gmail.com"}],"readme":"# @edv4h/usketch-plugin-scatter\n\n「関連する Shape をぶちまける」— an extensible engine that scatters a seed shape's\n**related** shapes (and/or freshly spawned ones) outward across the canvas, as one\nundoable step, optionally animated.\n\n```ts\nimport { createScatterPlugin, getScatterApi } from \"@edv4h/usketch-plugin-scatter\";\n// register createScatterPlugin() in your app's plugin list.\n\nconst api = getScatterApi(app.services);\nawait api?.scatter({\n  seedId,                 // defaults to the sole selected shape\n  relation: \"connectors\", // built-in resolver, or pass items / a RelationResolver\n  pattern: \"radial\",      // radial | scatter | unoverlap | grid, or a ScatterPattern\n  animate: true,\n});\n```\n\n- **Related = pluggable** — pass explicit `items` (existing ids ∪ new-shape specs) or\n  a `relation` resolver (`connectors`, `children`, or your own via `registerResolver`).\n- **New shapes** — `{ kind: \"new\", spec: { type, width, height, … } }` items are\n  spawned + placed in the same undoable command.\n- **Patterns** — `radial` / `scatter` (random + rotation) / `unoverlap` (delegates to\n  `findFreePosition`) / `grid`; add more with `registerPattern`.\n- **Animation** — `animate` + `durationMs` + `easing` for a fly-out tween.\n\nUI: registered on the Control HUD (`ぶちまけ設定` + the `関連Shapeをぶちまける` action,\nenabled when exactly one shape is selected).\n","readmeFilename":"README.md"}