UNPKG

immutable-json-patch

Version:

Immutable JSON patch with support for reverting operations

52 lines (51 loc) 1.72 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.isJSONArray = isJSONArray; exports.isJSONObject = isJSONObject; exports.isJSONPatchAdd = isJSONPatchAdd; exports.isJSONPatchCopy = isJSONPatchCopy; exports.isJSONPatchMove = isJSONPatchMove; exports.isJSONPatchOperation = isJSONPatchOperation; exports.isJSONPatchRemove = isJSONPatchRemove; exports.isJSONPatchReplace = isJSONPatchReplace; exports.isJSONPatchTest = isJSONPatchTest; function isJSONArray(value) { return Array.isArray(value); } function isJSONObject(value) { return value !== null && typeof value === 'object' && (value.constructor === undefined || // for example Object.create(null) value.constructor.name === 'Object') // do not match on classes or Array ; } function isJSONPatchOperation(value) { // @ts-ignore return value && typeof value === 'object' ? typeof value.op === 'string' : false; } function isJSONPatchAdd(value) { // @ts-ignore return value && typeof value === 'object' ? value.op === 'add' : false; } function isJSONPatchRemove(value) { // @ts-ignore return value && typeof value === 'object' ? value.op === 'remove' : false; } function isJSONPatchReplace(value) { // @ts-ignore return value && typeof value === 'object' ? value.op === 'replace' : false; } function isJSONPatchCopy(value) { // @ts-ignore return value && typeof value === 'object' ? value.op === 'copy' : false; } function isJSONPatchMove(value) { // @ts-ignore return value && typeof value === 'object' ? value.op === 'move' : false; } function isJSONPatchTest(value) { // @ts-ignore return value && typeof value === 'object' ? value.op === 'test' : false; } //# sourceMappingURL=typeguards.js.map