@last-rev/adapter-contentful
    TypeScript icon, indicating that this package has built-in type declarations

    4.3.2-alpha.2 • Public • Published

    LastRev Contentful Adapter

    Converts contentful data shape to one that is expected by LastRev components.

    usage

    import Adapter from '@last-rev/adapter-contentful';
    import config from './adapter-config';
    import contentful from './contentfulApi';
    
    const transform = Adapter(config);
    
    export default async () => {
      return transform(contentful.getGlobalSettings());
    };

    config

    Confifg allows one to override specific field names for parsing URLs:

    // defaults
    {
      urlMap = {},
      linkContentType = 'elementLink',
      sameWindowActionText = 'Open in the same window',
      newWindowActionText = 'Open in a new window',
      modalActionText = 'Open in a modal',
      downloadActionText = 'Download',
      manualEntryTypeText = 'Manual text entry',
      contentRefTypeText = 'Content reference',
      assetRefTypeText = 'Asset reference',
      contentUrlLookup = {}
      skipContentTypes = []
    }
    
    // example:
    
    {
      "urlMap": {
        "pageGeneral": {
          "url": "/[key]", // alweays use "key" for the slug here
          "key": "slug" // this is what the next.js dynamic routing framework
          // expects the param to be called
        },
        "pageRecipe": {
          "url": "/recipes/[key]",
          "key": "slug"
        }
      },
      "linkContentType": "ElementCta"
    }

    URL lookup

    The preferred method to generate the correct _href and _as properties for the content items is to pass in a contentUrlLookup property which maps a contentID to an object like this { href: '...whatever', as: '...whatever' }. If this cannot be done, the old urlMap method is still supported.

    skipping types

    If for whatever reason we do not want to traverse items of a specific content type, just pass those content type IDs into the skipContentTypes array.

    Keywords

    none

    Install

    npm i @last-rev/adapter-contentful

    DownloadsWeekly Downloads

    85

    Version

    4.3.2-alpha.2

    License

    ISC

    Unpacked Size

    79.3 kB

    Total Files

    48

    Last publish

    Collaborators

    • maxtechera.lastrev
    • tharris
    • justinlastrev
    • jaimelastrev
    • bradtaylorsf