gatsby-source-cloudinary icon indicating copy to clipboard operation
gatsby-source-cloudinary copied to clipboard

Clarify usage for multiple `resourceType`s

Open evanwinter opened this issue 3 years ago • 3 comments

Correct me if I'm wrong, but it seems like the way to source both image and video resourceType's, is to include the gatsby-source-cloudinary plugin twice in gatsby-config.js. Is this the recommended approach?

Example:

module.exports = {
  plugins: [
    ...
    {
      resolve: `gatsby-source-cloudinary`,
      options: {
        cloudName: process.env.CLOUDINARY_CLOUD_NAME,
        apiKey: process.env.CLOUDINARY_API_KEY,
        apiSecret: process.env.CLOUDINARY_API_SECRET,
        resourceType: "image",
      },
    },
    {
      resolve: `gatsby-source-cloudinary`,
      options: {
        cloudName: process.env.CLOUDINARY_CLOUD_NAME,
        apiKey: process.env.CLOUDINARY_API_KEY,
        apiSecret: process.env.CLOUDINARY_API_SECRET,
        resourceType: "video",
      },
    },
    ...
  ]
};

I tried an array ["image", "video"] but resourceType must be a string. Also tried "image,video" but that didn't seem to work.

I feel like it would be nice to call out the recommended way to do this in the docs somewhere (whether that is what I've done or another way). I find it kind of surprising the Gatsby config allows duplicate plugins like this; I tried this as a kind of last-ditch effort and it worked, so some explicit guidance would be super helpful.

evanwinter avatar Dec 17 '22 01:12 evanwinter

It's how official plugins from Gatsby do it, but it's not very well known and you'd be welcome to add it to the docs.

raae avatar Oct 14 '23 13:10 raae

@raae I would like to work on this issue, if it is still open

AniqJaved avatar Oct 25 '23 20:10 AniqJaved

It is; go ahead!

raae avatar Oct 30 '23 16:10 raae