fsevents 1.1.3 → 1.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of fsevents might be problematic. Click here for more details.

Files changed (979) hide show
  1. package/.travis.yml +1 -1
  2. package/build/.target.mk +4 -2
  3. package/build/Makefile +2 -2
  4. package/build/Release/.deps/Release/.node.d +1 -1
  5. package/build/Release/.deps/Release/fse.node.d +1 -1
  6. package/build/Release/.deps/Release/obj.target/fse/fsevents.o.d +31 -29
  7. package/build/Release/.deps/Users/eshanker/Code/fsevents/lib/binding/Release/node-v64-darwin-x64/fse.node.d +1 -0
  8. package/build/Release/.node +0 -0
  9. package/build/Release/fse.node +0 -0
  10. package/build/Release/obj.target/fse/fsevents.o +0 -0
  11. package/build/action_after_build.target.mk +4 -4
  12. package/build/binding.Makefile +1 -1
  13. package/build/fse.target.mk +18 -13
  14. package/fsevents.cc +5 -7
  15. package/lib/binding/Release/node-v64-darwin-x64/fse.node +0 -0
  16. package/node_modules/abbrev/LICENSE +31 -0
  17. package/node_modules/abbrev/package.json +14 -11
  18. package/node_modules/ansi-regex/package.json +3 -1
  19. package/node_modules/aproba/README.md +16 -11
  20. package/node_modules/aproba/index.js +11 -9
  21. package/node_modules/aproba/package.json +15 -13
  22. package/node_modules/are-we-there-yet/package.json +3 -1
  23. package/node_modules/balanced-match/index.js +1 -0
  24. package/node_modules/balanced-match/package.json +15 -11
  25. package/node_modules/{asynckit → brace-expansion}/LICENSE +2 -2
  26. package/node_modules/brace-expansion/README.md +7 -1
  27. package/node_modules/brace-expansion/package.json +14 -12
  28. package/node_modules/{block-stream → chownr}/LICENSE +0 -0
  29. package/node_modules/chownr/README.md +3 -0
  30. package/node_modules/chownr/chownr.js +52 -0
  31. package/node_modules/chownr/package.json +59 -0
  32. package/node_modules/code-point-at/package.json +3 -1
  33. package/node_modules/concat-map/package.json +3 -1
  34. package/node_modules/console-control-strings/package.json +4 -1
  35. package/node_modules/core-util-is/package.json +3 -1
  36. package/node_modules/debug/CHANGELOG.md +5 -0
  37. package/node_modules/debug/component.json +1 -1
  38. package/node_modules/debug/package.json +13 -11
  39. package/node_modules/debug/src/inspector-log.js +15 -0
  40. package/node_modules/debug/src/node.js +3 -1
  41. package/node_modules/deep-extend/CHANGELOG.md +20 -3
  42. package/node_modules/deep-extend/LICENSE +1 -1
  43. package/node_modules/deep-extend/README.md +3 -0
  44. package/node_modules/deep-extend/lib/deep-extend.js +11 -5
  45. package/node_modules/deep-extend/package.json +26 -27
  46. package/node_modules/delegates/package.json +3 -1
  47. package/node_modules/detect-libc/lib/detect-libc.js +21 -14
  48. package/node_modules/detect-libc/package.json +17 -14
  49. package/node_modules/{fstream-ignore → fs-minipass}/LICENSE +0 -0
  50. package/node_modules/fs-minipass/README.md +70 -0
  51. package/node_modules/fs-minipass/index.js +386 -0
  52. package/node_modules/fs-minipass/package.json +65 -0
  53. package/node_modules/fs.realpath/package.json +3 -1
  54. package/node_modules/gauge/package.json +3 -1
  55. package/node_modules/glob/package.json +3 -1
  56. package/node_modules/has-unicode/package.json +3 -1
  57. package/node_modules/iconv-lite/.travis.yml +23 -0
  58. package/node_modules/iconv-lite/Changelog.md +146 -0
  59. package/node_modules/{punycode/LICENSE-MIT.txt → iconv-lite/LICENSE} +2 -1
  60. package/node_modules/iconv-lite/README.md +156 -0
  61. package/node_modules/iconv-lite/encodings/dbcs-codec.js +555 -0
  62. package/node_modules/iconv-lite/encodings/dbcs-data.js +176 -0
  63. package/node_modules/iconv-lite/encodings/index.js +22 -0
  64. package/node_modules/iconv-lite/encodings/internal.js +188 -0
  65. package/node_modules/iconv-lite/encodings/sbcs-codec.js +72 -0
  66. package/node_modules/iconv-lite/encodings/sbcs-data-generated.js +451 -0
  67. package/node_modules/iconv-lite/encodings/sbcs-data.js +169 -0
  68. package/node_modules/iconv-lite/encodings/tables/big5-added.json +122 -0
  69. package/node_modules/iconv-lite/encodings/tables/cp936.json +264 -0
  70. package/node_modules/iconv-lite/encodings/tables/cp949.json +273 -0
  71. package/node_modules/iconv-lite/encodings/tables/cp950.json +177 -0
  72. package/node_modules/iconv-lite/encodings/tables/eucjp.json +182 -0
  73. package/node_modules/iconv-lite/encodings/tables/gb18030-ranges.json +1 -0
  74. package/node_modules/iconv-lite/encodings/tables/gbk-added.json +55 -0
  75. package/node_modules/iconv-lite/encodings/tables/shiftjis.json +125 -0
  76. package/node_modules/iconv-lite/encodings/utf16.js +177 -0
  77. package/node_modules/iconv-lite/encodings/utf7.js +290 -0
  78. package/node_modules/iconv-lite/lib/bom-handling.js +52 -0
  79. package/node_modules/iconv-lite/lib/extend-node.js +217 -0
  80. package/node_modules/iconv-lite/lib/index.d.ts +24 -0
  81. package/node_modules/iconv-lite/lib/index.js +153 -0
  82. package/node_modules/iconv-lite/lib/streams.js +121 -0
  83. package/node_modules/iconv-lite/package.json +79 -0
  84. package/node_modules/{fstream → ignore-walk}/LICENSE +0 -0
  85. package/node_modules/ignore-walk/README.md +60 -0
  86. package/node_modules/ignore-walk/index.js +265 -0
  87. package/node_modules/ignore-walk/package.json +74 -0
  88. package/node_modules/inflight/package.json +3 -1
  89. package/node_modules/inherits/package.json +6 -1
  90. package/node_modules/ini/ini.js +66 -62
  91. package/node_modules/ini/package.json +20 -13
  92. package/node_modules/is-fullwidth-code-point/package.json +3 -1
  93. package/node_modules/isarray/package.json +3 -1
  94. package/node_modules/minimatch/package.json +4 -1
  95. package/node_modules/minimist/package.json +3 -1
  96. package/node_modules/minipass/README.md +46 -0
  97. package/node_modules/minipass/index.js +304 -0
  98. package/node_modules/minipass/package.json +72 -0
  99. package/node_modules/minizlib/LICENSE +26 -0
  100. package/node_modules/minizlib/README.md +44 -0
  101. package/node_modules/minizlib/constants.js +46 -0
  102. package/node_modules/minizlib/index.js +364 -0
  103. package/node_modules/minizlib/package.json +74 -0
  104. package/node_modules/mkdirp/package.json +5 -1
  105. package/node_modules/ms/package.json +3 -1
  106. package/node_modules/needle/README.md +593 -0
  107. package/node_modules/needle/bin/needle +40 -0
  108. package/node_modules/needle/examples/deflated-stream.js +22 -0
  109. package/node_modules/needle/examples/digest-auth.js +16 -0
  110. package/node_modules/needle/examples/download-to-file.js +18 -0
  111. package/node_modules/needle/examples/multipart-stream.js +25 -0
  112. package/node_modules/needle/examples/parsed-stream.js +23 -0
  113. package/node_modules/needle/examples/parsed-stream2.js +21 -0
  114. package/node_modules/needle/examples/stream-events.js +23 -0
  115. package/node_modules/needle/examples/stream-to-file.js +14 -0
  116. package/node_modules/needle/examples/upload-image.js +51 -0
  117. package/node_modules/needle/lib/auth.js +110 -0
  118. package/node_modules/needle/lib/cookies.js +77 -0
  119. package/node_modules/needle/lib/decoder.js +53 -0
  120. package/node_modules/needle/lib/multipart.js +98 -0
  121. package/node_modules/needle/lib/needle.js +783 -0
  122. package/node_modules/needle/lib/parsers.js +120 -0
  123. package/node_modules/needle/lib/querystring.js +49 -0
  124. package/node_modules/{delayed-stream/License → needle/license.txt} +2 -2
  125. package/node_modules/needle/package.json +105 -0
  126. package/node_modules/needle/test/basic_auth_spec.js +196 -0
  127. package/node_modules/needle/test/compression_spec.js +94 -0
  128. package/node_modules/needle/test/cookies_spec.js +305 -0
  129. package/node_modules/needle/test/decoder_spec.js +86 -0
  130. package/node_modules/needle/test/errors_spec.js +286 -0
  131. package/node_modules/needle/test/headers_spec.js +198 -0
  132. package/node_modules/needle/test/helpers.js +72 -0
  133. package/node_modules/needle/test/long_string_spec.js +34 -0
  134. package/node_modules/needle/test/output_spec.js +254 -0
  135. package/node_modules/needle/test/parsing_spec.js +494 -0
  136. package/node_modules/needle/test/post_data_spec.js +1021 -0
  137. package/node_modules/needle/test/proxy_spec.js +202 -0
  138. package/node_modules/needle/test/querystring_spec.js +128 -0
  139. package/node_modules/needle/test/redirect_spec.js +392 -0
  140. package/node_modules/needle/test/redirect_with_timeout.js +45 -0
  141. package/node_modules/needle/test/request_stream_spec.js +202 -0
  142. package/node_modules/needle/test/response_stream_spec.js +139 -0
  143. package/node_modules/needle/test/socket_pool_spec.js +66 -0
  144. package/node_modules/needle/test/url_spec.js +147 -0
  145. package/node_modules/needle/test/utils/formidable.js +17 -0
  146. package/node_modules/needle/test/utils/proxy.js +62 -0
  147. package/node_modules/needle/test/utils/test.js +104 -0
  148. package/node_modules/node-pre-gyp/CHANGELOG.md +36 -3
  149. package/node_modules/node-pre-gyp/README.md +83 -8
  150. package/node_modules/node-pre-gyp/appveyor.yml +1 -15
  151. package/node_modules/node-pre-gyp/contributing.md +2 -2
  152. package/node_modules/node-pre-gyp/lib/build.js +8 -0
  153. package/node_modules/node-pre-gyp/lib/clean.js +17 -8
  154. package/node_modules/node-pre-gyp/lib/configure.js +4 -0
  155. package/node_modules/node-pre-gyp/lib/install.js +58 -34
  156. package/node_modules/node-pre-gyp/lib/node-pre-gyp.js +9 -0
  157. package/node_modules/node-pre-gyp/lib/package.js +23 -13
  158. package/node_modules/node-pre-gyp/lib/pre-binding.js +6 -1
  159. package/node_modules/node-pre-gyp/lib/publish.js +3 -1
  160. package/node_modules/node-pre-gyp/lib/rebuild.js +12 -4
  161. package/node_modules/node-pre-gyp/lib/reinstall.js +8 -1
  162. package/node_modules/node-pre-gyp/lib/reveal.js +4 -2
  163. package/node_modules/node-pre-gyp/lib/testbinary.js +3 -1
  164. package/node_modules/node-pre-gyp/lib/testpackage.js +22 -16
  165. package/node_modules/node-pre-gyp/lib/unpublish.js +3 -1
  166. package/node_modules/node-pre-gyp/lib/util/abi_crosswalk.json +156 -0
  167. package/node_modules/node-pre-gyp/lib/util/handle_gyp_opts.js +8 -2
  168. package/node_modules/node-pre-gyp/lib/util/napi.js +156 -0
  169. package/node_modules/node-pre-gyp/lib/util/versioning.js +7 -2
  170. package/node_modules/node-pre-gyp/package.json +16 -16
  171. package/node_modules/nopt/package.json +3 -1
  172. package/node_modules/npm-bundled/README.md +46 -0
  173. package/node_modules/npm-bundled/index.js +227 -0
  174. package/node_modules/npm-bundled/package.json +63 -0
  175. package/node_modules/{json-stringify-safe → npm-packlist}/LICENSE +0 -0
  176. package/node_modules/npm-packlist/README.md +68 -0
  177. package/node_modules/npm-packlist/index.js +220 -0
  178. package/node_modules/npm-packlist/package.json +69 -0
  179. package/node_modules/npmlog/log.js +6 -1
  180. package/node_modules/npmlog/package.json +13 -11
  181. package/node_modules/number-is-nan/package.json +3 -1
  182. package/node_modules/object-assign/package.json +3 -1
  183. package/node_modules/once/package.json +4 -1
  184. package/node_modules/os-homedir/package.json +3 -1
  185. package/node_modules/os-tmpdir/package.json +3 -1
  186. package/node_modules/osenv/package.json +20 -12
  187. package/node_modules/path-is-absolute/package.json +3 -1
  188. package/node_modules/process-nextick-args/index.js +3 -2
  189. package/node_modules/process-nextick-args/package.json +16 -11
  190. package/node_modules/process-nextick-args/readme.md +2 -2
  191. package/node_modules/rc/README.md +80 -2
  192. package/node_modules/rc/cli.js +4 -0
  193. package/node_modules/rc/index.js +0 -7
  194. package/node_modules/rc/node_modules/minimist/package.json +3 -1
  195. package/node_modules/rc/package.json +20 -19
  196. package/node_modules/readable-stream/.travis.yml +26 -20
  197. package/node_modules/readable-stream/README.md +3 -2
  198. package/node_modules/readable-stream/lib/_stream_duplex.js +69 -13
  199. package/node_modules/readable-stream/lib/_stream_passthrough.js +21 -0
  200. package/node_modules/readable-stream/lib/_stream_readable.js +194 -110
  201. package/node_modules/readable-stream/lib/_stream_transform.js +64 -32
  202. package/node_modules/readable-stream/lib/_stream_writable.js +198 -55
  203. package/node_modules/readable-stream/lib/internal/streams/BufferList.js +68 -53
  204. package/node_modules/readable-stream/lib/internal/streams/destroy.js +74 -0
  205. package/node_modules/readable-stream/package.json +23 -23
  206. package/node_modules/readable-stream/writable.js +2 -2
  207. package/node_modules/rimraf/package.json +13 -11
  208. package/node_modules/rimraf/rimraf.js +3 -2
  209. package/node_modules/safe-buffer/README.md +12 -9
  210. package/node_modules/safe-buffer/index.js +10 -6
  211. package/node_modules/safe-buffer/package.json +17 -13
  212. package/node_modules/safe-buffer/test.js +2 -0
  213. package/node_modules/{ajv → safer-buffer}/LICENSE +2 -3
  214. package/node_modules/safer-buffer/Porting-Buffer.md +268 -0
  215. package/node_modules/safer-buffer/Readme.md +156 -0
  216. package/node_modules/safer-buffer/dangerous.js +58 -0
  217. package/node_modules/safer-buffer/package.json +63 -0
  218. package/node_modules/safer-buffer/safer.js +77 -0
  219. package/node_modules/safer-buffer/tests.js +406 -0
  220. package/node_modules/sax/LICENSE +41 -0
  221. package/node_modules/sax/README.md +225 -0
  222. package/node_modules/sax/lib/sax.js +1565 -0
  223. package/node_modules/sax/package.json +64 -0
  224. package/node_modules/semver/README.md +75 -37
  225. package/node_modules/semver/bin/semver +12 -2
  226. package/node_modules/semver/package.json +15 -13
  227. package/node_modules/semver/range.bnf +2 -2
  228. package/node_modules/semver/semver.js +134 -13
  229. package/node_modules/set-blocking/package.json +3 -1
  230. package/node_modules/signal-exit/package.json +3 -1
  231. package/node_modules/string-width/package.json +4 -1
  232. package/node_modules/string_decoder/.travis.yml +50 -0
  233. package/node_modules/string_decoder/README.md +22 -3
  234. package/node_modules/string_decoder/lib/string_decoder.js +35 -11
  235. package/node_modules/string_decoder/package.json +21 -16
  236. package/node_modules/strip-ansi/package.json +4 -1
  237. package/node_modules/strip-json-comments/package.json +3 -1
  238. package/node_modules/tar/LICENSE +3 -0
  239. package/node_modules/tar/README.md +929 -30
  240. package/node_modules/tar/index.js +18 -0
  241. package/node_modules/tar/lib/buffer.js +11 -0
  242. package/node_modules/tar/lib/create.js +105 -0
  243. package/node_modules/tar/lib/extract.js +97 -79
  244. package/node_modules/tar/lib/header.js +236 -348
  245. package/node_modules/tar/lib/high-level-opt.js +29 -0
  246. package/node_modules/tar/lib/large-numbers.js +92 -0
  247. package/node_modules/tar/lib/list.js +130 -0
  248. package/node_modules/tar/lib/mkdir.js +206 -0
  249. package/node_modules/tar/lib/pack.js +354 -187
  250. package/node_modules/tar/lib/parse.js +393 -246
  251. package/node_modules/tar/lib/pax.js +146 -0
  252. package/node_modules/tar/lib/read-entry.js +94 -0
  253. package/node_modules/tar/lib/replace.js +220 -0
  254. package/node_modules/tar/lib/types.js +44 -0
  255. package/node_modules/tar/lib/unpack.js +560 -0
  256. package/node_modules/tar/lib/update.js +36 -0
  257. package/node_modules/tar/lib/warn-mixin.js +14 -0
  258. package/node_modules/tar/lib/winchars.js +23 -0
  259. package/node_modules/tar/lib/write-entry.js +403 -0
  260. package/node_modules/tar/package.json +44 -23
  261. package/node_modules/util-deprecate/package.json +3 -1
  262. package/node_modules/wide-align/package.json +3 -1
  263. package/node_modules/wrappy/package.json +4 -1
  264. package/node_modules/yallist/LICENSE +15 -0
  265. package/node_modules/yallist/README.md +204 -0
  266. package/node_modules/yallist/iterator.js +8 -0
  267. package/node_modules/yallist/package.json +66 -0
  268. package/node_modules/yallist/yallist.js +376 -0
  269. package/package.json +3 -3
  270. package/src/methods.cc +9 -7
  271. package/.npmignore +0 -1
  272. package/build/Release/.deps/Users/eshanker/Code/fsevents/lib/binding/Release/node-v48-darwin-x64/fse.node.d +0 -1
  273. package/build/stage/v1.1.2/fse-v1.1.2-node-v48-darwin-x64.tar.gz +0 -0
  274. package/node_modules/ajv/.tonic_example.js +0 -20
  275. package/node_modules/ajv/README.md +0 -1213
  276. package/node_modules/ajv/dist/ajv.bundle.js +0 -8023
  277. package/node_modules/ajv/dist/ajv.min.js +0 -6
  278. package/node_modules/ajv/dist/ajv.min.js.map +0 -1
  279. package/node_modules/ajv/dist/nodent.min.js +0 -8
  280. package/node_modules/ajv/dist/regenerator.min.js +0 -32
  281. package/node_modules/ajv/lib/ajv.d.ts +0 -284
  282. package/node_modules/ajv/lib/ajv.js +0 -420
  283. package/node_modules/ajv/lib/async.js +0 -218
  284. package/node_modules/ajv/lib/cache.js +0 -26
  285. package/node_modules/ajv/lib/compile/_rules.js +0 -28
  286. package/node_modules/ajv/lib/compile/equal.js +0 -45
  287. package/node_modules/ajv/lib/compile/formats.js +0 -164
  288. package/node_modules/ajv/lib/compile/index.js +0 -390
  289. package/node_modules/ajv/lib/compile/resolve.js +0 -267
  290. package/node_modules/ajv/lib/compile/rules.js +0 -40
  291. package/node_modules/ajv/lib/compile/schema_obj.js +0 -9
  292. package/node_modules/ajv/lib/compile/ucs2length.js +0 -20
  293. package/node_modules/ajv/lib/compile/util.js +0 -257
  294. package/node_modules/ajv/lib/compile/validation_error.js +0 -14
  295. package/node_modules/ajv/lib/dot/_limit.jst +0 -49
  296. package/node_modules/ajv/lib/dot/_limitItems.jst +0 -10
  297. package/node_modules/ajv/lib/dot/_limitLength.jst +0 -10
  298. package/node_modules/ajv/lib/dot/_limitProperties.jst +0 -10
  299. package/node_modules/ajv/lib/dot/allOf.jst +0 -34
  300. package/node_modules/ajv/lib/dot/anyOf.jst +0 -48
  301. package/node_modules/ajv/lib/dot/coerce.def +0 -61
  302. package/node_modules/ajv/lib/dot/custom.jst +0 -184
  303. package/node_modules/ajv/lib/dot/defaults.def +0 -32
  304. package/node_modules/ajv/lib/dot/definitions.def +0 -182
  305. package/node_modules/ajv/lib/dot/dependencies.jst +0 -69
  306. package/node_modules/ajv/lib/dot/enum.jst +0 -30
  307. package/node_modules/ajv/lib/dot/errors.def +0 -185
  308. package/node_modules/ajv/lib/dot/format.jst +0 -100
  309. package/node_modules/ajv/lib/dot/items.jst +0 -101
  310. package/node_modules/ajv/lib/dot/missing.def +0 -34
  311. package/node_modules/ajv/lib/dot/multipleOf.jst +0 -20
  312. package/node_modules/ajv/lib/dot/not.jst +0 -43
  313. package/node_modules/ajv/lib/dot/oneOf.jst +0 -44
  314. package/node_modules/ajv/lib/dot/pattern.jst +0 -14
  315. package/node_modules/ajv/lib/dot/properties.jst +0 -319
  316. package/node_modules/ajv/lib/dot/ref.jst +0 -86
  317. package/node_modules/ajv/lib/dot/required.jst +0 -96
  318. package/node_modules/ajv/lib/dot/uniqueItems.jst +0 -38
  319. package/node_modules/ajv/lib/dot/v5/_formatLimit.jst +0 -116
  320. package/node_modules/ajv/lib/dot/v5/constant.jst +0 -10
  321. package/node_modules/ajv/lib/dot/v5/patternRequired.jst +0 -28
  322. package/node_modules/ajv/lib/dot/v5/switch.jst +0 -73
  323. package/node_modules/ajv/lib/dot/validate.jst +0 -210
  324. package/node_modules/ajv/lib/dotjs/README.md +0 -3
  325. package/node_modules/ajv/lib/dotjs/_formatLimit.js +0 -176
  326. package/node_modules/ajv/lib/dotjs/_limit.js +0 -124
  327. package/node_modules/ajv/lib/dotjs/_limitItems.js +0 -76
  328. package/node_modules/ajv/lib/dotjs/_limitLength.js +0 -81
  329. package/node_modules/ajv/lib/dotjs/_limitProperties.js +0 -76
  330. package/node_modules/ajv/lib/dotjs/allOf.js +0 -43
  331. package/node_modules/ajv/lib/dotjs/anyOf.js +0 -65
  332. package/node_modules/ajv/lib/dotjs/constant.js +0 -52
  333. package/node_modules/ajv/lib/dotjs/custom.js +0 -220
  334. package/node_modules/ajv/lib/dotjs/dependencies.js +0 -147
  335. package/node_modules/ajv/lib/dotjs/enum.js +0 -65
  336. package/node_modules/ajv/lib/dotjs/format.js +0 -138
  337. package/node_modules/ajv/lib/dotjs/items.js +0 -144
  338. package/node_modules/ajv/lib/dotjs/multipleOf.js +0 -76
  339. package/node_modules/ajv/lib/dotjs/not.js +0 -83
  340. package/node_modules/ajv/lib/dotjs/oneOf.js +0 -76
  341. package/node_modules/ajv/lib/dotjs/pattern.js +0 -74
  342. package/node_modules/ajv/lib/dotjs/patternRequired.js +0 -51
  343. package/node_modules/ajv/lib/dotjs/properties.js +0 -445
  344. package/node_modules/ajv/lib/dotjs/ref.js +0 -119
  345. package/node_modules/ajv/lib/dotjs/required.js +0 -249
  346. package/node_modules/ajv/lib/dotjs/switch.js +0 -128
  347. package/node_modules/ajv/lib/dotjs/uniqueItems.js +0 -71
  348. package/node_modules/ajv/lib/dotjs/validate.js +0 -375
  349. package/node_modules/ajv/lib/keyword.js +0 -129
  350. package/node_modules/ajv/lib/refs/json-schema-draft-04.json +0 -150
  351. package/node_modules/ajv/lib/refs/json-schema-v5.json +0 -328
  352. package/node_modules/ajv/lib/v5.js +0 -52
  353. package/node_modules/ajv/package.json +0 -132
  354. package/node_modules/ajv/scripts/.eslintrc.yml +0 -3
  355. package/node_modules/ajv/scripts/bundle.js +0 -54
  356. package/node_modules/ajv/scripts/compile-dots.js +0 -73
  357. package/node_modules/ajv/scripts/info +0 -10
  358. package/node_modules/ajv/scripts/prepare-tests +0 -9
  359. package/node_modules/ajv/scripts/travis-gh-pages +0 -23
  360. package/node_modules/asn1/.npmignore +0 -2
  361. package/node_modules/asn1/.travis.yml +0 -4
  362. package/node_modules/asn1/LICENSE +0 -19
  363. package/node_modules/asn1/README.md +0 -50
  364. package/node_modules/asn1/lib/ber/errors.js +0 -13
  365. package/node_modules/asn1/lib/ber/index.js +0 -27
  366. package/node_modules/asn1/lib/ber/reader.js +0 -261
  367. package/node_modules/asn1/lib/ber/types.js +0 -36
  368. package/node_modules/asn1/lib/ber/writer.js +0 -316
  369. package/node_modules/asn1/lib/index.js +0 -20
  370. package/node_modules/asn1/package.json +0 -66
  371. package/node_modules/asn1/tst/ber/reader.test.js +0 -208
  372. package/node_modules/asn1/tst/ber/writer.test.js +0 -370
  373. package/node_modules/assert-plus/AUTHORS +0 -6
  374. package/node_modules/assert-plus/CHANGES.md +0 -8
  375. package/node_modules/assert-plus/README.md +0 -155
  376. package/node_modules/assert-plus/assert.js +0 -206
  377. package/node_modules/assert-plus/package.json +0 -83
  378. package/node_modules/asynckit/README.md +0 -233
  379. package/node_modules/asynckit/bench.js +0 -76
  380. package/node_modules/asynckit/index.js +0 -6
  381. package/node_modules/asynckit/lib/abort.js +0 -29
  382. package/node_modules/asynckit/lib/async.js +0 -34
  383. package/node_modules/asynckit/lib/defer.js +0 -26
  384. package/node_modules/asynckit/lib/iterate.js +0 -75
  385. package/node_modules/asynckit/lib/readable_asynckit.js +0 -91
  386. package/node_modules/asynckit/lib/readable_parallel.js +0 -25
  387. package/node_modules/asynckit/lib/readable_serial.js +0 -25
  388. package/node_modules/asynckit/lib/readable_serial_ordered.js +0 -29
  389. package/node_modules/asynckit/lib/state.js +0 -37
  390. package/node_modules/asynckit/lib/streamify.js +0 -141
  391. package/node_modules/asynckit/lib/terminator.js +0 -29
  392. package/node_modules/asynckit/package.json +0 -92
  393. package/node_modules/asynckit/parallel.js +0 -43
  394. package/node_modules/asynckit/serial.js +0 -17
  395. package/node_modules/asynckit/serialOrdered.js +0 -75
  396. package/node_modules/asynckit/stream.js +0 -21
  397. package/node_modules/aws-sign2/LICENSE +0 -55
  398. package/node_modules/aws-sign2/README.md +0 -4
  399. package/node_modules/aws-sign2/index.js +0 -212
  400. package/node_modules/aws-sign2/package.json +0 -51
  401. package/node_modules/aws4/.npmignore +0 -4
  402. package/node_modules/aws4/.tern-port +0 -1
  403. package/node_modules/aws4/.travis.yml +0 -5
  404. package/node_modules/aws4/LICENSE +0 -19
  405. package/node_modules/aws4/README.md +0 -523
  406. package/node_modules/aws4/aws4.js +0 -332
  407. package/node_modules/aws4/lru.js +0 -96
  408. package/node_modules/aws4/package.json +0 -105
  409. package/node_modules/bcrypt-pbkdf/README.md +0 -39
  410. package/node_modules/bcrypt-pbkdf/index.js +0 -556
  411. package/node_modules/bcrypt-pbkdf/package.json +0 -38
  412. package/node_modules/block-stream/LICENCE +0 -25
  413. package/node_modules/block-stream/README.md +0 -14
  414. package/node_modules/block-stream/block-stream.js +0 -209
  415. package/node_modules/block-stream/package.json +0 -61
  416. package/node_modules/boom/.npmignore +0 -18
  417. package/node_modules/boom/.travis.yml +0 -8
  418. package/node_modules/boom/CONTRIBUTING.md +0 -1
  419. package/node_modules/boom/LICENSE +0 -28
  420. package/node_modules/boom/README.md +0 -652
  421. package/node_modules/boom/images/boom.png +0 -0
  422. package/node_modules/boom/lib/index.js +0 -318
  423. package/node_modules/boom/package.json +0 -59
  424. package/node_modules/boom/test/index.js +0 -654
  425. package/node_modules/buffer-shims/index.js +0 -108
  426. package/node_modules/buffer-shims/license.md +0 -19
  427. package/node_modules/buffer-shims/package.json +0 -50
  428. package/node_modules/buffer-shims/readme.md +0 -21
  429. package/node_modules/caseless/LICENSE +0 -28
  430. package/node_modules/caseless/README.md +0 -45
  431. package/node_modules/caseless/index.js +0 -67
  432. package/node_modules/caseless/package.json +0 -57
  433. package/node_modules/caseless/test.js +0 -67
  434. package/node_modules/co/History.md +0 -172
  435. package/node_modules/co/LICENSE +0 -22
  436. package/node_modules/co/Readme.md +0 -212
  437. package/node_modules/co/index.js +0 -237
  438. package/node_modules/co/package.json +0 -67
  439. package/node_modules/combined-stream/License +0 -19
  440. package/node_modules/combined-stream/Readme.md +0 -138
  441. package/node_modules/combined-stream/lib/combined_stream.js +0 -188
  442. package/node_modules/combined-stream/package.json +0 -58
  443. package/node_modules/cryptiles/.npmignore +0 -18
  444. package/node_modules/cryptiles/.travis.yml +0 -8
  445. package/node_modules/cryptiles/LICENSE +0 -28
  446. package/node_modules/cryptiles/README.md +0 -16
  447. package/node_modules/cryptiles/lib/index.js +0 -68
  448. package/node_modules/cryptiles/package.json +0 -60
  449. package/node_modules/cryptiles/test/index.js +0 -102
  450. package/node_modules/dashdash/CHANGES.md +0 -364
  451. package/node_modules/dashdash/LICENSE.txt +0 -24
  452. package/node_modules/dashdash/README.md +0 -574
  453. package/node_modules/dashdash/etc/dashdash.bash_completion.in +0 -389
  454. package/node_modules/dashdash/lib/dashdash.js +0 -1055
  455. package/node_modules/dashdash/node_modules/assert-plus/AUTHORS +0 -6
  456. package/node_modules/dashdash/node_modules/assert-plus/CHANGES.md +0 -14
  457. package/node_modules/dashdash/node_modules/assert-plus/README.md +0 -162
  458. package/node_modules/dashdash/node_modules/assert-plus/assert.js +0 -211
  459. package/node_modules/dashdash/node_modules/assert-plus/package.json +0 -83
  460. package/node_modules/dashdash/package.json +0 -68
  461. package/node_modules/delayed-stream/.npmignore +0 -1
  462. package/node_modules/delayed-stream/Makefile +0 -7
  463. package/node_modules/delayed-stream/Readme.md +0 -141
  464. package/node_modules/delayed-stream/lib/delayed_stream.js +0 -107
  465. package/node_modules/delayed-stream/package.json +0 -63
  466. package/node_modules/ecc-jsbn/.npmignore +0 -15
  467. package/node_modules/ecc-jsbn/LICENSE +0 -21
  468. package/node_modules/ecc-jsbn/README.md +0 -8
  469. package/node_modules/ecc-jsbn/index.js +0 -57
  470. package/node_modules/ecc-jsbn/lib/LICENSE-jsbn +0 -40
  471. package/node_modules/ecc-jsbn/lib/ec.js +0 -561
  472. package/node_modules/ecc-jsbn/lib/sec.js +0 -170
  473. package/node_modules/ecc-jsbn/package.json +0 -66
  474. package/node_modules/ecc-jsbn/test.js +0 -14
  475. package/node_modules/extend/.eslintrc +0 -17
  476. package/node_modules/extend/.jscs.json +0 -175
  477. package/node_modules/extend/.npmignore +0 -1
  478. package/node_modules/extend/.travis.yml +0 -179
  479. package/node_modules/extend/CHANGELOG.md +0 -77
  480. package/node_modules/extend/LICENSE +0 -23
  481. package/node_modules/extend/README.md +0 -81
  482. package/node_modules/extend/component.json +0 -32
  483. package/node_modules/extend/index.js +0 -86
  484. package/node_modules/extend/package.json +0 -76
  485. package/node_modules/extsprintf/.gitmodules +0 -6
  486. package/node_modules/extsprintf/LICENSE +0 -19
  487. package/node_modules/extsprintf/Makefile +0 -23
  488. package/node_modules/extsprintf/Makefile.deps +0 -39
  489. package/node_modules/extsprintf/Makefile.targ +0 -285
  490. package/node_modules/extsprintf/README.md +0 -39
  491. package/node_modules/extsprintf/examples/simple.js +0 -2
  492. package/node_modules/extsprintf/jsl.node.conf +0 -137
  493. package/node_modules/extsprintf/lib/extsprintf.js +0 -166
  494. package/node_modules/extsprintf/package.json +0 -43
  495. package/node_modules/forever-agent/LICENSE +0 -55
  496. package/node_modules/forever-agent/README.md +0 -4
  497. package/node_modules/forever-agent/index.js +0 -138
  498. package/node_modules/forever-agent/package.json +0 -51
  499. package/node_modules/form-data/License +0 -19
  500. package/node_modules/form-data/README.md +0 -217
  501. package/node_modules/form-data/lib/browser.js +0 -2
  502. package/node_modules/form-data/lib/form_data.js +0 -444
  503. package/node_modules/form-data/lib/populate.js +0 -10
  504. package/node_modules/form-data/package.json +0 -99
  505. package/node_modules/fstream/.npmignore +0 -5
  506. package/node_modules/fstream/.travis.yml +0 -9
  507. package/node_modules/fstream/README.md +0 -76
  508. package/node_modules/fstream/examples/filter-pipe.js +0 -134
  509. package/node_modules/fstream/examples/pipe.js +0 -118
  510. package/node_modules/fstream/examples/reader.js +0 -68
  511. package/node_modules/fstream/examples/symlink-write.js +0 -27
  512. package/node_modules/fstream/fstream.js +0 -35
  513. package/node_modules/fstream/lib/abstract.js +0 -85
  514. package/node_modules/fstream/lib/collect.js +0 -70
  515. package/node_modules/fstream/lib/dir-reader.js +0 -252
  516. package/node_modules/fstream/lib/dir-writer.js +0 -174
  517. package/node_modules/fstream/lib/file-reader.js +0 -150
  518. package/node_modules/fstream/lib/file-writer.js +0 -107
  519. package/node_modules/fstream/lib/get-type.js +0 -33
  520. package/node_modules/fstream/lib/link-reader.js +0 -53
  521. package/node_modules/fstream/lib/link-writer.js +0 -95
  522. package/node_modules/fstream/lib/proxy-reader.js +0 -95
  523. package/node_modules/fstream/lib/proxy-writer.js +0 -111
  524. package/node_modules/fstream/lib/reader.js +0 -255
  525. package/node_modules/fstream/lib/socket-reader.js +0 -36
  526. package/node_modules/fstream/lib/writer.js +0 -390
  527. package/node_modules/fstream/package.json +0 -62
  528. package/node_modules/fstream-ignore/README.md +0 -22
  529. package/node_modules/fstream-ignore/ignore.js +0 -275
  530. package/node_modules/fstream-ignore/package.json +0 -62
  531. package/node_modules/getpass/.npmignore +0 -8
  532. package/node_modules/getpass/.travis.yml +0 -9
  533. package/node_modules/getpass/LICENSE +0 -18
  534. package/node_modules/getpass/README.md +0 -32
  535. package/node_modules/getpass/lib/index.js +0 -123
  536. package/node_modules/getpass/node_modules/assert-plus/AUTHORS +0 -6
  537. package/node_modules/getpass/node_modules/assert-plus/CHANGES.md +0 -14
  538. package/node_modules/getpass/node_modules/assert-plus/README.md +0 -162
  539. package/node_modules/getpass/node_modules/assert-plus/assert.js +0 -211
  540. package/node_modules/getpass/node_modules/assert-plus/package.json +0 -83
  541. package/node_modules/getpass/package.json +0 -51
  542. package/node_modules/graceful-fs/LICENSE +0 -15
  543. package/node_modules/graceful-fs/README.md +0 -133
  544. package/node_modules/graceful-fs/fs.js +0 -21
  545. package/node_modules/graceful-fs/graceful-fs.js +0 -262
  546. package/node_modules/graceful-fs/legacy-streams.js +0 -118
  547. package/node_modules/graceful-fs/package.json +0 -77
  548. package/node_modules/graceful-fs/polyfills.js +0 -330
  549. package/node_modules/har-schema/LICENSE +0 -13
  550. package/node_modules/har-schema/README.md +0 -49
  551. package/node_modules/har-schema/lib/afterRequest.json +0 -29
  552. package/node_modules/har-schema/lib/beforeRequest.json +0 -29
  553. package/node_modules/har-schema/lib/browser.json +0 -19
  554. package/node_modules/har-schema/lib/cache.json +0 -20
  555. package/node_modules/har-schema/lib/content.json +0 -28
  556. package/node_modules/har-schema/lib/cookie.json +0 -35
  557. package/node_modules/har-schema/lib/creator.json +0 -19
  558. package/node_modules/har-schema/lib/entry.json +0 -52
  559. package/node_modules/har-schema/lib/har.json +0 -12
  560. package/node_modules/har-schema/lib/header.json +0 -19
  561. package/node_modules/har-schema/lib/index.js +0 -22
  562. package/node_modules/har-schema/lib/log.json +0 -35
  563. package/node_modules/har-schema/lib/page.json +0 -31
  564. package/node_modules/har-schema/lib/pageTimings.json +0 -17
  565. package/node_modules/har-schema/lib/postData.json +0 -42
  566. package/node_modules/har-schema/lib/query.json +0 -19
  567. package/node_modules/har-schema/lib/request.json +0 -56
  568. package/node_modules/har-schema/lib/response.json +0 -53
  569. package/node_modules/har-schema/lib/timings.json +0 -41
  570. package/node_modules/har-schema/package.json +0 -87
  571. package/node_modules/har-validator/LICENSE +0 -13
  572. package/node_modules/har-validator/README.md +0 -75
  573. package/node_modules/har-validator/lib/browser/async.js +0 -96
  574. package/node_modules/har-validator/lib/browser/error.js +0 -15
  575. package/node_modules/har-validator/lib/browser/promise.js +0 -93
  576. package/node_modules/har-validator/lib/node4/async.js +0 -136
  577. package/node_modules/har-validator/lib/node4/error.js +0 -22
  578. package/node_modules/har-validator/lib/node4/promise.js +0 -132
  579. package/node_modules/har-validator/lib/node6/async.js +0 -133
  580. package/node_modules/har-validator/lib/node6/error.js +0 -22
  581. package/node_modules/har-validator/lib/node6/promise.js +0 -130
  582. package/node_modules/har-validator/lib/node7/async.js +0 -133
  583. package/node_modules/har-validator/lib/node7/error.js +0 -22
  584. package/node_modules/har-validator/lib/node7/promise.js +0 -130
  585. package/node_modules/har-validator/package.json +0 -102
  586. package/node_modules/har-validator/src/async.js +0 -96
  587. package/node_modules/har-validator/src/error.js +0 -15
  588. package/node_modules/har-validator/src/promise.js +0 -93
  589. package/node_modules/hawk/.npmignore +0 -20
  590. package/node_modules/hawk/.travis.yml +0 -5
  591. package/node_modules/hawk/LICENSE +0 -28
  592. package/node_modules/hawk/README.md +0 -634
  593. package/node_modules/hawk/bower.json +0 -24
  594. package/node_modules/hawk/component.json +0 -19
  595. package/node_modules/hawk/dist/client.js +0 -343
  596. package/node_modules/hawk/example/usage.js +0 -78
  597. package/node_modules/hawk/images/hawk.png +0 -0
  598. package/node_modules/hawk/images/logo.png +0 -0
  599. package/node_modules/hawk/lib/browser.js +0 -637
  600. package/node_modules/hawk/lib/client.js +0 -369
  601. package/node_modules/hawk/lib/crypto.js +0 -126
  602. package/node_modules/hawk/lib/index.js +0 -15
  603. package/node_modules/hawk/lib/server.js +0 -548
  604. package/node_modules/hawk/lib/utils.js +0 -184
  605. package/node_modules/hawk/package.json +0 -71
  606. package/node_modules/hawk/test/browser.js +0 -1492
  607. package/node_modules/hawk/test/client.js +0 -440
  608. package/node_modules/hawk/test/crypto.js +0 -70
  609. package/node_modules/hawk/test/index.js +0 -378
  610. package/node_modules/hawk/test/readme.js +0 -95
  611. package/node_modules/hawk/test/server.js +0 -1329
  612. package/node_modules/hawk/test/uri.js +0 -838
  613. package/node_modules/hawk/test/utils.js +0 -149
  614. package/node_modules/hoek/.npmignore +0 -18
  615. package/node_modules/hoek/.travis.yml +0 -7
  616. package/node_modules/hoek/CONTRIBUTING.md +0 -1
  617. package/node_modules/hoek/LICENSE +0 -31
  618. package/node_modules/hoek/README.md +0 -584
  619. package/node_modules/hoek/images/hoek.png +0 -0
  620. package/node_modules/hoek/lib/escape.js +0 -132
  621. package/node_modules/hoek/lib/index.js +0 -993
  622. package/node_modules/hoek/package.json +0 -56
  623. package/node_modules/hoek/test/escaper.js +0 -88
  624. package/node_modules/hoek/test/index.js +0 -2513
  625. package/node_modules/hoek/test/modules/ignore.txt +0 -0
  626. package/node_modules/hoek/test/modules/test1.js +0 -1
  627. package/node_modules/hoek/test/modules/test2.js +0 -1
  628. package/node_modules/hoek/test/modules/test3.js +0 -1
  629. package/node_modules/http-signature/.dir-locals.el +0 -6
  630. package/node_modules/http-signature/.npmignore +0 -7
  631. package/node_modules/http-signature/CHANGES.md +0 -46
  632. package/node_modules/http-signature/LICENSE +0 -18
  633. package/node_modules/http-signature/README.md +0 -79
  634. package/node_modules/http-signature/http_signing.md +0 -363
  635. package/node_modules/http-signature/lib/index.js +0 -29
  636. package/node_modules/http-signature/lib/parser.js +0 -318
  637. package/node_modules/http-signature/lib/signer.js +0 -399
  638. package/node_modules/http-signature/lib/utils.js +0 -112
  639. package/node_modules/http-signature/lib/verify.js +0 -88
  640. package/node_modules/http-signature/package.json +0 -78
  641. package/node_modules/is-typedarray/LICENSE.md +0 -18
  642. package/node_modules/is-typedarray/README.md +0 -16
  643. package/node_modules/is-typedarray/index.js +0 -41
  644. package/node_modules/is-typedarray/package.json +0 -60
  645. package/node_modules/is-typedarray/test.js +0 -34
  646. package/node_modules/isstream/.jshintrc +0 -59
  647. package/node_modules/isstream/.npmignore +0 -1
  648. package/node_modules/isstream/.travis.yml +0 -12
  649. package/node_modules/isstream/LICENSE.md +0 -11
  650. package/node_modules/isstream/README.md +0 -66
  651. package/node_modules/isstream/isstream.js +0 -27
  652. package/node_modules/isstream/package.json +0 -62
  653. package/node_modules/isstream/test.js +0 -168
  654. package/node_modules/jodid25519/.npmignore +0 -11
  655. package/node_modules/jodid25519/.travis.yml +0 -7
  656. package/node_modules/jodid25519/AUTHORS.md +0 -3
  657. package/node_modules/jodid25519/LICENSE +0 -23
  658. package/node_modules/jodid25519/README.md +0 -51
  659. package/node_modules/jodid25519/almond.0 +0 -42
  660. package/node_modules/jodid25519/almond.1 +0 -13
  661. package/node_modules/jodid25519/index.js +0 -35
  662. package/node_modules/jodid25519/jsdoc.json +0 -19
  663. package/node_modules/jodid25519/lib/core.js +0 -481
  664. package/node_modules/jodid25519/lib/curve255.js +0 -221
  665. package/node_modules/jodid25519/lib/dh.js +0 -111
  666. package/node_modules/jodid25519/lib/eddsa.js +0 -573
  667. package/node_modules/jodid25519/lib/utils.js +0 -198
  668. package/node_modules/jodid25519/package.json +0 -76
  669. package/node_modules/jsbn/.npmignore +0 -2
  670. package/node_modules/jsbn/LICENSE +0 -40
  671. package/node_modules/jsbn/README.md +0 -175
  672. package/node_modules/jsbn/example.html +0 -12
  673. package/node_modules/jsbn/example.js +0 -3
  674. package/node_modules/jsbn/index.js +0 -1357
  675. package/node_modules/jsbn/package.json +0 -54
  676. package/node_modules/json-schema/README.md +0 -5
  677. package/node_modules/json-schema/draft-00/hyper-schema +0 -68
  678. package/node_modules/json-schema/draft-00/json-ref +0 -26
  679. package/node_modules/json-schema/draft-00/links +0 -33
  680. package/node_modules/json-schema/draft-00/schema +0 -155
  681. package/node_modules/json-schema/draft-01/hyper-schema +0 -68
  682. package/node_modules/json-schema/draft-01/json-ref +0 -26
  683. package/node_modules/json-schema/draft-01/links +0 -33
  684. package/node_modules/json-schema/draft-01/schema +0 -155
  685. package/node_modules/json-schema/draft-02/hyper-schema +0 -68
  686. package/node_modules/json-schema/draft-02/json-ref +0 -26
  687. package/node_modules/json-schema/draft-02/links +0 -35
  688. package/node_modules/json-schema/draft-02/schema +0 -166
  689. package/node_modules/json-schema/draft-03/examples/address +0 -20
  690. package/node_modules/json-schema/draft-03/examples/calendar +0 -53
  691. package/node_modules/json-schema/draft-03/examples/card +0 -105
  692. package/node_modules/json-schema/draft-03/examples/geo +0 -8
  693. package/node_modules/json-schema/draft-03/examples/interfaces +0 -23
  694. package/node_modules/json-schema/draft-03/hyper-schema +0 -60
  695. package/node_modules/json-schema/draft-03/json-ref +0 -26
  696. package/node_modules/json-schema/draft-03/links +0 -35
  697. package/node_modules/json-schema/draft-03/schema +0 -174
  698. package/node_modules/json-schema/draft-04/hyper-schema +0 -60
  699. package/node_modules/json-schema/draft-04/links +0 -41
  700. package/node_modules/json-schema/draft-04/schema +0 -189
  701. package/node_modules/json-schema/draft-zyp-json-schema-03.xml +0 -1120
  702. package/node_modules/json-schema/draft-zyp-json-schema-04.xml +0 -1072
  703. package/node_modules/json-schema/lib/links.js +0 -66
  704. package/node_modules/json-schema/lib/validate.js +0 -273
  705. package/node_modules/json-schema/package.json +0 -72
  706. package/node_modules/json-schema/test/tests.js +0 -95
  707. package/node_modules/json-stable-stringify/.npmignore +0 -1
  708. package/node_modules/json-stable-stringify/.travis.yml +0 -4
  709. package/node_modules/json-stable-stringify/LICENSE +0 -18
  710. package/node_modules/json-stable-stringify/example/key_cmp.js +0 -7
  711. package/node_modules/json-stable-stringify/example/nested.js +0 -3
  712. package/node_modules/json-stable-stringify/example/str.js +0 -3
  713. package/node_modules/json-stable-stringify/example/value_cmp.js +0 -7
  714. package/node_modules/json-stable-stringify/index.js +0 -84
  715. package/node_modules/json-stable-stringify/package.json +0 -75
  716. package/node_modules/json-stable-stringify/readme.markdown +0 -130
  717. package/node_modules/json-stable-stringify/test/cmp.js +0 -11
  718. package/node_modules/json-stable-stringify/test/nested.js +0 -35
  719. package/node_modules/json-stable-stringify/test/replacer.js +0 -74
  720. package/node_modules/json-stable-stringify/test/space.js +0 -59
  721. package/node_modules/json-stable-stringify/test/str.js +0 -32
  722. package/node_modules/json-stable-stringify/test/to-json.js +0 -20
  723. package/node_modules/json-stringify-safe/.npmignore +0 -1
  724. package/node_modules/json-stringify-safe/CHANGELOG.md +0 -14
  725. package/node_modules/json-stringify-safe/Makefile +0 -35
  726. package/node_modules/json-stringify-safe/README.md +0 -52
  727. package/node_modules/json-stringify-safe/package.json +0 -67
  728. package/node_modules/json-stringify-safe/stringify.js +0 -27
  729. package/node_modules/json-stringify-safe/test/mocha.opts +0 -2
  730. package/node_modules/json-stringify-safe/test/stringify_test.js +0 -246
  731. package/node_modules/jsonify/README.markdown +0 -34
  732. package/node_modules/jsonify/index.js +0 -2
  733. package/node_modules/jsonify/lib/parse.js +0 -273
  734. package/node_modules/jsonify/lib/stringify.js +0 -154
  735. package/node_modules/jsonify/package.json +0 -60
  736. package/node_modules/jsonify/test/parse.js +0 -16
  737. package/node_modules/jsonify/test/stringify.js +0 -15
  738. package/node_modules/jsprim/CHANGES.md +0 -43
  739. package/node_modules/jsprim/LICENSE +0 -19
  740. package/node_modules/jsprim/README.md +0 -292
  741. package/node_modules/jsprim/lib/jsprim.js +0 -735
  742. package/node_modules/jsprim/node_modules/assert-plus/AUTHORS +0 -6
  743. package/node_modules/jsprim/node_modules/assert-plus/CHANGES.md +0 -14
  744. package/node_modules/jsprim/node_modules/assert-plus/README.md +0 -162
  745. package/node_modules/jsprim/node_modules/assert-plus/assert.js +0 -211
  746. package/node_modules/jsprim/node_modules/assert-plus/package.json +0 -83
  747. package/node_modules/jsprim/package.json +0 -50
  748. package/node_modules/mime-db/HISTORY.md +0 -412
  749. package/node_modules/mime-db/LICENSE +0 -22
  750. package/node_modules/mime-db/README.md +0 -82
  751. package/node_modules/mime-db/db.json +0 -6805
  752. package/node_modules/mime-db/index.js +0 -11
  753. package/node_modules/mime-db/package.json +0 -99
  754. package/node_modules/mime-types/HISTORY.md +0 -223
  755. package/node_modules/mime-types/LICENSE +0 -23
  756. package/node_modules/mime-types/README.md +0 -108
  757. package/node_modules/mime-types/index.js +0 -188
  758. package/node_modules/mime-types/package.json +0 -85
  759. package/node_modules/oauth-sign/LICENSE +0 -55
  760. package/node_modules/oauth-sign/README.md +0 -4
  761. package/node_modules/oauth-sign/index.js +0 -136
  762. package/node_modules/oauth-sign/package.json +0 -57
  763. package/node_modules/osenv/.npmignore +0 -13
  764. package/node_modules/osenv/.travis.yml +0 -9
  765. package/node_modules/osenv/test/unix.js +0 -71
  766. package/node_modules/osenv/test/windows.js +0 -74
  767. package/node_modules/osenv/x.tap +0 -39
  768. package/node_modules/performance-now/.npmignore +0 -1
  769. package/node_modules/performance-now/.tm_properties +0 -7
  770. package/node_modules/performance-now/.travis.yml +0 -4
  771. package/node_modules/performance-now/Makefile +0 -25
  772. package/node_modules/performance-now/README.md +0 -30
  773. package/node_modules/performance-now/lib/performance-now.js +0 -32
  774. package/node_modules/performance-now/license.txt +0 -7
  775. package/node_modules/performance-now/package.json +0 -58
  776. package/node_modules/performance-now/src/performance-now.coffee +0 -15
  777. package/node_modules/performance-now/test/mocha.opts +0 -3
  778. package/node_modules/performance-now/test/performance-now.coffee +0 -38
  779. package/node_modules/process-nextick-args/.travis.yml +0 -12
  780. package/node_modules/process-nextick-args/test.js +0 -24
  781. package/node_modules/punycode/README.md +0 -176
  782. package/node_modules/punycode/package.json +0 -92
  783. package/node_modules/punycode/punycode.js +0 -533
  784. package/node_modules/qs/.eslintignore +0 -1
  785. package/node_modules/qs/.eslintrc +0 -18
  786. package/node_modules/qs/.jscs.json +0 -176
  787. package/node_modules/qs/CHANGELOG.md +0 -175
  788. package/node_modules/qs/LICENSE +0 -28
  789. package/node_modules/qs/README.md +0 -440
  790. package/node_modules/qs/dist/qs.js +0 -597
  791. package/node_modules/qs/lib/formats.js +0 -18
  792. package/node_modules/qs/lib/index.js +0 -11
  793. package/node_modules/qs/lib/parse.js +0 -167
  794. package/node_modules/qs/lib/stringify.js +0 -207
  795. package/node_modules/qs/lib/utils.js +0 -182
  796. package/node_modules/qs/package.json +0 -79
  797. package/node_modules/qs/test/.eslintrc +0 -11
  798. package/node_modules/qs/test/index.js +0 -7
  799. package/node_modules/qs/test/parse.js +0 -519
  800. package/node_modules/qs/test/stringify.js +0 -567
  801. package/node_modules/qs/test/utils.js +0 -22
  802. package/node_modules/rc/.npmignore +0 -3
  803. package/node_modules/readable-stream/.npmignore +0 -9
  804. package/node_modules/request/CHANGELOG.md +0 -674
  805. package/node_modules/request/LICENSE +0 -55
  806. package/node_modules/request/README.md +0 -1115
  807. package/node_modules/request/index.js +0 -156
  808. package/node_modules/request/lib/auth.js +0 -168
  809. package/node_modules/request/lib/cookies.js +0 -39
  810. package/node_modules/request/lib/getProxyFromURI.js +0 -79
  811. package/node_modules/request/lib/har.js +0 -215
  812. package/node_modules/request/lib/helpers.js +0 -66
  813. package/node_modules/request/lib/multipart.js +0 -113
  814. package/node_modules/request/lib/oauth.js +0 -148
  815. package/node_modules/request/lib/querystring.js +0 -51
  816. package/node_modules/request/lib/redirect.js +0 -157
  817. package/node_modules/request/lib/tunnel.js +0 -176
  818. package/node_modules/request/package.json +0 -119
  819. package/node_modules/request/request.js +0 -1565
  820. package/node_modules/safe-buffer/browser.js +0 -1
  821. package/node_modules/sntp/.npmignore +0 -18
  822. package/node_modules/sntp/.travis.yml +0 -5
  823. package/node_modules/sntp/LICENSE +0 -28
  824. package/node_modules/sntp/Makefile +0 -9
  825. package/node_modules/sntp/README.md +0 -68
  826. package/node_modules/sntp/examples/offset.js +0 -16
  827. package/node_modules/sntp/examples/time.js +0 -25
  828. package/node_modules/sntp/index.js +0 -1
  829. package/node_modules/sntp/lib/index.js +0 -412
  830. package/node_modules/sntp/package.json +0 -69
  831. package/node_modules/sntp/test/index.js +0 -435
  832. package/node_modules/sshpk/.npmignore +0 -9
  833. package/node_modules/sshpk/.travis.yml +0 -11
  834. package/node_modules/sshpk/LICENSE +0 -18
  835. package/node_modules/sshpk/README.md +0 -698
  836. package/node_modules/sshpk/bin/sshpk-conv +0 -201
  837. package/node_modules/sshpk/bin/sshpk-sign +0 -191
  838. package/node_modules/sshpk/bin/sshpk-verify +0 -166
  839. package/node_modules/sshpk/lib/algs.js +0 -168
  840. package/node_modules/sshpk/lib/certificate.js +0 -377
  841. package/node_modules/sshpk/lib/dhe.js +0 -410
  842. package/node_modules/sshpk/lib/ed-compat.js +0 -96
  843. package/node_modules/sshpk/lib/errors.js +0 -84
  844. package/node_modules/sshpk/lib/fingerprint.js +0 -161
  845. package/node_modules/sshpk/lib/formats/auto.js +0 -73
  846. package/node_modules/sshpk/lib/formats/openssh-cert.js +0 -322
  847. package/node_modules/sshpk/lib/formats/pem.js +0 -186
  848. package/node_modules/sshpk/lib/formats/pkcs1.js +0 -320
  849. package/node_modules/sshpk/lib/formats/pkcs8.js +0 -505
  850. package/node_modules/sshpk/lib/formats/rfc4253.js +0 -146
  851. package/node_modules/sshpk/lib/formats/ssh-private.js +0 -261
  852. package/node_modules/sshpk/lib/formats/ssh.js +0 -114
  853. package/node_modules/sshpk/lib/formats/x509-pem.js +0 -77
  854. package/node_modules/sshpk/lib/formats/x509.js +0 -726
  855. package/node_modules/sshpk/lib/identity.js +0 -277
  856. package/node_modules/sshpk/lib/index.js +0 -39
  857. package/node_modules/sshpk/lib/key.js +0 -274
  858. package/node_modules/sshpk/lib/private-key.js +0 -255
  859. package/node_modules/sshpk/lib/signature.js +0 -313
  860. package/node_modules/sshpk/lib/ssh-buffer.js +0 -148
  861. package/node_modules/sshpk/lib/utils.js +0 -288
  862. package/node_modules/sshpk/man/man1/sshpk-conv.1 +0 -135
  863. package/node_modules/sshpk/man/man1/sshpk-sign.1 +0 -81
  864. package/node_modules/sshpk/man/man1/sshpk-verify.1 +0 -68
  865. package/node_modules/sshpk/node_modules/assert-plus/AUTHORS +0 -6
  866. package/node_modules/sshpk/node_modules/assert-plus/CHANGES.md +0 -14
  867. package/node_modules/sshpk/node_modules/assert-plus/README.md +0 -162
  868. package/node_modules/sshpk/node_modules/assert-plus/assert.js +0 -211
  869. package/node_modules/sshpk/node_modules/assert-plus/package.json +0 -83
  870. package/node_modules/sshpk/package.json +0 -103
  871. package/node_modules/string_decoder/.npmignore +0 -2
  872. package/node_modules/stringstream/.npmignore +0 -15
  873. package/node_modules/stringstream/.travis.yml +0 -4
  874. package/node_modules/stringstream/LICENSE.txt +0 -22
  875. package/node_modules/stringstream/README.md +0 -38
  876. package/node_modules/stringstream/example.js +0 -27
  877. package/node_modules/stringstream/package.json +0 -52
  878. package/node_modules/stringstream/stringstream.js +0 -102
  879. package/node_modules/tar/.npmignore +0 -5
  880. package/node_modules/tar/.travis.yml +0 -4
  881. package/node_modules/tar/examples/extracter.js +0 -19
  882. package/node_modules/tar/examples/packer.js +0 -24
  883. package/node_modules/tar/examples/reader.js +0 -36
  884. package/node_modules/tar/lib/buffer-entry.js +0 -30
  885. package/node_modules/tar/lib/entry-writer.js +0 -169
  886. package/node_modules/tar/lib/entry.js +0 -220
  887. package/node_modules/tar/lib/extended-header-writer.js +0 -191
  888. package/node_modules/tar/lib/extended-header.js +0 -140
  889. package/node_modules/tar/lib/global-header-writer.js +0 -14
  890. package/node_modules/tar/tar.js +0 -173
  891. package/node_modules/tar/test/00-setup-fixtures.js +0 -53
  892. package/node_modules/tar/test/cb-never-called-1.0.1.tgz +0 -0
  893. package/node_modules/tar/test/dir-normalization.js +0 -177
  894. package/node_modules/tar/test/dir-normalization.tar +0 -0
  895. package/node_modules/tar/test/error-on-broken.js +0 -33
  896. package/node_modules/tar/test/extract-move.js +0 -132
  897. package/node_modules/tar/test/extract.js +0 -367
  898. package/node_modules/tar/test/fixtures.tgz +0 -0
  899. package/node_modules/tar/test/header.js +0 -183
  900. package/node_modules/tar/test/pack-no-proprietary.js +0 -886
  901. package/node_modules/tar/test/pack.js +0 -952
  902. package/node_modules/tar/test/parse-discard.js +0 -29
  903. package/node_modules/tar/test/parse.js +0 -359
  904. package/node_modules/tar/test/zz-cleanup.js +0 -20
  905. package/node_modules/tar-pack/.npmignore +0 -14
  906. package/node_modules/tar-pack/.travis.yml +0 -7
  907. package/node_modules/tar-pack/LICENSE +0 -23
  908. package/node_modules/tar-pack/README.md +0 -84
  909. package/node_modules/tar-pack/index.js +0 -245
  910. package/node_modules/tar-pack/package.json +0 -58
  911. package/node_modules/tar-pack/test/fixtures/packed-file.txt +0 -1
  912. package/node_modules/tar-pack/test/fixtures/packed.tar +0 -0
  913. package/node_modules/tar-pack/test/fixtures/packed.tar.gz +0 -0
  914. package/node_modules/tar-pack/test/fixtures/to-pack/bar.txt +0 -1
  915. package/node_modules/tar-pack/test/fixtures/to-pack/foo.txt +0 -1
  916. package/node_modules/tar-pack/test/index.js +0 -109
  917. package/node_modules/tough-cookie/LICENSE +0 -27
  918. package/node_modules/tough-cookie/README.md +0 -506
  919. package/node_modules/tough-cookie/lib/cookie.js +0 -1336
  920. package/node_modules/tough-cookie/lib/memstore.js +0 -170
  921. package/node_modules/tough-cookie/lib/pathMatch.js +0 -61
  922. package/node_modules/tough-cookie/lib/permuteDomain.js +0 -56
  923. package/node_modules/tough-cookie/lib/pubsuffix.js +0 -98
  924. package/node_modules/tough-cookie/lib/store.js +0 -71
  925. package/node_modules/tough-cookie/package.json +0 -93
  926. package/node_modules/tunnel-agent/LICENSE +0 -55
  927. package/node_modules/tunnel-agent/README.md +0 -4
  928. package/node_modules/tunnel-agent/index.js +0 -244
  929. package/node_modules/tunnel-agent/package.json +0 -56
  930. package/node_modules/tweetnacl/.npmignore +0 -4
  931. package/node_modules/tweetnacl/AUTHORS.md +0 -28
  932. package/node_modules/tweetnacl/CHANGELOG.md +0 -221
  933. package/node_modules/tweetnacl/LICENSE +0 -24
  934. package/node_modules/tweetnacl/PULL_REQUEST_TEMPLATE.md +0 -20
  935. package/node_modules/tweetnacl/README.md +0 -459
  936. package/node_modules/tweetnacl/nacl-fast.js +0 -2388
  937. package/node_modules/tweetnacl/nacl-fast.min.js +0 -2
  938. package/node_modules/tweetnacl/nacl.d.ts +0 -98
  939. package/node_modules/tweetnacl/nacl.js +0 -1175
  940. package/node_modules/tweetnacl/nacl.min.js +0 -1
  941. package/node_modules/tweetnacl/package.json +0 -87
  942. package/node_modules/uid-number/LICENSE +0 -15
  943. package/node_modules/uid-number/README.md +0 -17
  944. package/node_modules/uid-number/get-uid-gid.js +0 -24
  945. package/node_modules/uid-number/package.json +0 -52
  946. package/node_modules/uid-number/uid-number.js +0 -59
  947. package/node_modules/uuid/.npmignore +0 -8
  948. package/node_modules/uuid/.travis.yml +0 -5
  949. package/node_modules/uuid/AUTHORS +0 -5
  950. package/node_modules/uuid/HISTORY.md +0 -28
  951. package/node_modules/uuid/LICENSE.md +0 -21
  952. package/node_modules/uuid/README.md +0 -132
  953. package/node_modules/uuid/bin/uuid +0 -26
  954. package/node_modules/uuid/index.js +0 -8
  955. package/node_modules/uuid/lib/bytesToUuid.js +0 -23
  956. package/node_modules/uuid/lib/rng-browser.js +0 -33
  957. package/node_modules/uuid/lib/rng.js +0 -10
  958. package/node_modules/uuid/package.json +0 -79
  959. package/node_modules/uuid/test/mocha.opts +0 -3
  960. package/node_modules/uuid/test/test.js +0 -96
  961. package/node_modules/uuid/v1.js +0 -103
  962. package/node_modules/uuid/v4.js +0 -29
  963. package/node_modules/verror/.gitmodules +0 -0
  964. package/node_modules/verror/.npmignore +0 -1
  965. package/node_modules/verror/LICENSE +0 -19
  966. package/node_modules/verror/Makefile +0 -35
  967. package/node_modules/verror/Makefile.targ +0 -285
  968. package/node_modules/verror/README.md +0 -120
  969. package/node_modules/verror/examples/levels-verror.js +0 -36
  970. package/node_modules/verror/examples/levels-werror.js +0 -34
  971. package/node_modules/verror/examples/varargs.js +0 -6
  972. package/node_modules/verror/examples/verror.js +0 -13
  973. package/node_modules/verror/examples/werror.js +0 -14
  974. package/node_modules/verror/jsl.node.conf +0 -139
  975. package/node_modules/verror/lib/verror.js +0 -157
  976. package/node_modules/verror/package.json +0 -49
  977. package/node_modules/verror/tests/tst.inherit.js +0 -100
  978. package/node_modules/verror/tests/tst.verror.js +0 -156
  979. package/node_modules/verror/tests/tst.werror.js +0 -179
@@ -0,0 +1,1565 @@
1
+ ;(function (sax) { // wrapper for non-node envs
2
+ sax.parser = function (strict, opt) { return new SAXParser(strict, opt) }
3
+ sax.SAXParser = SAXParser
4
+ sax.SAXStream = SAXStream
5
+ sax.createStream = createStream
6
+
7
+ // When we pass the MAX_BUFFER_LENGTH position, start checking for buffer overruns.
8
+ // When we check, schedule the next check for MAX_BUFFER_LENGTH - (max(buffer lengths)),
9
+ // since that's the earliest that a buffer overrun could occur. This way, checks are
10
+ // as rare as required, but as often as necessary to ensure never crossing this bound.
11
+ // Furthermore, buffers are only tested at most once per write(), so passing a very
12
+ // large string into write() might have undesirable effects, but this is manageable by
13
+ // the caller, so it is assumed to be safe. Thus, a call to write() may, in the extreme
14
+ // edge case, result in creating at most one complete copy of the string passed in.
15
+ // Set to Infinity to have unlimited buffers.
16
+ sax.MAX_BUFFER_LENGTH = 64 * 1024
17
+
18
+ var buffers = [
19
+ 'comment', 'sgmlDecl', 'textNode', 'tagName', 'doctype',
20
+ 'procInstName', 'procInstBody', 'entity', 'attribName',
21
+ 'attribValue', 'cdata', 'script'
22
+ ]
23
+
24
+ sax.EVENTS = [
25
+ 'text',
26
+ 'processinginstruction',
27
+ 'sgmldeclaration',
28
+ 'doctype',
29
+ 'comment',
30
+ 'opentagstart',
31
+ 'attribute',
32
+ 'opentag',
33
+ 'closetag',
34
+ 'opencdata',
35
+ 'cdata',
36
+ 'closecdata',
37
+ 'error',
38
+ 'end',
39
+ 'ready',
40
+ 'script',
41
+ 'opennamespace',
42
+ 'closenamespace'
43
+ ]
44
+
45
+ function SAXParser (strict, opt) {
46
+ if (!(this instanceof SAXParser)) {
47
+ return new SAXParser(strict, opt)
48
+ }
49
+
50
+ var parser = this
51
+ clearBuffers(parser)
52
+ parser.q = parser.c = ''
53
+ parser.bufferCheckPosition = sax.MAX_BUFFER_LENGTH
54
+ parser.opt = opt || {}
55
+ parser.opt.lowercase = parser.opt.lowercase || parser.opt.lowercasetags
56
+ parser.looseCase = parser.opt.lowercase ? 'toLowerCase' : 'toUpperCase'
57
+ parser.tags = []
58
+ parser.closed = parser.closedRoot = parser.sawRoot = false
59
+ parser.tag = parser.error = null
60
+ parser.strict = !!strict
61
+ parser.noscript = !!(strict || parser.opt.noscript)
62
+ parser.state = S.BEGIN
63
+ parser.strictEntities = parser.opt.strictEntities
64
+ parser.ENTITIES = parser.strictEntities ? Object.create(sax.XML_ENTITIES) : Object.create(sax.ENTITIES)
65
+ parser.attribList = []
66
+
67
+ // namespaces form a prototype chain.
68
+ // it always points at the current tag,
69
+ // which protos to its parent tag.
70
+ if (parser.opt.xmlns) {
71
+ parser.ns = Object.create(rootNS)
72
+ }
73
+
74
+ // mostly just for error reporting
75
+ parser.trackPosition = parser.opt.position !== false
76
+ if (parser.trackPosition) {
77
+ parser.position = parser.line = parser.column = 0
78
+ }
79
+ emit(parser, 'onready')
80
+ }
81
+
82
+ if (!Object.create) {
83
+ Object.create = function (o) {
84
+ function F () {}
85
+ F.prototype = o
86
+ var newf = new F()
87
+ return newf
88
+ }
89
+ }
90
+
91
+ if (!Object.keys) {
92
+ Object.keys = function (o) {
93
+ var a = []
94
+ for (var i in o) if (o.hasOwnProperty(i)) a.push(i)
95
+ return a
96
+ }
97
+ }
98
+
99
+ function checkBufferLength (parser) {
100
+ var maxAllowed = Math.max(sax.MAX_BUFFER_LENGTH, 10)
101
+ var maxActual = 0
102
+ for (var i = 0, l = buffers.length; i < l; i++) {
103
+ var len = parser[buffers[i]].length
104
+ if (len > maxAllowed) {
105
+ // Text/cdata nodes can get big, and since they're buffered,
106
+ // we can get here under normal conditions.
107
+ // Avoid issues by emitting the text node now,
108
+ // so at least it won't get any bigger.
109
+ switch (buffers[i]) {
110
+ case 'textNode':
111
+ closeText(parser)
112
+ break
113
+
114
+ case 'cdata':
115
+ emitNode(parser, 'oncdata', parser.cdata)
116
+ parser.cdata = ''
117
+ break
118
+
119
+ case 'script':
120
+ emitNode(parser, 'onscript', parser.script)
121
+ parser.script = ''
122
+ break
123
+
124
+ default:
125
+ error(parser, 'Max buffer length exceeded: ' + buffers[i])
126
+ }
127
+ }
128
+ maxActual = Math.max(maxActual, len)
129
+ }
130
+ // schedule the next check for the earliest possible buffer overrun.
131
+ var m = sax.MAX_BUFFER_LENGTH - maxActual
132
+ parser.bufferCheckPosition = m + parser.position
133
+ }
134
+
135
+ function clearBuffers (parser) {
136
+ for (var i = 0, l = buffers.length; i < l; i++) {
137
+ parser[buffers[i]] = ''
138
+ }
139
+ }
140
+
141
+ function flushBuffers (parser) {
142
+ closeText(parser)
143
+ if (parser.cdata !== '') {
144
+ emitNode(parser, 'oncdata', parser.cdata)
145
+ parser.cdata = ''
146
+ }
147
+ if (parser.script !== '') {
148
+ emitNode(parser, 'onscript', parser.script)
149
+ parser.script = ''
150
+ }
151
+ }
152
+
153
+ SAXParser.prototype = {
154
+ end: function () { end(this) },
155
+ write: write,
156
+ resume: function () { this.error = null; return this },
157
+ close: function () { return this.write(null) },
158
+ flush: function () { flushBuffers(this) }
159
+ }
160
+
161
+ var Stream
162
+ try {
163
+ Stream = require('stream').Stream
164
+ } catch (ex) {
165
+ Stream = function () {}
166
+ }
167
+
168
+ var streamWraps = sax.EVENTS.filter(function (ev) {
169
+ return ev !== 'error' && ev !== 'end'
170
+ })
171
+
172
+ function createStream (strict, opt) {
173
+ return new SAXStream(strict, opt)
174
+ }
175
+
176
+ function SAXStream (strict, opt) {
177
+ if (!(this instanceof SAXStream)) {
178
+ return new SAXStream(strict, opt)
179
+ }
180
+
181
+ Stream.apply(this)
182
+
183
+ this._parser = new SAXParser(strict, opt)
184
+ this.writable = true
185
+ this.readable = true
186
+
187
+ var me = this
188
+
189
+ this._parser.onend = function () {
190
+ me.emit('end')
191
+ }
192
+
193
+ this._parser.onerror = function (er) {
194
+ me.emit('error', er)
195
+
196
+ // if didn't throw, then means error was handled.
197
+ // go ahead and clear error, so we can write again.
198
+ me._parser.error = null
199
+ }
200
+
201
+ this._decoder = null
202
+
203
+ streamWraps.forEach(function (ev) {
204
+ Object.defineProperty(me, 'on' + ev, {
205
+ get: function () {
206
+ return me._parser['on' + ev]
207
+ },
208
+ set: function (h) {
209
+ if (!h) {
210
+ me.removeAllListeners(ev)
211
+ me._parser['on' + ev] = h
212
+ return h
213
+ }
214
+ me.on(ev, h)
215
+ },
216
+ enumerable: true,
217
+ configurable: false
218
+ })
219
+ })
220
+ }
221
+
222
+ SAXStream.prototype = Object.create(Stream.prototype, {
223
+ constructor: {
224
+ value: SAXStream
225
+ }
226
+ })
227
+
228
+ SAXStream.prototype.write = function (data) {
229
+ if (typeof Buffer === 'function' &&
230
+ typeof Buffer.isBuffer === 'function' &&
231
+ Buffer.isBuffer(data)) {
232
+ if (!this._decoder) {
233
+ var SD = require('string_decoder').StringDecoder
234
+ this._decoder = new SD('utf8')
235
+ }
236
+ data = this._decoder.write(data)
237
+ }
238
+
239
+ this._parser.write(data.toString())
240
+ this.emit('data', data)
241
+ return true
242
+ }
243
+
244
+ SAXStream.prototype.end = function (chunk) {
245
+ if (chunk && chunk.length) {
246
+ this.write(chunk)
247
+ }
248
+ this._parser.end()
249
+ return true
250
+ }
251
+
252
+ SAXStream.prototype.on = function (ev, handler) {
253
+ var me = this
254
+ if (!me._parser['on' + ev] && streamWraps.indexOf(ev) !== -1) {
255
+ me._parser['on' + ev] = function () {
256
+ var args = arguments.length === 1 ? [arguments[0]] : Array.apply(null, arguments)
257
+ args.splice(0, 0, ev)
258
+ me.emit.apply(me, args)
259
+ }
260
+ }
261
+
262
+ return Stream.prototype.on.call(me, ev, handler)
263
+ }
264
+
265
+ // this really needs to be replaced with character classes.
266
+ // XML allows all manner of ridiculous numbers and digits.
267
+ var CDATA = '[CDATA['
268
+ var DOCTYPE = 'DOCTYPE'
269
+ var XML_NAMESPACE = 'http://www.w3.org/XML/1998/namespace'
270
+ var XMLNS_NAMESPACE = 'http://www.w3.org/2000/xmlns/'
271
+ var rootNS = { xml: XML_NAMESPACE, xmlns: XMLNS_NAMESPACE }
272
+
273
+ // http://www.w3.org/TR/REC-xml/#NT-NameStartChar
274
+ // This implementation works on strings, a single character at a time
275
+ // as such, it cannot ever support astral-plane characters (10000-EFFFF)
276
+ // without a significant breaking change to either this parser, or the
277
+ // JavaScript language. Implementation of an emoji-capable xml parser
278
+ // is left as an exercise for the reader.
279
+ var nameStart = /[:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/
280
+
281
+ var nameBody = /[:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u00B7\u0300-\u036F\u203F-\u2040.\d-]/
282
+
283
+ var entityStart = /[#:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/
284
+ var entityBody = /[#:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u00B7\u0300-\u036F\u203F-\u2040.\d-]/
285
+
286
+ function isWhitespace (c) {
287
+ return c === ' ' || c === '\n' || c === '\r' || c === '\t'
288
+ }
289
+
290
+ function isQuote (c) {
291
+ return c === '"' || c === '\''
292
+ }
293
+
294
+ function isAttribEnd (c) {
295
+ return c === '>' || isWhitespace(c)
296
+ }
297
+
298
+ function isMatch (regex, c) {
299
+ return regex.test(c)
300
+ }
301
+
302
+ function notMatch (regex, c) {
303
+ return !isMatch(regex, c)
304
+ }
305
+
306
+ var S = 0
307
+ sax.STATE = {
308
+ BEGIN: S++, // leading byte order mark or whitespace
309
+ BEGIN_WHITESPACE: S++, // leading whitespace
310
+ TEXT: S++, // general stuff
311
+ TEXT_ENTITY: S++, // &amp and such.
312
+ OPEN_WAKA: S++, // <
313
+ SGML_DECL: S++, // <!BLARG
314
+ SGML_DECL_QUOTED: S++, // <!BLARG foo "bar
315
+ DOCTYPE: S++, // <!DOCTYPE
316
+ DOCTYPE_QUOTED: S++, // <!DOCTYPE "//blah
317
+ DOCTYPE_DTD: S++, // <!DOCTYPE "//blah" [ ...
318
+ DOCTYPE_DTD_QUOTED: S++, // <!DOCTYPE "//blah" [ "foo
319
+ COMMENT_STARTING: S++, // <!-
320
+ COMMENT: S++, // <!--
321
+ COMMENT_ENDING: S++, // <!-- blah -
322
+ COMMENT_ENDED: S++, // <!-- blah --
323
+ CDATA: S++, // <![CDATA[ something
324
+ CDATA_ENDING: S++, // ]
325
+ CDATA_ENDING_2: S++, // ]]
326
+ PROC_INST: S++, // <?hi
327
+ PROC_INST_BODY: S++, // <?hi there
328
+ PROC_INST_ENDING: S++, // <?hi "there" ?
329
+ OPEN_TAG: S++, // <strong
330
+ OPEN_TAG_SLASH: S++, // <strong /
331
+ ATTRIB: S++, // <a
332
+ ATTRIB_NAME: S++, // <a foo
333
+ ATTRIB_NAME_SAW_WHITE: S++, // <a foo _
334
+ ATTRIB_VALUE: S++, // <a foo=
335
+ ATTRIB_VALUE_QUOTED: S++, // <a foo="bar
336
+ ATTRIB_VALUE_CLOSED: S++, // <a foo="bar"
337
+ ATTRIB_VALUE_UNQUOTED: S++, // <a foo=bar
338
+ ATTRIB_VALUE_ENTITY_Q: S++, // <foo bar="&quot;"
339
+ ATTRIB_VALUE_ENTITY_U: S++, // <foo bar=&quot
340
+ CLOSE_TAG: S++, // </a
341
+ CLOSE_TAG_SAW_WHITE: S++, // </a >
342
+ SCRIPT: S++, // <script> ...
343
+ SCRIPT_ENDING: S++ // <script> ... <
344
+ }
345
+
346
+ sax.XML_ENTITIES = {
347
+ 'amp': '&',
348
+ 'gt': '>',
349
+ 'lt': '<',
350
+ 'quot': '"',
351
+ 'apos': "'"
352
+ }
353
+
354
+ sax.ENTITIES = {
355
+ 'amp': '&',
356
+ 'gt': '>',
357
+ 'lt': '<',
358
+ 'quot': '"',
359
+ 'apos': "'",
360
+ 'AElig': 198,
361
+ 'Aacute': 193,
362
+ 'Acirc': 194,
363
+ 'Agrave': 192,
364
+ 'Aring': 197,
365
+ 'Atilde': 195,
366
+ 'Auml': 196,
367
+ 'Ccedil': 199,
368
+ 'ETH': 208,
369
+ 'Eacute': 201,
370
+ 'Ecirc': 202,
371
+ 'Egrave': 200,
372
+ 'Euml': 203,
373
+ 'Iacute': 205,
374
+ 'Icirc': 206,
375
+ 'Igrave': 204,
376
+ 'Iuml': 207,
377
+ 'Ntilde': 209,
378
+ 'Oacute': 211,
379
+ 'Ocirc': 212,
380
+ 'Ograve': 210,
381
+ 'Oslash': 216,
382
+ 'Otilde': 213,
383
+ 'Ouml': 214,
384
+ 'THORN': 222,
385
+ 'Uacute': 218,
386
+ 'Ucirc': 219,
387
+ 'Ugrave': 217,
388
+ 'Uuml': 220,
389
+ 'Yacute': 221,
390
+ 'aacute': 225,
391
+ 'acirc': 226,
392
+ 'aelig': 230,
393
+ 'agrave': 224,
394
+ 'aring': 229,
395
+ 'atilde': 227,
396
+ 'auml': 228,
397
+ 'ccedil': 231,
398
+ 'eacute': 233,
399
+ 'ecirc': 234,
400
+ 'egrave': 232,
401
+ 'eth': 240,
402
+ 'euml': 235,
403
+ 'iacute': 237,
404
+ 'icirc': 238,
405
+ 'igrave': 236,
406
+ 'iuml': 239,
407
+ 'ntilde': 241,
408
+ 'oacute': 243,
409
+ 'ocirc': 244,
410
+ 'ograve': 242,
411
+ 'oslash': 248,
412
+ 'otilde': 245,
413
+ 'ouml': 246,
414
+ 'szlig': 223,
415
+ 'thorn': 254,
416
+ 'uacute': 250,
417
+ 'ucirc': 251,
418
+ 'ugrave': 249,
419
+ 'uuml': 252,
420
+ 'yacute': 253,
421
+ 'yuml': 255,
422
+ 'copy': 169,
423
+ 'reg': 174,
424
+ 'nbsp': 160,
425
+ 'iexcl': 161,
426
+ 'cent': 162,
427
+ 'pound': 163,
428
+ 'curren': 164,
429
+ 'yen': 165,
430
+ 'brvbar': 166,
431
+ 'sect': 167,
432
+ 'uml': 168,
433
+ 'ordf': 170,
434
+ 'laquo': 171,
435
+ 'not': 172,
436
+ 'shy': 173,
437
+ 'macr': 175,
438
+ 'deg': 176,
439
+ 'plusmn': 177,
440
+ 'sup1': 185,
441
+ 'sup2': 178,
442
+ 'sup3': 179,
443
+ 'acute': 180,
444
+ 'micro': 181,
445
+ 'para': 182,
446
+ 'middot': 183,
447
+ 'cedil': 184,
448
+ 'ordm': 186,
449
+ 'raquo': 187,
450
+ 'frac14': 188,
451
+ 'frac12': 189,
452
+ 'frac34': 190,
453
+ 'iquest': 191,
454
+ 'times': 215,
455
+ 'divide': 247,
456
+ 'OElig': 338,
457
+ 'oelig': 339,
458
+ 'Scaron': 352,
459
+ 'scaron': 353,
460
+ 'Yuml': 376,
461
+ 'fnof': 402,
462
+ 'circ': 710,
463
+ 'tilde': 732,
464
+ 'Alpha': 913,
465
+ 'Beta': 914,
466
+ 'Gamma': 915,
467
+ 'Delta': 916,
468
+ 'Epsilon': 917,
469
+ 'Zeta': 918,
470
+ 'Eta': 919,
471
+ 'Theta': 920,
472
+ 'Iota': 921,
473
+ 'Kappa': 922,
474
+ 'Lambda': 923,
475
+ 'Mu': 924,
476
+ 'Nu': 925,
477
+ 'Xi': 926,
478
+ 'Omicron': 927,
479
+ 'Pi': 928,
480
+ 'Rho': 929,
481
+ 'Sigma': 931,
482
+ 'Tau': 932,
483
+ 'Upsilon': 933,
484
+ 'Phi': 934,
485
+ 'Chi': 935,
486
+ 'Psi': 936,
487
+ 'Omega': 937,
488
+ 'alpha': 945,
489
+ 'beta': 946,
490
+ 'gamma': 947,
491
+ 'delta': 948,
492
+ 'epsilon': 949,
493
+ 'zeta': 950,
494
+ 'eta': 951,
495
+ 'theta': 952,
496
+ 'iota': 953,
497
+ 'kappa': 954,
498
+ 'lambda': 955,
499
+ 'mu': 956,
500
+ 'nu': 957,
501
+ 'xi': 958,
502
+ 'omicron': 959,
503
+ 'pi': 960,
504
+ 'rho': 961,
505
+ 'sigmaf': 962,
506
+ 'sigma': 963,
507
+ 'tau': 964,
508
+ 'upsilon': 965,
509
+ 'phi': 966,
510
+ 'chi': 967,
511
+ 'psi': 968,
512
+ 'omega': 969,
513
+ 'thetasym': 977,
514
+ 'upsih': 978,
515
+ 'piv': 982,
516
+ 'ensp': 8194,
517
+ 'emsp': 8195,
518
+ 'thinsp': 8201,
519
+ 'zwnj': 8204,
520
+ 'zwj': 8205,
521
+ 'lrm': 8206,
522
+ 'rlm': 8207,
523
+ 'ndash': 8211,
524
+ 'mdash': 8212,
525
+ 'lsquo': 8216,
526
+ 'rsquo': 8217,
527
+ 'sbquo': 8218,
528
+ 'ldquo': 8220,
529
+ 'rdquo': 8221,
530
+ 'bdquo': 8222,
531
+ 'dagger': 8224,
532
+ 'Dagger': 8225,
533
+ 'bull': 8226,
534
+ 'hellip': 8230,
535
+ 'permil': 8240,
536
+ 'prime': 8242,
537
+ 'Prime': 8243,
538
+ 'lsaquo': 8249,
539
+ 'rsaquo': 8250,
540
+ 'oline': 8254,
541
+ 'frasl': 8260,
542
+ 'euro': 8364,
543
+ 'image': 8465,
544
+ 'weierp': 8472,
545
+ 'real': 8476,
546
+ 'trade': 8482,
547
+ 'alefsym': 8501,
548
+ 'larr': 8592,
549
+ 'uarr': 8593,
550
+ 'rarr': 8594,
551
+ 'darr': 8595,
552
+ 'harr': 8596,
553
+ 'crarr': 8629,
554
+ 'lArr': 8656,
555
+ 'uArr': 8657,
556
+ 'rArr': 8658,
557
+ 'dArr': 8659,
558
+ 'hArr': 8660,
559
+ 'forall': 8704,
560
+ 'part': 8706,
561
+ 'exist': 8707,
562
+ 'empty': 8709,
563
+ 'nabla': 8711,
564
+ 'isin': 8712,
565
+ 'notin': 8713,
566
+ 'ni': 8715,
567
+ 'prod': 8719,
568
+ 'sum': 8721,
569
+ 'minus': 8722,
570
+ 'lowast': 8727,
571
+ 'radic': 8730,
572
+ 'prop': 8733,
573
+ 'infin': 8734,
574
+ 'ang': 8736,
575
+ 'and': 8743,
576
+ 'or': 8744,
577
+ 'cap': 8745,
578
+ 'cup': 8746,
579
+ 'int': 8747,
580
+ 'there4': 8756,
581
+ 'sim': 8764,
582
+ 'cong': 8773,
583
+ 'asymp': 8776,
584
+ 'ne': 8800,
585
+ 'equiv': 8801,
586
+ 'le': 8804,
587
+ 'ge': 8805,
588
+ 'sub': 8834,
589
+ 'sup': 8835,
590
+ 'nsub': 8836,
591
+ 'sube': 8838,
592
+ 'supe': 8839,
593
+ 'oplus': 8853,
594
+ 'otimes': 8855,
595
+ 'perp': 8869,
596
+ 'sdot': 8901,
597
+ 'lceil': 8968,
598
+ 'rceil': 8969,
599
+ 'lfloor': 8970,
600
+ 'rfloor': 8971,
601
+ 'lang': 9001,
602
+ 'rang': 9002,
603
+ 'loz': 9674,
604
+ 'spades': 9824,
605
+ 'clubs': 9827,
606
+ 'hearts': 9829,
607
+ 'diams': 9830
608
+ }
609
+
610
+ Object.keys(sax.ENTITIES).forEach(function (key) {
611
+ var e = sax.ENTITIES[key]
612
+ var s = typeof e === 'number' ? String.fromCharCode(e) : e
613
+ sax.ENTITIES[key] = s
614
+ })
615
+
616
+ for (var s in sax.STATE) {
617
+ sax.STATE[sax.STATE[s]] = s
618
+ }
619
+
620
+ // shorthand
621
+ S = sax.STATE
622
+
623
+ function emit (parser, event, data) {
624
+ parser[event] && parser[event](data)
625
+ }
626
+
627
+ function emitNode (parser, nodeType, data) {
628
+ if (parser.textNode) closeText(parser)
629
+ emit(parser, nodeType, data)
630
+ }
631
+
632
+ function closeText (parser) {
633
+ parser.textNode = textopts(parser.opt, parser.textNode)
634
+ if (parser.textNode) emit(parser, 'ontext', parser.textNode)
635
+ parser.textNode = ''
636
+ }
637
+
638
+ function textopts (opt, text) {
639
+ if (opt.trim) text = text.trim()
640
+ if (opt.normalize) text = text.replace(/\s+/g, ' ')
641
+ return text
642
+ }
643
+
644
+ function error (parser, er) {
645
+ closeText(parser)
646
+ if (parser.trackPosition) {
647
+ er += '\nLine: ' + parser.line +
648
+ '\nColumn: ' + parser.column +
649
+ '\nChar: ' + parser.c
650
+ }
651
+ er = new Error(er)
652
+ parser.error = er
653
+ emit(parser, 'onerror', er)
654
+ return parser
655
+ }
656
+
657
+ function end (parser) {
658
+ if (parser.sawRoot && !parser.closedRoot) strictFail(parser, 'Unclosed root tag')
659
+ if ((parser.state !== S.BEGIN) &&
660
+ (parser.state !== S.BEGIN_WHITESPACE) &&
661
+ (parser.state !== S.TEXT)) {
662
+ error(parser, 'Unexpected end')
663
+ }
664
+ closeText(parser)
665
+ parser.c = ''
666
+ parser.closed = true
667
+ emit(parser, 'onend')
668
+ SAXParser.call(parser, parser.strict, parser.opt)
669
+ return parser
670
+ }
671
+
672
+ function strictFail (parser, message) {
673
+ if (typeof parser !== 'object' || !(parser instanceof SAXParser)) {
674
+ throw new Error('bad call to strictFail')
675
+ }
676
+ if (parser.strict) {
677
+ error(parser, message)
678
+ }
679
+ }
680
+
681
+ function newTag (parser) {
682
+ if (!parser.strict) parser.tagName = parser.tagName[parser.looseCase]()
683
+ var parent = parser.tags[parser.tags.length - 1] || parser
684
+ var tag = parser.tag = { name: parser.tagName, attributes: {} }
685
+
686
+ // will be overridden if tag contails an xmlns="foo" or xmlns:foo="bar"
687
+ if (parser.opt.xmlns) {
688
+ tag.ns = parent.ns
689
+ }
690
+ parser.attribList.length = 0
691
+ emitNode(parser, 'onopentagstart', tag)
692
+ }
693
+
694
+ function qname (name, attribute) {
695
+ var i = name.indexOf(':')
696
+ var qualName = i < 0 ? [ '', name ] : name.split(':')
697
+ var prefix = qualName[0]
698
+ var local = qualName[1]
699
+
700
+ // <x "xmlns"="http://foo">
701
+ if (attribute && name === 'xmlns') {
702
+ prefix = 'xmlns'
703
+ local = ''
704
+ }
705
+
706
+ return { prefix: prefix, local: local }
707
+ }
708
+
709
+ function attrib (parser) {
710
+ if (!parser.strict) {
711
+ parser.attribName = parser.attribName[parser.looseCase]()
712
+ }
713
+
714
+ if (parser.attribList.indexOf(parser.attribName) !== -1 ||
715
+ parser.tag.attributes.hasOwnProperty(parser.attribName)) {
716
+ parser.attribName = parser.attribValue = ''
717
+ return
718
+ }
719
+
720
+ if (parser.opt.xmlns) {
721
+ var qn = qname(parser.attribName, true)
722
+ var prefix = qn.prefix
723
+ var local = qn.local
724
+
725
+ if (prefix === 'xmlns') {
726
+ // namespace binding attribute. push the binding into scope
727
+ if (local === 'xml' && parser.attribValue !== XML_NAMESPACE) {
728
+ strictFail(parser,
729
+ 'xml: prefix must be bound to ' + XML_NAMESPACE + '\n' +
730
+ 'Actual: ' + parser.attribValue)
731
+ } else if (local === 'xmlns' && parser.attribValue !== XMLNS_NAMESPACE) {
732
+ strictFail(parser,
733
+ 'xmlns: prefix must be bound to ' + XMLNS_NAMESPACE + '\n' +
734
+ 'Actual: ' + parser.attribValue)
735
+ } else {
736
+ var tag = parser.tag
737
+ var parent = parser.tags[parser.tags.length - 1] || parser
738
+ if (tag.ns === parent.ns) {
739
+ tag.ns = Object.create(parent.ns)
740
+ }
741
+ tag.ns[local] = parser.attribValue
742
+ }
743
+ }
744
+
745
+ // defer onattribute events until all attributes have been seen
746
+ // so any new bindings can take effect. preserve attribute order
747
+ // so deferred events can be emitted in document order
748
+ parser.attribList.push([parser.attribName, parser.attribValue])
749
+ } else {
750
+ // in non-xmlns mode, we can emit the event right away
751
+ parser.tag.attributes[parser.attribName] = parser.attribValue
752
+ emitNode(parser, 'onattribute', {
753
+ name: parser.attribName,
754
+ value: parser.attribValue
755
+ })
756
+ }
757
+
758
+ parser.attribName = parser.attribValue = ''
759
+ }
760
+
761
+ function openTag (parser, selfClosing) {
762
+ if (parser.opt.xmlns) {
763
+ // emit namespace binding events
764
+ var tag = parser.tag
765
+
766
+ // add namespace info to tag
767
+ var qn = qname(parser.tagName)
768
+ tag.prefix = qn.prefix
769
+ tag.local = qn.local
770
+ tag.uri = tag.ns[qn.prefix] || ''
771
+
772
+ if (tag.prefix && !tag.uri) {
773
+ strictFail(parser, 'Unbound namespace prefix: ' +
774
+ JSON.stringify(parser.tagName))
775
+ tag.uri = qn.prefix
776
+ }
777
+
778
+ var parent = parser.tags[parser.tags.length - 1] || parser
779
+ if (tag.ns && parent.ns !== tag.ns) {
780
+ Object.keys(tag.ns).forEach(function (p) {
781
+ emitNode(parser, 'onopennamespace', {
782
+ prefix: p,
783
+ uri: tag.ns[p]
784
+ })
785
+ })
786
+ }
787
+
788
+ // handle deferred onattribute events
789
+ // Note: do not apply default ns to attributes:
790
+ // http://www.w3.org/TR/REC-xml-names/#defaulting
791
+ for (var i = 0, l = parser.attribList.length; i < l; i++) {
792
+ var nv = parser.attribList[i]
793
+ var name = nv[0]
794
+ var value = nv[1]
795
+ var qualName = qname(name, true)
796
+ var prefix = qualName.prefix
797
+ var local = qualName.local
798
+ var uri = prefix === '' ? '' : (tag.ns[prefix] || '')
799
+ var a = {
800
+ name: name,
801
+ value: value,
802
+ prefix: prefix,
803
+ local: local,
804
+ uri: uri
805
+ }
806
+
807
+ // if there's any attributes with an undefined namespace,
808
+ // then fail on them now.
809
+ if (prefix && prefix !== 'xmlns' && !uri) {
810
+ strictFail(parser, 'Unbound namespace prefix: ' +
811
+ JSON.stringify(prefix))
812
+ a.uri = prefix
813
+ }
814
+ parser.tag.attributes[name] = a
815
+ emitNode(parser, 'onattribute', a)
816
+ }
817
+ parser.attribList.length = 0
818
+ }
819
+
820
+ parser.tag.isSelfClosing = !!selfClosing
821
+
822
+ // process the tag
823
+ parser.sawRoot = true
824
+ parser.tags.push(parser.tag)
825
+ emitNode(parser, 'onopentag', parser.tag)
826
+ if (!selfClosing) {
827
+ // special case for <script> in non-strict mode.
828
+ if (!parser.noscript && parser.tagName.toLowerCase() === 'script') {
829
+ parser.state = S.SCRIPT
830
+ } else {
831
+ parser.state = S.TEXT
832
+ }
833
+ parser.tag = null
834
+ parser.tagName = ''
835
+ }
836
+ parser.attribName = parser.attribValue = ''
837
+ parser.attribList.length = 0
838
+ }
839
+
840
+ function closeTag (parser) {
841
+ if (!parser.tagName) {
842
+ strictFail(parser, 'Weird empty close tag.')
843
+ parser.textNode += '</>'
844
+ parser.state = S.TEXT
845
+ return
846
+ }
847
+
848
+ if (parser.script) {
849
+ if (parser.tagName !== 'script') {
850
+ parser.script += '</' + parser.tagName + '>'
851
+ parser.tagName = ''
852
+ parser.state = S.SCRIPT
853
+ return
854
+ }
855
+ emitNode(parser, 'onscript', parser.script)
856
+ parser.script = ''
857
+ }
858
+
859
+ // first make sure that the closing tag actually exists.
860
+ // <a><b></c></b></a> will close everything, otherwise.
861
+ var t = parser.tags.length
862
+ var tagName = parser.tagName
863
+ if (!parser.strict) {
864
+ tagName = tagName[parser.looseCase]()
865
+ }
866
+ var closeTo = tagName
867
+ while (t--) {
868
+ var close = parser.tags[t]
869
+ if (close.name !== closeTo) {
870
+ // fail the first time in strict mode
871
+ strictFail(parser, 'Unexpected close tag')
872
+ } else {
873
+ break
874
+ }
875
+ }
876
+
877
+ // didn't find it. we already failed for strict, so just abort.
878
+ if (t < 0) {
879
+ strictFail(parser, 'Unmatched closing tag: ' + parser.tagName)
880
+ parser.textNode += '</' + parser.tagName + '>'
881
+ parser.state = S.TEXT
882
+ return
883
+ }
884
+ parser.tagName = tagName
885
+ var s = parser.tags.length
886
+ while (s-- > t) {
887
+ var tag = parser.tag = parser.tags.pop()
888
+ parser.tagName = parser.tag.name
889
+ emitNode(parser, 'onclosetag', parser.tagName)
890
+
891
+ var x = {}
892
+ for (var i in tag.ns) {
893
+ x[i] = tag.ns[i]
894
+ }
895
+
896
+ var parent = parser.tags[parser.tags.length - 1] || parser
897
+ if (parser.opt.xmlns && tag.ns !== parent.ns) {
898
+ // remove namespace bindings introduced by tag
899
+ Object.keys(tag.ns).forEach(function (p) {
900
+ var n = tag.ns[p]
901
+ emitNode(parser, 'onclosenamespace', { prefix: p, uri: n })
902
+ })
903
+ }
904
+ }
905
+ if (t === 0) parser.closedRoot = true
906
+ parser.tagName = parser.attribValue = parser.attribName = ''
907
+ parser.attribList.length = 0
908
+ parser.state = S.TEXT
909
+ }
910
+
911
+ function parseEntity (parser) {
912
+ var entity = parser.entity
913
+ var entityLC = entity.toLowerCase()
914
+ var num
915
+ var numStr = ''
916
+
917
+ if (parser.ENTITIES[entity]) {
918
+ return parser.ENTITIES[entity]
919
+ }
920
+ if (parser.ENTITIES[entityLC]) {
921
+ return parser.ENTITIES[entityLC]
922
+ }
923
+ entity = entityLC
924
+ if (entity.charAt(0) === '#') {
925
+ if (entity.charAt(1) === 'x') {
926
+ entity = entity.slice(2)
927
+ num = parseInt(entity, 16)
928
+ numStr = num.toString(16)
929
+ } else {
930
+ entity = entity.slice(1)
931
+ num = parseInt(entity, 10)
932
+ numStr = num.toString(10)
933
+ }
934
+ }
935
+ entity = entity.replace(/^0+/, '')
936
+ if (isNaN(num) || numStr.toLowerCase() !== entity) {
937
+ strictFail(parser, 'Invalid character entity')
938
+ return '&' + parser.entity + ';'
939
+ }
940
+
941
+ return String.fromCodePoint(num)
942
+ }
943
+
944
+ function beginWhiteSpace (parser, c) {
945
+ if (c === '<') {
946
+ parser.state = S.OPEN_WAKA
947
+ parser.startTagPosition = parser.position
948
+ } else if (!isWhitespace(c)) {
949
+ // have to process this as a text node.
950
+ // weird, but happens.
951
+ strictFail(parser, 'Non-whitespace before first tag.')
952
+ parser.textNode = c
953
+ parser.state = S.TEXT
954
+ }
955
+ }
956
+
957
+ function charAt (chunk, i) {
958
+ var result = ''
959
+ if (i < chunk.length) {
960
+ result = chunk.charAt(i)
961
+ }
962
+ return result
963
+ }
964
+
965
+ function write (chunk) {
966
+ var parser = this
967
+ if (this.error) {
968
+ throw this.error
969
+ }
970
+ if (parser.closed) {
971
+ return error(parser,
972
+ 'Cannot write after close. Assign an onready handler.')
973
+ }
974
+ if (chunk === null) {
975
+ return end(parser)
976
+ }
977
+ if (typeof chunk === 'object') {
978
+ chunk = chunk.toString()
979
+ }
980
+ var i = 0
981
+ var c = ''
982
+ while (true) {
983
+ c = charAt(chunk, i++)
984
+ parser.c = c
985
+
986
+ if (!c) {
987
+ break
988
+ }
989
+
990
+ if (parser.trackPosition) {
991
+ parser.position++
992
+ if (c === '\n') {
993
+ parser.line++
994
+ parser.column = 0
995
+ } else {
996
+ parser.column++
997
+ }
998
+ }
999
+
1000
+ switch (parser.state) {
1001
+ case S.BEGIN:
1002
+ parser.state = S.BEGIN_WHITESPACE
1003
+ if (c === '\uFEFF') {
1004
+ continue
1005
+ }
1006
+ beginWhiteSpace(parser, c)
1007
+ continue
1008
+
1009
+ case S.BEGIN_WHITESPACE:
1010
+ beginWhiteSpace(parser, c)
1011
+ continue
1012
+
1013
+ case S.TEXT:
1014
+ if (parser.sawRoot && !parser.closedRoot) {
1015
+ var starti = i - 1
1016
+ while (c && c !== '<' && c !== '&') {
1017
+ c = charAt(chunk, i++)
1018
+ if (c && parser.trackPosition) {
1019
+ parser.position++
1020
+ if (c === '\n') {
1021
+ parser.line++
1022
+ parser.column = 0
1023
+ } else {
1024
+ parser.column++
1025
+ }
1026
+ }
1027
+ }
1028
+ parser.textNode += chunk.substring(starti, i - 1)
1029
+ }
1030
+ if (c === '<' && !(parser.sawRoot && parser.closedRoot && !parser.strict)) {
1031
+ parser.state = S.OPEN_WAKA
1032
+ parser.startTagPosition = parser.position
1033
+ } else {
1034
+ if (!isWhitespace(c) && (!parser.sawRoot || parser.closedRoot)) {
1035
+ strictFail(parser, 'Text data outside of root node.')
1036
+ }
1037
+ if (c === '&') {
1038
+ parser.state = S.TEXT_ENTITY
1039
+ } else {
1040
+ parser.textNode += c
1041
+ }
1042
+ }
1043
+ continue
1044
+
1045
+ case S.SCRIPT:
1046
+ // only non-strict
1047
+ if (c === '<') {
1048
+ parser.state = S.SCRIPT_ENDING
1049
+ } else {
1050
+ parser.script += c
1051
+ }
1052
+ continue
1053
+
1054
+ case S.SCRIPT_ENDING:
1055
+ if (c === '/') {
1056
+ parser.state = S.CLOSE_TAG
1057
+ } else {
1058
+ parser.script += '<' + c
1059
+ parser.state = S.SCRIPT
1060
+ }
1061
+ continue
1062
+
1063
+ case S.OPEN_WAKA:
1064
+ // either a /, ?, !, or text is coming next.
1065
+ if (c === '!') {
1066
+ parser.state = S.SGML_DECL
1067
+ parser.sgmlDecl = ''
1068
+ } else if (isWhitespace(c)) {
1069
+ // wait for it...
1070
+ } else if (isMatch(nameStart, c)) {
1071
+ parser.state = S.OPEN_TAG
1072
+ parser.tagName = c
1073
+ } else if (c === '/') {
1074
+ parser.state = S.CLOSE_TAG
1075
+ parser.tagName = ''
1076
+ } else if (c === '?') {
1077
+ parser.state = S.PROC_INST
1078
+ parser.procInstName = parser.procInstBody = ''
1079
+ } else {
1080
+ strictFail(parser, 'Unencoded <')
1081
+ // if there was some whitespace, then add that in.
1082
+ if (parser.startTagPosition + 1 < parser.position) {
1083
+ var pad = parser.position - parser.startTagPosition
1084
+ c = new Array(pad).join(' ') + c
1085
+ }
1086
+ parser.textNode += '<' + c
1087
+ parser.state = S.TEXT
1088
+ }
1089
+ continue
1090
+
1091
+ case S.SGML_DECL:
1092
+ if ((parser.sgmlDecl + c).toUpperCase() === CDATA) {
1093
+ emitNode(parser, 'onopencdata')
1094
+ parser.state = S.CDATA
1095
+ parser.sgmlDecl = ''
1096
+ parser.cdata = ''
1097
+ } else if (parser.sgmlDecl + c === '--') {
1098
+ parser.state = S.COMMENT
1099
+ parser.comment = ''
1100
+ parser.sgmlDecl = ''
1101
+ } else if ((parser.sgmlDecl + c).toUpperCase() === DOCTYPE) {
1102
+ parser.state = S.DOCTYPE
1103
+ if (parser.doctype || parser.sawRoot) {
1104
+ strictFail(parser,
1105
+ 'Inappropriately located doctype declaration')
1106
+ }
1107
+ parser.doctype = ''
1108
+ parser.sgmlDecl = ''
1109
+ } else if (c === '>') {
1110
+ emitNode(parser, 'onsgmldeclaration', parser.sgmlDecl)
1111
+ parser.sgmlDecl = ''
1112
+ parser.state = S.TEXT
1113
+ } else if (isQuote(c)) {
1114
+ parser.state = S.SGML_DECL_QUOTED
1115
+ parser.sgmlDecl += c
1116
+ } else {
1117
+ parser.sgmlDecl += c
1118
+ }
1119
+ continue
1120
+
1121
+ case S.SGML_DECL_QUOTED:
1122
+ if (c === parser.q) {
1123
+ parser.state = S.SGML_DECL
1124
+ parser.q = ''
1125
+ }
1126
+ parser.sgmlDecl += c
1127
+ continue
1128
+
1129
+ case S.DOCTYPE:
1130
+ if (c === '>') {
1131
+ parser.state = S.TEXT
1132
+ emitNode(parser, 'ondoctype', parser.doctype)
1133
+ parser.doctype = true // just remember that we saw it.
1134
+ } else {
1135
+ parser.doctype += c
1136
+ if (c === '[') {
1137
+ parser.state = S.DOCTYPE_DTD
1138
+ } else if (isQuote(c)) {
1139
+ parser.state = S.DOCTYPE_QUOTED
1140
+ parser.q = c
1141
+ }
1142
+ }
1143
+ continue
1144
+
1145
+ case S.DOCTYPE_QUOTED:
1146
+ parser.doctype += c
1147
+ if (c === parser.q) {
1148
+ parser.q = ''
1149
+ parser.state = S.DOCTYPE
1150
+ }
1151
+ continue
1152
+
1153
+ case S.DOCTYPE_DTD:
1154
+ parser.doctype += c
1155
+ if (c === ']') {
1156
+ parser.state = S.DOCTYPE
1157
+ } else if (isQuote(c)) {
1158
+ parser.state = S.DOCTYPE_DTD_QUOTED
1159
+ parser.q = c
1160
+ }
1161
+ continue
1162
+
1163
+ case S.DOCTYPE_DTD_QUOTED:
1164
+ parser.doctype += c
1165
+ if (c === parser.q) {
1166
+ parser.state = S.DOCTYPE_DTD
1167
+ parser.q = ''
1168
+ }
1169
+ continue
1170
+
1171
+ case S.COMMENT:
1172
+ if (c === '-') {
1173
+ parser.state = S.COMMENT_ENDING
1174
+ } else {
1175
+ parser.comment += c
1176
+ }
1177
+ continue
1178
+
1179
+ case S.COMMENT_ENDING:
1180
+ if (c === '-') {
1181
+ parser.state = S.COMMENT_ENDED
1182
+ parser.comment = textopts(parser.opt, parser.comment)
1183
+ if (parser.comment) {
1184
+ emitNode(parser, 'oncomment', parser.comment)
1185
+ }
1186
+ parser.comment = ''
1187
+ } else {
1188
+ parser.comment += '-' + c
1189
+ parser.state = S.COMMENT
1190
+ }
1191
+ continue
1192
+
1193
+ case S.COMMENT_ENDED:
1194
+ if (c !== '>') {
1195
+ strictFail(parser, 'Malformed comment')
1196
+ // allow <!-- blah -- bloo --> in non-strict mode,
1197
+ // which is a comment of " blah -- bloo "
1198
+ parser.comment += '--' + c
1199
+ parser.state = S.COMMENT
1200
+ } else {
1201
+ parser.state = S.TEXT
1202
+ }
1203
+ continue
1204
+
1205
+ case S.CDATA:
1206
+ if (c === ']') {
1207
+ parser.state = S.CDATA_ENDING
1208
+ } else {
1209
+ parser.cdata += c
1210
+ }
1211
+ continue
1212
+
1213
+ case S.CDATA_ENDING:
1214
+ if (c === ']') {
1215
+ parser.state = S.CDATA_ENDING_2
1216
+ } else {
1217
+ parser.cdata += ']' + c
1218
+ parser.state = S.CDATA
1219
+ }
1220
+ continue
1221
+
1222
+ case S.CDATA_ENDING_2:
1223
+ if (c === '>') {
1224
+ if (parser.cdata) {
1225
+ emitNode(parser, 'oncdata', parser.cdata)
1226
+ }
1227
+ emitNode(parser, 'onclosecdata')
1228
+ parser.cdata = ''
1229
+ parser.state = S.TEXT
1230
+ } else if (c === ']') {
1231
+ parser.cdata += ']'
1232
+ } else {
1233
+ parser.cdata += ']]' + c
1234
+ parser.state = S.CDATA
1235
+ }
1236
+ continue
1237
+
1238
+ case S.PROC_INST:
1239
+ if (c === '?') {
1240
+ parser.state = S.PROC_INST_ENDING
1241
+ } else if (isWhitespace(c)) {
1242
+ parser.state = S.PROC_INST_BODY
1243
+ } else {
1244
+ parser.procInstName += c
1245
+ }
1246
+ continue
1247
+
1248
+ case S.PROC_INST_BODY:
1249
+ if (!parser.procInstBody && isWhitespace(c)) {
1250
+ continue
1251
+ } else if (c === '?') {
1252
+ parser.state = S.PROC_INST_ENDING
1253
+ } else {
1254
+ parser.procInstBody += c
1255
+ }
1256
+ continue
1257
+
1258
+ case S.PROC_INST_ENDING:
1259
+ if (c === '>') {
1260
+ emitNode(parser, 'onprocessinginstruction', {
1261
+ name: parser.procInstName,
1262
+ body: parser.procInstBody
1263
+ })
1264
+ parser.procInstName = parser.procInstBody = ''
1265
+ parser.state = S.TEXT
1266
+ } else {
1267
+ parser.procInstBody += '?' + c
1268
+ parser.state = S.PROC_INST_BODY
1269
+ }
1270
+ continue
1271
+
1272
+ case S.OPEN_TAG:
1273
+ if (isMatch(nameBody, c)) {
1274
+ parser.tagName += c
1275
+ } else {
1276
+ newTag(parser)
1277
+ if (c === '>') {
1278
+ openTag(parser)
1279
+ } else if (c === '/') {
1280
+ parser.state = S.OPEN_TAG_SLASH
1281
+ } else {
1282
+ if (!isWhitespace(c)) {
1283
+ strictFail(parser, 'Invalid character in tag name')
1284
+ }
1285
+ parser.state = S.ATTRIB
1286
+ }
1287
+ }
1288
+ continue
1289
+
1290
+ case S.OPEN_TAG_SLASH:
1291
+ if (c === '>') {
1292
+ openTag(parser, true)
1293
+ closeTag(parser)
1294
+ } else {
1295
+ strictFail(parser, 'Forward-slash in opening tag not followed by >')
1296
+ parser.state = S.ATTRIB
1297
+ }
1298
+ continue
1299
+
1300
+ case S.ATTRIB:
1301
+ // haven't read the attribute name yet.
1302
+ if (isWhitespace(c)) {
1303
+ continue
1304
+ } else if (c === '>') {
1305
+ openTag(parser)
1306
+ } else if (c === '/') {
1307
+ parser.state = S.OPEN_TAG_SLASH
1308
+ } else if (isMatch(nameStart, c)) {
1309
+ parser.attribName = c
1310
+ parser.attribValue = ''
1311
+ parser.state = S.ATTRIB_NAME
1312
+ } else {
1313
+ strictFail(parser, 'Invalid attribute name')
1314
+ }
1315
+ continue
1316
+
1317
+ case S.ATTRIB_NAME:
1318
+ if (c === '=') {
1319
+ parser.state = S.ATTRIB_VALUE
1320
+ } else if (c === '>') {
1321
+ strictFail(parser, 'Attribute without value')
1322
+ parser.attribValue = parser.attribName
1323
+ attrib(parser)
1324
+ openTag(parser)
1325
+ } else if (isWhitespace(c)) {
1326
+ parser.state = S.ATTRIB_NAME_SAW_WHITE
1327
+ } else if (isMatch(nameBody, c)) {
1328
+ parser.attribName += c
1329
+ } else {
1330
+ strictFail(parser, 'Invalid attribute name')
1331
+ }
1332
+ continue
1333
+
1334
+ case S.ATTRIB_NAME_SAW_WHITE:
1335
+ if (c === '=') {
1336
+ parser.state = S.ATTRIB_VALUE
1337
+ } else if (isWhitespace(c)) {
1338
+ continue
1339
+ } else {
1340
+ strictFail(parser, 'Attribute without value')
1341
+ parser.tag.attributes[parser.attribName] = ''
1342
+ parser.attribValue = ''
1343
+ emitNode(parser, 'onattribute', {
1344
+ name: parser.attribName,
1345
+ value: ''
1346
+ })
1347
+ parser.attribName = ''
1348
+ if (c === '>') {
1349
+ openTag(parser)
1350
+ } else if (isMatch(nameStart, c)) {
1351
+ parser.attribName = c
1352
+ parser.state = S.ATTRIB_NAME
1353
+ } else {
1354
+ strictFail(parser, 'Invalid attribute name')
1355
+ parser.state = S.ATTRIB
1356
+ }
1357
+ }
1358
+ continue
1359
+
1360
+ case S.ATTRIB_VALUE:
1361
+ if (isWhitespace(c)) {
1362
+ continue
1363
+ } else if (isQuote(c)) {
1364
+ parser.q = c
1365
+ parser.state = S.ATTRIB_VALUE_QUOTED
1366
+ } else {
1367
+ strictFail(parser, 'Unquoted attribute value')
1368
+ parser.state = S.ATTRIB_VALUE_UNQUOTED
1369
+ parser.attribValue = c
1370
+ }
1371
+ continue
1372
+
1373
+ case S.ATTRIB_VALUE_QUOTED:
1374
+ if (c !== parser.q) {
1375
+ if (c === '&') {
1376
+ parser.state = S.ATTRIB_VALUE_ENTITY_Q
1377
+ } else {
1378
+ parser.attribValue += c
1379
+ }
1380
+ continue
1381
+ }
1382
+ attrib(parser)
1383
+ parser.q = ''
1384
+ parser.state = S.ATTRIB_VALUE_CLOSED
1385
+ continue
1386
+
1387
+ case S.ATTRIB_VALUE_CLOSED:
1388
+ if (isWhitespace(c)) {
1389
+ parser.state = S.ATTRIB
1390
+ } else if (c === '>') {
1391
+ openTag(parser)
1392
+ } else if (c === '/') {
1393
+ parser.state = S.OPEN_TAG_SLASH
1394
+ } else if (isMatch(nameStart, c)) {
1395
+ strictFail(parser, 'No whitespace between attributes')
1396
+ parser.attribName = c
1397
+ parser.attribValue = ''
1398
+ parser.state = S.ATTRIB_NAME
1399
+ } else {
1400
+ strictFail(parser, 'Invalid attribute name')
1401
+ }
1402
+ continue
1403
+
1404
+ case S.ATTRIB_VALUE_UNQUOTED:
1405
+ if (!isAttribEnd(c)) {
1406
+ if (c === '&') {
1407
+ parser.state = S.ATTRIB_VALUE_ENTITY_U
1408
+ } else {
1409
+ parser.attribValue += c
1410
+ }
1411
+ continue
1412
+ }
1413
+ attrib(parser)
1414
+ if (c === '>') {
1415
+ openTag(parser)
1416
+ } else {
1417
+ parser.state = S.ATTRIB
1418
+ }
1419
+ continue
1420
+
1421
+ case S.CLOSE_TAG:
1422
+ if (!parser.tagName) {
1423
+ if (isWhitespace(c)) {
1424
+ continue
1425
+ } else if (notMatch(nameStart, c)) {
1426
+ if (parser.script) {
1427
+ parser.script += '</' + c
1428
+ parser.state = S.SCRIPT
1429
+ } else {
1430
+ strictFail(parser, 'Invalid tagname in closing tag.')
1431
+ }
1432
+ } else {
1433
+ parser.tagName = c
1434
+ }
1435
+ } else if (c === '>') {
1436
+ closeTag(parser)
1437
+ } else if (isMatch(nameBody, c)) {
1438
+ parser.tagName += c
1439
+ } else if (parser.script) {
1440
+ parser.script += '</' + parser.tagName
1441
+ parser.tagName = ''
1442
+ parser.state = S.SCRIPT
1443
+ } else {
1444
+ if (!isWhitespace(c)) {
1445
+ strictFail(parser, 'Invalid tagname in closing tag')
1446
+ }
1447
+ parser.state = S.CLOSE_TAG_SAW_WHITE
1448
+ }
1449
+ continue
1450
+
1451
+ case S.CLOSE_TAG_SAW_WHITE:
1452
+ if (isWhitespace(c)) {
1453
+ continue
1454
+ }
1455
+ if (c === '>') {
1456
+ closeTag(parser)
1457
+ } else {
1458
+ strictFail(parser, 'Invalid characters in closing tag')
1459
+ }
1460
+ continue
1461
+
1462
+ case S.TEXT_ENTITY:
1463
+ case S.ATTRIB_VALUE_ENTITY_Q:
1464
+ case S.ATTRIB_VALUE_ENTITY_U:
1465
+ var returnState
1466
+ var buffer
1467
+ switch (parser.state) {
1468
+ case S.TEXT_ENTITY:
1469
+ returnState = S.TEXT
1470
+ buffer = 'textNode'
1471
+ break
1472
+
1473
+ case S.ATTRIB_VALUE_ENTITY_Q:
1474
+ returnState = S.ATTRIB_VALUE_QUOTED
1475
+ buffer = 'attribValue'
1476
+ break
1477
+
1478
+ case S.ATTRIB_VALUE_ENTITY_U:
1479
+ returnState = S.ATTRIB_VALUE_UNQUOTED
1480
+ buffer = 'attribValue'
1481
+ break
1482
+ }
1483
+
1484
+ if (c === ';') {
1485
+ parser[buffer] += parseEntity(parser)
1486
+ parser.entity = ''
1487
+ parser.state = returnState
1488
+ } else if (isMatch(parser.entity.length ? entityBody : entityStart, c)) {
1489
+ parser.entity += c
1490
+ } else {
1491
+ strictFail(parser, 'Invalid character in entity name')
1492
+ parser[buffer] += '&' + parser.entity + c
1493
+ parser.entity = ''
1494
+ parser.state = returnState
1495
+ }
1496
+
1497
+ continue
1498
+
1499
+ default:
1500
+ throw new Error(parser, 'Unknown state: ' + parser.state)
1501
+ }
1502
+ } // while
1503
+
1504
+ if (parser.position >= parser.bufferCheckPosition) {
1505
+ checkBufferLength(parser)
1506
+ }
1507
+ return parser
1508
+ }
1509
+
1510
+ /*! http://mths.be/fromcodepoint v0.1.0 by @mathias */
1511
+ /* istanbul ignore next */
1512
+ if (!String.fromCodePoint) {
1513
+ (function () {
1514
+ var stringFromCharCode = String.fromCharCode
1515
+ var floor = Math.floor
1516
+ var fromCodePoint = function () {
1517
+ var MAX_SIZE = 0x4000
1518
+ var codeUnits = []
1519
+ var highSurrogate
1520
+ var lowSurrogate
1521
+ var index = -1
1522
+ var length = arguments.length
1523
+ if (!length) {
1524
+ return ''
1525
+ }
1526
+ var result = ''
1527
+ while (++index < length) {
1528
+ var codePoint = Number(arguments[index])
1529
+ if (
1530
+ !isFinite(codePoint) || // `NaN`, `+Infinity`, or `-Infinity`
1531
+ codePoint < 0 || // not a valid Unicode code point
1532
+ codePoint > 0x10FFFF || // not a valid Unicode code point
1533
+ floor(codePoint) !== codePoint // not an integer
1534
+ ) {
1535
+ throw RangeError('Invalid code point: ' + codePoint)
1536
+ }
1537
+ if (codePoint <= 0xFFFF) { // BMP code point
1538
+ codeUnits.push(codePoint)
1539
+ } else { // Astral code point; split in surrogate halves
1540
+ // http://mathiasbynens.be/notes/javascript-encoding#surrogate-formulae
1541
+ codePoint -= 0x10000
1542
+ highSurrogate = (codePoint >> 10) + 0xD800
1543
+ lowSurrogate = (codePoint % 0x400) + 0xDC00
1544
+ codeUnits.push(highSurrogate, lowSurrogate)
1545
+ }
1546
+ if (index + 1 === length || codeUnits.length > MAX_SIZE) {
1547
+ result += stringFromCharCode.apply(null, codeUnits)
1548
+ codeUnits.length = 0
1549
+ }
1550
+ }
1551
+ return result
1552
+ }
1553
+ /* istanbul ignore next */
1554
+ if (Object.defineProperty) {
1555
+ Object.defineProperty(String, 'fromCodePoint', {
1556
+ value: fromCodePoint,
1557
+ configurable: true,
1558
+ writable: true
1559
+ })
1560
+ } else {
1561
+ String.fromCodePoint = fromCodePoint
1562
+ }
1563
+ }())
1564
+ }
1565
+ })(typeof exports === 'undefined' ? this.sax = {} : exports)