Sha256: 348a48b09f86629d2fa2eae720272a4949004d22b6a053e57036ea2dbaafc29d

Contents?: true

Size: 782 Bytes

Versions: 29

Compression:

Stored size: 782 Bytes

Contents

"use strict";

var isValue       = require("../value/is")
  , isObject      = require("../object/is")
  , stringCoerce  = require("../string/coerce")
  , toShortString = require("./to-short-string");

var resolveMessage = function (message, value) {
	return message.replace("%v", toShortString(value));
};

module.exports = function (value, defaultMessage, inputOptions) {
	if (!isObject(inputOptions)) throw new TypeError(resolveMessage(defaultMessage, value));
	if (!isValue(value)) {
		if ("default" in inputOptions) return inputOptions["default"];
		if (inputOptions.isOptional) return null;
	}
	var errorMessage = stringCoerce(inputOptions.errorMessage);
	if (!isValue(errorMessage)) errorMessage = defaultMessage;
	throw new TypeError(resolveMessage(errorMessage, value));
};

Version data entries

29 entries across 29 versions & 2 rubygems

Version Path
optimacms-0.1.61 spec/dummy/node_modules/type/lib/resolve-exception.js
govuk_publishing_components-18.0.0 node_modules/type/lib/resolve-exception.js
govuk_publishing_components-17.21.0 node_modules/type/lib/resolve-exception.js
govuk_publishing_components-17.20.0 node_modules/type/lib/resolve-exception.js
govuk_publishing_components-17.19.1 node_modules/type/lib/resolve-exception.js
govuk_publishing_components-17.19.0 node_modules/type/lib/resolve-exception.js
govuk_publishing_components-17.18.0 node_modules/type/lib/resolve-exception.js
govuk_publishing_components-17.17.0 node_modules/type/lib/resolve-exception.js
govuk_publishing_components-17.16.0 node_modules/type/lib/resolve-exception.js
govuk_publishing_components-17.15.0 node_modules/type/lib/resolve-exception.js
govuk_publishing_components-17.14.0 node_modules/type/lib/resolve-exception.js
govuk_publishing_components-17.13.0 node_modules/type/lib/resolve-exception.js
govuk_publishing_components-17.12.2 node_modules/type/lib/resolve-exception.js
govuk_publishing_components-17.12.1 node_modules/type/lib/resolve-exception.js
govuk_publishing_components-17.12.0 node_modules/type/lib/resolve-exception.js
govuk_publishing_components-17.11.0 node_modules/type/lib/resolve-exception.js
govuk_publishing_components-17.10.0 node_modules/type/lib/resolve-exception.js
govuk_publishing_components-17.9.0 node_modules/type/lib/resolve-exception.js
govuk_publishing_components-17.8.0 node_modules/type/lib/resolve-exception.js
govuk_publishing_components-17.7.0 node_modules/type/lib/resolve-exception.js