├── History.md ├── LICENSE ├── README.md ├── index.js ├── node_modules └── source-map │ ├── CHANGELOG.md │ ├── LICENSE │ ├── README.md │ ├── dist │ ├── AXObjectsMap.js │ ├── alternate-stylesheet.js │ ├── box-shadow.js │ ├── css-text-indent.js │ ├── pointer.js │ ├── readable_serial.js │ ├── string-replace-all-stage-4.js │ ├── superscriptRole.js │ ├── template-literals.js │ ├── timesLimit.js │ ├── wasm.js │ ├── will-change.js │ ├── woff.js │ ├── write.js │ └── xml-serializer.js │ ├── lib │ ├── array-set.js │ ├── base64-vlq.js │ ├── base64.js │ ├── binary-search.js │ ├── mapping-list.js │ ├── quick-sort.js │ ├── source-map-consumer.js │ ├── source-map-generator.js │ ├── source-node.js │ └── util.js │ ├── package.json │ ├── source-map.d.ts │ └── source-map.js ├── package.json ├── tokenizer ├── marker.js ├── token.js └── tokenize.js ├── utils ├── clone-array.js ├── format-position.js ├── has-protocol.js ├── is-data-uri-resource.js ├── is-http-resource.js ├── is-https-resource.js ├── is-import.js ├── is-remote-resource.js ├── natural-compare.js ├── override.js └── split.js └── writer ├── helpers.js ├── one-time.js ├── simple.js └── source-maps.js /LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (C) 2017 JakubPawlowicz.com 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is furnished 8 | to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 14 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 15 | OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 16 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 17 | DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, 18 | ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 19 | DEALINGS IN THE SOFTWARE. 20 | -------------------------------------------------------------------------------- /index.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./lib/clean'); 2 | -------------------------------------------------------------------------------- /node_modules/source-map/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Change Log 2 | 3 | ## 0.5.6 4 | 5 | * Fix for regression when people were using numbers as names in source maps. See 6 | #236. 7 | 8 | ## 0.5.5 9 | 10 | * Fix "regression" of unsupported, implementation behavior that half the world 11 | happens to have come to depend on. See #235. 12 | 13 | * Fix regression involving function hoisting in SpiderMonkey. See #233. 14 | 15 | ## 0.5.4 16 | 17 | * Large performance improvements to source-map serialization. See #228 and #229. 18 | 19 | ## 0.5.3 20 | 21 | * Do not include unnecessary distribution files. See 22 | commit ef7006f8d1647e0a83fdc60f04f5a7ca54886f86. 23 | 24 | ## 0.5.2 25 | 26 | * Include browser distributions of the library in package.json's `files`. See 27 | issue #212. 28 | 29 | ## 0.5.1 30 | 31 | * Fix latent bugs in IndexedSourceMapConsumer.prototype._parseMappings. See 32 | ff05274becc9e6e1295ed60f3ea090d31d843379. 33 | 34 | ## 0.5.0 35 | 36 | * Node 0.8 is no longer supported. 37 | 38 | * Use webpack instead of dryice for bundling. 39 | 40 | * Big speedups serializing source maps. See pull request #203. 41 | 42 | * Fix a bug with `SourceMapConsumer.prototype.sourceContentFor` and sources that 43 | explicitly start with the source root. See issue #199. 44 | 45 | ## 0.4.4 46 | 47 | * Fix an issue where using a `SourceMapGenerator` after having created a 48 | `SourceMapConsumer` from it via `SourceMapConsumer.fromSourceMap` failed. See 49 | issue #191. 50 | 51 | * Fix an issue with where `SourceMapGenerator` would mistakenly consider 52 | different mappings as duplicates of each other and avoid generating them. See 53 | issue #192. 54 | 55 | ## 0.4.3 56 | 57 | * A very large number of performance improvements, particularly when parsing 58 | source maps. Collectively about 75% of time shaved off of the source map 59 | parsing benchmark! 60 | 61 | * Fix a bug in `SourceMapConsumer.prototype.allGeneratedPositionsFor` and fuzzy 62 | searching in the presence of a column option. See issue #177. 63 | 64 | * Fix a bug with joining a source and its source root when the source is above 65 | the root. See issue #182. 66 | 67 | * Add the `SourceMapConsumer.prototype.hasContentsOfAllSources` method to 68 | determine when all sources' contents are inlined into the source map. See 69 | issue #190. 70 | 71 | ## 0.4.2 72 | 73 | * Add an `.npmignore` file so that the benchmarks aren't pulled down by 74 | dependent projects. Issue #169. 75 | 76 | * Add an optional `column` argument to 77 | `SourceMapConsumer.prototype.allGeneratedPositionsFor` and better handle lines 78 | with no mappings. Issues #172 and #173. 79 | 80 | ## 0.4.1 81 | 82 | * Fix accidentally defining a global variable. #170. 83 | 84 | ## 0.4.0 85 | 86 | * The default direction for fuzzy searching was changed back to its original 87 | direction. See #164. 88 | 89 | * There is now a `bias` option you can supply to `SourceMapConsumer` to control 90 | the fuzzy searching direction. See #167. 91 | 92 | * About an 8% speed up in parsing source maps. See #159. 93 | 94 | * Added a benchmark for parsing and generating source maps. 95 | 96 | ## 0.3.0 97 | 98 | * Change the default direction that searching for positions fuzzes when there is 99 | not an exact match. See #154. 100 | 101 | * Support for environments using json2.js for JSON serialization. See #156. 102 | 103 | ## 0.2.0 104 | 105 | * Support for consuming "indexed" source maps which do not have any remote 106 | sections. See pull request #127. This introduces a minor backwards 107 | incompatibility if you are monkey patching `SourceMapConsumer.prototype` 108 | methods. 109 | 110 | ## 0.1.43 111 | 112 | * Performance improvements for `SourceMapGenerator` and `SourceNode`. See issue 113 | #148 for some discussion and issues #150, #151, and #152 for implementations. 114 | 115 | ## 0.1.42 116 | 117 | * Fix an issue where `SourceNode`s from different versions of the source-map 118 | library couldn't be used in conjunction with each other. See issue #142. 119 | 120 | ## 0.1.41 121 | 122 | * Fix a bug with getting the source content of relative sources with a "./" 123 | prefix. See issue #145 and [Bug 1090768](bugzil.la/1090768). 124 | 125 | * Add the `SourceMapConsumer.prototype.computeColumnSpans` method to compute the 126 | column span of each mapping. 127 | 128 | * Add the `SourceMapConsumer.prototype.allGeneratedPositionsFor` method to find 129 | all generated positions associated with a given original source and line. 130 | 131 | ## 0.1.40 132 | 133 | * Performance improvements for parsing source maps in SourceMapConsumer. 134 | 135 | ## 0.1.39 136 | 137 | * Fix a bug where setting a source's contents to null before any source content 138 | had been set before threw a TypeError. See issue #131. 139 | 140 | ## 0.1.38 141 | 142 | * Fix a bug where finding relative paths from an empty path were creating 143 | absolute paths. See issue #129. 144 | 145 | ## 0.1.37 146 | 147 | * Fix a bug where if the source root was an empty string, relative source paths 148 | would turn into absolute source paths. Issue #124. 149 | 150 | ## 0.1.36 151 | 152 | * Allow the `names` mapping property to be an empty string. Issue #121. 153 | 154 | ## 0.1.35 155 | 156 | * A third optional parameter was added to `SourceNode.fromStringWithSourceMap` 157 | to specify a path that relative sources in the second parameter should be 158 | relative to. Issue #105. 159 | 160 | * If no file property is given to a `SourceMapGenerator`, then the resulting 161 | source map will no longer have a `null` file property. The property will 162 | simply not exist. Issue #104. 163 | 164 | * Fixed a bug where consecutive newlines were ignored in `SourceNode`s. 165 | Issue #116. 166 | 167 | ## 0.1.34 168 | 169 | * Make `SourceNode` work with windows style ("\r\n") newlines. Issue #103. 170 | 171 | * Fix bug involving source contents and the 172 | `SourceMapGenerator.prototype.applySourceMap`. Issue #100. 173 | 174 | ## 0.1.33 175 | 176 | * Fix some edge cases surrounding path joining and URL resolution. 177 | 178 | * Add a third parameter for relative path to 179 | `SourceMapGenerator.prototype.applySourceMap`. 180 | 181 | * Fix issues with mappings and EOLs. 182 | 183 | ## 0.1.32 184 | 185 | * Fixed a bug where SourceMapConsumer couldn't handle negative relative columns 186 | (issue 92). 187 | 188 | * Fixed test runner to actually report number of failed tests as its process 189 | exit code. 190 | 191 | * Fixed a typo when reporting bad mappings (issue 87). 192 | 193 | ## 0.1.31 194 | 195 | * Delay parsing the mappings in SourceMapConsumer until queried for a source 196 | location. 197 | 198 | * Support Sass source maps (which at the time of writing deviate from the spec 199 | in small ways) in SourceMapConsumer. 200 | 201 | ## 0.1.30 202 | 203 | * Do not join source root with a source, when the source is a data URI. 204 | 205 | * Extend the test runner to allow running single specific test files at a time. 206 | 207 | * Performance improvements in `SourceNode.prototype.walk` and 208 | `SourceMapConsumer.prototype.eachMapping`. 209 | 210 | * Source map browser builds will now work inside Workers. 211 | 212 | * Better error messages when attempting to add an invalid mapping to a 213 | `SourceMapGenerator`. 214 | 215 | ## 0.1.29 216 | 217 | * Allow duplicate entries in the `names` and `sources` arrays of source maps 218 | (usually from TypeScript) we are parsing. Fixes github issue 72. 219 | 220 | ## 0.1.28 221 | 222 | * Skip duplicate mappings when creating source maps from SourceNode; github 223 | issue 75. 224 | 225 | ## 0.1.27 226 | 227 | * Don't throw an error when the `file` property is missing in SourceMapConsumer, 228 | we don't use it anyway. 229 | 230 | ## 0.1.26 231 | 232 | * Fix SourceNode.fromStringWithSourceMap for empty maps. Fixes github issue 70. 233 | 234 | ## 0.1.25 235 | 236 | * Make compatible with browserify 237 | 238 | ## 0.1.24 239 | 240 | * Fix issue with absolute paths and `file://` URIs. See 241 | https://bugzilla.mozilla.org/show_bug.cgi?id=885597 242 | 243 | ## 0.1.23 244 | 245 | * Fix issue with absolute paths and sourcesContent, github issue 64. 246 | 247 | ## 0.1.22 248 | 249 | * Ignore duplicate mappings in SourceMapGenerator. Fixes github issue 21. 250 | 251 | ## 0.1.21 252 | 253 | * Fixed handling of sources that start with a slash so that they are relative to 254 | the source root's host. 255 | 256 | ## 0.1.20 257 | 258 | * Fixed github issue #43: absolute URLs aren't joined with the source root 259 | anymore. 260 | 261 | ## 0.1.19 262 | 263 | * Using Travis CI to run tests. 264 | 265 | ## 0.1.18 266 | 267 | * Fixed a bug in the handling of sourceRoot. 268 | 269 | ## 0.1.17 270 | 271 | * Added SourceNode.fromStringWithSourceMap. 272 | 273 | ## 0.1.16 274 | 275 | * Added missing documentation. 276 | 277 | * Fixed the generating of empty mappings in SourceNode. 278 | 279 | ## 0.1.15 280 | 281 | * Added SourceMapGenerator.applySourceMap. 282 | 283 | ## 0.1.14 284 | 285 | * The sourceRoot is now handled consistently. 286 | 287 | ## 0.1.13 288 | 289 | * Added SourceMapGenerator.fromSourceMap. 290 | 291 | ## 0.1.12 292 | 293 | * SourceNode now generates empty mappings too. 294 | 295 | ## 0.1.11 296 | 297 | * Added name support to SourceNode. 298 | 299 | ## 0.1.10 300 | 301 | * Added sourcesContent support to the customer and generator. 302 | -------------------------------------------------------------------------------- /node_modules/source-map/LICENSE: -------------------------------------------------------------------------------- 1 | 2 | Copyright (c) 2009-2011, Mozilla Foundation and contributors 3 | All rights reserved. 4 | 5 | Redistribution and use in source and binary forms, with or without 6 | modification, are permitted provided that the following conditions are met: 7 | 8 | * Redistributions of source code must retain the above copyright notice, this 9 | list of conditions and the following disclaimer. 10 | 11 | * Redistributions in binary form must reproduce the above copyright notice, 12 | this list of conditions and the following disclaimer in the documentation 13 | and/or other materials provided with the distribution. 14 | 15 | * Neither the names of the Mozilla Foundation nor the names of project 16 | contributors may be used to endorse or promote products derived from this 17 | software without specific prior written permission. 18 | 19 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 20 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 21 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 22 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE 23 | FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 24 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 25 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 26 | CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 27 | OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | -------------------------------------------------------------------------------- /node_modules/source-map/README.md: -------------------------------------------------------------------------------- 1 | # Source Map 2 | 3 | [](https://travis-ci.org/mozilla/source-map) 4 | 5 | [](https://www.npmjs.com/package/source-map) 6 | 7 | This is a library to generate and consume the source map format 8 | [described here][format]. 9 | 10 | [format]: https://docs.google.com/document/d/1U1RGAehQwRypUTovF1KRlpiOFze0b-_2gc6fAH0KY0k/edit 11 | 12 | ## Use with Node 13 | 14 | $ npm install source-map 15 | 16 | ## Use on the Web 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- 21 | 22 | 23 | 24 | 25 | 26 | ## Table of Contents 27 | 28 | - [Examples](#examples) 29 | - [Consuming a source map](#consuming-a-source-map) 30 | - [Generating a source map](#generating-a-source-map) 31 | - [With SourceNode (high level API)](#with-sourcenode-high-level-api) 32 | - [With SourceMapGenerator (low level API)](#with-sourcemapgenerator-low-level-api) 33 | - [API](#api) 34 | - [SourceMapConsumer](#sourcemapconsumer) 35 | - [new SourceMapConsumer(rawSourceMap)](#new-sourcemapconsumerrawsourcemap) 36 | - [SourceMapConsumer.prototype.computeColumnSpans()](#sourcemapconsumerprototypecomputecolumnspans) 37 | - [SourceMapConsumer.prototype.originalPositionFor(generatedPosition)](#sourcemapconsumerprototypeoriginalpositionforgeneratedposition) 38 | - [SourceMapConsumer.prototype.generatedPositionFor(originalPosition)](#sourcemapconsumerprototypegeneratedpositionfororiginalposition) 39 | - [SourceMapConsumer.prototype.allGeneratedPositionsFor(originalPosition)](#sourcemapconsumerprototypeallgeneratedpositionsfororiginalposition) 40 | - [SourceMapConsumer.prototype.hasContentsOfAllSources()](#sourcemapconsumerprototypehascontentsofallsources) 41 | - [SourceMapConsumer.prototype.sourceContentFor(source[, returnNullOnMissing])](#sourcemapconsumerprototypesourcecontentforsource-returnnullonmissing) 42 | - [SourceMapConsumer.prototype.eachMapping(callback, context, order)](#sourcemapconsumerprototypeeachmappingcallback-context-order) 43 | - [SourceMapGenerator](#sourcemapgenerator) 44 | - [new SourceMapGenerator([startOfSourceMap])](#new-sourcemapgeneratorstartofsourcemap) 45 | - [SourceMapGenerator.fromSourceMap(sourceMapConsumer)](#sourcemapgeneratorfromsourcemapsourcemapconsumer) 46 | - [SourceMapGenerator.prototype.addMapping(mapping)](#sourcemapgeneratorprototypeaddmappingmapping) 47 | - [SourceMapGenerator.prototype.setSourceContent(sourceFile, sourceContent)](#sourcemapgeneratorprototypesetsourcecontentsourcefile-sourcecontent) 48 | - [SourceMapGenerator.prototype.applySourceMap(sourceMapConsumer[, sourceFile[, sourceMapPath]])](#sourcemapgeneratorprototypeapplysourcemapsourcemapconsumer-sourcefile-sourcemappath) 49 | - [SourceMapGenerator.prototype.toString()](#sourcemapgeneratorprototypetostring) 50 | - [SourceNode](#sourcenode) 51 | - [new SourceNode([line, column, source[, chunk[, name]]])](#new-sourcenodeline-column-source-chunk-name) 52 | - [SourceNode.fromStringWithSourceMap(code, sourceMapConsumer[, relativePath])](#sourcenodefromstringwithsourcemapcode-sourcemapconsumer-relativepath) 53 | - [SourceNode.prototype.add(chunk)](#sourcenodeprototypeaddchunk) 54 | - [SourceNode.prototype.prepend(chunk)](#sourcenodeprototypeprependchunk) 55 | - [SourceNode.prototype.setSourceContent(sourceFile, sourceContent)](#sourcenodeprototypesetsourcecontentsourcefile-sourcecontent) 56 | - [SourceNode.prototype.walk(fn)](#sourcenodeprototypewalkfn) 57 | - [SourceNode.prototype.walkSourceContents(fn)](#sourcenodeprototypewalksourcecontentsfn) 58 | - [SourceNode.prototype.join(sep)](#sourcenodeprototypejoinsep) 59 | - [SourceNode.prototype.replaceRight(pattern, replacement)](#sourcenodeprototypereplacerightpattern-replacement) 60 | - [SourceNode.prototype.toString()](#sourcenodeprototypetostring) 61 | - [SourceNode.prototype.toStringWithSourceMap([startOfSourceMap])](#sourcenodeprototypetostringwithsourcemapstartofsourcemap) 62 | 63 | 64 | 65 | ## Examples 66 | 67 | ### Consuming a source map 68 | 69 | ```js 70 | var rawSourceMap = { 71 | version: 3, 72 | file: 'min.js', 73 | names: ['bar', 'baz', 'n'], 74 | sources: ['one.js', 'two.js'], 75 | sourceRoot: 'http://example.com/www/js/', 76 | mappings: 'CAAC,IAAI,IAAM,SAAUA,GAClB,OAAOC,IAAID;CCDb,IAAI,IAAM,SAAUE,GAClB,OAAOA' 77 | }; 78 | 79 | var smc = new SourceMapConsumer(rawSourceMap); 80 | 81 | console.log(smc.sources); 82 | // [ 'http://example.com/www/js/one.js', 83 | // 'http://example.com/www/js/two.js' ] 84 | 85 | console.log(smc.originalPositionFor({ 86 | line: 2, 87 | column: 28 88 | })); 89 | // { source: 'http://example.com/www/js/two.js', 90 | // line: 2, 91 | // column: 10, 92 | // name: 'n' } 93 | 94 | console.log(smc.generatedPositionFor({ 95 | source: 'http://example.com/www/js/two.js', 96 | line: 2, 97 | column: 10 98 | })); 99 | // { line: 2, column: 28 } 100 | 101 | smc.eachMapping(function (m) { 102 | // ... 103 | }); 104 | ``` 105 | 106 | ### Generating a source map 107 | 108 | In depth guide: 109 | [**Compiling to JavaScript, and Debugging with Source Maps**](https://hacks.mozilla.org/2013/05/compiling-to-javascript-and-debugging-with-source-maps/) 110 | 111 | #### With SourceNode (high level API) 112 | 113 | ```js 114 | function compile(ast) { 115 | switch (ast.type) { 116 | case 'BinaryExpression': 117 | return new SourceNode( 118 | ast.location.line, 119 | ast.location.column, 120 | ast.location.source, 121 | [compile(ast.left), " + ", compile(ast.right)] 122 | ); 123 | case 'Literal': 124 | return new SourceNode( 125 | ast.location.line, 126 | ast.location.column, 127 | ast.location.source, 128 | String(ast.value) 129 | ); 130 | // ... 131 | default: 132 | throw new Error("Bad AST"); 133 | } 134 | } 135 | 136 | var ast = parse("40 + 2", "add.js"); 137 | console.log(compile(ast).toStringWithSourceMap({ 138 | file: 'add.js' 139 | })); 140 | // { code: '40 + 2', 141 | // map: [object SourceMapGenerator] } 142 | ``` 143 | 144 | #### With SourceMapGenerator (low level API) 145 | 146 | ```js 147 | var map = new SourceMapGenerator({ 148 | file: "source-mapped.js" 149 | }); 150 | 151 | map.addMapping({ 152 | generated: { 153 | line: 10, 154 | column: 35 155 | }, 156 | source: "foo.js", 157 | original: { 158 | line: 33, 159 | column: 2 160 | }, 161 | name: "christopher" 162 | }); 163 | 164 | console.log(map.toString()); 165 | // '{"version":3,"file":"source-mapped.js","sources":["foo.js"],"names":["christopher"],"mappings":";;;;;;;;;mCAgCEA"}' 166 | ``` 167 | 168 | ## API 169 | 170 | Get a reference to the module: 171 | 172 | ```js 173 | // Node.js 174 | var sourceMap = require('source-map'); 175 | 176 | // Browser builds 177 | var sourceMap = window.sourceMap; 178 | 179 | // Inside Firefox 180 | const sourceMap = require("devtools/toolkit/sourcemap/source-map.js"); 181 | ``` 182 | 183 | ### SourceMapConsumer 184 | 185 | A SourceMapConsumer instance represents a parsed source map which we can query 186 | for information about the original file positions by giving it a file position 187 | in the generated source. 188 | 189 | #### new SourceMapConsumer(rawSourceMap) 190 | 191 | The only parameter is the raw source map (either as a string which can be 192 | `JSON.parse`'d, or an object). According to the spec, source maps have the 193 | following attributes: 194 | 195 | * `version`: Which version of the source map spec this map is following. 196 | 197 | * `sources`: An array of URLs to the original source files. 198 | 199 | * `names`: An array of identifiers which can be referenced by individual 200 | mappings. 201 | 202 | * `sourceRoot`: Optional. The URL root from which all sources are relative. 203 | 204 | * `sourcesContent`: Optional. An array of contents of the original source files. 205 | 206 | * `mappings`: A string of base64 VLQs which contain the actual mappings. 207 | 208 | * `file`: Optional. The generated filename this source map is associated with. 209 | 210 | ```js 211 | var consumer = new sourceMap.SourceMapConsumer(rawSourceMapJsonData); 212 | ``` 213 | 214 | #### SourceMapConsumer.prototype.computeColumnSpans() 215 | 216 | Compute the last column for each generated mapping. The last column is 217 | inclusive. 218 | 219 | ```js 220 | // Before: 221 | consumer.allGeneratedPositionsFor({ line: 2, source: "foo.coffee" }) 222 | // [ { line: 2, 223 | // column: 1 }, 224 | // { line: 2, 225 | // column: 10 }, 226 | // { line: 2, 227 | // column: 20 } ] 228 | 229 | consumer.computeColumnSpans(); 230 | 231 | // After: 232 | consumer.allGeneratedPositionsFor({ line: 2, source: "foo.coffee" }) 233 | // [ { line: 2, 234 | // column: 1, 235 | // lastColumn: 9 }, 236 | // { line: 2, 237 | // column: 10, 238 | // lastColumn: 19 }, 239 | // { line: 2, 240 | // column: 20, 241 | // lastColumn: Infinity } ] 242 | 243 | ``` 244 | 245 | #### SourceMapConsumer.prototype.originalPositionFor(generatedPosition) 246 | 247 | Returns the original source, line, and column information for the generated 248 | source's line and column positions provided. The only argument is an object with 249 | the following properties: 250 | 251 | * `line`: The line number in the generated source. Line numbers in 252 | this library are 1-based (note that the underlying source map 253 | specification uses 0-based line numbers -- this library handles the 254 | translation). 255 | 256 | * `column`: The column number in the generated source. Column numbers 257 | in this library are 0-based. 258 | 259 | * `bias`: Either `SourceMapConsumer.GREATEST_LOWER_BOUND` or 260 | `SourceMapConsumer.LEAST_UPPER_BOUND`. Specifies whether to return the closest 261 | element that is smaller than or greater than the one we are searching for, 262 | respectively, if the exact element cannot be found. Defaults to 263 | `SourceMapConsumer.GREATEST_LOWER_BOUND`. 264 | 265 | and an object is returned with the following properties: 266 | 267 | * `source`: The original source file, or null if this information is not 268 | available. 269 | 270 | * `line`: The line number in the original source, or null if this information is 271 | not available. The line number is 1-based. 272 | 273 | * `column`: The column number in the original source, or null if this 274 | information is not available. The column number is 0-based. 275 | 276 | * `name`: The original identifier, or null if this information is not available. 277 | 278 | ```js 279 | consumer.originalPositionFor({ line: 2, column: 10 }) 280 | // { source: 'foo.coffee', 281 | // line: 2, 282 | // column: 2, 283 | // name: null } 284 | 285 | consumer.originalPositionFor({ line: 99999999999999999, column: 999999999999999 }) 286 | // { source: null, 287 | // line: null, 288 | // column: null, 289 | // name: null } 290 | ``` 291 | 292 | #### SourceMapConsumer.prototype.generatedPositionFor(originalPosition) 293 | 294 | Returns the generated line and column information for the original source, 295 | line, and column positions provided. The only argument is an object with 296 | the following properties: 297 | 298 | * `source`: The filename of the original source. 299 | 300 | * `line`: The line number in the original source. The line number is 301 | 1-based. 302 | 303 | * `column`: The column number in the original source. The column 304 | number is 0-based. 305 | 306 | and an object is returned with the following properties: 307 | 308 | * `line`: The line number in the generated source, or null. The line 309 | number is 1-based. 310 | 311 | * `column`: The column number in the generated source, or null. The 312 | column number is 0-based. 313 | 314 | ```js 315 | consumer.generatedPositionFor({ source: "example.js", line: 2, column: 10 }) 316 | // { line: 1, 317 | // column: 56 } 318 | ``` 319 | 320 | #### SourceMapConsumer.prototype.allGeneratedPositionsFor(originalPosition) 321 | 322 | Returns all generated line and column information for the original source, line, 323 | and column provided. If no column is provided, returns all mappings 324 | corresponding to a either the line we are searching for or the next closest line 325 | that has any mappings. Otherwise, returns all mappings corresponding to the 326 | given line and either the column we are searching for or the next closest column 327 | that has any offsets. 328 | 329 | The only argument is an object with the following properties: 330 | 331 | * `source`: The filename of the original source. 332 | 333 | * `line`: The line number in the original source. The line number is 334 | 1-based. 335 | 336 | * `column`: Optional. The column number in the original source. The 337 | column number is 0-based. 338 | 339 | and an array of objects is returned, each with the following properties: 340 | 341 | * `line`: The line number in the generated source, or null. The line 342 | number is 1-based. 343 | 344 | * `column`: The column number in the generated source, or null. The 345 | column number is 0-based. 346 | 347 | ```js 348 | consumer.allGeneratedpositionsfor({ line: 2, source: "foo.coffee" }) 349 | // [ { line: 2, 350 | // column: 1 }, 351 | // { line: 2, 352 | // column: 10 }, 353 | // { line: 2, 354 | // column: 20 } ] 355 | ``` 356 | 357 | #### SourceMapConsumer.prototype.hasContentsOfAllSources() 358 | 359 | Return true if we have the embedded source content for every source listed in 360 | the source map, false otherwise. 361 | 362 | In other words, if this method returns `true`, then 363 | `consumer.sourceContentFor(s)` will succeed for every source `s` in 364 | `consumer.sources`. 365 | 366 | ```js 367 | // ... 368 | if (consumer.hasContentsOfAllSources()) { 369 | consumerReadyCallback(consumer); 370 | } else { 371 | fetchSources(consumer, consumerReadyCallback); 372 | } 373 | // ... 374 | ``` 375 | 376 | #### SourceMapConsumer.prototype.sourceContentFor(source[, returnNullOnMissing]) 377 | 378 | Returns the original source content for the source provided. The only 379 | argument is the URL of the original source file. 380 | 381 | If the source content for the given source is not found, then an error is 382 | thrown. Optionally, pass `true` as the second param to have `null` returned 383 | instead. 384 | 385 | ```js 386 | consumer.sources 387 | // [ "my-cool-lib.clj" ] 388 | 389 | consumer.sourceContentFor("my-cool-lib.clj") 390 | // "..." 391 | 392 | consumer.sourceContentFor("this is not in the source map"); 393 | // Error: "this is not in the source map" is not in the source map 394 | 395 | consumer.sourceContentFor("this is not in the source map", true); 396 | // null 397 | ``` 398 | 399 | #### SourceMapConsumer.prototype.eachMapping(callback, context, order) 400 | 401 | Iterate over each mapping between an original source/line/column and a 402 | generated line/column in this source map. 403 | 404 | * `callback`: The function that is called with each mapping. Mappings have the 405 | form `{ source, generatedLine, generatedColumn, originalLine, originalColumn, 406 | name }` 407 | 408 | * `context`: Optional. If specified, this object will be the value of `this` 409 | every time that `callback` is called. 410 | 411 | * `order`: Either `SourceMapConsumer.GENERATED_ORDER` or 412 | `SourceMapConsumer.ORIGINAL_ORDER`. Specifies whether you want to iterate over 413 | the mappings sorted by the generated file's line/column order or the 414 | original's source/line/column order, respectively. Defaults to 415 | `SourceMapConsumer.GENERATED_ORDER`. 416 | 417 | ```js 418 | consumer.eachMapping(function (m) { console.log(m); }) 419 | // ... 420 | // { source: 'illmatic.js', 421 | // generatedLine: 1, 422 | // generatedColumn: 0, 423 | // originalLine: 1, 424 | // originalColumn: 0, 425 | // name: null } 426 | // { source: 'illmatic.js', 427 | // generatedLine: 2, 428 | // generatedColumn: 0, 429 | // originalLine: 2, 430 | // originalColumn: 0, 431 | // name: null } 432 | // ... 433 | ``` 434 | ### SourceMapGenerator 435 | 436 | An instance of the SourceMapGenerator represents a source map which is being 437 | built incrementally. 438 | 439 | #### new SourceMapGenerator([startOfSourceMap]) 440 | 441 | You may pass an object with the following properties: 442 | 443 | * `file`: The filename of the generated source that this source map is 444 | associated with. 445 | 446 | * `sourceRoot`: A root for all relative URLs in this source map. 447 | 448 | * `skipValidation`: Optional. When `true`, disables validation of mappings as 449 | they are added. This can improve performance but should be used with 450 | discretion, as a last resort. Even then, one should avoid using this flag when 451 | running tests, if possible. 452 | 453 | ```js 454 | var generator = new sourceMap.SourceMapGenerator({ 455 | file: "my-generated-javascript-file.js", 456 | sourceRoot: "http://example.com/app/js/" 457 | }); 458 | ``` 459 | 460 | #### SourceMapGenerator.fromSourceMap(sourceMapConsumer) 461 | 462 | Creates a new `SourceMapGenerator` from an existing `SourceMapConsumer` instance. 463 | 464 | * `sourceMapConsumer` The SourceMap. 465 | 466 | ```js 467 | var generator = sourceMap.SourceMapGenerator.fromSourceMap(consumer); 468 | ``` 469 | 470 | #### SourceMapGenerator.prototype.addMapping(mapping) 471 | 472 | Add a single mapping from original source line and column to the generated 473 | source's line and column for this source map being created. The mapping object 474 | should have the following properties: 475 | 476 | * `generated`: An object with the generated line and column positions. 477 | 478 | * `original`: An object with the original line and column positions. 479 | 480 | * `source`: The original source file (relative to the sourceRoot). 481 | 482 | * `name`: An optional original token name for this mapping. 483 | 484 | ```js 485 | generator.addMapping({ 486 | source: "module-one.scm", 487 | original: { line: 128, column: 0 }, 488 | generated: { line: 3, column: 456 } 489 | }) 490 | ``` 491 | 492 | #### SourceMapGenerator.prototype.setSourceContent(sourceFile, sourceContent) 493 | 494 | Set the source content for an original source file. 495 | 496 | * `sourceFile` the URL of the original source file. 497 | 498 | * `sourceContent` the content of the source file. 499 | 500 | ```js 501 | generator.setSourceContent("module-one.scm", 502 | fs.readFileSync("path/to/module-one.scm")) 503 | ``` 504 | 505 | #### SourceMapGenerator.prototype.applySourceMap(sourceMapConsumer[, sourceFile[, sourceMapPath]]) 506 | 507 | Applies a SourceMap for a source file to the SourceMap. 508 | Each mapping to the supplied source file is rewritten using the 509 | supplied SourceMap. Note: The resolution for the resulting mappings 510 | is the minimum of this map and the supplied map. 511 | 512 | * `sourceMapConsumer`: The SourceMap to be applied. 513 | 514 | * `sourceFile`: Optional. The filename of the source file. 515 | If omitted, sourceMapConsumer.file will be used, if it exists. 516 | Otherwise an error will be thrown. 517 | 518 | * `sourceMapPath`: Optional. The dirname of the path to the SourceMap 519 | to be applied. If relative, it is relative to the SourceMap. 520 | 521 | This parameter is needed when the two SourceMaps aren't in the same 522 | directory, and the SourceMap to be applied contains relative source 523 | paths. If so, those relative source paths need to be rewritten 524 | relative to the SourceMap. 525 | 526 | If omitted, it is assumed that both SourceMaps are in the same directory, 527 | thus not needing any rewriting. (Supplying `'.'` has the same effect.) 528 | 529 | #### SourceMapGenerator.prototype.toString() 530 | 531 | Renders the source map being generated to a string. 532 | 533 | ```js 534 | generator.toString() 535 | // '{"version":3,"sources":["module-one.scm"],"names":[],"mappings":"...snip...","file":"my-generated-javascript-file.js","sourceRoot":"http://example.com/app/js/"}' 536 | ``` 537 | 538 | ### SourceNode 539 | 540 | SourceNodes provide a way to abstract over interpolating and/or concatenating 541 | snippets of generated JavaScript source code, while maintaining the line and 542 | column information associated between those snippets and the original source 543 | code. This is useful as the final intermediate representation a compiler might 544 | use before outputting the generated JS and source map. 545 | 546 | #### new SourceNode([line, column, source[, chunk[, name]]]) 547 | 548 | * `line`: The original line number associated with this source node, or null if 549 | it isn't associated with an original line. The line number is 1-based. 550 | 551 | * `column`: The original column number associated with this source node, or null 552 | if it isn't associated with an original column. The column number 553 | is 0-based. 554 | 555 | * `source`: The original source's filename; null if no filename is provided. 556 | 557 | * `chunk`: Optional. Is immediately passed to `SourceNode.prototype.add`, see 558 | below. 559 | 560 | * `name`: Optional. The original identifier. 561 | 562 | ```js 563 | var node = new SourceNode(1, 2, "a.cpp", [ 564 | new SourceNode(3, 4, "b.cpp", "extern int status;\n"), 565 | new SourceNode(5, 6, "c.cpp", "std::string* make_string(size_t n);\n"), 566 | new SourceNode(7, 8, "d.cpp", "int main(int argc, char** argv) {}\n"), 567 | ]); 568 | ``` 569 | 570 | #### SourceNode.fromStringWithSourceMap(code, sourceMapConsumer[, relativePath]) 571 | 572 | Creates a SourceNode from generated code and a SourceMapConsumer. 573 | 574 | * `code`: The generated code 575 | 576 | * `sourceMapConsumer` The SourceMap for the generated code 577 | 578 | * `relativePath` The optional path that relative sources in `sourceMapConsumer` 579 | should be relative to. 580 | 581 | ```js 582 | var consumer = new SourceMapConsumer(fs.readFileSync("path/to/my-file.js.map", "utf8")); 583 | var node = SourceNode.fromStringWithSourceMap(fs.readFileSync("path/to/my-file.js"), 584 | consumer); 585 | ``` 586 | 587 | #### SourceNode.prototype.add(chunk) 588 | 589 | Add a chunk of generated JS to this source node. 590 | 591 | * `chunk`: A string snippet of generated JS code, another instance of 592 | `SourceNode`, or an array where each member is one of those things. 593 | 594 | ```js 595 | node.add(" + "); 596 | node.add(otherNode); 597 | node.add([leftHandOperandNode, " + ", rightHandOperandNode]); 598 | ``` 599 | 600 | #### SourceNode.prototype.prepend(chunk) 601 | 602 | Prepend a chunk of generated JS to this source node. 603 | 604 | * `chunk`: A string snippet of generated JS code, another instance of 605 | `SourceNode`, or an array where each member is one of those things. 606 | 607 | ```js 608 | node.prepend("/** Build Id: f783haef86324gf **/\n\n"); 609 | ``` 610 | 611 | #### SourceNode.prototype.setSourceContent(sourceFile, sourceContent) 612 | 613 | Set the source content for a source file. This will be added to the 614 | `SourceMap` in the `sourcesContent` field. 615 | 616 | * `sourceFile`: The filename of the source file 617 | 618 | * `sourceContent`: The content of the source file 619 | 620 | ```js 621 | node.setSourceContent("module-one.scm", 622 | fs.readFileSync("path/to/module-one.scm")) 623 | ``` 624 | 625 | #### SourceNode.prototype.walk(fn) 626 | 627 | Walk over the tree of JS snippets in this node and its children. The walking 628 | function is called once for each snippet of JS and is passed that snippet and 629 | the its original associated source's line/column location. 630 | 631 | * `fn`: The traversal function. 632 | 633 | ```js 634 | var node = new SourceNode(1, 2, "a.js", [ 635 | new SourceNode(3, 4, "b.js", "uno"), 636 | "dos", 637 | [ 638 | "tres", 639 | new SourceNode(5, 6, "c.js", "quatro") 640 | ] 641 | ]); 642 | 643 | node.walk(function (code, loc) { console.log("WALK:", code, loc); }) 644 | // WALK: uno { source: 'b.js', line: 3, column: 4, name: null } 645 | // WALK: dos { source: 'a.js', line: 1, column: 2, name: null } 646 | // WALK: tres { source: 'a.js', line: 1, column: 2, name: null } 647 | // WALK: quatro { source: 'c.js', line: 5, column: 6, name: null } 648 | ``` 649 | 650 | #### SourceNode.prototype.walkSourceContents(fn) 651 | 652 | Walk over the tree of SourceNodes. The walking function is called for each 653 | source file content and is passed the filename and source content. 654 | 655 | * `fn`: The traversal function. 656 | 657 | ```js 658 | var a = new SourceNode(1, 2, "a.js", "generated from a"); 659 | a.setSourceContent("a.js", "original a"); 660 | var b = new SourceNode(1, 2, "b.js", "generated from b"); 661 | b.setSourceContent("b.js", "original b"); 662 | var c = new SourceNode(1, 2, "c.js", "generated from c"); 663 | c.setSourceContent("c.js", "original c"); 664 | 665 | var node = new SourceNode(null, null, null, [a, b, c]); 666 | node.walkSourceContents(function (source, contents) { console.log("WALK:", source, ":", contents); }) 667 | // WALK: a.js : original a 668 | // WALK: b.js : original b 669 | // WALK: c.js : original c 670 | ``` 671 | 672 | #### SourceNode.prototype.join(sep) 673 | 674 | Like `Array.prototype.join` except for SourceNodes. Inserts the separator 675 | between each of this source node's children. 676 | 677 | * `sep`: The separator. 678 | 679 | ```js 680 | var lhs = new SourceNode(1, 2, "a.rs", "my_copy"); 681 | var operand = new SourceNode(3, 4, "a.rs", "="); 682 | var rhs = new SourceNode(5, 6, "a.rs", "orig.clone()"); 683 | 684 | var node = new SourceNode(null, null, null, [ lhs, operand, rhs ]); 685 | var joinedNode = node.join(" "); 686 | ``` 687 | 688 | #### SourceNode.prototype.replaceRight(pattern, replacement) 689 | 690 | Call `String.prototype.replace` on the very right-most source snippet. Useful 691 | for trimming white space from the end of a source node, etc. 692 | 693 | * `pattern`: The pattern to replace. 694 | 695 | * `replacement`: The thing to replace the pattern with. 696 | 697 | ```js 698 | // Trim trailing white space. 699 | node.replaceRight(/\s*$/, ""); 700 | ``` 701 | 702 | #### SourceNode.prototype.toString() 703 | 704 | Return the string representation of this source node. Walks over the tree and 705 | concatenates all the various snippets together to one string. 706 | 707 | ```js 708 | var node = new SourceNode(1, 2, "a.js", [ 709 | new SourceNode(3, 4, "b.js", "uno"), 710 | "dos", 711 | [ 712 | "tres", 713 | new SourceNode(5, 6, "c.js", "quatro") 714 | ] 715 | ]); 716 | 717 | node.toString() 718 | // 'unodostresquatro' 719 | ``` 720 | 721 | #### SourceNode.prototype.toStringWithSourceMap([startOfSourceMap]) 722 | 723 | Returns the string representation of this tree of source nodes, plus a 724 | SourceMapGenerator which contains all the mappings between the generated and 725 | original sources. 726 | 727 | The arguments are the same as those to `new SourceMapGenerator`. 728 | 729 | ```js 730 | var node = new SourceNode(1, 2, "a.js", [ 731 | new SourceNode(3, 4, "b.js", "uno"), 732 | "dos", 733 | [ 734 | "tres", 735 | new SourceNode(5, 6, "c.js", "quatro") 736 | ] 737 | ]); 738 | 739 | node.toStringWithSourceMap({ file: "my-output-file.js" }) 740 | // { code: 'unodostresquatro', 741 | // map: [object SourceMapGenerator] } 742 | ``` 743 | -------------------------------------------------------------------------------- /node_modules/source-map/dist/AXObjectsMap.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | exports["default"] = void 0; 7 | 8 | var _AbbrRole = _interopRequireDefault(require("./etc/objects/AbbrRole")); 9 | 10 | var _AlertDialogRole = _interopRequireDefault(require("./etc/objects/AlertDialogRole")); 11 | 12 | var _AlertRole = _interopRequireDefault(require("./etc/objects/AlertRole")); 13 | 14 | var _AnnotationRole = _interopRequireDefault(require("./etc/objects/AnnotationRole")); 15 | 16 | var _ApplicationRole = _interopRequireDefault(require("./etc/objects/ApplicationRole")); 17 | 18 | var _ArticleRole = _interopRequireDefault(require("./etc/objects/ArticleRole")); 19 | 20 | var _AudioRole = _interopRequireDefault(require("./etc/objects/AudioRole")); 21 | 22 | var _BannerRole = _interopRequireDefault(require("./etc/objects/BannerRole")); 23 | 24 | var _BlockquoteRole = _interopRequireDefault(require("./etc/objects/BlockquoteRole")); 25 | 26 | var _BusyIndicatorRole = _interopRequireDefault(require("./etc/objects/BusyIndicatorRole")); 27 | 28 | var _ButtonRole = _interopRequireDefault(require("./etc/objects/ButtonRole")); 29 | 30 | var _CanvasRole = _interopRequireDefault(require("./etc/objects/CanvasRole")); 31 | 32 | var _CaptionRole = _interopRequireDefault(require("./etc/objects/CaptionRole")); 33 | 34 | var _CellRole = _interopRequireDefault(require("./etc/objects/CellRole")); 35 | 36 | var _CheckBoxRole = _interopRequireDefault(require("./etc/objects/CheckBoxRole")); 37 | 38 | var _ColorWellRole = _interopRequireDefault(require("./etc/objects/ColorWellRole")); 39 | 40 | var _ColumnHeaderRole = _interopRequireDefault(require("./etc/objects/ColumnHeaderRole")); 41 | 42 | var _ColumnRole = _interopRequireDefault(require("./etc/objects/ColumnRole")); 43 | 44 | var _ComboBoxRole = _interopRequireDefault(require("./etc/objects/ComboBoxRole")); 45 | 46 | var _ComplementaryRole = _interopRequireDefault(require("./etc/objects/ComplementaryRole")); 47 | 48 | var _ContentInfoRole = _interopRequireDefault(require("./etc/objects/ContentInfoRole")); 49 | 50 | var _DateRole = _interopRequireDefault(require("./etc/objects/DateRole")); 51 | 52 | var _DateTimeRole = _interopRequireDefault(require("./etc/objects/DateTimeRole")); 53 | 54 | var _DefinitionRole = _interopRequireDefault(require("./etc/objects/DefinitionRole")); 55 | 56 | var _DescriptionListDetailRole = _interopRequireDefault(require("./etc/objects/DescriptionListDetailRole")); 57 | 58 | var _DescriptionListRole = _interopRequireDefault(require("./etc/objects/DescriptionListRole")); 59 | 60 | var _DescriptionListTermRole = _interopRequireDefault(require("./etc/objects/DescriptionListTermRole")); 61 | 62 | var _DetailsRole = _interopRequireDefault(require("./etc/objects/DetailsRole")); 63 | 64 | var _DialogRole = _interopRequireDefault(require("./etc/objects/DialogRole")); 65 | 66 | var _DirectoryRole = _interopRequireDefault(require("./etc/objects/DirectoryRole")); 67 | 68 | var _DisclosureTriangleRole = _interopRequireDefault(require("./etc/objects/DisclosureTriangleRole")); 69 | 70 | var _DivRole = _interopRequireDefault(require("./etc/objects/DivRole")); 71 | 72 | var _DocumentRole = _interopRequireDefault(require("./etc/objects/DocumentRole")); 73 | 74 | var _EmbeddedObjectRole = _interopRequireDefault(require("./etc/objects/EmbeddedObjectRole")); 75 | 76 | var _FeedRole = _interopRequireDefault(require("./etc/objects/FeedRole")); 77 | 78 | var _FigcaptionRole = _interopRequireDefault(require("./etc/objects/FigcaptionRole")); 79 | 80 | var _FigureRole = _interopRequireDefault(require("./etc/objects/FigureRole")); 81 | 82 | var _FooterRole = _interopRequireDefault(require("./etc/objects/FooterRole")); 83 | 84 | var _FormRole = _interopRequireDefault(require("./etc/objects/FormRole")); 85 | 86 | var _GridRole = _interopRequireDefault(require("./etc/objects/GridRole")); 87 | 88 | var _GroupRole = _interopRequireDefault(require("./etc/objects/GroupRole")); 89 | 90 | var _HeadingRole = _interopRequireDefault(require("./etc/objects/HeadingRole")); 91 | 92 | var _IframePresentationalRole = _interopRequireDefault(require("./etc/objects/IframePresentationalRole")); 93 | 94 | var _IframeRole = _interopRequireDefault(require("./etc/objects/IframeRole")); 95 | 96 | var _IgnoredRole = _interopRequireDefault(require("./etc/objects/IgnoredRole")); 97 | 98 | var _ImageMapLinkRole = _interopRequireDefault(require("./etc/objects/ImageMapLinkRole")); 99 | 100 | var _ImageMapRole = _interopRequireDefault(require("./etc/objects/ImageMapRole")); 101 | 102 | var _ImageRole = _interopRequireDefault(require("./etc/objects/ImageRole")); 103 | 104 | var _InlineTextBoxRole = _interopRequireDefault(require("./etc/objects/InlineTextBoxRole")); 105 | 106 | var _InputTimeRole = _interopRequireDefault(require("./etc/objects/InputTimeRole")); 107 | 108 | var _LabelRole = _interopRequireDefault(require("./etc/objects/LabelRole")); 109 | 110 | var _LegendRole = _interopRequireDefault(require("./etc/objects/LegendRole")); 111 | 112 | var _LineBreakRole = _interopRequireDefault(require("./etc/objects/LineBreakRole")); 113 | 114 | var _LinkRole = _interopRequireDefault(require("./etc/objects/LinkRole")); 115 | 116 | var _ListBoxOptionRole = _interopRequireDefault(require("./etc/objects/ListBoxOptionRole")); 117 | 118 | var _ListBoxRole = _interopRequireDefault(require("./etc/objects/ListBoxRole")); 119 | 120 | var _ListItemRole = _interopRequireDefault(require("./etc/objects/ListItemRole")); 121 | 122 | var _ListMarkerRole = _interopRequireDefault(require("./etc/objects/ListMarkerRole")); 123 | 124 | var _ListRole = _interopRequireDefault(require("./etc/objects/ListRole")); 125 | 126 | var _LogRole = _interopRequireDefault(require("./etc/objects/LogRole")); 127 | 128 | var _MainRole = _interopRequireDefault(require("./etc/objects/MainRole")); 129 | 130 | var _MarkRole = _interopRequireDefault(require("./etc/objects/MarkRole")); 131 | 132 | var _MarqueeRole = _interopRequireDefault(require("./etc/objects/MarqueeRole")); 133 | 134 | var _MathRole = _interopRequireDefault(require("./etc/objects/MathRole")); 135 | 136 | var _MenuBarRole = _interopRequireDefault(require("./etc/objects/MenuBarRole")); 137 | 138 | var _MenuButtonRole = _interopRequireDefault(require("./etc/objects/MenuButtonRole")); 139 | 140 | var _MenuItemRole = _interopRequireDefault(require("./etc/objects/MenuItemRole")); 141 | 142 | var _MenuItemCheckBoxRole = _interopRequireDefault(require("./etc/objects/MenuItemCheckBoxRole")); 143 | 144 | var _MenuItemRadioRole = _interopRequireDefault(require("./etc/objects/MenuItemRadioRole")); 145 | 146 | var _MenuListOptionRole = _interopRequireDefault(require("./etc/objects/MenuListOptionRole")); 147 | 148 | var _MenuListPopupRole = _interopRequireDefault(require("./etc/objects/MenuListPopupRole")); 149 | 150 | var _MenuRole = _interopRequireDefault(require("./etc/objects/MenuRole")); 151 | 152 | var _MeterRole = _interopRequireDefault(require("./etc/objects/MeterRole")); 153 | 154 | var _NavigationRole = _interopRequireDefault(require("./etc/objects/NavigationRole")); 155 | 156 | var _NoneRole = _interopRequireDefault(require("./etc/objects/NoneRole")); 157 | 158 | var _NoteRole = _interopRequireDefault(require("./etc/objects/NoteRole")); 159 | 160 | var _OutlineRole = _interopRequireDefault(require("./etc/objects/OutlineRole")); 161 | 162 | var _ParagraphRole = _interopRequireDefault(require("./etc/objects/ParagraphRole")); 163 | 164 | var _PopUpButtonRole = _interopRequireDefault(require("./etc/objects/PopUpButtonRole")); 165 | 166 | var _PreRole = _interopRequireDefault(require("./etc/objects/PreRole")); 167 | 168 | var _PresentationalRole = _interopRequireDefault(require("./etc/objects/PresentationalRole")); 169 | 170 | var _ProgressIndicatorRole = _interopRequireDefault(require("./etc/objects/ProgressIndicatorRole")); 171 | 172 | var _RadioButtonRole = _interopRequireDefault(require("./etc/objects/RadioButtonRole")); 173 | 174 | var _RadioGroupRole = _interopRequireDefault(require("./etc/objects/RadioGroupRole")); 175 | 176 | var _RegionRole = _interopRequireDefault(require("./etc/objects/RegionRole")); 177 | 178 | var _RootWebAreaRole = _interopRequireDefault(require("./etc/objects/RootWebAreaRole")); 179 | 180 | var _RowHeaderRole = _interopRequireDefault(require("./etc/objects/RowHeaderRole")); 181 | 182 | var _RowRole = _interopRequireDefault(require("./etc/objects/RowRole")); 183 | 184 | var _RubyRole = _interopRequireDefault(require("./etc/objects/RubyRole")); 185 | 186 | var _RulerRole = _interopRequireDefault(require("./etc/objects/RulerRole")); 187 | 188 | var _ScrollAreaRole = _interopRequireDefault(require("./etc/objects/ScrollAreaRole")); 189 | 190 | var _ScrollBarRole = _interopRequireDefault(require("./etc/objects/ScrollBarRole")); 191 | 192 | var _SeamlessWebAreaRole = _interopRequireDefault(require("./etc/objects/SeamlessWebAreaRole")); 193 | 194 | var _SearchRole = _interopRequireDefault(require("./etc/objects/SearchRole")); 195 | 196 | var _SearchBoxRole = _interopRequireDefault(require("./etc/objects/SearchBoxRole")); 197 | 198 | var _SliderRole = _interopRequireDefault(require("./etc/objects/SliderRole")); 199 | 200 | var _SliderThumbRole = _interopRequireDefault(require("./etc/objects/SliderThumbRole")); 201 | 202 | var _SpinButtonRole = _interopRequireDefault(require("./etc/objects/SpinButtonRole")); 203 | 204 | var _SpinButtonPartRole = _interopRequireDefault(require("./etc/objects/SpinButtonPartRole")); 205 | 206 | var _SplitterRole = _interopRequireDefault(require("./etc/objects/SplitterRole")); 207 | 208 | var _StaticTextRole = _interopRequireDefault(require("./etc/objects/StaticTextRole")); 209 | 210 | var _StatusRole = _interopRequireDefault(require("./etc/objects/StatusRole")); 211 | 212 | var _SVGRootRole = _interopRequireDefault(require("./etc/objects/SVGRootRole")); 213 | 214 | var _SwitchRole = _interopRequireDefault(require("./etc/objects/SwitchRole")); 215 | 216 | var _TabGroupRole = _interopRequireDefault(require("./etc/objects/TabGroupRole")); 217 | 218 | var _TabRole = _interopRequireDefault(require("./etc/objects/TabRole")); 219 | 220 | var _TableHeaderContainerRole = _interopRequireDefault(require("./etc/objects/TableHeaderContainerRole")); 221 | 222 | var _TableRole = _interopRequireDefault(require("./etc/objects/TableRole")); 223 | 224 | var _TabListRole = _interopRequireDefault(require("./etc/objects/TabListRole")); 225 | 226 | var _TabPanelRole = _interopRequireDefault(require("./etc/objects/TabPanelRole")); 227 | 228 | var _TermRole = _interopRequireDefault(require("./etc/objects/TermRole")); 229 | 230 | var _TextFieldRole = _interopRequireDefault(require("./etc/objects/TextFieldRole")); 231 | 232 | var _TimeRole = _interopRequireDefault(require("./etc/objects/TimeRole")); 233 | 234 | var _TimerRole = _interopRequireDefault(require("./etc/objects/TimerRole")); 235 | 236 | var _ToggleButtonRole = _interopRequireDefault(require("./etc/objects/ToggleButtonRole")); 237 | 238 | var _ToolbarRole = _interopRequireDefault(require("./etc/objects/ToolbarRole")); 239 | 240 | var _TreeRole = _interopRequireDefault(require("./etc/objects/TreeRole")); 241 | 242 | var _TreeGridRole = _interopRequireDefault(require("./etc/objects/TreeGridRole")); 243 | 244 | var _TreeItemRole = _interopRequireDefault(require("./etc/objects/TreeItemRole")); 245 | 246 | var _UserInterfaceTooltipRole = _interopRequireDefault(require("./etc/objects/UserInterfaceTooltipRole")); 247 | 248 | var _VideoRole = _interopRequireDefault(require("./etc/objects/VideoRole")); 249 | 250 | var _WebAreaRole = _interopRequireDefault(require("./etc/objects/WebAreaRole")); 251 | 252 | var _WindowRole = _interopRequireDefault(require("./etc/objects/WindowRole")); 253 | 254 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } 255 | 256 | var AXObjectsMap = new Map([['AbbrRole', _AbbrRole["default"]], ['AlertDialogRole', _AlertDialogRole["default"]], ['AlertRole', _AlertRole["default"]], ['AnnotationRole', _AnnotationRole["default"]], ['ApplicationRole', _ApplicationRole["default"]], ['ArticleRole', _ArticleRole["default"]], ['AudioRole', _AudioRole["default"]], ['BannerRole', _BannerRole["default"]], ['BlockquoteRole', _BlockquoteRole["default"]], ['BusyIndicatorRole', _BusyIndicatorRole["default"]], ['ButtonRole', _ButtonRole["default"]], ['CanvasRole', _CanvasRole["default"]], ['CaptionRole', _CaptionRole["default"]], ['CellRole', _CellRole["default"]], ['CheckBoxRole', _CheckBoxRole["default"]], ['ColorWellRole', _ColorWellRole["default"]], ['ColumnHeaderRole', _ColumnHeaderRole["default"]], ['ColumnRole', _ColumnRole["default"]], ['ComboBoxRole', _ComboBoxRole["default"]], ['ComplementaryRole', _ComplementaryRole["default"]], ['ContentInfoRole', _ContentInfoRole["default"]], ['DateRole', _DateRole["default"]], ['DateTimeRole', _DateTimeRole["default"]], ['DefinitionRole', _DefinitionRole["default"]], ['DescriptionListDetailRole', _DescriptionListDetailRole["default"]], ['DescriptionListRole', _DescriptionListRole["default"]], ['DescriptionListTermRole', _DescriptionListTermRole["default"]], ['DetailsRole', _DetailsRole["default"]], ['DialogRole', _DialogRole["default"]], ['DirectoryRole', _DirectoryRole["default"]], ['DisclosureTriangleRole', _DisclosureTriangleRole["default"]], ['DivRole', _DivRole["default"]], ['DocumentRole', _DocumentRole["default"]], ['EmbeddedObjectRole', _EmbeddedObjectRole["default"]], ['FeedRole', _FeedRole["default"]], ['FigcaptionRole', _FigcaptionRole["default"]], ['FigureRole', _FigureRole["default"]], ['FooterRole', _FooterRole["default"]], ['FormRole', _FormRole["default"]], ['GridRole', _GridRole["default"]], ['GroupRole', _GroupRole["default"]], ['HeadingRole', _HeadingRole["default"]], ['IframePresentationalRole', _IframePresentationalRole["default"]], ['IframeRole', _IframeRole["default"]], ['IgnoredRole', _IgnoredRole["default"]], ['ImageMapLinkRole', _ImageMapLinkRole["default"]], ['ImageMapRole', _ImageMapRole["default"]], ['ImageRole', _ImageRole["default"]], ['InlineTextBoxRole', _InlineTextBoxRole["default"]], ['InputTimeRole', _InputTimeRole["default"]], ['LabelRole', _LabelRole["default"]], ['LegendRole', _LegendRole["default"]], ['LineBreakRole', _LineBreakRole["default"]], ['LinkRole', _LinkRole["default"]], ['ListBoxOptionRole', _ListBoxOptionRole["default"]], ['ListBoxRole', _ListBoxRole["default"]], ['ListItemRole', _ListItemRole["default"]], ['ListMarkerRole', _ListMarkerRole["default"]], ['ListRole', _ListRole["default"]], ['LogRole', _LogRole["default"]], ['MainRole', _MainRole["default"]], ['MarkRole', _MarkRole["default"]], ['MarqueeRole', _MarqueeRole["default"]], ['MathRole', _MathRole["default"]], ['MenuBarRole', _MenuBarRole["default"]], ['MenuButtonRole', _MenuButtonRole["default"]], ['MenuItemRole', _MenuItemRole["default"]], ['MenuItemCheckBoxRole', _MenuItemCheckBoxRole["default"]], ['MenuItemRadioRole', _MenuItemRadioRole["default"]], ['MenuListOptionRole', _MenuListOptionRole["default"]], ['MenuListPopupRole', _MenuListPopupRole["default"]], ['MenuRole', _MenuRole["default"]], ['MeterRole', _MeterRole["default"]], ['NavigationRole', _NavigationRole["default"]], ['NoneRole', _NoneRole["default"]], ['NoteRole', _NoteRole["default"]], ['OutlineRole', _OutlineRole["default"]], ['ParagraphRole', _ParagraphRole["default"]], ['PopUpButtonRole', _PopUpButtonRole["default"]], ['PreRole', _PreRole["default"]], ['PresentationalRole', _PresentationalRole["default"]], ['ProgressIndicatorRole', _ProgressIndicatorRole["default"]], ['RadioButtonRole', _RadioButtonRole["default"]], ['RadioGroupRole', _RadioGroupRole["default"]], ['RegionRole', _RegionRole["default"]], ['RootWebAreaRole', _RootWebAreaRole["default"]], ['RowHeaderRole', _RowHeaderRole["default"]], ['RowRole', _RowRole["default"]], ['RubyRole', _RubyRole["default"]], ['RulerRole', _RulerRole["default"]], ['ScrollAreaRole', _ScrollAreaRole["default"]], ['ScrollBarRole', _ScrollBarRole["default"]], ['SeamlessWebAreaRole', _SeamlessWebAreaRole["default"]], ['SearchRole', _SearchRole["default"]], ['SearchBoxRole', _SearchBoxRole["default"]], ['SliderRole', _SliderRole["default"]], ['SliderThumbRole', _SliderThumbRole["default"]], ['SpinButtonRole', _SpinButtonRole["default"]], ['SpinButtonPartRole', _SpinButtonPartRole["default"]], ['SplitterRole', _SplitterRole["default"]], ['StaticTextRole', _StaticTextRole["default"]], ['StatusRole', _StatusRole["default"]], ['SVGRootRole', _SVGRootRole["default"]], ['SwitchRole', _SwitchRole["default"]], ['TabGroupRole', _TabGroupRole["default"]], ['TabRole', _TabRole["default"]], ['TableHeaderContainerRole', _TableHeaderContainerRole["default"]], ['TableRole', _TableRole["default"]], ['TabListRole', _TabListRole["default"]], ['TabPanelRole', _TabPanelRole["default"]], ['TermRole', _TermRole["default"]], ['TextFieldRole', _TextFieldRole["default"]], ['TimeRole', _TimeRole["default"]], ['TimerRole', _TimerRole["default"]], ['ToggleButtonRole', _ToggleButtonRole["default"]], ['ToolbarRole', _ToolbarRole["default"]], ['TreeRole', _TreeRole["default"]], ['TreeGridRole', _TreeGridRole["default"]], ['TreeItemRole', _TreeItemRole["default"]], ['UserInterfaceTooltipRole', _UserInterfaceTooltipRole["default"]], ['VideoRole', _VideoRole["default"]], ['WebAreaRole', _WebAreaRole["default"]], ['WindowRole', _WindowRole["default"]]]); 257 | var _default = AXObjectsMap; 258 | exports["default"] = _default; -------------------------------------------------------------------------------- /node_modules/source-map/dist/alternate-stylesheet.js: -------------------------------------------------------------------------------- 1 | module.exports={A:{A:{"1":"E F A B","2":"J D uB"},B:{"2":"C K L G M N O P Q R S T U V W Z a b c d e f g h i j k X H"},C:{"1":"0 1 2 3 4 5 6 7 8 9 vB jB I l J D E F A B C K L G M N O m n o p q r s t u v w x y z AB BB CB DB EB FB GB HB IB JB KB LB MB NB OB PB kB QB lB RB SB Y TB UB VB WB XB YB ZB aB bB cB dB eB fB gB P Q R mB S T U V W Z a b c d e f g h i j k X H nB wB xB"},D:{"2":"0 1 2 3 4 5 6 7 8 9 I l J D E F A B C K L G M N O m n o p q r s t u v w x y z AB BB CB DB EB FB GB HB IB JB KB LB MB NB OB PB kB QB lB RB SB Y TB UB VB WB XB YB ZB aB bB cB dB eB fB gB P Q R S T U V W Z a b c d e f g h i j k X H nB yB zB"},E:{"2":"I l J D E F A B C K L G 0B oB 1B 2B 3B 4B pB hB iB 5B 6B 7B qB rB 8B"},F:{"1":"F B C 9B AC BC CC hB sB DC iB","16":"0 1 2 3 4 5 6 7 8 9 G M N O m n o p q r s t u v w x y z AB BB CB DB EB FB GB HB IB JB KB LB MB NB OB PB QB RB SB Y TB UB VB WB XB YB ZB aB bB cB dB eB fB gB P Q R mB S T U V W"},G:{"2":"E oB EC tB FC GC HC IC JC KC LC MC NC OC PC QC RC SC TC UC VC WC XC qB rB"},H:{"16":"YC"},I:{"2":"jB I H ZC aC bC cC tB dC eC"},J:{"16":"D A"},K:{"2":"Y","16":"A B C hB sB iB"},L:{"16":"H"},M:{"16":"X"},N:{"16":"A B"},O:{"16":"fC"},P:{"16":"I gC hC iC jC kC pB lC mC nC oC pC qC"},Q:{"2":"rC"},R:{"16":"sC"},S:{"1":"tC"}},B:1,C:"Alternate stylesheet"}; 2 | -------------------------------------------------------------------------------- /node_modules/source-map/dist/box-shadow.js: -------------------------------------------------------------------------------- 1 | var plugin = { 2 | level1: { 3 | property: function boxShadow(_rule, property) { 4 | var values = property.value; 5 | 6 | // remove multiple zeros 7 | if (values.length == 4 && values[0][1] === '0' && values[1][1] === '0' && values[2][1] === '0' && values[3][1] === '0') { 8 | property.value.splice(2); 9 | property.dirty = true; 10 | } 11 | } 12 | } 13 | }; 14 | 15 | module.exports = plugin; 16 | -------------------------------------------------------------------------------- /node_modules/source-map/dist/css-text-indent.js: -------------------------------------------------------------------------------- 1 | module.exports={A:{A:{"132":"J D E F A B uB"},B:{"132":"C K L G M N O","388":"P Q R S T U V W Z a b c d e f g h i j k X H"},C:{"132":"0 1 2 3 4 5 6 7 8 9 vB jB I l J D E F A B C K L G M N O m n o p q r s t u v w x y z AB BB CB DB EB FB GB HB IB JB KB LB MB NB OB PB kB QB lB RB SB Y TB UB VB WB XB YB ZB aB bB cB dB eB fB gB P Q R mB S T U V W Z a b c d e f g h i j k X H nB wB xB"},D:{"132":"0 1 2 3 4 I l J D E F A B C K L G M N O m n o p q r s t u v w x y z","388":"5 6 7 8 9 AB BB CB DB EB FB GB HB IB JB KB LB MB NB OB PB kB QB lB RB SB Y TB UB VB WB XB YB ZB aB bB cB dB eB fB gB P Q R S T U V W Z a b c d e f g h i j k X H nB yB zB"},E:{"132":"I l J D E F A B C K L G 0B oB 1B 2B 3B 4B pB hB iB 5B 6B 7B qB rB 8B"},F:{"132":"F B C G M N O m n o p q r 9B AC BC CC hB sB DC iB","388":"0 1 2 3 4 5 6 7 8 9 s t u v w x y z AB BB CB DB EB FB GB HB IB JB KB LB MB NB OB PB QB RB SB Y TB UB VB WB XB YB ZB aB bB cB dB eB fB gB P Q R mB S T U V W"},G:{"132":"E oB EC tB FC GC HC IC JC KC LC MC NC OC PC QC RC SC TC UC VC WC XC qB rB"},H:{"132":"YC"},I:{"132":"jB I ZC aC bC cC tB dC eC","388":"H"},J:{"132":"D A"},K:{"132":"A B C hB sB iB","388":"Y"},L:{"388":"H"},M:{"132":"X"},N:{"132":"A B"},O:{"132":"fC"},P:{"132":"I","388":"gC hC iC jC kC pB lC mC nC oC pC qC"},Q:{"388":"rC"},R:{"388":"sC"},S:{"132":"tC"}},B:5,C:"CSS text-indent"}; 2 | -------------------------------------------------------------------------------- /node_modules/source-map/dist/pointer.js: -------------------------------------------------------------------------------- 1 | module.exports={A:{A:{"1":"B","2":"J D E F uB","164":"A"},B:{"1":"C K L G M N O P Q R S T U V W Z a b c d e f g h i j k X H"},C:{"1":"kB QB lB RB SB Y TB UB VB WB XB YB ZB aB bB cB dB eB fB gB P Q R mB S T U V W Z a b c d e f g h i j k X H nB","2":"vB jB I l wB xB","8":"0 1 2 3 4 5 6 7 J D E F A B C K L G M N O m n o p q r s t u v w x y z","328":"8 9 AB BB CB DB EB FB GB HB IB JB KB LB MB NB OB PB"},D:{"1":"MB NB OB PB kB QB lB RB SB Y TB UB VB WB XB YB ZB aB bB cB dB eB fB gB P Q R S T U V W Z a b c d e f g h i j k X H nB yB zB","2":"I l J D E F A B C K L G M N O m n o","8":"0 1 2 3 4 5 6 7 8 9 p q r s t u v w x y z AB BB CB DB EB FB GB HB IB","584":"JB KB LB"},E:{"1":"K L G 5B 6B 7B qB rB 8B","2":"I l J 0B oB 1B","8":"D E F A B C 2B 3B 4B pB hB","1096":"iB"},F:{"1":"9 AB BB CB DB EB FB GB HB IB JB KB LB MB NB OB PB QB RB SB Y TB UB VB WB XB YB ZB aB bB cB dB eB fB gB P Q R mB S T U V W","2":"F B C 9B AC BC CC hB sB DC iB","8":"0 1 2 3 4 5 G M N O m n o p q r s t u v w x y z","584":"6 7 8"},G:{"1":"SC TC UC VC WC XC qB rB","8":"E oB EC tB FC GC HC IC JC KC LC MC NC OC PC QC","6148":"RC"},H:{"2":"YC"},I:{"1":"H","8":"jB I ZC aC bC cC tB dC eC"},J:{"8":"D A"},K:{"1":"Y","2":"A","8":"B C hB sB iB"},L:{"1":"H"},M:{"1":"X"},N:{"1":"B","36":"A"},O:{"8":"fC"},P:{"1":"hC iC jC kC pB lC mC nC oC pC qC","2":"gC","8":"I"},Q:{"1":"rC"},R:{"2":"sC"},S:{"328":"tC"}},B:2,C:"Pointer events"}; 2 | -------------------------------------------------------------------------------- /node_modules/source-map/dist/readable_serial.js: -------------------------------------------------------------------------------- 1 | var serial = require('../serial.js'); 2 | 3 | // API 4 | module.exports = ReadableSerial; 5 | 6 | /** 7 | * Streaming wrapper to `asynckit.serial` 8 | * 9 | * @param {array|object} list - array or object (named list) to iterate over 10 | * @param {function} iterator - iterator to run 11 | * @param {function} callback - invoked when all elements processed 12 | * @returns {stream.Readable#} 13 | */ 14 | function ReadableSerial(list, iterator, callback) 15 | { 16 | if (!(this instanceof ReadableSerial)) 17 | { 18 | return new ReadableSerial(list, iterator, callback); 19 | } 20 | 21 | // turn on object mode 22 | ReadableSerial.super_.call(this, {objectMode: true}); 23 | 24 | this._start(serial, list, iterator, callback); 25 | } 26 | -------------------------------------------------------------------------------- /node_modules/source-map/dist/string-replace-all-stage-4.js: -------------------------------------------------------------------------------- 1 | // https://github.com/tc39/proposal-string-replaceall 2 | require('../modules/esnext.string.replace-all'); 3 | -------------------------------------------------------------------------------- /node_modules/source-map/dist/superscriptRole.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property"); 4 | 5 | _Object$defineProperty(exports, "__esModule", { 6 | value: true 7 | }); 8 | 9 | exports.default = void 0; 10 | var superscriptRole = { 11 | abstract: false, 12 | accessibleNameRequired: false, 13 | baseConcepts: [], 14 | childrenPresentational: false, 15 | nameFrom: ['prohibited'], 16 | prohibitedProps: ['aria-label', 'aria-labelledby'], 17 | props: {}, 18 | relatedConcepts: [], 19 | requireContextRole: [], 20 | requiredContextRole: [], 21 | requiredOwnedElements: [], 22 | requiredProps: {}, 23 | superClass: [['roletype', 'structure', 'section']] 24 | }; 25 | var _default = superscriptRole; 26 | exports.default = _default; -------------------------------------------------------------------------------- /node_modules/source-map/dist/template-literals.js: -------------------------------------------------------------------------------- 1 | module.exports={A:{A:{"2":"J D E F A B uB"},B:{"1":"K L G M N O P Q R S T U V W Z a b c d e f g h i j k X H","16":"C"},C:{"1":"1 2 3 4 5 6 7 8 9 AB BB CB DB EB FB GB HB IB JB KB LB MB NB OB PB kB QB lB RB SB Y TB UB VB WB XB YB ZB aB bB cB dB eB fB gB P Q R mB S T U V W Z a b c d e f g h i j k X H nB","2":"0 vB jB I l J D E F A B C K L G M N O m n o p q r s t u v w x y z wB xB"},D:{"1":"8 9 AB BB CB DB EB FB GB HB IB JB KB LB MB NB OB PB kB QB lB RB SB Y TB UB VB WB XB YB ZB aB bB cB dB eB fB gB P Q R S T U V W Z a b c d e f g h i j k X H nB yB zB","2":"0 1 2 3 4 5 6 7 I l J D E F A B C K L G M N O m n o p q r s t u v w x y z"},E:{"1":"A B K L G 4B pB hB iB 5B 6B 7B qB rB 8B","2":"I l J D E F 0B oB 1B 2B 3B","129":"C"},F:{"1":"0 1 2 3 4 5 6 7 8 9 w x y z AB BB CB DB EB FB GB HB IB JB KB LB MB NB OB PB QB RB SB Y TB UB VB WB XB YB ZB aB bB cB dB eB fB gB P Q R mB S T U V W","2":"F B C G M N O m n o p q r s t u v 9B AC BC CC hB sB DC iB"},G:{"1":"JC KC LC MC NC OC QC RC SC TC UC VC WC XC qB rB","2":"E oB EC tB FC GC HC IC","129":"PC"},H:{"2":"YC"},I:{"1":"H","2":"jB I ZC aC bC cC tB dC eC"},J:{"2":"D A"},K:{"1":"Y","2":"A B C hB sB iB"},L:{"1":"H"},M:{"1":"X"},N:{"2":"A B"},O:{"1":"fC"},P:{"1":"I gC hC iC jC kC pB lC mC nC oC pC qC"},Q:{"1":"rC"},R:{"1":"sC"},S:{"1":"tC"}},B:6,C:"ES6 Template Literals (Template Strings)"}; 2 | -------------------------------------------------------------------------------- /node_modules/source-map/dist/timesLimit.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | exports.default = timesLimit; 7 | 8 | var _mapLimit = require('./mapLimit.js'); 9 | 10 | var _mapLimit2 = _interopRequireDefault(_mapLimit); 11 | 12 | var _range = require('./internal/range.js'); 13 | 14 | var _range2 = _interopRequireDefault(_range); 15 | 16 | var _wrapAsync = require('./internal/wrapAsync.js'); 17 | 18 | var _wrapAsync2 = _interopRequireDefault(_wrapAsync); 19 | 20 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 21 | 22 | /** 23 | * The same as [times]{@link module:ControlFlow.times} but runs a maximum of `limit` async operations at a 24 | * time. 25 | * 26 | * @name timesLimit 27 | * @static 28 | * @memberOf module:ControlFlow 29 | * @method 30 | * @see [async.times]{@link module:ControlFlow.times} 31 | * @category Control Flow 32 | * @param {number} count - The number of times to run the function. 33 | * @param {number} limit - The maximum number of async operations at a time. 34 | * @param {AsyncFunction} iteratee - The async function to call `n` times. 35 | * Invoked with the iteration index and a callback: (n, next). 36 | * @param {Function} callback - see [async.map]{@link module:Collections.map}. 37 | * @returns {Promise} a promise, if no callback is provided 38 | */ 39 | function timesLimit(count, limit, iteratee, callback) { 40 | var _iteratee = (0, _wrapAsync2.default)(iteratee); 41 | return (0, _mapLimit2.default)((0, _range2.default)(count), limit, _iteratee, callback); 42 | } 43 | module.exports = exports['default']; -------------------------------------------------------------------------------- /node_modules/source-map/dist/wasm.js: -------------------------------------------------------------------------------- 1 | module.exports={A:{A:{"2":"J D E F A B uB"},B:{"1":"M N O P Q R S T U V W Z a b c d e f g h i j k X H","2":"C K L","578":"G"},C:{"1":"KB LB MB NB OB PB kB QB lB RB SB Y TB UB VB WB XB YB ZB aB bB cB dB eB fB gB P Q R mB S T U V W Z a b c d e f g h i j k X H nB","2":"0 1 2 3 4 5 6 7 8 9 vB jB I l J D E F A B C K L G M N O m n o p q r s t u v w x y z AB BB CB DB wB xB","194":"EB FB GB HB IB","1025":"JB"},D:{"1":"OB PB kB QB lB RB SB Y TB UB VB WB XB YB ZB aB bB cB dB eB fB gB P Q R S T U V W Z a b c d e f g h i j k X H nB yB zB","2":"0 1 2 3 4 5 6 7 8 9 I l J D E F A B C K L G M N O m n o p q r s t u v w x y z AB BB CB DB EB FB GB HB","322":"IB JB KB LB MB NB"},E:{"1":"B C K L G hB iB 5B 6B 7B qB rB 8B","2":"I l J D E F A 0B oB 1B 2B 3B 4B pB"},F:{"1":"BB CB DB EB FB GB HB IB JB KB LB MB NB OB PB QB RB SB Y TB UB VB WB XB YB ZB aB bB cB dB eB fB gB P Q R mB S T U V W","2":"0 1 2 3 4 F B C G M N O m n o p q r s t u v w x y z 9B AC BC CC hB sB DC iB","322":"5 6 7 8 9 AB"},G:{"1":"NC OC PC QC RC SC TC UC VC WC XC qB rB","2":"E oB EC tB FC GC HC IC JC KC LC MC"},H:{"2":"YC"},I:{"1":"H","2":"jB I ZC aC bC cC tB dC eC"},J:{"2":"D A"},K:{"1":"Y","2":"A B C hB sB iB"},L:{"1":"H"},M:{"1":"X"},N:{"2":"A B"},O:{"2":"fC"},P:{"1":"iC jC kC pB lC mC nC oC pC qC","2":"I gC hC"},Q:{"1":"rC"},R:{"2":"sC"},S:{"194":"tC"}},B:6,C:"WebAssembly"}; 2 | -------------------------------------------------------------------------------- /node_modules/source-map/dist/will-change.js: -------------------------------------------------------------------------------- 1 | module.exports={A:{A:{"2":"J D E F A B uB"},B:{"1":"P Q R S T U V W Z a b c d e f g h i j k X H","2":"C K L G M N O"},C:{"1":"3 4 5 6 7 8 9 AB BB CB DB EB FB GB HB IB JB KB LB MB NB OB PB kB QB lB RB SB Y TB UB VB WB XB YB ZB aB bB cB dB eB fB gB P Q R mB S T U V W Z a b c d e f g h i j k X H nB","2":"vB jB I l J D E F A B C K L G M N O m n o p q r s t u v wB xB","194":"0 1 2 w x y z"},D:{"1":"3 4 5 6 7 8 9 AB BB CB DB EB FB GB HB IB JB KB LB MB NB OB PB kB QB lB RB SB Y TB UB VB WB XB YB ZB aB bB cB dB eB fB gB P Q R S T U V W Z a b c d e f g h i j k X H nB yB zB","2":"0 1 2 I l J D E F A B C K L G M N O m n o p q r s t u v w x y z"},E:{"1":"A B C K L G 4B pB hB iB 5B 6B 7B qB rB 8B","2":"I l J D E F 0B oB 1B 2B 3B"},F:{"1":"0 1 2 3 4 5 6 7 8 9 r s t u v w x y z AB BB CB DB EB FB GB HB IB JB KB LB MB NB OB PB QB RB SB Y TB UB VB WB XB YB ZB aB bB cB dB eB fB gB P Q R mB S T U V W","2":"F B C G M N O m n o p q 9B AC BC CC hB sB DC iB"},G:{"1":"KC LC MC NC OC PC QC RC SC TC UC VC WC XC qB rB","2":"E oB EC tB FC GC HC IC JC"},H:{"2":"YC"},I:{"1":"H","2":"jB I ZC aC bC cC tB dC eC"},J:{"2":"D A"},K:{"1":"Y","2":"A B C hB sB iB"},L:{"1":"H"},M:{"1":"X"},N:{"2":"A B"},O:{"1":"fC"},P:{"1":"I gC hC iC jC kC pB lC mC nC oC pC qC"},Q:{"1":"rC"},R:{"1":"sC"},S:{"1":"tC"}},B:5,C:"CSS will-change property"}; 2 | -------------------------------------------------------------------------------- /node_modules/source-map/dist/woff.js: -------------------------------------------------------------------------------- 1 | module.exports={A:{A:{"1":"F A B","2":"J D E uB"},B:{"1":"C K L G M N O P Q R S T U V W Z a b c d e f g h i j k X H"},C:{"1":"0 1 2 3 4 5 6 7 8 9 I l J D E F A B C K L G M N O m n o p q r s t u v w x y z AB BB CB DB EB FB GB HB IB JB KB LB MB NB OB PB kB QB lB RB SB Y TB UB VB WB XB YB ZB aB bB cB dB eB fB gB P Q R mB S T U V W Z a b c d e f g h i j k X H nB xB","2":"vB jB wB"},D:{"1":"0 1 2 3 4 5 6 7 8 9 l J D E F A B C K L G M N O m n o p q r s t u v w x y z AB BB CB DB EB FB GB HB IB JB KB LB MB NB OB PB kB QB lB RB SB Y TB UB VB WB XB YB ZB aB bB cB dB eB fB gB P Q R S T U V W Z a b c d e f g h i j k X H nB yB zB","2":"I"},E:{"1":"J D E F A B C K L G 1B 2B 3B 4B pB hB iB 5B 6B 7B qB rB 8B","2":"I l 0B oB"},F:{"1":"0 1 2 3 4 5 6 7 8 9 C G M N O m n o p q r s t u v w x y z AB BB CB DB EB FB GB HB IB JB KB LB MB NB OB PB QB RB SB Y TB UB VB WB XB YB ZB aB bB cB dB eB fB gB P Q R mB S T U V W hB sB DC iB","2":"F B 9B AC BC CC"},G:{"1":"E FC GC HC IC JC KC LC MC NC OC PC QC RC SC TC UC VC WC XC qB rB","2":"oB EC tB"},H:{"2":"YC"},I:{"1":"H dC eC","2":"jB ZC aC bC cC tB","130":"I"},J:{"1":"D A"},K:{"1":"B C Y hB sB iB","2":"A"},L:{"1":"H"},M:{"1":"X"},N:{"1":"A B"},O:{"1":"fC"},P:{"1":"I gC hC iC jC kC pB lC mC nC oC pC qC"},Q:{"1":"rC"},R:{"1":"sC"},S:{"1":"tC"}},B:2,C:"WOFF - Web Open Font Format"}; 2 | -------------------------------------------------------------------------------- /node_modules/source-map/dist/write.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | 3 | const fs = require('fs') 4 | const promise = require('./promise') 5 | const streamify = require('./streamify') 6 | 7 | module.exports = write 8 | 9 | /** 10 | * Public function `write`. 11 | * 12 | * Returns a promise and asynchronously serialises a data structure to a 13 | * JSON file on disk. Sanely handles promises, buffers, maps and other 14 | * iterables. 15 | * 16 | * @param path: Path to the JSON file. 17 | * 18 | * @param data: The data to transform. 19 | * 20 | * @option space: Indentation string, or the number of spaces 21 | * to indent each nested level by. 22 | * 23 | * @option promises: 'resolve' or 'ignore', default is 'resolve'. 24 | * 25 | * @option buffers: 'toString' or 'ignore', default is 'toString'. 26 | * 27 | * @option maps: 'object' or 'ignore', default is 'object'. 28 | * 29 | * @option iterables: 'array' or 'ignore', default is 'array'. 30 | * 31 | * @option circular: 'error' or 'ignore', default is 'error'. 32 | * 33 | * @option yieldRate: The number of data items to process per timeslice, 34 | * default is 16384. 35 | * 36 | * @option bufferLength: The length of the buffer, default is 1024. 37 | * 38 | * @option highWaterMark: If set, will be passed to the readable stream constructor 39 | * as the value for the highWaterMark option. 40 | * 41 | * @option Promise: The promise constructor to use, defaults to bluebird. 42 | **/ 43 | function write (path, data, options) { 44 | const Promise = promise(options) 45 | 46 | return new Promise((resolve, reject) => { 47 | streamify(data, options) 48 | .pipe(fs.createWriteStream(path, options)) 49 | .on('finish', () => { 50 | resolve() 51 | }) 52 | .on('error', reject) 53 | .on('dataError', reject) 54 | }) 55 | } 56 | -------------------------------------------------------------------------------- /node_modules/source-map/dist/xml-serializer.js: -------------------------------------------------------------------------------- 1 | module.exports={A:{A:{"1":"A B","260":"J D E F uB"},B:{"1":"C K L G M N O P Q R S T U V W Z a b c d e f g h i j k X H"},C:{"1":"0 1 2 3 4 5 6 7 8 9 C K L G M N O m n o p q r s t u v w x y z AB BB CB DB EB FB GB HB IB JB KB LB MB NB OB PB kB QB lB RB SB Y TB UB VB WB XB YB ZB aB bB cB dB eB fB gB P Q R mB S T U V W Z a b c d e f g h i j k X H nB","132":"B","260":"vB jB I l J D wB xB","516":"E F A"},D:{"1":"0 1 2 3 4 5 6 7 8 9 y z AB BB CB DB EB FB GB HB IB JB KB LB MB NB OB PB kB QB lB RB SB Y TB UB VB WB XB YB ZB aB bB cB dB eB fB gB P Q R S T U V W Z a b c d e f g h i j k X H nB yB zB","132":"I l J D E F A B C K L G M N O m n o p q r s t u v w x"},E:{"1":"E F A B C K L G 3B 4B pB hB iB 5B 6B 7B qB rB 8B","132":"I l J D 0B oB 1B 2B"},F:{"1":"0 1 2 3 4 5 6 7 8 9 O m n o p q r s t u v w x y z AB BB CB DB EB FB GB HB IB JB KB LB MB NB OB PB QB RB SB Y TB UB VB WB XB YB ZB aB bB cB dB eB fB gB P Q R mB S T U V W","16":"F 9B","132":"B C G M N AC BC CC hB sB DC iB"},G:{"1":"E IC JC KC LC MC NC OC PC QC RC SC TC UC VC WC XC qB rB","132":"oB EC tB FC GC HC"},H:{"132":"YC"},I:{"1":"H dC eC","132":"jB I ZC aC bC cC tB"},J:{"132":"D A"},K:{"1":"Y","16":"A","132":"B C hB sB iB"},L:{"1":"H"},M:{"1":"X"},N:{"1":"A B"},O:{"1":"fC"},P:{"1":"I gC hC iC jC kC pB lC mC nC oC pC qC"},Q:{"1":"rC"},R:{"1":"sC"},S:{"1":"tC"}},B:4,C:"DOM Parsing and Serialization"}; 2 | -------------------------------------------------------------------------------- /node_modules/source-map/lib/array-set.js: -------------------------------------------------------------------------------- 1 | /* -*- Mode: js; js-indent-level: 2; -*- */ 2 | /* 3 | * Copyright 2011 Mozilla Foundation and contributors 4 | * Licensed under the New BSD license. See LICENSE or: 5 | * http://opensource.org/licenses/BSD-3-Clause 6 | */ 7 | 8 | var util = require('./util'); 9 | var has = Object.prototype.hasOwnProperty; 10 | var hasNativeMap = typeof Map !== "undefined"; 11 | 12 | /** 13 | * A data structure which is a combination of an array and a set. Adding a new 14 | * member is O(1), testing for membership is O(1), and finding the index of an 15 | * element is O(1). Removing elements from the set is not supported. Only 16 | * strings are supported for membership. 17 | */ 18 | function ArraySet() { 19 | this._array = []; 20 | this._set = hasNativeMap ? new Map() : Object.create(null); 21 | } 22 | 23 | /** 24 | * Static method for creating ArraySet instances from an existing array. 25 | */ 26 | ArraySet.fromArray = function ArraySet_fromArray(aArray, aAllowDuplicates) { 27 | var set = new ArraySet(); 28 | for (var i = 0, len = aArray.length; i < len; i++) { 29 | set.add(aArray[i], aAllowDuplicates); 30 | } 31 | return set; 32 | }; 33 | 34 | /** 35 | * Return how many unique items are in this ArraySet. If duplicates have been 36 | * added, than those do not count towards the size. 37 | * 38 | * @returns Number 39 | */ 40 | ArraySet.prototype.size = function ArraySet_size() { 41 | return hasNativeMap ? this._set.size : Object.getOwnPropertyNames(this._set).length; 42 | }; 43 | 44 | /** 45 | * Add the given string to this set. 46 | * 47 | * @param String aStr 48 | */ 49 | ArraySet.prototype.add = function ArraySet_add(aStr, aAllowDuplicates) { 50 | var sStr = hasNativeMap ? aStr : util.toSetString(aStr); 51 | var isDuplicate = hasNativeMap ? this.has(aStr) : has.call(this._set, sStr); 52 | var idx = this._array.length; 53 | if (!isDuplicate || aAllowDuplicates) { 54 | this._array.push(aStr); 55 | } 56 | if (!isDuplicate) { 57 | if (hasNativeMap) { 58 | this._set.set(aStr, idx); 59 | } else { 60 | this._set[sStr] = idx; 61 | } 62 | } 63 | }; 64 | 65 | /** 66 | * Is the given string a member of this set? 67 | * 68 | * @param String aStr 69 | */ 70 | ArraySet.prototype.has = function ArraySet_has(aStr) { 71 | if (hasNativeMap) { 72 | return this._set.has(aStr); 73 | } else { 74 | var sStr = util.toSetString(aStr); 75 | return has.call(this._set, sStr); 76 | } 77 | }; 78 | 79 | /** 80 | * What is the index of the given string in the array? 81 | * 82 | * @param String aStr 83 | */ 84 | ArraySet.prototype.indexOf = function ArraySet_indexOf(aStr) { 85 | if (hasNativeMap) { 86 | var idx = this._set.get(aStr); 87 | if (idx >= 0) { 88 | return idx; 89 | } 90 | } else { 91 | var sStr = util.toSetString(aStr); 92 | if (has.call(this._set, sStr)) { 93 | return this._set[sStr]; 94 | } 95 | } 96 | 97 | throw new Error('"' + aStr + '" is not in the set.'); 98 | }; 99 | 100 | /** 101 | * What is the element at the given index? 102 | * 103 | * @param Number aIdx 104 | */ 105 | ArraySet.prototype.at = function ArraySet_at(aIdx) { 106 | if (aIdx >= 0 && aIdx < this._array.length) { 107 | return this._array[aIdx]; 108 | } 109 | throw new Error('No element indexed by ' + aIdx); 110 | }; 111 | 112 | /** 113 | * Returns the array representation of this set (which has the proper indices 114 | * indicated by indexOf). Note that this is a copy of the internal array used 115 | * for storing the members so that no one can mess with internal state. 116 | */ 117 | ArraySet.prototype.toArray = function ArraySet_toArray() { 118 | return this._array.slice(); 119 | }; 120 | 121 | exports.ArraySet = ArraySet; 122 | -------------------------------------------------------------------------------- /node_modules/source-map/lib/base64-vlq.js: -------------------------------------------------------------------------------- 1 | /* -*- Mode: js; js-indent-level: 2; -*- */ 2 | /* 3 | * Copyright 2011 Mozilla Foundation and contributors 4 | * Licensed under the New BSD license. See LICENSE or: 5 | * http://opensource.org/licenses/BSD-3-Clause 6 | * 7 | * Based on the Base 64 VLQ implementation in Closure Compiler: 8 | * https://code.google.com/p/closure-compiler/source/browse/trunk/src/com/google/debugging/sourcemap/Base64VLQ.java 9 | * 10 | * Copyright 2011 The Closure Compiler Authors. All rights reserved. 11 | * Redistribution and use in source and binary forms, with or without 12 | * modification, are permitted provided that the following conditions are 13 | * met: 14 | * 15 | * * Redistributions of source code must retain the above copyright 16 | * notice, this list of conditions and the following disclaimer. 17 | * * Redistributions in binary form must reproduce the above 18 | * copyright notice, this list of conditions and the following 19 | * disclaimer in the documentation and/or other materials provided 20 | * with the distribution. 21 | * * Neither the name of Google Inc. nor the names of its 22 | * contributors may be used to endorse or promote products derived 23 | * from this software without specific prior written permission. 24 | * 25 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 26 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 27 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 28 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 29 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 30 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 31 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 32 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 33 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 34 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 35 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 36 | */ 37 | 38 | var base64 = require('./base64'); 39 | 40 | // A single base 64 digit can contain 6 bits of data. For the base 64 variable 41 | // length quantities we use in the source map spec, the first bit is the sign, 42 | // the next four bits are the actual value, and the 6th bit is the 43 | // continuation bit. The continuation bit tells us whether there are more 44 | // digits in this value following this digit. 45 | // 46 | // Continuation 47 | // | Sign 48 | // | | 49 | // V V 50 | // 101011 51 | 52 | var VLQ_BASE_SHIFT = 5; 53 | 54 | // binary: 100000 55 | var VLQ_BASE = 1 << VLQ_BASE_SHIFT; 56 | 57 | // binary: 011111 58 | var VLQ_BASE_MASK = VLQ_BASE - 1; 59 | 60 | // binary: 100000 61 | var VLQ_CONTINUATION_BIT = VLQ_BASE; 62 | 63 | /** 64 | * Converts from a two-complement value to a value where the sign bit is 65 | * placed in the least significant bit. For example, as decimals: 66 | * 1 becomes 2 (10 binary), -1 becomes 3 (11 binary) 67 | * 2 becomes 4 (100 binary), -2 becomes 5 (101 binary) 68 | */ 69 | function toVLQSigned(aValue) { 70 | return aValue < 0 71 | ? ((-aValue) << 1) + 1 72 | : (aValue << 1) + 0; 73 | } 74 | 75 | /** 76 | * Converts to a two-complement value from a value where the sign bit is 77 | * placed in the least significant bit. For example, as decimals: 78 | * 2 (10 binary) becomes 1, 3 (11 binary) becomes -1 79 | * 4 (100 binary) becomes 2, 5 (101 binary) becomes -2 80 | */ 81 | function fromVLQSigned(aValue) { 82 | var isNegative = (aValue & 1) === 1; 83 | var shifted = aValue >> 1; 84 | return isNegative 85 | ? -shifted 86 | : shifted; 87 | } 88 | 89 | /** 90 | * Returns the base 64 VLQ encoded value. 91 | */ 92 | exports.encode = function base64VLQ_encode(aValue) { 93 | var encoded = ""; 94 | var digit; 95 | 96 | var vlq = toVLQSigned(aValue); 97 | 98 | do { 99 | digit = vlq & VLQ_BASE_MASK; 100 | vlq >>>= VLQ_BASE_SHIFT; 101 | if (vlq > 0) { 102 | // There are still more digits in this value, so we must make sure the 103 | // continuation bit is marked. 104 | digit |= VLQ_CONTINUATION_BIT; 105 | } 106 | encoded += base64.encode(digit); 107 | } while (vlq > 0); 108 | 109 | return encoded; 110 | }; 111 | 112 | /** 113 | * Decodes the next base 64 VLQ value from the given string and returns the 114 | * value and the rest of the string via the out parameter. 115 | */ 116 | exports.decode = function base64VLQ_decode(aStr, aIndex, aOutParam) { 117 | var strLen = aStr.length; 118 | var result = 0; 119 | var shift = 0; 120 | var continuation, digit; 121 | 122 | do { 123 | if (aIndex >= strLen) { 124 | throw new Error("Expected more digits in base 64 VLQ value."); 125 | } 126 | 127 | digit = base64.decode(aStr.charCodeAt(aIndex++)); 128 | if (digit === -1) { 129 | throw new Error("Invalid base64 digit: " + aStr.charAt(aIndex - 1)); 130 | } 131 | 132 | continuation = !!(digit & VLQ_CONTINUATION_BIT); 133 | digit &= VLQ_BASE_MASK; 134 | result = result + (digit << shift); 135 | shift += VLQ_BASE_SHIFT; 136 | } while (continuation); 137 | 138 | aOutParam.value = fromVLQSigned(result); 139 | aOutParam.rest = aIndex; 140 | }; 141 | -------------------------------------------------------------------------------- /node_modules/source-map/lib/base64.js: -------------------------------------------------------------------------------- 1 | /* -*- Mode: js; js-indent-level: 2; -*- */ 2 | /* 3 | * Copyright 2011 Mozilla Foundation and contributors 4 | * Licensed under the New BSD license. See LICENSE or: 5 | * http://opensource.org/licenses/BSD-3-Clause 6 | */ 7 | 8 | var intToCharMap = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'.split(''); 9 | 10 | /** 11 | * Encode an integer in the range of 0 to 63 to a single base 64 digit. 12 | */ 13 | exports.encode = function (number) { 14 | if (0 <= number && number < intToCharMap.length) { 15 | return intToCharMap[number]; 16 | } 17 | throw new TypeError("Must be between 0 and 63: " + number); 18 | }; 19 | 20 | /** 21 | * Decode a single base 64 character code digit to an integer. Returns -1 on 22 | * failure. 23 | */ 24 | exports.decode = function (charCode) { 25 | var bigA = 65; // 'A' 26 | var bigZ = 90; // 'Z' 27 | 28 | var littleA = 97; // 'a' 29 | var littleZ = 122; // 'z' 30 | 31 | var zero = 48; // '0' 32 | var nine = 57; // '9' 33 | 34 | var plus = 43; // '+' 35 | var slash = 47; // '/' 36 | 37 | var littleOffset = 26; 38 | var numberOffset = 52; 39 | 40 | // 0 - 25: ABCDEFGHIJKLMNOPQRSTUVWXYZ 41 | if (bigA <= charCode && charCode <= bigZ) { 42 | return (charCode - bigA); 43 | } 44 | 45 | // 26 - 51: abcdefghijklmnopqrstuvwxyz 46 | if (littleA <= charCode && charCode <= littleZ) { 47 | return (charCode - littleA + littleOffset); 48 | } 49 | 50 | // 52 - 61: 0123456789 51 | if (zero <= charCode && charCode <= nine) { 52 | return (charCode - zero + numberOffset); 53 | } 54 | 55 | // 62: + 56 | if (charCode == plus) { 57 | return 62; 58 | } 59 | 60 | // 63: / 61 | if (charCode == slash) { 62 | return 63; 63 | } 64 | 65 | // Invalid base64 digit. 66 | return -1; 67 | }; 68 | -------------------------------------------------------------------------------- /node_modules/source-map/lib/binary-search.js: -------------------------------------------------------------------------------- 1 | /* -*- Mode: js; js-indent-level: 2; -*- */ 2 | /* 3 | * Copyright 2011 Mozilla Foundation and contributors 4 | * Licensed under the New BSD license. See LICENSE or: 5 | * http://opensource.org/licenses/BSD-3-Clause 6 | */ 7 | 8 | exports.GREATEST_LOWER_BOUND = 1; 9 | exports.LEAST_UPPER_BOUND = 2; 10 | 11 | /** 12 | * Recursive implementation of binary search. 13 | * 14 | * @param aLow Indices here and lower do not contain the needle. 15 | * @param aHigh Indices here and higher do not contain the needle. 16 | * @param aNeedle The element being searched for. 17 | * @param aHaystack The non-empty array being searched. 18 | * @param aCompare Function which takes two elements and returns -1, 0, or 1. 19 | * @param aBias Either 'binarySearch.GREATEST_LOWER_BOUND' or 20 | * 'binarySearch.LEAST_UPPER_BOUND'. Specifies whether to return the 21 | * closest element that is smaller than or greater than the one we are 22 | * searching for, respectively, if the exact element cannot be found. 23 | */ 24 | function recursiveSearch(aLow, aHigh, aNeedle, aHaystack, aCompare, aBias) { 25 | // This function terminates when one of the following is true: 26 | // 27 | // 1. We find the exact element we are looking for. 28 | // 29 | // 2. We did not find the exact element, but we can return the index of 30 | // the next-closest element. 31 | // 32 | // 3. We did not find the exact element, and there is no next-closest 33 | // element than the one we are searching for, so we return -1. 34 | var mid = Math.floor((aHigh - aLow) / 2) + aLow; 35 | var cmp = aCompare(aNeedle, aHaystack[mid], true); 36 | if (cmp === 0) { 37 | // Found the element we are looking for. 38 | return mid; 39 | } 40 | else if (cmp > 0) { 41 | // Our needle is greater than aHaystack[mid]. 42 | if (aHigh - mid > 1) { 43 | // The element is in the upper half. 44 | return recursiveSearch(mid, aHigh, aNeedle, aHaystack, aCompare, aBias); 45 | } 46 | 47 | // The exact needle element was not found in this haystack. Determine if 48 | // we are in termination case (3) or (2) and return the appropriate thing. 49 | if (aBias == exports.LEAST_UPPER_BOUND) { 50 | return aHigh < aHaystack.length ? aHigh : -1; 51 | } else { 52 | return mid; 53 | } 54 | } 55 | else { 56 | // Our needle is less than aHaystack[mid]. 57 | if (mid - aLow > 1) { 58 | // The element is in the lower half. 59 | return recursiveSearch(aLow, mid, aNeedle, aHaystack, aCompare, aBias); 60 | } 61 | 62 | // we are in termination case (3) or (2) and return the appropriate thing. 63 | if (aBias == exports.LEAST_UPPER_BOUND) { 64 | return mid; 65 | } else { 66 | return aLow < 0 ? -1 : aLow; 67 | } 68 | } 69 | } 70 | 71 | /** 72 | * This is an implementation of binary search which will always try and return 73 | * the index of the closest element if there is no exact hit. This is because 74 | * mappings between original and generated line/col pairs are single points, 75 | * and there is an implicit region between each of them, so a miss just means 76 | * that you aren't on the very start of a region. 77 | * 78 | * @param aNeedle The element you are looking for. 79 | * @param aHaystack The array that is being searched. 80 | * @param aCompare A function which takes the needle and an element in the 81 | * array and returns -1, 0, or 1 depending on whether the needle is less 82 | * than, equal to, or greater than the element, respectively. 83 | * @param aBias Either 'binarySearch.GREATEST_LOWER_BOUND' or 84 | * 'binarySearch.LEAST_UPPER_BOUND'. Specifies whether to return the 85 | * closest element that is smaller than or greater than the one we are 86 | * searching for, respectively, if the exact element cannot be found. 87 | * Defaults to 'binarySearch.GREATEST_LOWER_BOUND'. 88 | */ 89 | exports.search = function search(aNeedle, aHaystack, aCompare, aBias) { 90 | if (aHaystack.length === 0) { 91 | return -1; 92 | } 93 | 94 | var index = recursiveSearch(-1, aHaystack.length, aNeedle, aHaystack, 95 | aCompare, aBias || exports.GREATEST_LOWER_BOUND); 96 | if (index < 0) { 97 | return -1; 98 | } 99 | 100 | // We have found either the exact element, or the next-closest element than 101 | // the one we are searching for. However, there may be more than one such 102 | // element. Make sure we always return the smallest of these. 103 | while (index - 1 >= 0) { 104 | if (aCompare(aHaystack[index], aHaystack[index - 1], true) !== 0) { 105 | break; 106 | } 107 | --index; 108 | } 109 | 110 | return index; 111 | }; 112 | -------------------------------------------------------------------------------- /node_modules/source-map/lib/mapping-list.js: -------------------------------------------------------------------------------- 1 | /* -*- Mode: js; js-indent-level: 2; -*- */ 2 | /* 3 | * Copyright 2014 Mozilla Foundation and contributors 4 | * Licensed under the New BSD license. See LICENSE or: 5 | * http://opensource.org/licenses/BSD-3-Clause 6 | */ 7 | 8 | var util = require('./util'); 9 | 10 | /** 11 | * Determine whether mappingB is after mappingA with respect to generated 12 | * position. 13 | */ 14 | function generatedPositionAfter(mappingA, mappingB) { 15 | // Optimized for most common case 16 | var lineA = mappingA.generatedLine; 17 | var lineB = mappingB.generatedLine; 18 | var columnA = mappingA.generatedColumn; 19 | var columnB = mappingB.generatedColumn; 20 | return lineB > lineA || lineB == lineA && columnB >= columnA || 21 | util.compareByGeneratedPositionsInflated(mappingA, mappingB) <= 0; 22 | } 23 | 24 | /** 25 | * A data structure to provide a sorted view of accumulated mappings in a 26 | * performance conscious manner. It trades a neglibable overhead in general 27 | * case for a large speedup in case of mappings being added in order. 28 | */ 29 | function MappingList() { 30 | this._array = []; 31 | this._sorted = true; 32 | // Serves as infimum 33 | this._last = {generatedLine: -1, generatedColumn: 0}; 34 | } 35 | 36 | /** 37 | * Iterate through internal items. This method takes the same arguments that 38 | * `Array.prototype.forEach` takes. 39 | * 40 | * NOTE: The order of the mappings is NOT guaranteed. 41 | */ 42 | MappingList.prototype.unsortedForEach = 43 | function MappingList_forEach(aCallback, aThisArg) { 44 | this._array.forEach(aCallback, aThisArg); 45 | }; 46 | 47 | /** 48 | * Add the given source mapping. 49 | * 50 | * @param Object aMapping 51 | */ 52 | MappingList.prototype.add = function MappingList_add(aMapping) { 53 | if (generatedPositionAfter(this._last, aMapping)) { 54 | this._last = aMapping; 55 | this._array.push(aMapping); 56 | } else { 57 | this._sorted = false; 58 | this._array.push(aMapping); 59 | } 60 | }; 61 | 62 | /** 63 | * Returns the flat, sorted array of mappings. The mappings are sorted by 64 | * generated position. 65 | * 66 | * WARNING: This method returns internal data without copying, for 67 | * performance. The return value must NOT be mutated, and should be treated as 68 | * an immutable borrow. If you want to take ownership, you must make your own 69 | * copy. 70 | */ 71 | MappingList.prototype.toArray = function MappingList_toArray() { 72 | if (!this._sorted) { 73 | this._array.sort(util.compareByGeneratedPositionsInflated); 74 | this._sorted = true; 75 | } 76 | return this._array; 77 | }; 78 | 79 | exports.MappingList = MappingList; 80 | -------------------------------------------------------------------------------- /node_modules/source-map/lib/quick-sort.js: -------------------------------------------------------------------------------- 1 | /* -*- Mode: js; js-indent-level: 2; -*- */ 2 | /* 3 | * Copyright 2011 Mozilla Foundation and contributors 4 | * Licensed under the New BSD license. See LICENSE or: 5 | * http://opensource.org/licenses/BSD-3-Clause 6 | */ 7 | 8 | // It turns out that some (most?) JavaScript engines don't self-host 9 | // `Array.prototype.sort`. This makes sense because C++ will likely remain 10 | // faster than JS when doing raw CPU-intensive sorting. However, when using a 11 | // custom comparator function, calling back and forth between the VM's C++ and 12 | // JIT'd JS is rather slow *and* loses JIT type information, resulting in 13 | // worse generated code for the comparator function than would be optimal. In 14 | // fact, when sorting with a comparator, these costs outweigh the benefits of 15 | // sorting in C++. By using our own JS-implemented Quick Sort (below), we get 16 | // a ~3500ms mean speed-up in `bench/bench.html`. 17 | 18 | /** 19 | * Swap the elements indexed by `x` and `y` in the array `ary`. 20 | * 21 | * @param {Array} ary 22 | * The array. 23 | * @param {Number} x 24 | * The index of the first item. 25 | * @param {Number} y 26 | * The index of the second item. 27 | */ 28 | function swap(ary, x, y) { 29 | var temp = ary[x]; 30 | ary[x] = ary[y]; 31 | ary[y] = temp; 32 | } 33 | 34 | /** 35 | * Returns a random integer within the range `low .. high` inclusive. 36 | * 37 | * @param {Number} low 38 | * The lower bound on the range. 39 | * @param {Number} high 40 | * The upper bound on the range. 41 | */ 42 | function randomIntInRange(low, high) { 43 | return Math.round(low + (Math.random() * (high - low))); 44 | } 45 | 46 | /** 47 | * The Quick Sort algorithm. 48 | * 49 | * @param {Array} ary 50 | * An array to sort. 51 | * @param {function} comparator 52 | * Function to use to compare two items. 53 | * @param {Number} p 54 | * Start index of the array 55 | * @param {Number} r 56 | * End index of the array 57 | */ 58 | function doQuickSort(ary, comparator, p, r) { 59 | // If our lower bound is less than our upper bound, we (1) partition the 60 | // array into two pieces and (2) recurse on each half. If it is not, this is 61 | // the empty array and our base case. 62 | 63 | if (p < r) { 64 | // (1) Partitioning. 65 | // 66 | // The partitioning chooses a pivot between `p` and `r` and moves all 67 | // elements that are less than or equal to the pivot to the before it, and 68 | // all the elements that are greater than it after it. The effect is that 69 | // once partition is done, the pivot is in the exact place it will be when 70 | // the array is put in sorted order, and it will not need to be moved 71 | // again. This runs in O(n) time. 72 | 73 | // Always choose a random pivot so that an input array which is reverse 74 | // sorted does not cause O(n^2) running time. 75 | var pivotIndex = randomIntInRange(p, r); 76 | var i = p - 1; 77 | 78 | swap(ary, pivotIndex, r); 79 | var pivot = ary[r]; 80 | 81 | // Immediately after `j` is incremented in this loop, the following hold 82 | // true: 83 | // 84 | // * Every element in `ary[p .. i]` is less than or equal to the pivot. 85 | // 86 | // * Every element in `ary[i+1 .. j-1]` is greater than the pivot. 87 | for (var j = p; j < r; j++) { 88 | if (comparator(ary[j], pivot) <= 0) { 89 | i += 1; 90 | swap(ary, i, j); 91 | } 92 | } 93 | 94 | swap(ary, i + 1, j); 95 | var q = i + 1; 96 | 97 | // (2) Recurse on each half. 98 | 99 | doQuickSort(ary, comparator, p, q - 1); 100 | doQuickSort(ary, comparator, q + 1, r); 101 | } 102 | } 103 | 104 | /** 105 | * Sort the given array in-place with the given comparator function. 106 | * 107 | * @param {Array} ary 108 | * An array to sort. 109 | * @param {function} comparator 110 | * Function to use to compare two items. 111 | */ 112 | exports.quickSort = function (ary, comparator) { 113 | doQuickSort(ary, comparator, 0, ary.length - 1); 114 | }; 115 | -------------------------------------------------------------------------------- /node_modules/source-map/lib/source-map-generator.js: -------------------------------------------------------------------------------- 1 | /* -*- Mode: js; js-indent-level: 2; -*- */ 2 | /* 3 | * Copyright 2011 Mozilla Foundation and contributors 4 | * Licensed under the New BSD license. See LICENSE or: 5 | * http://opensource.org/licenses/BSD-3-Clause 6 | */ 7 | 8 | var base64VLQ = require('./base64-vlq'); 9 | var util = require('./util'); 10 | var ArraySet = require('./array-set').ArraySet; 11 | var MappingList = require('./mapping-list').MappingList; 12 | 13 | /** 14 | * An instance of the SourceMapGenerator represents a source map which is 15 | * being built incrementally. You may pass an object with the following 16 | * properties: 17 | * 18 | * - file: The filename of the generated source. 19 | * - sourceRoot: A root for all relative URLs in this source map. 20 | */ 21 | function SourceMapGenerator(aArgs) { 22 | if (!aArgs) { 23 | aArgs = {}; 24 | } 25 | this._file = util.getArg(aArgs, 'file', null); 26 | this._sourceRoot = util.getArg(aArgs, 'sourceRoot', null); 27 | this._skipValidation = util.getArg(aArgs, 'skipValidation', false); 28 | this._sources = new ArraySet(); 29 | this._names = new ArraySet(); 30 | this._mappings = new MappingList(); 31 | this._sourcesContents = null; 32 | } 33 | 34 | SourceMapGenerator.prototype._version = 3; 35 | 36 | /** 37 | * Creates a new SourceMapGenerator based on a SourceMapConsumer 38 | * 39 | * @param aSourceMapConsumer The SourceMap. 40 | */ 41 | SourceMapGenerator.fromSourceMap = 42 | function SourceMapGenerator_fromSourceMap(aSourceMapConsumer) { 43 | var sourceRoot = aSourceMapConsumer.sourceRoot; 44 | var generator = new SourceMapGenerator({ 45 | file: aSourceMapConsumer.file, 46 | sourceRoot: sourceRoot 47 | }); 48 | aSourceMapConsumer.eachMapping(function (mapping) { 49 | var newMapping = { 50 | generated: { 51 | line: mapping.generatedLine, 52 | column: mapping.generatedColumn 53 | } 54 | }; 55 | 56 | if (mapping.source != null) { 57 | newMapping.source = mapping.source; 58 | if (sourceRoot != null) { 59 | newMapping.source = util.relative(sourceRoot, newMapping.source); 60 | } 61 | 62 | newMapping.original = { 63 | line: mapping.originalLine, 64 | column: mapping.originalColumn 65 | }; 66 | 67 | if (mapping.name != null) { 68 | newMapping.name = mapping.name; 69 | } 70 | } 71 | 72 | generator.addMapping(newMapping); 73 | }); 74 | aSourceMapConsumer.sources.forEach(function (sourceFile) { 75 | var sourceRelative = sourceFile; 76 | if (sourceRoot !== null) { 77 | sourceRelative = util.relative(sourceRoot, sourceFile); 78 | } 79 | 80 | if (!generator._sources.has(sourceRelative)) { 81 | generator._sources.add(sourceRelative); 82 | } 83 | 84 | var content = aSourceMapConsumer.sourceContentFor(sourceFile); 85 | if (content != null) { 86 | generator.setSourceContent(sourceFile, content); 87 | } 88 | }); 89 | return generator; 90 | }; 91 | 92 | /** 93 | * Add a single mapping from original source line and column to the generated 94 | * source's line and column for this source map being created. The mapping 95 | * object should have the following properties: 96 | * 97 | * - generated: An object with the generated line and column positions. 98 | * - original: An object with the original line and column positions. 99 | * - source: The original source file (relative to the sourceRoot). 100 | * - name: An optional original token name for this mapping. 101 | */ 102 | SourceMapGenerator.prototype.addMapping = 103 | function SourceMapGenerator_addMapping(aArgs) { 104 | var generated = util.getArg(aArgs, 'generated'); 105 | var original = util.getArg(aArgs, 'original', null); 106 | var source = util.getArg(aArgs, 'source', null); 107 | var name = util.getArg(aArgs, 'name', null); 108 | 109 | if (!this._skipValidation) { 110 | this._validateMapping(generated, original, source, name); 111 | } 112 | 113 | if (source != null) { 114 | source = String(source); 115 | if (!this._sources.has(source)) { 116 | this._sources.add(source); 117 | } 118 | } 119 | 120 | if (name != null) { 121 | name = String(name); 122 | if (!this._names.has(name)) { 123 | this._names.add(name); 124 | } 125 | } 126 | 127 | this._mappings.add({ 128 | generatedLine: generated.line, 129 | generatedColumn: generated.column, 130 | originalLine: original != null && original.line, 131 | originalColumn: original != null && original.column, 132 | source: source, 133 | name: name 134 | }); 135 | }; 136 | 137 | /** 138 | * Set the source content for a source file. 139 | */ 140 | SourceMapGenerator.prototype.setSourceContent = 141 | function SourceMapGenerator_setSourceContent(aSourceFile, aSourceContent) { 142 | var source = aSourceFile; 143 | if (this._sourceRoot != null) { 144 | source = util.relative(this._sourceRoot, source); 145 | } 146 | 147 | if (aSourceContent != null) { 148 | // Add the source content to the _sourcesContents map. 149 | // Create a new _sourcesContents map if the property is null. 150 | if (!this._sourcesContents) { 151 | this._sourcesContents = Object.create(null); 152 | } 153 | this._sourcesContents[util.toSetString(source)] = aSourceContent; 154 | } else if (this._sourcesContents) { 155 | // Remove the source file from the _sourcesContents map. 156 | // If the _sourcesContents map is empty, set the property to null. 157 | delete this._sourcesContents[util.toSetString(source)]; 158 | if (Object.keys(this._sourcesContents).length === 0) { 159 | this._sourcesContents = null; 160 | } 161 | } 162 | }; 163 | 164 | /** 165 | * Applies the mappings of a sub-source-map for a specific source file to the 166 | * source map being generated. Each mapping to the supplied source file is 167 | * rewritten using the supplied source map. Note: The resolution for the 168 | * resulting mappings is the minimium of this map and the supplied map. 169 | * 170 | * @param aSourceMapConsumer The source map to be applied. 171 | * @param aSourceFile Optional. The filename of the source file. 172 | * If omitted, SourceMapConsumer's file property will be used. 173 | * @param aSourceMapPath Optional. The dirname of the path to the source map 174 | * to be applied. If relative, it is relative to the SourceMapConsumer. 175 | * This parameter is needed when the two source maps aren't in the same 176 | * directory, and the source map to be applied contains relative source 177 | * paths. If so, those relative source paths need to be rewritten 178 | * relative to the SourceMapGenerator. 179 | */ 180 | SourceMapGenerator.prototype.applySourceMap = 181 | function SourceMapGenerator_applySourceMap(aSourceMapConsumer, aSourceFile, aSourceMapPath) { 182 | var sourceFile = aSourceFile; 183 | // If aSourceFile is omitted, we will use the file property of the SourceMap 184 | if (aSourceFile == null) { 185 | if (aSourceMapConsumer.file == null) { 186 | throw new Error( 187 | 'SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, ' + 188 | 'or the source map\'s "file" property. Both were omitted.' 189 | ); 190 | } 191 | sourceFile = aSourceMapConsumer.file; 192 | } 193 | var sourceRoot = this._sourceRoot; 194 | // Make "sourceFile" relative if an absolute Url is passed. 195 | if (sourceRoot != null) { 196 | sourceFile = util.relative(sourceRoot, sourceFile); 197 | } 198 | // Applying the SourceMap can add and remove items from the sources and 199 | // the names array. 200 | var newSources = new ArraySet(); 201 | var newNames = new ArraySet(); 202 | 203 | // Find mappings for the "sourceFile" 204 | this._mappings.unsortedForEach(function (mapping) { 205 | if (mapping.source === sourceFile && mapping.originalLine != null) { 206 | // Check if it can be mapped by the source map, then update the mapping. 207 | var original = aSourceMapConsumer.originalPositionFor({ 208 | line: mapping.originalLine, 209 | column: mapping.originalColumn 210 | }); 211 | if (original.source != null) { 212 | // Copy mapping 213 | mapping.source = original.source; 214 | if (aSourceMapPath != null) { 215 | mapping.source = util.join(aSourceMapPath, mapping.source) 216 | } 217 | if (sourceRoot != null) { 218 | mapping.source = util.relative(sourceRoot, mapping.source); 219 | } 220 | mapping.originalLine = original.line; 221 | mapping.originalColumn = original.column; 222 | if (original.name != null) { 223 | mapping.name = original.name; 224 | } 225 | } 226 | } 227 | 228 | var source = mapping.source; 229 | if (source != null && !newSources.has(source)) { 230 | newSources.add(source); 231 | } 232 | 233 | var name = mapping.name; 234 | if (name != null && !newNames.has(name)) { 235 | newNames.add(name); 236 | } 237 | 238 | }, this); 239 | this._sources = newSources; 240 | this._names = newNames; 241 | 242 | // Copy sourcesContents of applied map. 243 | aSourceMapConsumer.sources.forEach(function (sourceFile) { 244 | var content = aSourceMapConsumer.sourceContentFor(sourceFile); 245 | if (content != null) { 246 | if (aSourceMapPath != null) { 247 | sourceFile = util.join(aSourceMapPath, sourceFile); 248 | } 249 | if (sourceRoot != null) { 250 | sourceFile = util.relative(sourceRoot, sourceFile); 251 | } 252 | this.setSourceContent(sourceFile, content); 253 | } 254 | }, this); 255 | }; 256 | 257 | /** 258 | * A mapping can have one of the three levels of data: 259 | * 260 | * 1. Just the generated position. 261 | * 2. The Generated position, original position, and original source. 262 | * 3. Generated and original position, original source, as well as a name 263 | * token. 264 | * 265 | * To maintain consistency, we validate that any new mapping being added falls 266 | * in to one of these categories. 267 | */ 268 | SourceMapGenerator.prototype._validateMapping = 269 | function SourceMapGenerator_validateMapping(aGenerated, aOriginal, aSource, 270 | aName) { 271 | // When aOriginal is truthy but has empty values for .line and .column, 272 | // it is most likely a programmer error. In this case we throw a very 273 | // specific error message to try to guide them the right way. 274 | // For example: https://github.com/Polymer/polymer-bundler/pull/519 275 | if (aOriginal && typeof aOriginal.line !== 'number' && typeof aOriginal.column !== 'number') { 276 | throw new Error( 277 | 'original.line and original.column are not numbers -- you probably meant to omit ' + 278 | 'the original mapping entirely and only map the generated position. If so, pass ' + 279 | 'null for the original mapping instead of an object with empty or null values.' 280 | ); 281 | } 282 | 283 | if (aGenerated && 'line' in aGenerated && 'column' in aGenerated 284 | && aGenerated.line > 0 && aGenerated.column >= 0 285 | && !aOriginal && !aSource && !aName) { 286 | // Case 1. 287 | return; 288 | } 289 | else if (aGenerated && 'line' in aGenerated && 'column' in aGenerated 290 | && aOriginal && 'line' in aOriginal && 'column' in aOriginal 291 | && aGenerated.line > 0 && aGenerated.column >= 0 292 | && aOriginal.line > 0 && aOriginal.column >= 0 293 | && aSource) { 294 | // Cases 2 and 3. 295 | return; 296 | } 297 | else { 298 | throw new Error('Invalid mapping: ' + JSON.stringify({ 299 | generated: aGenerated, 300 | source: aSource, 301 | original: aOriginal, 302 | name: aName 303 | })); 304 | } 305 | }; 306 | 307 | /** 308 | * Serialize the accumulated mappings in to the stream of base 64 VLQs 309 | * specified by the source map format. 310 | */ 311 | SourceMapGenerator.prototype._serializeMappings = 312 | function SourceMapGenerator_serializeMappings() { 313 | var previousGeneratedColumn = 0; 314 | var previousGeneratedLine = 1; 315 | var previousOriginalColumn = 0; 316 | var previousOriginalLine = 0; 317 | var previousName = 0; 318 | var previousSource = 0; 319 | var result = ''; 320 | var next; 321 | var mapping; 322 | var nameIdx; 323 | var sourceIdx; 324 | 325 | var mappings = this._mappings.toArray(); 326 | for (var i = 0, len = mappings.length; i < len; i++) { 327 | mapping = mappings[i]; 328 | next = '' 329 | 330 | if (mapping.generatedLine !== previousGeneratedLine) { 331 | previousGeneratedColumn = 0; 332 | while (mapping.generatedLine !== previousGeneratedLine) { 333 | next += ';'; 334 | previousGeneratedLine++; 335 | } 336 | } 337 | else { 338 | if (i > 0) { 339 | if (!util.compareByGeneratedPositionsInflated(mapping, mappings[i - 1])) { 340 | continue; 341 | } 342 | next += ','; 343 | } 344 | } 345 | 346 | next += base64VLQ.encode(mapping.generatedColumn 347 | - previousGeneratedColumn); 348 | previousGeneratedColumn = mapping.generatedColumn; 349 | 350 | if (mapping.source != null) { 351 | sourceIdx = this._sources.indexOf(mapping.source); 352 | next += base64VLQ.encode(sourceIdx - previousSource); 353 | previousSource = sourceIdx; 354 | 355 | // lines are stored 0-based in SourceMap spec version 3 356 | next += base64VLQ.encode(mapping.originalLine - 1 357 | - previousOriginalLine); 358 | previousOriginalLine = mapping.originalLine - 1; 359 | 360 | next += base64VLQ.encode(mapping.originalColumn 361 | - previousOriginalColumn); 362 | previousOriginalColumn = mapping.originalColumn; 363 | 364 | if (mapping.name != null) { 365 | nameIdx = this._names.indexOf(mapping.name); 366 | next += base64VLQ.encode(nameIdx - previousName); 367 | previousName = nameIdx; 368 | } 369 | } 370 | 371 | result += next; 372 | } 373 | 374 | return result; 375 | }; 376 | 377 | SourceMapGenerator.prototype._generateSourcesContent = 378 | function SourceMapGenerator_generateSourcesContent(aSources, aSourceRoot) { 379 | return aSources.map(function (source) { 380 | if (!this._sourcesContents) { 381 | return null; 382 | } 383 | if (aSourceRoot != null) { 384 | source = util.relative(aSourceRoot, source); 385 | } 386 | var key = util.toSetString(source); 387 | return Object.prototype.hasOwnProperty.call(this._sourcesContents, key) 388 | ? this._sourcesContents[key] 389 | : null; 390 | }, this); 391 | }; 392 | 393 | /** 394 | * Externalize the source map. 395 | */ 396 | SourceMapGenerator.prototype.toJSON = 397 | function SourceMapGenerator_toJSON() { 398 | var map = { 399 | version: this._version, 400 | sources: this._sources.toArray(), 401 | names: this._names.toArray(), 402 | mappings: this._serializeMappings() 403 | }; 404 | if (this._file != null) { 405 | map.file = this._file; 406 | } 407 | if (this._sourceRoot != null) { 408 | map.sourceRoot = this._sourceRoot; 409 | } 410 | if (this._sourcesContents) { 411 | map.sourcesContent = this._generateSourcesContent(map.sources, map.sourceRoot); 412 | } 413 | 414 | return map; 415 | }; 416 | 417 | /** 418 | * Render the source map being generated to a string. 419 | */ 420 | SourceMapGenerator.prototype.toString = 421 | function SourceMapGenerator_toString() { 422 | return JSON.stringify(this.toJSON()); 423 | }; 424 | 425 | exports.SourceMapGenerator = SourceMapGenerator; 426 | -------------------------------------------------------------------------------- /node_modules/source-map/lib/source-node.js: -------------------------------------------------------------------------------- 1 | /* -*- Mode: js; js-indent-level: 2; -*- */ 2 | /* 3 | * Copyright 2011 Mozilla Foundation and contributors 4 | * Licensed under the New BSD license. See LICENSE or: 5 | * http://opensource.org/licenses/BSD-3-Clause 6 | */ 7 | 8 | var SourceMapGenerator = require('./source-map-generator').SourceMapGenerator; 9 | var util = require('./util'); 10 | 11 | // Matches a Windows-style `\r\n` newline or a `\n` newline used by all other 12 | // operating systems these days (capturing the result). 13 | var REGEX_NEWLINE = /(\r?\n)/; 14 | 15 | // Newline character code for charCodeAt() comparisons 16 | var NEWLINE_CODE = 10; 17 | 18 | // Private symbol for identifying `SourceNode`s when multiple versions of 19 | // the source-map library are loaded. This MUST NOT CHANGE across 20 | // versions! 21 | var isSourceNode = "$$$isSourceNode$$$"; 22 | 23 | /** 24 | * SourceNodes provide a way to abstract over interpolating/concatenating 25 | * snippets of generated JavaScript source code while maintaining the line and 26 | * column information associated with the original source code. 27 | * 28 | * @param aLine The original line number. 29 | * @param aColumn The original column number. 30 | * @param aSource The original source's filename. 31 | * @param aChunks Optional. An array of strings which are snippets of 32 | * generated JS, or other SourceNodes. 33 | * @param aName The original identifier. 34 | */ 35 | function SourceNode(aLine, aColumn, aSource, aChunks, aName) { 36 | this.children = []; 37 | this.sourceContents = {}; 38 | this.line = aLine == null ? null : aLine; 39 | this.column = aColumn == null ? null : aColumn; 40 | this.source = aSource == null ? null : aSource; 41 | this.name = aName == null ? null : aName; 42 | this[isSourceNode] = true; 43 | if (aChunks != null) this.add(aChunks); 44 | } 45 | 46 | /** 47 | * Creates a SourceNode from generated code and a SourceMapConsumer. 48 | * 49 | * @param aGeneratedCode The generated code 50 | * @param aSourceMapConsumer The SourceMap for the generated code 51 | * @param aRelativePath Optional. The path that relative sources in the 52 | * SourceMapConsumer should be relative to. 53 | */ 54 | SourceNode.fromStringWithSourceMap = 55 | function SourceNode_fromStringWithSourceMap(aGeneratedCode, aSourceMapConsumer, aRelativePath) { 56 | // The SourceNode we want to fill with the generated code 57 | // and the SourceMap 58 | var node = new SourceNode(); 59 | 60 | // All even indices of this array are one line of the generated code, 61 | // while all odd indices are the newlines between two adjacent lines 62 | // (since `REGEX_NEWLINE` captures its match). 63 | // Processed fragments are accessed by calling `shiftNextLine`. 64 | var remainingLines = aGeneratedCode.split(REGEX_NEWLINE); 65 | var remainingLinesIndex = 0; 66 | var shiftNextLine = function() { 67 | var lineContents = getNextLine(); 68 | // The last line of a file might not have a newline. 69 | var newLine = getNextLine() || ""; 70 | return lineContents + newLine; 71 | 72 | function getNextLine() { 73 | return remainingLinesIndex < remainingLines.length ? 74 | remainingLines[remainingLinesIndex++] : undefined; 75 | } 76 | }; 77 | 78 | // We need to remember the position of "remainingLines" 79 | var lastGeneratedLine = 1, lastGeneratedColumn = 0; 80 | 81 | // The generate SourceNodes we need a code range. 82 | // To extract it current and last mapping is used. 83 | // Here we store the last mapping. 84 | var lastMapping = null; 85 | 86 | aSourceMapConsumer.eachMapping(function (mapping) { 87 | if (lastMapping !== null) { 88 | // We add the code from "lastMapping" to "mapping": 89 | // First check if there is a new line in between. 90 | if (lastGeneratedLine < mapping.generatedLine) { 91 | // Associate first line with "lastMapping" 92 | addMappingWithCode(lastMapping, shiftNextLine()); 93 | lastGeneratedLine++; 94 | lastGeneratedColumn = 0; 95 | // The remaining code is added without mapping 96 | } else { 97 | // There is no new line in between. 98 | // Associate the code between "lastGeneratedColumn" and 99 | // "mapping.generatedColumn" with "lastMapping" 100 | var nextLine = remainingLines[remainingLinesIndex] || ''; 101 | var code = nextLine.substr(0, mapping.generatedColumn - 102 | lastGeneratedColumn); 103 | remainingLines[remainingLinesIndex] = nextLine.substr(mapping.generatedColumn - 104 | lastGeneratedColumn); 105 | lastGeneratedColumn = mapping.generatedColumn; 106 | addMappingWithCode(lastMapping, code); 107 | // No more remaining code, continue 108 | lastMapping = mapping; 109 | return; 110 | } 111 | } 112 | // We add the generated code until the first mapping 113 | // to the SourceNode without any mapping. 114 | // Each line is added as separate string. 115 | while (lastGeneratedLine < mapping.generatedLine) { 116 | node.add(shiftNextLine()); 117 | lastGeneratedLine++; 118 | } 119 | if (lastGeneratedColumn < mapping.generatedColumn) { 120 | var nextLine = remainingLines[remainingLinesIndex] || ''; 121 | node.add(nextLine.substr(0, mapping.generatedColumn)); 122 | remainingLines[remainingLinesIndex] = nextLine.substr(mapping.generatedColumn); 123 | lastGeneratedColumn = mapping.generatedColumn; 124 | } 125 | lastMapping = mapping; 126 | }, this); 127 | // We have processed all mappings. 128 | if (remainingLinesIndex < remainingLines.length) { 129 | if (lastMapping) { 130 | // Associate the remaining code in the current line with "lastMapping" 131 | addMappingWithCode(lastMapping, shiftNextLine()); 132 | } 133 | // and add the remaining lines without any mapping 134 | node.add(remainingLines.splice(remainingLinesIndex).join("")); 135 | } 136 | 137 | // Copy sourcesContent into SourceNode 138 | aSourceMapConsumer.sources.forEach(function (sourceFile) { 139 | var content = aSourceMapConsumer.sourceContentFor(sourceFile); 140 | if (content != null) { 141 | if (aRelativePath != null) { 142 | sourceFile = util.join(aRelativePath, sourceFile); 143 | } 144 | node.setSourceContent(sourceFile, content); 145 | } 146 | }); 147 | 148 | return node; 149 | 150 | function addMappingWithCode(mapping, code) { 151 | if (mapping === null || mapping.source === undefined) { 152 | node.add(code); 153 | } else { 154 | var source = aRelativePath 155 | ? util.join(aRelativePath, mapping.source) 156 | : mapping.source; 157 | node.add(new SourceNode(mapping.originalLine, 158 | mapping.originalColumn, 159 | source, 160 | code, 161 | mapping.name)); 162 | } 163 | } 164 | }; 165 | 166 | /** 167 | * Add a chunk of generated JS to this source node. 168 | * 169 | * @param aChunk A string snippet of generated JS code, another instance of 170 | * SourceNode, or an array where each member is one of those things. 171 | */ 172 | SourceNode.prototype.add = function SourceNode_add(aChunk) { 173 | if (Array.isArray(aChunk)) { 174 | aChunk.forEach(function (chunk) { 175 | this.add(chunk); 176 | }, this); 177 | } 178 | else if (aChunk[isSourceNode] || typeof aChunk === "string") { 179 | if (aChunk) { 180 | this.children.push(aChunk); 181 | } 182 | } 183 | else { 184 | throw new TypeError( 185 | "Expected a SourceNode, string, or an array of SourceNodes and strings. Got " + aChunk 186 | ); 187 | } 188 | return this; 189 | }; 190 | 191 | /** 192 | * Add a chunk of generated JS to the beginning of this source node. 193 | * 194 | * @param aChunk A string snippet of generated JS code, another instance of 195 | * SourceNode, or an array where each member is one of those things. 196 | */ 197 | SourceNode.prototype.prepend = function SourceNode_prepend(aChunk) { 198 | if (Array.isArray(aChunk)) { 199 | for (var i = aChunk.length-1; i >= 0; i--) { 200 | this.prepend(aChunk[i]); 201 | } 202 | } 203 | else if (aChunk[isSourceNode] || typeof aChunk === "string") { 204 | this.children.unshift(aChunk); 205 | } 206 | else { 207 | throw new TypeError( 208 | "Expected a SourceNode, string, or an array of SourceNodes and strings. Got " + aChunk 209 | ); 210 | } 211 | return this; 212 | }; 213 | 214 | /** 215 | * Walk over the tree of JS snippets in this node and its children. The 216 | * walking function is called once for each snippet of JS and is passed that 217 | * snippet and the its original associated source's line/column location. 218 | * 219 | * @param aFn The traversal function. 220 | */ 221 | SourceNode.prototype.walk = function SourceNode_walk(aFn) { 222 | var chunk; 223 | for (var i = 0, len = this.children.length; i < len; i++) { 224 | chunk = this.children[i]; 225 | if (chunk[isSourceNode]) { 226 | chunk.walk(aFn); 227 | } 228 | else { 229 | if (chunk !== '') { 230 | aFn(chunk, { source: this.source, 231 | line: this.line, 232 | column: this.column, 233 | name: this.name }); 234 | } 235 | } 236 | } 237 | }; 238 | 239 | /** 240 | * Like `String.prototype.join` except for SourceNodes. Inserts `aStr` between 241 | * each of `this.children`. 242 | * 243 | * @param aSep The separator. 244 | */ 245 | SourceNode.prototype.join = function SourceNode_join(aSep) { 246 | var newChildren; 247 | var i; 248 | var len = this.children.length; 249 | if (len > 0) { 250 | newChildren = []; 251 | for (i = 0; i < len-1; i++) { 252 | newChildren.push(this.children[i]); 253 | newChildren.push(aSep); 254 | } 255 | newChildren.push(this.children[i]); 256 | this.children = newChildren; 257 | } 258 | return this; 259 | }; 260 | 261 | /** 262 | * Call String.prototype.replace on the very right-most source snippet. Useful 263 | * for trimming whitespace from the end of a source node, etc. 264 | * 265 | * @param aPattern The pattern to replace. 266 | * @param aReplacement The thing to replace the pattern with. 267 | */ 268 | SourceNode.prototype.replaceRight = function SourceNode_replaceRight(aPattern, aReplacement) { 269 | var lastChild = this.children[this.children.length - 1]; 270 | if (lastChild[isSourceNode]) { 271 | lastChild.replaceRight(aPattern, aReplacement); 272 | } 273 | else if (typeof lastChild === 'string') { 274 | this.children[this.children.length - 1] = lastChild.replace(aPattern, aReplacement); 275 | } 276 | else { 277 | this.children.push(''.replace(aPattern, aReplacement)); 278 | } 279 | return this; 280 | }; 281 | 282 | /** 283 | * Set the source content for a source file. This will be added to the SourceMapGenerator 284 | * in the sourcesContent field. 285 | * 286 | * @param aSourceFile The filename of the source file 287 | * @param aSourceContent The content of the source file 288 | */ 289 | SourceNode.prototype.setSourceContent = 290 | function SourceNode_setSourceContent(aSourceFile, aSourceContent) { 291 | this.sourceContents[util.toSetString(aSourceFile)] = aSourceContent; 292 | }; 293 | 294 | /** 295 | * Walk over the tree of SourceNodes. The walking function is called for each 296 | * source file content and is passed the filename and source content. 297 | * 298 | * @param aFn The traversal function. 299 | */ 300 | SourceNode.prototype.walkSourceContents = 301 | function SourceNode_walkSourceContents(aFn) { 302 | for (var i = 0, len = this.children.length; i < len; i++) { 303 | if (this.children[i][isSourceNode]) { 304 | this.children[i].walkSourceContents(aFn); 305 | } 306 | } 307 | 308 | var sources = Object.keys(this.sourceContents); 309 | for (var i = 0, len = sources.length; i < len; i++) { 310 | aFn(util.fromSetString(sources[i]), this.sourceContents[sources[i]]); 311 | } 312 | }; 313 | 314 | /** 315 | * Return the string representation of this source node. Walks over the tree 316 | * and concatenates all the various snippets together to one string. 317 | */ 318 | SourceNode.prototype.toString = function SourceNode_toString() { 319 | var str = ""; 320 | this.walk(function (chunk) { 321 | str += chunk; 322 | }); 323 | return str; 324 | }; 325 | 326 | /** 327 | * Returns the string representation of this source node along with a source 328 | * map. 329 | */ 330 | SourceNode.prototype.toStringWithSourceMap = function SourceNode_toStringWithSourceMap(aArgs) { 331 | var generated = { 332 | code: "", 333 | line: 1, 334 | column: 0 335 | }; 336 | var map = new SourceMapGenerator(aArgs); 337 | var sourceMappingActive = false; 338 | var lastOriginalSource = null; 339 | var lastOriginalLine = null; 340 | var lastOriginalColumn = null; 341 | var lastOriginalName = null; 342 | this.walk(function (chunk, original) { 343 | generated.code += chunk; 344 | if (original.source !== null 345 | && original.line !== null 346 | && original.column !== null) { 347 | if(lastOriginalSource !== original.source 348 | || lastOriginalLine !== original.line 349 | || lastOriginalColumn !== original.column 350 | || lastOriginalName !== original.name) { 351 | map.addMapping({ 352 | source: original.source, 353 | original: { 354 | line: original.line, 355 | column: original.column 356 | }, 357 | generated: { 358 | line: generated.line, 359 | column: generated.column 360 | }, 361 | name: original.name 362 | }); 363 | } 364 | lastOriginalSource = original.source; 365 | lastOriginalLine = original.line; 366 | lastOriginalColumn = original.column; 367 | lastOriginalName = original.name; 368 | sourceMappingActive = true; 369 | } else if (sourceMappingActive) { 370 | map.addMapping({ 371 | generated: { 372 | line: generated.line, 373 | column: generated.column 374 | } 375 | }); 376 | lastOriginalSource = null; 377 | sourceMappingActive = false; 378 | } 379 | for (var idx = 0, length = chunk.length; idx < length; idx++) { 380 | if (chunk.charCodeAt(idx) === NEWLINE_CODE) { 381 | generated.line++; 382 | generated.column = 0; 383 | // Mappings end at eol 384 | if (idx + 1 === length) { 385 | lastOriginalSource = null; 386 | sourceMappingActive = false; 387 | } else if (sourceMappingActive) { 388 | map.addMapping({ 389 | source: original.source, 390 | original: { 391 | line: original.line, 392 | column: original.column 393 | }, 394 | generated: { 395 | line: generated.line, 396 | column: generated.column 397 | }, 398 | name: original.name 399 | }); 400 | } 401 | } else { 402 | generated.column++; 403 | } 404 | } 405 | }); 406 | this.walkSourceContents(function (sourceFile, sourceContent) { 407 | map.setSourceContent(sourceFile, sourceContent); 408 | }); 409 | 410 | return { code: generated.code, map: map }; 411 | }; 412 | 413 | exports.SourceNode = SourceNode; 414 | -------------------------------------------------------------------------------- /node_modules/source-map/lib/util.js: -------------------------------------------------------------------------------- 1 | /* -*- Mode: js; js-indent-level: 2; -*- */ 2 | /* 3 | * Copyright 2011 Mozilla Foundation and contributors 4 | * Licensed under the New BSD license. See LICENSE or: 5 | * http://opensource.org/licenses/BSD-3-Clause 6 | */ 7 | 8 | /** 9 | * This is a helper function for getting values from parameter/options 10 | * objects. 11 | * 12 | * @param args The object we are extracting values from 13 | * @param name The name of the property we are getting. 14 | * @param defaultValue An optional value to return if the property is missing 15 | * from the object. If this is not specified and the property is missing, an 16 | * error will be thrown. 17 | */ 18 | function getArg(aArgs, aName, aDefaultValue) { 19 | if (aName in aArgs) { 20 | return aArgs[aName]; 21 | } else if (arguments.length === 3) { 22 | return aDefaultValue; 23 | } else { 24 | throw new Error('"' + aName + '" is a required argument.'); 25 | } 26 | } 27 | exports.getArg = getArg; 28 | 29 | var urlRegexp = /^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/; 30 | var dataUrlRegexp = /^data:.+\,.+$/; 31 | 32 | function urlParse(aUrl) { 33 | var match = aUrl.match(urlRegexp); 34 | if (!match) { 35 | return null; 36 | } 37 | return { 38 | scheme: match[1], 39 | auth: match[2], 40 | host: match[3], 41 | port: match[4], 42 | path: match[5] 43 | }; 44 | } 45 | exports.urlParse = urlParse; 46 | 47 | function urlGenerate(aParsedUrl) { 48 | var url = ''; 49 | if (aParsedUrl.scheme) { 50 | url += aParsedUrl.scheme + ':'; 51 | } 52 | url += '//'; 53 | if (aParsedUrl.auth) { 54 | url += aParsedUrl.auth + '@'; 55 | } 56 | if (aParsedUrl.host) { 57 | url += aParsedUrl.host; 58 | } 59 | if (aParsedUrl.port) { 60 | url += ":" + aParsedUrl.port 61 | } 62 | if (aParsedUrl.path) { 63 | url += aParsedUrl.path; 64 | } 65 | return url; 66 | } 67 | exports.urlGenerate = urlGenerate; 68 | 69 | /** 70 | * Normalizes a path, or the path portion of a URL: 71 | * 72 | * - Replaces consecutive slashes with one slash. 73 | * - Removes unnecessary '.' parts. 74 | * - Removes unnecessary '