Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

apollo-server-throw-if

Package Overview
Dependencies
Maintainers
1
Versions
19
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

apollo-server-throw-if

A library that throws Apollo Server exceptions when validations fail.

  • 0.8.1
  • unpublished
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
0
Maintainers
1
Weekly downloads
 
Created
Source

apollo-server-throw-if

github license npm version

A library that throws Apollo Server exceptions when validations fail.

Usage

Install module

npm install --save apollo-server-throw-if

Sample

const throwIf = require('apollo-server-throw-if')

// [your code here...]

// This will throw as '2043-01-01' is not a date in milliseconds
throwIf.invalidDateInMs('2043-01-01', 'lastUpdate')

// This will not throw as all items in object (first argument) are
// valid given the validators given in validator (3rd argument)
throwIf.invalidUpdateObject(
  { date: '2032-02-05', description: 'game' },
  'events',
  {
    date: throwIf.invalidShortDate,
    description: throwIf.invalidTrimmedNonEmptyString
  }
)

Functions

FunctionsDescription
invalidDateInMs(value, argumentName)Throws if:
- value is not a number
- value can not be parsed by new Date(value)
invalidFirestoreId(id, objectName)Throws if:
- not a valid Firestore id (20 characters a-z, A-Z, and 0-9)
invalidFirestoreTimestamp(timestamp, objectName)Throws if:
- not a valid Firestore Timestamp (contains a toDate and a toMillis function)
invalidShortDate(value, argumentName)Expects a date with the format (YYYY-MM-DD). Throws if:
- value is not a string with exactly 10 characters
- value can not be parsed by new Date(value)
invalidTrimmedNonEmptyString(value, argumentName)Throws if:
- value is not a string
- value is not trimmed
- string is empty
invalidUpdateObject(object, objectName, validator)validator must be an object of functions that receive an value and a name as parameters. See above for example. Throws if any of the properties in object does not have a property in validator or if the validator throws.
objectDoesNotContain(object, objectName, properties)Throws if any of the property names listed in properties are not in object
objectDoesNotExistOrIsDeleted(object, objectName)Throws if the object does not exist of object.deleted is true
objectExist(object, attributeName, attributeValue)Throws if the object already exist.
objectUpdatesHaveUnchangedProperties(objectUpdates, objectUpdatesName, originalObject)Throws if any of the propertes in the objectUpdates has the same value as in originalObject. Change validation uses == as opposed to === and only works for objects that does not contain nested objects.
outOfSync(localLastUpdated, serverLastUpdated)Throws if:
- any of the provided dates is not a valid date
- dates are not the same

Keywords

FAQs

Package last updated on 23 Aug 2018

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc