diff --git a/public/js/bundle.js b/public/js/bundle.js index 4587a4a..708fe44 100644 --- a/public/js/bundle.js +++ b/public/js/bundle.js @@ -42,7 +42,7 @@ /************************************************************************/ /******/ ([ /* 0 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { 'use strict'; @@ -57,9 +57,9 @@ riot.mount("*"); }); -/***/ }, +/***/ }), /* 1 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -75,9 +75,9 @@ bluebird.noConflict = noConflict; module.exports = bluebird; -/***/ }, +/***/ }), /* 2 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {"use strict"; @@ -775,7 +775,7 @@ __webpack_require__(23)(Promise); __webpack_require__(24)(Promise, PromiseArray, tryConvertToPromise, INTERNAL, async, getDomain); Promise.Promise = Promise; - Promise.version = "3.5.0"; + Promise.version = "3.5.1"; __webpack_require__(25)(Promise, PromiseArray, apiRejection, tryConvertToPromise, INTERNAL, debug); __webpack_require__(26)(Promise); __webpack_require__(27)(Promise, apiRejection, tryConvertToPromise, createContext, INTERNAL, debug); @@ -816,9 +816,9 @@ }; /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3))) -/***/ }, +/***/ }), /* 3 */ -/***/ function(module, exports) { +/***/ (function(module, exports) { 'use strict'; @@ -987,6 +987,12 @@ process.removeListener = noop; process.removeAllListeners = noop; process.emit = noop; + process.prependListener = noop; + process.prependOnceListener = noop; + + process.listeners = function (name) { + return []; + }; process.binding = function (name) { throw new Error('process.binding is not supported'); @@ -1002,9 +1008,9 @@ return 0; }; -/***/ }, +/***/ }), /* 4 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(global, process) {"use strict"; @@ -1216,7 +1222,7 @@ } function isError(obj) { - return obj !== null && (typeof obj === "undefined" ? "undefined" : _typeof(obj)) === "object" && typeof obj.message === "string" && typeof obj.name === "string"; + return obj instanceof Error || obj !== null && (typeof obj === "undefined" ? "undefined" : _typeof(obj)) === "object" && typeof obj.message === "string" && typeof obj.name === "string"; } function markAsOriginatingFromRejection(e) { @@ -1371,9 +1377,9 @@ module.exports = ret; /* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }()), __webpack_require__(3))) -/***/ }, +/***/ }), /* 5 */ -/***/ function(module, exports) { +/***/ (function(module, exports) { "use strict"; @@ -1457,9 +1463,9 @@ }; } -/***/ }, +/***/ }), /* 6 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {"use strict"; @@ -1629,9 +1635,9 @@ module.exports.firstLineError = firstLineError; /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3))) -/***/ }, +/***/ }), /* 7 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(global, process, setImmediate) {"use strict"; @@ -1695,9 +1701,9 @@ module.exports = schedule; /* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }()), __webpack_require__(3), __webpack_require__(8).setImmediate)) -/***/ }, +/***/ }), /* 8 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -1753,9 +1759,9 @@ exports.setImmediate = setImmediate; exports.clearImmediate = clearImmediate; -/***/ }, +/***/ }), /* 9 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(global, process) {"use strict"; @@ -1943,9 +1949,9 @@ })(typeof self === "undefined" ? typeof global === "undefined" ? undefined : global : self); /* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }()), __webpack_require__(3))) -/***/ }, +/***/ }), /* 10 */ -/***/ function(module, exports) { +/***/ (function(module, exports) { "use strict"; @@ -2022,9 +2028,9 @@ module.exports = Queue; -/***/ }, +/***/ }), /* 11 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2140,9 +2146,9 @@ Warning: Warning }; -/***/ }, +/***/ }), /* 12 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2226,9 +2232,9 @@ return tryConvertToPromise; }; -/***/ }, +/***/ }), /* 13 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -2411,9 +2417,9 @@ return PromiseArray; }; -/***/ }, +/***/ }), /* 14 */ -/***/ function(module, exports) { +/***/ (function(module, exports) { "use strict"; @@ -2488,9 +2494,9 @@ return Context; }; -/***/ }, +/***/ }), /* 15 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {"use strict"; @@ -2527,7 +2533,10 @@ Promise.prototype._ensurePossibleRejectionHandled = function () { if ((this._bitField & 524288) !== 0) return; this._setRejectionIsUnhandled(); - async.invokeLater(this._notifyUnhandledRejection, this, undefined); + var self = this; + setTimeout(function () { + self._notifyUnhandledRejection(); + }, 1); }; Promise.prototype._notifyUnhandledRejectionIsHandled = function () { @@ -3370,9 +3379,9 @@ }; /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(3))) -/***/ }, +/***/ }), /* 16 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -3499,9 +3508,9 @@ return PassThroughHandlerContext; }; -/***/ }, +/***/ }), /* 17 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -3546,9 +3555,9 @@ return catchFilter; }; -/***/ }, +/***/ }), /* 18 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -3604,9 +3613,9 @@ module.exports = nodebackForPromise; -/***/ }, +/***/ }), /* 19 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -3661,9 +3670,9 @@ }; }; -/***/ }, +/***/ }), /* 20 */ -/***/ function(module, exports) { +/***/ (function(module, exports) { "use strict"; @@ -3733,9 +3742,9 @@ }; }; -/***/ }, +/***/ }), /* 21 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -3866,9 +3875,9 @@ }; }; -/***/ }, +/***/ }), /* 22 */ -/***/ function(module, exports) { +/***/ (function(module, exports) { "use strict"; @@ -3916,9 +3925,9 @@ }; }; -/***/ }, +/***/ }), /* 23 */ -/***/ function(module, exports) { +/***/ (function(module, exports) { "use strict"; @@ -4022,9 +4031,9 @@ Promise.PromiseInspection = PromiseInspection; }; -/***/ }, +/***/ }), /* 24 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -4188,9 +4197,9 @@ }; }; -/***/ }, +/***/ }), /* 25 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -4345,9 +4354,9 @@ }; }; -/***/ }, +/***/ }), /* 26 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -4475,9 +4484,9 @@ }; }; -/***/ }, +/***/ }), /* 27 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -4692,9 +4701,9 @@ }; }; -/***/ }, +/***/ }), /* 28 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -4791,9 +4800,9 @@ }; }; -/***/ }, +/***/ }), /* 29 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -4994,9 +5003,9 @@ }; }; -/***/ }, +/***/ }), /* 30 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -5048,9 +5057,9 @@ }; }; -/***/ }, +/***/ }), /* 31 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -5315,9 +5324,9 @@ }; }; -/***/ }, +/***/ }), /* 32 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -5437,9 +5446,9 @@ }; }; -/***/ }, +/***/ }), /* 33 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -5489,9 +5498,9 @@ }; }; -/***/ }, +/***/ }), /* 34 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -5652,9 +5661,9 @@ } }; -/***/ }, +/***/ }), /* 35 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -5700,9 +5709,9 @@ }; }; -/***/ }, +/***/ }), /* 36 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { "use strict"; @@ -5848,9 +5857,9 @@ Promise._SomePromiseArray = SomePromiseArray; }; -/***/ }, +/***/ }), /* 37 */ -/***/ function(module, exports) { +/***/ (function(module, exports) { "use strict"; @@ -5866,9 +5875,9 @@ }; }; -/***/ }, +/***/ }), /* 38 */ -/***/ function(module, exports) { +/***/ (function(module, exports) { "use strict"; @@ -5899,9 +5908,9 @@ Promise.mapSeries = PromiseMapSeries; }; -/***/ }, +/***/ }), /* 39 */ -/***/ function(module, exports) { +/***/ (function(module, exports) { "use strict"; @@ -5925,9 +5934,9 @@ }; }; -/***/ }, +/***/ }), /* 40 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { 'use strict'; @@ -5956,9 +5965,9 @@ }); }); -/***/ }, +/***/ }), /* 41 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(riot) { riot.tag2('app', '
{paste.title}(no title){paste.formattedDate}{paste.url}
', 'app .pasteBox,[data-is="app"] .pasteBox{ height: 310px; border: 1px solid #adadad; overflow: auto; } app .pasteBox .paste,[data-is="app"] .pasteBox .paste{ padding: 4px; background-color: #d1d1d1; border-bottom: 1px solid #adadad; } app .pasteBox .paste .url,[data-is="app"] .pasteBox .paste .url{ color: gray; } app .pasteBox .paste .title,[data-is="app"] .pasteBox .paste .title{ font-weight: bold; } app .pasteBox .paste .title:after,[data-is="app"] .pasteBox .paste .title:after,app .pasteBox .paste .date:after,[data-is="app"] .pasteBox .paste .date:after{ content: "-"; margin: 0px 4px; }', '', function(opts) { @@ -5967,8 +5976,8 @@ var _this = this; var moment = __webpack_require__(43); - var wsEndpoint = __webpack_require__(161); - var pruneArray = __webpack_require__(170); + var wsEndpoint = __webpack_require__(165); + var pruneArray = __webpack_require__(174); function formatDate(date) { return moment.unix(date).format("HH:mm:ss"); @@ -6025,22 +6034,23 @@ }); /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(42))) -/***/ }, +/***/ }), /* 42 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/* WEBPACK VAR INJECTION */(function(riot) {'use strict'; var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; - /* Riot v3.3.2, @license MIT */ + /* Riot v3.8.1, @license MIT */ (function (global, factory) { - ( false ? 'undefined' : _typeof(exports)) === 'object' && typeof module !== 'undefined' ? factory(exports) : true ? !(__WEBPACK_AMD_DEFINE_ARRAY__ = [exports], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)) : factory(global.riot = global.riot || {}); + ( false ? 'undefined' : _typeof(exports)) === 'object' && typeof module !== 'undefined' ? factory(exports) : true ? !(__WEBPACK_AMD_DEFINE_ARRAY__ = [exports], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)) : factory(global.riot = {}); })(undefined, function (exports) { 'use strict'; var __TAGS_CACHE = []; var __TAG_IMPL = {}; + var YIELD_TAG = 'yield'; var GLOBAL_MIXIN = '__global_mixin'; var ATTRS_PREFIX = 'riot-'; var REF_DIRECTIVES = ['ref', 'data-ref']; @@ -6050,117 +6060,27 @@ var LOOP_NO_REORDER_DIRECTIVE = 'no-reorder'; var SHOW_DIRECTIVE = 'show'; var HIDE_DIRECTIVE = 'hide'; + var KEY_DIRECTIVE = 'key'; + var RIOT_EVENTS_KEY = '__riot-events__'; var T_STRING = 'string'; var T_OBJECT = 'object'; var T_UNDEF = 'undefined'; var T_FUNCTION = 'function'; var XLINK_NS = 'http://www.w3.org/1999/xlink'; + var SVG_NS = 'http://www.w3.org/2000/svg'; var XLINK_REGEX = /^xlink:(\w+)/; var WIN = (typeof window === 'undefined' ? 'undefined' : _typeof(window)) === T_UNDEF ? undefined : window; var RE_SPECIAL_TAGS = /^(?:t(?:body|head|foot|[rhd])|caption|col(?:group)?|opt(?:ion|group))$/; var RE_SPECIAL_TAGS_NO_OPTION = /^(?:t(?:body|head|foot|[rhd])|caption|col(?:group)?)$/; - var RE_RESERVED_NAMES = /^(?:_(?:item|id|parent)|update|root|(?:un)?mount|mixin|is(?:Mounted|Loop)|tags|refs|parent|opts|trigger|o(?:n|ff|ne))$/; + var RE_EVENTS_PREFIX = /^on/; var RE_HTML_ATTRS = /([-\w]+) ?= ?(?:"([^"]*)|'([^']*)|({[^}]*}))/g; - var CASE_SENSITIVE_ATTRIBUTES = { 'viewbox': 'viewBox' }; + var CASE_SENSITIVE_ATTRIBUTES = { + 'viewbox': 'viewBox', + 'preserveaspectratio': 'preserveAspectRatio' + }; var RE_BOOL_ATTRS = /^(?:disabled|checked|readonly|required|allowfullscreen|auto(?:focus|play)|compact|controls|default|formnovalidate|hidden|ismap|itemscope|loop|multiple|muted|no(?:resize|shade|validate|wrap)?|open|reversed|seamless|selected|sortable|truespeed|typemustmatch)$/; var IE_VERSION = (WIN && WIN.document || {}).documentMode | 0; - /** - * Check Check if the passed argument is undefined - * @param { String } value - - * @returns { Boolean } - - */ - function isBoolAttr(value) { - return RE_BOOL_ATTRS.test(value); - } - - /** - * Check if passed argument is a function - * @param { * } value - - * @returns { Boolean } - - */ - function isFunction(value) { - return (typeof value === 'undefined' ? 'undefined' : _typeof(value)) === T_FUNCTION; - } - - /** - * Check if passed argument is an object, exclude null - * NOTE: use isObject(x) && !isArray(x) to excludes arrays. - * @param { * } value - - * @returns { Boolean } - - */ - function isObject(value) { - return value && (typeof value === 'undefined' ? 'undefined' : _typeof(value)) === T_OBJECT; // typeof null is 'object' - } - - /** - * Check if passed argument is undefined - * @param { * } value - - * @returns { Boolean } - - */ - function isUndefined(value) { - return (typeof value === 'undefined' ? 'undefined' : _typeof(value)) === T_UNDEF; - } - - /** - * Check if passed argument is a string - * @param { * } value - - * @returns { Boolean } - - */ - function isString(value) { - return (typeof value === 'undefined' ? 'undefined' : _typeof(value)) === T_STRING; - } - - /** - * Check if passed argument is empty. Different from falsy, because we dont consider 0 or false to be blank - * @param { * } value - - * @returns { Boolean } - - */ - function isBlank(value) { - return isUndefined(value) || value === null || value === ''; - } - - /** - * Check if passed argument is a kind of array - * @param { * } value - - * @returns { Boolean } - - */ - function isArray(value) { - return Array.isArray(value) || value instanceof Array; - } - - /** - * Check whether object's property could be overridden - * @param { Object } obj - source object - * @param { String } key - object property - * @returns { Boolean } - - */ - function isWritable(obj, key) { - var descriptor = Object.getOwnPropertyDescriptor(obj, key); - return isUndefined(obj[key]) || descriptor && descriptor.writable; - } - - /** - * Check if passed argument is a reserved name - * @param { String } value - - * @returns { Boolean } - - */ - function isReservedName(value) { - return RE_RESERVED_NAMES.test(value); - } - - var check = Object.freeze({ - isBoolAttr: isBoolAttr, - isFunction: isFunction, - isObject: isObject, - isUndefined: isUndefined, - isString: isString, - isBlank: isBlank, - isArray: isArray, - isWritable: isWritable, - isReservedName: isReservedName - }); - /** * Shorter and fast way to select multiple nodes in the DOM * @param { String } selector - DOM selector @@ -6168,7 +6088,7 @@ * @returns { Object } dom nodes found */ function $$(selector, ctx) { - return (ctx || document).querySelectorAll(selector); + return [].slice.call((ctx || document).querySelectorAll(selector)); } /** @@ -6197,31 +6117,52 @@ return document.createTextNode(''); } + /** + * Check if a DOM node is an svg tag or part of an svg + * @param { HTMLElement } el - node we want to test + * @returns {Boolean} true if it's an svg node + */ + function isSvg(el) { + var owner = el.ownerSVGElement; + return !!owner || owner === null; + } + /** * Create a generic DOM node * @param { String } name - name of the DOM node we want to create * @returns { Object } DOM node just created */ function mkEl(name) { - return document.createElement(name); + return name === 'svg' ? document.createElementNS(SVG_NS, name) : document.createElement(name); } /** * Set the inner html of any DOM node SVGs included * @param { Object } container - DOM node where we'll inject new html * @param { String } html - html to inject + * @param { Boolean } isSvg - svg tags should be treated a bit differently */ /* istanbul ignore next */ - function setInnerHTML(container, html) { - if (!isUndefined(container.innerHTML)) { + function setInnerHTML(container, html, isSvg) { + // innerHTML is not supported on svg tags so we neet to treat them differently + if (isSvg) { + var node = container.ownerDocument.importNode(new DOMParser().parseFromString("" + html + "", 'application/xml').documentElement, true); + + container.appendChild(node); + } else { container.innerHTML = html; } - // some browsers do not support innerHTML on the SVGs tags - else { - var doc = new DOMParser().parseFromString(html, 'application/xml'); - var node = container.ownerDocument.importNode(doc.documentElement, true); - container.appendChild(node); - } + } + + /** + * Toggle the visibility of any DOM node + * @param { Object } dom - DOM node we want to hide + * @param { Boolean } show - do we want to show it? + */ + + function toggleVisibility(dom, show) { + dom.style.display = show ? '' : 'none'; + dom.hidden = show ? false : true; } /** @@ -6233,6 +6174,19 @@ dom.removeAttribute(name); } + /** + * Convert a style object to a string + * @param { Object } style - style object we need to parse + * @returns { String } resulting css string + * @example + * styleObjectToString({ color: 'red', height: '10px'}) // => 'color: red; height: 10px' + */ + function styleObjectToString(style) { + return Object.keys(style).reduce(function (acc, prop) { + return acc + " " + prop + ": " + style[prop] + ";"; + }, ''); + } + /** * Get the value of any DOM attribute on a node * @param { Object } dom - DOM node we want to parse @@ -6313,9 +6267,12 @@ $: $, createFrag: createFrag, createDOMPlaceholder: createDOMPlaceholder, + isSvg: isSvg, mkEl: mkEl, setInnerHTML: setInnerHTML, + toggleVisibility: toggleVisibility, remAttr: remAttr, + styleObjectToString: styleObjectToString, getAttr: getAttr, setAttr: setAttr, safeInsert: safeInsert, @@ -6324,6 +6281,7 @@ }); var styleNode; + // Create cache and shortcut to the correct property var cssTextProp; var byName = {}; var remainder = []; @@ -6334,10 +6292,10 @@ styleNode = function () { // create a new style element with the correct type var newNode = mkEl('style'); - setAttr(newNode, 'type', 'text/css'); - // replace any user node or insert the new one into the head var userNode = $('style[type=riot]'); + + setAttr(newNode, 'type', 'text/css'); /* istanbul ignore next */ if (userNode) { if (userNode.id) { @@ -6345,7 +6303,7 @@ } userNode.parentNode.replaceChild(newNode, userNode); } else { - document.getElementsByTagName('head')[0].appendChild(newNode); + document.head.appendChild(newNode); } return newNode; @@ -6394,8 +6352,71 @@ /** * The riot template engine - * @version v3.0.3 + * @version v3.0.8 */ + + var skipRegex = function () { + //eslint-disable-line no-unused-vars + + var beforeReChars = '[{(,;:?=|&!^~>%*/'; + + var beforeReWords = ['case', 'default', 'do', 'else', 'in', 'instanceof', 'prefix', 'return', 'typeof', 'void', 'yield']; + + var wordsLastChar = beforeReWords.reduce(function (s, w) { + return s + w.slice(-1); + }, ''); + + var RE_REGEX = /^\/(?=[^*>/])[^[/\\]*(?:(?:\\.|\[(?:\\.|[^\]\\]*)*\])[^[\\/]*)*?\/[gimuy]*/; + var RE_VN_CHAR = /[$\w]/; + + function prev(code, pos) { + while (--pos >= 0 && /\s/.test(code[pos])) {} + return pos; + } + + function _skipRegex(code, start) { + + var re = /.*/g; + var pos = re.lastIndex = start++; + var match = re.exec(code)[0].match(RE_REGEX); + + if (match) { + var next = pos + match[0].length; + + pos = prev(code, pos); + var c = code[pos]; + + if (pos < 0 || ~beforeReChars.indexOf(c)) { + return next; + } + + if (c === '.') { + + if (code[pos - 1] === '.') { + start = next; + } + } else if (c === '+' || c === '-') { + + if (code[--pos] !== c || (pos = prev(code, pos)) < 0 || !RE_VN_CHAR.test(code[pos])) { + start = next; + } + } else if (~wordsLastChar.indexOf(c)) { + + var end = pos + 1; + + while (--pos >= 0 && RE_VN_CHAR.test(code[pos])) {} + if (~beforeReWords.indexOf(code.slice(pos + 1, end))) { + start = next; + } + } + } + + return start; + } + + return _skipRegex; + }(); + /** * riot.util.brackets * @@ -6413,17 +6434,18 @@ var REGLOB = 'g', R_MLCOMMS = /\/\*[^*]*\*+(?:[^*\/][^*]*\*+)*\//g, R_STRINGS = /"[^"\\]*(?:\\[\S\s][^"\\]*)*"|'[^'\\]*(?:\\[\S\s][^'\\]*)*'|`[^`\\]*(?:\\[\S\s][^`\\]*)*`/g, - S_QBLOCKS = R_STRINGS.source + '|' + /(?:\breturn\s+|(?:[$\w\)\]]|\+\+|--)\s*(\/)(?![*\/]))/.source + '|' + /\/(?=[^*\/])[^[\/\\]*(?:(?:\[(?:\\.|[^\]\\]*)*\]|\\.)[^[\/\\]*)*?(\/)[gim]*/.source, + S_QBLOCKS = R_STRINGS.source + '|' + /(?:\breturn\s+|(?:[$\w\)\]]|\+\+|--)\s*(\/)(?![*\/]))/.source + '|' + /\/(?=[^*\/])[^[\/\\]*(?:(?:\[(?:\\.|[^\]\\]*)*\]|\\.)[^[\/\\]*)*?([^<]\/)[gim]*/.source, UNSUPPORTED = RegExp('[\\' + 'x00-\\x1F<>a-zA-Z0-9\'",;\\\\]'), NEED_ESCAPE = /(?=[[\]()*+?.^$|])/g, + S_QBLOCK2 = R_STRINGS.source + '|' + /(\/)(?![*\/])/.source, FINDBRACES = { - '(': RegExp('([()])|' + S_QBLOCKS, REGLOB), - '[': RegExp('([[\\]])|' + S_QBLOCKS, REGLOB), - '{': RegExp('([{}])|' + S_QBLOCKS, REGLOB) + '(': RegExp('([()])|' + S_QBLOCK2, REGLOB), + '[': RegExp('([[\\]])|' + S_QBLOCK2, REGLOB), + '{': RegExp('([{}])|' + S_QBLOCK2, REGLOB) }, DEFAULT = '{ }'; - var _pairs = ['{', '}', '{', '}', /{[^}]*}/, /\\([{}])/g, /\\({)|{/g, RegExp('\\\\(})|([[({])|(})|' + S_QBLOCKS, REGLOB), DEFAULT, /^\s*{\^?\s*([$\w]+)(?:\s*,\s*(\S+))?\s+in\s+(\S.*)\s*}/, /(^|[^\\]){=[\S\s]*?}/]; + var _pairs = ['{', '}', '{', '}', /{[^}]*}/, /\\([{}])/g, /\\({)|{/g, RegExp('\\\\(})|([[({])|(})|' + S_QBLOCK2, REGLOB), DEFAULT, /^\s*{\^?\s*([$\w]+)(?:\s*,\s*(\S+))?\s+in\s+(\S.*)\s*}/, /(^|[^\\]){=[\S\s]*?}/]; var cachedBrackets = UNDEF, _regex, @@ -6456,7 +6478,7 @@ arr[4] = _rewrite(arr[1].length > 1 ? /{[\S\s]*?}/ : _pairs[4], arr); arr[5] = _rewrite(pair.length > 3 ? /\\({|})/g : _pairs[5], arr); arr[6] = _rewrite(_pairs[6], arr); - arr[7] = RegExp('\\\\(' + arr[3] + ')|([[({])|(' + arr[3] + ')|' + S_QBLOCKS, REGLOB); + arr[7] = RegExp('\\\\(' + arr[3] + ')|([[({])|(' + arr[3] + ')|' + S_QBLOCK2, REGLOB); arr[8] = pair; return arr; } @@ -6478,19 +6500,43 @@ pos, re = _bp[6]; + var qblocks = []; + var prevStr = ''; + var mark, lastIndex; + isexpr = start = re.lastIndex = 0; while (match = re.exec(str)) { + lastIndex = re.lastIndex; pos = match.index; if (isexpr) { if (match[2]) { - re.lastIndex = skipBraces(str, match[2], re.lastIndex); + + var ch = match[2]; + var rech = FINDBRACES[ch]; + var ix = 1; + + rech.lastIndex = lastIndex; + while (match = rech.exec(str)) { + if (match[1]) { + if (match[1] === ch) { + ++ix; + } else if (! --ix) { + break; + } + } else { + rech.lastIndex = pushQBlock(match.index, rech.lastIndex, match[2]); + } + } + re.lastIndex = ix ? str.length : rech.lastIndex; continue; } + if (!match[3]) { + re.lastIndex = pushQBlock(pos, lastIndex, match[4]); continue; } } @@ -6507,9 +6553,15 @@ unescapeStr(str.slice(start)); } + parts.qblocks = qblocks; + return parts; function unescapeStr(s) { + if (prevStr) { + s = prevStr + s; + prevStr = ''; + } if (tmpl || isexpr) { parts.push(s && s.replace(_bp[5], '$1')); } else { @@ -6517,18 +6569,19 @@ } } - function skipBraces(s, ch, ix) { - var match, - recch = FINDBRACES[ch]; + function pushQBlock(_pos, _lastIndex, slash) { + //eslint-disable-line + if (slash) { + _lastIndex = skipRegex(str, _pos); + } - recch.lastIndex = ix; - ix = 1; - while (match = recch.exec(s)) { - if (match[1] && !(match[1] === ch ? ++ix : --ix)) { - break; - } + if (tmpl && _lastIndex > _pos + 2) { + mark = '\u2057' + qblocks.length + '~'; + qblocks.push(str.slice(_pos, _lastIndex)); + prevStr += str.slice(start, _pos) + mark; + start = _lastIndex; } - return ix ? s.length : recch.lastIndex; + return _lastIndex; } }; @@ -6581,10 +6634,12 @@ /* istanbul ignore next: in the browser riot is always in the scope */ _brackets.settings = typeof riot !== 'undefined' && riot.settings || {}; _brackets.set = _reset; + _brackets.skipRegex = skipRegex; _brackets.R_STRINGS = R_STRINGS; _brackets.R_MLCOMMS = R_MLCOMMS; _brackets.S_QBLOCKS = S_QBLOCKS; + _brackets.S_QBLOCK2 = S_QBLOCK2; return _brackets; }(); @@ -6607,7 +6662,10 @@ return str; } - return (_cache[str] || (_cache[str] = _create(str))).call(data, _logErr); + return (_cache[str] || (_cache[str] = _create(str))).call(data, _logErr.bind({ + data: data, + tmpl: str + })); } _tmpl.hasExpr = brackets.hasExpr; @@ -6631,10 +6689,9 @@ if (_tmpl.errorHandler) { _tmpl.errorHandler(err); } else if (typeof console !== 'undefined' && typeof console.error === 'function') { - if (err.riotData.tagName) { - console.error('Riot template error thrown in the <%s> tag', err.riotData.tagName); - } - console.error(err); + console.error(err.message); + console.log('<%s> %s', err.riotData.tagName || 'Unknown tag', this.tmpl); // eslint-disable-line + console.log(this.data); // eslint-disable-line } } @@ -6648,16 +6705,13 @@ return new Function('E', expr + ';'); // eslint-disable-line no-new-func } - var CH_IDEXPR = String.fromCharCode(0x2057), - RE_CSNAME = /^(?:(-?[_A-Za-z\xA0-\xFF][-\w\xA0-\xFF]*)|\u2057(\d+)~):/, - RE_QBLOCK = RegExp(brackets.S_QBLOCKS, 'g'), - RE_DQUOTE = /\u2057/g, - RE_QBMARK = /\u2057(\d+)~/g; + var RE_DQUOTE = /\u2057/g; + var RE_QBMARK = /\u2057(\d+)~/g; function _getTmpl(str) { - var qstr = [], - expr, - parts = brackets.split(str.replace(RE_DQUOTE, '"'), 1); + var parts = brackets.split(str.replace(RE_DQUOTE, '"'), 1); + var qstr = parts.qblocks; + var expr; if (parts.length > 2 || parts[0]) { var i, @@ -6679,7 +6733,7 @@ expr = _parseExpr(parts[1], 0, qstr); } - if (qstr[0]) { + if (qstr.length) { expr = expr.replace(RE_QBMARK, function (_, pos) { return qstr[pos].replace(/\r/g, '\\r').replace(/\n/g, '\\n'); }); @@ -6687,6 +6741,7 @@ return expr; } + var RE_CSNAME = /^(?:(-?[_A-Za-z\xA0-\xFF][-\w\xA0-\xFF]*)|\u2057(\d+)~):/; var RE_BREND = { '(': /[()]/g, '[': /[[\]]/g, @@ -6695,9 +6750,7 @@ function _parseExpr(expr, asText, qstr) { - expr = expr.replace(RE_QBLOCK, function (s, div) { - return s.length > 2 && !div ? CH_IDEXPR + (qstr.push(s) - 1) + '~' : s; - }).replace(/\s+/g, ' ').trim().replace(/\ ?([[\({},?\.:])\ ?/g, '$1'); + expr = expr.replace(/\s+/g, ' ').trim().replace(/\ ?([[\({},?\.:])\ ?/g, '$1'); if (expr) { var list = [], @@ -6783,7 +6836,7 @@ return expr; } - _tmpl.version = brackets.version = 'v3.0.3'; + _tmpl.version = brackets.version = 'v3.0.8'; return _tmpl; }(); @@ -6920,6 +6973,102 @@ return el; }; + /** + * Check if the passed argument is a boolean attribute + * @param { String } value - + * @returns { Boolean } - + */ + function isBoolAttr(value) { + return RE_BOOL_ATTRS.test(value); + } + + /** + * Check if passed argument is a function + * @param { * } value - + * @returns { Boolean } - + */ + function isFunction(value) { + return (typeof value === 'undefined' ? 'undefined' : _typeof(value)) === T_FUNCTION; + } + + /** + * Check if passed argument is an object, exclude null + * NOTE: use isObject(x) && !isArray(x) to excludes arrays. + * @param { * } value - + * @returns { Boolean } - + */ + function isObject(value) { + return value && (typeof value === 'undefined' ? 'undefined' : _typeof(value)) === T_OBJECT; // typeof null is 'object' + } + + /** + * Check if passed argument is undefined + * @param { * } value - + * @returns { Boolean } - + */ + function isUndefined(value) { + return (typeof value === 'undefined' ? 'undefined' : _typeof(value)) === T_UNDEF; + } + + /** + * Check if passed argument is a string + * @param { * } value - + * @returns { Boolean } - + */ + function isString(value) { + return (typeof value === 'undefined' ? 'undefined' : _typeof(value)) === T_STRING; + } + + /** + * Check if passed argument is empty. Different from falsy, because we dont consider 0 or false to be blank + * @param { * } value - + * @returns { Boolean } - + */ + function isBlank(value) { + return isNil(value) || value === ''; + } + + /** + * Check against the null and undefined values + * @param { * } value - + * @returns {Boolean} - + */ + function isNil(value) { + return isUndefined(value) || value === null; + } + + /** + * Check if passed argument is a kind of array + * @param { * } value - + * @returns { Boolean } - + */ + function isArray(value) { + return Array.isArray(value) || value instanceof Array; + } + + /** + * Check whether object's property could be overridden + * @param { Object } obj - source object + * @param { String } key - object property + * @returns { Boolean } true if writable + */ + function isWritable(obj, key) { + var descriptor = getPropDescriptor(obj, key); + return isUndefined(obj[key]) || descriptor && descriptor.writable; + } + + var check = Object.freeze({ + isBoolAttr: isBoolAttr, + isFunction: isFunction, + isObject: isObject, + isUndefined: isUndefined, + isString: isString, + isBlank: isBlank, + isNil: isNil, + isArray: isArray, + isWritable: isWritable + }); + /** * Specialized function for looping an array-like collection with `each={}` * @param { Array } list - collection of items @@ -6929,7 +7078,7 @@ function each(list, fn) { var len = list ? list.length : 0; var i = 0; - for (; i < len; ++i) { + for (; i < len; i++) { fn(list[i], i); } return list; @@ -6984,6 +7133,34 @@ return el; } + /** + * Function returning always a unique identifier + * @returns { Number } - number from 0...n + */ + var uid = function () { + var i = -1; + return function () { + return ++i; + }; + }(); + + /** + * Warn a message via console + * @param {String} message - warning message + */ + function warn(message) { + if (console && console.warn) { + console.warn(message); + } + } + + /** + * Short alias for Object.getOwnPropertyDescriptor + */ + var getPropDescriptor = function getPropDescriptor(o, k) { + return Object.getOwnPropertyDescriptor(o, k); + }; + /** * Extend any object with other properties * @param { Object } src - source object @@ -6995,9 +7172,12 @@ * */ function extend(src) { - var obj, - args = arguments; - for (var i = 1; i < args.length; ++i) { + var obj; + var i = 1; + var args = arguments; + var l = args.length; + + for (; i < l; i++) { if (obj = args[i]) { for (var key in obj) { // check if this property of the source object could be overridden @@ -7016,15 +7196,18 @@ toCamel: toCamel, startsWith: startsWith, defineProperty: defineProperty, + uid: uid, + warn: warn, + getPropDescriptor: getPropDescriptor, extend: extend }); var settings$1 = extend(Object.create(brackets.settings), { - skipAnonymousTags: true + skipAnonymousTags: true, + // handle the auto updates on any DOM event + autoUpdate: true }); - var EVENTS_PREFIX_REGEX = /^on/; - /** * Trigger DOM events * @param { HTMLElement } dom - dom element target of the event @@ -7032,8 +7215,8 @@ * @param { Object } e - event object */ function handleEvent(dom, handler, e) { - var ptag = this.__.parent, - item = this.__.item; + var ptag = this.__.parent; + var item = this.__.item; if (!item) { while (ptag && !item) { @@ -7060,6 +7243,11 @@ handler.call(this, e); + // avoid auto updates + if (!settings$1.autoUpdate) { + return; + } + if (!e.preventUpdate) { var p = getImmediateCustomParentTag(this); // fixes #2083 @@ -7077,82 +7265,115 @@ * @param { Tag } tag - tag instance */ function setEventHandler(name, handler, dom, tag) { - var eventName, - cb = handleEvent.bind(tag, dom, handler); + var eventName; + var cb = handleEvent.bind(tag, dom, handler); // avoid to bind twice the same event + // possible fix for #2332 dom[name] = null; // normalize event name - eventName = name.replace(EVENTS_PREFIX_REGEX, ''); + eventName = name.replace(RE_EVENTS_PREFIX, ''); - // cache the callback directly on the DOM node - if (!dom._riotEvents) { - dom._riotEvents = {}; + // cache the listener into the listeners array + if (!contains(tag.__.listeners, dom)) { + tag.__.listeners.push(dom); } - - if (dom._riotEvents[name]) { - dom.removeEventListener(eventName, dom._riotEvents[name]); + if (!dom[RIOT_EVENTS_KEY]) { + dom[RIOT_EVENTS_KEY] = {}; + } + if (dom[RIOT_EVENTS_KEY][name]) { + dom.removeEventListener(eventName, dom[RIOT_EVENTS_KEY][name]); } - dom._riotEvents[name] = cb; + dom[RIOT_EVENTS_KEY][name] = cb; dom.addEventListener(eventName, cb, false); } /** * Update dynamically created data-is tags with changing expressions * @param { Object } expr - expression tag and expression info - * @param { Tag } parent - parent for tag creation + * @param { Tag } parent - parent for tag creation + * @param { String } tagName - tag implementation we want to use */ - function updateDataIs(expr, parent) { - var tagName = tmpl(expr.value, parent), - conf, - isVirtual, - head, - ref; - - if (expr.tag && expr.tagName === tagName) { - expr.tag.update(); + function updateDataIs(expr, parent, tagName) { + var tag = expr.tag || expr.dom._tag; + var ref; + + var ref$1 = tag ? tag.__ : {}; + var head = ref$1.head; + var isVirtual = expr.dom.tagName === 'VIRTUAL'; + + if (tag && expr.tagName === tagName) { + tag.update(); return; } - isVirtual = expr.dom.tagName === 'VIRTUAL'; // sync _parent to accommodate changing tagnames - if (expr.tag) { - + if (tag) { // need placeholder before unmount if (isVirtual) { - head = expr.tag.__.head; ref = createDOMPlaceholder(); head.parentNode.insertBefore(ref, head); } - expr.tag.unmount(true); + tag.unmount(true); + } + + // unable to get the tag name + if (!isString(tagName)) { + return; } expr.impl = __TAG_IMPL[tagName]; - conf = { root: expr.dom, parent: parent, hasImpl: true, tagName: tagName }; - expr.tag = initChildTag(expr.impl, conf, expr.dom.innerHTML, parent); + + // unknown implementation + if (!expr.impl) { + return; + } + + expr.tag = tag = initChildTag(expr.impl, { + root: expr.dom, + parent: parent, + tagName: tagName + }, expr.dom.innerHTML, parent); + each(expr.attrs, function (a) { - return setAttr(expr.tag.root, a.name, a.value); + return setAttr(tag.root, a.name, a.value); }); expr.tagName = tagName; - expr.tag.mount(); + tag.mount(); + + // root exist first time, after use placeholder if (isVirtual) { - makeReplaceVirtual(expr.tag, ref || expr.tag.root); - } // root exist first time, after use placeholder + makeReplaceVirtual(tag, ref || tag.root); + } // parent is the placeholder tag, not the dynamic tag so clean up parent.__.onUnmount = function () { - var delName = expr.tag.opts.dataIs, - tags = expr.tag.parent.tags, - _tags = expr.tag.__.parent.tags; - arrayishRemove(tags, delName, expr.tag); - arrayishRemove(_tags, delName, expr.tag); - expr.tag.unmount(); + var delName = tag.opts.dataIs; + arrayishRemove(tag.parent.tags, delName, tag); + arrayishRemove(tag.__.parent.tags, delName, tag); + tag.unmount(); }; } + /** + * Nomalize any attribute removing the "riot-" prefix + * @param { String } attrName - original attribute name + * @returns { String } valid html attribute name + */ + function normalizeAttrName(attrName) { + if (!attrName) { + return null; + } + attrName = attrName.replace(ATTRS_PREFIX, ''); + if (CASE_SENSITIVE_ATTRIBUTES[attrName]) { + attrName = CASE_SENSITIVE_ATTRIBUTES[attrName]; + } + return attrName; + } + /** * Update on single tag expression * @this Tag @@ -7164,30 +7385,27 @@ return; } - var dom = expr.dom, - attrName = expr.attr, - isToggle = contains([SHOW_DIRECTIVE, HIDE_DIRECTIVE], attrName), - value = tmpl(expr.expr, this), - isValueAttr = attrName === 'riot-value', - isVirtual = expr.root && expr.root.tagName === 'VIRTUAL', - parent = dom && (expr.parent || dom.parentNode), - old; + var dom = expr.dom; + // remove the riot- prefix + var attrName = normalizeAttrName(expr.attr); + var isToggle = contains([SHOW_DIRECTIVE, HIDE_DIRECTIVE], attrName); + var isVirtual = expr.root && expr.root.tagName === 'VIRTUAL'; + var ref = this.__; + var isAnonymous = ref.isAnonymous; + var parent = dom && (expr.parent || dom.parentNode); + // detect the style attributes + var isStyleAttr = attrName === 'style'; + var isClassAttr = attrName === 'class'; - if (expr.bool) { - value = value ? attrName : false; - } else if (isUndefined(value) || value === null) { - value = ''; - } + var value; + // if it's a tag we could totally skip the rest if (expr._riot_id) { - // if it's a tag - if (expr.isMounted) { + if (expr.__.wasCreated) { expr.update(); - // if it hasn't been mounted yet, do that now. } else { expr.mount(); - if (isVirtual) { makeReplaceVirtual(expr, expr.root); } @@ -7195,24 +7413,58 @@ return; } - old = expr.value; - expr.value = value; - + // if this expression has the update method it means it can handle the DOM changes by itself if (expr.update) { - expr.update(); - return; + return expr.update(); + } + + var context = isToggle && !isAnonymous ? inheritParentProps.call(this) : this; + + // ...it seems to be a simple expression so we try to calculate its value + value = tmpl(expr.expr, context); + + var hasValue = !isBlank(value); + var isObj = isObject(value); + + // convert the style/class objects to strings + if (isObj) { + if (isClassAttr) { + value = tmpl(JSON.stringify(value), this); + } else if (isStyleAttr) { + value = styleObjectToString(value); + } } - if (expr.isRtag && value) { - return updateDataIs(expr, this); + // remove original attribute + if (expr.attr && (!expr.wasParsedOnce || !hasValue || value === false)) { + // remove either riot-* attributes or just the attribute name + remAttr(dom, getAttr(dom, expr.attr) ? expr.attr : attrName); + } + + // for the boolean attributes we don't need the value + // we can convert it to checked=true to checked=checked + if (expr.bool) { + value = value ? attrName : false; + } + if (expr.isRtag) { + return updateDataIs(expr, this, value); } - if (old === value) { + if (expr.wasParsedOnce && expr.value === value) { return; } - // no change, so nothing more to do - if (isValueAttr && dom.value === value) { + + // update the expression value + expr.value = value; + expr.wasParsedOnce = true; + + // if the value is an object (and it's not a style or class attribute) we can not do much more with it + if (isObj && !isClassAttr && !isStyleAttr && !isToggle) { return; } + // avoid to render undefined/null values + if (!hasValue) { + value = ''; + } // textarea and text nodes have no attribute name if (!attrName) { @@ -7237,44 +7489,29 @@ return; } - // remove original attribute - if (!expr.isAttrRemoved || !value) { - remAttr(dom, attrName); - expr.isAttrRemoved = true; - } - // event handler if (isFunction(value)) { setEventHandler(attrName, value, dom, this); // show / hide } else if (isToggle) { - if (attrName === HIDE_DIRECTIVE) { - value = !value; - } - dom.style.display = value ? '' : 'none'; - // field value - } else if (isValueAttr) { - dom.value = value; - // - } else if (startsWith(attrName, ATTRS_PREFIX) && attrName !== IS_DIRECTIVE) { - attrName = attrName.slice(ATTRS_PREFIX.length); - if (CASE_SENSITIVE_ATTRIBUTES[attrName]) { - attrName = CASE_SENSITIVE_ATTRIBUTES[attrName]; - } - if (value != null) { - setAttr(dom, attrName, value); - } + toggleVisibility(dom, attrName === HIDE_DIRECTIVE ? !value : value); + // handle attributes } else { if (expr.bool) { dom[attrName] = value; - if (!value) { - return; - } } - if (value === 0 || value && (typeof value === 'undefined' ? 'undefined' : _typeof(value)) !== T_OBJECT) { + if (attrName === 'value' && dom.value !== value) { + dom.value = value; + } else if (hasValue && value !== false) { setAttr(dom, attrName, value); } + + // make sure that in case of style changes + // the element stays hidden + if (isStyleAttr && dom.hidden) { + toggleVisibility(dom, false); + } } } @@ -7292,7 +7529,7 @@ remAttr(dom, CONDITIONAL_DIRECTIVE); this.tag = tag; this.expr = expr; - this.stub = document.createTextNode(''); + this.stub = createDOMPlaceholder(); this.pristine = dom; var p = dom.parentNode; @@ -7302,16 +7539,14 @@ return this; }, update: function update() { - var newValue = tmpl(this.expr, this.tag); + this.value = tmpl(this.expr, this.tag); - if (newValue && !this.current) { + if (this.value && !this.current) { // insert this.current = this.pristine.cloneNode(true); this.stub.parentNode.insertBefore(this.current, this.stub); - - this.expressions = []; - parseExpressions.apply(this.tag, [this.current, this.expressions, true]); - } else if (!newValue && this.current) { + this.expressions = parseExpressions.apply(this.tag, [this.current, true]); + } else if (!this.value && this.current) { // remove unmountAll(this.expressions); if (this.current._tag) { @@ -7323,15 +7558,12 @@ this.expressions = []; } - if (newValue) { + if (this.value) { updateAllExpressions.call(this.tag, this.expressions); } }, unmount: function unmount() { unmountAll(this.expressions || []); - delete this.pristine; - delete this.parentNode; - delete this.stub; } }; @@ -7342,47 +7574,40 @@ this.rawValue = attrValue; this.parent = parent; this.hasExp = tmpl.hasExpr(attrValue); - this.firstRun = true; - return this; }, update: function update() { - var value = this.rawValue; - if (this.hasExp) { - value = tmpl(this.rawValue, this.parent); - } - - // if nothing changed, we're done - if (!this.firstRun && value === this.value) { - return; - } - + var old = this.value; var customParent = this.parent && getImmediateCustomParentTag(this.parent); - // if the referenced element is a custom tag, then we set the tag itself, rather than DOM - var tagOrDom = this.tag || this.dom; + var tagOrDom = this.dom.__ref || this.tag || this.dom; + + this.value = this.hasExp ? tmpl(this.rawValue, this.parent) : this.rawValue; // the name changed, so we need to remove it from the old key (if present) - if (!isBlank(this.value) && customParent) { - arrayishRemove(customParent.refs, this.value, tagOrDom); + if (!isBlank(old) && customParent) { + arrayishRemove(customParent.refs, old, tagOrDom); } - - if (isBlank(value)) { - // if the value is blank, we remove it - remAttr(this.dom, this.attr); - } else { + if (!isBlank(this.value) && isString(this.value)) { // add it to the refs of parent tag (this behavior was changed >=3.0) if (customParent) { - arrayishAdd(customParent.refs, value, tagOrDom, + arrayishAdd(customParent.refs, this.value, tagOrDom, // use an array if it's a looped node and the ref is not an expression null, this.parent.__.index); } - // set the actual DOM attr - setAttr(this.dom, this.attr, value); + + if (this.value !== old) { + setAttr(this.dom, this.attr, this.value); + } + } else { + remAttr(this.dom, this.attr); } - this.value = value; - this.firstRun = false; + // cache the ref bound to this dom node + // to reuse it in future (see also #2329) + if (!this.dom.__ref) { + this.dom.__ref = tagOrDom; + } }, unmount: function unmount() { var tagOrDom = this.tag || this.dom; @@ -7390,8 +7615,6 @@ if (!isBlank(this.value) && customParent) { arrayishRemove(customParent.refs, this.value, tagOrDom); } - delete this.dom; - delete this.parent; } }; @@ -7423,8 +7646,8 @@ * @param { Array } tags - array containing all the children tags */ function unmountRedundant(items, tags) { - var i = tags.length, - j = items.length; + var i = tags.length; + var j = items.length; while (i > j) { i--; @@ -7501,6 +7724,22 @@ } } + /** + * Return the value we want to use to lookup the postion of our items in the collection + * @param { String } keyAttr - lookup string or expression + * @param { * } originalItem - original item from the collection + * @param { Object } keyedItem - object created by riot via { item, i in collection } + * @param { Boolean } hasKeyAttrExpr - flag to check whether the key is an expression + * @returns { * } value that we will use to figure out the item position via collection.indexOf + */ + function getItemId(keyAttr, originalItem, keyedItem, hasKeyAttrExpr) { + if (keyAttr) { + return hasKeyAttrExpr ? tmpl(keyAttr, keyedItem) : originalItem[keyAttr]; + } + + return originalItem; + } + /** * Manage tags having the 'each' * @param { HTMLElement } dom - DOM node we need to loop @@ -7509,23 +7748,26 @@ * @returns { Object } expression object for this each loop */ function _each(dom, parent, expr) { + var mustReorder = _typeof(getAttr(dom, LOOP_NO_REORDER_DIRECTIVE)) !== T_STRING || remAttr(dom, LOOP_NO_REORDER_DIRECTIVE); + var keyAttr = getAttr(dom, KEY_DIRECTIVE); + var hasKeyAttrExpr = keyAttr ? tmpl.hasExpr(keyAttr) : false; + var tagName = getTagName(dom); + var impl = __TAG_IMPL[tagName]; + var parentNode = dom.parentNode; + var placeholder = createDOMPlaceholder(); + var child = getTag(dom); + var ifExpr = getAttr(dom, CONDITIONAL_DIRECTIVE); + var tags = []; + var isLoop = true; + var innerHTML = dom.innerHTML; + var isAnonymous = !__TAG_IMPL[tagName]; + var isVirtual = dom.tagName === 'VIRTUAL'; + var oldItems = []; + var hasKeys; // remove the each property from the original tag remAttr(dom, LOOP_DIRECTIVE); - - var mustReorder = _typeof(getAttr(dom, LOOP_NO_REORDER_DIRECTIVE)) !== T_STRING || remAttr(dom, LOOP_NO_REORDER_DIRECTIVE), - tagName = getTagName(dom), - impl = __TAG_IMPL[tagName], - parentNode = dom.parentNode, - placeholder = createDOMPlaceholder(), - child = getTag(dom), - ifExpr = getAttr(dom, CONDITIONAL_DIRECTIVE), - tags = [], - oldItems = [], - hasKeys, - isLoop = true, - isAnonymous = !__TAG_IMPL[tagName], - isVirtual = dom.tagName === 'VIRTUAL'; + remAttr(dom, KEY_DIRECTIVE); // parse the each expression expr = tmpl.loopKeys(expr); @@ -7541,10 +7783,19 @@ expr.update = function updateEach() { // get the new items collection - var items = tmpl(expr.val, parent), - frag = createFrag(), - isObject$$1 = !isArray(items) && !isString(items), - root = placeholder.parentNode; + expr.value = tmpl(expr.val, parent); + + var items = expr.value; + var frag = createFrag(); + var isObject$$1 = !isArray(items) && !isString(items); + var root = placeholder.parentNode; + var tmpItems = []; + + // if this DOM was removed the update here is useless + // this condition fixes also a weird async issue on IE in our unit test + if (!root) { + return; + } // object loop. any changes cause full redraw if (isObject$$1) { @@ -7567,23 +7818,22 @@ } // loop all the new items - each(items, function (item, i) { + each(items, function (_item, i) { + var item = !hasKeys && expr.key ? mkitem(expr, _item, i) : _item; + var itemId = getItemId(keyAttr, _item, item, hasKeyAttrExpr); // reorder only if the items are objects - var doReorder = mustReorder && (typeof item === 'undefined' ? 'undefined' : _typeof(item)) === T_OBJECT && !hasKeys, - oldPos = oldItems.indexOf(item), - isNew = oldPos === -1, - pos = !isNew && doReorder ? oldPos : i, - + var doReorder = mustReorder && (typeof _item === 'undefined' ? 'undefined' : _typeof(_item)) === T_OBJECT && !hasKeys; + var oldPos = oldItems.indexOf(itemId); + var isNew = oldPos === -1; + var pos = !isNew && doReorder ? oldPos : i; // does a tag exist in this position? - tag = tags[pos], - mustAppend = i >= oldItems.length, - mustCreate = doReorder && isNew || !doReorder && !tag; - - item = !hasKeys && expr.key ? mkitem(expr, item, i) : item; + var tag = tags[pos]; + var mustAppend = i >= oldItems.length; + var mustCreate = doReorder && isNew || !doReorder && !tag; // new tag if (mustCreate) { - tag = new Tag$1(impl, { + tag = createTag(impl, { parent: parent, isLoop: isLoop, isAnonymous: isAnonymous, @@ -7591,7 +7841,7 @@ root: dom.cloneNode(isAnonymous), item: item, index: i - }, dom.innerHTML); + }, innerHTML); // mount the tag tag.mount(); @@ -7611,7 +7861,7 @@ } } else if (pos !== i && doReorder) { // move - if (contains(items, oldItems[pos])) { + if (keyAttr || contains(items, oldItems[pos])) { move.apply(tag, [root, tags[i], isVirtual]); // move the old tag instance tags.splice(i, 0, tags.splice(pos, 1)[0]); @@ -7637,6 +7887,8 @@ tag.__.index = i; tag.__.parent = parent; + tmpItems[i] = itemId; + if (!mustCreate) { tag.update(item); } @@ -7646,7 +7898,7 @@ unmountRedundant(items, tags); // clone the items array - oldItems = items.slice(); + oldItems = tmpItems.slice(); root.insertBefore(frag, placeholder); }; @@ -7664,33 +7916,31 @@ * Walk the tag DOM to detect the expressions to evaluate * @this Tag * @param { HTMLElement } root - root tag where we will start digging the expressions - * @param { Array } expressions - empty array where the expressions will be added * @param { Boolean } mustIncludeRoot - flag to decide whether the root must be parsed as well - * @returns { Object } an object containing the root noode and the dom tree + * @returns { Array } all the expressions found */ - function parseExpressions(root, expressions, mustIncludeRoot) { + function parseExpressions(root, mustIncludeRoot) { var this$1 = this; - var tree = { parent: { children: expressions } }; + var expressions = []; + + walkNodes(root, function (dom) { + var type = dom.nodeType; + var attr; + var tagImpl; - walkNodes(root, function (dom, ctx) { - var type = dom.nodeType, - parent = ctx.parent, - attr, - expr, - tagImpl; if (!mustIncludeRoot && dom === root) { - return { parent: parent }; + return; } // text node if (type === 3 && dom.parentNode.tagName !== 'STYLE' && tmpl.hasExpr(dom.nodeValue)) { - parent.children.push({ dom: dom, expr: dom.nodeValue }); + expressions.push({ dom: dom, expr: dom.nodeValue }); } if (type !== 1) { - return ctx; - } // not an element + return; + } var isVirtual = dom.tagName === 'VIRTUAL'; @@ -7699,20 +7949,26 @@ if (isVirtual) { setAttr(dom, 'loopVirtual', true); } // ignore here, handled in _each - parent.children.push(_each(dom, this$1, attr)); + expressions.push(_each(dom, this$1, attr)); return false; } // if-attrs become the new parent. Any following expressions (either on the current // element, or below it) become children of this expression. if (attr = getAttr(dom, CONDITIONAL_DIRECTIVE)) { - parent.children.push(Object.create(IfExpr).init(dom, this$1, attr)); + expressions.push(Object.create(IfExpr).init(dom, this$1, attr)); return false; } - if (expr = getAttr(dom, IS_DIRECTIVE)) { - if (tmpl.hasExpr(expr)) { - parent.children.push({ isRtag: true, expr: expr, dom: dom, attrs: [].slice.call(dom.attributes) }); + if (attr = getAttr(dom, IS_DIRECTIVE)) { + if (tmpl.hasExpr(attr)) { + expressions.push({ + isRtag: true, + expr: attr, + dom: dom, + attrs: [].slice.call(dom.attributes) + }); + return false; } } @@ -7720,6 +7976,7 @@ // if this is a tag, stop traversing here. // we ignore the root, since parseExpressions is called while we're mounting that root tagImpl = getTag(dom); + if (isVirtual) { if (getAttr(dom, 'virtualized')) { dom.parentElement.removeChild(dom); @@ -7731,17 +7988,22 @@ } if (tagImpl && (dom !== root || mustIncludeRoot)) { - if (isVirtual && !getAttr(dom, IS_DIRECTIVE)) { + if (isVirtual) { // handled in update + if (getAttr(dom, IS_DIRECTIVE)) { + warn("Virtual tags shouldn't be used together with the \"" + IS_DIRECTIVE + "\" attribute - https://github.com/riot/riot/issues/2511"); + } // can not remove attribute like directives // so flag for removal after creation to prevent maximum stack error setAttr(dom, 'virtualized', true); + var tag = createTag({ tmpl: dom.outerHTML }, { root: dom, parent: this$1 }, dom.innerHTML); - var tag = new Tag$1({ tmpl: dom.outerHTML }, { root: dom, parent: this$1 }, dom.innerHTML); - parent.children.push(tag); // no return, anonymous tag, keep parsing + expressions.push(tag); // no return, anonymous tag, keep parsing } else { - var conf = { root: dom, parent: this$1, hasImpl: true }; - parent.children.push(initChildTag(tagImpl, conf, dom.innerHTML, this$1)); + expressions.push(initChildTag(tagImpl, { + root: dom, + parent: this$1 + }, dom.innerHTML, this$1)); return false; } } @@ -7751,15 +8013,11 @@ if (!expr) { return; } - parent.children.push(expr); + expressions.push(expr); }]); + }); - // whatever the parent is, all child elements get the same parent. - // If this element had an if-attr, that's the parent for all child elements - return { parent: parent }; - }, tree); - - return { tree: tree, root: root }; + return expressions; } /** @@ -7774,14 +8032,18 @@ var this$1 = this; each(attrs, function (attr) { - var name = attr.name, - bool = isBoolAttr(name), - expr; + if (!attr) { + return false; + } + + var name = attr.name; + var bool = isBoolAttr(name); + var expr; - if (contains(REF_DIRECTIVES, name)) { + if (contains(REF_DIRECTIVES, name) && dom.tagName.toLowerCase() !== YIELD_TAG) { expr = Object.create(RefExpr).init(dom, this$1, name, attr.value); } else if (tmpl.hasExpr(attr.value)) { - expr = { dom: dom, expr: attr.value, attr: attr.name, bool: bool }; + expr = { dom: dom, expr: attr.value, attr: name, bool: bool }; } fn(attr, expr); @@ -7801,6 +8063,7 @@ var rootEls = { tr: 'tbody', th: 'tr', td: 'tr', col: 'colgroup' }; var tblTags = IE_VERSION && IE_VERSION < 10 ? RE_SPECIAL_TAGS : RE_SPECIAL_TAGS_NO_OPTION; var GENERIC = 'div'; + var SVG = 'svg'; /* Creates the root element for table or select child elements: @@ -7865,12 +8128,13 @@ * @param { String } tmpl - The template coming from the custom tag definition * @param { String } html - HTML content that comes from the DOM element where you * will mount the tag, mostly the original tag in the page + * @param { Boolean } isSvg - true if the root node is an svg * @returns { HTMLElement } DOM element with _tmpl_ merged through `YIELD` with the _html_. */ - function mkdom(tmpl, html) { - var match = tmpl && tmpl.match(/^\s*<([-\w]+)/), - tagName = match && match[1].toLowerCase(), - el = mkEl(GENERIC); + function mkdom(tmpl, html, isSvg$$1) { + var match = tmpl && tmpl.match(/^\s*<([-\w]+)/); + var tagName = match && match[1].toLowerCase(); + var el = mkEl(isSvg$$1 ? SVG : GENERIC); // replace all the yield tags with the tag inner html tmpl = replaceYield(tmpl, html); @@ -7879,7 +8143,7 @@ if (tblTags.test(tagName)) { el = specialTags(el, tmpl, tagName); } else { - setInnerHTML(el, tmpl); + setInnerHTML(el, tmpl, isSvg$$1); } return el; @@ -7891,7 +8155,7 @@ * @param { Object } opts - tag logic * @returns { Tag } new riot tag instance */ - function Tag$2(el, opts) { + function Tag$1(el, opts) { // get the tag properties from the class constructor var ref = this; var name = ref.name; @@ -7929,7 +8193,7 @@ if (isFunction(attrs)) { fn = attrs; - if (/^[\w\-]+\s?=/.test(css)) { + if (/^[\w-]+\s?=/.test(css)) { attrs = css; css = ''; } else { @@ -7979,10 +8243,12 @@ */ function mount$1(selector, tagName, opts) { var tags = []; + var elem, allTags; function pushTagsTo(root) { if (root.tagName) { - var riotTag = getAttr(root, IS_DIRECTIVE); + var riotTag = getAttr(root, IS_DIRECTIVE), + tag; // have tagName? force riot-tag to be the same if (tagName && riotTag !== tagName) { @@ -7990,7 +8256,7 @@ setAttr(root, IS_DIRECTIVE, tagName); } - var tag = mountTo(root, riotTag || root.tagName.toLowerCase(), opts); + tag = mountTo(root, riotTag || root.tagName.toLowerCase(), opts); if (tag) { tags.push(tag); @@ -8008,9 +8274,6 @@ tagName = 0; } - var elem; - var allTags; - // crawl the DOM to find the tag if (isString(selector)) { selector = selector === '*' ? @@ -8070,7 +8333,7 @@ function mixin$1(name, mix, g) { // Unnamed global if (isObject(name)) { - mixin$1("__unnamed_" + mixins_id++, name, true); + mixin$1("__" + mixins_id++ + "__", name, true); return; } @@ -8079,7 +8342,7 @@ // Getter if (!mix) { if (isUndefined(store[name])) { - throw new Error('Unregistered mixin: ' + name); + throw new Error("Unregistered mixin: " + name); } return store[name]; @@ -8100,25 +8363,22 @@ } function unregister$1(name) { - delete __TAG_IMPL[name]; + __TAG_IMPL[name] = null; } - var version = 'v3.3.2'; + var version$1 = 'v3.8.1'; var core = Object.freeze({ - Tag: Tag$2, + Tag: Tag$1, tag: tag$1, tag2: tag2$1, mount: mount$1, mixin: mixin$1, update: update$1, unregister: unregister$1, - version: version + version: version$1 }); - // counter to give a unique id to all the Tag instances - var __uid = 0; - /** * We need to update opts for this tag. That requires updating the expressions * in any attributes on the tag, and then copying the result onto opts. @@ -8136,49 +8396,73 @@ if (isLoop && isAnonymous) { return; } + var ctx = isLoop ? inheritParentProps.call(this) : parent || this; - var ctx = !isAnonymous && isLoop ? this : parent || this; each(instAttrs, function (attr) { if (attr.expr) { - updateAllExpressions.call(ctx, [attr.expr]); + updateExpression.call(ctx, attr.expr); } - opts[toCamel(attr.name)] = attr.expr ? attr.expr.value : attr.value; + // normalize the attribute names + opts[toCamel(attr.name).replace(ATTRS_PREFIX, '')] = attr.expr ? attr.expr.value : attr.value; }); } /** - * Tag class + * Manage the mount state of a tag triggering also the observable events + * @this Tag + * @param { Boolean } value - ..of the isMounted flag + */ + function setMountState(value) { + var ref = this.__; + var isAnonymous = ref.isAnonymous; + + defineProperty(this, 'isMounted', value); + + if (!isAnonymous) { + if (value) { + this.trigger('mount'); + } else { + this.trigger('unmount'); + this.off('*'); + this.__.wasCreated = false; + } + } + } + + /** + * Tag creation factory function * @constructor * @param { Object } impl - it contains the tag template, and logic * @param { Object } conf - tag options * @param { String } innerHTML - html that eventually we need to inject in the tag */ - function Tag$1(impl, conf, innerHTML) { + function createTag(impl, conf, innerHTML) { if (impl === void 0) impl = {}; if (conf === void 0) conf = {}; - var opts = extend({}, conf.opts), - parent = conf.parent, - isLoop = conf.isLoop, - isAnonymous = !!conf.isAnonymous, - skipAnonymous = settings$1.skipAnonymousTags && isAnonymous, - item = cleanUpData(conf.item), - index = conf.index, - // available only for the looped nodes - instAttrs = [], - // All attributes on the Tag when it's first parsed - implAttrs = [], - // expressions on this type of Tag - expressions = [], - root = conf.root, - tagName = conf.tagName || getTagName(root), - isVirtual = tagName === 'virtual', - propsInSyncWithParent = [], - dom; + var tag = conf.context || {}; + var opts = extend({}, conf.opts); + var parent = conf.parent; + var isLoop = conf.isLoop; + var isAnonymous = !!conf.isAnonymous; + var skipAnonymous = settings$1.skipAnonymousTags && isAnonymous; + var item = conf.item; + // available only for the looped nodes + var index = conf.index; + // All attributes on the Tag when it's first parsed + var instAttrs = []; + // expressions on this type of Tag + var implAttrs = []; + var expressions = []; + var root = conf.root; + var tagName = conf.tagName || getTagName(root); + var isVirtual = tagName === 'virtual'; + var isInline = !isVirtual && !impl.tmpl; + var dom; // make this tag observable if (!skipAnonymous) { - observable$1(this); + observable$1(tag); } // only call unmount if we have a valid __TAG_IMPL (has name property) if (impl.name && root._tag) { @@ -8186,17 +8470,22 @@ } // not yet mounted - this.isMounted = false; + defineProperty(tag, 'isMounted', false); - defineProperty(this, '__', { + defineProperty(tag, '__', { isAnonymous: isAnonymous, instAttrs: instAttrs, innerHTML: innerHTML, tagName: tagName, index: index, isLoop: isLoop, + isInline: isInline, + // tags having event listeners + // it would be better to use weak maps here but we can not introduce breaking changes now + listeners: [], // these vars will be needed only for the virtual tags virts: [], + wasCreated: false, tail: null, head: null, parent: null, @@ -8205,59 +8494,65 @@ // create a unique id to this tag // it could be handy to use it also to improve the virtual dom rendering speed - defineProperty(this, '_riot_id', ++__uid); // base 1 allows test !t._riot_id - defineProperty(this, 'root', root); - extend(this, { opts: opts }, item); + defineProperty(tag, '_riot_id', uid()); // base 1 allows test !t._riot_id + defineProperty(tag, 'root', root); + extend(tag, { opts: opts }, item); // protect the "tags" and "refs" property from being overridden - defineProperty(this, 'parent', parent || null); - defineProperty(this, 'tags', {}); - defineProperty(this, 'refs', {}); + defineProperty(tag, 'parent', parent || null); + defineProperty(tag, 'tags', {}); + defineProperty(tag, 'refs', {}); - dom = isLoop && isAnonymous ? root : mkdom(impl.tmpl, innerHTML, isLoop); + if (isInline || isLoop && isAnonymous) { + dom = root; + } else { + if (!isVirtual) { + root.innerHTML = ''; + } + dom = mkdom(impl.tmpl, innerHTML, isSvg(root)); + } /** * Update the tag expressions and options * @param { * } data - data we want to use to extend the tag properties * @returns { Tag } the current tag instance */ - defineProperty(this, 'update', function tagUpdate(data) { - var nextOpts = {}, - canTrigger = this.isMounted && !skipAnonymous; - - // make sure the data passed will not override - // the component core methods - data = cleanUpData(data); - extend(this, data); - updateOpts.apply(this, [isLoop, parent, isAnonymous, nextOpts, instAttrs]); - if (this.isMounted && isFunction(this.shouldUpdate) && !this.shouldUpdate(data, nextOpts)) { - return this; + defineProperty(tag, 'update', function tagUpdate(data) { + var nextOpts = {}; + var canTrigger = tag.isMounted && !skipAnonymous; + + // inherit properties from the parent tag + if (isAnonymous && parent) { + extend(tag, parent); } + extend(tag, data); - // inherit properties from the parent, but only for isAnonymous tags - if (isLoop && isAnonymous) { - inheritFrom.apply(this, [this.parent, propsInSyncWithParent]); + updateOpts.apply(tag, [isLoop, parent, isAnonymous, nextOpts, instAttrs]); + + if (canTrigger && tag.isMounted && isFunction(tag.shouldUpdate) && !tag.shouldUpdate(data, nextOpts)) { + return tag; } + extend(opts, nextOpts); + if (canTrigger) { - this.trigger('update', data); + tag.trigger('update', data); } - updateAllExpressions.call(this, expressions); + updateAllExpressions.call(tag, expressions); if (canTrigger) { - this.trigger('updated'); + tag.trigger('updated'); } - return this; - }.bind(this)); + return tag; + }); /** * Add a mixin to this tag * @returns { Tag } the current tag instance */ - defineProperty(this, 'mixin', function tagMixin() { - var this$1 = this; - + defineProperty(tag, 'mixin', function tagMixin() { each(arguments, function (mix) { - var instance, obj; + var instance; + var obj; var props = []; // properties blacklisted and will not be bound to the tag instance @@ -8282,54 +8577,52 @@ // loop the keys in the function prototype or the all object keys each(props, function (key) { - // bind methods to this + // bind methods to tag // allow mixins to override other properties/parent mixins if (!contains(propsBlacklist, key)) { // check for getters/setters - var descriptor = Object.getOwnPropertyDescriptor(instance, key) || Object.getOwnPropertyDescriptor(proto, key); + var descriptor = getPropDescriptor(instance, key) || getPropDescriptor(proto, key); var hasGetterSetter = descriptor && (descriptor.get || descriptor.set); // apply method only if it does not already exist on the instance - if (!this$1.hasOwnProperty(key) && hasGetterSetter) { - Object.defineProperty(this$1, key, descriptor); + if (!tag.hasOwnProperty(key) && hasGetterSetter) { + Object.defineProperty(tag, key, descriptor); } else { - this$1[key] = isFunction(instance[key]) ? instance[key].bind(this$1) : instance[key]; + tag[key] = isFunction(instance[key]) ? instance[key].bind(tag) : instance[key]; } } }); // init method will be called automatically if (instance.init) { - instance.init.bind(this$1)(); + instance.init.bind(tag)(opts); } }); - return this; - }.bind(this)); + + return tag; + }); /** * Mount the current tag instance * @returns { Tag } the current tag instance */ - defineProperty(this, 'mount', function tagMount() { - var this$1 = this; - - root._tag = this; // keep a reference to the tag just created + defineProperty(tag, 'mount', function tagMount() { + root._tag = tag; // keep a reference to the tag just created // Read all the attrs on this instance. This give us the info we need for updateOpts parseAttributes.apply(parent, [root, root.attributes, function (attr, expr) { if (!isAnonymous && RefExpr.isPrototypeOf(expr)) { - expr.tag = this$1; + expr.tag = tag; } attr.expr = expr; instAttrs.push(attr); }]); // update the root adding custom attributes coming from the compiler - implAttrs = []; walkAttrs(impl.attrs, function (k, v) { implAttrs.push({ name: k, value: v }); }); - parseAttributes.apply(this, [root, implAttrs, function (attr, expr) { + parseAttributes.apply(tag, [root, implAttrs, function (attr, expr) { if (expr) { expressions.push(expr); } else { @@ -8338,7 +8631,7 @@ }]); // initialiation - updateOpts.apply(this, [isLoop, parent, isAnonymous, opts, instAttrs]); + updateOpts.apply(tag, [isLoop, parent, isAnonymous, opts, instAttrs]); // add global mixins var globalMixin = mixin$1(GLOBAL_MIXIN); @@ -8346,67 +8639,62 @@ if (globalMixin && !skipAnonymous) { for (var i in globalMixin) { if (globalMixin.hasOwnProperty(i)) { - this$1.mixin(globalMixin[i]); + tag.mixin(globalMixin[i]); } } } if (impl.fn) { - impl.fn.call(this, opts); + impl.fn.call(tag, opts); } if (!skipAnonymous) { - this.trigger('before-mount'); + tag.trigger('before-mount'); } // parse layout after init. fn may calculate args for nested custom tags - parseExpressions.apply(this, [dom, expressions, isAnonymous]); + each(parseExpressions.apply(tag, [dom, isAnonymous]), function (e) { + return expressions.push(e); + }); - this.update(item); + tag.update(item); - if (!isAnonymous) { + if (!isAnonymous && !isInline) { while (dom.firstChild) { root.appendChild(dom.firstChild); } } - defineProperty(this, 'root', root); - defineProperty(this, 'isMounted', true); + defineProperty(tag, 'root', root); - if (skipAnonymous) { - return; + // if we need to wait that the parent "mount" or "updated" event gets triggered + if (!skipAnonymous && tag.parent) { + var p = getImmediateCustomParentTag(tag.parent); + p.one(!p.isMounted ? 'mount' : 'updated', function () { + setMountState.call(tag, true); + }); + } else { + // otherwise it's not a child tag we can trigger its mount event + setMountState.call(tag, true); } - // if it's not a child tag we can trigger its mount event - if (!this.parent) { - this.trigger('mount'); - } - // otherwise we need to wait that the parent "mount" or "updated" event gets triggered - else { - var p = getImmediateCustomParentTag(this.parent); - p.one(!p.isMounted ? 'mount' : 'updated', function () { - this$1.trigger('mount'); - }); - } + tag.__.wasCreated = true; - return this; - }.bind(this)); + return tag; + }); /** * Unmount the tag instance * @param { Boolean } mustKeepRoot - if it's true the root node will not be removed * @returns { Tag } the current tag instance */ - defineProperty(this, 'unmount', function tagUnmount(mustKeepRoot) { - var this$1 = this; - - var el = this.root, - p = el.parentNode, - ptag, - tagIndex = __TAGS_CACHE.indexOf(this); + defineProperty(tag, 'unmount', function tagUnmount(mustKeepRoot) { + var el = tag.root; + var p = el.parentNode; + var tagIndex = __TAGS_CACHE.indexOf(tag); if (!skipAnonymous) { - this.trigger('before-unmount'); + tag.trigger('before-unmount'); } // clear all attributes coming from the mounted tag @@ -8414,47 +8702,38 @@ if (startsWith(name, ATTRS_PREFIX)) { name = name.slice(ATTRS_PREFIX.length); } + remAttr(root, name); }); - // remove this tag instance from the global virtualDom variable + // remove all the event listeners + tag.__.listeners.forEach(function (dom) { + Object.keys(dom[RIOT_EVENTS_KEY]).forEach(function (eventName) { + dom.removeEventListener(eventName, dom[RIOT_EVENTS_KEY][eventName]); + }); + }); + + // remove tag instance from the global tags cache collection if (tagIndex !== -1) { __TAGS_CACHE.splice(tagIndex, 1); } - if (p || isVirtual) { - if (parent) { - ptag = getImmediateCustomParentTag(parent); + // clean up the parent tags object + if (parent && !isAnonymous) { + var ptag = getImmediateCustomParentTag(parent); - if (isVirtual) { - Object.keys(this.tags).forEach(function (tagName) { - arrayishRemove(ptag.tags, tagName, this$1.tags[tagName]); - }); - } else { - arrayishRemove(ptag.tags, tagName, this); - if (parent !== ptag) // remove from _parent too - { - arrayishRemove(parent.tags, tagName, this); - } - } + if (isVirtual) { + Object.keys(tag.tags).forEach(function (tagName) { + return arrayishRemove(ptag.tags, tagName, tag.tags[tagName]); + }); } else { - while (el.firstChild) { - el.removeChild(el.firstChild); - } - } - - if (p) { - if (!mustKeepRoot) { - p.removeChild(el); - } else { - // the riot-tag and the data-is attributes aren't needed anymore, remove them - remAttr(p, IS_DIRECTIVE); - } + arrayishRemove(ptag.tags, tagName, tag); } } - if (this.__.virts) { - each(this.__.virts, function (v) { + // unmount all the virtual directives + if (tag.__.virts) { + each(tag.__.virts, function (v) { if (v.parentNode) { v.parentNode.removeChild(v); } @@ -8467,22 +8746,35 @@ return a.expr && a.expr.unmount && a.expr.unmount(); }); + // clear the tag html if it's necessary + if (mustKeepRoot) { + setInnerHTML(el, ''); + } + // otherwise detach the root tag from the DOM + else if (p) { + p.removeChild(el); + } + // custom internal unmount function to avoid relying on the observable - if (this.__.onUnmount) { - this.__.onUnmount(); + if (tag.__.onUnmount) { + tag.__.onUnmount(); } - if (!skipAnonymous) { - this.trigger('unmount'); - this.off('*'); + // weird fix for a weird edge case #2409 and #2436 + // some users might use your software not as you've expected + // so I need to add these dirty hacks to mitigate unexpected issues + if (!tag.isMounted) { + setMountState.call(tag, true); } - defineProperty(this, 'isMounted', false); + setMountState.call(tag, false); - delete this.root._tag; + delete tag.root._tag; - return this; - }.bind(this)); + return tag; + }); + + return tag; } /** @@ -8494,30 +8786,6 @@ return dom.tagName && __TAG_IMPL[getAttr(dom, IS_DIRECTIVE) || getAttr(dom, IS_DIRECTIVE) || dom.tagName.toLowerCase()]; } - /** - * Inherit properties from a target tag instance - * @this Tag - * @param { Tag } target - tag where we will inherit properties - * @param { Array } propsInSyncWithParent - array of properties to sync with the target - */ - function inheritFrom(target, propsInSyncWithParent) { - var this$1 = this; - - each(Object.keys(target), function (k) { - // some properties must be always in sync with the parent tag - var mustSync = !isReservedName(k) && contains(propsInSyncWithParent, k); - - if (isUndefined(this$1[k]) || mustSync) { - // track the property to keep in sync - // so we can keep it updated - if (!mustSync) { - propsInSyncWithParent.push(k); - } - this$1[k] = target[k]; - } - }); - } - /** * Move the position of a custom tag in its parent tag * @this Tag @@ -8525,8 +8793,8 @@ * @param { Number } newPos - index where the new tag will be stored */ function moveChildTag(tagName, newPos) { - var parent = this.parent, - tags; + var parent = this.parent; + var tags; // no parent no move if (!parent) { return; @@ -8550,9 +8818,9 @@ * @returns { Object } instance of the new child tag just created */ function initChildTag(child, opts, innerHTML, parent) { - var tag = new Tag$1(child, opts, innerHTML), - tagName = opts.tagName || getTagName(opts.root, true), - ptag = getImmediateCustomParentTag(parent); + var tag = createTag(child, opts, innerHTML); + var tagName = opts.tagName || getTagName(opts.root, true); + var ptag = getImmediateCustomParentTag(parent); // fix for the parent attribute in the looped elements defineProperty(tag, 'parent', ptag); // store the real parent tag @@ -8568,10 +8836,6 @@ arrayishAdd(parent.tags, tagName, tag); } - // empty the child node once we got its template - // to avoid that its children get compiled multiple times - opts.root.innerHTML = ''; - return tag; } @@ -8597,8 +8861,10 @@ */ function unmountAll(expressions) { each(expressions, function (expr) { - if (expr instanceof Tag$1) { + if (expr.unmount) { expr.unmount(true); + } else if (expr.tagName) { + expr.tag.unmount(true); } else if (expr.unmount) { expr.unmount(); } @@ -8612,30 +8878,11 @@ * @returns { String } name to identify this dom node in riot */ function getTagName(dom, skipDataIs) { - var child = getTag(dom), - namedTag = !skipDataIs && getAttr(dom, IS_DIRECTIVE); + var child = getTag(dom); + var namedTag = !skipDataIs && getAttr(dom, IS_DIRECTIVE); return namedTag && !tmpl.hasExpr(namedTag) ? namedTag : child ? child.name : dom.tagName.toLowerCase(); } - /** - * With this function we avoid that the internal Tag methods get overridden - * @param { Object } data - options we want to use to extend the tag instance - * @returns { Object } clean object without containing the riot internal reserved words - */ - function cleanUpData(data) { - if (!(data instanceof Tag$1) && !(data && isFunction(data.trigger))) { - return data; - } - - var o = {}; - for (var key in data) { - if (!RE_RESERVED_NAMES.test(key)) { - o[key] = data[key]; - } - } - return o; - } - /** * Set the property of an object for a given key. If something already * exists there, then it becomes an array containing both the old and new value. @@ -8703,7 +8950,7 @@ } else if (obj[key].length === 1 && !ensureArray) { obj[key] = obj[key][0]; } - } else { + } else if (obj[key] === value) { delete obj[key]; } // otherwise just delete the key } @@ -8717,20 +8964,16 @@ * @returns { Tag } a new Tag instance */ function mountTo(root, tagName, opts, ctx) { - var impl = __TAG_IMPL[tagName], - implClass = __TAG_IMPL[tagName].class, - tag = ctx || (implClass ? Object.create(implClass.prototype) : {}), - + var impl = __TAG_IMPL[tagName]; + var implClass = __TAG_IMPL[tagName].class; + var context = ctx || (implClass ? Object.create(implClass.prototype) : {}); // cache the inner HTML to fix #855 - innerHTML = root._innerHTML = root._innerHTML || root.innerHTML; - - // clear the inner html - root.innerHTML = ''; - - var conf = extend({ root: root, opts: opts }, { parent: opts ? opts.parent : null }); + var innerHTML = root._innerHTML = root._innerHTML || root.innerHTML; + var conf = extend({ root: root, opts: opts, context: context }, { parent: opts ? opts.parent : null }); + var tag; if (impl && root) { - Tag$1.apply(tag, [impl, conf, innerHTML]); + tag = createTag(impl, conf, innerHTML); } if (tag && tag.mount) { @@ -8765,11 +9008,11 @@ function makeVirtual(src, target) { var this$1 = this; - var head = createDOMPlaceholder(), - tail = createDOMPlaceholder(), - frag = createFrag(), - sib, - el; + var head = createDOMPlaceholder(); + var tail = createDOMPlaceholder(); + var frag = createFrag(); + var sib; + var el; this.root.insertBefore(head, this.root.firstChild); this.root.appendChild(tail); @@ -8791,6 +9034,18 @@ } } + /** + * Return a temporary context containing also the parent properties + * @this Tag + * @param { Tag } - temporary tag context containing all the parent properties + */ + function inheritParentProps() { + if (this.parent) { + return extend(Object.create(this), this.parent); + } + return this; + } + /** * Move virtual tag and all child nodes * @this Tag @@ -8800,9 +9055,9 @@ function moveVirtual(src, target) { var this$1 = this; - var el = this.__.head, - frag = createFrag(), - sib; + var el = this.__.head; + var sib; + var frag = createFrag(); while (el) { sib = el.nextSibling; @@ -8838,18 +9093,17 @@ var tags = Object.freeze({ getTag: getTag, - inheritFrom: inheritFrom, moveChildTag: moveChildTag, initChildTag: initChildTag, getImmediateCustomParentTag: getImmediateCustomParentTag, unmountAll: unmountAll, getTagName: getTagName, - cleanUpData: cleanUpData, arrayishAdd: arrayishAdd, arrayishRemove: arrayishRemove, mountTo: mountTo, makeReplaceVirtual: makeReplaceVirtual, makeVirtual: makeVirtual, + inheritParentProps: inheritParentProps, moveVirtual: moveVirtual, selectTags: selectTags }); @@ -8872,13 +9126,14 @@ }; // export the core props/methods - var Tag$$1 = Tag$2; - var tag$$1 = tag$1; - var tag2$$1 = tag2$1; - var mount$$1 = mount$1; - var mixin$$1 = mixin$1; - var update$$1 = update$1; - var unregister$$1 = unregister$1; + var Tag = Tag$1; + var tag = tag$1; + var tag2 = tag2$1; + var mount = mount$1; + var mixin = mixin$1; + var update = update$1; + var unregister = unregister$1; + var version = version$1; var observable = observable$1; var riot$1 = extend({}, core, { @@ -8889,13 +9144,14 @@ exports.settings = settings; exports.util = util; - exports.Tag = Tag$$1; - exports.tag = tag$$1; - exports.tag2 = tag2$$1; - exports.mount = mount$$1; - exports.mixin = mixin$$1; - exports.update = update$$1; - exports.unregister = unregister$$1; + exports.Tag = Tag; + exports.tag = tag; + exports.tag2 = tag2; + exports.mount = mount; + exports.mixin = mixin; + exports.update = update; + exports.unregister = unregister; + exports.version = version; exports.observable = observable; exports['default'] = riot$1; @@ -8903,16 +9159,16 @@ }); /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(42))) -/***/ }, +/***/ }), /* 43 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { - var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;/* WEBPACK VAR INJECTION */(function(module) {'use strict'; + var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;var require;/* WEBPACK VAR INJECTION */(function(module) {'use strict'; var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; //! moment.js - //! version : 2.18.0 + //! version : 2.20.1 //! authors : Tim Wood, Iskren Chernev, Moment.js contributors //! license : MIT //! momentjs.com @@ -8945,12 +9201,17 @@ } function isObjectEmpty(obj) { - var k; - for (k in obj) { - // even if its not own property I'd still call it non-empty - return false; + if (Object.getOwnPropertyNames) { + return Object.getOwnPropertyNames(obj).length === 0; + } else { + var k; + for (k in obj) { + if (obj.hasOwnProperty(k)) { + return false; + } + } + return true; } - return true; } function isUndefined(input) { @@ -9045,15 +9306,13 @@ }; } - var some$1 = some; - function isValid(m) { if (m._isValid == null) { var flags = getParsingFlags(m); - var parsedParts = some$1.call(flags.parsedDateParts, function (i) { + var parsedParts = some.call(flags.parsedDateParts, function (i) { return i != null; }); - var isNowValid = !isNaN(m._d.getTime()) && flags.overflow < 0 && !flags.empty && !flags.invalidMonth && !flags.invalidWeekday && !flags.nullInput && !flags.invalidFormat && !flags.userInvalidated && (!flags.meridiem || flags.meridiem && parsedParts); + var isNowValid = !isNaN(m._d.getTime()) && flags.overflow < 0 && !flags.empty && !flags.invalidMonth && !flags.invalidWeekday && !flags.weekdayMismatch && !flags.nullInput && !flags.invalidFormat && !flags.userInvalidated && (!flags.meridiem || flags.meridiem && parsedParts); if (m._strict) { isNowValid = isNowValid && flags.charsLeftOver === 0 && flags.unusedTokens.length === 0 && flags.bigHour === undefined; @@ -9306,8 +9565,6 @@ }; } - var keys$1 = keys; - var defaultCalendar = { sameDay: '[Today at] LT', nextDay: '[Tomorrow at] LT', @@ -9431,68 +9688,20 @@ return units; } - function makeGetSet(unit, keepTime) { - return function (value) { - if (value != null) { - set$1(this, unit, value); - hooks.updateOffset(this, keepTime); - return this; - } else { - return get(this, unit); - } - }; + function zeroFill(number, targetLength, forceSign) { + var absNumber = '' + Math.abs(number), + zerosToFill = targetLength - absNumber.length, + sign = number >= 0; + return (sign ? forceSign ? '+' : '' : '-') + Math.pow(10, Math.max(0, zerosToFill)).toString().substr(1) + absNumber; } - function get(mom, unit) { - return mom.isValid() ? mom._d['get' + (mom._isUTC ? 'UTC' : '') + unit]() : NaN; - } + var formattingTokens = /(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g; - function set$1(mom, unit, value) { - if (mom.isValid()) { - mom._d['set' + (mom._isUTC ? 'UTC' : '') + unit](value); - } - } + var localFormattingTokens = /(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g; - // MOMENTS + var formatFunctions = {}; - function stringGet(units) { - units = normalizeUnits(units); - if (isFunction(this[units])) { - return this[units](); - } - return this; - } - - function stringSet(units, value) { - if ((typeof units === 'undefined' ? 'undefined' : _typeof(units)) === 'object') { - units = normalizeObjectUnits(units); - var prioritized = getPrioritizedUnits(units); - for (var i = 0; i < prioritized.length; i++) { - this[prioritized[i].unit](units[prioritized[i].unit]); - } - } else { - units = normalizeUnits(units); - if (isFunction(this[units])) { - return this[units](value); - } - } - return this; - } - - function zeroFill(number, targetLength, forceSign) { - var absNumber = '' + Math.abs(number), - zerosToFill = targetLength - absNumber.length, - sign = number >= 0; - return (sign ? forceSign ? '+' : '' : '-') + Math.pow(10, Math.max(0, zerosToFill)).toString().substr(1) + absNumber; - } - - var formattingTokens = /(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g; - - var localFormattingTokens = /(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g; - - var formatFunctions = {}; - - var formatTokenFunctions = {}; + var formatTokenFunctions = {}; // token: 'M' // padded: ['MM', 2] @@ -9601,7 +9810,7 @@ // any word (or two) characters or numbers including two/three word month in arabic. // includes scottish gaelic two word and hyphenated months - var matchWord = /[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i; + var matchWord = /[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i; var regexes = {}; @@ -9671,6 +9880,128 @@ var WEEK = 7; var WEEKDAY = 8; + // FORMATTING + + addFormatToken('Y', 0, 0, function () { + var y = this.year(); + return y <= 9999 ? '' + y : '+' + y; + }); + + addFormatToken(0, ['YY', 2], 0, function () { + return this.year() % 100; + }); + + addFormatToken(0, ['YYYY', 4], 0, 'year'); + addFormatToken(0, ['YYYYY', 5], 0, 'year'); + addFormatToken(0, ['YYYYYY', 6, true], 0, 'year'); + + // ALIASES + + addUnitAlias('year', 'y'); + + // PRIORITIES + + addUnitPriority('year', 1); + + // PARSING + + addRegexToken('Y', matchSigned); + addRegexToken('YY', match1to2, match2); + addRegexToken('YYYY', match1to4, match4); + addRegexToken('YYYYY', match1to6, match6); + addRegexToken('YYYYYY', match1to6, match6); + + addParseToken(['YYYYY', 'YYYYYY'], YEAR); + addParseToken('YYYY', function (input, array) { + array[YEAR] = input.length === 2 ? hooks.parseTwoDigitYear(input) : toInt(input); + }); + addParseToken('YY', function (input, array) { + array[YEAR] = hooks.parseTwoDigitYear(input); + }); + addParseToken('Y', function (input, array) { + array[YEAR] = parseInt(input, 10); + }); + + // HELPERS + + function daysInYear(year) { + return isLeapYear(year) ? 366 : 365; + } + + function isLeapYear(year) { + return year % 4 === 0 && year % 100 !== 0 || year % 400 === 0; + } + + // HOOKS + + hooks.parseTwoDigitYear = function (input) { + return toInt(input) + (toInt(input) > 68 ? 1900 : 2000); + }; + + // MOMENTS + + var getSetYear = makeGetSet('FullYear', true); + + function getIsLeapYear() { + return isLeapYear(this.year()); + } + + function makeGetSet(unit, keepTime) { + return function (value) { + if (value != null) { + set$1(this, unit, value); + hooks.updateOffset(this, keepTime); + return this; + } else { + return get(this, unit); + } + }; + } + + function get(mom, unit) { + return mom.isValid() ? mom._d['get' + (mom._isUTC ? 'UTC' : '') + unit]() : NaN; + } + + function set$1(mom, unit, value) { + if (mom.isValid() && !isNaN(value)) { + if (unit === 'FullYear' && isLeapYear(mom.year()) && mom.month() === 1 && mom.date() === 29) { + mom._d['set' + (mom._isUTC ? 'UTC' : '') + unit](value, mom.month(), daysInMonth(value, mom.month())); + } else { + mom._d['set' + (mom._isUTC ? 'UTC' : '') + unit](value); + } + } + } + + // MOMENTS + + function stringGet(units) { + units = normalizeUnits(units); + if (isFunction(this[units])) { + return this[units](); + } + return this; + } + + function stringSet(units, value) { + if ((typeof units === 'undefined' ? 'undefined' : _typeof(units)) === 'object') { + units = normalizeObjectUnits(units); + var prioritized = getPrioritizedUnits(units); + for (var i = 0; i < prioritized.length; i++) { + this[prioritized[i].unit](units[prioritized[i].unit]); + } + } else { + units = normalizeUnits(units); + if (isFunction(this[units])) { + return this[units](value); + } + } + return this; + } + + function mod(n, x) { + return (n % x + x) % x; + } + var indexOf; if (Array.prototype.indexOf) { @@ -9688,10 +10019,13 @@ }; } - var indexOf$1 = indexOf; - function daysInMonth(year, month) { - return new Date(Date.UTC(year, month + 1, 0)).getUTCDate(); + if (isNaN(year) || isNaN(month)) { + return NaN; + } + var modMonth = mod(month, 12); + year += (month - modMonth) / 12; + return modMonth === 1 ? isLeapYear(year) ? 29 : 28 : 31 - modMonth % 7 % 2; } // FORMATTING @@ -9779,26 +10113,26 @@ if (strict) { if (format === 'MMM') { - ii = indexOf$1.call(this._shortMonthsParse, llc); + ii = indexOf.call(this._shortMonthsParse, llc); return ii !== -1 ? ii : null; } else { - ii = indexOf$1.call(this._longMonthsParse, llc); + ii = indexOf.call(this._longMonthsParse, llc); return ii !== -1 ? ii : null; } } else { if (format === 'MMM') { - ii = indexOf$1.call(this._shortMonthsParse, llc); + ii = indexOf.call(this._shortMonthsParse, llc); if (ii !== -1) { return ii; } - ii = indexOf$1.call(this._longMonthsParse, llc); + ii = indexOf.call(this._longMonthsParse, llc); return ii !== -1 ? ii : null; } else { - ii = indexOf$1.call(this._longMonthsParse, llc); + ii = indexOf.call(this._longMonthsParse, llc); if (ii !== -1) { return ii; } - ii = indexOf$1.call(this._shortMonthsParse, llc); + ii = indexOf.call(this._shortMonthsParse, llc); return ii !== -1 ? ii : null; } } @@ -9958,72 +10292,6 @@ this._monthsShortStrictRegex = new RegExp('^(' + shortPieces.join('|') + ')', 'i'); } - // FORMATTING - - addFormatToken('Y', 0, 0, function () { - var y = this.year(); - return y <= 9999 ? '' + y : '+' + y; - }); - - addFormatToken(0, ['YY', 2], 0, function () { - return this.year() % 100; - }); - - addFormatToken(0, ['YYYY', 4], 0, 'year'); - addFormatToken(0, ['YYYYY', 5], 0, 'year'); - addFormatToken(0, ['YYYYYY', 6, true], 0, 'year'); - - // ALIASES - - addUnitAlias('year', 'y'); - - // PRIORITIES - - addUnitPriority('year', 1); - - // PARSING - - addRegexToken('Y', matchSigned); - addRegexToken('YY', match1to2, match2); - addRegexToken('YYYY', match1to4, match4); - addRegexToken('YYYYY', match1to6, match6); - addRegexToken('YYYYYY', match1to6, match6); - - addParseToken(['YYYYY', 'YYYYYY'], YEAR); - addParseToken('YYYY', function (input, array) { - array[YEAR] = input.length === 2 ? hooks.parseTwoDigitYear(input) : toInt(input); - }); - addParseToken('YY', function (input, array) { - array[YEAR] = hooks.parseTwoDigitYear(input); - }); - addParseToken('Y', function (input, array) { - array[YEAR] = parseInt(input, 10); - }); - - // HELPERS - - function daysInYear(year) { - return isLeapYear(year) ? 366 : 365; - } - - function isLeapYear(year) { - return year % 4 === 0 && year % 100 !== 0 || year % 400 === 0; - } - - // HOOKS - - hooks.parseTwoDigitYear = function (input) { - return toInt(input) + (toInt(input) > 68 ? 1900 : 2000); - }; - - // MOMENTS - - var getSetYear = makeGetSet('FullYear', true); - - function getIsLeapYear() { - return isLeapYear(this.year()); - } - function createDate(y, m, d, h, M, s, ms) { // can't just apply() to create a date: // https://stackoverflow.com/q/181348 @@ -10295,48 +10563,48 @@ if (strict) { if (format === 'dddd') { - ii = indexOf$1.call(this._weekdaysParse, llc); + ii = indexOf.call(this._weekdaysParse, llc); return ii !== -1 ? ii : null; } else if (format === 'ddd') { - ii = indexOf$1.call(this._shortWeekdaysParse, llc); + ii = indexOf.call(this._shortWeekdaysParse, llc); return ii !== -1 ? ii : null; } else { - ii = indexOf$1.call(this._minWeekdaysParse, llc); + ii = indexOf.call(this._minWeekdaysParse, llc); return ii !== -1 ? ii : null; } } else { if (format === 'dddd') { - ii = indexOf$1.call(this._weekdaysParse, llc); + ii = indexOf.call(this._weekdaysParse, llc); if (ii !== -1) { return ii; } - ii = indexOf$1.call(this._shortWeekdaysParse, llc); + ii = indexOf.call(this._shortWeekdaysParse, llc); if (ii !== -1) { return ii; } - ii = indexOf$1.call(this._minWeekdaysParse, llc); + ii = indexOf.call(this._minWeekdaysParse, llc); return ii !== -1 ? ii : null; } else if (format === 'ddd') { - ii = indexOf$1.call(this._shortWeekdaysParse, llc); + ii = indexOf.call(this._shortWeekdaysParse, llc); if (ii !== -1) { return ii; } - ii = indexOf$1.call(this._weekdaysParse, llc); + ii = indexOf.call(this._weekdaysParse, llc); if (ii !== -1) { return ii; } - ii = indexOf$1.call(this._minWeekdaysParse, llc); + ii = indexOf.call(this._minWeekdaysParse, llc); return ii !== -1 ? ii : null; } else { - ii = indexOf$1.call(this._minWeekdaysParse, llc); + ii = indexOf.call(this._minWeekdaysParse, llc); if (ii !== -1) { return ii; } - ii = indexOf$1.call(this._weekdaysParse, llc); + ii = indexOf.call(this._weekdaysParse, llc); if (ii !== -1) { return ii; } - ii = indexOf$1.call(this._shortWeekdaysParse, llc); + ii = indexOf.call(this._shortWeekdaysParse, llc); return ii !== -1 ? ii : null; } } @@ -10728,9 +10996,8 @@ if (!locales[name] && typeof module !== 'undefined' && module && module.exports) { try { oldLocale = globalLocale._abbr; + var aliasedRequire = require; __webpack_require__(45)("./" + name); - // because defineLocale currently also sets the global locale, we - // want to undo that for lazy loaded locales getSetGlobalLocale(oldLocale); } catch (e) {} } @@ -10803,10 +11070,12 @@ function updateLocale(name, config) { if (config != null) { var locale, + tmpLocale, parentConfig = baseConfig; // MERGE - if (locales[name] != null) { - parentConfig = locales[name]._config; + tmpLocale = loadLocale(name); + if (tmpLocale != null) { + parentConfig = tmpLocale._config; } config = mergeConfigs(parentConfig, config); locale = new Locale(config); @@ -10844,217 +11113,41 @@ //short-circuit everything else locale = loadLocale(key); if (locale) { - return locale; - } - key = [key]; - } - - return chooseLocale(key); - } - - function listLocales() { - return keys$1(locales); - } - - function checkOverflow(m) { - var overflow; - var a = m._a; - - if (a && getParsingFlags(m).overflow === -2) { - overflow = a[MONTH] < 0 || a[MONTH] > 11 ? MONTH : a[DATE] < 1 || a[DATE] > daysInMonth(a[YEAR], a[MONTH]) ? DATE : a[HOUR] < 0 || a[HOUR] > 24 || a[HOUR] === 24 && (a[MINUTE] !== 0 || a[SECOND] !== 0 || a[MILLISECOND] !== 0) ? HOUR : a[MINUTE] < 0 || a[MINUTE] > 59 ? MINUTE : a[SECOND] < 0 || a[SECOND] > 59 ? SECOND : a[MILLISECOND] < 0 || a[MILLISECOND] > 999 ? MILLISECOND : -1; - - if (getParsingFlags(m)._overflowDayOfYear && (overflow < YEAR || overflow > DATE)) { - overflow = DATE; - } - if (getParsingFlags(m)._overflowWeeks && overflow === -1) { - overflow = WEEK; - } - if (getParsingFlags(m)._overflowWeekday && overflow === -1) { - overflow = WEEKDAY; - } - - getParsingFlags(m).overflow = overflow; - } - - return m; - } - - // iso 8601 regex - // 0000-00-00 0000-W00 or 0000-W00-0 + T + 00 or 00:00 or 00:00:00 or 00:00:00.000 + +00:00 or +0000 or +00) - var extendedIsoRegex = /^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/; - var basicIsoRegex = /^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/; - - var tzRegex = /Z|[+-]\d\d(?::?\d\d)?/; - - var isoDates = [['YYYYYY-MM-DD', /[+-]\d{6}-\d\d-\d\d/], ['YYYY-MM-DD', /\d{4}-\d\d-\d\d/], ['GGGG-[W]WW-E', /\d{4}-W\d\d-\d/], ['GGGG-[W]WW', /\d{4}-W\d\d/, false], ['YYYY-DDD', /\d{4}-\d{3}/], ['YYYY-MM', /\d{4}-\d\d/, false], ['YYYYYYMMDD', /[+-]\d{10}/], ['YYYYMMDD', /\d{8}/], - // YYYYMM is NOT allowed by the standard - ['GGGG[W]WWE', /\d{4}W\d{3}/], ['GGGG[W]WW', /\d{4}W\d{2}/, false], ['YYYYDDD', /\d{7}/]]; - - // iso time formats and regexes - var isoTimes = [['HH:mm:ss.SSSS', /\d\d:\d\d:\d\d\.\d+/], ['HH:mm:ss,SSSS', /\d\d:\d\d:\d\d,\d+/], ['HH:mm:ss', /\d\d:\d\d:\d\d/], ['HH:mm', /\d\d:\d\d/], ['HHmmss.SSSS', /\d\d\d\d\d\d\.\d+/], ['HHmmss,SSSS', /\d\d\d\d\d\d,\d+/], ['HHmmss', /\d\d\d\d\d\d/], ['HHmm', /\d\d\d\d/], ['HH', /\d\d/]]; - - var aspNetJsonRegex = /^\/?Date\((\-?\d+)/i; - - // date from iso format - function configFromISO(config) { - var i, - l, - string = config._i, - match = extendedIsoRegex.exec(string) || basicIsoRegex.exec(string), - allowTime, - dateFormat, - timeFormat, - tzFormat; - - if (match) { - getParsingFlags(config).iso = true; - - for (i = 0, l = isoDates.length; i < l; i++) { - if (isoDates[i][1].exec(match[1])) { - dateFormat = isoDates[i][0]; - allowTime = isoDates[i][2] !== false; - break; - } - } - if (dateFormat == null) { - config._isValid = false; - return; - } - if (match[3]) { - for (i = 0, l = isoTimes.length; i < l; i++) { - if (isoTimes[i][1].exec(match[3])) { - // match[2] should be 'T' or space - timeFormat = (match[2] || ' ') + isoTimes[i][0]; - break; - } - } - if (timeFormat == null) { - config._isValid = false; - return; - } - } - if (!allowTime && timeFormat != null) { - config._isValid = false; - return; - } - if (match[4]) { - if (tzRegex.exec(match[4])) { - tzFormat = 'Z'; - } else { - config._isValid = false; - return; - } - } - config._f = dateFormat + (timeFormat || '') + (tzFormat || ''); - configFromStringAndFormat(config); - } else { - config._isValid = false; - } - } - - // RFC 2822 regex: For details see https://tools.ietf.org/html/rfc2822#section-3.3 - var basicRfcRegex = /^((?:Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d?\d\s(?:Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(?:\d\d)?\d\d\s)(\d\d:\d\d)(\:\d\d)?(\s(?:UT|GMT|[ECMP][SD]T|[A-IK-Za-ik-z]|[+-]\d{4}))$/; - - // date and time from ref 2822 format - function configFromRFC2822(config) { - var string, match, dayFormat, dateFormat, timeFormat, tzFormat; - var timezones = { - ' GMT': ' +0000', - ' EDT': ' -0400', - ' EST': ' -0500', - ' CDT': ' -0500', - ' CST': ' -0600', - ' MDT': ' -0600', - ' MST': ' -0700', - ' PDT': ' -0700', - ' PST': ' -0800' - }; - var military = 'YXWVUTSRQPONZABCDEFGHIKLM'; - var timezone, timezoneIndex; - - string = config._i.replace(/\([^\)]*\)|[\n\t]/g, ' ') // Remove comments and folding whitespace - .replace(/(\s\s+)/g, ' ') // Replace multiple-spaces with a single space - .replace(/^\s|\s$/g, ''); // Remove leading and trailing spaces - match = basicRfcRegex.exec(string); - - if (match) { - dayFormat = match[1] ? 'ddd' + (match[1].length === 5 ? ', ' : ' ') : ''; - dateFormat = 'D MMM ' + (match[2].length > 10 ? 'YYYY ' : 'YY '); - timeFormat = 'HH:mm' + (match[4] ? ':ss' : ''); - - // TODO: Replace the vanilla JS Date object with an indepentent day-of-week check. - if (match[1]) { - // day of week given - var momentDate = new Date(match[2]); - var momentDay = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'][momentDate.getDay()]; - - if (match[1].substr(0, 3) !== momentDay) { - getParsingFlags(config).weekdayMismatch = true; - config._isValid = false; - return; - } - } - - switch (match[5].length) { - case 2: - // military - if (timezoneIndex === 0) { - timezone = ' +0000'; - } else { - timezoneIndex = military.indexOf(match[5][1].toUpperCase()) - 12; - timezone = (timezoneIndex < 0 ? ' -' : ' +') + ('' + timezoneIndex).replace(/^-?/, '0').match(/..$/)[0] + '00'; - } - break; - case 4: - // Zone - timezone = timezones[match[5]]; - break; - default: - // UT or +/-9999 - timezone = timezones[' GMT']; + return locale; } - match[5] = timezone; - config._i = match.splice(1).join(''); - tzFormat = ' ZZ'; - config._f = dayFormat + dateFormat + timeFormat + tzFormat; - configFromStringAndFormat(config); - getParsingFlags(config).rfc2822 = true; - } else { - config._isValid = false; + key = [key]; } + + return chooseLocale(key); } - // date from iso format or fallback - function configFromString(config) { - var matched = aspNetJsonRegex.exec(config._i); + function listLocales() { + return keys(locales); + } - if (matched !== null) { - config._d = new Date(+matched[1]); - return; - } + function checkOverflow(m) { + var overflow; + var a = m._a; - configFromISO(config); - if (config._isValid === false) { - delete config._isValid; - } else { - return; - } + if (a && getParsingFlags(m).overflow === -2) { + overflow = a[MONTH] < 0 || a[MONTH] > 11 ? MONTH : a[DATE] < 1 || a[DATE] > daysInMonth(a[YEAR], a[MONTH]) ? DATE : a[HOUR] < 0 || a[HOUR] > 24 || a[HOUR] === 24 && (a[MINUTE] !== 0 || a[SECOND] !== 0 || a[MILLISECOND] !== 0) ? HOUR : a[MINUTE] < 0 || a[MINUTE] > 59 ? MINUTE : a[SECOND] < 0 || a[SECOND] > 59 ? SECOND : a[MILLISECOND] < 0 || a[MILLISECOND] > 999 ? MILLISECOND : -1; - configFromRFC2822(config); - if (config._isValid === false) { - delete config._isValid; - } else { - return; + if (getParsingFlags(m)._overflowDayOfYear && (overflow < YEAR || overflow > DATE)) { + overflow = DATE; + } + if (getParsingFlags(m)._overflowWeeks && overflow === -1) { + overflow = WEEK; + } + if (getParsingFlags(m)._overflowWeekday && overflow === -1) { + overflow = WEEKDAY; + } + + getParsingFlags(m).overflow = overflow; } - // Final attempt, use Input Fallback - hooks.createFromInputFallback(config); + return m; } - hooks.createFromInputFallback = deprecate('value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), ' + 'which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are ' + 'discouraged and will be removed in an upcoming major release. Please refer to ' + 'http://momentjs.com/guides/#/warnings/js-date/ for more info.', function (config) { - config._d = new Date(config._i + (config._useUTC ? ' UTC' : '')); - }); - // Pick the first defined of two or three arguments. function defaults(a, b, c) { if (a != null) { @@ -11084,6 +11177,7 @@ date, input = [], currentDate, + expectedWeekday, yearToUse; if (config._d) { @@ -11131,6 +11225,8 @@ } config._d = (config._useUTC ? createUTCDate : createDate).apply(null, input); + expectedWeekday = config._useUTC ? config._d.getUTCDay() : config._d.getDay(); + // Apply timezone offset from input. The actual utcOffset can be changed // with parseZone. if (config._tzm != null) { @@ -11140,6 +11236,11 @@ if (config._nextDay) { config._a[HOUR] = 24; } + + // check for mismatching day of week + if (config._w && typeof config._w.d !== 'undefined' && config._w.d !== expectedWeekday) { + getParsingFlags(config).weekdayMismatch = true; + } } function dayOfYearFromWeekInfo(config) { @@ -11199,6 +11300,200 @@ } } + // iso 8601 regex + // 0000-00-00 0000-W00 or 0000-W00-0 + T + 00 or 00:00 or 00:00:00 or 00:00:00.000 + +00:00 or +0000 or +00) + var extendedIsoRegex = /^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/; + var basicIsoRegex = /^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/; + + var tzRegex = /Z|[+-]\d\d(?::?\d\d)?/; + + var isoDates = [['YYYYYY-MM-DD', /[+-]\d{6}-\d\d-\d\d/], ['YYYY-MM-DD', /\d{4}-\d\d-\d\d/], ['GGGG-[W]WW-E', /\d{4}-W\d\d-\d/], ['GGGG-[W]WW', /\d{4}-W\d\d/, false], ['YYYY-DDD', /\d{4}-\d{3}/], ['YYYY-MM', /\d{4}-\d\d/, false], ['YYYYYYMMDD', /[+-]\d{10}/], ['YYYYMMDD', /\d{8}/], + // YYYYMM is NOT allowed by the standard + ['GGGG[W]WWE', /\d{4}W\d{3}/], ['GGGG[W]WW', /\d{4}W\d{2}/, false], ['YYYYDDD', /\d{7}/]]; + + // iso time formats and regexes + var isoTimes = [['HH:mm:ss.SSSS', /\d\d:\d\d:\d\d\.\d+/], ['HH:mm:ss,SSSS', /\d\d:\d\d:\d\d,\d+/], ['HH:mm:ss', /\d\d:\d\d:\d\d/], ['HH:mm', /\d\d:\d\d/], ['HHmmss.SSSS', /\d\d\d\d\d\d\.\d+/], ['HHmmss,SSSS', /\d\d\d\d\d\d,\d+/], ['HHmmss', /\d\d\d\d\d\d/], ['HHmm', /\d\d\d\d/], ['HH', /\d\d/]]; + + var aspNetJsonRegex = /^\/?Date\((\-?\d+)/i; + + // date from iso format + function configFromISO(config) { + var i, + l, + string = config._i, + match = extendedIsoRegex.exec(string) || basicIsoRegex.exec(string), + allowTime, + dateFormat, + timeFormat, + tzFormat; + + if (match) { + getParsingFlags(config).iso = true; + + for (i = 0, l = isoDates.length; i < l; i++) { + if (isoDates[i][1].exec(match[1])) { + dateFormat = isoDates[i][0]; + allowTime = isoDates[i][2] !== false; + break; + } + } + if (dateFormat == null) { + config._isValid = false; + return; + } + if (match[3]) { + for (i = 0, l = isoTimes.length; i < l; i++) { + if (isoTimes[i][1].exec(match[3])) { + // match[2] should be 'T' or space + timeFormat = (match[2] || ' ') + isoTimes[i][0]; + break; + } + } + if (timeFormat == null) { + config._isValid = false; + return; + } + } + if (!allowTime && timeFormat != null) { + config._isValid = false; + return; + } + if (match[4]) { + if (tzRegex.exec(match[4])) { + tzFormat = 'Z'; + } else { + config._isValid = false; + return; + } + } + config._f = dateFormat + (timeFormat || '') + (tzFormat || ''); + configFromStringAndFormat(config); + } else { + config._isValid = false; + } + } + + // RFC 2822 regex: For details see https://tools.ietf.org/html/rfc2822#section-3.3 + var rfc2822 = /^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/; + + function extractFromRFC2822Strings(yearStr, monthStr, dayStr, hourStr, minuteStr, secondStr) { + var result = [untruncateYear(yearStr), defaultLocaleMonthsShort.indexOf(monthStr), parseInt(dayStr, 10), parseInt(hourStr, 10), parseInt(minuteStr, 10)]; + + if (secondStr) { + result.push(parseInt(secondStr, 10)); + } + + return result; + } + + function untruncateYear(yearStr) { + var year = parseInt(yearStr, 10); + if (year <= 49) { + return 2000 + year; + } else if (year <= 999) { + return 1900 + year; + } + return year; + } + + function preprocessRFC2822(s) { + // Remove comments and folding whitespace and replace multiple-spaces with a single space + return s.replace(/\([^)]*\)|[\n\t]/g, ' ').replace(/(\s\s+)/g, ' ').trim(); + } + + function checkWeekday(weekdayStr, parsedInput, config) { + if (weekdayStr) { + // TODO: Replace the vanilla JS Date object with an indepentent day-of-week check. + var weekdayProvided = defaultLocaleWeekdaysShort.indexOf(weekdayStr), + weekdayActual = new Date(parsedInput[0], parsedInput[1], parsedInput[2]).getDay(); + if (weekdayProvided !== weekdayActual) { + getParsingFlags(config).weekdayMismatch = true; + config._isValid = false; + return false; + } + } + return true; + } + + var obsOffsets = { + UT: 0, + GMT: 0, + EDT: -4 * 60, + EST: -5 * 60, + CDT: -5 * 60, + CST: -6 * 60, + MDT: -6 * 60, + MST: -7 * 60, + PDT: -7 * 60, + PST: -8 * 60 + }; + + function calculateOffset(obsOffset, militaryOffset, numOffset) { + if (obsOffset) { + return obsOffsets[obsOffset]; + } else if (militaryOffset) { + // the only allowed military tz is Z + return 0; + } else { + var hm = parseInt(numOffset, 10); + var m = hm % 100, + h = (hm - m) / 100; + return h * 60 + m; + } + } + + // date and time from ref 2822 format + function configFromRFC2822(config) { + var match = rfc2822.exec(preprocessRFC2822(config._i)); + if (match) { + var parsedArray = extractFromRFC2822Strings(match[4], match[3], match[2], match[5], match[6], match[7]); + if (!checkWeekday(match[1], parsedArray, config)) { + return; + } + + config._a = parsedArray; + config._tzm = calculateOffset(match[8], match[9], match[10]); + + config._d = createUTCDate.apply(null, config._a); + config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm); + + getParsingFlags(config).rfc2822 = true; + } else { + config._isValid = false; + } + } + + // date from iso format or fallback + function configFromString(config) { + var matched = aspNetJsonRegex.exec(config._i); + + if (matched !== null) { + config._d = new Date(+matched[1]); + return; + } + + configFromISO(config); + if (config._isValid === false) { + delete config._isValid; + } else { + return; + } + + configFromRFC2822(config); + if (config._isValid === false) { + delete config._isValid; + } else { + return; + } + + // Final attempt, use Input Fallback + hooks.createFromInputFallback(config); + } + + hooks.createFromInputFallback = deprecate('value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), ' + 'which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are ' + 'discouraged and will be removed in an upcoming major release. Please refer to ' + 'http://momentjs.com/guides/#/warnings/js-date/ for more info.', function (config) { + config._d = new Date(config._i + (config._useUTC ? ' UTC' : '')); + }); + // constant that refers to the ISO standard hooks.ISO_8601 = function () {}; @@ -11510,7 +11805,7 @@ function isDurationValid(m) { for (var key in m) { - if (!(ordering.indexOf(key) !== -1 && (m[key] == null || !isNaN(m[key])))) { + if (!(indexOf.call(ordering, key) !== -1 && (m[key] == null || !isNaN(m[key])))) { return false; } } @@ -11559,7 +11854,7 @@ // Because of dateAddRemove treats 24 hours as different from a // day when working around DST, we need to store them separately this._days = +days + weeks * 7; - // It is impossible translate months into days without knowing + // It is impossible to translate months into days without knowing // which months you are are talking about, so we have to store // it separately. this._months = +months + quarters * 3 + years * 12; @@ -11797,12 +12092,12 @@ } // ASP.NET json date format regex - var aspNetRegex = /^(\-)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)(\.\d*)?)?$/; + var aspNetRegex = /^(\-|\+)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)(\.\d*)?)?$/; // from http://docs.closure-library.googlecode.com/git/closure_goog_date_date.js.source.html // somewhat more in line with 4.4.3.2 2004 spec, but allows decimal anywhere // and further modified to allow for strings containing both week and day - var isoRegex = /^(-)?P(?:(-?[0-9,.]*)Y)?(?:(-?[0-9,.]*)M)?(?:(-?[0-9,.]*)W)?(?:(-?[0-9,.]*)D)?(?:T(?:(-?[0-9,.]*)H)?(?:(-?[0-9,.]*)M)?(?:(-?[0-9,.]*)S)?)?$/; + var isoRegex = /^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/; function createDuration(input, key) { var duration = input, @@ -11837,7 +12132,7 @@ ms: toInt(absRound(match[MILLISECOND] * 1000)) * sign // the millisecond decimal point is included in the match }; } else if (!!(match = isoRegex.exec(input))) { - sign = match[1] === '-' ? -1 : 1; + sign = match[1] === '-' ? -1 : match[1] === '+' ? 1 : 1; duration = { y: parseIso(match[2], sign), M: parseIso(match[3], sign), @@ -11939,14 +12234,14 @@ updateOffset = updateOffset == null ? true : updateOffset; - if (milliseconds) { - mom._d.setTime(mom._d.valueOf() + milliseconds * isAdding); + if (months) { + setMonth(mom, get(mom, 'Month') + months * isAdding); } if (days) { set$1(mom, 'Date', get(mom, 'Date') + days * isAdding); } - if (months) { - setMonth(mom, get(mom, 'Month') + months * isAdding); + if (milliseconds) { + mom._d.setTime(mom._d.valueOf() + milliseconds * isAdding); } if (updateOffset) { hooks.updateOffset(mom, days || months); @@ -12048,22 +12343,27 @@ units = normalizeUnits(units); - if (units === 'year' || units === 'month' || units === 'quarter') { - output = monthDiff(this, that); - if (units === 'quarter') { - output = output / 3; - } else if (units === 'year') { - output = output / 12; - } - } else { - delta = this - that; - output = units === 'second' ? delta / 1e3 : // 1000 - units === 'minute' ? delta / 6e4 : // 1000 * 60 - units === 'hour' ? delta / 36e5 : // 1000 * 60 * 60 - units === 'day' ? (delta - zoneDelta) / 864e5 : // 1000 * 60 * 60 * 24, negate dst - units === 'week' ? (delta - zoneDelta) / 6048e5 : // 1000 * 60 * 60 * 24 * 7, negate dst - delta; + switch (units) { + case 'year': + output = monthDiff(this, that) / 12;break; + case 'month': + output = monthDiff(this, that);break; + case 'quarter': + output = monthDiff(this, that) / 3;break; + case 'second': + output = (this - that) / 1e3;break; // 1000 + case 'minute': + output = (this - that) / 6e4;break; // 1000 * 60 + case 'hour': + output = (this - that) / 36e5;break; // 1000 * 60 * 60 + case 'day': + output = (this - that - zoneDelta) / 864e5;break; // 1000 * 60 * 60 * 24, negate dst + case 'week': + output = (this - that - zoneDelta) / 6048e5;break; // 1000 * 60 * 60 * 24 * 7, negate dst + default: + output = this - that; } + return asFloat ? output : absFloor(output); } @@ -12097,19 +12397,24 @@ return this.clone().locale('en').format('ddd MMM DD YYYY HH:mm:ss [GMT]ZZ'); } - function toISOString() { + function toISOString(keepOffset) { if (!this.isValid()) { return null; } - var m = this.clone().utc(); + var utc = keepOffset !== true; + var m = utc ? this.clone().utc() : this; if (m.year() < 0 || m.year() > 9999) { - return formatMoment(m, 'YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]'); + return formatMoment(m, utc ? 'YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]' : 'YYYYYY-MM-DD[T]HH:mm:ss.SSSZ'); } if (isFunction(Date.prototype.toISOString)) { // native implementation is ~50x faster, use it when we can - return this.toDate().toISOString(); + if (utc) { + return this.toDate().toISOString(); + } else { + return new Date(this._d.valueOf()).toISOString().replace('Z', formatMoment(m, 'Z')); + } } - return formatMoment(m, 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]'); + return formatMoment(m, utc ? 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]' : 'YYYY-MM-DD[T]HH:mm:ss.SSSZ'); } /** @@ -12449,7 +12754,7 @@ addParseToken(['D', 'DD'], DATE); addParseToken('Do', function (input, array) { - array[DATE] = toInt(input.match(match1to2)[0], 10); + array[DATE] = toInt(input.match(match1to2)[0]); }); // MOMENTS @@ -13024,6 +13329,10 @@ var asMonths = makeAs('M'); var asYears = makeAs('y'); + function clone$1() { + return createDuration(this); + } + function get$2(units) { units = normalizeUnits(units); return this.isValid() ? this[units + 's']() : NaN; @@ -13123,6 +13432,10 @@ var abs$1 = Math.abs; + function sign(x) { + return (x > 0) - (x < 0) || +x; + } + function toISOString$1() { // for ISO strings we do not use the normal bubbling rules: // * milliseconds bubble up until they become hours @@ -13156,7 +13469,7 @@ var D = days; var h = hours; var m = minutes; - var s = seconds; + var s = seconds ? seconds.toFixed(3).replace(/\.?0+$/, '') : ''; var total = this.asSeconds(); if (!total) { @@ -13165,7 +13478,12 @@ return 'P0D'; } - return (total < 0 ? '-' : '') + 'P' + (Y ? Y + 'Y' : '') + (M ? M + 'M' : '') + (D ? D + 'D' : '') + (h || m || s ? 'T' : '') + (h ? h + 'H' : '') + (m ? m + 'M' : '') + (s ? s + 'S' : ''); + var totalSign = total < 0 ? '-' : ''; + var ymSign = sign(this._months) !== sign(total) ? '-' : ''; + var daysSign = sign(this._days) !== sign(total) ? '-' : ''; + var hmsSign = sign(this._milliseconds) !== sign(total) ? '-' : ''; + + return totalSign + 'P' + (Y ? ymSign + Y + 'Y' : '') + (M ? ymSign + M + 'M' : '') + (D ? daysSign + D + 'D' : '') + (h || m || s ? 'T' : '') + (h ? hmsSign + h + 'H' : '') + (m ? hmsSign + m + 'M' : '') + (s ? hmsSign + s + 'S' : ''); } var proto$2 = Duration.prototype; @@ -13185,6 +13503,7 @@ proto$2.asYears = asYears; proto$2.valueOf = valueOf$1; proto$2._bubble = bubble; + proto$2.clone = clone$1; proto$2.get = get$2; proto$2.milliseconds = milliseconds; proto$2.seconds = seconds; @@ -13226,7 +13545,7 @@ // Side effect imports - hooks.version = '2.18.0'; + hooks.version = '2.20.1'; setHookCallback(createLocal); @@ -13258,13 +13577,26 @@ hooks.calendarFormat = getCalendarFormat; hooks.prototype = proto; + // currently HTML5 input type only supports 24-hour formats + hooks.HTML5_FMT = { + DATETIME_LOCAL: 'YYYY-MM-DDTHH:mm', // + DATETIME_LOCAL_SECONDS: 'YYYY-MM-DDTHH:mm:ss', // + DATETIME_LOCAL_MS: 'YYYY-MM-DDTHH:mm:ss.SSS', // + DATE: 'YYYY-MM-DD', // + TIME: 'HH:mm', // + TIME_SECONDS: 'HH:mm:ss', // + TIME_MS: 'HH:mm:ss.SSS', // + WEEK: 'YYYY-[W]WW', // + MONTH: 'YYYY-MM' // + }; + return hooks; }); /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(44)(module))) -/***/ }, +/***/ }), /* 44 */ -/***/ function(module, exports) { +/***/ (function(module, exports) { "use strict"; @@ -13279,9 +13611,9 @@ return module; }; -/***/ }, +/***/ }), /* 45 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { var map = { "./af": 46, @@ -13306,214 +13638,222 @@ "./be.js": 55, "./bg": 56, "./bg.js": 56, - "./bn": 57, - "./bn.js": 57, - "./bo": 58, - "./bo.js": 58, - "./br": 59, - "./br.js": 59, - "./bs": 60, - "./bs.js": 60, - "./ca": 61, - "./ca.js": 61, - "./cs": 62, - "./cs.js": 62, - "./cv": 63, - "./cv.js": 63, - "./cy": 64, - "./cy.js": 64, - "./da": 65, - "./da.js": 65, - "./de": 66, - "./de-at": 67, - "./de-at.js": 67, - "./de-ch": 68, - "./de-ch.js": 68, - "./de.js": 66, - "./dv": 69, - "./dv.js": 69, - "./el": 70, - "./el.js": 70, - "./en-au": 71, - "./en-au.js": 71, - "./en-ca": 72, - "./en-ca.js": 72, - "./en-gb": 73, - "./en-gb.js": 73, - "./en-ie": 74, - "./en-ie.js": 74, - "./en-nz": 75, - "./en-nz.js": 75, - "./eo": 76, - "./eo.js": 76, - "./es": 77, - "./es-do": 78, - "./es-do.js": 78, - "./es.js": 77, - "./et": 79, - "./et.js": 79, - "./eu": 80, - "./eu.js": 80, - "./fa": 81, - "./fa.js": 81, - "./fi": 82, - "./fi.js": 82, - "./fo": 83, - "./fo.js": 83, - "./fr": 84, - "./fr-ca": 85, - "./fr-ca.js": 85, - "./fr-ch": 86, - "./fr-ch.js": 86, - "./fr.js": 84, - "./fy": 87, - "./fy.js": 87, - "./gd": 88, - "./gd.js": 88, - "./gl": 89, - "./gl.js": 89, - "./gom-latn": 90, - "./gom-latn.js": 90, - "./he": 91, - "./he.js": 91, - "./hi": 92, - "./hi.js": 92, - "./hr": 93, - "./hr.js": 93, - "./hu": 94, - "./hu.js": 94, - "./hy-am": 95, - "./hy-am.js": 95, - "./id": 96, - "./id.js": 96, - "./is": 97, - "./is.js": 97, - "./it": 98, - "./it.js": 98, - "./ja": 99, - "./ja.js": 99, - "./jv": 100, - "./jv.js": 100, - "./ka": 101, - "./ka.js": 101, - "./kk": 102, - "./kk.js": 102, - "./km": 103, - "./km.js": 103, - "./kn": 104, - "./kn.js": 104, - "./ko": 105, - "./ko.js": 105, - "./ky": 106, - "./ky.js": 106, - "./lb": 107, - "./lb.js": 107, - "./lo": 108, - "./lo.js": 108, - "./lt": 109, - "./lt.js": 109, - "./lv": 110, - "./lv.js": 110, - "./me": 111, - "./me.js": 111, - "./mi": 112, - "./mi.js": 112, - "./mk": 113, - "./mk.js": 113, - "./ml": 114, - "./ml.js": 114, - "./mr": 115, - "./mr.js": 115, - "./ms": 116, - "./ms-my": 117, - "./ms-my.js": 117, - "./ms.js": 116, - "./my": 118, - "./my.js": 118, - "./nb": 119, - "./nb.js": 119, - "./ne": 120, - "./ne.js": 120, - "./nl": 121, - "./nl-be": 122, - "./nl-be.js": 122, - "./nl.js": 121, - "./nn": 123, - "./nn.js": 123, - "./pa-in": 124, - "./pa-in.js": 124, - "./pl": 125, - "./pl.js": 125, - "./pt": 126, - "./pt-br": 127, - "./pt-br.js": 127, - "./pt.js": 126, - "./ro": 128, - "./ro.js": 128, - "./ru": 129, - "./ru.js": 129, - "./sd": 130, - "./sd.js": 130, - "./se": 131, - "./se.js": 131, - "./si": 132, - "./si.js": 132, - "./sk": 133, - "./sk.js": 133, - "./sl": 134, - "./sl.js": 134, - "./sq": 135, - "./sq.js": 135, - "./sr": 136, - "./sr-cyrl": 137, - "./sr-cyrl.js": 137, - "./sr.js": 136, - "./ss": 138, - "./ss.js": 138, - "./sv": 139, - "./sv.js": 139, - "./sw": 140, - "./sw.js": 140, - "./ta": 141, - "./ta.js": 141, - "./te": 142, - "./te.js": 142, - "./tet": 143, - "./tet.js": 143, - "./th": 144, - "./th.js": 144, - "./tl-ph": 145, - "./tl-ph.js": 145, - "./tlh": 146, - "./tlh.js": 146, - "./tr": 147, - "./tr.js": 147, - "./tzl": 148, - "./tzl.js": 148, - "./tzm": 149, - "./tzm-latn": 150, - "./tzm-latn.js": 150, - "./tzm.js": 149, - "./uk": 151, - "./uk.js": 151, - "./ur": 152, - "./ur.js": 152, - "./uz": 153, - "./uz-latn": 154, - "./uz-latn.js": 154, - "./uz.js": 153, - "./vi": 155, - "./vi.js": 155, - "./x-pseudo": 156, - "./x-pseudo.js": 156, - "./yo": 157, - "./yo.js": 157, - "./zh-cn": 158, - "./zh-cn.js": 158, - "./zh-hk": 159, - "./zh-hk.js": 159, - "./zh-tw": 160, - "./zh-tw.js": 160 + "./bm": 57, + "./bm.js": 57, + "./bn": 58, + "./bn.js": 58, + "./bo": 59, + "./bo.js": 59, + "./br": 60, + "./br.js": 60, + "./bs": 61, + "./bs.js": 61, + "./ca": 62, + "./ca.js": 62, + "./cs": 63, + "./cs.js": 63, + "./cv": 64, + "./cv.js": 64, + "./cy": 65, + "./cy.js": 65, + "./da": 66, + "./da.js": 66, + "./de": 67, + "./de-at": 68, + "./de-at.js": 68, + "./de-ch": 69, + "./de-ch.js": 69, + "./de.js": 67, + "./dv": 70, + "./dv.js": 70, + "./el": 71, + "./el.js": 71, + "./en-au": 72, + "./en-au.js": 72, + "./en-ca": 73, + "./en-ca.js": 73, + "./en-gb": 74, + "./en-gb.js": 74, + "./en-ie": 75, + "./en-ie.js": 75, + "./en-nz": 76, + "./en-nz.js": 76, + "./eo": 77, + "./eo.js": 77, + "./es": 78, + "./es-do": 79, + "./es-do.js": 79, + "./es-us": 80, + "./es-us.js": 80, + "./es.js": 78, + "./et": 81, + "./et.js": 81, + "./eu": 82, + "./eu.js": 82, + "./fa": 83, + "./fa.js": 83, + "./fi": 84, + "./fi.js": 84, + "./fo": 85, + "./fo.js": 85, + "./fr": 86, + "./fr-ca": 87, + "./fr-ca.js": 87, + "./fr-ch": 88, + "./fr-ch.js": 88, + "./fr.js": 86, + "./fy": 89, + "./fy.js": 89, + "./gd": 90, + "./gd.js": 90, + "./gl": 91, + "./gl.js": 91, + "./gom-latn": 92, + "./gom-latn.js": 92, + "./gu": 93, + "./gu.js": 93, + "./he": 94, + "./he.js": 94, + "./hi": 95, + "./hi.js": 95, + "./hr": 96, + "./hr.js": 96, + "./hu": 97, + "./hu.js": 97, + "./hy-am": 98, + "./hy-am.js": 98, + "./id": 99, + "./id.js": 99, + "./is": 100, + "./is.js": 100, + "./it": 101, + "./it.js": 101, + "./ja": 102, + "./ja.js": 102, + "./jv": 103, + "./jv.js": 103, + "./ka": 104, + "./ka.js": 104, + "./kk": 105, + "./kk.js": 105, + "./km": 106, + "./km.js": 106, + "./kn": 107, + "./kn.js": 107, + "./ko": 108, + "./ko.js": 108, + "./ky": 109, + "./ky.js": 109, + "./lb": 110, + "./lb.js": 110, + "./lo": 111, + "./lo.js": 111, + "./lt": 112, + "./lt.js": 112, + "./lv": 113, + "./lv.js": 113, + "./me": 114, + "./me.js": 114, + "./mi": 115, + "./mi.js": 115, + "./mk": 116, + "./mk.js": 116, + "./ml": 117, + "./ml.js": 117, + "./mr": 118, + "./mr.js": 118, + "./ms": 119, + "./ms-my": 120, + "./ms-my.js": 120, + "./ms.js": 119, + "./mt": 121, + "./mt.js": 121, + "./my": 122, + "./my.js": 122, + "./nb": 123, + "./nb.js": 123, + "./ne": 124, + "./ne.js": 124, + "./nl": 125, + "./nl-be": 126, + "./nl-be.js": 126, + "./nl.js": 125, + "./nn": 127, + "./nn.js": 127, + "./pa-in": 128, + "./pa-in.js": 128, + "./pl": 129, + "./pl.js": 129, + "./pt": 130, + "./pt-br": 131, + "./pt-br.js": 131, + "./pt.js": 130, + "./ro": 132, + "./ro.js": 132, + "./ru": 133, + "./ru.js": 133, + "./sd": 134, + "./sd.js": 134, + "./se": 135, + "./se.js": 135, + "./si": 136, + "./si.js": 136, + "./sk": 137, + "./sk.js": 137, + "./sl": 138, + "./sl.js": 138, + "./sq": 139, + "./sq.js": 139, + "./sr": 140, + "./sr-cyrl": 141, + "./sr-cyrl.js": 141, + "./sr.js": 140, + "./ss": 142, + "./ss.js": 142, + "./sv": 143, + "./sv.js": 143, + "./sw": 144, + "./sw.js": 144, + "./ta": 145, + "./ta.js": 145, + "./te": 146, + "./te.js": 146, + "./tet": 147, + "./tet.js": 147, + "./th": 148, + "./th.js": 148, + "./tl-ph": 149, + "./tl-ph.js": 149, + "./tlh": 150, + "./tlh.js": 150, + "./tr": 151, + "./tr.js": 151, + "./tzl": 152, + "./tzl.js": 152, + "./tzm": 153, + "./tzm-latn": 154, + "./tzm-latn.js": 154, + "./tzm.js": 153, + "./uk": 155, + "./uk.js": 155, + "./ur": 156, + "./ur.js": 156, + "./uz": 157, + "./uz-latn": 158, + "./uz-latn.js": 158, + "./uz.js": 157, + "./vi": 159, + "./vi.js": 159, + "./x-pseudo": 160, + "./x-pseudo.js": 160, + "./yo": 161, + "./yo.js": 161, + "./zh-cn": 162, + "./zh-cn.js": 162, + "./zh-hk": 163, + "./zh-hk.js": 163, + "./zh-tw": 164, + "./zh-tw.js": 164 }; function webpackContext(req) { return __webpack_require__(webpackContextResolve(req)); @@ -13529,9 +13869,9 @@ webpackContext.id = 45; -/***/ }, +/***/ }), /* 46 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -13584,6 +13924,7 @@ future: 'oor %s', past: '%s gelede', s: '\'n paar sekondes', + ss: '%d sekondes', m: '\'n minuut', mm: '%d minute', h: '\'n uur', @@ -13608,9 +13949,9 @@ return af; }); -/***/ }, +/***/ }), /* 47 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -13672,7 +14013,7 @@ return str.replace(/%d/i, number); }; }; - var months = ['كانون الثاني يناير', 'شباط فبراير', 'آذار مارس', 'نيسان أبريل', 'أيار مايو', 'حزيران يونيو', 'تموز يوليو', 'آب أغسطس', 'أيلول سبتمبر', 'تشرين الأول أكتوبر', 'تشرين الثاني نوفمبر', 'كانون الأول ديسمبر']; + var months = ['يناير', 'فبراير', 'مارس', 'أبريل', 'مايو', 'يونيو', 'يوليو', 'أغسطس', 'سبتمبر', 'أكتوبر', 'نوفمبر', 'ديسمبر']; var ar = moment.defineLocale('ar', { months: months, @@ -13712,6 +14053,7 @@ future: 'بعد %s', past: 'منذ %s', s: pluralize('s'), + ss: pluralize('s'), m: pluralize('m'), mm: pluralize('m'), h: pluralize('h'), @@ -13724,7 +14066,7 @@ yy: pluralize('y') }, preparse: function preparse(string) { - return string.replace(/\u200f/g, '').replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) { + return string.replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) { return numberMap[match]; }).replace(/،/g, ','); }, @@ -13742,9 +14084,9 @@ return ar; }); -/***/ }, +/***/ }), /* 48 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -13786,6 +14128,7 @@ future: 'في %s', past: 'منذ %s', s: 'ثوان', + ss: '%d ثانية', m: 'دقيقة', mm: '%d دقائق', h: 'ساعة', @@ -13806,9 +14149,9 @@ return arDz; }); -/***/ }, +/***/ }), /* 49 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -13850,6 +14193,7 @@ future: 'في %s', past: 'منذ %s', s: 'ثوان', + ss: '%d ثانية', m: 'دقيقة', mm: '%d دقائق', h: 'ساعة', @@ -13870,9 +14214,9 @@ return arKw; }); -/***/ }, +/***/ }), /* 50 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -13960,6 +14304,7 @@ future: 'بعد %s', past: 'منذ %s', s: pluralize('s'), + ss: pluralize('s'), m: pluralize('m'), mm: pluralize('m'), h: pluralize('h'), @@ -13972,7 +14317,7 @@ yy: pluralize('y') }, preparse: function preparse(string) { - return string.replace(/\u200f/g, '').replace(/،/g, ','); + return string.replace(/،/g, ','); }, postformat: function postformat(string) { return string.replace(/\d/g, function (match) { @@ -13988,9 +14333,9 @@ return arLy; }); -/***/ }, +/***/ }), /* 51 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -14033,6 +14378,7 @@ future: 'في %s', past: 'منذ %s', s: 'ثوان', + ss: '%d ثانية', m: 'دقيقة', mm: '%d دقائق', h: 'ساعة', @@ -14053,9 +14399,9 @@ return arMa; }); -/***/ }, +/***/ }), /* 52 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -14133,6 +14479,7 @@ future: 'في %s', past: 'منذ %s', s: 'ثوان', + ss: '%d ثانية', m: 'دقيقة', mm: '%d دقائق', h: 'ساعة', @@ -14163,9 +14510,9 @@ return arSa; }); -/***/ }, +/***/ }), /* 53 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -14207,6 +14554,7 @@ future: 'في %s', past: 'منذ %s', s: 'ثوان', + ss: '%d ثانية', m: 'دقيقة', mm: '%d دقائق', h: 'ساعة', @@ -14227,9 +14575,9 @@ return arTn; }); -/***/ }, +/***/ }), /* 54 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -14292,6 +14640,7 @@ future: '%s sonra', past: '%s əvvəl', s: 'birneçə saniyyə', + ss: '%d saniyə', m: 'bir dəqiqə', mm: '%d dəqiqə', h: 'bir saat', @@ -14339,9 +14688,9 @@ return az; }); -/***/ }, +/***/ }), /* 55 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -14364,6 +14713,7 @@ } function relativeTimeWithPlural(number, withoutSuffix, key) { var format = { + 'ss': withoutSuffix ? 'секунда_секунды_секунд' : 'секунду_секунды_секунд', 'mm': withoutSuffix ? 'хвіліна_хвіліны_хвілін' : 'хвіліну_хвіліны_хвілін', 'hh': withoutSuffix ? 'гадзіна_гадзіны_гадзін' : 'гадзіну_гадзіны_гадзін', 'dd': 'дзень_дні_дзён', @@ -14477,9 +14827,9 @@ return be; }); -/***/ }, +/***/ }), /* 56 */ -/***/ function(module, exports, __webpack_require__) { +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -14532,6 +14882,7 @@ future: 'след %s', past: 'преди %s', s: 'няколко секунди', + ss: '%d секунди', m: 'минута', mm: '%d минути', h: 'час', @@ -14565,16 +14916,82 @@ }, week: { dow: 1, // Monday is the first day of the week. - doy: 7 // The week that contains Jan 1st is the first week of the year. + doy: 7 // The week that contains Jan 1st is the first week of the year. + } + }); + + return bg; + }); + +/***/ }), +/* 57 */ +/***/ (function(module, exports, __webpack_require__) { + + var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; + + var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; + + //! moment.js locale configuration + //! locale : Bambara [bm] + //! author : Estelle Comment : https://github.com/estellecomment + + ;(function (global, factory) { + ( false ? 'undefined' : _typeof(exports)) === 'object' && typeof module !== 'undefined' && "function" === 'function' ? factory(__webpack_require__(43)) : true ? !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(43)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)) : factory(global.moment); + })(undefined, function (moment) { + 'use strict'; + + // Language contact person : Abdoufata Kane : https://github.com/abdoufata + + var bm = moment.defineLocale('bm', { + months: 'Zanwuyekalo_Fewuruyekalo_Marisikalo_Awirilikalo_Mɛkalo_Zuwɛnkalo_Zuluyekalo_Utikalo_Sɛtanburukalo_ɔkutɔburukalo_Nowanburukalo_Desanburukalo'.split('_'), + monthsShort: 'Zan_Few_Mar_Awi_Mɛ_Zuw_Zul_Uti_Sɛt_ɔku_Now_Des'.split('_'), + weekdays: 'Kari_Ntɛnɛn_Tarata_Araba_Alamisa_Juma_Sibiri'.split('_'), + weekdaysShort: 'Kar_Ntɛ_Tar_Ara_Ala_Jum_Sib'.split('_'), + weekdaysMin: 'Ka_Nt_Ta_Ar_Al_Ju_Si'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'MMMM [tile] D [san] YYYY', + LLL: 'MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm', + LLLL: 'dddd MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm' + }, + calendar: { + sameDay: '[Bi lɛrɛ] LT', + nextDay: '[Sini lɛrɛ] LT', + nextWeek: 'dddd [don lɛrɛ] LT', + lastDay: '[Kunu lɛrɛ] LT', + lastWeek: 'dddd [tɛmɛnen lɛrɛ] LT', + sameElse: 'L' + }, + relativeTime: { + future: '%s kɔnɔ', + past: 'a bɛ %s bɔ', + s: 'sanga dama dama', + ss: 'sekondi %d', + m: 'miniti kelen', + mm: 'miniti %d', + h: 'lɛrɛ kelen', + hh: 'lɛrɛ %d', + d: 'tile kelen', + dd: 'tile %d', + M: 'kalo kelen', + MM: 'kalo %d', + y: 'san kelen', + yy: 'san %d' + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 4 // The week that contains Jan 4th is the first week of the year. } }); - return bg; + return bm; }); -/***/ }, -/* 57 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 58 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -14640,6 +15057,7 @@ future: '%s পরে', past: '%s আগে', s: 'কয়েক সেকেন্ড', + ss: '%d সেকেন্ড', m: 'এক মিনিট', mm: '%d মিনিট', h: 'এক ঘন্টা', @@ -14694,9 +15112,9 @@ return bn; }); -/***/ }, -/* 58 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 59 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -14762,6 +15180,7 @@ future: '%s ལ་', past: '%s སྔན་ལ', s: 'ལམ་སང', + ss: '%d སྐར་ཆ།', m: 'སྐར་མ་གཅིག', mm: '%d སྐར་མ', h: 'ཆུ་ཚོད་གཅིག', @@ -14816,9 +15235,9 @@ return bo; }); -/***/ }, -/* 59 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 60 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -14904,6 +15323,7 @@ future: 'a-benn %s', past: '%s \'zo', s: 'un nebeud segondennoù', + ss: '%d eilenn', m: 'ur vunutenn', mm: relativeTimeWithMutation, h: 'un eur', @@ -14929,9 +15349,9 @@ return br; }); -/***/ }, -/* 60 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 61 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -14950,6 +15370,15 @@ function translate(number, withoutSuffix, key) { var result = number + ' '; switch (key) { + case 'ss': + if (number === 1) { + result += 'sekunda'; + } else if (number === 2 || number === 3 || number === 4) { + result += 'sekunde'; + } else { + result += 'sekundi'; + } + return result; case 'm': return withoutSuffix ? 'jedna minuta' : 'jedne minute'; case 'mm': @@ -15055,6 +15484,7 @@ future: 'za %s', past: 'prije %s', s: 'par sekundi', + ss: translate, m: translate, mm: translate, h: translate, @@ -15077,9 +15507,9 @@ return bs; }); -/***/ }, -/* 61 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 62 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -15104,17 +15534,17 @@ monthsParseExact: true, weekdays: 'diumenge_dilluns_dimarts_dimecres_dijous_divendres_dissabte'.split('_'), weekdaysShort: 'dg._dl._dt._dc._dj._dv._ds.'.split('_'), - weekdaysMin: 'Dg_Dl_Dt_Dc_Dj_Dv_Ds'.split('_'), + weekdaysMin: 'dg_dl_dt_dc_dj_dv_ds'.split('_'), weekdaysParseExact: true, longDateFormat: { LT: 'H:mm', LTS: 'H:mm:ss', L: 'DD/MM/YYYY', - LL: '[el] D MMMM [de] YYYY', + LL: 'D MMMM [de] YYYY', ll: 'D MMM YYYY', - LLL: '[el] D MMMM [de] YYYY [a les] H:mm', + LLL: 'D MMMM [de] YYYY [a les] H:mm', lll: 'D MMM YYYY, H:mm', - LLLL: '[el] dddd D MMMM [de] YYYY [a les] H:mm', + LLLL: 'dddd D MMMM [de] YYYY [a les] H:mm', llll: 'ddd D MMM YYYY, H:mm' }, calendar: { @@ -15139,6 +15569,7 @@ future: 'd\'aquí %s', past: 'fa %s', s: 'uns segons', + ss: '%d segons', m: 'un minut', mm: '%d minuts', h: 'una hora', @@ -15167,9 +15598,9 @@ return ca; }); -/***/ }, -/* 62 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 63 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -15195,6 +15626,14 @@ case 's': // a few seconds / in a few seconds / a few seconds ago return withoutSuffix || isFuture ? 'pár sekund' : 'pár sekundami'; + case 'ss': + // 9 seconds / in 9 seconds / 9 seconds ago + if (withoutSuffix || isFuture) { + return result + (plural(number) ? 'sekundy' : 'sekund'); + } else { + return result + 'sekundami'; + } + break; case 'm': // a minute / in a minute / a minute ago return withoutSuffix ? 'minuta' : isFuture ? 'minutu' : 'minutou'; @@ -15336,6 +15775,7 @@ future: 'za %s', past: 'před %s', s: translate, + ss: translate, m: translate, mm: translate, h: translate, @@ -15358,9 +15798,9 @@ return cs; }); -/***/ }, -/* 63 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 64 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -15404,6 +15844,7 @@ }, past: '%s каялла', s: 'пӗр-ик ҫеккунт', + ss: '%d ҫеккунт', m: 'пӗр минут', mm: '%d минут', h: 'пӗр сехет', @@ -15426,9 +15867,9 @@ return cv; }); -/***/ }, -/* 64 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 65 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -15472,6 +15913,7 @@ future: 'mewn %s', past: '%s yn ôl', s: 'ychydig eiliadau', + ss: '%d eiliad', m: 'munud', mm: '%d munud', h: 'awr', @@ -15511,9 +15953,9 @@ return cy; }); -/***/ }, -/* 65 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 66 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -15537,7 +15979,7 @@ longDateFormat: { LT: 'HH:mm', LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', + L: 'DD.MM.YYYY', LL: 'D. MMMM YYYY', LLL: 'D. MMMM YYYY HH:mm', LLLL: 'dddd [d.] D. MMMM YYYY [kl.] HH:mm' @@ -15554,6 +15996,7 @@ future: 'om %s', past: '%s siden', s: 'få sekunder', + ss: '%d sekunder', m: 'et minut', mm: '%d minutter', h: 'en time', @@ -15576,9 +16019,9 @@ return da; }); -/***/ }, -/* 66 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 67 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -15611,7 +16054,7 @@ var de = moment.defineLocale('de', { months: 'Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split('_'), - monthsShort: 'Jan._Febr._Mrz._Apr._Mai_Jun._Jul._Aug._Sept._Okt._Nov._Dez.'.split('_'), + monthsShort: 'Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.'.split('_'), monthsParseExact: true, weekdays: 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split('_'), weekdaysShort: 'So._Mo._Di._Mi._Do._Fr._Sa.'.split('_'), @@ -15637,6 +16080,7 @@ future: 'in %s', past: 'vor %s', s: 'ein paar Sekunden', + ss: '%d Sekunden', m: processRelativeTime, mm: '%d Minuten', h: processRelativeTime, @@ -15659,9 +16103,9 @@ return de; }); -/***/ }, -/* 67 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 68 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -15695,7 +16139,7 @@ var deAt = moment.defineLocale('de-at', { months: 'Jänner_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split('_'), - monthsShort: 'Jän._Febr._Mrz._Apr._Mai_Jun._Jul._Aug._Sept._Okt._Nov._Dez.'.split('_'), + monthsShort: 'Jän._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.'.split('_'), monthsParseExact: true, weekdays: 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split('_'), weekdaysShort: 'So._Mo._Di._Mi._Do._Fr._Sa.'.split('_'), @@ -15721,6 +16165,7 @@ future: 'in %s', past: 'vor %s', s: 'ein paar Sekunden', + ss: '%d Sekunden', m: processRelativeTime, mm: '%d Minuten', h: processRelativeTime, @@ -15743,9 +16188,9 @@ return deAt; }); -/***/ }, -/* 68 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 69 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -15778,19 +16223,19 @@ var deCh = moment.defineLocale('de-ch', { months: 'Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split('_'), - monthsShort: 'Jan._Febr._März_April_Mai_Juni_Juli_Aug._Sept._Okt._Nov._Dez.'.split('_'), + monthsShort: 'Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.'.split('_'), monthsParseExact: true, weekdays: 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split('_'), weekdaysShort: 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'), weekdaysMin: 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'), weekdaysParseExact: true, longDateFormat: { - LT: 'HH.mm', - LTS: 'HH.mm.ss', + LT: 'HH:mm', + LTS: 'HH:mm:ss', L: 'DD.MM.YYYY', LL: 'D. MMMM YYYY', - LLL: 'D. MMMM YYYY HH.mm', - LLLL: 'dddd, D. MMMM YYYY HH.mm' + LLL: 'D. MMMM YYYY HH:mm', + LLLL: 'dddd, D. MMMM YYYY HH:mm' }, calendar: { sameDay: '[heute um] LT [Uhr]', @@ -15804,6 +16249,7 @@ future: 'in %s', past: 'vor %s', s: 'ein paar Sekunden', + ss: '%d Sekunden', m: processRelativeTime, mm: '%d Minuten', h: processRelativeTime, @@ -15826,9 +16272,9 @@ return deCh; }); -/***/ }, -/* 69 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 70 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -15884,6 +16330,7 @@ future: 'ތެރޭގައި %s', past: 'ކުރިން %s', s: 'ސިކުންތުކޮޅެއް', + ss: 'd% ސިކުންތު', m: 'މިނިޓެއް', mm: 'މިނިޓު %d', h: 'ގަޑިއިރެއް', @@ -15910,9 +16357,9 @@ return dv; }); -/***/ }, -/* 70 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 71 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -15937,7 +16384,7 @@ months: function months(momentToFormat, format) { if (!momentToFormat) { return this._monthsNominativeEl; - } else if (/D/.test(format.substring(0, format.indexOf('MMMM')))) { + } else if (typeof format === 'string' && /D/.test(format.substring(0, format.indexOf('MMMM')))) { // if there is a day number before 'MMMM' return this._monthsGenitiveEl[momentToFormat.month()]; } else { @@ -15994,6 +16441,7 @@ future: 'σε %s', past: '%s πριν', s: 'λίγα δευτερόλεπτα', + ss: '%d δευτερόλεπτα', m: 'ένα λεπτό', mm: '%d λεπτά', h: 'μία ώρα', @@ -16016,9 +16464,9 @@ return el; }); -/***/ }, -/* 71 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 72 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -16059,6 +16507,7 @@ future: 'in %s', past: '%s ago', s: 'a few seconds', + ss: '%d seconds', m: 'a minute', mm: '%d minutes', h: 'an hour', @@ -16085,9 +16534,9 @@ return enAu; }); -/***/ }, -/* 72 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 73 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -16128,6 +16577,7 @@ future: 'in %s', past: '%s ago', s: 'a few seconds', + ss: '%d seconds', m: 'a minute', mm: '%d minutes', h: 'an hour', @@ -16150,9 +16600,9 @@ return enCa; }); -/***/ }, -/* 73 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 74 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -16193,6 +16643,7 @@ future: 'in %s', past: '%s ago', s: 'a few seconds', + ss: '%d seconds', m: 'a minute', mm: '%d minutes', h: 'an hour', @@ -16219,9 +16670,9 @@ return enGb; }); -/***/ }, -/* 74 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 75 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -16262,6 +16713,7 @@ future: 'in %s', past: '%s ago', s: 'a few seconds', + ss: '%d seconds', m: 'a minute', mm: '%d minutes', h: 'an hour', @@ -16288,9 +16740,9 @@ return enIe; }); -/***/ }, -/* 75 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 76 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -16331,6 +16783,7 @@ future: 'in %s', past: '%s ago', s: 'a few seconds', + ss: '%d seconds', m: 'a minute', mm: '%d minutes', h: 'an hour', @@ -16357,9 +16810,9 @@ return enNz; }); -/***/ }, -/* 76 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 77 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -16413,6 +16866,7 @@ future: 'post %s', past: 'antaŭ %s', s: 'sekundoj', + ss: '%d sekundoj', m: 'minuto', mm: '%d minutoj', h: 'horo', @@ -16435,9 +16889,9 @@ return eo; }); -/***/ }, -/* 77 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 78 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -16455,6 +16909,9 @@ var monthsShortDot = 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split('_'); var _monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'); + var monthsParse = [/^ene/i, /^feb/i, /^mar/i, /^abr/i, /^may/i, /^jun/i, /^jul/i, /^ago/i, /^sep/i, /^oct/i, /^nov/i, /^dic/i]; + var monthsRegex = /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i; + var es = moment.defineLocale('es', { months: 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split('_'), monthsShort: function monthsShort(m, format) { @@ -16466,7 +16923,13 @@ return monthsShortDot[m.month()]; } }, - monthsParseExact: true, + monthsRegex: monthsRegex, + monthsShortRegex: monthsRegex, + monthsStrictRegex: /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i, + monthsShortStrictRegex: /^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i, + monthsParse: monthsParse, + longMonthsParse: monthsParse, + shortMonthsParse: monthsParse, weekdays: 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'), weekdaysShort: 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'), weekdaysMin: 'do_lu_ma_mi_ju_vi_sá'.split('_'), @@ -16501,6 +16964,7 @@ future: 'en %s', past: 'hace %s', s: 'unos segundos', + ss: '%d segundos', m: 'un minuto', mm: '%d minutos', h: 'una hora', @@ -16523,9 +16987,9 @@ return es; }); -/***/ }, -/* 78 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 79 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -16542,6 +17006,9 @@ var monthsShortDot = 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split('_'); var _monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'); + var monthsParse = [/^ene/i, /^feb/i, /^mar/i, /^abr/i, /^may/i, /^jun/i, /^jul/i, /^ago/i, /^sep/i, /^oct/i, /^nov/i, /^dic/i]; + var monthsRegex = /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i; + var esDo = moment.defineLocale('es-do', { months: 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split('_'), monthsShort: function monthsShort(m, format) { @@ -16553,7 +17020,13 @@ return monthsShortDot[m.month()]; } }, - monthsParseExact: true, + monthsRegex: monthsRegex, + monthsShortRegex: monthsRegex, + monthsStrictRegex: /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i, + monthsShortStrictRegex: /^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i, + monthsParse: monthsParse, + longMonthsParse: monthsParse, + shortMonthsParse: monthsParse, weekdays: 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'), weekdaysShort: 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'), weekdaysMin: 'do_lu_ma_mi_ju_vi_sá'.split('_'), @@ -16588,6 +17061,7 @@ future: 'en %s', past: 'hace %s', s: 'unos segundos', + ss: '%d segundos', m: 'un minuto', mm: '%d minutos', h: 'una hora', @@ -16610,9 +17084,98 @@ return esDo; }); -/***/ }, -/* 79 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 80 */ +/***/ (function(module, exports, __webpack_require__) { + + var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; + + var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; + + //! moment.js locale configuration + //! locale : Spanish (United States) [es-us] + //! author : bustta : https://github.com/bustta + + ;(function (global, factory) { + ( false ? 'undefined' : _typeof(exports)) === 'object' && typeof module !== 'undefined' && "function" === 'function' ? factory(__webpack_require__(43)) : true ? !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(43)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)) : factory(global.moment); + })(undefined, function (moment) { + 'use strict'; + + var monthsShortDot = 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split('_'); + var _monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'); + + var esUs = moment.defineLocale('es-us', { + months: 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split('_'), + monthsShort: function monthsShort(m, format) { + if (!m) { + return monthsShortDot; + } else if (/-MMM-/.test(format)) { + return _monthsShort[m.month()]; + } else { + return monthsShortDot[m.month()]; + } + }, + monthsParseExact: true, + weekdays: 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'), + weekdaysShort: 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'), + weekdaysMin: 'do_lu_ma_mi_ju_vi_sá'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'h:mm A', + LTS: 'h:mm:ss A', + L: 'MM/DD/YYYY', + LL: 'MMMM [de] D [de] YYYY', + LLL: 'MMMM [de] D [de] YYYY h:mm A', + LLLL: 'dddd, MMMM [de] D [de] YYYY h:mm A' + }, + calendar: { + sameDay: function sameDay() { + return '[hoy a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; + }, + nextDay: function nextDay() { + return '[mañana a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; + }, + nextWeek: function nextWeek() { + return 'dddd [a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; + }, + lastDay: function lastDay() { + return '[ayer a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; + }, + lastWeek: function lastWeek() { + return '[el] dddd [pasado a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; + }, + sameElse: 'L' + }, + relativeTime: { + future: 'en %s', + past: 'hace %s', + s: 'unos segundos', + ss: '%d segundos', + m: 'un minuto', + mm: '%d minutos', + h: 'una hora', + hh: '%d horas', + d: 'un día', + dd: '%d días', + M: 'un mes', + MM: '%d meses', + y: 'un año', + yy: '%d años' + }, + dayOfMonthOrdinalParse: /\d{1,2}º/, + ordinal: '%dº', + week: { + dow: 0, // Sunday is the first day of the week. + doy: 6 // The week that contains Jan 1st is the first week of the year. + } + }); + + return esUs; + }); + +/***/ }), +/* 81 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -16631,6 +17194,7 @@ function processRelativeTime(number, withoutSuffix, key, isFuture) { var format = { 's': ['mõne sekundi', 'mõni sekund', 'paar sekundit'], + 'ss': [number + 'sekundi', number + 'sekundit'], 'm': ['ühe minuti', 'üks minut'], 'mm': [number + ' minuti', number + ' minutit'], 'h': ['ühe tunni', 'tund aega', 'üks tund'], @@ -16673,6 +17237,7 @@ future: '%s pärast', past: '%s tagasi', s: processRelativeTime, + ss: processRelativeTime, m: processRelativeTime, mm: processRelativeTime, h: processRelativeTime, @@ -16695,9 +17260,9 @@ return et; }); -/***/ }, -/* 80 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 82 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -16744,6 +17309,7 @@ future: '%s barru', past: 'duela %s', s: 'segundo batzuk', + ss: '%d segundo', m: 'minutu bat', mm: '%d minutu', h: 'ordu bat', @@ -16766,9 +17332,9 @@ return eu; }); -/***/ }, -/* 81 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 83 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -16847,6 +17413,7 @@ future: 'در %s', past: '%s پیش', s: 'چند ثانیه', + ss: 'ثانیه d%', m: 'یک دقیقه', mm: '%d دقیقه', h: 'یک ساعت', @@ -16879,9 +17446,9 @@ return fa; }); -/***/ }, -/* 82 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 84 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -16903,6 +17470,8 @@ switch (key) { case 's': return isFuture ? 'muutaman sekunnin' : 'muutama sekunti'; + case 'ss': + return isFuture ? 'sekunnin' : 'sekuntia'; case 'm': return isFuture ? 'minuutin' : 'minuutti'; case 'mm': @@ -16966,6 +17535,7 @@ future: '%s päästä', past: '%s sitten', s: translate, + ss: translate, m: translate, mm: translate, h: translate, @@ -16988,9 +17558,9 @@ return fi; }); -/***/ }, -/* 83 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 85 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -17031,6 +17601,7 @@ future: 'um %s', past: '%s síðani', s: 'fá sekund', + ss: '%d sekundir', m: 'ein minutt', mm: '%d minuttir', h: 'ein tími', @@ -17053,9 +17624,9 @@ return fo; }); -/***/ }, -/* 84 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 86 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -17076,7 +17647,7 @@ monthsParseExact: true, weekdays: 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'), weekdaysShort: 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'), - weekdaysMin: 'Di_Lu_Ma_Me_Je_Ve_Sa'.split('_'), + weekdaysMin: 'di_lu_ma_me_je_ve_sa'.split('_'), weekdaysParseExact: true, longDateFormat: { LT: 'HH:mm', @@ -17098,6 +17669,7 @@ future: 'dans %s', past: 'il y a %s', s: 'quelques secondes', + ss: '%d secondes', m: 'une minute', mm: '%d minutes', h: 'une heure', @@ -17141,9 +17713,9 @@ return fr; }); -/***/ }, -/* 85 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 87 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -17164,7 +17736,7 @@ monthsParseExact: true, weekdays: 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'), weekdaysShort: 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'), - weekdaysMin: 'Di_Lu_Ma_Me_Je_Ve_Sa'.split('_'), + weekdaysMin: 'di_lu_ma_me_je_ve_sa'.split('_'), weekdaysParseExact: true, longDateFormat: { LT: 'HH:mm', @@ -17186,6 +17758,7 @@ future: 'dans %s', past: 'il y a %s', s: 'quelques secondes', + ss: '%d secondes', m: 'une minute', mm: '%d minutes', h: 'une heure', @@ -17220,9 +17793,9 @@ return frCa; }); -/***/ }, -/* 86 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 88 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -17243,7 +17816,7 @@ monthsParseExact: true, weekdays: 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'), weekdaysShort: 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'), - weekdaysMin: 'Di_Lu_Ma_Me_Je_Ve_Sa'.split('_'), + weekdaysMin: 'di_lu_ma_me_je_ve_sa'.split('_'), weekdaysParseExact: true, longDateFormat: { LT: 'HH:mm', @@ -17265,6 +17838,7 @@ future: 'dans %s', past: 'il y a %s', s: 'quelques secondes', + ss: '%d secondes', m: 'une minute', mm: '%d minutes', h: 'une heure', @@ -17303,9 +17877,9 @@ return frCh; }); -/***/ }, -/* 87 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 89 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -17359,6 +17933,7 @@ future: 'oer %s', past: '%s lyn', s: 'in pear sekonden', + ss: '%d sekonden', m: 'ien minút', mm: '%d minuten', h: 'ien oere', @@ -17383,9 +17958,9 @@ return fy; }); -/***/ }, -/* 88 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 90 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -17437,6 +18012,7 @@ future: 'ann an %s', past: 'bho chionn %s', s: 'beagan diogan', + ss: '%d diogan', m: 'mionaid', mm: '%d mionaidean', h: 'uair', @@ -17462,9 +18038,9 @@ return gd; }); -/***/ }, -/* 89 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 91 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -17522,6 +18098,7 @@ }, past: 'hai %s', s: 'uns segundos', + ss: '%d segundos', m: 'un minuto', mm: '%d minutos', h: 'unha hora', @@ -17544,9 +18121,9 @@ return gl; }); -/***/ }, -/* 90 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 92 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -17564,6 +18141,7 @@ function processRelativeTime(number, withoutSuffix, key, isFuture) { var format = { 's': ['thodde secondanim', 'thodde second'], + 'ss': [number + ' secondanim', number + ' second'], 'm': ['eka mintan', 'ek minute'], 'mm': [number + ' mintanim', number + ' mintam'], 'h': ['eka horan', 'ek hor'], @@ -17607,6 +18185,7 @@ future: '%s', past: '%s adim', s: processRelativeTime, + ss: processRelativeTime, m: processRelativeTime, mm: processRelativeTime, h: processRelativeTime, @@ -17671,9 +18250,139 @@ return gomLatn; }); -/***/ }, -/* 91 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 93 */ +/***/ (function(module, exports, __webpack_require__) { + + var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; + + var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; + + //! moment.js locale configuration + //! locale : Gujarati [gu] + //! author : Kaushik Thanki : https://github.com/Kaushik1987 + + ;(function (global, factory) { + ( false ? 'undefined' : _typeof(exports)) === 'object' && typeof module !== 'undefined' && "function" === 'function' ? factory(__webpack_require__(43)) : true ? !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(43)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)) : factory(global.moment); + })(undefined, function (moment) { + 'use strict'; + + var symbolMap = { + '1': '૧', + '2': '૨', + '3': '૩', + '4': '૪', + '5': '૫', + '6': '૬', + '7': '૭', + '8': '૮', + '9': '૯', + '0': '૦' + }; + var numberMap = { + '૧': '1', + '૨': '2', + '૩': '3', + '૪': '4', + '૫': '5', + '૬': '6', + '૭': '7', + '૮': '8', + '૯': '9', + '૦': '0' + }; + + var gu = moment.defineLocale('gu', { + months: 'જાન્યુઆરી_ફેબ્રુઆરી_માર્ચ_એપ્રિલ_મે_જૂન_જુલાઈ_ઑગસ્ટ_સપ્ટેમ્બર_ઑક્ટ્બર_નવેમ્બર_ડિસેમ્બર'.split('_'), + monthsShort: 'જાન્યુ._ફેબ્રુ._માર્ચ_એપ્રિ._મે_જૂન_જુલા._ઑગ._સપ્ટે._ઑક્ટ્._નવે._ડિસે.'.split('_'), + monthsParseExact: true, + weekdays: 'રવિવાર_સોમવાર_મંગળવાર_બુધ્વાર_ગુરુવાર_શુક્રવાર_શનિવાર'.split('_'), + weekdaysShort: 'રવિ_સોમ_મંગળ_બુધ્_ગુરુ_શુક્ર_શનિ'.split('_'), + weekdaysMin: 'ર_સો_મં_બુ_ગુ_શુ_શ'.split('_'), + longDateFormat: { + LT: 'A h:mm વાગ્યે', + LTS: 'A h:mm:ss વાગ્યે', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY, A h:mm વાગ્યે', + LLLL: 'dddd, D MMMM YYYY, A h:mm વાગ્યે' + }, + calendar: { + sameDay: '[આજ] LT', + nextDay: '[કાલે] LT', + nextWeek: 'dddd, LT', + lastDay: '[ગઇકાલે] LT', + lastWeek: '[પાછલા] dddd, LT', + sameElse: 'L' + }, + relativeTime: { + future: '%s મા', + past: '%s પેહલા', + s: 'અમુક પળો', + ss: '%d સેકંડ', + m: 'એક મિનિટ', + mm: '%d મિનિટ', + h: 'એક કલાક', + hh: '%d કલાક', + d: 'એક દિવસ', + dd: '%d દિવસ', + M: 'એક મહિનો', + MM: '%d મહિનો', + y: 'એક વર્ષ', + yy: '%d વર્ષ' + }, + preparse: function preparse(string) { + return string.replace(/[૧૨૩૪૫૬૭૮૯૦]/g, function (match) { + return numberMap[match]; + }); + }, + postformat: function postformat(string) { + return string.replace(/\d/g, function (match) { + return symbolMap[match]; + }); + }, + // Gujarati notation for meridiems are quite fuzzy in practice. While there exists + // a rigid notion of a 'Pahar' it is not used as rigidly in modern Gujarati. + meridiemParse: /રાત|બપોર|સવાર|સાંજ/, + meridiemHour: function meridiemHour(hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'રાત') { + return hour < 4 ? hour : hour + 12; + } else if (meridiem === 'સવાર') { + return hour; + } else if (meridiem === 'બપોર') { + return hour >= 10 ? hour : hour + 12; + } else if (meridiem === 'સાંજ') { + return hour + 12; + } + }, + meridiem: function meridiem(hour, minute, isLower) { + if (hour < 4) { + return 'રાત'; + } else if (hour < 10) { + return 'સવાર'; + } else if (hour < 17) { + return 'બપોર'; + } else if (hour < 20) { + return 'સાંજ'; + } else { + return 'રાત'; + } + }, + week: { + dow: 0, // Sunday is the first day of the week. + doy: 6 // The week that contains Jan 1st is the first week of the year. + } + }); + + return gu; + }); + +/***/ }), +/* 94 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -17720,6 +18429,7 @@ future: 'בעוד %s', past: 'לפני %s', s: 'מספר שניות', + ss: '%d שניות', m: 'דקה', mm: '%d דקות', h: 'שעה', @@ -17776,9 +18486,9 @@ return he; }); -/***/ }, -/* 92 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 95 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -17845,6 +18555,7 @@ future: '%s में', past: '%s पहले', s: 'कुछ ही क्षण', + ss: '%d सेकंड', m: 'एक मिनट', mm: '%d मिनट', h: 'एक घंटा', @@ -17905,9 +18616,9 @@ return hi; }); -/***/ }, -/* 93 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 96 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -17925,6 +18636,15 @@ function translate(number, withoutSuffix, key) { var result = number + ' '; switch (key) { + case 'ss': + if (number === 1) { + result += 'sekunda'; + } else if (number === 2 || number === 3 || number === 4) { + result += 'sekunde'; + } else { + result += 'sekundi'; + } + return result; case 'm': return withoutSuffix ? 'jedna minuta' : 'jedne minute'; case 'mm': @@ -18033,6 +18753,7 @@ future: 'za %s', past: 'prije %s', s: 'par sekundi', + ss: translate, m: translate, mm: translate, h: translate, @@ -18055,9 +18776,9 @@ return hr; }); -/***/ }, -/* 94 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 97 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -18074,11 +18795,12 @@ var weekEndings = 'vasárnap hétfőn kedden szerdán csütörtökön pénteken szombaton'.split(' '); function translate(number, withoutSuffix, key, isFuture) { - var num = number, - suffix; + var num = number; switch (key) { case 's': return isFuture || withoutSuffix ? 'néhány másodperc' : 'néhány másodperce'; + case 'ss': + return num + (isFuture || withoutSuffix) ? ' másodperc' : ' másodperce'; case 'm': return 'egy' + (isFuture || withoutSuffix ? ' perc' : ' perce'); case 'mm': @@ -18147,6 +18869,7 @@ future: '%s múlva', past: '%s', s: translate, + ss: translate, m: translate, mm: translate, h: translate, @@ -18169,9 +18892,9 @@ return hu; }); -/***/ }, -/* 95 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 98 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -18219,6 +18942,7 @@ future: '%s հետո', past: '%s առաջ', s: 'մի քանի վայրկյան', + ss: '%d վայրկյան', m: 'րոպե', mm: '%d րոպե', h: 'ժամ', @@ -18270,9 +18994,9 @@ return hyAm; }); -/***/ }, -/* 96 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 99 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -18338,6 +19062,7 @@ future: 'dalam %s', past: '%s yang lalu', s: 'beberapa detik', + ss: '%d detik', m: 'semenit', mm: '%d menit', h: 'sejam', @@ -18358,9 +19083,9 @@ return id; }); -/***/ }, -/* 97 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 100 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -18388,6 +19113,11 @@ switch (key) { case 's': return withoutSuffix || isFuture ? 'nokkrar sekúndur' : 'nokkrum sekúndum'; + case 'ss': + if (plural(number)) { + return result + (withoutSuffix || isFuture ? 'sekúndur' : 'sekúndum'); + } + return result + 'sekúnda'; case 'm': return withoutSuffix ? 'mínúta' : 'mínútu'; case 'mm': @@ -18468,6 +19198,7 @@ future: 'eftir %s', past: 'fyrir %s síðan', s: translate, + ss: translate, m: translate, mm: translate, h: 'klukkustund', @@ -18490,9 +19221,9 @@ return is; }); -/***/ }, -/* 98 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 101 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -18520,7 +19251,7 @@ L: 'DD/MM/YYYY', LL: 'D MMMM YYYY', LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd, D MMMM YYYY HH:mm' + LLLL: 'dddd D MMMM YYYY HH:mm' }, calendar: { sameDay: '[Oggi alle] LT', @@ -18543,6 +19274,7 @@ }, past: '%s fa', s: 'alcuni secondi', + ss: '%d secondi', m: 'un minuto', mm: '%d minuti', h: 'un\'ora', @@ -18565,9 +19297,9 @@ return it; }); -/***/ }, -/* 99 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 102 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -18634,6 +19366,7 @@ future: '%s後', past: '%s前', s: '数秒', + ss: '%d秒', m: '1分', mm: '%d分', h: '1時間', @@ -18650,9 +19383,9 @@ return ja; }); -/***/ }, -/* 100 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 103 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -18718,6 +19451,7 @@ future: 'wonten ing %s', past: '%s ingkang kepengker', s: 'sawetawis detik', + ss: '%d detik', m: 'setunggal menit', mm: '%d menit', h: 'setunggal jam', @@ -18738,9 +19472,9 @@ return jv; }); -/***/ }, -/* 101 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 104 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -18798,6 +19532,7 @@ } }, s: 'რამდენიმე წამი', + ss: '%d წამი', m: 'წუთი', mm: '%d წუთი', h: 'საათი', @@ -18831,9 +19566,9 @@ return ka; }); -/***/ }, -/* 102 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 105 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -18897,6 +19632,7 @@ future: '%s ішінде', past: '%s бұрын', s: 'бірнеше секунд', + ss: '%d секунд', m: 'бір минут', mm: '%d минут', h: 'бір сағат', @@ -18923,9 +19659,9 @@ return kk; }); -/***/ }, -/* 103 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 106 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -18966,6 +19702,7 @@ future: '%sទៀត', past: '%sមុន', s: 'ប៉ុន្មានវិនាទី', + ss: '%d វិនាទី', m: 'មួយនាទី', mm: '%d នាទី', h: 'មួយម៉ោង', @@ -18986,9 +19723,9 @@ return km; }); -/***/ }, -/* 104 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 107 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -19055,6 +19792,7 @@ future: '%s ನಂತರ', past: '%s ಹಿಂದೆ', s: 'ಕೆಲವು ಕ್ಷಣಗಳು', + ss: '%d ಸೆಕೆಂಡುಗಳು', m: 'ಒಂದು ನಿಮಿಷ', mm: '%d ನಿಮಿಷ', h: 'ಒಂದು ಗಂಟೆ', @@ -19117,9 +19855,9 @@ return kn; }); -/***/ }, -/* 105 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 108 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -19177,8 +19915,22 @@ y: '일 년', yy: '%d년' }, - dayOfMonthOrdinalParse: /\d{1,2}일/, - ordinal: '%d일', + dayOfMonthOrdinalParse: /\d{1,2}(일|월|주)/, + ordinal: function ordinal(number, period) { + switch (period) { + case 'd': + case 'D': + case 'DDD': + return number + '일'; + case 'M': + return number + '월'; + case 'w': + case 'W': + return number + '주'; + default: + return number; + } + }, meridiemParse: /오전|오후/, isPM: function isPM(token) { return token === '오후'; @@ -19191,9 +19943,9 @@ return ko; }); -/***/ }, -/* 106 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 109 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -19257,6 +20009,7 @@ future: '%s ичинде', past: '%s мурун', s: 'бирнече секунд', + ss: '%d секунд', m: 'бир мүнөт', mm: '%d мүнөт', h: 'бир саат', @@ -19283,9 +20036,9 @@ return ky; }); -/***/ }, -/* 107 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 110 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -19404,6 +20157,7 @@ future: processFutureTime, past: processPastTime, s: 'e puer Sekonnen', + ss: '%d Sekonnen', m: processRelativeTime, mm: '%d Minutten', h: processRelativeTime, @@ -19426,9 +20180,9 @@ return lb; }); -/***/ }, -/* 108 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 111 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -19481,6 +20235,7 @@ future: 'ອີກ %s', past: '%sຜ່ານມາ', s: 'ບໍ່ເທົ່າໃດວິນາທີ', + ss: '%d ວິນາທີ', m: '1 ນາທີ', mm: '%d ນາທີ', h: '1 ຊົ່ວໂມງ', @@ -19501,9 +20256,9 @@ return lo; }); -/***/ }, -/* 109 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 112 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -19519,6 +20274,7 @@ 'use strict'; var units = { + 'ss': 'sekundė_sekundžių_sekundes', 'm': 'minutė_minutės_minutę', 'mm': 'minutės_minučių_minutes', 'h': 'valanda_valandos_valandą', @@ -19599,6 +20355,7 @@ future: 'po %s', past: 'prieš %s', s: translateSeconds, + ss: translate, m: translateSingular, mm: translate, h: translateSingular, @@ -19623,9 +20380,9 @@ return lt; }); -/***/ }, -/* 110 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 113 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -19642,6 +20399,7 @@ 'use strict'; var units = { + 'ss': 'sekundes_sekundēm_sekunde_sekundes'.split('_'), 'm': 'minūtes_minūtēm_minūte_minūtes'.split('_'), 'mm': 'minūtes_minūtēm_minūte_minūtes'.split('_'), 'h': 'stundas_stundām_stunda_stundas'.split('_'), @@ -19703,6 +20461,7 @@ future: 'pēc %s', past: 'pirms %s', s: relativeSeconds, + ss: relativeTimeWithPlural, m: relativeTimeWithSingular, mm: relativeTimeWithPlural, h: relativeTimeWithSingular, @@ -19725,9 +20484,9 @@ return lv; }); -/***/ }, -/* 111 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 114 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -19744,6 +20503,7 @@ var translator = { words: { //Different grammatical cases + ss: ['sekund', 'sekunda', 'sekundi'], m: ['jedan minut', 'jednog minuta'], mm: ['minut', 'minuta', 'minuta'], h: ['jedan sat', 'jednog sata'], @@ -19811,6 +20571,7 @@ future: 'za %s', past: 'prije %s', s: 'nekoliko sekundi', + ss: translator.translate, m: translator.translate, mm: translator.translate, h: translator.translate, @@ -19833,9 +20594,9 @@ return me; }); -/***/ }, -/* 112 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 115 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -19880,6 +20641,7 @@ future: 'i roto i %s', past: '%s i mua', s: 'te hēkona ruarua', + ss: '%d hēkona', m: 'he meneti', mm: '%d meneti', h: 'te haora', @@ -19902,9 +20664,9 @@ return mi; }); -/***/ }, -/* 113 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 116 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -19957,6 +20719,7 @@ future: 'после %s', past: 'пред %s', s: 'неколку секунди', + ss: '%d секунди', m: 'минута', mm: '%d минути', h: 'час', @@ -19997,9 +20760,9 @@ return mk; }); -/***/ }, -/* 114 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 117 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -20041,6 +20804,7 @@ future: '%s കഴിഞ്ഞ്', past: '%s മുൻപ്', s: 'അൽപ നിമിഷങ്ങൾ', + ss: '%d സെക്കൻഡ്', m: 'ഒരു മിനിറ്റ്', mm: '%d മിനിറ്റ്', h: 'ഒരു മണിക്കൂർ', @@ -20081,9 +20845,9 @@ return ml; }); -/***/ }, -/* 115 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 118 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -20130,6 +20894,8 @@ switch (string) { case 's': output = 'काही सेकंद';break; + case 'ss': + output = '%d सेकंद';break; case 'm': output = 'एक मिनिट';break; case 'mm': @@ -20155,6 +20921,8 @@ switch (string) { case 's': output = 'काही सेकंदां';break; + case 'ss': + output = '%d सेकंदां';break; case 'm': output = 'एका मिनिटा';break; case 'mm': @@ -20207,6 +20975,7 @@ future: '%sमध्ये', past: '%sपूर्वी', s: relativeTimeMr, + ss: relativeTimeMr, m: relativeTimeMr, mm: relativeTimeMr, h: relativeTimeMr, @@ -20265,9 +21034,9 @@ return mr; }); -/***/ }, -/* 116 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 119 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -20332,6 +21101,7 @@ future: 'dalam %s', past: '%s yang lepas', s: 'beberapa saat', + ss: '%d saat', m: 'seminit', mm: '%d minit', h: 'sejam', @@ -20352,9 +21122,9 @@ return ms; }); -/***/ }, -/* 117 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 120 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -20420,6 +21190,7 @@ future: 'dalam %s', past: '%s yang lepas', s: 'beberapa saat', + ss: '%d saat', m: 'seminit', mm: '%d minit', h: 'sejam', @@ -20440,9 +21211,75 @@ return msMy; }); -/***/ }, -/* 118 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 121 */ +/***/ (function(module, exports, __webpack_require__) { + + var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; + + var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; + + //! moment.js locale configuration + //! locale : Maltese (Malta) [mt] + //! author : Alessandro Maruccia : https://github.com/alesma + + ;(function (global, factory) { + ( false ? 'undefined' : _typeof(exports)) === 'object' && typeof module !== 'undefined' && "function" === 'function' ? factory(__webpack_require__(43)) : true ? !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(43)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)) : factory(global.moment); + })(undefined, function (moment) { + 'use strict'; + + var mt = moment.defineLocale('mt', { + months: 'Jannar_Frar_Marzu_April_Mejju_Ġunju_Lulju_Awwissu_Settembru_Ottubru_Novembru_Diċembru'.split('_'), + monthsShort: 'Jan_Fra_Mar_Apr_Mej_Ġun_Lul_Aww_Set_Ott_Nov_Diċ'.split('_'), + weekdays: 'Il-Ħadd_It-Tnejn_It-Tlieta_L-Erbgħa_Il-Ħamis_Il-Ġimgħa_Is-Sibt'.split('_'), + weekdaysShort: 'Ħad_Tne_Tli_Erb_Ħam_Ġim_Sib'.split('_'), + weekdaysMin: 'Ħa_Tn_Tl_Er_Ħa_Ġi_Si'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd, D MMMM YYYY HH:mm' + }, + calendar: { + sameDay: '[Illum fil-]LT', + nextDay: '[Għada fil-]LT', + nextWeek: 'dddd [fil-]LT', + lastDay: '[Il-bieraħ fil-]LT', + lastWeek: 'dddd [li għadda] [fil-]LT', + sameElse: 'L' + }, + relativeTime: { + future: 'f’ %s', + past: '%s ilu', + s: 'ftit sekondi', + ss: '%d sekondi', + m: 'minuta', + mm: '%d minuti', + h: 'siegħa', + hh: '%d siegħat', + d: 'ġurnata', + dd: '%d ġranet', + M: 'xahar', + MM: '%d xhur', + y: 'sena', + yy: '%d sni' + }, + dayOfMonthOrdinalParse: /\d{1,2}º/, + ordinal: '%dº', + week: { + dow: 1, // Monday is the first day of the week. + doy: 4 // The week that contains Jan 4th is the first week of the year. + } + }); + + return mt; + }); + +/***/ }), +/* 122 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -20511,6 +21348,7 @@ future: 'လာမည့် %s မှာ', past: 'လွန်ခဲ့သော %s က', s: 'စက္ကန်.အနည်းငယ်', + ss: '%d စက္ကန့်', m: 'တစ်မိနစ်', mm: '%d မိနစ်', h: 'တစ်နာရီ', @@ -20541,9 +21379,9 @@ return my; }); -/***/ }, -/* 119 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 123 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -20587,6 +21425,7 @@ future: 'om %s', past: '%s siden', s: 'noen sekunder', + ss: '%d sekunder', m: 'ett minutt', mm: '%d minutter', h: 'en time', @@ -20609,9 +21448,9 @@ return nb; }); -/***/ }, -/* 120 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 124 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -20717,6 +21556,7 @@ future: '%sमा', past: '%s अगाडि', s: 'केही क्षण', + ss: '%d सेकेण्ड', m: 'एक मिनेट', mm: '%d मिनेट', h: 'एक घण्टा', @@ -20737,9 +21577,9 @@ return ne; }); -/***/ }, -/* 121 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 125 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -20784,7 +21624,7 @@ weekdays: 'zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag'.split('_'), weekdaysShort: 'zo._ma._di._wo._do._vr._za.'.split('_'), - weekdaysMin: 'Zo_Ma_Di_Wo_Do_Vr_Za'.split('_'), + weekdaysMin: 'zo_ma_di_wo_do_vr_za'.split('_'), weekdaysParseExact: true, longDateFormat: { LT: 'HH:mm', @@ -20806,6 +21646,7 @@ future: 'over %s', past: '%s geleden', s: 'een paar seconden', + ss: '%d seconden', m: 'één minuut', mm: '%d minuten', h: 'één uur', @@ -20830,9 +21671,9 @@ return nl; }); -/***/ }, -/* 122 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 126 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -20877,7 +21718,7 @@ weekdays: 'zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag'.split('_'), weekdaysShort: 'zo._ma._di._wo._do._vr._za.'.split('_'), - weekdaysMin: 'Zo_Ma_Di_Wo_Do_Vr_Za'.split('_'), + weekdaysMin: 'zo_ma_di_wo_do_vr_za'.split('_'), weekdaysParseExact: true, longDateFormat: { LT: 'HH:mm', @@ -20899,6 +21740,7 @@ future: 'over %s', past: '%s geleden', s: 'een paar seconden', + ss: '%d seconden', m: 'één minuut', mm: '%d minuten', h: 'één uur', @@ -20923,9 +21765,9 @@ return nlBe; }); -/***/ }, -/* 123 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 127 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -20966,6 +21808,7 @@ future: 'om %s', past: '%s sidan', s: 'nokre sekund', + ss: '%d sekund', m: 'eit minutt', mm: '%d minutt', h: 'ein time', @@ -20988,9 +21831,9 @@ return nn; }); -/***/ }, -/* 124 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 128 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -21057,6 +21900,7 @@ future: '%s ਵਿੱਚ', past: '%s ਪਿਛਲੇ', s: 'ਕੁਝ ਸਕਿੰਟ', + ss: '%d ਸਕਿੰਟ', m: 'ਇਕ ਮਿੰਟ', mm: '%d ਮਿੰਟ', h: 'ਇੱਕ ਘੰਟਾ', @@ -21117,9 +21961,9 @@ return paIn; }); -/***/ }, -/* 125 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 129 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -21142,6 +21986,8 @@ function translate(number, withoutSuffix, key) { var result = number + ' '; switch (key) { + case 'ss': + return result + (plural(number) ? 'sekundy' : 'sekund'); case 'm': return withoutSuffix ? 'minuta' : 'minutę'; case 'mm': @@ -21187,7 +22033,24 @@ calendar: { sameDay: '[Dziś o] LT', nextDay: '[Jutro o] LT', - nextWeek: '[W] dddd [o] LT', + nextWeek: function nextWeek() { + switch (this.day()) { + case 0: + return '[W niedzielę o] LT'; + + case 2: + return '[We wtorek o] LT'; + + case 3: + return '[W środę o] LT'; + + case 6: + return '[W sobotę o] LT'; + + default: + return '[W] dddd [o] LT'; + } + }, lastDay: '[Wczoraj o] LT', lastWeek: function lastWeek() { switch (this.day()) { @@ -21207,6 +22070,7 @@ future: 'za %s', past: '%s temu', s: 'kilka sekund', + ss: translate, m: translate, mm: translate, h: translate, @@ -21229,9 +22093,9 @@ return pl; }); -/***/ }, -/* 126 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 130 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -21247,9 +22111,9 @@ 'use strict'; var pt = moment.defineLocale('pt', { - months: 'Janeiro_Fevereiro_Março_Abril_Maio_Junho_Julho_Agosto_Setembro_Outubro_Novembro_Dezembro'.split('_'), - monthsShort: 'Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez'.split('_'), - weekdays: 'Domingo_Segunda-Feira_Terça-Feira_Quarta-Feira_Quinta-Feira_Sexta-Feira_Sábado'.split('_'), + months: 'janeiro_fevereiro_março_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro'.split('_'), + monthsShort: 'jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez'.split('_'), + weekdays: 'Domingo_Segunda-feira_Terça-feira_Quarta-feira_Quinta-feira_Sexta-feira_Sábado'.split('_'), weekdaysShort: 'Dom_Seg_Ter_Qua_Qui_Sex_Sáb'.split('_'), weekdaysMin: 'Do_2ª_3ª_4ª_5ª_6ª_Sá'.split('_'), weekdaysParseExact: true, @@ -21276,6 +22140,7 @@ future: 'em %s', past: 'há %s', s: 'segundos', + ss: '%d segundos', m: 'um minuto', mm: '%d minutos', h: 'uma hora', @@ -21298,9 +22163,9 @@ return pt; }); -/***/ }, -/* 127 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 131 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -21316,8 +22181,8 @@ 'use strict'; var ptBr = moment.defineLocale('pt-br', { - months: 'Janeiro_Fevereiro_Março_Abril_Maio_Junho_Julho_Agosto_Setembro_Outubro_Novembro_Dezembro'.split('_'), - monthsShort: 'Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez'.split('_'), + months: 'janeiro_fevereiro_março_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro'.split('_'), + monthsShort: 'jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez'.split('_'), weekdays: 'Domingo_Segunda-feira_Terça-feira_Quarta-feira_Quinta-feira_Sexta-feira_Sábado'.split('_'), weekdaysShort: 'Dom_Seg_Ter_Qua_Qui_Sex_Sáb'.split('_'), weekdaysMin: 'Do_2ª_3ª_4ª_5ª_6ª_Sá'.split('_'), @@ -21345,6 +22210,7 @@ future: 'em %s', past: '%s atrás', s: 'poucos segundos', + ss: '%d segundos', m: 'um minuto', mm: '%d minutos', h: 'uma hora', @@ -21363,9 +22229,9 @@ return ptBr; }); -/***/ }, -/* 128 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 132 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -21383,6 +22249,7 @@ function relativeTimeWithPlural(number, withoutSuffix, key) { var format = { + 'ss': 'secunde', 'mm': 'minute', 'hh': 'ore', 'dd': 'zile', @@ -21423,6 +22290,7 @@ future: 'peste %s', past: '%s în urmă', s: 'câteva secunde', + ss: relativeTimeWithPlural, m: 'un minut', mm: relativeTimeWithPlural, h: 'o oră', @@ -21443,9 +22311,9 @@ return ro; }); -/***/ }, -/* 129 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 133 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -21468,6 +22336,7 @@ } function relativeTimeWithPlural(number, withoutSuffix, key) { var format = { + 'ss': withoutSuffix ? 'секунда_секунды_секунд' : 'секунду_секунды_секунд', 'mm': withoutSuffix ? 'минута_минуты_минут' : 'минуту_минуты_минут', 'hh': 'час_часа_часов', 'dd': 'день_дня_дней', @@ -21518,12 +22387,12 @@ // Выражение, которое соотвествует только сокращённым формам monthsShortStrictRegex: /^(янв\.|февр?\.|мар[т.]|апр\.|ма[яй]|июн[ья.]|июл[ья.]|авг\.|сент?\.|окт\.|нояб?\.|дек\.)/i, longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', + LT: 'H:mm', + LTS: 'H:mm:ss', L: 'DD.MM.YYYY', LL: 'D MMMM YYYY г.', - LLL: 'D MMMM YYYY г., HH:mm', - LLLL: 'dddd, D MMMM YYYY г., HH:mm' + LLL: 'D MMMM YYYY г., H:mm', + LLLL: 'dddd, D MMMM YYYY г., H:mm' }, calendar: { sameDay: '[Сегодня в] LT', @@ -21579,6 +22448,7 @@ future: 'через %s', past: '%s назад', s: 'несколько секунд', + ss: relativeTimeWithPlural, m: relativeTimeWithPlural, mm: relativeTimeWithPlural, h: 'час', @@ -21624,16 +22494,16 @@ }, week: { dow: 1, // Monday is the first day of the week. - doy: 7 // The week that contains Jan 1st is the first week of the year. + doy: 4 // The week that contains Jan 4th is the first week of the year. } }); return ru; }); -/***/ }, -/* 130 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 134 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -21687,6 +22557,7 @@ future: '%s پوء', past: '%s اڳ', s: 'چند سيڪنڊ', + ss: '%d سيڪنڊ', m: 'هڪ منٽ', mm: '%d منٽ', h: 'هڪ ڪلاڪ', @@ -21713,9 +22584,9 @@ return sd; }); -/***/ }, -/* 131 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 135 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -21756,6 +22627,7 @@ future: '%s geažes', past: 'maŋit %s', s: 'moadde sekunddat', + ss: '%d sekunddat', m: 'okta minuhta', mm: '%d minuhtat', h: 'okta diimmu', @@ -21778,9 +22650,9 @@ return se; }); -/***/ }, -/* 132 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 136 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -21824,6 +22696,7 @@ future: '%sකින්', past: '%sකට පෙර', s: 'තත්පර කිහිපය', + ss: 'තත්පර %d', m: 'මිනිත්තුව', mm: 'මිනිත්තු %d', h: 'පැය', @@ -21855,9 +22728,9 @@ return si; }); -/***/ }, -/* 133 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 137 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -21884,6 +22757,14 @@ case 's': // a few seconds / in a few seconds / a few seconds ago return withoutSuffix || isFuture ? 'pár sekúnd' : 'pár sekundami'; + case 'ss': + // 9 seconds / in 9 seconds / 9 seconds ago + if (withoutSuffix || isFuture) { + return result + (plural(number) ? 'sekundy' : 'sekúnd'); + } else { + return result + 'sekundami'; + } + break; case 'm': // a minute / in a minute / a minute ago return withoutSuffix ? 'minúta' : isFuture ? 'minútu' : 'minútou'; @@ -21999,6 +22880,7 @@ future: 'za %s', past: 'pred %s', s: translate, + ss: translate, m: translate, mm: translate, h: translate, @@ -22021,9 +22903,9 @@ return sk; }); -/***/ }, -/* 134 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 138 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -22043,6 +22925,17 @@ switch (key) { case 's': return withoutSuffix || isFuture ? 'nekaj sekund' : 'nekaj sekundami'; + case 'ss': + if (number === 1) { + result += withoutSuffix ? 'sekundo' : 'sekundi'; + } else if (number === 2) { + result += withoutSuffix || isFuture ? 'sekundi' : 'sekundah'; + } else if (number < 5) { + result += withoutSuffix || isFuture ? 'sekunde' : 'sekundah'; + } else { + result += withoutSuffix || isFuture ? 'sekund' : 'sekund'; + } + return result; case 'm': return withoutSuffix ? 'ena minuta' : 'eno minuto'; case 'mm': @@ -22166,6 +23059,7 @@ future: 'čez %s', past: 'pred %s', s: processRelativeTime, + ss: processRelativeTime, m: processRelativeTime, mm: processRelativeTime, h: processRelativeTime, @@ -22188,9 +23082,9 @@ return sl; }); -/***/ }, -/* 135 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 139 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -22241,6 +23135,7 @@ future: 'në %s', past: '%s më parë', s: 'disa sekonda', + ss: '%d sekonda', m: 'një minutë', mm: '%d minuta', h: 'një orë', @@ -22263,9 +23158,9 @@ return sq; }); -/***/ }, -/* 136 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 140 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -22282,6 +23177,7 @@ var translator = { words: { //Different grammatical cases + ss: ['sekunda', 'sekunde', 'sekundi'], m: ['jedan minut', 'jedne minute'], mm: ['minut', 'minute', 'minuta'], h: ['jedan sat', 'jednog sata'], @@ -22348,6 +23244,7 @@ future: 'za %s', past: 'pre %s', s: 'nekoliko sekundi', + ss: translator.translate, m: translator.translate, mm: translator.translate, h: translator.translate, @@ -22370,9 +23267,9 @@ return sr; }); -/***/ }, -/* 137 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 141 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -22389,6 +23286,7 @@ var translator = { words: { //Different grammatical cases + ss: ['секунда', 'секунде', 'секунди'], m: ['један минут', 'једне минуте'], mm: ['минут', 'минуте', 'минута'], h: ['један сат', 'једног сата'], @@ -22455,6 +23353,7 @@ future: 'за %s', past: 'пре %s', s: 'неколико секунди', + ss: translator.translate, m: translator.translate, mm: translator.translate, h: translator.translate, @@ -22477,9 +23376,9 @@ return srCyrl; }); -/***/ }, -/* 138 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 142 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -22521,6 +23420,7 @@ future: 'nga %s', past: 'wenteka nga %s', s: 'emizuzwana lomcane', + ss: '%d mzuzwana', m: 'umzuzu', mm: '%d emizuzu', h: 'lihora', @@ -22570,9 +23470,9 @@ return ss; }); -/***/ }, -/* 139 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 143 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -22615,6 +23515,7 @@ future: 'om %s', past: 'för %s sedan', s: 'några sekunder', + ss: '%d sekunder', m: 'en minut', mm: '%d minuter', h: 'en timme', @@ -22641,9 +23542,9 @@ return sv; }); -/***/ }, -/* 140 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 144 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -22685,6 +23586,7 @@ future: '%s baadaye', past: 'tokea %s', s: 'hivi punde', + ss: 'sekunde %d', m: 'dakika moja', mm: 'dakika %d', h: 'saa limoja', @@ -22705,9 +23607,9 @@ return sw; }); -/***/ }, -/* 141 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 145 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -22773,6 +23675,7 @@ future: '%s இல்', past: '%s முன்', s: 'ஒரு சில விநாடிகள்', + ss: '%d விநாடிகள்', m: 'ஒரு நிமிடம்', mm: '%d நிமிடங்கள்', h: 'ஒரு மணி நேரம்', @@ -22840,9 +23743,9 @@ return ta; }); -/***/ }, -/* 142 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 146 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -22884,6 +23787,7 @@ future: '%s లో', past: '%s క్రితం', s: 'కొన్ని క్షణాలు', + ss: '%d సెకన్లు', m: 'ఒక నిమిషం', mm: '%d నిమిషాలు', h: 'ఒక గంట', @@ -22934,9 +23838,9 @@ return te; }); -/***/ }, -/* 143 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 147 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -22978,6 +23882,7 @@ future: 'iha %s', past: '%s liuba', s: 'minutu balun', + ss: 'minutu %d', m: 'minutu ida', mm: 'minutus %d', h: 'horas ida', @@ -23004,9 +23909,9 @@ return tet; }); -/***/ }, -/* 144 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 148 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -23060,6 +23965,7 @@ future: 'อีก %s', past: '%sที่แล้ว', s: 'ไม่กี่วินาที', + ss: '%d วินาที', m: '1 นาที', mm: '%d นาที', h: '1 ชั่วโมง', @@ -23076,9 +23982,9 @@ return th; }); -/***/ }, -/* 145 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 149 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -23119,6 +24025,7 @@ future: 'sa loob ng %s', past: '%s ang nakalipas', s: 'ilang segundo', + ss: '%d segundo', m: 'isang minuto', mm: '%d minuto', h: 'isang oras', @@ -23143,9 +24050,9 @@ return tlPh; }); -/***/ }, -/* 146 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 150 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -23177,6 +24084,8 @@ function translate(number, withoutSuffix, string, isFuture) { var numberNoun = numberAsNoun(number); switch (string) { + case 'ss': + return numberNoun + ' lup'; case 'mm': return numberNoun + ' tup'; case 'hh': @@ -23234,6 +24143,7 @@ future: translateFuture, past: translatePast, s: 'puS lup', + ss: translate, m: 'wa’ tup', mm: translate, h: 'wa’ rep', @@ -23256,9 +24166,9 @@ return tlh; }); -/***/ }, -/* 147 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 151 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -23312,15 +24222,16 @@ calendar: { sameDay: '[bugün saat] LT', nextDay: '[yarın saat] LT', - nextWeek: '[haftaya] dddd [saat] LT', + nextWeek: '[gelecek] dddd [saat] LT', lastDay: '[dün] LT', - lastWeek: '[geçen hafta] dddd [saat] LT', + lastWeek: '[geçen] dddd [saat] LT', sameElse: 'L' }, relativeTime: { future: '%s sonra', past: '%s önce', s: 'birkaç saniye', + ss: '%d saniye', m: 'bir dakika', mm: '%d dakika', h: 'bir saat', @@ -23352,9 +24263,9 @@ return tr; }); -/***/ }, -/* 148 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 152 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -23410,6 +24321,7 @@ future: 'osprei %s', past: 'ja%s', s: processRelativeTime, + ss: processRelativeTime, m: processRelativeTime, mm: processRelativeTime, h: processRelativeTime, @@ -23432,6 +24344,7 @@ function processRelativeTime(number, withoutSuffix, key, isFuture) { var format = { 's': ['viensas secunds', '\'iensas secunds'], + 'ss': [number + ' secunds', '' + number + ' secunds'], 'm': ['\'n míut', '\'iens míut'], 'mm': [number + ' míuts', '' + number + ' míuts'], 'h': ['\'n þora', '\'iensa þora'], @@ -23449,9 +24362,9 @@ return tzl; }); -/***/ }, -/* 149 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 153 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -23492,6 +24405,7 @@ future: 'ⴷⴰⴷⵅ ⵙ ⵢⴰⵏ %s', past: 'ⵢⴰⵏ %s', s: 'ⵉⵎⵉⴽ', + ss: '%d ⵉⵎⵉⴽ', m: 'ⵎⵉⵏⵓⴺ', mm: '%d ⵎⵉⵏⵓⴺ', h: 'ⵙⴰⵄⴰ', @@ -23512,9 +24426,9 @@ return tzm; }); -/***/ }, -/* 150 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 154 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -23555,6 +24469,7 @@ future: 'dadkh s yan %s', past: 'yan %s', s: 'imik', + ss: '%d imik', m: 'minuḍ', mm: '%d minuḍ', h: 'saɛa', @@ -23575,9 +24490,9 @@ return tzmLatn; }); -/***/ }, -/* 151 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 155 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -23599,6 +24514,7 @@ } function relativeTimeWithPlural(number, withoutSuffix, key) { var format = { + 'ss': withoutSuffix ? 'секунда_секунди_секунд' : 'секунду_секунди_секунд', 'mm': withoutSuffix ? 'хвилина_хвилини_хвилин' : 'хвилину_хвилини_хвилин', 'hh': withoutSuffix ? 'година_години_годин' : 'годину_години_годин', 'dd': 'день_дні_днів', @@ -23674,6 +24590,7 @@ future: 'за %s', past: '%s тому', s: 'декілька секунд', + ss: relativeTimeWithPlural, m: relativeTimeWithPlural, mm: relativeTimeWithPlural, h: 'годину', @@ -23726,9 +24643,9 @@ return uk; }); -/***/ }, -/* 152 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 156 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -23783,6 +24700,7 @@ future: '%s بعد', past: '%s قبل', s: 'چند سیکنڈ', + ss: '%d سیکنڈ', m: 'ایک منٹ', mm: '%d منٹ', h: 'ایک گھنٹہ', @@ -23809,9 +24727,9 @@ return ur; }); -/***/ }, -/* 153 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 157 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -23852,6 +24770,7 @@ future: 'Якин %s ичида', past: 'Бир неча %s олдин', s: 'фурсат', + ss: '%d фурсат', m: 'бир дакика', mm: '%d дакика', h: 'бир соат', @@ -23872,9 +24791,9 @@ return uz; }); -/***/ }, -/* 154 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 158 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -23915,6 +24834,7 @@ future: 'Yaqin %s ichida', past: 'Bir necha %s oldin', s: 'soniya', + ss: '%d soniya', m: 'bir daqiqa', mm: '%d daqiqa', h: 'bir soat', @@ -23935,9 +24855,9 @@ return uzLatn; }); -/***/ }, -/* 155 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 159 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -23996,6 +24916,7 @@ future: '%s tới', past: '%s trước', s: 'vài giây', + ss: '%d giây', m: 'một phút', mm: '%d phút', h: 'một giờ', @@ -24020,9 +24941,9 @@ return vi; }); -/***/ }, -/* 156 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 160 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -24064,6 +24985,7 @@ future: 'í~ñ %s', past: '%s á~gó', s: 'á ~féw ~sécó~ñds', + ss: '%d s~écóñ~ds', m: 'á ~míñ~úté', mm: '%d m~íñú~tés', h: 'á~ñ hó~úr', @@ -24090,9 +25012,9 @@ return xPseudo; }); -/***/ }, -/* 157 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 161 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -24133,6 +25055,7 @@ future: 'ní %s', past: '%s kọjá', s: 'ìsẹjú aayá die', + ss: 'aayá %d', m: 'ìsẹjú kan', mm: 'ìsẹjú %d', h: 'wákati kan', @@ -24155,9 +25078,9 @@ return yo; }); -/***/ }, -/* 158 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 162 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -24182,14 +25105,14 @@ longDateFormat: { LT: 'HH:mm', LTS: 'HH:mm:ss', - L: 'YYYY年MMMD日', - LL: 'YYYY年MMMD日', - LLL: 'YYYY年MMMD日Ah点mm分', - LLLL: 'YYYY年MMMD日ddddAh点mm分', - l: 'YYYY年MMMD日', - ll: 'YYYY年MMMD日', - lll: 'YYYY年MMMD日 HH:mm', - llll: 'YYYY年MMMD日dddd HH:mm' + L: 'YYYY/MM/DD', + LL: 'YYYY年M月D日', + LLL: 'YYYY年M月D日Ah点mm分', + LLLL: 'YYYY年M月D日ddddAh点mm分', + l: 'YYYY/M/D', + ll: 'YYYY年M月D日', + lll: 'YYYY年M月D日 HH:mm', + llll: 'YYYY年M月D日dddd HH:mm' }, meridiemParse: /凌晨|早上|上午|中午|下午|晚上/, meridiemHour: function meridiemHour(hour, meridiem) { @@ -24249,6 +25172,7 @@ future: '%s内', past: '%s前', s: '几秒', + ss: '%d 秒', m: '1 分钟', mm: '%d 分钟', h: '1 小时', @@ -24270,9 +25194,9 @@ return zhCn; }); -/***/ }, -/* 159 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 163 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -24298,14 +25222,14 @@ longDateFormat: { LT: 'HH:mm', LTS: 'HH:mm:ss', - L: 'YYYY年MMMD日', - LL: 'YYYY年MMMD日', - LLL: 'YYYY年MMMD日 HH:mm', - LLLL: 'YYYY年MMMD日dddd HH:mm', - l: 'YYYY年MMMD日', - ll: 'YYYY年MMMD日', - lll: 'YYYY年MMMD日 HH:mm', - llll: 'YYYY年MMMD日dddd HH:mm' + L: 'YYYY/MM/DD', + LL: 'YYYY年M月D日', + LLL: 'YYYY年M月D日 HH:mm', + LLLL: 'YYYY年M月D日dddd HH:mm', + l: 'YYYY/M/D', + ll: 'YYYY年M月D日', + lll: 'YYYY年M月D日 HH:mm', + llll: 'YYYY年M月D日dddd HH:mm' }, meridiemParse: /凌晨|早上|上午|中午|下午|晚上/, meridiemHour: function meridiemHour(hour, meridiem) { @@ -24364,6 +25288,7 @@ future: '%s內', past: '%s前', s: '幾秒', + ss: '%d 秒', m: '1 分鐘', mm: '%d 分鐘', h: '1 小時', @@ -24380,9 +25305,9 @@ return zhHk; }); -/***/ }, -/* 160 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 164 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;'use strict'; @@ -24407,14 +25332,14 @@ longDateFormat: { LT: 'HH:mm', LTS: 'HH:mm:ss', - L: 'YYYY年MMMD日', - LL: 'YYYY年MMMD日', - LLL: 'YYYY年MMMD日 HH:mm', - LLLL: 'YYYY年MMMD日dddd HH:mm', - l: 'YYYY年MMMD日', - ll: 'YYYY年MMMD日', - lll: 'YYYY年MMMD日 HH:mm', - llll: 'YYYY年MMMD日dddd HH:mm' + L: 'YYYY/MM/DD', + LL: 'YYYY年M月D日', + LLL: 'YYYY年M月D日 HH:mm', + LLLL: 'YYYY年M月D日dddd HH:mm', + l: 'YYYY/M/D', + ll: 'YYYY年M月D日', + lll: 'YYYY年M月D日 HH:mm', + llll: 'YYYY年M月D日dddd HH:mm' }, meridiemParse: /凌晨|早上|上午|中午|下午|晚上/, meridiemHour: function meridiemHour(hour, meridiem) { @@ -24473,6 +25398,7 @@ future: '%s內', past: '%s前', s: '幾秒', + ss: '%d 秒', m: '1 分鐘', mm: '%d 分鐘', h: '1 小時', @@ -24489,22 +25415,22 @@ return zhTw; }); -/***/ }, -/* 161 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 165 */ +/***/ (function(module, exports, __webpack_require__) { 'use strict'; - var wsurl = __webpack_require__(162); - var url = __webpack_require__(163); + var wsurl = __webpack_require__(166); + var url = __webpack_require__(167); module.exports = function wsEndpoint(path) { return wsurl(url.resolve(document.location.href, path)); }; -/***/ }, -/* 162 */ -/***/ function(module, exports) { +/***/ }), +/* 166 */ +/***/ (function(module, exports) { 'use strict'; @@ -24536,9 +25462,9 @@ return url.replace(reHttpUrl, 'ws$1'); }; -/***/ }, -/* 163 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 167 */ +/***/ (function(module, exports, __webpack_require__) { // Copyright Joyent, Inc. and other Node contributors. // @@ -24565,8 +25491,8 @@ var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; - var punycode = __webpack_require__(164); - var util = __webpack_require__(166); + var punycode = __webpack_require__(168); + var util = __webpack_require__(170); exports.parse = urlParse; exports.resolve = urlResolve; @@ -24649,7 +25575,7 @@ 'gopher:': true, 'file:': true }, - querystring = __webpack_require__(167); + querystring = __webpack_require__(171); function urlParse(url, parseQueryString, slashesDenoteHost) { if (url && util.isObject(url) && url instanceof Url) return url; @@ -25250,9 +26176,9 @@ if (host) this.hostname = host; }; -/***/ }, -/* 164 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 168 */ +/***/ (function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_RESULT__;/* WEBPACK VAR INJECTION */(function(module, global) {'use strict'; @@ -25764,7 +26690,7 @@ /** Expose `punycode` */ // Some AMD build optimizers, like r.js, check for specific condition patterns // like the following: - if ("function" == 'function' && _typeof(__webpack_require__(165)) == 'object' && __webpack_require__(165)) { + if ("function" == 'function' && _typeof(__webpack_require__(169)) == 'object' && __webpack_require__(169)) { !(__WEBPACK_AMD_DEFINE_RESULT__ = function () { return punycode; }.call(exports, __webpack_require__, exports, module), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); @@ -25785,17 +26711,17 @@ })(undefined); /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(44)(module), (function() { return this; }()))) -/***/ }, -/* 165 */ -/***/ function(module, exports) { +/***/ }), +/* 169 */ +/***/ (function(module, exports) { /* WEBPACK VAR INJECTION */(function(__webpack_amd_options__) {module.exports = __webpack_amd_options__; /* WEBPACK VAR INJECTION */}.call(exports, {})) -/***/ }, -/* 166 */ -/***/ function(module, exports) { +/***/ }), +/* 170 */ +/***/ (function(module, exports) { 'use strict'; @@ -25816,18 +26742,18 @@ } }; -/***/ }, -/* 167 */ -/***/ function(module, exports, __webpack_require__) { +/***/ }), +/* 171 */ +/***/ (function(module, exports, __webpack_require__) { 'use strict'; - exports.decode = exports.parse = __webpack_require__(168); - exports.encode = exports.stringify = __webpack_require__(169); + exports.decode = exports.parse = __webpack_require__(172); + exports.encode = exports.stringify = __webpack_require__(173); -/***/ }, -/* 168 */ -/***/ function(module, exports) { +/***/ }), +/* 172 */ +/***/ (function(module, exports) { // Copyright Joyent, Inc. and other Node contributors. // @@ -25914,9 +26840,9 @@ return obj; }; -/***/ }, -/* 169 */ -/***/ function(module, exports) { +/***/ }), +/* 173 */ +/***/ (function(module, exports) { // Copyright Joyent, Inc. and other Node contributors. // @@ -25983,9 +26909,9 @@ return encodeURIComponent(stringifyPrimitive(name)) + eq + encodeURIComponent(stringifyPrimitive(obj)); }; -/***/ }, -/* 170 */ -/***/ function(module, exports) { +/***/ }), +/* 174 */ +/***/ (function(module, exports) { 'use strict'; @@ -25997,5 +26923,5 @@ } }; -/***/ } +/***/ }) /******/ ]); \ No newline at end of file