Socket
Socket
Sign inDemoInstall

message-box

Package Overview
Dependencies
Maintainers
1
Versions
12
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

message-box - npm Package Compare versions

Comparing version 0.2.6 to 0.2.7

4

CHANGELOG.md
# MessageBox Changelog
## 0.2.7
Fix transpiling configuration to support IE11 (try again)
## 0.2.6

@@ -4,0 +8,0 @@

10

dist/merge.js

@@ -17,5 +17,9 @@ "use strict";

*/
function merge(destination, ...sources) {
sources.forEach(source => {
Object.keys(source).forEach(prop => {
function merge(destination) {
for (var _len = arguments.length, sources = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
sources[_key - 1] = arguments[_key];
}
sources.forEach(function (source) {
Object.keys(source).forEach(function (prop) {
if (source[prop] && source[prop].constructor && source[prop].constructor === Object) {

@@ -22,0 +26,0 @@ if (!destination[prop] || !destination[prop].constructor || destination[prop].constructor !== Object) {

@@ -18,2 +18,4 @@ "use strict";

function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }

@@ -23,2 +25,8 @@

function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }

@@ -28,17 +36,20 @@

// https://regex101.com/r/ce27tA/5
const DEFAULT_INTERPOLATE = exports.DEFAULT_INTERPOLATE = /{{{([^{}#][\s\S]+?)}}}/g; // https://regex101.com/r/8sRC8b/8
var DEFAULT_INTERPOLATE = exports.DEFAULT_INTERPOLATE = /{{{([^{}#][\s\S]+?)}}}/g; // https://regex101.com/r/8sRC8b/8
const DEFAULT_ESCAPE = exports.DEFAULT_ESCAPE = /{{([^{}#][\s\S]+?)}}/g; // https://regex101.com/r/ndDqxg/4
var DEFAULT_ESCAPE = exports.DEFAULT_ESCAPE = /{{([^{}#][\s\S]+?)}}/g; // https://regex101.com/r/ndDqxg/4
const SUGGESTED_EVALUATE = exports.SUGGESTED_EVALUATE = /{{#([^{}].*?)}}/g;
var SUGGESTED_EVALUATE = exports.SUGGESTED_EVALUATE = /{{#([^{}].*?)}}/g;
class MessageBox {
constructor({
escape,
evaluate,
initialLanguage,
interpolate,
messages,
tracker
} = {}) {
var MessageBox = /*#__PURE__*/function () {
function MessageBox() {
var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
escape = _ref.escape,
evaluate = _ref.evaluate,
initialLanguage = _ref.initialLanguage,
interpolate = _ref.interpolate,
messages = _ref.messages,
tracker = _ref.tracker;
_classCallCheck(this, MessageBox);
this.language = initialLanguage || MessageBox.language || 'en';

@@ -58,101 +69,114 @@ this.messageList = messages || {};

clone() {
const copy = new MessageBox({
escape: this.escape,
evaluate: this.evaluate,
initialLanguage: this.language,
interpolate: this.interpolate,
tracker: this.tracker
});
copy.messages(this.messageList);
return copy;
}
getMessages(language) {
if (!language) {
language = this.language;
if (this.trackerDep) this.trackerDep.depend();
_createClass(MessageBox, [{
key: "clone",
value: function clone() {
var copy = new MessageBox({
escape: this.escape,
evaluate: this.evaluate,
initialLanguage: this.language,
interpolate: this.interpolate,
tracker: this.tracker
});
copy.messages(this.messageList);
return copy;
}
}, {
key: "getMessages",
value: function getMessages(language) {
if (!language) {
language = this.language;
if (this.trackerDep) this.trackerDep.depend();
}
const globalMessages = MessageBox.messages[language];
let messages = this.messageList[language];
var globalMessages = MessageBox.messages[language];
var messages = this.messageList[language];
if (messages) {
if (globalMessages) messages = (0, _merge2.default)({}, globalMessages, messages);
} else {
messages = globalMessages;
if (messages) {
if (globalMessages) messages = (0, _merge2.default)({}, globalMessages, messages);
} else {
messages = globalMessages;
}
if (!messages) throw new Error("No messages found for language \"".concat(language, "\""));
return {
messages: messages,
language: language
};
}
}, {
key: "message",
value: function message(errorInfo) {
var _ref2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
context = _ref2.context,
language = _ref2.language;
if (!messages) throw new Error(`No messages found for language "${language}"`);
return {
messages,
language
};
}
// Error objects can optionally include a preformatted message,
// in which case we use that.
if (errorInfo.message) return errorInfo.message;
var fieldName = errorInfo.name;
var genericName = MessageBox.makeNameGeneric(fieldName);
message(errorInfo, {
context,
language
} = {}) {
// Error objects can optionally include a preformatted message,
// in which case we use that.
if (errorInfo.message) return errorInfo.message;
const fieldName = errorInfo.name;
const genericName = MessageBox.makeNameGeneric(fieldName);
const {
messages
} = this.getMessages(language);
let message = messages[errorInfo.type];
var _this$getMessages = this.getMessages(language),
messages = _this$getMessages.messages;
const fullContext = _objectSpread({
genericName
}, context, {}, errorInfo);
var message = messages[errorInfo.type];
if (message && typeof message === 'object') message = message[genericName] || message._default; // eslint-disable-line no-underscore-dangle
var fullContext = _objectSpread({
genericName: genericName
}, context, {}, errorInfo);
if (typeof message === 'string') {
message = (0, _lodash2.default)(message, {
interpolate: this.interpolate,
evaluate: this.evaluate,
escape: this.escape
});
}
if (message && _typeof(message) === 'object') message = message[genericName] || message._default; // eslint-disable-line no-underscore-dangle
if (typeof message !== 'function') return `${fieldName} is invalid`;
return message(fullContext);
}
if (typeof message === 'string') {
message = (0, _lodash2.default)(message, {
interpolate: this.interpolate,
evaluate: this.evaluate,
escape: this.escape
});
}
messages(messages) {
(0, _merge2.default)(this.messageList, messages);
}
if (typeof message !== 'function') return "".concat(fieldName, " is invalid");
return message(fullContext);
}
}, {
key: "messages",
value: function messages(_messages) {
(0, _merge2.default)(this.messageList, _messages);
}
}, {
key: "setLanguage",
value: function setLanguage(language) {
this.language = language;
if (this.trackerDep) this.trackerDep.changed();
}
}], [{
key: "makeNameGeneric",
value: function makeNameGeneric(name) {
if (typeof name !== 'string') return null;
return name.replace(/\.[0-9]+(?=\.|$)/g, '.$');
}
}, {
key: "defaults",
value: function defaults() {
var _ref3 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
escape = _ref3.escape,
evaluate = _ref3.evaluate,
initialLanguage = _ref3.initialLanguage,
interpolate = _ref3.interpolate,
messages = _ref3.messages;
setLanguage(language) {
this.language = language;
if (this.trackerDep) this.trackerDep.changed();
}
if (typeof initialLanguage === 'string') MessageBox.language = initialLanguage;
if (interpolate instanceof RegExp) MessageBox.interpolate = interpolate;
if (evaluate instanceof RegExp) MessageBox.evaluate = evaluate;
if (escape instanceof RegExp) MessageBox.escape = escape;
static makeNameGeneric(name) {
if (typeof name !== 'string') return null;
return name.replace(/\.[0-9]+(?=\.|$)/g, '.$');
}
static defaults({
escape,
evaluate,
initialLanguage,
interpolate,
messages
} = {}) {
if (typeof initialLanguage === 'string') MessageBox.language = initialLanguage;
if (interpolate instanceof RegExp) MessageBox.interpolate = interpolate;
if (evaluate instanceof RegExp) MessageBox.evaluate = evaluate;
if (escape instanceof RegExp) MessageBox.escape = escape;
if (messages) {
if (!MessageBox.messages) MessageBox.messages = {};
(0, _merge2.default)(MessageBox.messages, messages);
if (messages) {
if (!MessageBox.messages) MessageBox.messages = {};
(0, _merge2.default)(MessageBox.messages, messages);
}
}
}
}]);
}
return MessageBox;
}();

@@ -159,0 +183,0 @@ _defineProperty(MessageBox, "messages", {});

{
"name": "message-box",
"version": "0.2.6",
"version": "0.2.7",
"description": "A package for defining and getting validation error messages, with support for Meteor Tracker reactivity",

@@ -5,0 +5,0 @@ "author": "Eric Dobbertin <aldeed@gmail.com>",

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