UNPKG

@roots/bud-api

Version:

bud.js core module

26 lines (25 loc) 1.04 kB
import { BudError } from '@roots/bud-support/errors'; import { handleCallback } from './handleCallback.js'; import { handleRecords } from './handleRecords.js'; import { handleSignifierValuePair } from './handleSignifierValuePair.js'; import { isCallback } from './isCallback.js'; import { isRecords } from './isRecords.js'; import { isSignifier } from './isSignifier.js'; import { isValue } from './isValue.js'; export const alias = function (...input) { if (isCallback(input[0])) { const [callback] = input; return handleCallback(this, callback); } if (isRecords(input[0])) { const [records] = input; return handleRecords(this, records); } if (!isSignifier(input[0])) throw new BudError(`bud.alias received invalid input. param[0] must be a string.`); if (!isValue(input[1])) { throw new BudError(`bud.alias received invalid input. param[1] must be a string.`); } const [signifier, value] = input; return handleSignifierValuePair(this, signifier, value); };