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

5.2.55 • Public • Published

Coverage Status Build

Utility for handling Netlify Functions in Netlify Build plugins.

This allows plugins to:

  • list available Netlify Functions
  • dynamically inject Netlify Functions inside users builds.

Example

// Add a Netlify Functions file or directory to a build
export const onPreBuild = async function ({ utils }) {
  await utils.functions.add('./path/to/function')
}

API

list()

Returns: Promise<object[]>

Returns the list of Netlify Functions main files as a Promise resolving to an array of objects with the following properties:

  • name {string}: Function name, as used in the URL https://{hostname}/.netlify/functions/{name}
  • mainFile {string}: absolute path to the Function's main file
  • extension {string}: file extension of the Function's main file. For Go Functions, this might be an empty string. For Node.js Functions, this is either .js or .zip.
  • runtime "js" | "go": Function's programming language

This throws when no functions directory was specified by the user, or when it points to a non-existing directory.

listAll()

Returns: Promise<object[]>

Same as list() except it also returns the files required by the Functions main files. This is much slower. The object have the following additional member:

  • srcFile {string}: absolute path to the file

add(path)

path: string
Returns: Promise

Add a Functions file or directory to a build.

This throws when no functions directory was specified by the user, or when it points to a non-existing directory.

Package Sidebar

Install

npm i @netlify/functions-utils

Weekly Downloads

110,585

Version

5.2.55

License

MIT

Unpacked Size

8.37 kB

Total Files

5

Last publish

Collaborators

  • youvalv
  • berdav
  • vitaliyr
  • smnh
  • denar90
  • kathmbeck
  • rj-netlify
  • akardet
  • pieh
  • hrishikeshk
  • sarahetter
  • orinokai
  • ericap
  • seanroberts
  • skn0tt
  • mikewen
  • biilmann
  • marcus.netlify
  • jgantunes
  • eduardoboucas
  • netlify-bot
  • nasiba
  • ascorbic