(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.writtenNumber = f()}})(function(){var define,module,exports;return (function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i -1 && (unit.useBaseExceptionWhenNoTrailingNumbers ? i === 0 && ret.length : true); if (!shouldUseBaseException) { ret.push(alternativeBaseCardinals[r * scale[i]] || baseCardinals[r * scale[i]]); } else { ret.push(r > 1 && unit.plural ? unit.plural : unit.singular); } continue; } var str; if (typeof unit === "string") { str = unit; } else if (r === 1 || unit.useSingularEnding && r % 10 === 1 && (!unit.avoidEndingRules || unit.avoidEndingRules.indexOf(r) < 0)) { str = unit.singular; } else if (unit.few && (r > 1 && r < 5 || unit.useFewEnding && r % 10 > 1 && r % 10 < 5 && (!unit.avoidEndingRules || unit.avoidEndingRules.indexOf(r) < 0))) { str = unit.few; } else { str = unit.plural && (!unit.avoidInNumberPlural || !m) ? unit.plural : unit.singular; // Languages with dual str = (r === 2 && unit.dual) ? unit.dual : str; // "restrictedPlural" : use plural only for 3 to 10 str = (r > 10 && unit.restrictedPlural) ? unit.singular : str; } if ( unit.avoidPrefixException && unit.avoidPrefixException.indexOf(r) > -1 ) { ret.push(str); continue; } var exception = language.unitExceptions[r]; var number = exception || writtenNumber( r, util.defaults( { // Languages with and exceptions need to set `noAnd` to false noAnd: !((language.andException && language.andException[r]) || unit.andException) && true, alternativeBase: unit.useAlternativeBase }, options ) ); n -= r * scale[i]; ret.push(number + " " + str); } var firstSignificantN = firstSignificant * Math.floor(n / firstSignificant); var rest = n - firstSignificantN; if ( language.andWhenTrailing && firstSignificant && 0 < rest && ret[0].indexOf(language.unitSeparator) !== 0 ) { ret = [ret[0], language.unitSeparator.replace(/\s+$/, "")].concat( ret.slice(1) ); } // Languages that have separators for all cardinals. if (language.allSeparator) { for (var j = 0; j < ret.length-1; j++) { ret[j] = language.allSeparator + ret[j]; } } var result = ret.reverse().join(" "); return result; } function handleSmallerThan100(n, language, unit, baseCardinals, alternativeBaseCardinals, options) { var dec = Math.floor(n / 10) * 10; unit = n - dec; if (unit) { return ( alternativeBaseCardinals[dec] || baseCardinals[dec] + language.baseSeparator + writtenNumber(unit, options) ); } return alternativeBaseCardinals[dec] || baseCardinals[dec]; } },{"./i18n/ar.json":1,"./i18n/az.json":2,"./i18n/en-indian.json":3,"./i18n/en.json":4,"./i18n/eo.json":5,"./i18n/es.json":6,"./i18n/fr.json":7,"./i18n/hu.json":8,"./i18n/id.json":9,"./i18n/it.json":10,"./i18n/pt-PT.json":11,"./i18n/pt.json":12,"./i18n/ru.json":13,"./i18n/tr.json":14,"./i18n/uk.json":15,"./i18n/vi.json":16,"./util":18}],18:[function(require,module,exports){ "use strict"; /** * Merges a set of default keys with a target object * (Like _.defaults, but will also extend onto null/undefined) * * @param {Object} [target] The object to extend * @param {Object} defaults The object to default to * @return {Object} extendedTarget */ function defaults(target, defs) { if (target == null) target = {}; var ret = {}; var keys = Object.keys(defs); for (var i = 0, len = keys.length; i < len; i++) { var key = keys[i]; ret[key] = target[key] || defs[key]; } return ret; } exports.defaults = defaults; },{}]},{},[17])(17) });