@reecem/custom-type-api
TypeScript icon, indicating that this package has built-in type declarations

0.2.0-alpha.3 • Public • Published

custom-type-api

API library to interface with the Custom Types and Slices API for Prismic

Important

I have intentionally only implemented mainly support for node as I don't see the need to have this ability to interact with the API available client side.

WIP, please add issues or comments if there is anything that you see :)

The readme is a WIP and the code could probably have some error handling added.

Usage

Below is an example of how to use this to interact with the API for the custom types, it gets a type and writes the result to ta json file.

If using commonJS:

const Api = require('@reecem/custom-type-api');
const credentials = require('./env.json');
const fs = require('fs');
const path = require('path')

const api = new Api('slicemachine-startup', credentials.token)

async function test() {
  await api.init()

  try {
    const type = await api.types().getOne('page');

    console.log(type)

    fs.writeFileSync(path.join(__dirname, 'page.json'), JSON.stringify(type, null, 2))
  } catch (ex) {
    console.error(ex)
  }
}

test()

If using modules:

import Api from '@reecem/custom-type-api'

import { createRequire } from "module"; // Bring in the ability to create the 'require' method
const require = createRequire(import.meta.url); // construct the require method
const credentials = require('../env.json');

async function test() {
  const api = new Api('slicemachine-startup', credentials.token)

  await api.init()

  try {
    let slice = await api.slices().getOne('form_slice');
    console.log(slice)
    fs.writeFileSync(path.join(__dirname, 'form_slice.json'), JSON.stringify(slice, null, 2))
  } catch (ex) {
    console.error(ex)
  }
}

test()

Package Sidebar

Install

npm i @reecem/custom-type-api

Weekly Downloads

2

Version

0.2.0-alpha.3

License

ISC

Unpacked Size

204 kB

Total Files

26

Last publish

Collaborators

  • reecem