first
This commit is contained in:
21
node_modules/merge-source-map/LICENSE
generated
vendored
Normal file
21
node_modules/merge-source-map/LICENSE
generated
vendored
Normal file
@ -0,0 +1,21 @@
|
||||
The MIT License (MIT)
|
||||
|
||||
Copyright (c) keik <k4t0.kei@gmail.com>
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
91
node_modules/merge-source-map/README.md
generated
vendored
Normal file
91
node_modules/merge-source-map/README.md
generated
vendored
Normal file
@ -0,0 +1,91 @@
|
||||
# merge-source-map
|
||||
|
||||
[](https://npmjs.org/package/merge-source-map)
|
||||
[](https://npmjs.org/package/merge-source-map)
|
||||
[](https://travis-ci.org/keik/merge-source-map)
|
||||
[](https://coveralls.io/github/keik/merge-source-map)
|
||||
|
||||
Merge old source map and new source map in multi-transform flow
|
||||
|
||||
|
||||
# API
|
||||
|
||||
```javascript
|
||||
var merge = require('merge-source-map')
|
||||
```
|
||||
|
||||
|
||||
## `merge(oldMap, newMap)`
|
||||
|
||||
Merge old source map and new source map and return merged.
|
||||
If old or new source map value is falsy, return another one as it is.
|
||||
|
||||
<dl>
|
||||
<dt>
|
||||
<code>oldMap</code> : <code>object|undefined</code>
|
||||
</dt>
|
||||
<dd>
|
||||
old source map object
|
||||
</dd>
|
||||
|
||||
<dt>
|
||||
<code>newmap</code> : <code>object|undefined</code>
|
||||
</dt>
|
||||
<dd>
|
||||
new source map object
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
# Example
|
||||
|
||||
```javascript
|
||||
var esprima = require('esprima'),
|
||||
estraverse = require('estraverse'),
|
||||
escodegen = require('escodegen'),
|
||||
convert = require('convert-source-map'),
|
||||
merge = require('merge-source-map')
|
||||
|
||||
const CODE = 'a = 1',
|
||||
FILEPATH = 'a.js'
|
||||
|
||||
// create AST of original code
|
||||
var ast = esprima.parse(CODE, {sourceType: 'module', loc: true})
|
||||
|
||||
// transform AST of original code
|
||||
estraverse.replace(ast, {
|
||||
enter: function(node, parent) { /* change AST */ },
|
||||
leave: function(node, parent) { /* change AST */ }
|
||||
})
|
||||
|
||||
// generate code and source map from transformed AST
|
||||
var gen = escodegen.generate(ast, {
|
||||
sourceMap: FILEPATH,
|
||||
sourceMapWithCode: true,
|
||||
sourceContent: CODE
|
||||
})
|
||||
|
||||
// merge old source map and new source map
|
||||
var oldMap = convert.fromSource(CODE) && convert.fromSource(CODE).toObject(),
|
||||
newMap = JSON.parse(gen.map.toString()),
|
||||
mergedMap = merge(oldMap, newMap),
|
||||
mapComment = convert.fromObject(mergedMap).toComment()
|
||||
|
||||
// attach merge source map to transformed code
|
||||
var transformed = gen.code + '\n' + mapComment
|
||||
|
||||
console.log(transformed);
|
||||
```
|
||||
|
||||
|
||||
# Test
|
||||
|
||||
```
|
||||
% npm install
|
||||
% npm test
|
||||
```
|
||||
|
||||
|
||||
# License
|
||||
|
||||
MIT (c) keik
|
65
node_modules/merge-source-map/index.js
generated
vendored
Normal file
65
node_modules/merge-source-map/index.js
generated
vendored
Normal file
@ -0,0 +1,65 @@
|
||||
var sourceMap = require('source-map')
|
||||
var SourceMapConsumer = sourceMap.SourceMapConsumer
|
||||
var SourceMapGenerator = sourceMap.SourceMapGenerator
|
||||
|
||||
module.exports = merge
|
||||
|
||||
/**
|
||||
* Merge old source map and new source map and return merged.
|
||||
* If old or new source map value is falsy, return another one as it is.
|
||||
*
|
||||
* @param {object|string} [oldMap] old source map object
|
||||
* @param {object|string} [newmap] new source map object
|
||||
* @return {object|undefined} merged source map object, or undefined when both old and new source map are undefined
|
||||
*/
|
||||
function merge(oldMap, newMap) {
|
||||
if (!oldMap) return newMap
|
||||
if (!newMap) return oldMap
|
||||
|
||||
var oldMapConsumer = new SourceMapConsumer(oldMap)
|
||||
var newMapConsumer = new SourceMapConsumer(newMap)
|
||||
var mergedMapGenerator = new SourceMapGenerator()
|
||||
|
||||
// iterate on new map and overwrite original position of new map with one of old map
|
||||
newMapConsumer.eachMapping(function(m) {
|
||||
// pass when `originalLine` is null.
|
||||
// It occurs in case that the node does not have origin in original code.
|
||||
if (m.originalLine == null) return
|
||||
|
||||
var origPosInOldMap = oldMapConsumer.originalPositionFor({
|
||||
line: m.originalLine,
|
||||
column: m.originalColumn
|
||||
})
|
||||
|
||||
if (origPosInOldMap.source == null) return
|
||||
|
||||
mergedMapGenerator.addMapping({
|
||||
original: {
|
||||
line: origPosInOldMap.line,
|
||||
column: origPosInOldMap.column
|
||||
},
|
||||
generated: {
|
||||
line: m.generatedLine,
|
||||
column: m.generatedColumn
|
||||
},
|
||||
source: origPosInOldMap.source,
|
||||
name: origPosInOldMap.name
|
||||
})
|
||||
})
|
||||
|
||||
var consumers = [oldMapConsumer, newMapConsumer]
|
||||
consumers.forEach(function(consumer) {
|
||||
consumer.sources.forEach(function(sourceFile) {
|
||||
mergedMapGenerator._sources.add(sourceFile)
|
||||
var sourceContent = consumer.sourceContentFor(sourceFile)
|
||||
if (sourceContent != null) {
|
||||
mergedMapGenerator.setSourceContent(sourceFile, sourceContent)
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
mergedMapGenerator._sourceRoot = oldMap.sourceRoot
|
||||
mergedMapGenerator._file = oldMap.file
|
||||
|
||||
return JSON.parse(mergedMapGenerator.toString())
|
||||
}
|
71
node_modules/merge-source-map/package.json
generated
vendored
Normal file
71
node_modules/merge-source-map/package.json
generated
vendored
Normal file
@ -0,0 +1,71 @@
|
||||
{
|
||||
"_from": "merge-source-map@^1.1.0",
|
||||
"_id": "merge-source-map@1.1.0",
|
||||
"_inBundle": false,
|
||||
"_integrity": "sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw==",
|
||||
"_location": "/merge-source-map",
|
||||
"_phantomChildren": {},
|
||||
"_requested": {
|
||||
"type": "range",
|
||||
"registry": true,
|
||||
"raw": "merge-source-map@^1.1.0",
|
||||
"name": "merge-source-map",
|
||||
"escapedName": "merge-source-map",
|
||||
"rawSpec": "^1.1.0",
|
||||
"saveSpec": null,
|
||||
"fetchSpec": "^1.1.0"
|
||||
},
|
||||
"_requiredBy": [
|
||||
"/@vue/component-compiler-utils"
|
||||
],
|
||||
"_resolved": "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.1.0.tgz",
|
||||
"_shasum": "2fdde7e6020939f70906a68f2d7ae685e4c8c646",
|
||||
"_spec": "merge-source-map@^1.1.0",
|
||||
"_where": "C:\\Users\\zhouxueli\\Desktop\\scheduling-app\\node_modules\\@vue\\component-compiler-utils",
|
||||
"author": {
|
||||
"name": "keik",
|
||||
"email": "k4t0.kei@gmail.com"
|
||||
},
|
||||
"bugs": {
|
||||
"url": "https://github.com/keik/merge-source-map/issues"
|
||||
},
|
||||
"bundleDependencies": false,
|
||||
"dependencies": {
|
||||
"source-map": "^0.6.1"
|
||||
},
|
||||
"deprecated": false,
|
||||
"description": "Merge old source map and new source map in multi-transform flow",
|
||||
"devDependencies": {
|
||||
"babel-core": "^6.25.0",
|
||||
"babel-plugin-syntax-object-rest-spread": "^6.13.0",
|
||||
"babel-plugin-transform-es2015-arrow-functions": "^6.22.0",
|
||||
"babel-plugin-transform-es2015-spread": "^6.22.0",
|
||||
"coffee-script": "^1.12.6",
|
||||
"convert-source-map": "^1.5.0",
|
||||
"escodegen": "^1.8.1",
|
||||
"eslint": "^3.19.0",
|
||||
"esprima": "^3.1.3",
|
||||
"estraverse": "^4.2.0",
|
||||
"nyc": "^8.4.0",
|
||||
"tape": "^4.6.3"
|
||||
},
|
||||
"files": [],
|
||||
"homepage": "https://github.com/keik/merge-source-map#readme",
|
||||
"keywords": [
|
||||
"sourcemap",
|
||||
"source-map"
|
||||
],
|
||||
"license": "MIT",
|
||||
"main": "index.js",
|
||||
"name": "merge-source-map",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/keik/merge-source-map.git"
|
||||
},
|
||||
"scripts": {
|
||||
"lint": "eslint index.js 'test/**/*.js'",
|
||||
"test": "nyc tape test/*.js",
|
||||
"version": "npm run lint && npm run test"
|
||||
},
|
||||
"version": "1.1.0"
|
||||
}
|
Reference in New Issue
Block a user