{"_id":"@amovet/strapi-v5-plugin-populate-deep","_rev":"4-81930fd0a4f156c319a3c20df6b7b1ec","name":"@amovet/strapi-v5-plugin-populate-deep","dist-tags":{"latest":"1.0.5"},"versions":{"1.0.1":{"name":"@amovet/strapi-v5-plugin-populate-deep","version":"1.0.1","author":{"name":"Amovet"},"license":"MIT","_id":"@amovet/strapi-v5-plugin-populate-deep@1.0.1","maintainers":[{"name":"amovet","email":"amovetwork@gmail.com"}],"contributors":[{"name":"Christofer Jungberg"},{"name":"Mustafa ONAL"},{"name":"Amovet"}],"homepage":"https://github.com/amovet/strapi-v5-plugin-populate-deep-fixed#readme","bugs":{"url":"https://github.com/amovet/strapi-v5-plugin-populate-deep-fixed/issues"},"dist":{"shasum":"e5101421f797fccfe3c1da105a11b7d462e5ddea","tarball":"https://registry.npmjs.org/@amovet/strapi-v5-plugin-populate-deep/-/strapi-v5-plugin-populate-deep-1.0.1.tgz","fileCount":7,"integrity":"sha512-EyWEqRiGGOqx5vhvos8cR8rXVCBExPjCfQyl3k6oHQhqXZ2HkXOj6RWGsJ4E5uh+Yw4QZUz8CnuFQWOiLhVD/g==","signatures":[{"sig":"MEQCIBlpQnM70GjzDSDrp3HXBoq3+0L5W9bgNO+9efSuhn9EAiAqd91B5JnxOZEA1oQ8/P8AOFLsURabuw+n1DfVeYqz5A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5904},"strapi":{"kind":"plugin","name":"@amovet/strapi-v5-plugin-populate-deep","description":"API helper to populate deep content structures for Strapi v5."},"engines":{"npm":">=6.0.0","node":">=18.0.0 <=22.x.x"},"gitHead":"9bd5c431699814779f17e75585d623d4e33f27f9","_npmUser":{"name":"amovet","actor":{"name":"amovet","type":"user","email":"amovetwork@gmail.com"},"email":"amovetwork@gmail.com"},"repository":{"url":"git+https://github.com/amovet/strapi-v5-plugin-populate-deep-fixed.git","type":"git"},"_npmVersion":"10.8.2","description":"Strapi v5 plugin that populates nested content (Fixed fork).","directories":{},"_nodeVersion":"20.18.3","dependencies":{},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/strapi-v5-plugin-populate-deep_1.0.1_1751975713081_0.3953299623926465","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@amovet/strapi-v5-plugin-populate-deep","version":"1.0.3","author":{"name":"Amovet"},"license":"MIT","_id":"@amovet/strapi-v5-plugin-populate-deep@1.0.3","maintainers":[{"name":"amovet","email":"amovetwork@gmail.com"}],"contributors":[{"name":"Christofer Jungberg"},{"name":"Mustafa ONAL"},{"name":"Amovet"}],"homepage":"https://github.com/amovet/strapi-v5-plugin-populate-deep-fixed#readme","bugs":{"url":"https://github.com/amovet/strapi-v5-plugin-populate-deep-fixed/issues"},"dist":{"shasum":"4e17855b9c8d79154f249a0b8c02935d7d38b235","tarball":"https://registry.npmjs.org/@amovet/strapi-v5-plugin-populate-deep/-/strapi-v5-plugin-populate-deep-1.0.3.tgz","fileCount":7,"integrity":"sha512-iFJwA+1YPcxBgDxewS7d552g3c8XqT0oKY1g5ME8rnw0wfXqxHjohX9T03yeS2KTnUrs1QW7uf8ihUIFYm7pcA==","signatures":[{"sig":"MEUCICuLRyXrLkxckewisoh90UA8fFqq2UQyK7xW6ZCTtqIZAiEAgdiF1tVG8yE6cegzjcnylUo42sN6sTKmlNjkLzcn4oc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5897},"strapi":{"kind":"plugin","name":"strapi-v5-plugin-populate-deep","description":"API helper to populate deep content structures for Strapi v5."},"engines":{"npm":">=6.0.0","node":">=18.0.0 <=22.x.x"},"gitHead":"512e636ab3d4cb5456d88295118d7a133f24068f","_npmUser":{"name":"amovet","actor":{"name":"amovet","type":"user","email":"amovetwork@gmail.com"},"email":"amovetwork@gmail.com"},"repository":{"url":"git+https://github.com/amovet/strapi-v5-plugin-populate-deep-fixed.git","type":"git"},"_npmVersion":"10.8.2","description":"Strapi v5 plugin that populates nested content (Fixed fork).","directories":{},"_nodeVersion":"20.18.3","dependencies":{},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/strapi-v5-plugin-populate-deep_1.0.3_1751976953290_0.8178037996137495","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"@amovet/strapi-v5-plugin-populate-deep","version":"1.0.4","author":{"name":"Amovet"},"license":"MIT","_id":"@amovet/strapi-v5-plugin-populate-deep@1.0.4","maintainers":[{"name":"amovet","email":"amovetwork@gmail.com"}],"contributors":[{"name":"Christofer Jungberg"},{"name":"Mustafa ONAL"},{"name":"Amovet"}],"homepage":"https://github.com/amovet/strapi-v5-plugin-populate-deep-fixed#readme","bugs":{"url":"https://github.com/amovet/strapi-v5-plugin-populate-deep-fixed/issues"},"dist":{"shasum":"c49519aa722f752993ca54a9b79dbd7ab0bbb796","tarball":"https://registry.npmjs.org/@amovet/strapi-v5-plugin-populate-deep/-/strapi-v5-plugin-populate-deep-1.0.4.tgz","fileCount":7,"integrity":"sha512-t69QCbuupSamKQCcjiJXZM0OptkyKKnM8pgy2Vg+kbSqPL6hCUw+KFDy5eGHyIcd/ceLb2C2q4Ktslc9oqPvCQ==","signatures":[{"sig":"MEQCIBp42igwqjwuUFFj/dsoSWJGoRruq+/3ua2twXZbQZR5AiAfW3v53n6XTl7lj8DsiZh2C1+8GzziGM2VMr8UbE+HYg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5889},"strapi":{"kind":"plugin","name":"strapi-v5-plugin-populate-deep","description":"API helper to populate deep content structures for Strapi v5."},"engines":{"npm":">=6.0.0","node":">=18.0.0 <=22.x.x"},"gitHead":"11c4334a7974ab372cc58773ca50b52f8ef457c3","_npmUser":{"name":"amovet","actor":{"name":"amovet","type":"user","email":"amovetwork@gmail.com"},"email":"amovetwork@gmail.com"},"repository":{"url":"git+https://github.com/amovet/strapi-v5-plugin-populate-deep-fixed.git","type":"git"},"_npmVersion":"10.8.2","description":"Strapi v5 plugin that populates nested content (Fixed fork).","directories":{},"_nodeVersion":"20.18.3","dependencies":{},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/strapi-v5-plugin-populate-deep_1.0.4_1751977208507_0.9966358216824658","host":"s3://npm-registry-packages-npm-production"}},"1.0.5":{"name":"@amovet/strapi-v5-plugin-populate-deep","version":"1.0.5","description":"Strapi v5 plugin that populates nested content (Fixed fork).","strapi":{"name":"strapi-v5-plugin-populate-deep","description":"API helper to populate deep content structures for Strapi v5.","kind":"plugin"},"dependencies":{},"author":{"name":"Amovet"},"contributors":[{"name":"Christofer Jungberg"},{"name":"Mustafa ONAL"},{"name":"Amovet"}],"maintainers":[{"name":"amovet","email":"amovetwork@gmail.com"}],"repository":{"type":"git","url":"git+https://github.com/amovet/strapi-v5-plugin-populate-deep-fixed.git"},"engines":{"node":">=18.0.0 <=22.x.x","npm":">=6.0.0"},"license":"MIT","_id":"@amovet/strapi-v5-plugin-populate-deep@1.0.5","gitHead":"59780811b94a72d354b10a43f3de3b720fae8fb4","bugs":{"url":"https://github.com/amovet/strapi-v5-plugin-populate-deep-fixed/issues"},"homepage":"https://github.com/amovet/strapi-v5-plugin-populate-deep-fixed#readme","_nodeVersion":"20.18.3","_npmVersion":"10.8.2","dist":{"integrity":"sha512-Qz+iPXBJT5UzVdlYQq9lDCvN9c8tqLFn673gI+Lode1yH3Y27u5M2GVCZ86BEaCuy5PXJGNVxQJiWT6CNgA/Gg==","shasum":"8cec41843037cdfaecd22f4481c26c3c86d431f9","tarball":"https://registry.npmjs.org/@amovet/strapi-v5-plugin-populate-deep/-/strapi-v5-plugin-populate-deep-1.0.5.tgz","fileCount":7,"unpackedSize":5894,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDTqgR0JnFkR+nn2TPJI/KHlx0VSPvklk0kMfyojfWj3AIgRFMV7QgFoLWEEL5hmM8KaCoZ8RxTVajoGznsfscBeU0="}]},"_npmUser":{"name":"amovet","email":"amovetwork@gmail.com","actor":{"name":"amovet","email":"amovetwork@gmail.com","type":"user"}},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/strapi-v5-plugin-populate-deep_1.0.5_1752010054449_0.44836016668178247"},"_hasShrinkwrap":false}},"time":{"created":"2025-07-08T11:55:12.993Z","modified":"2025-07-08T21:27:34.849Z","1.0.1":"2025-07-08T11:55:13.252Z","1.0.3":"2025-07-08T12:15:53.463Z","1.0.4":"2025-07-08T12:20:08.730Z","1.0.5":"2025-07-08T21:27:34.636Z"},"bugs":{"url":"https://github.com/amovet/strapi-v5-plugin-populate-deep-fixed/issues"},"author":{"name":"Amovet"},"license":"MIT","homepage":"https://github.com/amovet/strapi-v5-plugin-populate-deep-fixed#readme","repository":{"type":"git","url":"git+https://github.com/amovet/strapi-v5-plugin-populate-deep-fixed.git"},"description":"Strapi v5 plugin that populates nested content (Fixed fork).","contributors":[{"name":"Christofer Jungberg"},{"name":"Mustafa ONAL"},{"name":"Amovet"}],"maintainers":[{"name":"amovet","email":"amovetwork@gmail.com"}],"readme":"# Strapi v5 Plugin Populate Deep (Fixed Fork)\n\nThis is a fixed version of the strapi-v5-plugin-populate-deep plugin for Strapi v5.\n\nThe plugin allows you to easily and deeply populate related data in your API requests using a simple pLevel parameter, saving you from having to manually write complex populate objects.\n\n## Why this Fork?\n\nThis package is a fork of the original strapi-v5-plugin-populate-deep plugin.\n\nThe Problem:\nThe original version of the plugin had a logical bug that caused incorrect and incomplete data loading when working with recursive relations (e.g., when a page collection refers to itself through parent and child fields). At a certain depth level, some relations (like tags) would stop being populated.\n\nThe Solution:\nThe issue was caused by the state for tracking processed models being shared across all branches of the recursion. In this version, the bug is fixed: a copy of the state is now passed to each recursive call. This ensures correct, predictable, and complete data population at any nesting level.\n\n# Installation\n\n`npm install @amovet/strapi-v5-plugin-populate-deep`\n\n`yarn add  @amovet/strapi-v5-plugin-populate-deepp`\n\n\n# Usages\n\n1. Enabling the Plugin\n\nTo activate the plugin, add it to your config/plugins.ts configuration file.\nJavaScript\n\n## Examples\n\n1. Populate a request with the default max depth.\n   `/api/articles?pLevel`\n\n2. Populate a request with the a custom depth\n   `/api/articles?pLevel=10`\n\n## Good to know\n\n- The default maximum depth is 5 levels deep.\n- The pLevel parameter works for all collections and single types when using findOne and findMany methods.\n- Increasing the depth level may result in longer API response times.\n\n# Configuration\n\nYou can configure the default depth globally through the plugin configuration.\n\n## Example configuration\n\nTo customize the default depth, add or modify the config/plugins.js file as shown below:\n`config/plugins.js`\n\n```\nmodule.exports = ({ env }) => ({\n  'strapi-v5-plugin-populate-deep': {\n    config: {\n      defaultDepth: 3, // Default is 5\n    }\n  },\n});\n```\n\n🙏 Credits\n\nThis package is a fixed fork. A huge thanks to the original authors and contributors for their foundational work:\n\n    Mustafa ONAL\n\n    Christofer Jungberg\n\n","readmeFilename":"README.md"}