New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details →
Socket
Book a DemoSign in
Socket

strapi-v5-deep-populate

Package Overview
Dependencies
Maintainers
0
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

strapi-v5-deep-populate

Strapi v5 plugin that populates nested content.

latest
Source
npmnpm
Version
1.0.1
Version published
Maintainers
0
Created
Source

Strapi v5 Plugin: populate-deep

This plugin is a fork of strapi-v5-plugin-populate-deep which is a fork of the original strapi-plugin-populate-deep, which does not support Strapi v5 at the time of this publication.

Why this Fork?

With Strapi v5, a new API structure validation feature was introduced, which makes the populate parameter incompatible with how the original plugin works. This plugin addresses that by introducing a new parameter pLevel to avoid validation issues.

Installation

npm install strapi-v5-deep-populate

yarn add strapi-v5-deep-populate

Usages

The plugin allows you to deeply populate data in your Strapi queries with a new parameter pLevel. This parameter specifies the depth of population for your API responses.

Examples

  • Populate a request with the default max depth. /api/articles?pLevel

  • Populate a request with the a custom depth /api/articles?pLevel=10

Good to know

  • The default maximum depth is 5 levels deep.
  • The pLevel parameter works for all collections and single types when using findOne and findMany methods.
  • Increasing the depth level may result in longer API response times.

Configuration

You can configure the default depth globally through the plugin configuration. Additionally, you can delete keys from the api response.

Example configuration

To customize the default depth, add or modify the config/plugins.js file as shown below: config/plugins.js

module.exports = ({ env }) => ({
  'strapi-v5-deep-populate': {
    config: {
      defaultDepth: 3, // default is 5
      skipCreatorFields: true,
      keysToDelete: [ // keys to delete from the response
        "createdAt"
      ],
    },
  },
});

This configuration will set the default depth to 3 levels across all API requests unless specified otherwise in the request itself and will remove the createdAt key from the response.

Contributions

This plugin is a fork of the contribution of NEDDL to the original plugin and can be found in the original repository which originally is a fork of the work by Barelydead and can be found in the original repository.

The original idea for getting the populate structure was created by tomnovotny7 and can be found in this github thread

We appreciate and acknowledge all contributions made by the open-source community to the original project.

FAQs

Package last updated on 12 Oct 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts