init
This commit is contained in:
		
							
								
								
									
										2
									
								
								node_modules/de-indent/.npmignore
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								node_modules/de-indent/.npmignore
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,2 @@
 | 
			
		||||
node_modules
 | 
			
		||||
.DS_Store
 | 
			
		||||
							
								
								
									
										45
									
								
								node_modules/de-indent/index.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										45
									
								
								node_modules/de-indent/index.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,45 @@
 | 
			
		||||
var splitRE = /\r?\n/g
 | 
			
		||||
var emptyRE = /^\s*$/
 | 
			
		||||
var needFixRE = /^(\r?\n)*[\t\s]/
 | 
			
		||||
 | 
			
		||||
module.exports = function deindent (str) {
 | 
			
		||||
  if (!needFixRE.test(str)) {
 | 
			
		||||
    return str
 | 
			
		||||
  }
 | 
			
		||||
  var lines = str.split(splitRE)
 | 
			
		||||
  var min = Infinity
 | 
			
		||||
  var type, cur, c
 | 
			
		||||
  for (var i = 0; i < lines.length; i++) {
 | 
			
		||||
    var line = lines[i]
 | 
			
		||||
    if (!emptyRE.test(line)) {
 | 
			
		||||
      if (!type) {
 | 
			
		||||
        c = line.charAt(0)
 | 
			
		||||
        if (c === ' ' || c === '\t') {
 | 
			
		||||
          type = c
 | 
			
		||||
          cur = count(line, type)
 | 
			
		||||
          if (cur < min) {
 | 
			
		||||
            min = cur
 | 
			
		||||
          }
 | 
			
		||||
        } else {
 | 
			
		||||
          return str
 | 
			
		||||
        }
 | 
			
		||||
      } else {
 | 
			
		||||
        cur = count(line, type)
 | 
			
		||||
        if (cur < min) {
 | 
			
		||||
          min = cur
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
  return lines.map(function (line) {
 | 
			
		||||
    return line.slice(min)
 | 
			
		||||
  }).join('\n')
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function count (line, type) {
 | 
			
		||||
  var i = 0
 | 
			
		||||
  while (line.charAt(i) === type) {
 | 
			
		||||
    i++
 | 
			
		||||
  }
 | 
			
		||||
  return i
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										25
									
								
								node_modules/de-indent/package.json
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								node_modules/de-indent/package.json
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,25 @@
 | 
			
		||||
{
 | 
			
		||||
  "name": "de-indent",
 | 
			
		||||
  "version": "1.0.2",
 | 
			
		||||
  "description": "remove extra indent from a block of code",
 | 
			
		||||
  "main": "index.js",
 | 
			
		||||
  "scripts": {
 | 
			
		||||
    "test": "mocha"
 | 
			
		||||
  },
 | 
			
		||||
  "repository": {
 | 
			
		||||
    "type": "git",
 | 
			
		||||
    "url": "git+https://github.com/yyx990803/de-indent.git"
 | 
			
		||||
  },
 | 
			
		||||
  "keywords": [
 | 
			
		||||
    "deindent"
 | 
			
		||||
  ],
 | 
			
		||||
  "author": "Evan You",
 | 
			
		||||
  "license": "MIT",
 | 
			
		||||
  "bugs": {
 | 
			
		||||
    "url": "https://github.com/yyx990803/de-indent/issues"
 | 
			
		||||
  },
 | 
			
		||||
  "homepage": "https://github.com/yyx990803/de-indent#readme",
 | 
			
		||||
  "devDependencies": {
 | 
			
		||||
    "mocha": "^2.3.4"
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										30
									
								
								node_modules/de-indent/test.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										30
									
								
								node_modules/de-indent/test.js
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,30 @@
 | 
			
		||||
var assert = require('assert')
 | 
			
		||||
var deindent = require('./index')
 | 
			
		||||
 | 
			
		||||
describe('de-indent', function () {
 | 
			
		||||
 | 
			
		||||
  it('0 indent', function () {
 | 
			
		||||
    var str = '\nabc\n  bcd\n  cde\nefg'
 | 
			
		||||
    var res = deindent(str)
 | 
			
		||||
    assert.equal(str, res)
 | 
			
		||||
  })
 | 
			
		||||
 | 
			
		||||
  it('non-0 indent', function () {
 | 
			
		||||
    var str = '  abc\n    bcd\n  cde\n    efg'
 | 
			
		||||
    var res = deindent(str)
 | 
			
		||||
    assert.equal(res, 'abc\n  bcd\ncde\n  efg')
 | 
			
		||||
  })
 | 
			
		||||
 | 
			
		||||
  it('tabs', function () {
 | 
			
		||||
    var str = '\tabc\n\t\tbcd\n\tcde\n\t\tefg'
 | 
			
		||||
    var res = deindent(str)
 | 
			
		||||
    assert.equal(res, 'abc\n\tbcd\ncde\n\tefg')
 | 
			
		||||
  })
 | 
			
		||||
 | 
			
		||||
  it('single line', function () {
 | 
			
		||||
    var str = '\n  <h2 class="red">{{msg}}</h2>\n'
 | 
			
		||||
    var res = deindent(str)
 | 
			
		||||
    assert.equal(res, '\n<h2 class="red">{{msg}}</h2>\n')
 | 
			
		||||
  })
 | 
			
		||||
 | 
			
		||||
})
 | 
			
		||||
		Reference in New Issue
	
	Block a user