http://git-wip-us.apache.org/repos/asf/struts/blob/7a350b02/archetypes/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/js/lib/angular/angular-message-format.js ---------------------------------------------------------------------- diff --git a/archetypes/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/js/lib/angular/angular-message-format.js b/archetypes/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/js/lib/angular/angular-message-format.js deleted file mode 100644 index 0c3c6c1..0000000 --- a/archetypes/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/js/lib/angular/angular-message-format.js +++ /dev/null @@ -1,980 +0,0 @@ -/** - * @license AngularJS v1.5.0 - * (c) 2010-2016 Google, Inc. http://angularjs.org - * License: MIT - */ -(function(window, angular, undefined) {'use strict'; - -// NOTE: ADVANCED_OPTIMIZATIONS mode. -// -// This file is compiled with Closure compiler's ADVANCED_OPTIMIZATIONS flag! Be wary of using -// constructs incompatible with that mode. - -var $interpolateMinErr = window['angular']['$interpolateMinErr']; - -var noop = window['angular']['noop'], - isFunction = window['angular']['isFunction'], - toJson = window['angular']['toJson']; - -function stringify(value) { - if (value == null /* null/undefined */) { return ''; } - switch (typeof value) { - case 'string': return value; - case 'number': return '' + value; - default: return toJson(value); - } -} - -// Convert an index into the string into line/column for use in error messages -// As such, this doesn't have to be efficient. -function indexToLineAndColumn(text, index) { - var lines = text.split(/\n/g); - for (var i=0; i < lines.length; i++) { - var line=lines[i]; - if (index >= line.length) { - index -= line.length; - } else { - return { line: i + 1, column: index + 1 }; - } - } -} -var PARSE_CACHE_FOR_TEXT_LITERALS = Object.create(null); - -function parseTextLiteral(text) { - var cachedFn = PARSE_CACHE_FOR_TEXT_LITERALS[text]; - if (cachedFn != null) { - return cachedFn; - } - function parsedFn(context) { return text; } - parsedFn['$$watchDelegate'] = function watchDelegate(scope, listener, objectEquality) { - var unwatch = scope['$watch'](noop, - function textLiteralWatcher() { - if (isFunction(listener)) { listener.call(null, text, text, scope); } - unwatch(); - }, - objectEquality); - return unwatch; - }; - PARSE_CACHE_FOR_TEXT_LITERALS[text] = parsedFn; - parsedFn['exp'] = text; // Needed to pretend to be $interpolate for tests copied from interpolateSpec.js - parsedFn['expressions'] = []; // Require this to call $compile.$$addBindingInfo() which allows Protractor to find elements by binding. - return parsedFn; -} - -function subtractOffset(expressionFn, offset) { - if (offset === 0) { - return expressionFn; - } - function minusOffset(value) { - return (value == void 0) ? value : value - offset; - } - function parsedFn(context) { return minusOffset(expressionFn(context)); } - var unwatch; - parsedFn['$$watchDelegate'] = function watchDelegate(scope, listener, objectEquality) { - unwatch = scope['$watch'](expressionFn, - function pluralExpressionWatchListener(newValue, oldValue) { - if (isFunction(listener)) { listener.call(null, minusOffset(newValue), minusOffset(oldValue), scope); } - }, - objectEquality); - return unwatch; - }; - return parsedFn; -} - -// NOTE: ADVANCED_OPTIMIZATIONS mode. -// -// This file is compiled with Closure compiler's ADVANCED_OPTIMIZATIONS flag! Be wary of using -// constructs incompatible with that mode. - -/* global $interpolateMinErr: false */ -/* global isFunction: false */ -/* global noop: false */ - -/** - * @constructor - * @private - */ -function MessageSelectorBase(expressionFn, choices) { - var self = this; - this.expressionFn = expressionFn; - this.choices = choices; - if (choices["other"] === void 0) { - throw $interpolateMinErr('reqother', 'âotherâ is a required option.'); - } - this.parsedFn = function(context) { return self.getResult(context); }; - this.parsedFn['$$watchDelegate'] = function $$watchDelegate(scope, listener, objectEquality) { - return self.watchDelegate(scope, listener, objectEquality); - }; - this.parsedFn['exp'] = expressionFn['exp']; - this.parsedFn['expressions'] = expressionFn['expressions']; -} - -MessageSelectorBase.prototype.getMessageFn = function getMessageFn(value) { - return this.choices[this.categorizeValue(value)]; -}; - -MessageSelectorBase.prototype.getResult = function getResult(context) { - return this.getMessageFn(this.expressionFn(context))(context); -}; - -MessageSelectorBase.prototype.watchDelegate = function watchDelegate(scope, listener, objectEquality) { - var watchers = new MessageSelectorWatchers(this, scope, listener, objectEquality); - return function() { watchers.cancelWatch(); }; -}; - -/** - * @constructor - * @private - */ -function MessageSelectorWatchers(msgSelector, scope, listener, objectEquality) { - var self = this; - this.scope = scope; - this.msgSelector = msgSelector; - this.listener = listener; - this.objectEquality = objectEquality; - this.lastMessage = void 0; - this.messageFnWatcher = noop; - var expressionFnListener = function(newValue, oldValue) { return self.expressionFnListener(newValue, oldValue); }; - this.expressionFnWatcher = scope['$watch'](msgSelector.expressionFn, expressionFnListener, objectEquality); -} - -MessageSelectorWatchers.prototype.expressionFnListener = function expressionFnListener(newValue, oldValue) { - var self = this; - this.messageFnWatcher(); - var messageFnListener = function(newMessage, oldMessage) { return self.messageFnListener(newMessage, oldMessage); }; - var messageFn = this.msgSelector.getMessageFn(newValue); - this.messageFnWatcher = this.scope['$watch'](messageFn, messageFnListener, this.objectEquality); -}; - -MessageSelectorWatchers.prototype.messageFnListener = function messageFnListener(newMessage, oldMessage) { - if (isFunction(this.listener)) { - this.listener.call(null, newMessage, newMessage === oldMessage ? newMessage : this.lastMessage, this.scope); - } - this.lastMessage = newMessage; -}; - -MessageSelectorWatchers.prototype.cancelWatch = function cancelWatch() { - this.expressionFnWatcher(); - this.messageFnWatcher(); -}; - -/** - * @constructor - * @extends MessageSelectorBase - * @private - */ -function SelectMessage(expressionFn, choices) { - MessageSelectorBase.call(this, expressionFn, choices); -} - -function SelectMessageProto() {} -SelectMessageProto.prototype = MessageSelectorBase.prototype; - -SelectMessage.prototype = new SelectMessageProto(); -SelectMessage.prototype.categorizeValue = function categorizeSelectValue(value) { - return (this.choices[value] !== void 0) ? value : "other"; -}; - -/** - * @constructor - * @extends MessageSelectorBase - * @private - */ -function PluralMessage(expressionFn, choices, offset, pluralCat) { - MessageSelectorBase.call(this, expressionFn, choices); - this.offset = offset; - this.pluralCat = pluralCat; -} - -function PluralMessageProto() {} -PluralMessageProto.prototype = MessageSelectorBase.prototype; - -PluralMessage.prototype = new PluralMessageProto(); -PluralMessage.prototype.categorizeValue = function categorizePluralValue(value) { - if (isNaN(value)) { - return "other"; - } else if (this.choices[value] !== void 0) { - return value; - } else { - var category = this.pluralCat(value - this.offset); - return (this.choices[category] !== void 0) ? category : "other"; - } -}; - -// NOTE: ADVANCED_OPTIMIZATIONS mode. -// -// This file is compiled with Closure compiler's ADVANCED_OPTIMIZATIONS flag! Be wary of using -// constructs incompatible with that mode. - -/* global $interpolateMinErr: false */ -/* global isFunction: false */ -/* global parseTextLiteral: false */ - -/** - * @constructor - * @private - */ -function InterpolationParts(trustedContext, allOrNothing) { - this.trustedContext = trustedContext; - this.allOrNothing = allOrNothing; - this.textParts = []; - this.expressionFns = []; - this.expressionIndices = []; - this.partialText = ''; - this.concatParts = null; -} - -InterpolationParts.prototype.flushPartialText = function flushPartialText() { - if (this.partialText) { - if (this.concatParts == null) { - this.textParts.push(this.partialText); - } else { - this.textParts.push(this.concatParts.join('')); - this.concatParts = null; - } - this.partialText = ''; - } -}; - -InterpolationParts.prototype.addText = function addText(text) { - if (text.length) { - if (!this.partialText) { - this.partialText = text; - } else if (this.concatParts) { - this.concatParts.push(text); - } else { - this.concatParts = [this.partialText, text]; - } - } -}; - -InterpolationParts.prototype.addExpressionFn = function addExpressionFn(expressionFn) { - this.flushPartialText(); - this.expressionIndices.push(this.textParts.length); - this.expressionFns.push(expressionFn); - this.textParts.push(''); -}; - -InterpolationParts.prototype.getExpressionValues = function getExpressionValues(context) { - var expressionValues = new Array(this.expressionFns.length); - for (var i = 0; i < this.expressionFns.length; i++) { - expressionValues[i] = this.expressionFns[i](context); - } - return expressionValues; -}; - -InterpolationParts.prototype.getResult = function getResult(expressionValues) { - for (var i = 0; i < this.expressionIndices.length; i++) { - var expressionValue = expressionValues[i]; - if (this.allOrNothing && expressionValue === void 0) return; - this.textParts[this.expressionIndices[i]] = expressionValue; - } - return this.textParts.join(''); -}; - - -InterpolationParts.prototype.toParsedFn = function toParsedFn(mustHaveExpression, originalText) { - var self = this; - this.flushPartialText(); - if (mustHaveExpression && this.expressionFns.length === 0) { - return void 0; - } - if (this.textParts.length === 0) { - return parseTextLiteral(''); - } - if (this.trustedContext && this.textParts.length > 1) { - $interpolateMinErr['throwNoconcat'](originalText); - } - if (this.expressionFns.length === 0) { - if (this.textParts.length != 1) { this.errorInParseLogic(); } - return parseTextLiteral(this.textParts[0]); - } - var parsedFn = function(context) { - return self.getResult(self.getExpressionValues(context)); - }; - parsedFn['$$watchDelegate'] = function $$watchDelegate(scope, listener, objectEquality) { - return self.watchDelegate(scope, listener, objectEquality); - }; - - parsedFn['exp'] = originalText; // Needed to pretend to be $interpolate for tests copied from interpolateSpec.js - parsedFn['expressions'] = new Array(this.expressionFns.length); // Require this to call $compile.$$addBindingInfo() which allows Protractor to find elements by binding. - for (var i = 0; i < this.expressionFns.length; i++) { - parsedFn['expressions'][i] = this.expressionFns[i]['exp']; - } - - return parsedFn; -}; - -InterpolationParts.prototype.watchDelegate = function watchDelegate(scope, listener, objectEquality) { - var watcher = new InterpolationPartsWatcher(this, scope, listener, objectEquality); - return function() { watcher.cancelWatch(); }; -}; - -function InterpolationPartsWatcher(interpolationParts, scope, listener, objectEquality) { - this.interpolationParts = interpolationParts; - this.scope = scope; - this.previousResult = (void 0); - this.listener = listener; - var self = this; - this.expressionFnsWatcher = scope['$watchGroup'](interpolationParts.expressionFns, function(newExpressionValues, oldExpressionValues) { - self.watchListener(newExpressionValues, oldExpressionValues); - }); -} - -InterpolationPartsWatcher.prototype.watchListener = function watchListener(newExpressionValues, oldExpressionValues) { - var result = this.interpolationParts.getResult(newExpressionValues); - if (isFunction(this.listener)) { - this.listener.call(null, result, newExpressionValues === oldExpressionValues ? result : this.previousResult, this.scope); - } - this.previousResult = result; -}; - -InterpolationPartsWatcher.prototype.cancelWatch = function cancelWatch() { - this.expressionFnsWatcher(); -}; - -// NOTE: ADVANCED_OPTIMIZATIONS mode. -// -// This file is compiled with Closure compiler's ADVANCED_OPTIMIZATIONS flag! Be wary of using -// constructs incompatible with that mode. - -/* global $interpolateMinErr: false */ -/* global indexToLineAndColumn: false */ -/* global InterpolationParts: false */ -/* global PluralMessage: false */ -/* global SelectMessage: false */ -/* global subtractOffset: false */ - -// The params src and dst are exactly one of two types: NestedParserState or MessageFormatParser. -// This function is fully optimized by V8. (inspect via IRHydra or --trace-deopt.) -// The idea behind writing it this way is to avoid repeating oneself. This is the ONE place where -// the parser state that is saved/restored when parsing nested mustaches is specified. -function copyNestedParserState(src, dst) { - dst.expressionFn = src.expressionFn; - dst.expressionMinusOffsetFn = src.expressionMinusOffsetFn; - dst.pluralOffset = src.pluralOffset; - dst.choices = src.choices; - dst.choiceKey = src.choiceKey; - dst.interpolationParts = src.interpolationParts; - dst.ruleChoiceKeyword = src.ruleChoiceKeyword; - dst.msgStartIndex = src.msgStartIndex; - dst.expressionStartIndex = src.expressionStartIndex; -} - -function NestedParserState(parser) { - copyNestedParserState(parser, this); -} - -/** - * @constructor - * @private - */ -function MessageFormatParser(text, startIndex, $parse, pluralCat, stringifier, - mustHaveExpression, trustedContext, allOrNothing) { - this.text = text; - this.index = startIndex || 0; - this.$parse = $parse; - this.pluralCat = pluralCat; - this.stringifier = stringifier; - this.mustHaveExpression = !!mustHaveExpression; - this.trustedContext = trustedContext; - this.allOrNothing = !!allOrNothing; - this.expressionFn = null; - this.expressionMinusOffsetFn = null; - this.pluralOffset = null; - this.choices = null; - this.choiceKey = null; - this.interpolationParts = null; - this.msgStartIndex = null; - this.nestedStateStack = []; - this.parsedFn = null; - this.rule = null; - this.ruleStack = null; - this.ruleChoiceKeyword = null; - this.interpNestLevel = null; - this.expressionStartIndex = null; - this.stringStartIndex = null; - this.stringQuote = null; - this.stringInterestsRe = null; - this.angularOperatorStack = null; - this.textPart = null; -} - -// preserve v8 optimization. -var EMPTY_STATE = new NestedParserState(new MessageFormatParser( - /* text= */ '', /* startIndex= */ 0, /* $parse= */ null, /* pluralCat= */ null, /* stringifier= */ null, - /* mustHaveExpression= */ false, /* trustedContext= */ null, /* allOrNothing */ false)); - -MessageFormatParser.prototype.pushState = function pushState() { - this.nestedStateStack.push(new NestedParserState(this)); - copyNestedParserState(EMPTY_STATE, this); -}; - -MessageFormatParser.prototype.popState = function popState() { - if (this.nestedStateStack.length === 0) { - this.errorInParseLogic(); - } - var previousState = this.nestedStateStack.pop(); - copyNestedParserState(previousState, this); -}; - -// Oh my JavaScript! Who knew you couldn't match a regex at a specific -// location in a string but will always search forward?! -// Apparently you'll be growing this ability via the sticky flag (y) in -// ES6. I'll just to work around you for now. -MessageFormatParser.prototype.matchRe = function matchRe(re, search) { - re.lastIndex = this.index; - var match = re.exec(this.text); - if (match != null && (search === true || (match.index == this.index))) { - this.index = re.lastIndex; - return match; - } - return null; -}; - -MessageFormatParser.prototype.searchRe = function searchRe(re) { - return this.matchRe(re, true); -}; - - -MessageFormatParser.prototype.consumeRe = function consumeRe(re) { - // Without the sticky flag, we can't use the .test() method to consume a - // match at the current index. Instead, we'll use the slower .exec() method - // and verify match.index. - return !!this.matchRe(re); -}; - -// Run through our grammar avoiding deeply nested function call chains. -MessageFormatParser.prototype.run = function run(initialRule) { - this.ruleStack = [initialRule]; - do { - this.rule = this.ruleStack.pop(); - while (this.rule) { - this.rule(); - } - this.assertRuleOrNull(this.rule); - } while (this.ruleStack.length > 0); -}; - -MessageFormatParser.prototype.errorInParseLogic = function errorInParseLogic() { - throw $interpolateMinErr('logicbug', - 'The messageformat parser has encountered an internal error. Please file a github issue against the AngularJS project and provide this message text that triggers the bug. Text: â{0}â', - this.text); -}; - -MessageFormatParser.prototype.assertRuleOrNull = function assertRuleOrNull(rule) { - if (rule === void 0) { - this.errorInParseLogic(); - } -}; - -var NEXT_WORD_RE = /\s*(\w+)\s*/g; -MessageFormatParser.prototype.errorExpecting = function errorExpecting() { - // What was wrong with the syntax? Unsupported type, missing comma, or something else? - var match = this.matchRe(NEXT_WORD_RE), position; - if (match == null) { - position = indexToLineAndColumn(this.text, this.index); - throw $interpolateMinErr('reqarg', - 'Expected one of âpluralâ or âselectâ at line {0}, column {1} of text â{2}â', - position.line, position.column, this.text); - } - var word = match[1]; - if (word == "select" || word == "plural") { - position = indexToLineAndColumn(this.text, this.index); - throw $interpolateMinErr('reqcomma', - 'Expected a comma after the keyword â{0}â at line {1}, column {2} of text â{3}â', - word, position.line, position.column, this.text); - } else { - position = indexToLineAndColumn(this.text, this.index); - throw $interpolateMinErr('unknarg', - 'Unsupported keyword â{0}â at line {0}, column {1}. Only âpluralâ and âselectâ are currently supported. Text: â{3}â', - word, position.line, position.column, this.text); - } -}; - -var STRING_START_RE = /['"]/g; -MessageFormatParser.prototype.ruleString = function ruleString() { - var match = this.matchRe(STRING_START_RE); - if (match == null) { - var position = indexToLineAndColumn(this.text, this.index); - throw $interpolateMinErr('wantstring', - 'Expected the beginning of a string at line {0}, column {1} in text â{2}â', - position.line, position.column, this.text); - } - this.startStringAtMatch(match); -}; - -MessageFormatParser.prototype.startStringAtMatch = function startStringAtMatch(match) { - this.stringStartIndex = match.index; - this.stringQuote = match[0]; - this.stringInterestsRe = this.stringQuote == "'" ? SQUOTED_STRING_INTEREST_RE : DQUOTED_STRING_INTEREST_RE; - this.rule = this.ruleInsideString; -}; - -var SQUOTED_STRING_INTEREST_RE = /\\(?:\\|'|u[0-9A-Fa-f]{4}|x[0-9A-Fa-f]{2}|[0-7]{3}|\r\n|\n|[\s\S])|'/g; -var DQUOTED_STRING_INTEREST_RE = /\\(?:\\|"|u[0-9A-Fa-f]{4}|x[0-9A-Fa-f]{2}|[0-7]{3}|\r\n|\n|[\s\S])|"/g; -MessageFormatParser.prototype.ruleInsideString = function ruleInsideString() { - var match = this.searchRe(this.stringInterestsRe); - if (match == null) { - var position = indexToLineAndColumn(this.text, this.stringStartIndex); - throw $interpolateMinErr('untermstr', - 'The string beginning at line {0}, column {1} is unterminated in text â{2}â', - position.line, position.column, this.text); - } - var chars = match[0]; - if (match == this.stringQuote) { - this.rule = null; - } -}; - -var PLURAL_OR_SELECT_ARG_TYPE_RE = /\s*(plural|select)\s*,\s*/g; -MessageFormatParser.prototype.rulePluralOrSelect = function rulePluralOrSelect() { - var match = this.searchRe(PLURAL_OR_SELECT_ARG_TYPE_RE); - if (match == null) { - this.errorExpecting(); - } - var argType = match[1]; - switch (argType) { - case "plural": this.rule = this.rulePluralStyle; break; - case "select": this.rule = this.ruleSelectStyle; break; - default: this.errorInParseLogic(); - } -}; - -MessageFormatParser.prototype.rulePluralStyle = function rulePluralStyle() { - this.choices = Object.create(null); - this.ruleChoiceKeyword = this.rulePluralValueOrKeyword; - this.rule = this.rulePluralOffset; -}; - -MessageFormatParser.prototype.ruleSelectStyle = function ruleSelectStyle() { - this.choices = Object.create(null); - this.ruleChoiceKeyword = this.ruleSelectKeyword; - this.rule = this.ruleSelectKeyword; -}; - -var NUMBER_RE = /[0]|(?:[1-9][0-9]*)/g; -var PLURAL_OFFSET_RE = new RegExp("\\s*offset\\s*:\\s*(" + NUMBER_RE.source + ")", "g"); - -MessageFormatParser.prototype.rulePluralOffset = function rulePluralOffset() { - var match = this.matchRe(PLURAL_OFFSET_RE); - this.pluralOffset = (match == null) ? 0 : parseInt(match[1], 10); - this.expressionMinusOffsetFn = subtractOffset(this.expressionFn, this.pluralOffset); - this.rule = this.rulePluralValueOrKeyword; -}; - -MessageFormatParser.prototype.assertChoiceKeyIsNew = function assertChoiceKeyIsNew(choiceKey, index) { - if (this.choices[choiceKey] !== void 0) { - var position = indexToLineAndColumn(this.text, index); - throw $interpolateMinErr('dupvalue', - 'The choice â{0}â is specified more than once. Duplicate key is at line {1}, column {2} in text â{3}â', - choiceKey, position.line, position.column, this.text); - } -}; - -var SELECT_KEYWORD = /\s*(\w+)/g; -MessageFormatParser.prototype.ruleSelectKeyword = function ruleSelectKeyword() { - var match = this.matchRe(SELECT_KEYWORD); - if (match == null) { - this.parsedFn = new SelectMessage(this.expressionFn, this.choices).parsedFn; - this.rule = null; - return; - } - this.choiceKey = match[1]; - this.assertChoiceKeyIsNew(this.choiceKey, match.index); - this.rule = this.ruleMessageText; -}; - -var EXPLICIT_VALUE_OR_KEYWORD_RE = new RegExp("\\s*(?:(?:=(" + NUMBER_RE.source + "))|(\\w+))", "g"); -MessageFormatParser.prototype.rulePluralValueOrKeyword = function rulePluralValueOrKeyword() { - var match = this.matchRe(EXPLICIT_VALUE_OR_KEYWORD_RE); - if (match == null) { - this.parsedFn = new PluralMessage(this.expressionFn, this.choices, this.pluralOffset, this.pluralCat).parsedFn; - this.rule = null; - return; - } - if (match[1] != null) { - this.choiceKey = parseInt(match[1], 10); - } else { - this.choiceKey = match[2]; - } - this.assertChoiceKeyIsNew(this.choiceKey, match.index); - this.rule = this.ruleMessageText; -}; - -var BRACE_OPEN_RE = /\s*{/g; -var BRACE_CLOSE_RE = /}/g; -MessageFormatParser.prototype.ruleMessageText = function ruleMessageText() { - if (!this.consumeRe(BRACE_OPEN_RE)) { - var position = indexToLineAndColumn(this.text, this.index); - throw $interpolateMinErr('reqopenbrace', - 'The plural choice â{0}â must be followed by a message in braces at line {1}, column {2} in text â{3}â', - this.choiceKey, position.line, position.column, this.text); - } - this.msgStartIndex = this.index; - this.interpolationParts = new InterpolationParts(this.trustedContext, this.allOrNothing); - this.rule = this.ruleInInterpolationOrMessageText; -}; - -// Note: Since "\" is used as an escape character, don't allow it to be part of the -// startSymbol/endSymbol when I add the feature to allow them to be redefined. -var INTERP_OR_END_MESSAGE_RE = /\\.|{{|}/g; -var INTERP_OR_PLURALVALUE_OR_END_MESSAGE_RE = /\\.|{{|#|}/g; -var ESCAPE_OR_MUSTACHE_BEGIN_RE = /\\.|{{/g; -MessageFormatParser.prototype.advanceInInterpolationOrMessageText = function advanceInInterpolationOrMessageText() { - var currentIndex = this.index, match, re; - if (this.ruleChoiceKeyword == null) { // interpolation - match = this.searchRe(ESCAPE_OR_MUSTACHE_BEGIN_RE); - if (match == null) { // End of interpolation text. Nothing more to process. - this.textPart = this.text.substring(currentIndex); - this.index = this.text.length; - return null; - } - } else { - match = this.searchRe(this.ruleChoiceKeyword == this.rulePluralValueOrKeyword ? - INTERP_OR_PLURALVALUE_OR_END_MESSAGE_RE : INTERP_OR_END_MESSAGE_RE); - if (match == null) { - var position = indexToLineAndColumn(this.text, this.msgStartIndex); - throw $interpolateMinErr('reqendbrace', - 'The plural/select choice â{0}â message starting at line {1}, column {2} does not have an ending closing brace. Text â{3}â', - this.choiceKey, position.line, position.column, this.text); - } - } - // match is non-null. - var token = match[0]; - this.textPart = this.text.substring(currentIndex, match.index); - return token; -}; - -MessageFormatParser.prototype.ruleInInterpolationOrMessageText = function ruleInInterpolationOrMessageText() { - var currentIndex = this.index; - var token = this.advanceInInterpolationOrMessageText(); - if (token == null) { - // End of interpolation text. Nothing more to process. - this.index = this.text.length; - this.interpolationParts.addText(this.text.substring(currentIndex)); - this.rule = null; - return; - } - if (token[0] == "\\") { - // unescape next character and continue - this.interpolationParts.addText(this.textPart + token[1]); - return; - } - this.interpolationParts.addText(this.textPart); - if (token == "{{") { - this.pushState(); - this.ruleStack.push(this.ruleEndMustacheInInterpolationOrMessage); - this.rule = this.ruleEnteredMustache; - } else if (token == "}") { - this.choices[this.choiceKey] = this.interpolationParts.toParsedFn(/*mustHaveExpression=*/false, this.text); - this.rule = this.ruleChoiceKeyword; - } else if (token == "#") { - this.interpolationParts.addExpressionFn(this.expressionMinusOffsetFn); - } else { - this.errorInParseLogic(); - } -}; - -MessageFormatParser.prototype.ruleInterpolate = function ruleInterpolate() { - this.interpolationParts = new InterpolationParts(this.trustedContext, this.allOrNothing); - this.rule = this.ruleInInterpolation; -}; - -MessageFormatParser.prototype.ruleInInterpolation = function ruleInInterpolation() { - var currentIndex = this.index; - var match = this.searchRe(ESCAPE_OR_MUSTACHE_BEGIN_RE); - if (match == null) { - // End of interpolation text. Nothing more to process. - this.index = this.text.length; - this.interpolationParts.addText(this.text.substring(currentIndex)); - this.parsedFn = this.interpolationParts.toParsedFn(this.mustHaveExpression, this.text); - this.rule = null; - return; - } - var token = match[0]; - if (token[0] == "\\") { - // unescape next character and continue - this.interpolationParts.addText(this.text.substring(currentIndex, match.index) + token[1]); - return; - } - this.interpolationParts.addText(this.text.substring(currentIndex, match.index)); - this.pushState(); - this.ruleStack.push(this.ruleInterpolationEndMustache); - this.rule = this.ruleEnteredMustache; -}; - -MessageFormatParser.prototype.ruleInterpolationEndMustache = function ruleInterpolationEndMustache() { - var expressionFn = this.parsedFn; - this.popState(); - this.interpolationParts.addExpressionFn(expressionFn); - this.rule = this.ruleInInterpolation; -}; - -MessageFormatParser.prototype.ruleEnteredMustache = function ruleEnteredMustache() { - this.parsedFn = null; - this.ruleStack.push(this.ruleEndMustache); - this.rule = this.ruleAngularExpression; -}; - -MessageFormatParser.prototype.ruleEndMustacheInInterpolationOrMessage = function ruleEndMustacheInInterpolationOrMessage() { - var expressionFn = this.parsedFn; - this.popState(); - this.interpolationParts.addExpressionFn(expressionFn); - this.rule = this.ruleInInterpolationOrMessageText; -}; - - - -var INTERP_END_RE = /\s*}}/g; -MessageFormatParser.prototype.ruleEndMustache = function ruleEndMustache() { - var match = this.matchRe(INTERP_END_RE); - if (match == null) { - var position = indexToLineAndColumn(this.text, this.index); - throw $interpolateMinErr('reqendinterp', - 'Expecting end of interpolation symbol, â{0}â, at line {1}, column {2} in text â{3}â', - '}}', position.line, position.column, this.text); - } - if (this.parsedFn == null) { - // If we parsed a MessageFormat extension, (e.g. select/plural today, maybe more some other - // day), then the result *has* to be a string and those rules would have already set - // this.parsedFn. If there was no MessageFormat extension, then there is no requirement to - // stringify the result and parsedFn isn't set. We set it here. While we could have set it - // unconditionally when exiting the Angular expression, I intend for us to not just replace - // $interpolate, but also to replace $parse in a future version (so ng-bind can work), and in - // such a case we do not want to unnecessarily stringify something if it's not going to be used - // in a string context. - this.parsedFn = this.$parse(this.expressionFn, this.stringifier); - this.parsedFn['exp'] = this.expressionFn['exp']; // Needed to pretend to be $interpolate for tests copied from interpolateSpec.js - this.parsedFn['expressions'] = this.expressionFn['expressions']; // Require this to call $compile.$$addBindingInfo() which allows Protractor to find elements by binding. - } - this.rule = null; -}; - -MessageFormatParser.prototype.ruleAngularExpression = function ruleAngularExpression() { - this.angularOperatorStack = []; - this.expressionStartIndex = this.index; - this.rule = this.ruleInAngularExpression; -}; - -function getEndOperator(opBegin) { - switch (opBegin) { - case "{": return "}"; - case "[": return "]"; - case "(": return ")"; - default: return null; - } -} - -function getBeginOperator(opEnd) { - switch (opEnd) { - case "}": return "{"; - case "]": return "["; - case ")": return "("; - default: return null; - } -} - -// TODO(chirayu): The interpolation endSymbol must also be accounted for. It -// just so happens that "}" is an operator so it's in the list below. But we -// should support any other type of start/end interpolation symbol. -var INTERESTING_OPERATORS_RE = /[[\]{}()'",]/g; -MessageFormatParser.prototype.ruleInAngularExpression = function ruleInAngularExpression() { - var startIndex = this.index; - var match = this.searchRe(INTERESTING_OPERATORS_RE); - var position; - if (match == null) { - if (this.angularOperatorStack.length === 0) { - // This is the end of the Angular expression so this is actually a - // success. Note that when inside an interpolation, this means we even - // consumed the closing interpolation symbols if they were curlies. This - // is NOT an error at this point but will become an error further up the - // stack when the part that saw the opening curlies is unable to find the - // closing ones. - this.index = this.text.length; - this.expressionFn = this.$parse(this.text.substring(this.expressionStartIndex, this.index)); - // Needed to pretend to be $interpolate for tests copied from interpolateSpec.js - this.expressionFn['exp'] = this.text.substring(this.expressionStartIndex, this.index); - this.expressionFn['expressions'] = this.expressionFn['expressions']; - this.rule = null; - return; - } - var innermostOperator = this.angularOperatorStack[0]; - throw $interpolateMinErr('badexpr', - 'Unexpected end of Angular expression. Expecting operator â{0}â at the end of the text â{1}â', - this.getEndOperator(innermostOperator), this.text); - } - var operator = match[0]; - if (operator == "'" || operator == '"') { - this.ruleStack.push(this.ruleInAngularExpression); - this.startStringAtMatch(match); - return; - } - if (operator == ",") { - if (this.trustedContext) { - position = indexToLineAndColumn(this.text, this.index); - throw $interpolateMinErr('unsafe', - 'Use of select/plural MessageFormat syntax is currently disallowed in a secure context ({0}). At line {1}, column {2} of text â{3}â', - this.trustedContext, position.line, position.column, this.text); - } - // only the top level comma has relevance. - if (this.angularOperatorStack.length === 0) { - // todo: does this need to be trimmed? - this.expressionFn = this.$parse(this.text.substring(this.expressionStartIndex, match.index)); - // Needed to pretend to be $interpolate for tests copied from interpolateSpec.js - this.expressionFn['exp'] = this.text.substring(this.expressionStartIndex, match.index); - this.expressionFn['expressions'] = this.expressionFn['expressions']; - this.rule = null; - this.rule = this.rulePluralOrSelect; - } - return; - } - if (getEndOperator(operator) != null) { - this.angularOperatorStack.unshift(operator); - return; - } - var beginOperator = getBeginOperator(operator); - if (beginOperator == null) { - this.errorInParseLogic(); - } - if (this.angularOperatorStack.length > 0) { - if (beginOperator == this.angularOperatorStack[0]) { - this.angularOperatorStack.shift(); - return; - } - position = indexToLineAndColumn(this.text, this.index); - throw $interpolateMinErr('badexpr', - 'Unexpected operator â{0}â at line {1}, column {2} in text. Was expecting â{3}â. Text: â{4}â', - operator, position.line, position.column, getEndOperator(this.angularOperatorStack[0]), this.text); - } - // We are trying to pop off the operator stack but there really isn't anything to pop off. - this.index = match.index; - this.expressionFn = this.$parse(this.text.substring(this.expressionStartIndex, this.index)); - // Needed to pretend to be $interpolate for tests copied from interpolateSpec.js - this.expressionFn['exp'] = this.text.substring(this.expressionStartIndex, this.index); - this.expressionFn['expressions'] = this.expressionFn['expressions']; - this.rule = null; -}; - -// NOTE: ADVANCED_OPTIMIZATIONS mode. -// -// This file is compiled with Closure compiler's ADVANCED_OPTIMIZATIONS flag! Be wary of using -// constructs incompatible with that mode. - -/* global $interpolateMinErr: false */ -/* global MessageFormatParser: false */ -/* global stringify: false */ - -/** - * @ngdoc service - * @name $$messageFormat - * - * @description - * Angular internal service to recognize MessageFormat extensions in interpolation expressions. - * For more information, see: - * https://docs.google.com/a/google.com/document/d/1pbtW2yvtmFBikfRrJd8VAsabiFkKezmYZ_PbgdjQOVU/edit - * - * ## Example - * - * <example name="ngMessageFormat-example" module="msgFmtExample" deps="angular-message-format.min.js"> - * <file name="index.html"> - * <div ng-controller="AppController"> - * <button ng-click="decreaseRecipients()" id="decreaseRecipients">decreaseRecipients</button><br> - * <span>{{recipients.length, plural, offset:1 - * =0 {{{sender.name}} gave no gifts (\#=#)} - * =1 {{{sender.name}} gave one gift to {{recipients[0].name}} (\#=#)} - * one {{{sender.name}} gave {{recipients[0].name}} and one other person a gift (\#=#)} - * other {{{sender.name}} gave {{recipients[0].name}} and # other people a gift (\#=#)} - * }}</span> - * </div> - * </file> - * - * <file name="script.js"> - * function Person(name, gender) { - * this.name = name; - * this.gender = gender; - * } - * - * var alice = new Person("Alice", "female"), - * bob = new Person("Bob", "male"), - * charlie = new Person("Charlie", "male"), - * harry = new Person("Harry Potter", "male"); - * - * angular.module('msgFmtExample', ['ngMessageFormat']) - * .controller('AppController', ['$scope', function($scope) { - * $scope.recipients = [alice, bob, charlie]; - * $scope.sender = harry; - * $scope.decreaseRecipients = function() { - * --$scope.recipients.length; - * }; - * }]); - * </file> - * - * <file name="protractor.js" type="protractor"> - * describe('MessageFormat plural', function() { - * it('should pluralize initial values', function() { - * var messageElem = element(by.binding('recipients.length')), decreaseRecipientsBtn = element(by.id('decreaseRecipients')); - * expect(messageElem.getText()).toEqual('Harry Potter gave Alice and 2 other people a gift (#=2)'); - * decreaseRecipientsBtn.click(); - * expect(messageElem.getText()).toEqual('Harry Potter gave Alice and one other person a gift (#=1)'); - * decreaseRecipientsBtn.click(); - * expect(messageElem.getText()).toEqual('Harry Potter gave one gift to Alice (#=0)'); - * decreaseRecipientsBtn.click(); - * expect(messageElem.getText()).toEqual('Harry Potter gave no gifts (#=-1)'); - * }); - * }); - * </file> - * </example> - */ -var $$MessageFormatFactory = ['$parse', '$locale', '$sce', '$exceptionHandler', function $$messageFormat( - $parse, $locale, $sce, $exceptionHandler) { - - function getStringifier(trustedContext, allOrNothing, text) { - return function stringifier(value) { - try { - value = trustedContext ? $sce['getTrusted'](trustedContext, value) : $sce['valueOf'](value); - return allOrNothing && (value === void 0) ? value : stringify(value); - } catch (err) { - $exceptionHandler($interpolateMinErr['interr'](text, err)); - } - }; - } - - function interpolate(text, mustHaveExpression, trustedContext, allOrNothing) { - var stringifier = getStringifier(trustedContext, allOrNothing, text); - var parser = new MessageFormatParser(text, 0, $parse, $locale['pluralCat'], stringifier, - mustHaveExpression, trustedContext, allOrNothing); - parser.run(parser.ruleInterpolate); - return parser.parsedFn; - } - - return { - 'interpolate': interpolate - }; -}]; - -var $$interpolateDecorator = ['$$messageFormat', '$delegate', function $$interpolateDecorator($$messageFormat, $interpolate) { - if ($interpolate['startSymbol']() != "{{" || $interpolate['endSymbol']() != "}}") { - throw $interpolateMinErr('nochgmustache', 'angular-message-format.js currently does not allow you to use custom start and end symbols for interpolation.'); - } - var interpolate = $$messageFormat['interpolate']; - interpolate['startSymbol'] = $interpolate['startSymbol']; - interpolate['endSymbol'] = $interpolate['endSymbol']; - return interpolate; -}]; - - -/** - * @ngdoc module - * @name ngMessageFormat - * @packageName angular-message-format - * @description - */ -var module = window['angular']['module']('ngMessageFormat', ['ng']); -module['factory']('$$messageFormat', $$MessageFormatFactory); -module['config'](['$provide', function($provide) { - $provide['decorator']('$interpolate', $$interpolateDecorator); -}]); - - -})(window, window.angular);
http://git-wip-us.apache.org/repos/asf/struts/blob/7a350b02/archetypes/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/js/lib/angular/angular-message-format.min.js ---------------------------------------------------------------------- diff --git a/archetypes/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/js/lib/angular/angular-message-format.min.js b/archetypes/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/js/lib/angular/angular-message-format.min.js deleted file mode 100644 index f85a587..0000000 --- a/archetypes/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/js/lib/angular/angular-message-format.min.js +++ /dev/null @@ -1,26 +0,0 @@ -/* - AngularJS v1.5.0 - (c) 2010-2016 Google, Inc. http://angularjs.org - License: MIT -*/ -(function(h){'use strict';function C(a){if(null==a)return"";switch(typeof a){case "string":return a;case "number":return""+a;default:return D(a)}}function f(a,b){for(var d=a.split(/\n/g),k=0;k<d.length;k++){var c=d[k];if(b>=c.length)b-=c.length;else return{h:k+1,f:b+1}}}function t(a){function b(){return a}var d=u[a];if(null!=d)return d;b.$$watchDelegate=function(b,d,c){var e=b.$watch(v,function(){m(d)&&d.call(null,a,a,b);e()},c);return e};u[a]=b;b.exp=a;b.expressions=[];return b}function F(a,b){function d(a){return void 0== -a?a:a-b}function c(b){return d(a(b))}if(0===b)return a;var e;c.$$watchDelegate=function(b,c,k){return e=b.$watch(a,function(a,k){m(c)&&c.call(null,d(a),d(k),b)},k)};return c}function l(a,b){var d=this;this.b=a;this.e=b;if(void 0===b.other)throw e("reqother");this.d=function(a){return d.D(a)};this.d.$$watchDelegate=function(a,b,c){return d.P(a,b,c)};this.d.exp=a.exp;this.d.expressions=a.expressions}function n(a,b,d,c){var e=this;this.scope=b;this.oa=a;this.v=d;this.qa=c;this.U=void 0;this.K=v;this.ka= -b.$watch(a.b,function(a){return e.ja(a)},c)}function p(a,b){l.call(this,a,b)}function w(){}function q(a,b,d,c){l.call(this,a,b);this.offset=d;this.M=c}function x(){}function g(a,b){this.u=a;this.B=b;this.i=[];this.g=[];this.J=[];this.s="";this.q=null}function r(a,b,d){this.c=a;this.scope=b;this.W=void 0;this.v=d;var c=this;this.la=b.$watchGroup(a.g,function(a,b){c.Ea(a,b)})}function s(a,b){b.b=a.b;b.C=a.C;b.w=a.w;b.e=a.e;b.k=a.k;b.c=a.c;b.n=a.n;b.F=a.F;b.l=a.l}function y(a){s(a,this)}function c(a, -b,d,c,e,E,f,g){this.text=a;this.index=b||0;this.A=d;this.M=c;this.Da=e;this.pa=!!E;this.u=f;this.B=!!g;this.F=this.c=this.k=this.e=this.w=this.C=this.b=null;this.L=[];this.G=this.j=this.ca=this.O=this.da=this.l=this.n=this.o=this.a=this.d=null}function z(a){switch(a){case "{":return"}";case "[":return"]";case "(":return")";default:return null}}function G(a){switch(a){case "}":return"{";case "]":return"[";case ")":return"(";default:return null}}var e=h.angular.$interpolateMinErr,v=h.angular.noop,m= -h.angular.isFunction,D=h.angular.toJson,u=Object.create(null);l.prototype.T=function(a){return this.e[this.R(a)]};l.prototype.D=function(a){return this.T(this.b(a))(a)};l.prototype.P=function(a,b,d){var c=new n(this,a,b,d);return function(){c.I()}};n.prototype.ja=function(a){var b=this;this.K();a=this.oa.T(a);this.K=this.scope.$watch(a,function(a,c){return b.na(a,c)},this.qa)};n.prototype.na=function(a,b){m(this.v)&&this.v.call(null,a,a===b?a:this.U,this.scope);this.U=a};n.prototype.I=function(){this.ka(); -this.K()};w.prototype=l.prototype;p.prototype=new w;p.prototype.R=function(a){return void 0!==this.e[a]?a:"other"};x.prototype=l.prototype;q.prototype=new x;q.prototype.R=function(a){if(isNaN(a))return"other";if(void 0!==this.e[a])return a;a=this.M(a-this.offset);return void 0!==this.e[a]?a:"other"};g.prototype.S=function(){this.s&&(null==this.q?this.i.push(this.s):(this.i.push(this.q.join("")),this.q=null),this.s="")};g.prototype.p=function(a){a.length&&(this.s?this.q?this.q.push(a):this.q=[this.s, -a]:this.s=a)};g.prototype.H=function(a){this.S();this.J.push(this.i.length);this.g.push(a);this.i.push("")};g.prototype.ma=function(a){for(var b=Array(this.g.length),d=0;d<this.g.length;d++)b[d]=this.g[d](a);return b};g.prototype.D=function(a){for(var b=0;b<this.J.length;b++){var d=a[b];if(this.B&&void 0===d)return;this.i[this.J[b]]=d}return this.i.join("")};g.prototype.ea=function(a,b){var d=this;this.S();if(!a||0!==this.g.length){if(0===this.i.length)return t("");this.u&&1<this.i.length&&e.throwNoconcat(b); -if(0===this.g.length)return 1!=this.i.length&&this.r(),t(this.i[0]);var c=function(a){return d.D(d.ma(a))};c.$$watchDelegate=function(a,b,c){return d.P(a,b,c)};c.exp=b;c.expressions=Array(this.g.length);for(var f=0;f<this.g.length;f++)c.expressions[f]=this.g[f].exp;return c}};g.prototype.P=function(a,b){var c=new r(this,a,b);return function(){c.I()}};r.prototype.Ea=function(a,b){var c=this.c.D(a);m(this.v)&&this.v.call(null,c,a===b?c:this.W,this.scope);this.W=c};r.prototype.I=function(){this.la()}; -var H=new y(new c("",0,null,null,null,!1,null,!1));c.prototype.pushState=function(){this.L.push(new y(this));s(H,this)};c.prototype.V=function(){0===this.L.length&&this.r();var a=this.L.pop();s(a,this)};c.prototype.m=function(a,b){a.lastIndex=this.index;var c=a.exec(this.text);return null==c||!0!==b&&c.index!=this.index?null:(this.index=a.lastIndex,c)};c.prototype.t=function(a){return this.m(a,!0)};c.prototype.ha=function(a){return!!this.m(a)};c.prototype.Ba=function(a){this.o=[a];do{for(this.a=this.o.pop();this.a;)this.a(); -this.ga(this.a)}while(0<this.o.length)};c.prototype.r=function(){throw e("logicbug",this.text);};c.prototype.ga=function(a){void 0===a&&this.r()};var I=/\s*(\w+)\s*/g;c.prototype.ia=function(){var a=this.m(I);if(null==a)throw a=f(this.text,this.index),e("reqarg",a.h,a.f,this.text);var b=a[1];if("select"==b||"plural"==b)throw a=f(this.text,this.index),e("reqcomma",b,a.h,a.f,this.text);a=f(this.text,this.index);throw e("unknarg",b,a.h,a.f,this.text);};c.prototype.Ca=function(a){this.da=a.index;this.O= -a[0];this.ca="'"==this.O?J:K;this.a=this.ua};var J=/\\(?:\\|'|u[0-9A-Fa-f]{4}|x[0-9A-Fa-f]{2}|[0-7]{3}|\r\n|\n|[\s\S])|'/g,K=/\\(?:\\|"|u[0-9A-Fa-f]{4}|x[0-9A-Fa-f]{2}|[0-7]{3}|\r\n|\n|[\s\S])|"/g;c.prototype.ua=function(){var a=this.t(this.ca);if(null==a)throw a=f(this.text,this.da),e("untermstr",a.h,a.f,this.text);a==this.O&&(this.a=null)};var L=/\s*(plural|select)\s*,\s*/g;c.prototype.ya=function(){var a=this.t(L);null==a&&this.ia();switch(a[1]){case "plural":this.a=this.za;break;case "select":this.a= -this.Aa;break;default:this.r()}};c.prototype.za=function(){this.e=Object.create(null);this.n=this.N;this.a=this.xa};c.prototype.Aa=function(){this.e=Object.create(null);this.a=this.n=this.ba};var A=/[0]|(?:[1-9][0-9]*)/g,M=new RegExp("\\s*offset\\s*:\\s*("+A.source+")","g");c.prototype.xa=function(){var a=this.m(M);this.w=null==a?0:parseInt(a[1],10);this.C=F(this.b,this.w);this.a=this.N};c.prototype.Q=function(a,b){if(void 0!==this.e[a]){var c=f(this.text,b);throw e("dupvalue",a,c.h,c.f,this.text); -}};var N=/\s*(\w+)/g;c.prototype.ba=function(){var a=this.m(N);null==a?(this.d=(new p(this.b,this.e)).d,this.a=null):(this.k=a[1],this.Q(this.k,a.index),this.a=this.aa)};var O=new RegExp("\\s*(?:(?:=("+A.source+"))|(\\w+))","g");c.prototype.N=function(){var a=this.m(O);null==a?(this.d=(new q(this.b,this.e,this.w,this.M)).d,this.a=null):(this.k=null!=a[1]?parseInt(a[1],10):a[2],this.Q(this.k,a.index),this.a=this.aa)};var P=/\s*{/g;c.prototype.aa=function(){if(!this.ha(P)){var a=f(this.text,this.index); -throw e("reqopenbrace",this.k,a.h,a.f,this.text);}this.F=this.index;this.c=new g(this.u,this.B);this.a=this.$};var Q=/\\.|{{|}/g,R=/\\.|{{|#|}/g,B=/\\.|{{/g;c.prototype.fa=function(){var a=this.index,b;if(null==this.n){if(b=this.t(B),null==b)return this.G=this.text.substring(a),this.index=this.text.length,null}else if(b=this.t(this.n==this.N?R:Q),null==b)throw a=f(this.text,this.F),e("reqendbrace",this.k,a.h,a.f,this.text);var c=b[0];this.G=this.text.substring(a,b.index);return c};c.prototype.$=function(){var a= -this.index,b=this.fa();null==b?(this.index=this.text.length,this.c.p(this.text.substring(a)),this.a=null):"\\"==b[0]?this.c.p(this.G+b[1]):(this.c.p(this.G),"{{"==b?(this.pushState(),this.o.push(this.ta),this.a=this.X):"}"==b?(this.e[this.k]=this.c.ea(!1,this.text),this.a=this.n):"#"==b?this.c.H(this.C):this.r())};c.prototype.va=function(){this.c=new g(this.u,this.B);this.a=this.Z};c.prototype.Z=function(){var a=this.index,b=this.t(B);if(null==b)this.index=this.text.length,this.c.p(this.text.substring(a)), -this.d=this.c.ea(this.pa,this.text),this.a=null;else{var c=b[0];"\\"==c[0]?this.c.p(this.text.substring(a,b.index)+c[1]):(this.c.p(this.text.substring(a,b.index)),this.pushState(),this.o.push(this.wa),this.a=this.X)}};c.prototype.wa=function(){var a=this.d;this.V();this.c.H(a);this.a=this.Z};c.prototype.X=function(){this.d=null;this.o.push(this.sa);this.a=this.ra};c.prototype.ta=function(){var a=this.d;this.V();this.c.H(a);this.a=this.$};var S=/\s*}}/g;c.prototype.sa=function(){if(null==this.m(S)){var a= -f(this.text,this.index);throw e("reqendinterp","}}",a.h,a.f,this.text);}null==this.d&&(this.d=this.A(this.b,this.Da),this.d.exp=this.b.exp,this.d.expressions=this.b.expressions);this.a=null};c.prototype.ra=function(){this.j=[];this.l=this.index;this.a=this.Y};var T=/[[\]{}()'",]/g;c.prototype.Y=function(){var a=this.t(T);if(null==a){if(0===this.j.length){this.index=this.text.length;this.b=this.A(this.text.substring(this.l,this.index));this.b.exp=this.text.substring(this.l,this.index);this.b.expressions= -this.b.expressions;this.a=null;return}throw e("badexpr",this.Ga(this.j[0]),this.text);}var b=a[0];if("'"==b||'"'==b)this.o.push(this.Y),this.Ca(a);else if(","==b){if(this.u)throw a=f(this.text,this.index),e("unsafe",this.u,a.h,a.f,this.text);0===this.j.length&&(this.b=this.A(this.text.substring(this.l,a.index)),this.b.exp=this.text.substring(this.l,a.index),this.b.expressions=this.b.expressions,this.a=null,this.a=this.ya)}else if(null!=z(b))this.j.unshift(b);else{var c=G(b);null==c&&this.r();if(0< -this.j.length){if(c==this.j[0]){this.j.shift();return}a=f(this.text,this.index);throw e("badexpr",b,a.h,a.f,z(this.j[0]),this.text);}this.index=a.index;this.b=this.A(this.text.substring(this.l,this.index));this.b.exp=this.text.substring(this.l,this.index);this.b.expressions=this.b.expressions;this.a=null}};var U=["$$messageFormat","$delegate",function(a,b){if("{{"!=b.startSymbol()||"}}"!=b.endSymbol())throw e("nochgmustache");var c=a.interpolate;c.startSymbol=b.startSymbol;c.endSymbol=b.endSymbol; -return c}];h=h.angular.module("ngMessageFormat",["ng"]);h.factory("$$messageFormat",["$parse","$locale","$sce","$exceptionHandler",function(a,b,d,f){function g(a,b,c){return function(g){try{return g=a?d.getTrusted(a,g):d.valueOf(g),b&&void 0===g?g:C(g)}catch(h){f(e.interr(c,h))}}}return{interpolate:function(d,e,f,h){d=new c(d,0,a,b.pluralCat,g(f,h,d),e,f,h);d.Ba(d.va);return d.d}}}]);h.config(["$provide",function(a){a.decorator("$interpolate",U)}])})(window,window.Fa); -//# sourceMappingURL=angular-message-format.min.js.map http://git-wip-us.apache.org/repos/asf/struts/blob/7a350b02/archetypes/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/js/lib/angular/angular-message-format.min.js.map ---------------------------------------------------------------------- diff --git a/archetypes/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/js/lib/angular/angular-message-format.min.js.map b/archetypes/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/js/lib/angular/angular-message-format.min.js.map deleted file mode 100644 index a6da634..0000000 --- a/archetypes/struts2-archetype-angularjs/src/main/resources/archetype-resources/src/main/webapp/js/lib/angular/angular-message-format.min.js.map +++ /dev/null @@ -1,8 +0,0 @@ -{ -"version":3, -"file":"angular-message-format.min.js", -"lineCount":25, -"mappings":"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", -"sources":["angular-message-format.js"], -"names":["window","stringify","value","toJson","indexToLineAndColumn","text","index","lines","split","i","length","line","column","parseTextLiteral","parsedFn","cachedFn","PARSE_CACHE_FOR_TEXT_LITERALS","scope","listener","objectEquality","unwatch","noop","textLiteralWatcher","isFunction","call","subtractOffset","expressionFn","offset","minusOffset","context","pluralExpressionWatchListener","newValue","oldValue","MessageSelectorBase","choices","self","$interpolateMinErr","this.parsedFn","getResult","watchDelegate","MessageSelectorWatchers","msgSelector","lastMessage","messageFnWatcher","expressionFnWatcher","expressionFnListener","SelectMessage","SelectMessageProto","PluralMessage","pluralCat","PluralMessageProto","InterpolationParts","trustedContext","allOrNothing","textParts","expressionFns","expressionIndices","partialText","concatParts","InterpolationPartsWatcher","interpolationParts","previousResult","expressionFnsWatcher","newExpressionValues","oldExpressionValues","watchListe ner","copyNestedParserState","src","dst","expressionMinusOffsetFn","pluralOffset","choiceKey","ruleChoiceKeyword","msgStartIndex","expressionStartIndex","NestedParserState","parser","MessageFormatParser","startIndex","$parse","stringifier","mustHaveExpression","nestedStateStack","textPart","angularOperatorStack","stringInterestsRe","stringQuote","stringStartIndex","ruleStack","rule","getEndOperator","opBegin","getBeginOperator","opEnd","Object","create","prototype","getMessageFn","MessageSelectorBase.prototype.getMessageFn","categorizeValue","MessageSelectorBase.prototype.getResult","MessageSelectorBase.prototype.watchDelegate","watchers","cancelWatch","MessageSelectorWatchers.prototype.expressionFnListener","messageFn","messageFnListener","newMessage","oldMessage","MessageSelectorWatchers.prototype.messageFnListener","MessageSelectorWatchers.prototype.cancelWatch","SelectMessage.prototype.categorizeValue","PluralMessage.prototype.categorizeValue","isNaN","category","flushPartialTex t","InterpolationParts.prototype.flushPartialText","push","join","addText","InterpolationParts.prototype.addText","addExpressionFn","InterpolationParts.prototype.addExpressionFn","getExpressionValues","InterpolationParts.prototype.getExpressionValues","expressionValues","Array","InterpolationParts.prototype.getResult","expressionValue","toParsedFn","InterpolationParts.prototype.toParsedFn","originalText","errorInParseLogic","InterpolationParts.prototype.watchDelegate","watcher","InterpolationPartsWatcher.prototype.watchListener","result","InterpolationPartsWatcher.prototype.cancelWatch","EMPTY_STATE","pushState","MessageFormatParser.prototype.pushState","popState","MessageFormatParser.prototype.popState","previousState","pop","matchRe","MessageFormatParser.prototype.matchRe","re","search","lastIndex","match","exec","searchRe","MessageFormatParser.prototype.searchRe","consumeRe","MessageFormatParser.prototype.consumeRe","run","MessageFormatParser.prototype.run","initialRule","assertR uleOrNull","MessageFormatParser.prototype.errorInParseLogic","MessageFormatParser.prototype.assertRuleOrNull","NEXT_WORD_RE","errorExpecting","MessageFormatParser.prototype.errorExpecting","position","word","startStringAtMatch","MessageFormatParser.prototype.startStringAtMatch","SQUOTED_STRING_INTEREST_RE","DQUOTED_STRING_INTEREST_RE","ruleInsideString","MessageFormatParser.prototype.ruleInsideString","PLURAL_OR_SELECT_ARG_TYPE_RE","rulePluralOrSelect","MessageFormatParser.prototype.rulePluralOrSelect","argType","rulePluralStyle","ruleSelectStyle","MessageFormatParser.prototype.rulePluralStyle","rulePluralValueOrKeyword","rulePluralOffset","MessageFormatParser.prototype.ruleSelectStyle","ruleSelectKeyword","NUMBER_RE","PLURAL_OFFSET_RE","RegExp","source","MessageFormatParser.prototype.rulePluralOffset","parseInt","assertChoiceKeyIsNew","MessageFormatParser.prototype.assertChoiceKeyIsNew","SELECT_KEYWORD","MessageFormatParser.prototype.ruleSelectKeyword","ruleMessageText","EXPLICIT_V ALUE_OR_KEYWORD_RE","MessageFormatParser.prototype.rulePluralValueOrKeyword","BRACE_OPEN_RE","MessageFormatParser.prototype.ruleMessageText","ruleInInterpolationOrMessageText","INTERP_OR_END_MESSAGE_RE","INTERP_OR_PLURALVALUE_OR_END_MESSAGE_RE","ESCAPE_OR_MUSTACHE_BEGIN_RE","advanceInInterpolationOrMessageText","MessageFormatParser.prototype.advanceInInterpolationOrMessageText","currentIndex","substring","token","MessageFormatParser.prototype.ruleInInterpolationOrMessageText","ruleEndMustacheInInterpolationOrMessage","ruleEnteredMustache","ruleInterpolate","MessageFormatParser.prototype.ruleInterpolate","ruleInInterpolation","MessageFormatParser.prototype.ruleInInterpolation","ruleInterpolationEndMustache","MessageFormatParser.prototype.ruleInterpolationEndMustache","MessageFormatParser.prototype.ruleEnteredMustache","ruleEndMustache","ruleAngularExpression","MessageFormatParser.prototype.ruleEndMustacheInInterpolationOrMessage","INTERP_END_RE","MessageFormatParser.prototype.ruleEnd Mustache","MessageFormatParser.prototype.ruleAngularExpression","ruleInAngularExpression","INTERESTING_OPERATORS_RE","MessageFormatParser.prototype.ruleInAngularExpression","innermostOperator","operator","unshift","beginOperator","shift","$$interpolateDecorator","$$messageFormat","$interpolate","interpolate","module","$$MessageFormatFactory","$locale","$sce","$exceptionHandler","getStringifier","err","$provide","angular"] -}