@flatfile/blueprint-utils
TypeScript icon, indicating that this package has built-in type declarations

0.0.13 • Public • Published

@flatfile/blueprint-utils

This package offers utilities for working with blueprint easily.

import { sheet } from '@flatfile/blueprint-utils'

Defaults type to "string"

sheet({
  name: 'Contacts',
  fields: [
    {
      key: 'name',
      label: 'Full Name'
    },
  ],
})

Returns full Blueprint

{
  "name": "Contacts",
  "fields": [
    {
      "label": "Full Name",
      "key": "name",
      "type": "string"
    }
  ]
}

Simple strings as field specifications

sheet({
  name: 'Contacts',
  fields: ['name', 'email', 'phone'],
})

Returns full Blueprint

{
  "name": "Contacts",
  "fields": [
    {
      "key": "name",
      "type": "string"
    },
    {
      "key": "email",
      "type": "string"
    },
    {
      "key": "phone",
      "type": "string"
    }
  ]
}

Provide only a label if keys aren't important

sheet({
  name: 'Contacts',
  fields: [
    {
      label: 'Name / Nombre',
      type: 'string',
    },
  ],
})

Returns full Blueprint

{
  "name": "Contacts",
  "fields": [
    {
      "label": "Name / Nombre",
      "key": "Name_Nombre",
      "type": "string"
    }
  ]
}

Provide constraints as simple strings

sheet({
  name: 'Contacts',
  fields: [
    {
      key: 'email',
      label: 'Email Address',
      constraints: ['required', 'unique'],
    },
    {
      key: 'phone',
      label: 'Phone Number',
      constraints: 'required',
    },
  ],
})

Returns full Blueprint

{
  "name": "Contacts",
  "fields": [
    {
      "label": "Email Address",
      "key": "email",
      "type": "string",
      "constraints": [
        {
          "type": "required"
        },
        {
          "type": "unique"
        }
      ]
    },
    {
      "label": "Phone Number",
      "key": "phone",
      "type": "string",
      "constraints": [
        {
          "type": "required"
        }
      ]
    }
  ]
}

Readme

Keywords

none

Package Sidebar

Install

npm i @flatfile/blueprint-utils

Weekly Downloads

297

Version

0.0.13

License

ISC

Unpacked Size

13.6 kB

Total Files

5

Last publish

Collaborators

  • sarocu
  • dboskovic
  • jmmander
  • bangarang
  • carlbrugger
  • flatfileinfra
  • flatderek
  • bigcountrycrane
  • rjhyde
  • sambarrowclough
  • mmccooyyy
  • hjordan1990
  • nlazaris
  • lionhummer