{"_id":"@0x30-ch/collection-tree","_rev":"10-f17d7ca62e5b6c799412425aaad236c4","name":"@0x30-ch/collection-tree","dist-tags":{"latest":"2.0.2"},"versions":{"1.0.0":{"name":"@0x30-ch/collection-tree","version":"1.0.0","keywords":["strapi","plugin","collection","tree","sort","hierarchy","cms"],"author":{"name":"jeanvier","email":"hello@0x30.ch"},"license":"MIT","_id":"@0x30-ch/collection-tree@1.0.0","maintainers":[{"name":"monsieurjanvier","email":"damien.grossfeld@gmail.com"}],"homepage":"https://github.com/0x30-ch/strapi-plugins#readme","bugs":{"url":"https://github.com/0x30-ch/strapi-plugins/issues"},"dist":{"shasum":"70b7aec8ccd174172e2f146eb2df416798daf399","tarball":"https://registry.npmjs.org/@0x30-ch/collection-tree/-/collection-tree-1.0.0.tgz","fileCount":60,"integrity":"sha512-1MClvawl/ZkT5hgidgokB6I6HYcxJKRiG3wyzKN/hsXTktjETzIl9LiOmogYmSYKmdIgc+HECegGYSRJH4byHA==","signatures":[{"sig":"MEUCIDl1F8FIZ2o+PjpMsMKdH/sAXkwKrKlJYkZITfZWpeOjAiEA8yOtQmYzUBHJAQ9gNxGanWUmUhsNNtMmvDTHEYmwcpg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":582768},"type":"commonjs","strapi":{"kind":"plugin","name":"strapi-plugin-collection-tree","description":"Easily sort your collections","displayName":"Collection Tree"},"exports":{"./package.json":"./package.json","./strapi-admin":{"types":"./dist/admin/src/index.d.ts","import":"./dist/admin/index.mjs","source":"./admin/src/index.ts","default":"./dist/admin/index.js","require":"./dist/admin/index.js"},"./strapi-server":{"types":"./dist/server/src/index.d.ts","import":"./dist/server/index.mjs","source":"./server/src/index.ts","default":"./dist/server/index.js","require":"./dist/server/index.js"}},"gitHead":"bd19a481feb3e3f3e74cba78c44f2a2946d8da7a","scripts":{"dev":"strapi-plugin watch","build":"strapi-plugin build","watch":"strapi-plugin watch","verify":"strapi-plugin verify","watch:link":"strapi-plugin watch:link","test:ts:back":"tsc -p server/tsconfig.json","test:ts:front":"tsc -p admin/tsconfig.json"},"_npmUser":{"name":"monsieurjanvier","email":"damien.grossfeld@gmail.com"},"repository":{"url":"git+ssh://git@github.com/0x30-ch/strapi-plugins.git","type":"git"},"_npmVersion":"10.9.3","description":"Strapi plugin to easily sort your collections","directories":{},"_nodeVersion":"22.18.0","dependencies":{"react-intl":"^7.1.11","sortablejs":"^1.15.0","@strapi/icons":"^2.0.0-rc.29","react-sortablejs":"^6.1.4","@strapi/design-system":"^2.0.0-rc.29"},"_hasShrinkwrap":false,"devDependencies":{"react":"^18.3.1","prettier":"^3.6.2","react-dom":"^18.3.1","typescript":"^5.3.3","@types/react":"^18.3.3","@strapi/strapi":"^5.18.1","@types/react-dom":"^18.3.0","react-router-dom":"^6.30.1","@types/sortablejs":"^1.15.0","styled-components":"^6.1.19","@strapi/sdk-plugin":"^5.3.2","@strapi/typescript-utils":"^5.18.1"},"peerDependencies":{"react":"^18.3.1","react-dom":"^18.3.1","@strapi/strapi":"^5.18.1","react-router-dom":"^6.30.1","styled-components":"^6.1.19","@strapi/sdk-plugin":"^5.3.2"},"_npmOperationalInternal":{"tmp":"tmp/collection-tree_1.0.0_1755812062241_0.44096015621124685","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@0x30-ch/collection-tree","version":"1.0.1","keywords":["strapi","plugin","collection","tree","sort","hierarchy","cms"],"author":{"name":"jeanvier","email":"hello@0x30.ch"},"license":"MIT","_id":"@0x30-ch/collection-tree@1.0.1","maintainers":[{"name":"monsieurjanvier","email":"damien.grossfeld@gmail.com"}],"homepage":"https://github.com/0x30-ch/strapi-plugins#readme","bugs":{"url":"https://github.com/0x30-ch/strapi-plugins/issues"},"dist":{"shasum":"9da4e361946bca60217611a4388d103b016d493f","tarball":"https://registry.npmjs.org/@0x30-ch/collection-tree/-/collection-tree-1.0.1.tgz","fileCount":60,"integrity":"sha512-N6qj2aIexJo0zwpG5xJC+uzjvhgJOaBq+GLp/yPgz3bJl746oiVtVUBknOQQHdMKkU5UpDWe74vpx8Ijxrcgbg==","signatures":[{"sig":"MEQCICKmVtkpJ2CTQ4bFhVDgqUBk0jcMUmUusJcSFrdx46h0AiAar83NQ4CW4bXQoN1+2QxXo+rF+IAMTRZfclHtJbY5TA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":582768},"type":"commonjs","strapi":{"kind":"plugin","name":"strapi-plugin-collection-tree","description":"Easily sort your collections","displayName":"Collection Tree"},"exports":{"./package.json":"./package.json","./strapi-admin":{"types":"./dist/admin/src/index.d.ts","import":"./dist/admin/index.mjs","source":"./admin/src/index.ts","default":"./dist/admin/index.js","require":"./dist/admin/index.js"},"./strapi-server":{"types":"./dist/server/src/index.d.ts","import":"./dist/server/index.mjs","source":"./server/src/index.ts","default":"./dist/server/index.js","require":"./dist/server/index.js"}},"gitHead":"bd19a481feb3e3f3e74cba78c44f2a2946d8da7a","scripts":{"dev":"strapi-plugin watch","build":"strapi-plugin build","watch":"strapi-plugin watch","verify":"strapi-plugin verify","watch:link":"strapi-plugin watch:link","test:ts:back":"tsc -p server/tsconfig.json","test:ts:front":"tsc -p admin/tsconfig.json"},"_npmUser":{"name":"monsieurjanvier","email":"damien.grossfeld@gmail.com"},"repository":{"url":"git+ssh://git@github.com/0x30-ch/strapi-plugins.git","type":"git"},"_npmVersion":"10.9.3","description":"Strapi plugin to easily sort your collections","directories":{},"_nodeVersion":"22.18.0","dependencies":{"react-intl":"^7.1.11","sortablejs":"^1.15.0","@strapi/icons":"^2.0.0-rc.29","react-sortablejs":"^6.1.4","@strapi/design-system":"^2.0.0-rc.29"},"_hasShrinkwrap":false,"devDependencies":{"react":"^18.3.1","prettier":"^3.6.2","react-dom":"^18.3.1","typescript":"^5.3.3","@types/react":"^18.3.3","@strapi/strapi":"^5.18.1","@types/react-dom":"^18.3.0","react-router-dom":"^6.30.1","@types/sortablejs":"^1.15.0","styled-components":"^6.1.19","@strapi/sdk-plugin":"^5.3.2","@strapi/typescript-utils":"^5.18.1"},"peerDependencies":{"react":"^18.3.1","react-dom":"^18.3.1","@strapi/strapi":"^5.18.1","react-router-dom":"^6.30.1","styled-components":"^6.1.19","@strapi/sdk-plugin":"^5.3.2"},"_npmOperationalInternal":{"tmp":"tmp/collection-tree_1.0.1_1755812155101_0.002193757904581206","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@0x30-ch/collection-tree","version":"1.0.2","keywords":["strapi","plugin","collection","tree","sort","hierarchy","cms"],"author":{"name":"jeanvier","email":"hello@0x30.ch"},"license":"MIT","_id":"@0x30-ch/collection-tree@1.0.2","maintainers":[{"name":"monsieurjanvier","email":"damien.grossfeld@gmail.com"}],"homepage":"https://github.com/0x30-ch/strapi-plugins#readme","bugs":{"url":"https://github.com/0x30-ch/strapi-plugins/issues"},"dist":{"shasum":"671ca60f53b91c27d4969be7f367d9931f279fd1","tarball":"https://registry.npmjs.org/@0x30-ch/collection-tree/-/collection-tree-1.0.2.tgz","fileCount":72,"integrity":"sha512-aj6Z2YyyBOFx8QWhfPBOTjd2sh8FC6C9DXAkrCGb2wbeYmFpv2HM9E0m14lr/HiKT9bMl/YT0PAi7jwYAVlg6w==","signatures":[{"sig":"MEYCIQD80Vc60hiyuoGJL18OTtO8mkYoDBRXFiFlmPN3agyryQIhAKMp00DI3zSwdARsDv8nEonFNJgtEqxeVWC0UmZalovW","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1482045},"type":"commonjs","strapi":{"kind":"plugin","name":"collection-tree","description":"Easily sort your collections","displayName":"Collection Tree"},"exports":{"./package.json":"./package.json","./strapi-admin":{"types":"./dist/admin/src/index.d.ts","import":"./dist/admin/index.mjs","source":"./admin/src/index.ts","default":"./dist/admin/index.js","require":"./dist/admin/index.js"},"./strapi-server":{"types":"./dist/server/src/index.d.ts","import":"./dist/server/index.mjs","source":"./server/src/index.ts","default":"./dist/server/index.js","require":"./dist/server/index.js"}},"gitHead":"b2076a3bd59f25110fc5355c29f3cbbf598df1e6","scripts":{"dev":"strapi-plugin watch","build":"strapi-plugin build","watch":"strapi-plugin watch","verify":"strapi-plugin verify","watch:link":"strapi-plugin watch:link","test:ts:back":"tsc -p server/tsconfig.json","test:ts:front":"tsc -p admin/tsconfig.json"},"_npmUser":{"name":"monsieurjanvier","email":"damien.grossfeld@gmail.com"},"repository":{"url":"git+ssh://git@github.com/0x30-ch/strapi-plugins.git","type":"git"},"_npmVersion":"10.9.2","description":"Strapi plugin to easily sort your collections","directories":{},"_nodeVersion":"23.7.0","dependencies":{"react-intl":"^7.1.11","sortablejs":"^1.15.0","@strapi/icons":"^2.0.0-rc.29","react-sortablejs":"^6.1.4","@strapi/design-system":"^2.0.0-rc.29"},"_hasShrinkwrap":false,"devDependencies":{"react":"^18.3.1","prettier":"^3.6.2","react-dom":"^18.3.1","typescript":"^5.3.3","@types/react":"^18.3.3","@strapi/strapi":"^5.18.1","@types/react-dom":"^18.3.0","react-router-dom":"^6.30.1","@types/sortablejs":"^1.15.0","styled-components":"^6.1.19","@strapi/sdk-plugin":"^5.3.2","@strapi/typescript-utils":"^5.18.1"},"peerDependencies":{"react":"^18.3.1","react-dom":"^18.3.1","@strapi/strapi":"^5.18.1","react-router-dom":"^6.30.1","styled-components":"^6.1.19","@strapi/sdk-plugin":"^5.3.2"},"_npmOperationalInternal":{"tmp":"tmp/collection-tree_1.0.2_1755856006787_0.8312522777977951","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@0x30-ch/collection-tree","version":"1.0.3","keywords":["strapi","plugin","collection","tree","sort","hierarchy","cms"],"author":{"name":"jeanvier","email":"hello@0x30.ch"},"license":"MIT","_id":"@0x30-ch/collection-tree@1.0.3","maintainers":[{"name":"monsieurjanvier","email":"damien.grossfeld@gmail.com"}],"homepage":"https://github.com/0x30-ch/strapi-plugins#readme","bugs":{"url":"https://github.com/0x30-ch/strapi-plugins/issues"},"dist":{"shasum":"fdb8b0d66be53121860208ff4e8d29623638827d","tarball":"https://registry.npmjs.org/@0x30-ch/collection-tree/-/collection-tree-1.0.3.tgz","fileCount":72,"integrity":"sha512-2Zn5q+NGSLtw6FqTJ/Ss16qJ900Iw63lb7wMsngKgnjJUudh8u0uSLzdXuCSlU5Oozkw9WBEe0sAWQ6jxqLJMw==","signatures":[{"sig":"MEYCIQDC93yyGLKM16SVTIRM4/qJIeDQLzSBEkYBP6eL/GBBPQIhAMWbHgXRK6s/PYTKjqMGObJjHZGO4iUGvWaF69gUjLEE","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1482045},"type":"commonjs","strapi":{"kind":"plugin","name":"collection-tree","description":"Easily sort your collections","displayName":"Collection Tree"},"exports":{"./package.json":"./package.json","./strapi-admin":{"types":"./dist/admin/src/index.d.ts","import":"./dist/admin/index.mjs","source":"./admin/src/index.ts","default":"./dist/admin/index.js","require":"./dist/admin/index.js"},"./strapi-server":{"types":"./dist/server/src/index.d.ts","import":"./dist/server/index.mjs","source":"./server/src/index.ts","default":"./dist/server/index.js","require":"./dist/server/index.js"}},"gitHead":"b2076a3bd59f25110fc5355c29f3cbbf598df1e6","scripts":{"dev":"strapi-plugin watch","build":"strapi-plugin build","watch":"strapi-plugin watch","verify":"strapi-plugin verify","watch:link":"strapi-plugin watch:link","test:ts:back":"tsc -p server/tsconfig.json","test:ts:front":"tsc -p admin/tsconfig.json"},"_npmUser":{"name":"monsieurjanvier","email":"damien.grossfeld@gmail.com"},"repository":{"url":"git+ssh://git@github.com/0x30-ch/strapi-plugins.git","type":"git"},"_npmVersion":"10.9.2","description":"Strapi plugin to easily sort your collections","directories":{},"_nodeVersion":"23.7.0","dependencies":{"react-intl":"^7.1.11","sortablejs":"^1.15.0","@strapi/icons":"^2.0.0-rc.29","react-sortablejs":"^6.1.4","@strapi/design-system":"^2.0.0-rc.29"},"_hasShrinkwrap":false,"devDependencies":{"react":"^18.3.1","prettier":"^3.6.2","react-dom":"^18.3.1","typescript":"^5.3.3","@types/react":"^18.3.3","@strapi/strapi":"^5.18.1","@types/react-dom":"^18.3.0","react-router-dom":"^6.30.1","@types/sortablejs":"^1.15.0","styled-components":"^6.1.19","@strapi/sdk-plugin":"^5.3.2","@strapi/typescript-utils":"^5.18.1"},"peerDependencies":{"react":"^18.3.1","react-dom":"^18.3.1","@strapi/strapi":"^5.18.1","react-router-dom":"^6.30.1","styled-components":"^6.1.19","@strapi/sdk-plugin":"^5.3.2"},"_npmOperationalInternal":{"tmp":"tmp/collection-tree_1.0.3_1755856255866_0.69907152505595","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"@0x30-ch/collection-tree","version":"1.0.4","keywords":["strapi","plugin","collection","tree","sort","hierarchy","cms"],"author":{"name":"jeanvier","email":"hello@0x30.ch"},"license":"MIT","_id":"@0x30-ch/collection-tree@1.0.4","maintainers":[{"name":"monsieurjanvier","email":"damien.grossfeld@gmail.com"}],"homepage":"https://github.com/0x30-ch/strapi-plugins#readme","bugs":{"url":"https://github.com/0x30-ch/strapi-plugins/issues"},"dist":{"shasum":"cbce9b2cb05b5e3895d8e3438b6491fb7c42d833","tarball":"https://registry.npmjs.org/@0x30-ch/collection-tree/-/collection-tree-1.0.4.tgz","fileCount":72,"integrity":"sha512-K1InYkVEQ3FuJ3N+pUgo5TAyQq4d4ZCmmnHTyyxZNl2BSs0xgeDvRXMn1oa0tDA2IWQ65PL2SAD4TRlPOhT72A==","signatures":[{"sig":"MEYCIQDfpUO2DNhNQOHaB96NXXDKXlvRoCkYPh4UPBPb9mL14gIhAMigl5QAYj/waZeoJVHiRpikBO92DmXtUkkiYEu7rYoE","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1482045},"type":"commonjs","strapi":{"kind":"plugin","name":"collection-tree","description":"Easily sort your collections","displayName":"Collection Tree"},"exports":{"./package.json":"./package.json","./strapi-admin":{"types":"./dist/admin/src/index.d.ts","import":"./dist/admin/index.mjs","source":"./admin/src/index.ts","default":"./dist/admin/index.js","require":"./dist/admin/index.js"},"./strapi-server":{"types":"./dist/server/src/index.d.ts","import":"./dist/server/index.mjs","source":"./server/src/index.ts","default":"./dist/server/index.js","require":"./dist/server/index.js"}},"gitHead":"b2076a3bd59f25110fc5355c29f3cbbf598df1e6","scripts":{"dev":"strapi-plugin watch","build":"strapi-plugin build","watch":"strapi-plugin watch","verify":"strapi-plugin verify","watch:link":"strapi-plugin watch:link","test:ts:back":"tsc -p server/tsconfig.json","test:ts:front":"tsc -p admin/tsconfig.json"},"_npmUser":{"name":"monsieurjanvier","email":"damien.grossfeld@gmail.com"},"repository":{"url":"git+ssh://git@github.com/0x30-ch/strapi-plugins.git","type":"git"},"_npmVersion":"10.9.2","description":"Strapi plugin to easily sort your collections","directories":{},"_nodeVersion":"23.7.0","dependencies":{"react-intl":"^7.1.11","sortablejs":"^1.15.0","@strapi/icons":"^2.0.0-rc.29","react-sortablejs":"^6.1.4","@strapi/design-system":"^2.0.0-rc.29"},"_hasShrinkwrap":false,"devDependencies":{"react":"^18.3.1","prettier":"^3.6.2","react-dom":"^18.3.1","typescript":"^5.3.3","@types/react":"^18.3.3","@strapi/strapi":"^5.18.1","@types/react-dom":"^18.3.0","react-router-dom":"^6.30.1","@types/sortablejs":"^1.15.0","styled-components":"^6.1.19","@strapi/sdk-plugin":"^5.3.2","@strapi/typescript-utils":"^5.18.1"},"peerDependencies":{"react":"^18.3.1","react-dom":"^18.3.1","@strapi/strapi":"^5.18.1","react-router-dom":"^6.30.1","styled-components":"^6.1.19","@strapi/sdk-plugin":"^5.3.2"},"_npmOperationalInternal":{"tmp":"tmp/collection-tree_1.0.4_1755856533775_0.9774322281559311","host":"s3://npm-registry-packages-npm-production"}},"1.0.5":{"name":"@0x30-ch/collection-tree","version":"1.0.5","keywords":["strapi","plugin","collection","tree","sort","hierarchy","cms"],"author":{"name":"jeanvier","email":"hello@0x30.ch"},"license":"MIT","_id":"@0x30-ch/collection-tree@1.0.5","maintainers":[{"name":"monsieurjanvier","email":"damien.grossfeld@gmail.com"}],"homepage":"https://github.com/0x30-ch/strapi-plugins#readme","bugs":{"url":"https://github.com/0x30-ch/strapi-plugins/issues"},"dist":{"shasum":"3d112130f871fd6d91e580bec39090965d411c82","tarball":"https://registry.npmjs.org/@0x30-ch/collection-tree/-/collection-tree-1.0.5.tgz","fileCount":168,"integrity":"sha512-aMi3c7D6x7hF6pQXZzozbi8xAF1k3HXG/RXQ7Nct/RWYrnu+lGS77GAyu75PBGFXqQ1i548rIJzsjPo019zsGw==","signatures":[{"sig":"MEUCIAHRfUU23MyfV+eJqj6iT92gHGuXfsCMXZGKH1GP9+PfAiEAh+BE4G/5Djoa9PTy9rQIyJppJMwHqY3Jaymok1g/zVo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5371126},"type":"commonjs","strapi":{"kind":"plugin","name":"collection-tree","description":"Easily sort your collections","displayName":"Collection Tree"},"exports":{"./package.json":"./package.json","./strapi-admin":{"types":"./dist/admin/src/index.d.ts","import":"./dist/admin/index.mjs","source":"./admin/src/index.ts","default":"./dist/admin/index.js","require":"./dist/admin/index.js"},"./strapi-server":{"types":"./dist/server/src/index.d.ts","import":"./dist/server/index.mjs","source":"./server/src/index.ts","default":"./dist/server/index.js","require":"./dist/server/index.js"}},"gitHead":"d690c948b298592569f9cd30d807fdc7d0bf24cd","scripts":{"dev":"strapi-plugin watch","build":"strapi-plugin build","watch":"strapi-plugin watch","verify":"strapi-plugin verify","watch:link":"strapi-plugin watch:link","test:ts:back":"tsc -p server/tsconfig.json","test:ts:front":"tsc -p admin/tsconfig.json"},"_npmUser":{"name":"monsieurjanvier","email":"damien.grossfeld@gmail.com"},"repository":{"url":"git+ssh://git@github.com/0x30-ch/strapi-plugins.git","type":"git"},"_npmVersion":"10.9.3","description":"Strapi plugin to easily sort your collections","directories":{},"_nodeVersion":"22.18.0","dependencies":{"react-intl":"^7.1.11","sortablejs":"^1.15.0","@strapi/icons":"^2.0.0-rc.29","react-sortablejs":"^6.1.4","@strapi/design-system":"^2.0.0-rc.29"},"_hasShrinkwrap":false,"devDependencies":{"react":"^18.3.1","prettier":"^3.6.2","react-dom":"^18.3.1","typescript":"^5.3.3","@types/react":"^18.3.3","@strapi/strapi":"^5.18.1","@types/react-dom":"^18.3.0","react-router-dom":"^6.30.1","@types/sortablejs":"^1.15.0","styled-components":"^6.1.19","@strapi/sdk-plugin":"^5.3.2","@strapi/typescript-utils":"^5.18.1"},"peerDependencies":{"react":"^18.3.1","react-dom":"^18.3.1","@strapi/strapi":"^5.18.1","react-router-dom":"^6.30.1","styled-components":"^6.1.19","@strapi/sdk-plugin":"^5.3.2"},"_npmOperationalInternal":{"tmp":"tmp/collection-tree_1.0.5_1756023507274_0.26924262418655287","host":"s3://npm-registry-packages-npm-production"}},"1.0.6":{"name":"@0x30-ch/collection-tree","version":"1.0.6","keywords":["strapi","plugin","collection","tree","sort","hierarchy","cms"],"author":{"name":"jeanvier","email":"hello@0x30.ch"},"license":"MIT","_id":"@0x30-ch/collection-tree@1.0.6","maintainers":[{"name":"monsieurjanvier","email":"damien.grossfeld@gmail.com"}],"homepage":"https://github.com/0x30-ch/strapi-plugins#readme","bugs":{"url":"https://github.com/0x30-ch/strapi-plugins/issues"},"dist":{"shasum":"36c0e82c2e908a58956c97e3f0368ef560eae9d5","tarball":"https://registry.npmjs.org/@0x30-ch/collection-tree/-/collection-tree-1.0.6.tgz","fileCount":60,"integrity":"sha512-YN2X4MrjNv8YCeQ3Ho2yGD9imIdCAptcwEHEtX/hCQADaVztkntgc9hd1bIbTtrJaFEUX9c/FLR8vil72Tj71Q==","signatures":[{"sig":"MEUCIEIcrneAUVuNI3SpVqmIjVRcdeoij+EjXyG52NWgzJ1KAiEAr5BJftEU7OapxWs/qHdvHs3ILmNP02A2IbGGJDw9MUI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":584432},"type":"commonjs","strapi":{"kind":"plugin","name":"collection-tree","description":"Easily sort your collections","displayName":"Collection Tree"},"exports":{"./package.json":"./package.json","./strapi-admin":{"types":"./dist/admin/src/index.d.ts","import":"./dist/admin/index.mjs","source":"./admin/src/index.ts","default":"./dist/admin/index.js","require":"./dist/admin/index.js"},"./strapi-server":{"types":"./dist/server/src/index.d.ts","import":"./dist/server/index.mjs","source":"./server/src/index.ts","default":"./dist/server/index.js","require":"./dist/server/index.js"}},"gitHead":"d690c948b298592569f9cd30d807fdc7d0bf24cd","scripts":{"dev":"strapi-plugin watch","build":"strapi-plugin build","watch":"strapi-plugin watch","verify":"strapi-plugin verify","watch:link":"strapi-plugin watch:link","test:ts:back":"tsc -p server/tsconfig.json","test:ts:front":"tsc -p admin/tsconfig.json"},"_npmUser":{"name":"monsieurjanvier","email":"damien.grossfeld@gmail.com"},"repository":{"url":"git+ssh://git@github.com/0x30-ch/strapi-plugins.git","type":"git"},"_npmVersion":"10.9.3","description":"Strapi plugin to easily sort your collections","directories":{},"_nodeVersion":"22.18.0","dependencies":{"react-intl":"^7.1.11","sortablejs":"^1.15.0","@strapi/icons":"^2.0.0-rc.29","react-sortablejs":"^6.1.4","@strapi/design-system":"^2.0.0-rc.29"},"_hasShrinkwrap":false,"devDependencies":{"react":"^18.3.1","prettier":"^3.6.2","react-dom":"^18.3.1","typescript":"^5.3.3","@types/react":"^18.3.3","@strapi/strapi":"^5.18.1","@types/react-dom":"^18.3.0","react-router-dom":"^6.30.1","@types/sortablejs":"^1.15.0","styled-components":"^6.1.19","@strapi/sdk-plugin":"^5.3.2","@strapi/typescript-utils":"^5.18.1"},"peerDependencies":{"react":"^18.3.1","react-dom":"^18.3.1","@strapi/strapi":"^5.18.1","react-router-dom":"^6.30.1","styled-components":"^6.1.19","@strapi/sdk-plugin":"^5.3.2"},"_npmOperationalInternal":{"tmp":"tmp/collection-tree_1.0.6_1756024469147_0.5648124625273694","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@0x30-ch/collection-tree","version":"2.0.0","keywords":["strapi","plugin","collection","tree","sort","hierarchy","cms"],"author":{"name":"jeanvier","email":"hello@0x30.ch"},"license":"MIT","_id":"@0x30-ch/collection-tree@2.0.0","maintainers":[{"name":"monsieurjanvier","email":"damien.grossfeld@gmail.com"}],"homepage":"https://github.com/0x30-ch/strapi-plugins#readme","bugs":{"url":"https://github.com/0x30-ch/strapi-plugins/issues"},"dist":{"shasum":"4061db89fbf1bccfbcd467042b1594aa781b14e4","tarball":"https://registry.npmjs.org/@0x30-ch/collection-tree/-/collection-tree-2.0.0.tgz","fileCount":64,"integrity":"sha512-/j+z5Pn4WwOIJlfBpd4aP2OZ95/bRehK/WMl6UywH9fsurHnb6vgMe1sR6tYX41ixBn4WxrWCwXeqrYYsePhoA==","signatures":[{"sig":"MEQCIA5A9CisYd4vhjI/RP2+66rwC9+FpW8r+LLid+7CefaZAiBQO1jwmclnU6DFzqXxkIh7QfbXqNywqYkfSEwLlLDA3A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7828294},"type":"commonjs","strapi":{"kind":"plugin","name":"collection-tree","description":"Easily sort your collections","displayName":"Collection Tree"},"exports":{"./package.json":"./package.json","./strapi-admin":{"types":"./dist/admin/src/index.d.ts","import":"./dist/admin/index.mjs","source":"./admin/src/index.ts","default":"./dist/admin/index.js","require":"./dist/admin/index.js"},"./strapi-server":{"types":"./dist/server/src/index.d.ts","import":"./dist/server/index.mjs","source":"./server/src/index.ts","default":"./dist/server/index.js","require":"./dist/server/index.js"}},"gitHead":"415ea327dcc66a6fb9627b40799bb4a094ecd49e","scripts":{"dev":"strapi-plugin watch","build":"strapi-plugin build","watch":"strapi-plugin watch","verify":"strapi-plugin verify","watch:link":"strapi-plugin watch:link","test:ts:back":"tsc -p server/tsconfig.json","test:ts:front":"tsc -p admin/tsconfig.json"},"_npmUser":{"name":"monsieurjanvier","email":"damien.grossfeld@gmail.com"},"repository":{"url":"git+ssh://git@github.com/0x30-ch/strapi-plugins.git","type":"git"},"_npmVersion":"10.9.3","description":"Strapi plugin to easily sort your collections","directories":{},"_nodeVersion":"22.18.0","dependencies":{"react-intl":"^7.1.11","sortablejs":"^1.15.6","react-sortablejs":"^6.1.4"},"_hasShrinkwrap":false,"devDependencies":{"prettier":"^3.6.2","typescript":"^5.8.3","@strapi/strapi":"^5.31.3","@types/sortablejs":"^1.15.0","@strapi/sdk-plugin":"^5.3.2","@strapi/typescript-utils":"^5.31.3"},"peerDependencies":{"react":"^18.3.1","react-dom":"^18.3.1","@strapi/icons":"^2.0.0","@strapi/strapi":"^5.18.1","react-router-dom":"^6.30.1","styled-components":"^6.1.19","@strapi/sdk-plugin":"^5.3.2","@strapi/design-system":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/collection-tree_2.0.0_1770668367161_0.8599632152194037","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"@0x30-ch/collection-tree","version":"2.0.1","keywords":["strapi","plugin","collection","tree","sort","hierarchy","cms"],"author":{"name":"jeanvier","email":"hello@0x30.ch"},"license":"MIT","_id":"@0x30-ch/collection-tree@2.0.1","maintainers":[{"name":"monsieurjanvier","email":"damien.grossfeld@gmail.com"}],"homepage":"https://github.com/0x30-ch/strapi-plugins#readme","bugs":{"url":"https://github.com/0x30-ch/strapi-plugins/issues"},"dist":{"shasum":"dd58d74a095491243612acc9546a759de048354d","tarball":"https://registry.npmjs.org/@0x30-ch/collection-tree/-/collection-tree-2.0.1.tgz","fileCount":150,"integrity":"sha512-uN0SNEBWrHLDiQu8p5ijGNd5SyZxBsYDdnslN6L1Hy7dG22N/o/X2+O2/N1tzxZIhxvFwzrIz7CQ2oxVpJCQOw==","signatures":[{"sig":"MEUCIQDDADYwxNIK2FuPnROyMYv1rui1kN7trtiKt6RPOReQtQIgAmwmBNX/gFSZkx/8vZgFL2YyLDe9l10nlDDi4ON6Hg0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":72187659},"type":"commonjs","strapi":{"kind":"plugin","name":"collection-tree","description":"Easily sort your collections","displayName":"Collection Tree"},"exports":{"./package.json":"./package.json","./strapi-admin":{"types":"./dist/admin/src/index.d.ts","import":"./dist/admin/index.mjs","source":"./admin/src/index.ts","default":"./dist/admin/index.js","require":"./dist/admin/index.js"},"./strapi-server":{"types":"./dist/server/src/index.d.ts","import":"./dist/server/index.mjs","source":"./server/src/index.ts","default":"./dist/server/index.js","require":"./dist/server/index.js"}},"gitHead":"4cbe5e6adecc7feecdabfe3d64ec911f77b5a7ba","scripts":{"dev":"strapi-plugin watch","build":"strapi-plugin build","watch":"strapi-plugin watch","verify":"strapi-plugin verify","watch:link":"strapi-plugin watch:link","test:ts:back":"tsc -p server/tsconfig.json","test:ts:front":"tsc -p admin/tsconfig.json"},"_npmUser":{"name":"monsieurjanvier","email":"damien.grossfeld@gmail.com"},"repository":{"url":"git+ssh://git@github.com/0x30-ch/strapi-plugins.git","type":"git"},"_npmVersion":"10.9.3","description":"Strapi plugin to easily sort your collections","directories":{},"_nodeVersion":"22.18.0","dependencies":{"react-intl":"^7.1.11","sortablejs":"^1.15.6","react-sortablejs":"^6.1.4"},"_hasShrinkwrap":false,"devDependencies":{"prettier":"^3.6.2","typescript":"^5.8.3","@strapi/strapi":"^5.31.3","@types/sortablejs":"^1.15.0","@strapi/sdk-plugin":"^5.3.2","@strapi/typescript-utils":"^5.31.3"},"peerDependencies":{"react":"^18.3.1","react-dom":"^18.3.1","@strapi/icons":"^2.0.0","@strapi/strapi":"^5.18.1","react-router-dom":"^6.30.1","styled-components":"^6.1.19","@strapi/sdk-plugin":"^5.3.2","@strapi/design-system":"^2.0.0"},"_npmOperationalInternal":{"tmp":"tmp/collection-tree_2.0.1_1770676334742_0.016443698055222722","host":"s3://npm-registry-packages-npm-production"}},"2.0.2":{"version":"2.0.2","keywords":["strapi","plugin","collection","tree","sort","hierarchy","cms"],"type":"commonjs","exports":{"./package.json":"./package.json","./strapi-admin":{"types":"./dist/admin/src/index.d.ts","source":"./admin/src/index.ts","import":"./dist/admin/index.mjs","require":"./dist/admin/index.js","default":"./dist/admin/index.js"},"./strapi-server":{"types":"./dist/server/src/index.d.ts","source":"./server/src/index.ts","import":"./dist/server/index.mjs","require":"./dist/server/index.js","default":"./dist/server/index.js"}},"scripts":{"build":"strapi-plugin build","watch":"strapi-plugin watch","dev":"strapi-plugin watch","watch:link":"strapi-plugin watch:link","verify":"strapi-plugin verify","test:ts:front":"tsc -p admin/tsconfig.json","test:ts:back":"tsc -p server/tsconfig.json"},"dependencies":{"react-intl":"^7.1.11","react-sortablejs":"^6.1.4","sortablejs":"^1.15.6"},"devDependencies":{"@strapi/strapi":"^5.31.3","@strapi/sdk-plugin":"^5.3.2","@strapi/typescript-utils":"^5.31.3","@types/sortablejs":"^1.15.0","prettier":"^3.6.2","typescript":"^5.8.3"},"peerDependencies":{"@strapi/strapi":"^5.18.1","@strapi/sdk-plugin":"^5.3.2","@strapi/design-system":"^2.0.0","@strapi/icons":"^2.0.0","react":"^18.3.1","react-dom":"^18.3.1","react-router-dom":"^6.30.1","styled-components":"^6.1.19"},"strapi":{"kind":"plugin","name":"collection-tree","displayName":"Collection Tree","description":"Easily sort your collections"},"name":"@0x30-ch/collection-tree","description":"Strapi plugin to easily sort your collections","license":"MIT","repository":{"type":"git","url":"git+ssh://git@github.com/0x30-ch/strapi-plugins.git"},"bugs":{"url":"https://github.com/0x30-ch/strapi-plugins/issues"},"homepage":"https://github.com/0x30-ch/strapi-plugins#readme","author":{"name":"jeanvier","email":"hello@0x30.ch"},"_id":"@0x30-ch/collection-tree@2.0.2","gitHead":"1eda360cd4ebe2d723fcb00fa6c2ded02a43cb78","_nodeVersion":"22.18.0","_npmVersion":"10.9.3","dist":{"integrity":"sha512-g37D6GPScL9FbD4Ct7QGuov3/WqUeYC6P4z1e8I6ksAlp3e37kqYwST5+MSPBVOhJyQJj/tojXYncvNFigFWtg==","shasum":"5262eb0eb2f2e294fa5cb1bd895bc808a2cba409","tarball":"https://registry.npmjs.org/@0x30-ch/collection-tree/-/collection-tree-2.0.2.tgz","fileCount":52,"unpackedSize":1831561,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIDiHHCT0O8ozmZNXYhHHX/wTYqInRLPLYb+mwKHKxY9IAiEAphwpf2fGW30H76xC5K+Umzhqamwb8vHmwRcuDqmIg2s="}]},"_npmUser":{"name":"monsieurjanvier","email":"damien.grossfeld@gmail.com"},"directories":{},"maintainers":[{"name":"monsieurjanvier","email":"damien.grossfeld@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/collection-tree_2.0.2_1770727898354_0.8162369473357864"},"_hasShrinkwrap":false}},"time":{"created":"2025-08-21T21:34:22.153Z","modified":"2026-02-10T12:51:38.687Z","1.0.0":"2025-08-21T21:34:22.444Z","1.0.1":"2025-08-21T21:35:55.308Z","1.0.2":"2025-08-22T09:46:47.008Z","1.0.3":"2025-08-22T09:50:56.080Z","1.0.4":"2025-08-22T09:55:33.976Z","1.0.5":"2025-08-24T08:18:27.549Z","1.0.6":"2025-08-24T08:34:29.349Z","2.0.0":"2026-02-09T20:19:27.459Z","2.0.1":"2026-02-09T22:32:15.271Z","2.0.2":"2026-02-10T12:51:38.536Z"},"bugs":{"url":"https://github.com/0x30-ch/strapi-plugins/issues"},"author":{"name":"jeanvier","email":"hello@0x30.ch"},"license":"MIT","homepage":"https://github.com/0x30-ch/strapi-plugins#readme","keywords":["strapi","plugin","collection","tree","sort","hierarchy","cms"],"repository":{"type":"git","url":"git+ssh://git@github.com/0x30-ch/strapi-plugins.git"},"description":"Strapi plugin to easily sort your collections","maintainers":[{"name":"monsieurjanvier","email":"damien.grossfeld@gmail.com"}],"readme":"# Strapi Collection Tree Plugin\n\nA Strapi 5 plugin that enables hierarchical tree structures and flat sorting for your collections with drag-and-drop. Manage categories, menus, nested content, tags, and any data that benefits from ordered or hierarchical organization.\n\n![Plugin Demo](https://img.shields.io/badge/Strapi-5.x-blue) ![License](https://img.shields.io/badge/license-MIT-green) ![TypeScript](https://img.shields.io/badge/TypeScript-Ready-blue) ![Version](https://img.shields.io/badge/version-2.0.0-brightgreen)\n\n## Features\n\n- **Hierarchical Tree Structures**: Transform any collection into a nested tree using self-referential relations\n- **Flat Sorting**: Collections without parent/children relations get flat drag-and-drop reordering (root-level only)\n- **Drag & Drop Interface**: Reorder and nest entries with visual feedback (powered by SortableJS)\n- **Tree Connector Lines**: Visual L-shaped connectors showing parent-child relationships\n- **Expand / Collapse**: Per-node and bulk expand/collapse controls (auto-collapses above 100 nodes)\n- **Per-Locale Tree Ordering**: Manage independent tree orders per locale — a locale dropdown appears when the content type is localized\n- **Scope Filtering**: Filter tree by published status (`published` or `all`)\n- **Configurable Label Field**: Choose which attribute (`title`, `name`, etc.) to display as the node label\n- **Full i18n**: All UI strings use `react-intl` for internationalization\n- **Content API**: Public endpoints for flat and nested tree data retrieval with locale support\n\n## Installation\n\n```bash\nnpm install @0x30-ch/collection-tree\n# or\nyarn add @0x30-ch/collection-tree\n# or\npnpm add @0x30-ch/collection-tree\n```\n\n## Configuration\n\n### 1. Add the Custom Field\n\nIn the Strapi Content-Type Builder, add the **Tree** custom field to your collection type. Configure:\n\n- **Label field**: Which attribute to show as the node label (e.g., `title`, `name`)\n- **Scope**: Which entries participate in the tree (`published` or `all`)\n\n### 2. Set Up Relations (Optional — for Nesting)\n\nFor hierarchical (nested) trees, your content type must have self-referential relations:\n\n- A **manyToOne** relation named `parent` pointing to itself\n- A **oneToMany** relation named `children` pointing to itself (inverse of `parent`)\n\nThe plugin uses the join table created by these relations to store sort order. Root node sort order is stored in the `tree` integer custom field itself.\n\n**If no parent/children relations are defined**, the plugin works in **flat mode** — all entries are sorted at root level using only the `tree` column. The admin UI hides nesting controls (chevrons, child drop zones, expand/collapse all) automatically.\n\n### 3. Restart Your Server\n\nAfter configuration, restart your Strapi server to apply the schema changes.\n\n## Usage\n\n### Admin Interface\n\n1. **Navigate** to the Collection Tree page in the admin panel sidebar\n2. **Select** a collection from the left sidebar\n3. **Switch locale** using the dropdown in the toolbar (appears only for localized content types with multiple locales)\n4. **Drag & drop** entries to reorder them at the same level or nest them under a parent (nesting only available when parent/children relations exist)\n5. **Expand/collapse** nodes using the chevron or the bulk toggle button\n6. **Save** your changes — order is saved independently per locale\n\n### Per-Locale Tree Ordering\n\nStrapi 5 i18n creates separate database rows per locale, so each locale naturally has its own tree order. The plugin:\n\n- Fetches available locales from the i18n plugin on mount\n- Shows a locale dropdown in the header toolbar when the active content type is localized and multiple locales exist\n- Defaults to the default locale\n- Passes the selected locale to both fetch and save API calls\n- Non-localized content types show no locale dropdown\n\n### Admin API\n\nThe plugin exposes three admin API endpoints (authenticated via `admin::isAuthenticatedAdmin`):\n\n| Method | Path | Purpose |\n|--------|------|---------|\n| `GET` | `/collection-tree/content-types` | List content types with tree fields (includes `isLocalized` and `supportsNesting` flags) |\n| `GET` | `/collection-tree/nodes` | Fetch tree nodes (`uid`, `field`, `labelField`, `scope`, `locale` params) |\n| `PUT` | `/collection-tree/nodes` | Save tree order (`uid`, `field`, `nodes[]`, `scope`, `locale` body) |\n\n### Content API (Public)\n\nTwo public endpoints for retrieving sorted tree data in your frontend:\n\n| Method | Path | Purpose |\n|--------|------|---------|\n| `GET` | `/api/collection-tree/flat` | Flat list with `depth` and `parentId` fields |\n| `GET` | `/api/collection-tree/nested` | Nested structure with `children` arrays |\n\n**Query parameters** (both endpoints):\n\n| Param | Type | Description |\n|-------|------|-------------|\n| `uid` | `string` | **(required)** Content type UID (e.g. `api::category.category`) |\n| `field` | `string` | Tree field name (auto-detected if omitted) |\n| `labelField` | `string` | Label attribute to use |\n| `scope` | `string` | `published` (default) or `all` |\n| `locale` | `string` | Locale code (e.g. `en`, `fr`) — defaults to default locale for localized types |\n| `fields` | `string` | Comma-separated fields to include |\n| `populate` | `string` | Comma-separated relations to populate, or `*` |\n\n**Example:**\n\n```bash\n# Flat list for French locale\nGET /api/collection-tree/flat?uid=api::category.category&locale=fr\n\n# Nested tree, published only\nGET /api/collection-tree/nested?uid=api::category.category&scope=published&fields=title,slug&populate=image\n```\n\n## Development\n\n### Prerequisites\n\n- Node.js >= 18.0.0\n- Strapi 5.x\n- TypeScript support\n\n### Setup\n\n```bash\ngit clone https://github.com/0x30-ch/strapi-plugins.git\ncd strapi-plugins\npnpm install\n\n# Start development\npnpm dev\n\n# Build plugin\ncd packages/collection-tree\nnpm run build\n\n# Type checking\nnpm run test:ts:front  # Frontend types\nnpm run test:ts:back   # Backend types\n\n# Verify plugin structure\nnpm run verify\n```\n\n### Project Structure\n\n```\npackages/collection-tree/\n├── admin/                     # Frontend (React + Strapi Design System v2)\n│   ├── src/\n│   │   ├── components/\n│   │   │   └── tree/          # Tree UI components\n│   │   │       ├── styles.ts         # Styled-components (connectors, cards)\n│   │   │       ├── TreeNodeItem.tsx   # Single node (chevron, handle, label, badge)\n│   │   │       ├── TreeList.tsx       # Recursive ReactSortable wrapper\n│   │   │       ├── TreeSidebar.tsx    # Left sidebar with content type list\n│   │   │       └── TreeContent.tsx    # Main area (header, expand/collapse, tree)\n│   │   ├── hooks/\n│   │   │   └── useTreeData.ts        # Fetch/save logic + state management + locale\n│   │   ├── pages/\n│   │   │   └── TreePage.tsx          # Thin orchestrator with locale dropdown\n│   │   ├── types/\n│   │   │   └── index.ts              # Shared types (ContentTypeSummary, FlatNode, TreeNode, Locale)\n│   │   ├── utils/\n│   │   │   ├── getTranslation.ts     # i18n helper\n│   │   │   └── treeUtils.ts          # Pure functions (buildTree, flattenTree, etc.)\n│   │   └── translations/\n│   │       └── en.json               # English translations\n│   └── tsconfig.json\n├── server/                    # Backend logic\n│   ├── src/\n│   │   ├── controllers/       # API controllers (tree.ts, tree-public.ts)\n│   │   ├── services/          # Core service (resolveTreeModel, getNodes, updateNodes)\n│   │   ├── routes/            # Route definitions (admin-api.ts, content-api.ts)\n│   │   ├── utils/             # Tree helpers\n│   │   └── config/            # Plugin configuration\n│   └── tsconfig.json\n└── package.json\n```\n\n## Architecture\n\n### Relation-Based Tree Model (Nested Mode)\n\nThe plugin uses **self-referential relations** for hierarchical trees:\n\n- **Parent relation** (`manyToOne`): Each entry can have one parent\n- **Children relation** (`oneToMany`): Each entry can have many children (inverse of parent)\n- **Join table**: Strapi creates a join table for the relation, storing `parent_id`, `child_id`, and an `order` column\n- **Root sort order**: Root nodes (no parent) store their sort index in the `tree` custom field column\n- **Nested sort order**: Child nodes store their sort index in the join table's order column\n\n### Flat Mode (No Relations)\n\nWhen a content type has a tree custom field but **no self-referential parent/children relations**:\n\n- All entries are treated as root nodes\n- Sort order is stored solely in the `tree` custom field column\n- The admin UI disables nesting: no chevrons, no child drop zones, no expand/collapse controls\n- Drag-and-drop reordering works at root level only\n\n### Locale Support\n\n- Strapi 5 i18n creates **separate database rows per locale** (each with its own `id`)\n- Join table parent-child relationships are implicitly per-locale since the IDs are locale-specific\n- The `tree` column (root ordering) is per-row, so per-locale by nature\n- The service accepts an optional `locale` parameter — when provided, queries filter by locale; when omitted, falls back to the default locale\n\n### Scope Support\n\n| Scope | Description |\n|-------|-------------|\n| `published` | Published entries only (default) |\n| `all` | All entries (drafts + published) |\n\n## Contributing\n\n1. Fork the repository\n2. Create a feature branch (`git checkout -b feature/amazing-feature`)\n3. Commit your changes (`git commit -m 'Add amazing feature'`)\n4. Push to the branch (`git push origin feature/amazing-feature`)\n5. Open a Pull Request\n\n## License\n\nMIT License - see [LICENSE](LICENSE) file for details.\n\n## Acknowledgments\n\n- [Strapi](https://strapi.io/) - Headless CMS framework\n- [SortableJS](https://github.com/SortableJS/Sortable) - Drag-and-drop functionality\n- [0x30](https://github.com/0x30-ch) - Original plugin author\n\n## Support\n\n- [Issues](https://github.com/0x30-ch/strapi-plugins/issues)\n- [Documentation](https://github.com/0x30-ch/strapi-plugins/tree/main/packages/collection-tree)\n","readmeFilename":"README.md"}