UNPKG

@nestjs/common

Version:

Nest - modern, fast, powerful node.js web framework (@common)

53 lines (52 loc) 2.29 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.isSymbol = exports.isEmpty = exports.isNil = exports.isConstructor = exports.isNumber = exports.isString = exports.isFunction = exports.stripEndSlash = exports.normalizePath = exports.addLeadingSlash = exports.isPlainObject = exports.isObject = exports.isUndefined = void 0; /* eslint-disable @typescript-eslint/no-use-before-define */ const isUndefined = (obj) => typeof obj === 'undefined'; exports.isUndefined = isUndefined; const isObject = (fn) => !(0, exports.isNil)(fn) && typeof fn === 'object'; exports.isObject = isObject; const isPlainObject = (fn) => { if (!(0, exports.isObject)(fn)) { return false; } const proto = Object.getPrototypeOf(fn); if (proto === null) { return true; } const ctor = Object.prototype.hasOwnProperty.call(proto, 'constructor') && proto.constructor; return (typeof ctor === 'function' && ctor instanceof ctor && Function.prototype.toString.call(ctor) === Function.prototype.toString.call(Object)); }; exports.isPlainObject = isPlainObject; const addLeadingSlash = (path) => path && typeof path === 'string' ? path.charAt(0) !== '/' ? '/' + path : path : ''; exports.addLeadingSlash = addLeadingSlash; const normalizePath = (path) => path ? path.startsWith('/') ? ('/' + path.replace(/\/+$/, '')).replace(/\/+/g, '/') : '/' + path.replace(/\/+$/, '') : '/'; exports.normalizePath = normalizePath; const stripEndSlash = (path) => path[path.length - 1] === '/' ? path.slice(0, path.length - 1) : path; exports.stripEndSlash = stripEndSlash; const isFunction = (val) => typeof val === 'function'; exports.isFunction = isFunction; const isString = (val) => typeof val === 'string'; exports.isString = isString; const isNumber = (val) => typeof val === 'number'; exports.isNumber = isNumber; const isConstructor = (val) => val === 'constructor'; exports.isConstructor = isConstructor; const isNil = (val) => (0, exports.isUndefined)(val) || val === null; exports.isNil = isNil; const isEmpty = (array) => !(array && array.length > 0); exports.isEmpty = isEmpty; const isSymbol = (val) => typeof val === 'symbol'; exports.isSymbol = isSymbol;