mirror of
				https://github.com/shivammathur/setup-php.git
				synced 2025-10-31 23:36:21 +07:00 
			
		
		
		
	init
This commit is contained in:
		
							
								
								
									
										39
									
								
								node_modules/js-yaml/lib/js-yaml.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										39
									
								
								node_modules/js-yaml/lib/js-yaml.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,39 @@ | ||||
| 'use strict'; | ||||
|  | ||||
|  | ||||
| var loader = require('./js-yaml/loader'); | ||||
| var dumper = require('./js-yaml/dumper'); | ||||
|  | ||||
|  | ||||
| function deprecated(name) { | ||||
|   return function () { | ||||
|     throw new Error('Function ' + name + ' is deprecated and cannot be used.'); | ||||
|   }; | ||||
| } | ||||
|  | ||||
|  | ||||
| module.exports.Type                = require('./js-yaml/type'); | ||||
| module.exports.Schema              = require('./js-yaml/schema'); | ||||
| module.exports.FAILSAFE_SCHEMA     = require('./js-yaml/schema/failsafe'); | ||||
| module.exports.JSON_SCHEMA         = require('./js-yaml/schema/json'); | ||||
| module.exports.CORE_SCHEMA         = require('./js-yaml/schema/core'); | ||||
| module.exports.DEFAULT_SAFE_SCHEMA = require('./js-yaml/schema/default_safe'); | ||||
| module.exports.DEFAULT_FULL_SCHEMA = require('./js-yaml/schema/default_full'); | ||||
| module.exports.load                = loader.load; | ||||
| module.exports.loadAll             = loader.loadAll; | ||||
| module.exports.safeLoad            = loader.safeLoad; | ||||
| module.exports.safeLoadAll         = loader.safeLoadAll; | ||||
| module.exports.dump                = dumper.dump; | ||||
| module.exports.safeDump            = dumper.safeDump; | ||||
| module.exports.YAMLException       = require('./js-yaml/exception'); | ||||
|  | ||||
| // Deprecated schema names from JS-YAML 2.0.x | ||||
| module.exports.MINIMAL_SCHEMA = require('./js-yaml/schema/failsafe'); | ||||
| module.exports.SAFE_SCHEMA    = require('./js-yaml/schema/default_safe'); | ||||
| module.exports.DEFAULT_SCHEMA = require('./js-yaml/schema/default_full'); | ||||
|  | ||||
| // Deprecated functions from JS-YAML 1.x.x | ||||
| module.exports.scan           = deprecated('scan'); | ||||
| module.exports.parse          = deprecated('parse'); | ||||
| module.exports.compose        = deprecated('compose'); | ||||
| module.exports.addConstructor = deprecated('addConstructor'); | ||||
							
								
								
									
										59
									
								
								node_modules/js-yaml/lib/js-yaml/common.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										59
									
								
								node_modules/js-yaml/lib/js-yaml/common.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,59 @@ | ||||
| 'use strict'; | ||||
|  | ||||
|  | ||||
| function isNothing(subject) { | ||||
|   return (typeof subject === 'undefined') || (subject === null); | ||||
| } | ||||
|  | ||||
|  | ||||
| function isObject(subject) { | ||||
|   return (typeof subject === 'object') && (subject !== null); | ||||
| } | ||||
|  | ||||
|  | ||||
| function toArray(sequence) { | ||||
|   if (Array.isArray(sequence)) return sequence; | ||||
|   else if (isNothing(sequence)) return []; | ||||
|  | ||||
|   return [ sequence ]; | ||||
| } | ||||
|  | ||||
|  | ||||
| function extend(target, source) { | ||||
|   var index, length, key, sourceKeys; | ||||
|  | ||||
|   if (source) { | ||||
|     sourceKeys = Object.keys(source); | ||||
|  | ||||
|     for (index = 0, length = sourceKeys.length; index < length; index += 1) { | ||||
|       key = sourceKeys[index]; | ||||
|       target[key] = source[key]; | ||||
|     } | ||||
|   } | ||||
|  | ||||
|   return target; | ||||
| } | ||||
|  | ||||
|  | ||||
| function repeat(string, count) { | ||||
|   var result = '', cycle; | ||||
|  | ||||
|   for (cycle = 0; cycle < count; cycle += 1) { | ||||
|     result += string; | ||||
|   } | ||||
|  | ||||
|   return result; | ||||
| } | ||||
|  | ||||
|  | ||||
| function isNegativeZero(number) { | ||||
|   return (number === 0) && (Number.NEGATIVE_INFINITY === 1 / number); | ||||
| } | ||||
|  | ||||
|  | ||||
| module.exports.isNothing      = isNothing; | ||||
| module.exports.isObject       = isObject; | ||||
| module.exports.toArray        = toArray; | ||||
| module.exports.repeat         = repeat; | ||||
| module.exports.isNegativeZero = isNegativeZero; | ||||
| module.exports.extend         = extend; | ||||
							
								
								
									
										827
									
								
								node_modules/js-yaml/lib/js-yaml/dumper.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										827
									
								
								node_modules/js-yaml/lib/js-yaml/dumper.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,827 @@ | ||||
| 'use strict'; | ||||
|  | ||||
| /*eslint-disable no-use-before-define*/ | ||||
|  | ||||
| var common              = require('./common'); | ||||
| var YAMLException       = require('./exception'); | ||||
| var DEFAULT_FULL_SCHEMA = require('./schema/default_full'); | ||||
| var DEFAULT_SAFE_SCHEMA = require('./schema/default_safe'); | ||||
|  | ||||
| var _toString       = Object.prototype.toString; | ||||
| var _hasOwnProperty = Object.prototype.hasOwnProperty; | ||||
|  | ||||
| var CHAR_TAB                  = 0x09; /* Tab */ | ||||
| var CHAR_LINE_FEED            = 0x0A; /* LF */ | ||||
| var CHAR_SPACE                = 0x20; /* Space */ | ||||
| var CHAR_EXCLAMATION          = 0x21; /* ! */ | ||||
| var CHAR_DOUBLE_QUOTE         = 0x22; /* " */ | ||||
| var CHAR_SHARP                = 0x23; /* # */ | ||||
| var CHAR_PERCENT              = 0x25; /* % */ | ||||
| var CHAR_AMPERSAND            = 0x26; /* & */ | ||||
| var CHAR_SINGLE_QUOTE         = 0x27; /* ' */ | ||||
| var CHAR_ASTERISK             = 0x2A; /* * */ | ||||
| var CHAR_COMMA                = 0x2C; /* , */ | ||||
| var CHAR_MINUS                = 0x2D; /* - */ | ||||
| var CHAR_COLON                = 0x3A; /* : */ | ||||
| var CHAR_GREATER_THAN         = 0x3E; /* > */ | ||||
| var CHAR_QUESTION             = 0x3F; /* ? */ | ||||
| var CHAR_COMMERCIAL_AT        = 0x40; /* @ */ | ||||
| var CHAR_LEFT_SQUARE_BRACKET  = 0x5B; /* [ */ | ||||
| var CHAR_RIGHT_SQUARE_BRACKET = 0x5D; /* ] */ | ||||
| var CHAR_GRAVE_ACCENT         = 0x60; /* ` */ | ||||
| var CHAR_LEFT_CURLY_BRACKET   = 0x7B; /* { */ | ||||
| var CHAR_VERTICAL_LINE        = 0x7C; /* | */ | ||||
| var CHAR_RIGHT_CURLY_BRACKET  = 0x7D; /* } */ | ||||
|  | ||||
| var ESCAPE_SEQUENCES = {}; | ||||
|  | ||||
| ESCAPE_SEQUENCES[0x00]   = '\\0'; | ||||
| ESCAPE_SEQUENCES[0x07]   = '\\a'; | ||||
| ESCAPE_SEQUENCES[0x08]   = '\\b'; | ||||
| ESCAPE_SEQUENCES[0x09]   = '\\t'; | ||||
| ESCAPE_SEQUENCES[0x0A]   = '\\n'; | ||||
| ESCAPE_SEQUENCES[0x0B]   = '\\v'; | ||||
| ESCAPE_SEQUENCES[0x0C]   = '\\f'; | ||||
| ESCAPE_SEQUENCES[0x0D]   = '\\r'; | ||||
| ESCAPE_SEQUENCES[0x1B]   = '\\e'; | ||||
| ESCAPE_SEQUENCES[0x22]   = '\\"'; | ||||
| ESCAPE_SEQUENCES[0x5C]   = '\\\\'; | ||||
| ESCAPE_SEQUENCES[0x85]   = '\\N'; | ||||
| ESCAPE_SEQUENCES[0xA0]   = '\\_'; | ||||
| ESCAPE_SEQUENCES[0x2028] = '\\L'; | ||||
| ESCAPE_SEQUENCES[0x2029] = '\\P'; | ||||
|  | ||||
| var DEPRECATED_BOOLEANS_SYNTAX = [ | ||||
|   'y', 'Y', 'yes', 'Yes', 'YES', 'on', 'On', 'ON', | ||||
|   'n', 'N', 'no', 'No', 'NO', 'off', 'Off', 'OFF' | ||||
| ]; | ||||
|  | ||||
| function compileStyleMap(schema, map) { | ||||
|   var result, keys, index, length, tag, style, type; | ||||
|  | ||||
|   if (map === null) return {}; | ||||
|  | ||||
|   result = {}; | ||||
|   keys = Object.keys(map); | ||||
|  | ||||
|   for (index = 0, length = keys.length; index < length; index += 1) { | ||||
|     tag = keys[index]; | ||||
|     style = String(map[tag]); | ||||
|  | ||||
|     if (tag.slice(0, 2) === '!!') { | ||||
|       tag = 'tag:yaml.org,2002:' + tag.slice(2); | ||||
|     } | ||||
|     type = schema.compiledTypeMap['fallback'][tag]; | ||||
|  | ||||
|     if (type && _hasOwnProperty.call(type.styleAliases, style)) { | ||||
|       style = type.styleAliases[style]; | ||||
|     } | ||||
|  | ||||
|     result[tag] = style; | ||||
|   } | ||||
|  | ||||
|   return result; | ||||
| } | ||||
|  | ||||
| function encodeHex(character) { | ||||
|   var string, handle, length; | ||||
|  | ||||
|   string = character.toString(16).toUpperCase(); | ||||
|  | ||||
|   if (character <= 0xFF) { | ||||
|     handle = 'x'; | ||||
|     length = 2; | ||||
|   } else if (character <= 0xFFFF) { | ||||
|     handle = 'u'; | ||||
|     length = 4; | ||||
|   } else if (character <= 0xFFFFFFFF) { | ||||
|     handle = 'U'; | ||||
|     length = 8; | ||||
|   } else { | ||||
|     throw new YAMLException('code point within a string may not be greater than 0xFFFFFFFF'); | ||||
|   } | ||||
|  | ||||
|   return '\\' + handle + common.repeat('0', length - string.length) + string; | ||||
| } | ||||
|  | ||||
| function State(options) { | ||||
|   this.schema        = options['schema'] || DEFAULT_FULL_SCHEMA; | ||||
|   this.indent        = Math.max(1, (options['indent'] || 2)); | ||||
|   this.noArrayIndent = options['noArrayIndent'] || false; | ||||
|   this.skipInvalid   = options['skipInvalid'] || false; | ||||
|   this.flowLevel     = (common.isNothing(options['flowLevel']) ? -1 : options['flowLevel']); | ||||
|   this.styleMap      = compileStyleMap(this.schema, options['styles'] || null); | ||||
|   this.sortKeys      = options['sortKeys'] || false; | ||||
|   this.lineWidth     = options['lineWidth'] || 80; | ||||
|   this.noRefs        = options['noRefs'] || false; | ||||
|   this.noCompatMode  = options['noCompatMode'] || false; | ||||
|   this.condenseFlow  = options['condenseFlow'] || false; | ||||
|  | ||||
|   this.implicitTypes = this.schema.compiledImplicit; | ||||
|   this.explicitTypes = this.schema.compiledExplicit; | ||||
|  | ||||
|   this.tag = null; | ||||
|   this.result = ''; | ||||
|  | ||||
|   this.duplicates = []; | ||||
|   this.usedDuplicates = null; | ||||
| } | ||||
|  | ||||
| // Indents every line in a string. Empty lines (\n only) are not indented. | ||||
| function indentString(string, spaces) { | ||||
|   var ind = common.repeat(' ', spaces), | ||||
|       position = 0, | ||||
|       next = -1, | ||||
|       result = '', | ||||
|       line, | ||||
|       length = string.length; | ||||
|  | ||||
|   while (position < length) { | ||||
|     next = string.indexOf('\n', position); | ||||
|     if (next === -1) { | ||||
|       line = string.slice(position); | ||||
|       position = length; | ||||
|     } else { | ||||
|       line = string.slice(position, next + 1); | ||||
|       position = next + 1; | ||||
|     } | ||||
|  | ||||
|     if (line.length && line !== '\n') result += ind; | ||||
|  | ||||
|     result += line; | ||||
|   } | ||||
|  | ||||
|   return result; | ||||
| } | ||||
|  | ||||
| function generateNextLine(state, level) { | ||||
|   return '\n' + common.repeat(' ', state.indent * level); | ||||
| } | ||||
|  | ||||
| function testImplicitResolving(state, str) { | ||||
|   var index, length, type; | ||||
|  | ||||
|   for (index = 0, length = state.implicitTypes.length; index < length; index += 1) { | ||||
|     type = state.implicitTypes[index]; | ||||
|  | ||||
|     if (type.resolve(str)) { | ||||
|       return true; | ||||
|     } | ||||
|   } | ||||
|  | ||||
|   return false; | ||||
| } | ||||
|  | ||||
| // [33] s-white ::= s-space | s-tab | ||||
| function isWhitespace(c) { | ||||
|   return c === CHAR_SPACE || c === CHAR_TAB; | ||||
| } | ||||
|  | ||||
| // Returns true if the character can be printed without escaping. | ||||
| // From YAML 1.2: "any allowed characters known to be non-printable | ||||
| // should also be escaped. [However,] This isn’t mandatory" | ||||
| // Derived from nb-char - \t - #x85 - #xA0 - #x2028 - #x2029. | ||||
| function isPrintable(c) { | ||||
|   return  (0x00020 <= c && c <= 0x00007E) | ||||
|       || ((0x000A1 <= c && c <= 0x00D7FF) && c !== 0x2028 && c !== 0x2029) | ||||
|       || ((0x0E000 <= c && c <= 0x00FFFD) && c !== 0xFEFF /* BOM */) | ||||
|       ||  (0x10000 <= c && c <= 0x10FFFF); | ||||
| } | ||||
|  | ||||
| // Simplified test for values allowed after the first character in plain style. | ||||
| function isPlainSafe(c) { | ||||
|   // Uses a subset of nb-char - c-flow-indicator - ":" - "#" | ||||
|   // where nb-char ::= c-printable - b-char - c-byte-order-mark. | ||||
|   return isPrintable(c) && c !== 0xFEFF | ||||
|     // - c-flow-indicator | ||||
|     && c !== CHAR_COMMA | ||||
|     && c !== CHAR_LEFT_SQUARE_BRACKET | ||||
|     && c !== CHAR_RIGHT_SQUARE_BRACKET | ||||
|     && c !== CHAR_LEFT_CURLY_BRACKET | ||||
|     && c !== CHAR_RIGHT_CURLY_BRACKET | ||||
|     // - ":" - "#" | ||||
|     && c !== CHAR_COLON | ||||
|     && c !== CHAR_SHARP; | ||||
| } | ||||
|  | ||||
| // Simplified test for values allowed as the first character in plain style. | ||||
| function isPlainSafeFirst(c) { | ||||
|   // Uses a subset of ns-char - c-indicator | ||||
|   // where ns-char = nb-char - s-white. | ||||
|   return isPrintable(c) && c !== 0xFEFF | ||||
|     && !isWhitespace(c) // - s-white | ||||
|     // - (c-indicator ::= | ||||
|     // “-” | “?” | “:” | “,” | “[” | “]” | “{” | “}” | ||||
|     && c !== CHAR_MINUS | ||||
|     && c !== CHAR_QUESTION | ||||
|     && c !== CHAR_COLON | ||||
|     && c !== CHAR_COMMA | ||||
|     && c !== CHAR_LEFT_SQUARE_BRACKET | ||||
|     && c !== CHAR_RIGHT_SQUARE_BRACKET | ||||
|     && c !== CHAR_LEFT_CURLY_BRACKET | ||||
|     && c !== CHAR_RIGHT_CURLY_BRACKET | ||||
|     // | “#” | “&” | “*” | “!” | “|” | “>” | “'” | “"” | ||||
|     && c !== CHAR_SHARP | ||||
|     && c !== CHAR_AMPERSAND | ||||
|     && c !== CHAR_ASTERISK | ||||
|     && c !== CHAR_EXCLAMATION | ||||
|     && c !== CHAR_VERTICAL_LINE | ||||
|     && c !== CHAR_GREATER_THAN | ||||
|     && c !== CHAR_SINGLE_QUOTE | ||||
|     && c !== CHAR_DOUBLE_QUOTE | ||||
|     // | “%” | “@” | “`”) | ||||
|     && c !== CHAR_PERCENT | ||||
|     && c !== CHAR_COMMERCIAL_AT | ||||
|     && c !== CHAR_GRAVE_ACCENT; | ||||
| } | ||||
|  | ||||
| // Determines whether block indentation indicator is required. | ||||
| function needIndentIndicator(string) { | ||||
|   var leadingSpaceRe = /^\n* /; | ||||
|   return leadingSpaceRe.test(string); | ||||
| } | ||||
|  | ||||
| var STYLE_PLAIN   = 1, | ||||
|     STYLE_SINGLE  = 2, | ||||
|     STYLE_LITERAL = 3, | ||||
|     STYLE_FOLDED  = 4, | ||||
|     STYLE_DOUBLE  = 5; | ||||
|  | ||||
| // Determines which scalar styles are possible and returns the preferred style. | ||||
| // lineWidth = -1 => no limit. | ||||
| // Pre-conditions: str.length > 0. | ||||
| // Post-conditions: | ||||
| //    STYLE_PLAIN or STYLE_SINGLE => no \n are in the string. | ||||
| //    STYLE_LITERAL => no lines are suitable for folding (or lineWidth is -1). | ||||
| //    STYLE_FOLDED => a line > lineWidth and can be folded (and lineWidth != -1). | ||||
| function chooseScalarStyle(string, singleLineOnly, indentPerLevel, lineWidth, testAmbiguousType) { | ||||
|   var i; | ||||
|   var char; | ||||
|   var hasLineBreak = false; | ||||
|   var hasFoldableLine = false; // only checked if shouldTrackWidth | ||||
|   var shouldTrackWidth = lineWidth !== -1; | ||||
|   var previousLineBreak = -1; // count the first line correctly | ||||
|   var plain = isPlainSafeFirst(string.charCodeAt(0)) | ||||
|           && !isWhitespace(string.charCodeAt(string.length - 1)); | ||||
|  | ||||
|   if (singleLineOnly) { | ||||
|     // Case: no block styles. | ||||
|     // Check for disallowed characters to rule out plain and single. | ||||
|     for (i = 0; i < string.length; i++) { | ||||
|       char = string.charCodeAt(i); | ||||
|       if (!isPrintable(char)) { | ||||
|         return STYLE_DOUBLE; | ||||
|       } | ||||
|       plain = plain && isPlainSafe(char); | ||||
|     } | ||||
|   } else { | ||||
|     // Case: block styles permitted. | ||||
|     for (i = 0; i < string.length; i++) { | ||||
|       char = string.charCodeAt(i); | ||||
|       if (char === CHAR_LINE_FEED) { | ||||
|         hasLineBreak = true; | ||||
|         // Check if any line can be folded. | ||||
|         if (shouldTrackWidth) { | ||||
|           hasFoldableLine = hasFoldableLine || | ||||
|             // Foldable line = too long, and not more-indented. | ||||
|             (i - previousLineBreak - 1 > lineWidth && | ||||
|              string[previousLineBreak + 1] !== ' '); | ||||
|           previousLineBreak = i; | ||||
|         } | ||||
|       } else if (!isPrintable(char)) { | ||||
|         return STYLE_DOUBLE; | ||||
|       } | ||||
|       plain = plain && isPlainSafe(char); | ||||
|     } | ||||
|     // in case the end is missing a \n | ||||
|     hasFoldableLine = hasFoldableLine || (shouldTrackWidth && | ||||
|       (i - previousLineBreak - 1 > lineWidth && | ||||
|        string[previousLineBreak + 1] !== ' ')); | ||||
|   } | ||||
|   // Although every style can represent \n without escaping, prefer block styles | ||||
|   // for multiline, since they're more readable and they don't add empty lines. | ||||
|   // Also prefer folding a super-long line. | ||||
|   if (!hasLineBreak && !hasFoldableLine) { | ||||
|     // Strings interpretable as another type have to be quoted; | ||||
|     // e.g. the string 'true' vs. the boolean true. | ||||
|     return plain && !testAmbiguousType(string) | ||||
|       ? STYLE_PLAIN : STYLE_SINGLE; | ||||
|   } | ||||
|   // Edge case: block indentation indicator can only have one digit. | ||||
|   if (indentPerLevel > 9 && needIndentIndicator(string)) { | ||||
|     return STYLE_DOUBLE; | ||||
|   } | ||||
|   // At this point we know block styles are valid. | ||||
|   // Prefer literal style unless we want to fold. | ||||
|   return hasFoldableLine ? STYLE_FOLDED : STYLE_LITERAL; | ||||
| } | ||||
|  | ||||
| // Note: line breaking/folding is implemented for only the folded style. | ||||
| // NB. We drop the last trailing newline (if any) of a returned block scalar | ||||
| //  since the dumper adds its own newline. This always works: | ||||
| //    • No ending newline => unaffected; already using strip "-" chomping. | ||||
| //    • Ending newline    => removed then restored. | ||||
| //  Importantly, this keeps the "+" chomp indicator from gaining an extra line. | ||||
| function writeScalar(state, string, level, iskey) { | ||||
|   state.dump = (function () { | ||||
|     if (string.length === 0) { | ||||
|       return "''"; | ||||
|     } | ||||
|     if (!state.noCompatMode && | ||||
|         DEPRECATED_BOOLEANS_SYNTAX.indexOf(string) !== -1) { | ||||
|       return "'" + string + "'"; | ||||
|     } | ||||
|  | ||||
|     var indent = state.indent * Math.max(1, level); // no 0-indent scalars | ||||
|     // As indentation gets deeper, let the width decrease monotonically | ||||
|     // to the lower bound min(state.lineWidth, 40). | ||||
|     // Note that this implies | ||||
|     //  state.lineWidth ≤ 40 + state.indent: width is fixed at the lower bound. | ||||
|     //  state.lineWidth > 40 + state.indent: width decreases until the lower bound. | ||||
|     // This behaves better than a constant minimum width which disallows narrower options, | ||||
|     // or an indent threshold which causes the width to suddenly increase. | ||||
|     var lineWidth = state.lineWidth === -1 | ||||
|       ? -1 : Math.max(Math.min(state.lineWidth, 40), state.lineWidth - indent); | ||||
|  | ||||
|     // Without knowing if keys are implicit/explicit, assume implicit for safety. | ||||
|     var singleLineOnly = iskey | ||||
|       // No block styles in flow mode. | ||||
|       || (state.flowLevel > -1 && level >= state.flowLevel); | ||||
|     function testAmbiguity(string) { | ||||
|       return testImplicitResolving(state, string); | ||||
|     } | ||||
|  | ||||
|     switch (chooseScalarStyle(string, singleLineOnly, state.indent, lineWidth, testAmbiguity)) { | ||||
|       case STYLE_PLAIN: | ||||
|         return string; | ||||
|       case STYLE_SINGLE: | ||||
|         return "'" + string.replace(/'/g, "''") + "'"; | ||||
|       case STYLE_LITERAL: | ||||
|         return '|' + blockHeader(string, state.indent) | ||||
|           + dropEndingNewline(indentString(string, indent)); | ||||
|       case STYLE_FOLDED: | ||||
|         return '>' + blockHeader(string, state.indent) | ||||
|           + dropEndingNewline(indentString(foldString(string, lineWidth), indent)); | ||||
|       case STYLE_DOUBLE: | ||||
|         return '"' + escapeString(string, lineWidth) + '"'; | ||||
|       default: | ||||
|         throw new YAMLException('impossible error: invalid scalar style'); | ||||
|     } | ||||
|   }()); | ||||
| } | ||||
|  | ||||
| // Pre-conditions: string is valid for a block scalar, 1 <= indentPerLevel <= 9. | ||||
| function blockHeader(string, indentPerLevel) { | ||||
|   var indentIndicator = needIndentIndicator(string) ? String(indentPerLevel) : ''; | ||||
|  | ||||
|   // note the special case: the string '\n' counts as a "trailing" empty line. | ||||
|   var clip =          string[string.length - 1] === '\n'; | ||||
|   var keep = clip && (string[string.length - 2] === '\n' || string === '\n'); | ||||
|   var chomp = keep ? '+' : (clip ? '' : '-'); | ||||
|  | ||||
|   return indentIndicator + chomp + '\n'; | ||||
| } | ||||
|  | ||||
| // (See the note for writeScalar.) | ||||
| function dropEndingNewline(string) { | ||||
|   return string[string.length - 1] === '\n' ? string.slice(0, -1) : string; | ||||
| } | ||||
|  | ||||
| // Note: a long line without a suitable break point will exceed the width limit. | ||||
| // Pre-conditions: every char in str isPrintable, str.length > 0, width > 0. | ||||
| function foldString(string, width) { | ||||
|   // In folded style, $k$ consecutive newlines output as $k+1$ newlines— | ||||
|   // unless they're before or after a more-indented line, or at the very | ||||
|   // beginning or end, in which case $k$ maps to $k$. | ||||
|   // Therefore, parse each chunk as newline(s) followed by a content line. | ||||
|   var lineRe = /(\n+)([^\n]*)/g; | ||||
|  | ||||
|   // first line (possibly an empty line) | ||||
|   var result = (function () { | ||||
|     var nextLF = string.indexOf('\n'); | ||||
|     nextLF = nextLF !== -1 ? nextLF : string.length; | ||||
|     lineRe.lastIndex = nextLF; | ||||
|     return foldLine(string.slice(0, nextLF), width); | ||||
|   }()); | ||||
|   // If we haven't reached the first content line yet, don't add an extra \n. | ||||
|   var prevMoreIndented = string[0] === '\n' || string[0] === ' '; | ||||
|   var moreIndented; | ||||
|  | ||||
|   // rest of the lines | ||||
|   var match; | ||||
|   while ((match = lineRe.exec(string))) { | ||||
|     var prefix = match[1], line = match[2]; | ||||
|     moreIndented = (line[0] === ' '); | ||||
|     result += prefix | ||||
|       + (!prevMoreIndented && !moreIndented && line !== '' | ||||
|         ? '\n' : '') | ||||
|       + foldLine(line, width); | ||||
|     prevMoreIndented = moreIndented; | ||||
|   } | ||||
|  | ||||
|   return result; | ||||
| } | ||||
|  | ||||
| // Greedy line breaking. | ||||
| // Picks the longest line under the limit each time, | ||||
| // otherwise settles for the shortest line over the limit. | ||||
| // NB. More-indented lines *cannot* be folded, as that would add an extra \n. | ||||
| function foldLine(line, width) { | ||||
|   if (line === '' || line[0] === ' ') return line; | ||||
|  | ||||
|   // Since a more-indented line adds a \n, breaks can't be followed by a space. | ||||
|   var breakRe = / [^ ]/g; // note: the match index will always be <= length-2. | ||||
|   var match; | ||||
|   // start is an inclusive index. end, curr, and next are exclusive. | ||||
|   var start = 0, end, curr = 0, next = 0; | ||||
|   var result = ''; | ||||
|  | ||||
|   // Invariants: 0 <= start <= length-1. | ||||
|   //   0 <= curr <= next <= max(0, length-2). curr - start <= width. | ||||
|   // Inside the loop: | ||||
|   //   A match implies length >= 2, so curr and next are <= length-2. | ||||
|   while ((match = breakRe.exec(line))) { | ||||
|     next = match.index; | ||||
|     // maintain invariant: curr - start <= width | ||||
|     if (next - start > width) { | ||||
|       end = (curr > start) ? curr : next; // derive end <= length-2 | ||||
|       result += '\n' + line.slice(start, end); | ||||
|       // skip the space that was output as \n | ||||
|       start = end + 1;                    // derive start <= length-1 | ||||
|     } | ||||
|     curr = next; | ||||
|   } | ||||
|  | ||||
|   // By the invariants, start <= length-1, so there is something left over. | ||||
|   // It is either the whole string or a part starting from non-whitespace. | ||||
|   result += '\n'; | ||||
|   // Insert a break if the remainder is too long and there is a break available. | ||||
|   if (line.length - start > width && curr > start) { | ||||
|     result += line.slice(start, curr) + '\n' + line.slice(curr + 1); | ||||
|   } else { | ||||
|     result += line.slice(start); | ||||
|   } | ||||
|  | ||||
|   return result.slice(1); // drop extra \n joiner | ||||
| } | ||||
|  | ||||
| // Escapes a double-quoted string. | ||||
| function escapeString(string) { | ||||
|   var result = ''; | ||||
|   var char, nextChar; | ||||
|   var escapeSeq; | ||||
|  | ||||
|   for (var i = 0; i < string.length; i++) { | ||||
|     char = string.charCodeAt(i); | ||||
|     // Check for surrogate pairs (reference Unicode 3.0 section "3.7 Surrogates"). | ||||
|     if (char >= 0xD800 && char <= 0xDBFF/* high surrogate */) { | ||||
|       nextChar = string.charCodeAt(i + 1); | ||||
|       if (nextChar >= 0xDC00 && nextChar <= 0xDFFF/* low surrogate */) { | ||||
|         // Combine the surrogate pair and store it escaped. | ||||
|         result += encodeHex((char - 0xD800) * 0x400 + nextChar - 0xDC00 + 0x10000); | ||||
|         // Advance index one extra since we already used that char here. | ||||
|         i++; continue; | ||||
|       } | ||||
|     } | ||||
|     escapeSeq = ESCAPE_SEQUENCES[char]; | ||||
|     result += !escapeSeq && isPrintable(char) | ||||
|       ? string[i] | ||||
|       : escapeSeq || encodeHex(char); | ||||
|   } | ||||
|  | ||||
|   return result; | ||||
| } | ||||
|  | ||||
| function writeFlowSequence(state, level, object) { | ||||
|   var _result = '', | ||||
|       _tag    = state.tag, | ||||
|       index, | ||||
|       length; | ||||
|  | ||||
|   for (index = 0, length = object.length; index < length; index += 1) { | ||||
|     // Write only valid elements. | ||||
|     if (writeNode(state, level, object[index], false, false)) { | ||||
|       if (index !== 0) _result += ',' + (!state.condenseFlow ? ' ' : ''); | ||||
|       _result += state.dump; | ||||
|     } | ||||
|   } | ||||
|  | ||||
|   state.tag = _tag; | ||||
|   state.dump = '[' + _result + ']'; | ||||
| } | ||||
|  | ||||
| function writeBlockSequence(state, level, object, compact) { | ||||
|   var _result = '', | ||||
|       _tag    = state.tag, | ||||
|       index, | ||||
|       length; | ||||
|  | ||||
|   for (index = 0, length = object.length; index < length; index += 1) { | ||||
|     // Write only valid elements. | ||||
|     if (writeNode(state, level + 1, object[index], true, true)) { | ||||
|       if (!compact || index !== 0) { | ||||
|         _result += generateNextLine(state, level); | ||||
|       } | ||||
|  | ||||
|       if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) { | ||||
|         _result += '-'; | ||||
|       } else { | ||||
|         _result += '- '; | ||||
|       } | ||||
|  | ||||
|       _result += state.dump; | ||||
|     } | ||||
|   } | ||||
|  | ||||
|   state.tag = _tag; | ||||
|   state.dump = _result || '[]'; // Empty sequence if no valid values. | ||||
| } | ||||
|  | ||||
| function writeFlowMapping(state, level, object) { | ||||
|   var _result       = '', | ||||
|       _tag          = state.tag, | ||||
|       objectKeyList = Object.keys(object), | ||||
|       index, | ||||
|       length, | ||||
|       objectKey, | ||||
|       objectValue, | ||||
|       pairBuffer; | ||||
|  | ||||
|   for (index = 0, length = objectKeyList.length; index < length; index += 1) { | ||||
|     pairBuffer = state.condenseFlow ? '"' : ''; | ||||
|  | ||||
|     if (index !== 0) pairBuffer += ', '; | ||||
|  | ||||
|     objectKey = objectKeyList[index]; | ||||
|     objectValue = object[objectKey]; | ||||
|  | ||||
|     if (!writeNode(state, level, objectKey, false, false)) { | ||||
|       continue; // Skip this pair because of invalid key; | ||||
|     } | ||||
|  | ||||
|     if (state.dump.length > 1024) pairBuffer += '? '; | ||||
|  | ||||
|     pairBuffer += state.dump + (state.condenseFlow ? '"' : '') + ':' + (state.condenseFlow ? '' : ' '); | ||||
|  | ||||
|     if (!writeNode(state, level, objectValue, false, false)) { | ||||
|       continue; // Skip this pair because of invalid value. | ||||
|     } | ||||
|  | ||||
|     pairBuffer += state.dump; | ||||
|  | ||||
|     // Both key and value are valid. | ||||
|     _result += pairBuffer; | ||||
|   } | ||||
|  | ||||
|   state.tag = _tag; | ||||
|   state.dump = '{' + _result + '}'; | ||||
| } | ||||
|  | ||||
| function writeBlockMapping(state, level, object, compact) { | ||||
|   var _result       = '', | ||||
|       _tag          = state.tag, | ||||
|       objectKeyList = Object.keys(object), | ||||
|       index, | ||||
|       length, | ||||
|       objectKey, | ||||
|       objectValue, | ||||
|       explicitPair, | ||||
|       pairBuffer; | ||||
|  | ||||
|   // Allow sorting keys so that the output file is deterministic | ||||
|   if (state.sortKeys === true) { | ||||
|     // Default sorting | ||||
|     objectKeyList.sort(); | ||||
|   } else if (typeof state.sortKeys === 'function') { | ||||
|     // Custom sort function | ||||
|     objectKeyList.sort(state.sortKeys); | ||||
|   } else if (state.sortKeys) { | ||||
|     // Something is wrong | ||||
|     throw new YAMLException('sortKeys must be a boolean or a function'); | ||||
|   } | ||||
|  | ||||
|   for (index = 0, length = objectKeyList.length; index < length; index += 1) { | ||||
|     pairBuffer = ''; | ||||
|  | ||||
|     if (!compact || index !== 0) { | ||||
|       pairBuffer += generateNextLine(state, level); | ||||
|     } | ||||
|  | ||||
|     objectKey = objectKeyList[index]; | ||||
|     objectValue = object[objectKey]; | ||||
|  | ||||
|     if (!writeNode(state, level + 1, objectKey, true, true, true)) { | ||||
|       continue; // Skip this pair because of invalid key. | ||||
|     } | ||||
|  | ||||
|     explicitPair = (state.tag !== null && state.tag !== '?') || | ||||
|                    (state.dump && state.dump.length > 1024); | ||||
|  | ||||
|     if (explicitPair) { | ||||
|       if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) { | ||||
|         pairBuffer += '?'; | ||||
|       } else { | ||||
|         pairBuffer += '? '; | ||||
|       } | ||||
|     } | ||||
|  | ||||
|     pairBuffer += state.dump; | ||||
|  | ||||
|     if (explicitPair) { | ||||
|       pairBuffer += generateNextLine(state, level); | ||||
|     } | ||||
|  | ||||
|     if (!writeNode(state, level + 1, objectValue, true, explicitPair)) { | ||||
|       continue; // Skip this pair because of invalid value. | ||||
|     } | ||||
|  | ||||
|     if (state.dump && CHAR_LINE_FEED === state.dump.charCodeAt(0)) { | ||||
|       pairBuffer += ':'; | ||||
|     } else { | ||||
|       pairBuffer += ': '; | ||||
|     } | ||||
|  | ||||
|     pairBuffer += state.dump; | ||||
|  | ||||
|     // Both key and value are valid. | ||||
|     _result += pairBuffer; | ||||
|   } | ||||
|  | ||||
|   state.tag = _tag; | ||||
|   state.dump = _result || '{}'; // Empty mapping if no valid pairs. | ||||
| } | ||||
|  | ||||
| function detectType(state, object, explicit) { | ||||
|   var _result, typeList, index, length, type, style; | ||||
|  | ||||
|   typeList = explicit ? state.explicitTypes : state.implicitTypes; | ||||
|  | ||||
|   for (index = 0, length = typeList.length; index < length; index += 1) { | ||||
|     type = typeList[index]; | ||||
|  | ||||
|     if ((type.instanceOf  || type.predicate) && | ||||
|         (!type.instanceOf || ((typeof object === 'object') && (object instanceof type.instanceOf))) && | ||||
|         (!type.predicate  || type.predicate(object))) { | ||||
|  | ||||
|       state.tag = explicit ? type.tag : '?'; | ||||
|  | ||||
|       if (type.represent) { | ||||
|         style = state.styleMap[type.tag] || type.defaultStyle; | ||||
|  | ||||
|         if (_toString.call(type.represent) === '[object Function]') { | ||||
|           _result = type.represent(object, style); | ||||
|         } else if (_hasOwnProperty.call(type.represent, style)) { | ||||
|           _result = type.represent[style](object, style); | ||||
|         } else { | ||||
|           throw new YAMLException('!<' + type.tag + '> tag resolver accepts not "' + style + '" style'); | ||||
|         } | ||||
|  | ||||
|         state.dump = _result; | ||||
|       } | ||||
|  | ||||
|       return true; | ||||
|     } | ||||
|   } | ||||
|  | ||||
|   return false; | ||||
| } | ||||
|  | ||||
| // Serializes `object` and writes it to global `result`. | ||||
| // Returns true on success, or false on invalid object. | ||||
| // | ||||
| function writeNode(state, level, object, block, compact, iskey) { | ||||
|   state.tag = null; | ||||
|   state.dump = object; | ||||
|  | ||||
|   if (!detectType(state, object, false)) { | ||||
|     detectType(state, object, true); | ||||
|   } | ||||
|  | ||||
|   var type = _toString.call(state.dump); | ||||
|  | ||||
|   if (block) { | ||||
|     block = (state.flowLevel < 0 || state.flowLevel > level); | ||||
|   } | ||||
|  | ||||
|   var objectOrArray = type === '[object Object]' || type === '[object Array]', | ||||
|       duplicateIndex, | ||||
|       duplicate; | ||||
|  | ||||
|   if (objectOrArray) { | ||||
|     duplicateIndex = state.duplicates.indexOf(object); | ||||
|     duplicate = duplicateIndex !== -1; | ||||
|   } | ||||
|  | ||||
|   if ((state.tag !== null && state.tag !== '?') || duplicate || (state.indent !== 2 && level > 0)) { | ||||
|     compact = false; | ||||
|   } | ||||
|  | ||||
|   if (duplicate && state.usedDuplicates[duplicateIndex]) { | ||||
|     state.dump = '*ref_' + duplicateIndex; | ||||
|   } else { | ||||
|     if (objectOrArray && duplicate && !state.usedDuplicates[duplicateIndex]) { | ||||
|       state.usedDuplicates[duplicateIndex] = true; | ||||
|     } | ||||
|     if (type === '[object Object]') { | ||||
|       if (block && (Object.keys(state.dump).length !== 0)) { | ||||
|         writeBlockMapping(state, level, state.dump, compact); | ||||
|         if (duplicate) { | ||||
|           state.dump = '&ref_' + duplicateIndex + state.dump; | ||||
|         } | ||||
|       } else { | ||||
|         writeFlowMapping(state, level, state.dump); | ||||
|         if (duplicate) { | ||||
|           state.dump = '&ref_' + duplicateIndex + ' ' + state.dump; | ||||
|         } | ||||
|       } | ||||
|     } else if (type === '[object Array]') { | ||||
|       var arrayLevel = (state.noArrayIndent && (level > 0)) ? level - 1 : level; | ||||
|       if (block && (state.dump.length !== 0)) { | ||||
|         writeBlockSequence(state, arrayLevel, state.dump, compact); | ||||
|         if (duplicate) { | ||||
|           state.dump = '&ref_' + duplicateIndex + state.dump; | ||||
|         } | ||||
|       } else { | ||||
|         writeFlowSequence(state, arrayLevel, state.dump); | ||||
|         if (duplicate) { | ||||
|           state.dump = '&ref_' + duplicateIndex + ' ' + state.dump; | ||||
|         } | ||||
|       } | ||||
|     } else if (type === '[object String]') { | ||||
|       if (state.tag !== '?') { | ||||
|         writeScalar(state, state.dump, level, iskey); | ||||
|       } | ||||
|     } else { | ||||
|       if (state.skipInvalid) return false; | ||||
|       throw new YAMLException('unacceptable kind of an object to dump ' + type); | ||||
|     } | ||||
|  | ||||
|     if (state.tag !== null && state.tag !== '?') { | ||||
|       state.dump = '!<' + state.tag + '> ' + state.dump; | ||||
|     } | ||||
|   } | ||||
|  | ||||
|   return true; | ||||
| } | ||||
|  | ||||
| function getDuplicateReferences(object, state) { | ||||
|   var objects = [], | ||||
|       duplicatesIndexes = [], | ||||
|       index, | ||||
|       length; | ||||
|  | ||||
|   inspectNode(object, objects, duplicatesIndexes); | ||||
|  | ||||
|   for (index = 0, length = duplicatesIndexes.length; index < length; index += 1) { | ||||
|     state.duplicates.push(objects[duplicatesIndexes[index]]); | ||||
|   } | ||||
|   state.usedDuplicates = new Array(length); | ||||
| } | ||||
|  | ||||
| function inspectNode(object, objects, duplicatesIndexes) { | ||||
|   var objectKeyList, | ||||
|       index, | ||||
|       length; | ||||
|  | ||||
|   if (object !== null && typeof object === 'object') { | ||||
|     index = objects.indexOf(object); | ||||
|     if (index !== -1) { | ||||
|       if (duplicatesIndexes.indexOf(index) === -1) { | ||||
|         duplicatesIndexes.push(index); | ||||
|       } | ||||
|     } else { | ||||
|       objects.push(object); | ||||
|  | ||||
|       if (Array.isArray(object)) { | ||||
|         for (index = 0, length = object.length; index < length; index += 1) { | ||||
|           inspectNode(object[index], objects, duplicatesIndexes); | ||||
|         } | ||||
|       } else { | ||||
|         objectKeyList = Object.keys(object); | ||||
|  | ||||
|         for (index = 0, length = objectKeyList.length; index < length; index += 1) { | ||||
|           inspectNode(object[objectKeyList[index]], objects, duplicatesIndexes); | ||||
|         } | ||||
|       } | ||||
|     } | ||||
|   } | ||||
| } | ||||
|  | ||||
| function dump(input, options) { | ||||
|   options = options || {}; | ||||
|  | ||||
|   var state = new State(options); | ||||
|  | ||||
|   if (!state.noRefs) getDuplicateReferences(input, state); | ||||
|  | ||||
|   if (writeNode(state, 0, input, true, true)) return state.dump + '\n'; | ||||
|  | ||||
|   return ''; | ||||
| } | ||||
|  | ||||
| function safeDump(input, options) { | ||||
|   return dump(input, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options)); | ||||
| } | ||||
|  | ||||
| module.exports.dump     = dump; | ||||
| module.exports.safeDump = safeDump; | ||||
							
								
								
									
										43
									
								
								node_modules/js-yaml/lib/js-yaml/exception.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										43
									
								
								node_modules/js-yaml/lib/js-yaml/exception.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,43 @@ | ||||
| // YAML error class. http://stackoverflow.com/questions/8458984 | ||||
| // | ||||
| 'use strict'; | ||||
|  | ||||
| function YAMLException(reason, mark) { | ||||
|   // Super constructor | ||||
|   Error.call(this); | ||||
|  | ||||
|   this.name = 'YAMLException'; | ||||
|   this.reason = reason; | ||||
|   this.mark = mark; | ||||
|   this.message = (this.reason || '(unknown reason)') + (this.mark ? ' ' + this.mark.toString() : ''); | ||||
|  | ||||
|   // Include stack trace in error object | ||||
|   if (Error.captureStackTrace) { | ||||
|     // Chrome and NodeJS | ||||
|     Error.captureStackTrace(this, this.constructor); | ||||
|   } else { | ||||
|     // FF, IE 10+ and Safari 6+. Fallback for others | ||||
|     this.stack = (new Error()).stack || ''; | ||||
|   } | ||||
| } | ||||
|  | ||||
|  | ||||
| // Inherit from Error | ||||
| YAMLException.prototype = Object.create(Error.prototype); | ||||
| YAMLException.prototype.constructor = YAMLException; | ||||
|  | ||||
|  | ||||
| YAMLException.prototype.toString = function toString(compact) { | ||||
|   var result = this.name + ': '; | ||||
|  | ||||
|   result += this.reason || '(unknown reason)'; | ||||
|  | ||||
|   if (!compact && this.mark) { | ||||
|     result += ' ' + this.mark.toString(); | ||||
|   } | ||||
|  | ||||
|   return result; | ||||
| }; | ||||
|  | ||||
|  | ||||
| module.exports = YAMLException; | ||||
							
								
								
									
										1625
									
								
								node_modules/js-yaml/lib/js-yaml/loader.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1625
									
								
								node_modules/js-yaml/lib/js-yaml/loader.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										76
									
								
								node_modules/js-yaml/lib/js-yaml/mark.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										76
									
								
								node_modules/js-yaml/lib/js-yaml/mark.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,76 @@ | ||||
| 'use strict'; | ||||
|  | ||||
|  | ||||
| var common = require('./common'); | ||||
|  | ||||
|  | ||||
| function Mark(name, buffer, position, line, column) { | ||||
|   this.name     = name; | ||||
|   this.buffer   = buffer; | ||||
|   this.position = position; | ||||
|   this.line     = line; | ||||
|   this.column   = column; | ||||
| } | ||||
|  | ||||
|  | ||||
| Mark.prototype.getSnippet = function getSnippet(indent, maxLength) { | ||||
|   var head, start, tail, end, snippet; | ||||
|  | ||||
|   if (!this.buffer) return null; | ||||
|  | ||||
|   indent = indent || 4; | ||||
|   maxLength = maxLength || 75; | ||||
|  | ||||
|   head = ''; | ||||
|   start = this.position; | ||||
|  | ||||
|   while (start > 0 && '\x00\r\n\x85\u2028\u2029'.indexOf(this.buffer.charAt(start - 1)) === -1) { | ||||
|     start -= 1; | ||||
|     if (this.position - start > (maxLength / 2 - 1)) { | ||||
|       head = ' ... '; | ||||
|       start += 5; | ||||
|       break; | ||||
|     } | ||||
|   } | ||||
|  | ||||
|   tail = ''; | ||||
|   end = this.position; | ||||
|  | ||||
|   while (end < this.buffer.length && '\x00\r\n\x85\u2028\u2029'.indexOf(this.buffer.charAt(end)) === -1) { | ||||
|     end += 1; | ||||
|     if (end - this.position > (maxLength / 2 - 1)) { | ||||
|       tail = ' ... '; | ||||
|       end -= 5; | ||||
|       break; | ||||
|     } | ||||
|   } | ||||
|  | ||||
|   snippet = this.buffer.slice(start, end); | ||||
|  | ||||
|   return common.repeat(' ', indent) + head + snippet + tail + '\n' + | ||||
|          common.repeat(' ', indent + this.position - start + head.length) + '^'; | ||||
| }; | ||||
|  | ||||
|  | ||||
| Mark.prototype.toString = function toString(compact) { | ||||
|   var snippet, where = ''; | ||||
|  | ||||
|   if (this.name) { | ||||
|     where += 'in "' + this.name + '" '; | ||||
|   } | ||||
|  | ||||
|   where += 'at line ' + (this.line + 1) + ', column ' + (this.column + 1); | ||||
|  | ||||
|   if (!compact) { | ||||
|     snippet = this.getSnippet(); | ||||
|  | ||||
|     if (snippet) { | ||||
|       where += ':\n' + snippet; | ||||
|     } | ||||
|   } | ||||
|  | ||||
|   return where; | ||||
| }; | ||||
|  | ||||
|  | ||||
| module.exports = Mark; | ||||
							
								
								
									
										108
									
								
								node_modules/js-yaml/lib/js-yaml/schema.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										108
									
								
								node_modules/js-yaml/lib/js-yaml/schema.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,108 @@ | ||||
| 'use strict'; | ||||
|  | ||||
| /*eslint-disable max-len*/ | ||||
|  | ||||
| var common        = require('./common'); | ||||
| var YAMLException = require('./exception'); | ||||
| var Type          = require('./type'); | ||||
|  | ||||
|  | ||||
| function compileList(schema, name, result) { | ||||
|   var exclude = []; | ||||
|  | ||||
|   schema.include.forEach(function (includedSchema) { | ||||
|     result = compileList(includedSchema, name, result); | ||||
|   }); | ||||
|  | ||||
|   schema[name].forEach(function (currentType) { | ||||
|     result.forEach(function (previousType, previousIndex) { | ||||
|       if (previousType.tag === currentType.tag && previousType.kind === currentType.kind) { | ||||
|         exclude.push(previousIndex); | ||||
|       } | ||||
|     }); | ||||
|  | ||||
|     result.push(currentType); | ||||
|   }); | ||||
|  | ||||
|   return result.filter(function (type, index) { | ||||
|     return exclude.indexOf(index) === -1; | ||||
|   }); | ||||
| } | ||||
|  | ||||
|  | ||||
| function compileMap(/* lists... */) { | ||||
|   var result = { | ||||
|         scalar: {}, | ||||
|         sequence: {}, | ||||
|         mapping: {}, | ||||
|         fallback: {} | ||||
|       }, index, length; | ||||
|  | ||||
|   function collectType(type) { | ||||
|     result[type.kind][type.tag] = result['fallback'][type.tag] = type; | ||||
|   } | ||||
|  | ||||
|   for (index = 0, length = arguments.length; index < length; index += 1) { | ||||
|     arguments[index].forEach(collectType); | ||||
|   } | ||||
|   return result; | ||||
| } | ||||
|  | ||||
|  | ||||
| function Schema(definition) { | ||||
|   this.include  = definition.include  || []; | ||||
|   this.implicit = definition.implicit || []; | ||||
|   this.explicit = definition.explicit || []; | ||||
|  | ||||
|   this.implicit.forEach(function (type) { | ||||
|     if (type.loadKind && type.loadKind !== 'scalar') { | ||||
|       throw new YAMLException('There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.'); | ||||
|     } | ||||
|   }); | ||||
|  | ||||
|   this.compiledImplicit = compileList(this, 'implicit', []); | ||||
|   this.compiledExplicit = compileList(this, 'explicit', []); | ||||
|   this.compiledTypeMap  = compileMap(this.compiledImplicit, this.compiledExplicit); | ||||
| } | ||||
|  | ||||
|  | ||||
| Schema.DEFAULT = null; | ||||
|  | ||||
|  | ||||
| Schema.create = function createSchema() { | ||||
|   var schemas, types; | ||||
|  | ||||
|   switch (arguments.length) { | ||||
|     case 1: | ||||
|       schemas = Schema.DEFAULT; | ||||
|       types = arguments[0]; | ||||
|       break; | ||||
|  | ||||
|     case 2: | ||||
|       schemas = arguments[0]; | ||||
|       types = arguments[1]; | ||||
|       break; | ||||
|  | ||||
|     default: | ||||
|       throw new YAMLException('Wrong number of arguments for Schema.create function'); | ||||
|   } | ||||
|  | ||||
|   schemas = common.toArray(schemas); | ||||
|   types = common.toArray(types); | ||||
|  | ||||
|   if (!schemas.every(function (schema) { return schema instanceof Schema; })) { | ||||
|     throw new YAMLException('Specified list of super schemas (or a single Schema object) contains a non-Schema object.'); | ||||
|   } | ||||
|  | ||||
|   if (!types.every(function (type) { return type instanceof Type; })) { | ||||
|     throw new YAMLException('Specified list of YAML types (or a single Type object) contains a non-Type object.'); | ||||
|   } | ||||
|  | ||||
|   return new Schema({ | ||||
|     include: schemas, | ||||
|     explicit: types | ||||
|   }); | ||||
| }; | ||||
|  | ||||
|  | ||||
| module.exports = Schema; | ||||
							
								
								
									
										18
									
								
								node_modules/js-yaml/lib/js-yaml/schema/core.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								node_modules/js-yaml/lib/js-yaml/schema/core.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,18 @@ | ||||
| // Standard YAML's Core schema. | ||||
| // http://www.yaml.org/spec/1.2/spec.html#id2804923 | ||||
| // | ||||
| // NOTE: JS-YAML does not support schema-specific tag resolution restrictions. | ||||
| // So, Core schema has no distinctions from JSON schema is JS-YAML. | ||||
|  | ||||
|  | ||||
| 'use strict'; | ||||
|  | ||||
|  | ||||
| var Schema = require('../schema'); | ||||
|  | ||||
|  | ||||
| module.exports = new Schema({ | ||||
|   include: [ | ||||
|     require('./json') | ||||
|   ] | ||||
| }); | ||||
							
								
								
									
										25
									
								
								node_modules/js-yaml/lib/js-yaml/schema/default_full.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								node_modules/js-yaml/lib/js-yaml/schema/default_full.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,25 @@ | ||||
| // JS-YAML's default schema for `load` function. | ||||
| // It is not described in the YAML specification. | ||||
| // | ||||
| // This schema is based on JS-YAML's default safe schema and includes | ||||
| // JavaScript-specific types: !!js/undefined, !!js/regexp and !!js/function. | ||||
| // | ||||
| // Also this schema is used as default base schema at `Schema.create` function. | ||||
|  | ||||
|  | ||||
| 'use strict'; | ||||
|  | ||||
|  | ||||
| var Schema = require('../schema'); | ||||
|  | ||||
|  | ||||
| module.exports = Schema.DEFAULT = new Schema({ | ||||
|   include: [ | ||||
|     require('./default_safe') | ||||
|   ], | ||||
|   explicit: [ | ||||
|     require('../type/js/undefined'), | ||||
|     require('../type/js/regexp'), | ||||
|     require('../type/js/function') | ||||
|   ] | ||||
| }); | ||||
							
								
								
									
										28
									
								
								node_modules/js-yaml/lib/js-yaml/schema/default_safe.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								node_modules/js-yaml/lib/js-yaml/schema/default_safe.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,28 @@ | ||||
| // JS-YAML's default schema for `safeLoad` function. | ||||
| // It is not described in the YAML specification. | ||||
| // | ||||
| // This schema is based on standard YAML's Core schema and includes most of | ||||
| // extra types described at YAML tag repository. (http://yaml.org/type/) | ||||
|  | ||||
|  | ||||
| 'use strict'; | ||||
|  | ||||
|  | ||||
| var Schema = require('../schema'); | ||||
|  | ||||
|  | ||||
| module.exports = new Schema({ | ||||
|   include: [ | ||||
|     require('./core') | ||||
|   ], | ||||
|   implicit: [ | ||||
|     require('../type/timestamp'), | ||||
|     require('../type/merge') | ||||
|   ], | ||||
|   explicit: [ | ||||
|     require('../type/binary'), | ||||
|     require('../type/omap'), | ||||
|     require('../type/pairs'), | ||||
|     require('../type/set') | ||||
|   ] | ||||
| }); | ||||
							
								
								
									
										17
									
								
								node_modules/js-yaml/lib/js-yaml/schema/failsafe.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								node_modules/js-yaml/lib/js-yaml/schema/failsafe.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,17 @@ | ||||
| // Standard YAML's Failsafe schema. | ||||
| // http://www.yaml.org/spec/1.2/spec.html#id2802346 | ||||
|  | ||||
|  | ||||
| 'use strict'; | ||||
|  | ||||
|  | ||||
| var Schema = require('../schema'); | ||||
|  | ||||
|  | ||||
| module.exports = new Schema({ | ||||
|   explicit: [ | ||||
|     require('../type/str'), | ||||
|     require('../type/seq'), | ||||
|     require('../type/map') | ||||
|   ] | ||||
| }); | ||||
							
								
								
									
										25
									
								
								node_modules/js-yaml/lib/js-yaml/schema/json.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								node_modules/js-yaml/lib/js-yaml/schema/json.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,25 @@ | ||||
| // Standard YAML's JSON schema. | ||||
| // http://www.yaml.org/spec/1.2/spec.html#id2803231 | ||||
| // | ||||
| // NOTE: JS-YAML does not support schema-specific tag resolution restrictions. | ||||
| // So, this schema is not such strict as defined in the YAML specification. | ||||
| // It allows numbers in binary notaion, use `Null` and `NULL` as `null`, etc. | ||||
|  | ||||
|  | ||||
| 'use strict'; | ||||
|  | ||||
|  | ||||
| var Schema = require('../schema'); | ||||
|  | ||||
|  | ||||
| module.exports = new Schema({ | ||||
|   include: [ | ||||
|     require('./failsafe') | ||||
|   ], | ||||
|   implicit: [ | ||||
|     require('../type/null'), | ||||
|     require('../type/bool'), | ||||
|     require('../type/int'), | ||||
|     require('../type/float') | ||||
|   ] | ||||
| }); | ||||
							
								
								
									
										61
									
								
								node_modules/js-yaml/lib/js-yaml/type.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										61
									
								
								node_modules/js-yaml/lib/js-yaml/type.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,61 @@ | ||||
| 'use strict'; | ||||
|  | ||||
| var YAMLException = require('./exception'); | ||||
|  | ||||
| var TYPE_CONSTRUCTOR_OPTIONS = [ | ||||
|   'kind', | ||||
|   'resolve', | ||||
|   'construct', | ||||
|   'instanceOf', | ||||
|   'predicate', | ||||
|   'represent', | ||||
|   'defaultStyle', | ||||
|   'styleAliases' | ||||
| ]; | ||||
|  | ||||
| var YAML_NODE_KINDS = [ | ||||
|   'scalar', | ||||
|   'sequence', | ||||
|   'mapping' | ||||
| ]; | ||||
|  | ||||
| function compileStyleAliases(map) { | ||||
|   var result = {}; | ||||
|  | ||||
|   if (map !== null) { | ||||
|     Object.keys(map).forEach(function (style) { | ||||
|       map[style].forEach(function (alias) { | ||||
|         result[String(alias)] = style; | ||||
|       }); | ||||
|     }); | ||||
|   } | ||||
|  | ||||
|   return result; | ||||
| } | ||||
|  | ||||
| function Type(tag, options) { | ||||
|   options = options || {}; | ||||
|  | ||||
|   Object.keys(options).forEach(function (name) { | ||||
|     if (TYPE_CONSTRUCTOR_OPTIONS.indexOf(name) === -1) { | ||||
|       throw new YAMLException('Unknown option "' + name + '" is met in definition of "' + tag + '" YAML type.'); | ||||
|     } | ||||
|   }); | ||||
|  | ||||
|   // TODO: Add tag format check. | ||||
|   this.tag          = tag; | ||||
|   this.kind         = options['kind']         || null; | ||||
|   this.resolve      = options['resolve']      || function () { return true; }; | ||||
|   this.construct    = options['construct']    || function (data) { return data; }; | ||||
|   this.instanceOf   = options['instanceOf']   || null; | ||||
|   this.predicate    = options['predicate']    || null; | ||||
|   this.represent    = options['represent']    || null; | ||||
|   this.defaultStyle = options['defaultStyle'] || null; | ||||
|   this.styleAliases = compileStyleAliases(options['styleAliases'] || null); | ||||
|  | ||||
|   if (YAML_NODE_KINDS.indexOf(this.kind) === -1) { | ||||
|     throw new YAMLException('Unknown kind "' + this.kind + '" is specified for "' + tag + '" YAML type.'); | ||||
|   } | ||||
| } | ||||
|  | ||||
| module.exports = Type; | ||||
							
								
								
									
										138
									
								
								node_modules/js-yaml/lib/js-yaml/type/binary.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										138
									
								
								node_modules/js-yaml/lib/js-yaml/type/binary.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,138 @@ | ||||
| 'use strict'; | ||||
|  | ||||
| /*eslint-disable no-bitwise*/ | ||||
|  | ||||
| var NodeBuffer; | ||||
|  | ||||
| try { | ||||
|   // A trick for browserified version, to not include `Buffer` shim | ||||
|   var _require = require; | ||||
|   NodeBuffer = _require('buffer').Buffer; | ||||
| } catch (__) {} | ||||
|  | ||||
| var Type       = require('../type'); | ||||
|  | ||||
|  | ||||
| // [ 64, 65, 66 ] -> [ padding, CR, LF ] | ||||
| var BASE64_MAP = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\n\r'; | ||||
|  | ||||
|  | ||||
| function resolveYamlBinary(data) { | ||||
|   if (data === null) return false; | ||||
|  | ||||
|   var code, idx, bitlen = 0, max = data.length, map = BASE64_MAP; | ||||
|  | ||||
|   // Convert one by one. | ||||
|   for (idx = 0; idx < max; idx++) { | ||||
|     code = map.indexOf(data.charAt(idx)); | ||||
|  | ||||
|     // Skip CR/LF | ||||
|     if (code > 64) continue; | ||||
|  | ||||
|     // Fail on illegal characters | ||||
|     if (code < 0) return false; | ||||
|  | ||||
|     bitlen += 6; | ||||
|   } | ||||
|  | ||||
|   // If there are any bits left, source was corrupted | ||||
|   return (bitlen % 8) === 0; | ||||
| } | ||||
|  | ||||
| function constructYamlBinary(data) { | ||||
|   var idx, tailbits, | ||||
|       input = data.replace(/[\r\n=]/g, ''), // remove CR/LF & padding to simplify scan | ||||
|       max = input.length, | ||||
|       map = BASE64_MAP, | ||||
|       bits = 0, | ||||
|       result = []; | ||||
|  | ||||
|   // Collect by 6*4 bits (3 bytes) | ||||
|  | ||||
|   for (idx = 0; idx < max; idx++) { | ||||
|     if ((idx % 4 === 0) && idx) { | ||||
|       result.push((bits >> 16) & 0xFF); | ||||
|       result.push((bits >> 8) & 0xFF); | ||||
|       result.push(bits & 0xFF); | ||||
|     } | ||||
|  | ||||
|     bits = (bits << 6) | map.indexOf(input.charAt(idx)); | ||||
|   } | ||||
|  | ||||
|   // Dump tail | ||||
|  | ||||
|   tailbits = (max % 4) * 6; | ||||
|  | ||||
|   if (tailbits === 0) { | ||||
|     result.push((bits >> 16) & 0xFF); | ||||
|     result.push((bits >> 8) & 0xFF); | ||||
|     result.push(bits & 0xFF); | ||||
|   } else if (tailbits === 18) { | ||||
|     result.push((bits >> 10) & 0xFF); | ||||
|     result.push((bits >> 2) & 0xFF); | ||||
|   } else if (tailbits === 12) { | ||||
|     result.push((bits >> 4) & 0xFF); | ||||
|   } | ||||
|  | ||||
|   // Wrap into Buffer for NodeJS and leave Array for browser | ||||
|   if (NodeBuffer) { | ||||
|     // Support node 6.+ Buffer API when available | ||||
|     return NodeBuffer.from ? NodeBuffer.from(result) : new NodeBuffer(result); | ||||
|   } | ||||
|  | ||||
|   return result; | ||||
| } | ||||
|  | ||||
| function representYamlBinary(object /*, style*/) { | ||||
|   var result = '', bits = 0, idx, tail, | ||||
|       max = object.length, | ||||
|       map = BASE64_MAP; | ||||
|  | ||||
|   // Convert every three bytes to 4 ASCII characters. | ||||
|  | ||||
|   for (idx = 0; idx < max; idx++) { | ||||
|     if ((idx % 3 === 0) && idx) { | ||||
|       result += map[(bits >> 18) & 0x3F]; | ||||
|       result += map[(bits >> 12) & 0x3F]; | ||||
|       result += map[(bits >> 6) & 0x3F]; | ||||
|       result += map[bits & 0x3F]; | ||||
|     } | ||||
|  | ||||
|     bits = (bits << 8) + object[idx]; | ||||
|   } | ||||
|  | ||||
|   // Dump tail | ||||
|  | ||||
|   tail = max % 3; | ||||
|  | ||||
|   if (tail === 0) { | ||||
|     result += map[(bits >> 18) & 0x3F]; | ||||
|     result += map[(bits >> 12) & 0x3F]; | ||||
|     result += map[(bits >> 6) & 0x3F]; | ||||
|     result += map[bits & 0x3F]; | ||||
|   } else if (tail === 2) { | ||||
|     result += map[(bits >> 10) & 0x3F]; | ||||
|     result += map[(bits >> 4) & 0x3F]; | ||||
|     result += map[(bits << 2) & 0x3F]; | ||||
|     result += map[64]; | ||||
|   } else if (tail === 1) { | ||||
|     result += map[(bits >> 2) & 0x3F]; | ||||
|     result += map[(bits << 4) & 0x3F]; | ||||
|     result += map[64]; | ||||
|     result += map[64]; | ||||
|   } | ||||
|  | ||||
|   return result; | ||||
| } | ||||
|  | ||||
| function isBinary(object) { | ||||
|   return NodeBuffer && NodeBuffer.isBuffer(object); | ||||
| } | ||||
|  | ||||
| module.exports = new Type('tag:yaml.org,2002:binary', { | ||||
|   kind: 'scalar', | ||||
|   resolve: resolveYamlBinary, | ||||
|   construct: constructYamlBinary, | ||||
|   predicate: isBinary, | ||||
|   represent: representYamlBinary | ||||
| }); | ||||
							
								
								
									
										35
									
								
								node_modules/js-yaml/lib/js-yaml/type/bool.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								node_modules/js-yaml/lib/js-yaml/type/bool.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,35 @@ | ||||
| 'use strict'; | ||||
|  | ||||
| var Type = require('../type'); | ||||
|  | ||||
| function resolveYamlBoolean(data) { | ||||
|   if (data === null) return false; | ||||
|  | ||||
|   var max = data.length; | ||||
|  | ||||
|   return (max === 4 && (data === 'true' || data === 'True' || data === 'TRUE')) || | ||||
|          (max === 5 && (data === 'false' || data === 'False' || data === 'FALSE')); | ||||
| } | ||||
|  | ||||
| function constructYamlBoolean(data) { | ||||
|   return data === 'true' || | ||||
|          data === 'True' || | ||||
|          data === 'TRUE'; | ||||
| } | ||||
|  | ||||
| function isBoolean(object) { | ||||
|   return Object.prototype.toString.call(object) === '[object Boolean]'; | ||||
| } | ||||
|  | ||||
| module.exports = new Type('tag:yaml.org,2002:bool', { | ||||
|   kind: 'scalar', | ||||
|   resolve: resolveYamlBoolean, | ||||
|   construct: constructYamlBoolean, | ||||
|   predicate: isBoolean, | ||||
|   represent: { | ||||
|     lowercase: function (object) { return object ? 'true' : 'false'; }, | ||||
|     uppercase: function (object) { return object ? 'TRUE' : 'FALSE'; }, | ||||
|     camelcase: function (object) { return object ? 'True' : 'False'; } | ||||
|   }, | ||||
|   defaultStyle: 'lowercase' | ||||
| }); | ||||
							
								
								
									
										116
									
								
								node_modules/js-yaml/lib/js-yaml/type/float.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										116
									
								
								node_modules/js-yaml/lib/js-yaml/type/float.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,116 @@ | ||||
| 'use strict'; | ||||
|  | ||||
| var common = require('../common'); | ||||
| var Type   = require('../type'); | ||||
|  | ||||
| var YAML_FLOAT_PATTERN = new RegExp( | ||||
|   // 2.5e4, 2.5 and integers | ||||
|   '^(?:[-+]?(?:0|[1-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?' + | ||||
|   // .2e4, .2 | ||||
|   // special case, seems not from spec | ||||
|   '|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?' + | ||||
|   // 20:59 | ||||
|   '|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*' + | ||||
|   // .inf | ||||
|   '|[-+]?\\.(?:inf|Inf|INF)' + | ||||
|   // .nan | ||||
|   '|\\.(?:nan|NaN|NAN))$'); | ||||
|  | ||||
| function resolveYamlFloat(data) { | ||||
|   if (data === null) return false; | ||||
|  | ||||
|   if (!YAML_FLOAT_PATTERN.test(data) || | ||||
|       // Quick hack to not allow integers end with `_` | ||||
|       // Probably should update regexp & check speed | ||||
|       data[data.length - 1] === '_') { | ||||
|     return false; | ||||
|   } | ||||
|  | ||||
|   return true; | ||||
| } | ||||
|  | ||||
| function constructYamlFloat(data) { | ||||
|   var value, sign, base, digits; | ||||
|  | ||||
|   value  = data.replace(/_/g, '').toLowerCase(); | ||||
|   sign   = value[0] === '-' ? -1 : 1; | ||||
|   digits = []; | ||||
|  | ||||
|   if ('+-'.indexOf(value[0]) >= 0) { | ||||
|     value = value.slice(1); | ||||
|   } | ||||
|  | ||||
|   if (value === '.inf') { | ||||
|     return (sign === 1) ? Number.POSITIVE_INFINITY : Number.NEGATIVE_INFINITY; | ||||
|  | ||||
|   } else if (value === '.nan') { | ||||
|     return NaN; | ||||
|  | ||||
|   } else if (value.indexOf(':') >= 0) { | ||||
|     value.split(':').forEach(function (v) { | ||||
|       digits.unshift(parseFloat(v, 10)); | ||||
|     }); | ||||
|  | ||||
|     value = 0.0; | ||||
|     base = 1; | ||||
|  | ||||
|     digits.forEach(function (d) { | ||||
|       value += d * base; | ||||
|       base *= 60; | ||||
|     }); | ||||
|  | ||||
|     return sign * value; | ||||
|  | ||||
|   } | ||||
|   return sign * parseFloat(value, 10); | ||||
| } | ||||
|  | ||||
|  | ||||
| var SCIENTIFIC_WITHOUT_DOT = /^[-+]?[0-9]+e/; | ||||
|  | ||||
| function representYamlFloat(object, style) { | ||||
|   var res; | ||||
|  | ||||
|   if (isNaN(object)) { | ||||
|     switch (style) { | ||||
|       case 'lowercase': return '.nan'; | ||||
|       case 'uppercase': return '.NAN'; | ||||
|       case 'camelcase': return '.NaN'; | ||||
|     } | ||||
|   } else if (Number.POSITIVE_INFINITY === object) { | ||||
|     switch (style) { | ||||
|       case 'lowercase': return '.inf'; | ||||
|       case 'uppercase': return '.INF'; | ||||
|       case 'camelcase': return '.Inf'; | ||||
|     } | ||||
|   } else if (Number.NEGATIVE_INFINITY === object) { | ||||
|     switch (style) { | ||||
|       case 'lowercase': return '-.inf'; | ||||
|       case 'uppercase': return '-.INF'; | ||||
|       case 'camelcase': return '-.Inf'; | ||||
|     } | ||||
|   } else if (common.isNegativeZero(object)) { | ||||
|     return '-0.0'; | ||||
|   } | ||||
|  | ||||
|   res = object.toString(10); | ||||
|  | ||||
|   // JS stringifier can build scientific format without dots: 5e-100, | ||||
|   // while YAML requres dot: 5.e-100. Fix it with simple hack | ||||
|  | ||||
|   return SCIENTIFIC_WITHOUT_DOT.test(res) ? res.replace('e', '.e') : res; | ||||
| } | ||||
|  | ||||
| function isFloat(object) { | ||||
|   return (Object.prototype.toString.call(object) === '[object Number]') && | ||||
|          (object % 1 !== 0 || common.isNegativeZero(object)); | ||||
| } | ||||
|  | ||||
| module.exports = new Type('tag:yaml.org,2002:float', { | ||||
|   kind: 'scalar', | ||||
|   resolve: resolveYamlFloat, | ||||
|   construct: constructYamlFloat, | ||||
|   predicate: isFloat, | ||||
|   represent: representYamlFloat, | ||||
|   defaultStyle: 'lowercase' | ||||
| }); | ||||
							
								
								
									
										173
									
								
								node_modules/js-yaml/lib/js-yaml/type/int.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										173
									
								
								node_modules/js-yaml/lib/js-yaml/type/int.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,173 @@ | ||||
| 'use strict'; | ||||
|  | ||||
| var common = require('../common'); | ||||
| var Type   = require('../type'); | ||||
|  | ||||
| function isHexCode(c) { | ||||
|   return ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)) || | ||||
|          ((0x41/* A */ <= c) && (c <= 0x46/* F */)) || | ||||
|          ((0x61/* a */ <= c) && (c <= 0x66/* f */)); | ||||
| } | ||||
|  | ||||
| function isOctCode(c) { | ||||
|   return ((0x30/* 0 */ <= c) && (c <= 0x37/* 7 */)); | ||||
| } | ||||
|  | ||||
| function isDecCode(c) { | ||||
|   return ((0x30/* 0 */ <= c) && (c <= 0x39/* 9 */)); | ||||
| } | ||||
|  | ||||
| function resolveYamlInteger(data) { | ||||
|   if (data === null) return false; | ||||
|  | ||||
|   var max = data.length, | ||||
|       index = 0, | ||||
|       hasDigits = false, | ||||
|       ch; | ||||
|  | ||||
|   if (!max) return false; | ||||
|  | ||||
|   ch = data[index]; | ||||
|  | ||||
|   // sign | ||||
|   if (ch === '-' || ch === '+') { | ||||
|     ch = data[++index]; | ||||
|   } | ||||
|  | ||||
|   if (ch === '0') { | ||||
|     // 0 | ||||
|     if (index + 1 === max) return true; | ||||
|     ch = data[++index]; | ||||
|  | ||||
|     // base 2, base 8, base 16 | ||||
|  | ||||
|     if (ch === 'b') { | ||||
|       // base 2 | ||||
|       index++; | ||||
|  | ||||
|       for (; index < max; index++) { | ||||
|         ch = data[index]; | ||||
|         if (ch === '_') continue; | ||||
|         if (ch !== '0' && ch !== '1') return false; | ||||
|         hasDigits = true; | ||||
|       } | ||||
|       return hasDigits && ch !== '_'; | ||||
|     } | ||||
|  | ||||
|  | ||||
|     if (ch === 'x') { | ||||
|       // base 16 | ||||
|       index++; | ||||
|  | ||||
|       for (; index < max; index++) { | ||||
|         ch = data[index]; | ||||
|         if (ch === '_') continue; | ||||
|         if (!isHexCode(data.charCodeAt(index))) return false; | ||||
|         hasDigits = true; | ||||
|       } | ||||
|       return hasDigits && ch !== '_'; | ||||
|     } | ||||
|  | ||||
|     // base 8 | ||||
|     for (; index < max; index++) { | ||||
|       ch = data[index]; | ||||
|       if (ch === '_') continue; | ||||
|       if (!isOctCode(data.charCodeAt(index))) return false; | ||||
|       hasDigits = true; | ||||
|     } | ||||
|     return hasDigits && ch !== '_'; | ||||
|   } | ||||
|  | ||||
|   // base 10 (except 0) or base 60 | ||||
|  | ||||
|   // value should not start with `_`; | ||||
|   if (ch === '_') return false; | ||||
|  | ||||
|   for (; index < max; index++) { | ||||
|     ch = data[index]; | ||||
|     if (ch === '_') continue; | ||||
|     if (ch === ':') break; | ||||
|     if (!isDecCode(data.charCodeAt(index))) { | ||||
|       return false; | ||||
|     } | ||||
|     hasDigits = true; | ||||
|   } | ||||
|  | ||||
|   // Should have digits and should not end with `_` | ||||
|   if (!hasDigits || ch === '_') return false; | ||||
|  | ||||
|   // if !base60 - done; | ||||
|   if (ch !== ':') return true; | ||||
|  | ||||
|   // base60 almost not used, no needs to optimize | ||||
|   return /^(:[0-5]?[0-9])+$/.test(data.slice(index)); | ||||
| } | ||||
|  | ||||
| function constructYamlInteger(data) { | ||||
|   var value = data, sign = 1, ch, base, digits = []; | ||||
|  | ||||
|   if (value.indexOf('_') !== -1) { | ||||
|     value = value.replace(/_/g, ''); | ||||
|   } | ||||
|  | ||||
|   ch = value[0]; | ||||
|  | ||||
|   if (ch === '-' || ch === '+') { | ||||
|     if (ch === '-') sign = -1; | ||||
|     value = value.slice(1); | ||||
|     ch = value[0]; | ||||
|   } | ||||
|  | ||||
|   if (value === '0') return 0; | ||||
|  | ||||
|   if (ch === '0') { | ||||
|     if (value[1] === 'b') return sign * parseInt(value.slice(2), 2); | ||||
|     if (value[1] === 'x') return sign * parseInt(value, 16); | ||||
|     return sign * parseInt(value, 8); | ||||
|   } | ||||
|  | ||||
|   if (value.indexOf(':') !== -1) { | ||||
|     value.split(':').forEach(function (v) { | ||||
|       digits.unshift(parseInt(v, 10)); | ||||
|     }); | ||||
|  | ||||
|     value = 0; | ||||
|     base = 1; | ||||
|  | ||||
|     digits.forEach(function (d) { | ||||
|       value += (d * base); | ||||
|       base *= 60; | ||||
|     }); | ||||
|  | ||||
|     return sign * value; | ||||
|  | ||||
|   } | ||||
|  | ||||
|   return sign * parseInt(value, 10); | ||||
| } | ||||
|  | ||||
| function isInteger(object) { | ||||
|   return (Object.prototype.toString.call(object)) === '[object Number]' && | ||||
|          (object % 1 === 0 && !common.isNegativeZero(object)); | ||||
| } | ||||
|  | ||||
| module.exports = new Type('tag:yaml.org,2002:int', { | ||||
|   kind: 'scalar', | ||||
|   resolve: resolveYamlInteger, | ||||
|   construct: constructYamlInteger, | ||||
|   predicate: isInteger, | ||||
|   represent: { | ||||
|     binary:      function (obj) { return obj >= 0 ? '0b' + obj.toString(2) : '-0b' + obj.toString(2).slice(1); }, | ||||
|     octal:       function (obj) { return obj >= 0 ? '0'  + obj.toString(8) : '-0'  + obj.toString(8).slice(1); }, | ||||
|     decimal:     function (obj) { return obj.toString(10); }, | ||||
|     /* eslint-disable max-len */ | ||||
|     hexadecimal: function (obj) { return obj >= 0 ? '0x' + obj.toString(16).toUpperCase() :  '-0x' + obj.toString(16).toUpperCase().slice(1); } | ||||
|   }, | ||||
|   defaultStyle: 'decimal', | ||||
|   styleAliases: { | ||||
|     binary:      [ 2,  'bin' ], | ||||
|     octal:       [ 8,  'oct' ], | ||||
|     decimal:     [ 10, 'dec' ], | ||||
|     hexadecimal: [ 16, 'hex' ] | ||||
|   } | ||||
| }); | ||||
							
								
								
									
										92
									
								
								node_modules/js-yaml/lib/js-yaml/type/js/function.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										92
									
								
								node_modules/js-yaml/lib/js-yaml/type/js/function.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,92 @@ | ||||
| 'use strict'; | ||||
|  | ||||
| var esprima; | ||||
|  | ||||
| // Browserified version does not have esprima | ||||
| // | ||||
| // 1. For node.js just require module as deps | ||||
| // 2. For browser try to require mudule via external AMD system. | ||||
| //    If not found - try to fallback to window.esprima. If not | ||||
| //    found too - then fail to parse. | ||||
| // | ||||
| try { | ||||
|   // workaround to exclude package from browserify list. | ||||
|   var _require = require; | ||||
|   esprima = _require('esprima'); | ||||
| } catch (_) { | ||||
|   /*global window */ | ||||
|   if (typeof window !== 'undefined') esprima = window.esprima; | ||||
| } | ||||
|  | ||||
| var Type = require('../../type'); | ||||
|  | ||||
| function resolveJavascriptFunction(data) { | ||||
|   if (data === null) return false; | ||||
|  | ||||
|   try { | ||||
|     var source = '(' + data + ')', | ||||
|         ast    = esprima.parse(source, { range: true }); | ||||
|  | ||||
|     if (ast.type                    !== 'Program'             || | ||||
|         ast.body.length             !== 1                     || | ||||
|         ast.body[0].type            !== 'ExpressionStatement' || | ||||
|         (ast.body[0].expression.type !== 'ArrowFunctionExpression' && | ||||
|           ast.body[0].expression.type !== 'FunctionExpression')) { | ||||
|       return false; | ||||
|     } | ||||
|  | ||||
|     return true; | ||||
|   } catch (err) { | ||||
|     return false; | ||||
|   } | ||||
| } | ||||
|  | ||||
| function constructJavascriptFunction(data) { | ||||
|   /*jslint evil:true*/ | ||||
|  | ||||
|   var source = '(' + data + ')', | ||||
|       ast    = esprima.parse(source, { range: true }), | ||||
|       params = [], | ||||
|       body; | ||||
|  | ||||
|   if (ast.type                    !== 'Program'             || | ||||
|       ast.body.length             !== 1                     || | ||||
|       ast.body[0].type            !== 'ExpressionStatement' || | ||||
|       (ast.body[0].expression.type !== 'ArrowFunctionExpression' && | ||||
|         ast.body[0].expression.type !== 'FunctionExpression')) { | ||||
|     throw new Error('Failed to resolve function'); | ||||
|   } | ||||
|  | ||||
|   ast.body[0].expression.params.forEach(function (param) { | ||||
|     params.push(param.name); | ||||
|   }); | ||||
|  | ||||
|   body = ast.body[0].expression.body.range; | ||||
|  | ||||
|   // Esprima's ranges include the first '{' and the last '}' characters on | ||||
|   // function expressions. So cut them out. | ||||
|   if (ast.body[0].expression.body.type === 'BlockStatement') { | ||||
|     /*eslint-disable no-new-func*/ | ||||
|     return new Function(params, source.slice(body[0] + 1, body[1] - 1)); | ||||
|   } | ||||
|   // ES6 arrow functions can omit the BlockStatement. In that case, just return | ||||
|   // the body. | ||||
|   /*eslint-disable no-new-func*/ | ||||
|   return new Function(params, 'return ' + source.slice(body[0], body[1])); | ||||
| } | ||||
|  | ||||
| function representJavascriptFunction(object /*, style*/) { | ||||
|   return object.toString(); | ||||
| } | ||||
|  | ||||
| function isFunction(object) { | ||||
|   return Object.prototype.toString.call(object) === '[object Function]'; | ||||
| } | ||||
|  | ||||
| module.exports = new Type('tag:yaml.org,2002:js/function', { | ||||
|   kind: 'scalar', | ||||
|   resolve: resolveJavascriptFunction, | ||||
|   construct: constructJavascriptFunction, | ||||
|   predicate: isFunction, | ||||
|   represent: representJavascriptFunction | ||||
| }); | ||||
							
								
								
									
										60
									
								
								node_modules/js-yaml/lib/js-yaml/type/js/regexp.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										60
									
								
								node_modules/js-yaml/lib/js-yaml/type/js/regexp.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,60 @@ | ||||
| 'use strict'; | ||||
|  | ||||
| var Type = require('../../type'); | ||||
|  | ||||
| function resolveJavascriptRegExp(data) { | ||||
|   if (data === null) return false; | ||||
|   if (data.length === 0) return false; | ||||
|  | ||||
|   var regexp = data, | ||||
|       tail   = /\/([gim]*)$/.exec(data), | ||||
|       modifiers = ''; | ||||
|  | ||||
|   // if regexp starts with '/' it can have modifiers and must be properly closed | ||||
|   // `/foo/gim` - modifiers tail can be maximum 3 chars | ||||
|   if (regexp[0] === '/') { | ||||
|     if (tail) modifiers = tail[1]; | ||||
|  | ||||
|     if (modifiers.length > 3) return false; | ||||
|     // if expression starts with /, is should be properly terminated | ||||
|     if (regexp[regexp.length - modifiers.length - 1] !== '/') return false; | ||||
|   } | ||||
|  | ||||
|   return true; | ||||
| } | ||||
|  | ||||
| function constructJavascriptRegExp(data) { | ||||
|   var regexp = data, | ||||
|       tail   = /\/([gim]*)$/.exec(data), | ||||
|       modifiers = ''; | ||||
|  | ||||
|   // `/foo/gim` - tail can be maximum 4 chars | ||||
|   if (regexp[0] === '/') { | ||||
|     if (tail) modifiers = tail[1]; | ||||
|     regexp = regexp.slice(1, regexp.length - modifiers.length - 1); | ||||
|   } | ||||
|  | ||||
|   return new RegExp(regexp, modifiers); | ||||
| } | ||||
|  | ||||
| function representJavascriptRegExp(object /*, style*/) { | ||||
|   var result = '/' + object.source + '/'; | ||||
|  | ||||
|   if (object.global) result += 'g'; | ||||
|   if (object.multiline) result += 'm'; | ||||
|   if (object.ignoreCase) result += 'i'; | ||||
|  | ||||
|   return result; | ||||
| } | ||||
|  | ||||
| function isRegExp(object) { | ||||
|   return Object.prototype.toString.call(object) === '[object RegExp]'; | ||||
| } | ||||
|  | ||||
| module.exports = new Type('tag:yaml.org,2002:js/regexp', { | ||||
|   kind: 'scalar', | ||||
|   resolve: resolveJavascriptRegExp, | ||||
|   construct: constructJavascriptRegExp, | ||||
|   predicate: isRegExp, | ||||
|   represent: representJavascriptRegExp | ||||
| }); | ||||
							
								
								
									
										28
									
								
								node_modules/js-yaml/lib/js-yaml/type/js/undefined.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								node_modules/js-yaml/lib/js-yaml/type/js/undefined.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,28 @@ | ||||
| 'use strict'; | ||||
|  | ||||
| var Type = require('../../type'); | ||||
|  | ||||
| function resolveJavascriptUndefined() { | ||||
|   return true; | ||||
| } | ||||
|  | ||||
| function constructJavascriptUndefined() { | ||||
|   /*eslint-disable no-undefined*/ | ||||
|   return undefined; | ||||
| } | ||||
|  | ||||
| function representJavascriptUndefined() { | ||||
|   return ''; | ||||
| } | ||||
|  | ||||
| function isUndefined(object) { | ||||
|   return typeof object === 'undefined'; | ||||
| } | ||||
|  | ||||
| module.exports = new Type('tag:yaml.org,2002:js/undefined', { | ||||
|   kind: 'scalar', | ||||
|   resolve: resolveJavascriptUndefined, | ||||
|   construct: constructJavascriptUndefined, | ||||
|   predicate: isUndefined, | ||||
|   represent: representJavascriptUndefined | ||||
| }); | ||||
							
								
								
									
										8
									
								
								node_modules/js-yaml/lib/js-yaml/type/map.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								node_modules/js-yaml/lib/js-yaml/type/map.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,8 @@ | ||||
| 'use strict'; | ||||
|  | ||||
| var Type = require('../type'); | ||||
|  | ||||
| module.exports = new Type('tag:yaml.org,2002:map', { | ||||
|   kind: 'mapping', | ||||
|   construct: function (data) { return data !== null ? data : {}; } | ||||
| }); | ||||
							
								
								
									
										12
									
								
								node_modules/js-yaml/lib/js-yaml/type/merge.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								node_modules/js-yaml/lib/js-yaml/type/merge.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,12 @@ | ||||
| 'use strict'; | ||||
|  | ||||
| var Type = require('../type'); | ||||
|  | ||||
| function resolveYamlMerge(data) { | ||||
|   return data === '<<' || data === null; | ||||
| } | ||||
|  | ||||
| module.exports = new Type('tag:yaml.org,2002:merge', { | ||||
|   kind: 'scalar', | ||||
|   resolve: resolveYamlMerge | ||||
| }); | ||||
							
								
								
									
										34
									
								
								node_modules/js-yaml/lib/js-yaml/type/null.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										34
									
								
								node_modules/js-yaml/lib/js-yaml/type/null.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,34 @@ | ||||
| 'use strict'; | ||||
|  | ||||
| var Type = require('../type'); | ||||
|  | ||||
| function resolveYamlNull(data) { | ||||
|   if (data === null) return true; | ||||
|  | ||||
|   var max = data.length; | ||||
|  | ||||
|   return (max === 1 && data === '~') || | ||||
|          (max === 4 && (data === 'null' || data === 'Null' || data === 'NULL')); | ||||
| } | ||||
|  | ||||
| function constructYamlNull() { | ||||
|   return null; | ||||
| } | ||||
|  | ||||
| function isNull(object) { | ||||
|   return object === null; | ||||
| } | ||||
|  | ||||
| module.exports = new Type('tag:yaml.org,2002:null', { | ||||
|   kind: 'scalar', | ||||
|   resolve: resolveYamlNull, | ||||
|   construct: constructYamlNull, | ||||
|   predicate: isNull, | ||||
|   represent: { | ||||
|     canonical: function () { return '~';    }, | ||||
|     lowercase: function () { return 'null'; }, | ||||
|     uppercase: function () { return 'NULL'; }, | ||||
|     camelcase: function () { return 'Null'; } | ||||
|   }, | ||||
|   defaultStyle: 'lowercase' | ||||
| }); | ||||
							
								
								
									
										44
									
								
								node_modules/js-yaml/lib/js-yaml/type/omap.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										44
									
								
								node_modules/js-yaml/lib/js-yaml/type/omap.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,44 @@ | ||||
| 'use strict'; | ||||
|  | ||||
| var Type = require('../type'); | ||||
|  | ||||
| var _hasOwnProperty = Object.prototype.hasOwnProperty; | ||||
| var _toString       = Object.prototype.toString; | ||||
|  | ||||
| function resolveYamlOmap(data) { | ||||
|   if (data === null) return true; | ||||
|  | ||||
|   var objectKeys = [], index, length, pair, pairKey, pairHasKey, | ||||
|       object = data; | ||||
|  | ||||
|   for (index = 0, length = object.length; index < length; index += 1) { | ||||
|     pair = object[index]; | ||||
|     pairHasKey = false; | ||||
|  | ||||
|     if (_toString.call(pair) !== '[object Object]') return false; | ||||
|  | ||||
|     for (pairKey in pair) { | ||||
|       if (_hasOwnProperty.call(pair, pairKey)) { | ||||
|         if (!pairHasKey) pairHasKey = true; | ||||
|         else return false; | ||||
|       } | ||||
|     } | ||||
|  | ||||
|     if (!pairHasKey) return false; | ||||
|  | ||||
|     if (objectKeys.indexOf(pairKey) === -1) objectKeys.push(pairKey); | ||||
|     else return false; | ||||
|   } | ||||
|  | ||||
|   return true; | ||||
| } | ||||
|  | ||||
| function constructYamlOmap(data) { | ||||
|   return data !== null ? data : []; | ||||
| } | ||||
|  | ||||
| module.exports = new Type('tag:yaml.org,2002:omap', { | ||||
|   kind: 'sequence', | ||||
|   resolve: resolveYamlOmap, | ||||
|   construct: constructYamlOmap | ||||
| }); | ||||
							
								
								
									
										53
									
								
								node_modules/js-yaml/lib/js-yaml/type/pairs.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										53
									
								
								node_modules/js-yaml/lib/js-yaml/type/pairs.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,53 @@ | ||||
| 'use strict'; | ||||
|  | ||||
| var Type = require('../type'); | ||||
|  | ||||
| var _toString = Object.prototype.toString; | ||||
|  | ||||
| function resolveYamlPairs(data) { | ||||
|   if (data === null) return true; | ||||
|  | ||||
|   var index, length, pair, keys, result, | ||||
|       object = data; | ||||
|  | ||||
|   result = new Array(object.length); | ||||
|  | ||||
|   for (index = 0, length = object.length; index < length; index += 1) { | ||||
|     pair = object[index]; | ||||
|  | ||||
|     if (_toString.call(pair) !== '[object Object]') return false; | ||||
|  | ||||
|     keys = Object.keys(pair); | ||||
|  | ||||
|     if (keys.length !== 1) return false; | ||||
|  | ||||
|     result[index] = [ keys[0], pair[keys[0]] ]; | ||||
|   } | ||||
|  | ||||
|   return true; | ||||
| } | ||||
|  | ||||
| function constructYamlPairs(data) { | ||||
|   if (data === null) return []; | ||||
|  | ||||
|   var index, length, pair, keys, result, | ||||
|       object = data; | ||||
|  | ||||
|   result = new Array(object.length); | ||||
|  | ||||
|   for (index = 0, length = object.length; index < length; index += 1) { | ||||
|     pair = object[index]; | ||||
|  | ||||
|     keys = Object.keys(pair); | ||||
|  | ||||
|     result[index] = [ keys[0], pair[keys[0]] ]; | ||||
|   } | ||||
|  | ||||
|   return result; | ||||
| } | ||||
|  | ||||
| module.exports = new Type('tag:yaml.org,2002:pairs', { | ||||
|   kind: 'sequence', | ||||
|   resolve: resolveYamlPairs, | ||||
|   construct: constructYamlPairs | ||||
| }); | ||||
							
								
								
									
										8
									
								
								node_modules/js-yaml/lib/js-yaml/type/seq.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								node_modules/js-yaml/lib/js-yaml/type/seq.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,8 @@ | ||||
| 'use strict'; | ||||
|  | ||||
| var Type = require('../type'); | ||||
|  | ||||
| module.exports = new Type('tag:yaml.org,2002:seq', { | ||||
|   kind: 'sequence', | ||||
|   construct: function (data) { return data !== null ? data : []; } | ||||
| }); | ||||
							
								
								
									
										29
									
								
								node_modules/js-yaml/lib/js-yaml/type/set.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										29
									
								
								node_modules/js-yaml/lib/js-yaml/type/set.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,29 @@ | ||||
| 'use strict'; | ||||
|  | ||||
| var Type = require('../type'); | ||||
|  | ||||
| var _hasOwnProperty = Object.prototype.hasOwnProperty; | ||||
|  | ||||
| function resolveYamlSet(data) { | ||||
|   if (data === null) return true; | ||||
|  | ||||
|   var key, object = data; | ||||
|  | ||||
|   for (key in object) { | ||||
|     if (_hasOwnProperty.call(object, key)) { | ||||
|       if (object[key] !== null) return false; | ||||
|     } | ||||
|   } | ||||
|  | ||||
|   return true; | ||||
| } | ||||
|  | ||||
| function constructYamlSet(data) { | ||||
|   return data !== null ? data : {}; | ||||
| } | ||||
|  | ||||
| module.exports = new Type('tag:yaml.org,2002:set', { | ||||
|   kind: 'mapping', | ||||
|   resolve: resolveYamlSet, | ||||
|   construct: constructYamlSet | ||||
| }); | ||||
							
								
								
									
										8
									
								
								node_modules/js-yaml/lib/js-yaml/type/str.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								node_modules/js-yaml/lib/js-yaml/type/str.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,8 @@ | ||||
| 'use strict'; | ||||
|  | ||||
| var Type = require('../type'); | ||||
|  | ||||
| module.exports = new Type('tag:yaml.org,2002:str', { | ||||
|   kind: 'scalar', | ||||
|   construct: function (data) { return data !== null ? data : ''; } | ||||
| }); | ||||
							
								
								
									
										88
									
								
								node_modules/js-yaml/lib/js-yaml/type/timestamp.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										88
									
								
								node_modules/js-yaml/lib/js-yaml/type/timestamp.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1,88 @@ | ||||
| 'use strict'; | ||||
|  | ||||
| var Type = require('../type'); | ||||
|  | ||||
| var YAML_DATE_REGEXP = new RegExp( | ||||
|   '^([0-9][0-9][0-9][0-9])'          + // [1] year | ||||
|   '-([0-9][0-9])'                    + // [2] month | ||||
|   '-([0-9][0-9])$');                   // [3] day | ||||
|  | ||||
| var YAML_TIMESTAMP_REGEXP = new RegExp( | ||||
|   '^([0-9][0-9][0-9][0-9])'          + // [1] year | ||||
|   '-([0-9][0-9]?)'                   + // [2] month | ||||
|   '-([0-9][0-9]?)'                   + // [3] day | ||||
|   '(?:[Tt]|[ \\t]+)'                 + // ... | ||||
|   '([0-9][0-9]?)'                    + // [4] hour | ||||
|   ':([0-9][0-9])'                    + // [5] minute | ||||
|   ':([0-9][0-9])'                    + // [6] second | ||||
|   '(?:\\.([0-9]*))?'                 + // [7] fraction | ||||
|   '(?:[ \\t]*(Z|([-+])([0-9][0-9]?)' + // [8] tz [9] tz_sign [10] tz_hour | ||||
|   '(?::([0-9][0-9]))?))?$');           // [11] tz_minute | ||||
|  | ||||
| function resolveYamlTimestamp(data) { | ||||
|   if (data === null) return false; | ||||
|   if (YAML_DATE_REGEXP.exec(data) !== null) return true; | ||||
|   if (YAML_TIMESTAMP_REGEXP.exec(data) !== null) return true; | ||||
|   return false; | ||||
| } | ||||
|  | ||||
| function constructYamlTimestamp(data) { | ||||
|   var match, year, month, day, hour, minute, second, fraction = 0, | ||||
|       delta = null, tz_hour, tz_minute, date; | ||||
|  | ||||
|   match = YAML_DATE_REGEXP.exec(data); | ||||
|   if (match === null) match = YAML_TIMESTAMP_REGEXP.exec(data); | ||||
|  | ||||
|   if (match === null) throw new Error('Date resolve error'); | ||||
|  | ||||
|   // match: [1] year [2] month [3] day | ||||
|  | ||||
|   year = +(match[1]); | ||||
|   month = +(match[2]) - 1; // JS month starts with 0 | ||||
|   day = +(match[3]); | ||||
|  | ||||
|   if (!match[4]) { // no hour | ||||
|     return new Date(Date.UTC(year, month, day)); | ||||
|   } | ||||
|  | ||||
|   // match: [4] hour [5] minute [6] second [7] fraction | ||||
|  | ||||
|   hour = +(match[4]); | ||||
|   minute = +(match[5]); | ||||
|   second = +(match[6]); | ||||
|  | ||||
|   if (match[7]) { | ||||
|     fraction = match[7].slice(0, 3); | ||||
|     while (fraction.length < 3) { // milli-seconds | ||||
|       fraction += '0'; | ||||
|     } | ||||
|     fraction = +fraction; | ||||
|   } | ||||
|  | ||||
|   // match: [8] tz [9] tz_sign [10] tz_hour [11] tz_minute | ||||
|  | ||||
|   if (match[9]) { | ||||
|     tz_hour = +(match[10]); | ||||
|     tz_minute = +(match[11] || 0); | ||||
|     delta = (tz_hour * 60 + tz_minute) * 60000; // delta in mili-seconds | ||||
|     if (match[9] === '-') delta = -delta; | ||||
|   } | ||||
|  | ||||
|   date = new Date(Date.UTC(year, month, day, hour, minute, second, fraction)); | ||||
|  | ||||
|   if (delta) date.setTime(date.getTime() - delta); | ||||
|  | ||||
|   return date; | ||||
| } | ||||
|  | ||||
| function representYamlTimestamp(object /*, style*/) { | ||||
|   return object.toISOString(); | ||||
| } | ||||
|  | ||||
| module.exports = new Type('tag:yaml.org,2002:timestamp', { | ||||
|   kind: 'scalar', | ||||
|   resolve: resolveYamlTimestamp, | ||||
|   construct: constructYamlTimestamp, | ||||
|   instanceOf: Date, | ||||
|   represent: representYamlTimestamp | ||||
| }); | ||||
		Reference in New Issue
	
	Block a user
	 Shivam Mathur
					Shivam Mathur