@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"
        }
      ]
    }
  ]
}

/@flatfile/blueprint-utils/

    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