nuxt-modules / cloudinary

Cloudinary Module for Nuxt
https://cloudinary.nuxtjs.org
MIT License
249 stars 34 forks source link

Ability to pass in Cloudinary configuration at the module level #195

Closed colbyfayock closed 6 months ago

colbyfayock commented 6 months ago

Is your feature request related to a problem? Please describe.

The underlaying URL gen library accepts a config property which allows people to set up things like custom cnames along with other more advanced configurations.

The CldImage component accepts a config property, but ideally, this is something that can be configurable at the module leve.

Describe the solution you'd like

A few options for how to handle this, but thinking along the lines of:

export default {
  cloudinary: {
    cloud: {
      ...myCloudOptions
    },
    url: {
      ...myUrlOptions
    }
  }
}

https://github.com/cloudinary/js-url-gen/blob/master/src/config/interfaces/Config/ICloudinaryAssetConfigurations.ts

Currently cloudName is accepted as a top level prop, which i dont think makes sense to change, but we can pass along the cloud and url properties into the configuration options.

Describe alternatives you've considered

export default {
  cloudinary: {
    config: {
        cloud: {
          ...myCloudOptions
        },
        url: {
          ...myUrlOptions
        }
    }
  }
}

Felt having the top level config property was unnecessary