@corellium/corellium-cli 1.0.3 → 1.0.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.
- package/README.md +4 -16
- package/example/WebPlayerSample.js +93 -37
- package/jenkinsbuild/build.sh +1 -1
- package/node_modules/@babel/cli/node_modules/commander/package.json +27 -58
- package/node_modules/@babel/cli/node_modules/make-dir/package.json +62 -93
- package/node_modules/@babel/cli/node_modules/pify/package.json +54 -85
- package/node_modules/@babel/cli/node_modules/semver/package.json +20 -51
- package/node_modules/@babel/cli/node_modules/slash/package.json +37 -68
- package/node_modules/@babel/cli/package.json +37 -69
- package/node_modules/@corellium/client-api/package.json +15 -40
- package/node_modules/@jridgewell/resolve-uri/package.json +40 -75
- package/node_modules/@jridgewell/sourcemap-codec/package.json +43 -74
- package/node_modules/@jridgewell/trace-mapping/package.json +40 -72
- package/node_modules/@mapbox/node-pre-gyp/package.json +27 -61
- package/node_modules/@nicolo-ribaudo/chokidar-2/package.json +22 -55
- package/node_modules/abbrev/package.json +18 -52
- package/node_modules/agent-base/package.json +33 -62
- package/node_modules/ansi-regex/package.json +58 -89
- package/node_modules/ansi-styles/package.json +59 -95
- package/node_modules/anymatch/package.json +28 -56
- package/node_modules/aproba/package.json +23 -50
- package/node_modules/are-we-there-yet/node_modules/readable-stream/package.json +32 -60
- package/node_modules/are-we-there-yet/package.json +32 -62
- package/node_modules/ascii-art/package.json +51 -83
- package/node_modules/ascii-art-ansi/package.json +30 -61
- package/node_modules/ascii-art-braille/package.json +7 -32
- package/node_modules/ascii-art-font/package.json +17 -47
- package/node_modules/ascii-art-graph/package.json +10 -34
- package/node_modules/ascii-art-image/node_modules/ascii-art-braille/package.json +7 -32
- package/node_modules/ascii-art-image/package.json +11 -36
- package/node_modules/ascii-art-table/package.json +10 -35
- package/node_modules/ascii-art-utf/package.json +18 -47
- package/node_modules/async/package.json +29 -55
- package/node_modules/async-arrays/package.json +34 -62
- package/node_modules/asynckit/package.json +45 -74
- package/node_modules/axios/package.json +46 -72
- package/node_modules/balanced-match/package.json +22 -49
- package/node_modules/binary-extensions/package.json +41 -73
- package/node_modules/brace-expansion/package.json +23 -50
- package/node_modules/braces/package.json +30 -76
- package/node_modules/call-bind/package.json +83 -125
- package/node_modules/canvas/package.json +43 -86
- package/node_modules/chokidar/package.json +40 -74
- package/node_modules/chownr/package.json +24 -56
- package/node_modules/cli/package.json +23 -70
- package/node_modules/cliui/package.json +53 -87
- package/node_modules/color/node_modules/color-convert/package.json +26 -60
- package/node_modules/color/node_modules/color-name/package.json +18 -45
- package/node_modules/color/package.json +26 -57
- package/node_modules/color-convert/package.json +25 -59
- package/node_modules/color-difference/package.json +26 -52
- package/node_modules/color-model/package.json +17 -44
- package/node_modules/color-name/package.json +32 -60
- package/node_modules/color-string/package.json +26 -67
- package/node_modules/color-support/package.json +26 -60
- package/node_modules/combined-stream/package.json +19 -52
- package/node_modules/component-emitter/package.json +17 -45
- package/node_modules/concat-map/package.json +45 -89
- package/node_modules/console-control-strings/package.json +22 -55
- package/node_modules/convert-source-map/package.json +28 -55
- package/node_modules/cookiejar/package.json +16 -44
- package/node_modules/core-util-is/package.json +21 -51
- package/node_modules/d3/package.json +43 -70
- package/node_modules/d3-array/package.json +24 -55
- package/node_modules/d3-axis/package.json +27 -54
- package/node_modules/d3-brush/package.json +33 -60
- package/node_modules/d3-chord/package.json +28 -55
- package/node_modules/d3-collection/package.json +25 -54
- package/node_modules/d3-color/package.json +2 -2
- package/node_modules/d3-contour/package.json +27 -54
- package/node_modules/d3-dispatch/package.json +28 -60
- package/node_modules/d3-drag/package.json +32 -61
- package/node_modules/d3-dsv/node_modules/commander/package.json +25 -56
- package/node_modules/d3-dsv/package.json +36 -64
- package/node_modules/d3-ease/package.json +28 -56
- package/node_modules/d3-fetch/package.json +31 -58
- package/node_modules/d3-force/package.json +30 -57
- package/node_modules/d3-format/package.json +29 -57
- package/node_modules/d3-geo/package.json +35 -62
- package/node_modules/d3-hierarchy/package.json +33 -60
- package/node_modules/d3-interpolate/package.json +31 -63
- package/node_modules/d3-path/package.json +28 -57
- package/node_modules/d3-polygon/package.json +28 -55
- package/node_modules/d3-quadtree/package.json +29 -57
- package/node_modules/d3-random/package.json +26 -53
- package/node_modules/d3-scale/package.json +29 -56
- package/node_modules/d3-scale-chromatic/package.json +33 -60
- package/node_modules/d3-selection/package.json +29 -60
- package/node_modules/d3-shape/package.json +32 -59
- package/node_modules/d3-time/package.json +28 -57
- package/node_modules/d3-time-format/package.json +33 -61
- package/node_modules/d3-timer/package.json +28 -57
- package/node_modules/d3-transition/package.json +35 -64
- package/node_modules/d3-voronoi/package.json +24 -51
- package/node_modules/d3-zoom/package.json +34 -61
- package/node_modules/debug/package.json +37 -87
- package/node_modules/decompress-response/package.json +53 -84
- package/node_modules/delayed-stream/package.json +19 -53
- package/node_modules/delegates/package.json +11 -45
- package/node_modules/detect-libc/package.json +26 -60
- package/node_modules/dirname-shim/package.json +26 -60
- package/node_modules/dotenv/package.json +37 -64
- package/node_modules/duplexer/package.json +18 -49
- package/node_modules/emoji-regex/package.json +32 -58
- package/node_modules/escalade/package.json +28 -59
- package/node_modules/extended-emitter/package.json +37 -65
- package/node_modules/fast-safe-stringify/package.json +33 -73
- package/node_modules/fill-range/package.json +28 -72
- package/node_modules/follow-redirects/package.json +42 -77
- package/node_modules/form-data/package.json +42 -74
- package/node_modules/formidable/package.json +22 -52
- package/node_modules/fs-minipass/package.json +24 -52
- package/node_modules/fs-readdir-recursive/package.json +20 -50
- package/node_modules/fs.realpath/package.json +21 -53
- package/node_modules/fsevents/package.json +38 -63
- package/node_modules/ftp-response-parser/node_modules/isarray/package.json +22 -54
- package/node_modules/ftp-response-parser/node_modules/readable-stream/package.json +22 -55
- package/node_modules/ftp-response-parser/node_modules/string_decoder/package.json +17 -45
- package/node_modules/ftp-response-parser/package.json +23 -64
- package/node_modules/function-bind/package.json +28 -61
- package/node_modules/gauge/package.json +25 -52
- package/node_modules/generate-password/package.json +28 -54
- package/node_modules/get-caller-file/package.json +27 -53
- package/node_modules/get-intrinsic/package.json +91 -124
- package/node_modules/glob/package.json +34 -68
- package/node_modules/glob-parent/package.json +27 -70
- package/node_modules/has/package.json +26 -55
- package/node_modules/has-symbols/package.json +104 -133
- package/node_modules/has-unicode/package.json +25 -52
- package/node_modules/https-proxy-agent/package.json +30 -59
- package/node_modules/iconv-lite/package.json +48 -77
- package/node_modules/inflight/package.json +20 -48
- package/node_modules/inherits/package.json +17 -54
- package/node_modules/is-binary-path/package.json +43 -75
- package/node_modules/is-extglob/package.json +22 -52
- package/node_modules/is-fullwidth-code-point/package.json +45 -79
- package/node_modules/is-glob/package.json +26 -68
- package/node_modules/is-number/package.json +26 -65
- package/node_modules/jsftp/node_modules/debug/package.json +28 -67
- package/node_modules/jsftp/package.json +22 -59
- package/node_modules/json2csv/node_modules/commander/package.json +25 -56
- package/node_modules/json2csv/package.json +37 -64
- package/node_modules/jsonparse/package.json +18 -53
- package/node_modules/lodash/package.json +15 -61
- package/node_modules/lodash.get/package.json +16 -67
- package/node_modules/lru-cache/package.json +27 -61
- package/node_modules/make-dir/node_modules/semver/package.json +20 -51
- package/node_modules/make-dir/package.json +62 -93
- package/node_modules/maplex/package.json +22 -54
- package/node_modules/methods/package.json +22 -64
- package/node_modules/mime/package.json +20 -48
- package/node_modules/mime-db/package.json +25 -67
- package/node_modules/mime-types/package.json +20 -64
- package/node_modules/mimic-response/package.json +45 -76
- package/node_modules/minimatch/package.json +25 -61
- package/node_modules/minipass/package.json +30 -64
- package/node_modules/minizlib/package.json +27 -59
- package/node_modules/mkdirp/package.json +27 -57
- package/node_modules/ms/package.json +24 -58
- package/node_modules/multi-progress/package.json +20 -46
- package/node_modules/nan/package.json +27 -87
- package/node_modules/node-fetch/package.json +77 -104
- package/node_modules/nopt/package.json +22 -54
- package/node_modules/normalize-path/package.json +25 -63
- package/node_modules/npmlog/package.json +23 -55
- package/node_modules/object-assign/package.json +20 -51
- package/node_modules/object-inspect/package.json +53 -81
- package/node_modules/once/package.json +19 -56
- package/node_modules/parse-listing/package.json +27 -56
- package/node_modules/path-is-absolute/package.json +16 -47
- package/node_modules/picomatch/package.json +28 -60
- package/node_modules/progress/package.json +21 -65
- package/node_modules/qs/package.json +78 -105
- package/node_modules/readdirp/package.json +47 -83
- package/node_modules/require-directory/package.json +29 -57
- package/node_modules/rimraf/package.json +23 -61
- package/node_modules/rw/package.json +19 -46
- package/node_modules/safe-buffer/package.json +10 -38
- package/node_modules/safer-buffer/package.json +18 -43
- package/node_modules/semver/package.json +36 -70
- package/node_modules/set-blocking/package.json +29 -56
- package/node_modules/side-channel/package.json +70 -98
- package/node_modules/sift/package.json +30 -62
- package/node_modules/signal-exit/package.json +29 -58
- package/node_modules/simple-concat/package.json +22 -46
- package/node_modules/simple-get/package.json +9 -33
- package/node_modules/simple-swizzle/node_modules/is-arrayish/package.json +28 -59
- package/node_modules/simple-swizzle/package.json +23 -57
- package/node_modules/strangler/package.json +39 -67
- package/node_modules/stream-combiner/package.json +15 -48
- package/node_modules/string-tools/package.json +16 -50
- package/node_modules/string-width/package.json +59 -97
- package/node_modules/string_decoder/package.json +18 -47
- package/node_modules/strip-ansi/package.json +57 -94
- package/node_modules/superagent/node_modules/form-data/package.json +42 -74
- package/node_modules/superagent/node_modules/readable-stream/package.json +32 -60
- package/node_modules/superagent/package.json +13 -59
- package/node_modules/tar/package.json +27 -59
- package/node_modules/through/package.json +17 -50
- package/node_modules/to-regex-range/package.json +25 -61
- package/node_modules/tr46/package.json +24 -51
- package/node_modules/unorm/package.json +34 -75
- package/node_modules/util-deprecate/package.json +19 -49
- package/node_modules/uuid/package.json +74 -102
- package/node_modules/webidl-conversions/package.json +18 -53
- package/node_modules/whatwg-url/package.json +15 -49
- package/node_modules/wide-align/package.json +21 -53
- package/node_modules/wolfy87-eventemitter/package.json +25 -49
- package/node_modules/wrap-ansi/package.json +65 -97
- package/node_modules/wrappy/package.json +21 -50
- package/node_modules/y18n/package.json +43 -73
- package/node_modules/yallist/package.json +20 -55
- package/node_modules/yargs/package.json +72 -99
- package/node_modules/yargs-parser/package.json +52 -83
- package/package.json +2 -3
- package/src/TrialAccount.js +76 -0
- package/src/commands/agent/Agent.js +10 -19
- package/src/commands/agent/index.js +1 -0
- package/src/commands/agent/ready.js +42 -0
- package/src/commands/instances/list.js +8 -3
- package/src/commands/signup.js +14 -5
- package/src/commands/webplayer/WebPlayer.js +2 -1
- package/src/commands/webplayer/create.js +6 -0
- package/src/commands/webplayer/list.js +17 -16
- package/src/logging.js +1 -1
- package/src/profile.js +12 -9
- package/src/resumable.js +1314 -0
- package/src/table.js +7 -2
- package/src/upload.js +64 -2
- package/test/test.js +89 -0
- package/node_modules/@corellium/corellium-api/README.md +0 -1210
- package/node_modules/@corellium/corellium-api/node_modules/form-data/License +0 -19
- package/node_modules/@corellium/corellium-api/node_modules/form-data/README.md.bak +0 -356
- package/node_modules/@corellium/corellium-api/node_modules/form-data/Readme.md +0 -356
- package/node_modules/@corellium/corellium-api/node_modules/form-data/index.d.ts +0 -62
- package/node_modules/@corellium/corellium-api/node_modules/form-data/lib/browser.js +0 -2
- package/node_modules/@corellium/corellium-api/node_modules/form-data/lib/form_data.js +0 -498
- package/node_modules/@corellium/corellium-api/node_modules/form-data/lib/populate.js +0 -10
- package/node_modules/@corellium/corellium-api/node_modules/form-data/package.json +0 -104
- package/node_modules/@corellium/corellium-api/node_modules/uuid/AUTHORS +0 -5
- package/node_modules/@corellium/corellium-api/node_modules/uuid/CHANGELOG.md +0 -119
- package/node_modules/@corellium/corellium-api/node_modules/uuid/LICENSE.md +0 -21
- package/node_modules/@corellium/corellium-api/node_modules/uuid/README.md +0 -276
- package/node_modules/@corellium/corellium-api/node_modules/uuid/bin/uuid +0 -65
- package/node_modules/@corellium/corellium-api/node_modules/uuid/index.js +0 -8
- package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/bytesToUuid.js +0 -26
- package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/md5-browser.js +0 -216
- package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/md5.js +0 -25
- package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/rng-browser.js +0 -34
- package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/rng.js +0 -8
- package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/sha1-browser.js +0 -89
- package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/sha1.js +0 -25
- package/node_modules/@corellium/corellium-api/node_modules/uuid/lib/v35.js +0 -57
- package/node_modules/@corellium/corellium-api/node_modules/uuid/package.json +0 -103
- package/node_modules/@corellium/corellium-api/node_modules/uuid/v1.js +0 -109
- package/node_modules/@corellium/corellium-api/node_modules/uuid/v3.js +0 -4
- package/node_modules/@corellium/corellium-api/node_modules/uuid/v4.js +0 -29
- package/node_modules/@corellium/corellium-api/node_modules/uuid/v5.js +0 -3
- package/node_modules/@corellium/corellium-api/package.json +0 -106
- package/node_modules/@corellium/corellium-api/resumable.js +0 -1312
- package/node_modules/@corellium/corellium-api/src/agent.js +0 -962
- package/node_modules/@corellium/corellium-api/src/corellium.js +0 -444
- package/node_modules/@corellium/corellium-api/src/images.js +0 -131
- package/node_modules/@corellium/corellium-api/src/input.js +0 -178
- package/node_modules/@corellium/corellium-api/src/instance-updater.js +0 -56
- package/node_modules/@corellium/corellium-api/src/instance.js +0 -1031
- package/node_modules/@corellium/corellium-api/src/netmon.js +0 -308
- package/node_modules/@corellium/corellium-api/src/project.js +0 -393
- package/node_modules/@corellium/corellium-api/src/role.js +0 -65
- package/node_modules/@corellium/corellium-api/src/snapshot.js +0 -77
- package/node_modules/@corellium/corellium-api/src/team.js +0 -29
- package/node_modules/@corellium/corellium-api/src/user.js +0 -51
- package/node_modules/@corellium/corellium-api/src/util/fetch.js +0 -62
- package/node_modules/@corellium/corellium-api/src/util/sleep.js +0 -7
- package/node_modules/@corellium/corellium-api/test/integration-tests.js +0 -1292
- package/node_modules/@corellium/corellium-api/test/root-hook-set-flag-if-test-failed.js +0 -7
- package/node_modules/async-limiter/.eslintignore +0 -2
- package/node_modules/async-limiter/.nycrc +0 -10
- package/node_modules/async-limiter/.travis.yml +0 -9
- package/node_modules/async-limiter/LICENSE +0 -8
- package/node_modules/async-limiter/index.js +0 -67
- package/node_modules/async-limiter/package.json +0 -72
- package/node_modules/async-limiter/readme.md +0 -132
- package/node_modules/buffer-crc32/LICENSE +0 -19
- package/node_modules/buffer-crc32/README.md +0 -47
- package/node_modules/buffer-crc32/index.js +0 -111
- package/node_modules/buffer-crc32/package.json +0 -72
- package/node_modules/cross-fetch/LICENSE +0 -21
- package/node_modules/cross-fetch/README.md +0 -169
- package/node_modules/cross-fetch/dist/browser-polyfill.js +0 -532
- package/node_modules/cross-fetch/dist/browser-ponyfill.js +0 -554
- package/node_modules/cross-fetch/dist/cross-fetch.js +0 -2
- package/node_modules/cross-fetch/dist/cross-fetch.js.map +0 -1
- package/node_modules/cross-fetch/dist/node-polyfill.js +0 -11
- package/node_modules/cross-fetch/dist/node-ponyfill.js +0 -22
- package/node_modules/cross-fetch/dist/react-native-polyfill.js +0 -12
- package/node_modules/cross-fetch/dist/react-native-ponyfill.js +0 -6
- package/node_modules/cross-fetch/index.d.ts +0 -14
- package/node_modules/cross-fetch/package.json +0 -160
- package/node_modules/cross-fetch/polyfill/package.json +0 -8
- package/node_modules/duplexify/.travis.yml +0 -6
- package/node_modules/duplexify/LICENSE +0 -21
- package/node_modules/duplexify/README.md +0 -97
- package/node_modules/duplexify/example.js +0 -21
- package/node_modules/duplexify/index.js +0 -234
- package/node_modules/duplexify/package.json +0 -69
- package/node_modules/duplexify/test.js +0 -295
- package/node_modules/end-of-stream/LICENSE +0 -21
- package/node_modules/end-of-stream/README.md +0 -54
- package/node_modules/end-of-stream/index.js +0 -94
- package/node_modules/end-of-stream/package.json +0 -69
- package/node_modules/fast-stable-stringify/.npmignore +0 -4
- package/node_modules/fast-stable-stringify/.travis.yml +0 -10
- package/node_modules/fast-stable-stringify/LICENSE +0 -21
- package/node_modules/fast-stable-stringify/README.md +0 -81
- package/node_modules/fast-stable-stringify/cli/files-to-comparison-results.js +0 -67
- package/node_modules/fast-stable-stringify/cli/format-table.js +0 -70
- package/node_modules/fast-stable-stringify/cli/index.js +0 -19
- package/node_modules/fast-stable-stringify/fixtures/index.js +0 -5
- package/node_modules/fast-stable-stringify/fixtures/input-data-types.js +0 -191
- package/node_modules/fast-stable-stringify/fixtures/log-result.json +0 -22
- package/node_modules/fast-stable-stringify/fixtures/log.txt +0 -24
- package/node_modules/fast-stable-stringify/index.js +0 -73
- package/node_modules/fast-stable-stringify/karma.conf.js +0 -124
- package/node_modules/fast-stable-stringify/karma.conf.travis.js +0 -95
- package/node_modules/fast-stable-stringify/package.json +0 -77
- package/node_modules/fast-stable-stringify/results/escape-long/Chrome 60.0.3112 (Windows 7 0.0.0).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape-long/Chrome Mobile 55.0.2883 (Android 6.0.0).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape-long/Edge 14.14393.0 (Windows 10 0.0.0).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape-long/Firefox 54.0.0 (Windows 7 0.0.0).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape-long/IE 10.0.0 (Windows 7 0.0.0).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape-long/IE 11.0.0 (Windows 7 0.0.0).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape-long/IE 9.0.0 (Windows 7 0.0.0).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape-long/Mobile Safari 10.0.0 (iOS 10.3.0).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape-long/Safari 10.0.1 (Mac OS X 10.12.1).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape-short/Chrome 60.0.3112 (Windows 7 0.0.0).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape-short/Chrome Mobile 55.0.2883 (Android 6.0.0).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape-short/Edge 14.14393.0 (Windows 10 0.0.0).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape-short/Firefox 54.0.0 (Windows 7 0.0.0).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape-short/IE 10.0.0 (Windows 7 0.0.0).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape-short/IE 11.0.0 (Windows 7 0.0.0).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape-short/IE 9.0.0 (Windows 7 0.0.0).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape-short/Mobile Safari 10.0.0 (iOS 10.3.0).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape-short/Safari 10.0.1 (Mac OS X 10.12.1).json +0 -57
- package/node_modules/fast-stable-stringify/results/escape.md +0 -20
- package/node_modules/fast-stable-stringify/results/itar-long/Chrome 60.0.3112 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar-long/Chrome Mobile 55.0.2883 (Android 6.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar-long/Edge 14.14393.0 (Windows 10 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar-long/Firefox 54.0.0 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar-long/IE 10.0.0 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar-long/IE 11.0.0 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar-long/IE 9.0.0 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar-long/Mobile Safari 10.0.0 (iOS 10.3.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar-long/Safari 10.0.1 (Mac OS X 10.12.1).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar-short/Chrome 60.0.3112 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar-short/Chrome Mobile 55.0.2883 (Android 6.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar-short/Edge 14.14393.0 (Windows 10 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar-short/Firefox 54.0.0 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar-short/IE 10.0.0 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar-short/IE 11.0.0 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar-short/IE 9.0.0 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar-short/Mobile Safari 10.0.0 (iOS 10.3.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar-short/Safari 10.0.1 (Mac OS X 10.12.1).json +0 -35
- package/node_modules/fast-stable-stringify/results/itar.md +0 -20
- package/node_modules/fast-stable-stringify/results/iter/Chrome 60.0.3112 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/iter/Chrome Mobile 39.0.0 (Android 5.1.1).json +0 -35
- package/node_modules/fast-stable-stringify/results/iter/Chrome Mobile 55.0.2883 (Android 6.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/iter/Edge 14.14393.0 (Windows 10 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/iter/Firefox 54.0.0 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/iter/IE 10.0.0 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/iter/IE 11.0.0 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/iter/IE 9.0.0 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/iter/Mobile Safari 10.0.0 (iOS 10.3.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/iter/Mobile Safari 9.0.0 (iOS 9.2.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/iter/Safari 10.0.1 (Mac OS X 10.12.1).json +0 -35
- package/node_modules/fast-stable-stringify/results/iter/Safari 9.1.2 (Mac OS X 10.11.6).json +0 -35
- package/node_modules/fast-stable-stringify/results/iter.md +0 -14
- package/node_modules/fast-stable-stringify/results/libs/Chrome 60.0.3112 (Windows 7 0.0.0).json +0 -46
- package/node_modules/fast-stable-stringify/results/libs/Chrome Mobile 55.0.2883 (Android 6.0.0).json +0 -46
- package/node_modules/fast-stable-stringify/results/libs/Edge 14.14393.0 (Windows 10 0.0.0).json +0 -46
- package/node_modules/fast-stable-stringify/results/libs/Firefox 54.0.0 (Windows 7 0.0.0).json +0 -46
- package/node_modules/fast-stable-stringify/results/libs/IE 10.0.0 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/libs/IE 11.0.0 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/libs/IE 9.0.0 (Windows 7 0.0.0).json +0 -35
- package/node_modules/fast-stable-stringify/results/libs/Mobile Safari 10.0.0 (iOS 10.3.0).json +0 -46
- package/node_modules/fast-stable-stringify/results/libs/Safari 10.0.1 (Mac OS X 10.12.1).json +0 -46
- package/node_modules/fast-stable-stringify/results/libs.md +0 -15
- package/node_modules/fast-stable-stringify/test/escape-long.js +0 -147
- package/node_modules/fast-stable-stringify/test/escape-short.js +0 -147
- package/node_modules/fast-stable-stringify/test/index.js +0 -6
- package/node_modules/fast-stable-stringify/test/itar-long.js +0 -52
- package/node_modules/fast-stable-stringify/test/itar-short.js +0 -52
- package/node_modules/fast-stable-stringify/test/iter.js +0 -84
- package/node_modules/fast-stable-stringify/test/libs.js +0 -57
- package/node_modules/fast-stable-stringify/test/travis.js +0 -43
- package/node_modules/fast-stable-stringify/test/validate.js +0 -24
- package/node_modules/fast-stable-stringify/util/eachRecursive.js +0 -9
- package/node_modules/fast-stable-stringify/util/get-git-hash-sync.js +0 -21
- package/node_modules/fast-stable-stringify/util/get-lib-info.js +0 -22
- package/node_modules/fast-stable-stringify/util/object-path.js +0 -47
- package/node_modules/fast-stable-stringify/v8-profile/bench.js +0 -8
- package/node_modules/fast-stable-stringify/v8-profile/run.sh +0 -2
- package/node_modules/fast-stable-stringify/zuul-local.sh +0 -2
- package/node_modules/hkdf/.npmignore +0 -2
- package/node_modules/hkdf/README.md +0 -23
- package/node_modules/hkdf/hkdf.py +0 -171
- package/node_modules/hkdf/hkdf.pyc +0 -0
- package/node_modules/hkdf/index.js +0 -1
- package/node_modules/hkdf/lib/hkdf.js +0 -55
- package/node_modules/hkdf/package.json +0 -55
- package/node_modules/hkdf/scripts/run_all_tests.sh +0 -19
- package/node_modules/hkdf/test/all-test.js +0 -79
- package/node_modules/hkdf/test.py +0 -11
- package/node_modules/immediate/LICENSE.txt +0 -20
- package/node_modules/immediate/README.md +0 -93
- package/node_modules/immediate/dist/immediate.js +0 -75
- package/node_modules/immediate/dist/immediate.min.js +0 -1
- package/node_modules/immediate/lib/browser.js +0 -69
- package/node_modules/immediate/lib/index.js +0 -73
- package/node_modules/immediate/package.json +0 -86
- package/node_modules/isarray/.npmignore +0 -1
- package/node_modules/isarray/.travis.yml +0 -4
- package/node_modules/isarray/Makefile +0 -6
- package/node_modules/isarray/README.md +0 -60
- package/node_modules/isarray/component.json +0 -19
- package/node_modules/isarray/index.js +0 -5
- package/node_modules/isarray/package.json +0 -77
- package/node_modules/isarray/test.js +0 -20
- package/node_modules/jszip/.codeclimate.yml +0 -16
- package/node_modules/jszip/.editorconfig +0 -8
- package/node_modules/jszip/.github/workflows/pr.yaml +0 -41
- package/node_modules/jszip/.jshintignore +0 -1
- package/node_modules/jszip/.jshintrc +0 -21
- package/node_modules/jszip/.travis.yml +0 -17
- package/node_modules/jszip/CHANGES.md +0 -192
- package/node_modules/jszip/LICENSE.markdown +0 -651
- package/node_modules/jszip/README.markdown +0 -33
- package/node_modules/jszip/dist/jszip.js +0 -11583
- package/node_modules/jszip/dist/jszip.min.js +0 -13
- package/node_modules/jszip/index.d.ts +0 -335
- package/node_modules/jszip/lib/base64.js +0 -106
- package/node_modules/jszip/lib/compressedObject.js +0 -74
- package/node_modules/jszip/lib/compressions.js +0 -14
- package/node_modules/jszip/lib/crc32.js +0 -77
- package/node_modules/jszip/lib/defaults.js +0 -11
- package/node_modules/jszip/lib/external.js +0 -19
- package/node_modules/jszip/lib/flate.js +0 -85
- package/node_modules/jszip/lib/generate/ZipFileWorker.js +0 -540
- package/node_modules/jszip/lib/generate/index.js +0 -57
- package/node_modules/jszip/lib/index.js +0 -55
- package/node_modules/jszip/lib/license_header.js +0 -11
- package/node_modules/jszip/lib/load.js +0 -88
- package/node_modules/jszip/lib/nodejs/NodejsStreamInputAdapter.js +0 -74
- package/node_modules/jszip/lib/nodejs/NodejsStreamOutputAdapter.js +0 -42
- package/node_modules/jszip/lib/nodejsUtils.js +0 -57
- package/node_modules/jszip/lib/object.js +0 -389
- package/node_modules/jszip/lib/readable-stream-browser.js +0 -9
- package/node_modules/jszip/lib/reader/ArrayReader.js +0 -57
- package/node_modules/jszip/lib/reader/DataReader.js +0 -116
- package/node_modules/jszip/lib/reader/NodeBufferReader.js +0 -19
- package/node_modules/jszip/lib/reader/StringReader.js +0 -38
- package/node_modules/jszip/lib/reader/Uint8ArrayReader.js +0 -22
- package/node_modules/jszip/lib/reader/readerFor.js +0 -28
- package/node_modules/jszip/lib/signature.js +0 -7
- package/node_modules/jszip/lib/stream/ConvertWorker.js +0 -26
- package/node_modules/jszip/lib/stream/Crc32Probe.js +0 -24
- package/node_modules/jszip/lib/stream/DataLengthProbe.js +0 -29
- package/node_modules/jszip/lib/stream/DataWorker.js +0 -116
- package/node_modules/jszip/lib/stream/GenericWorker.js +0 -263
- package/node_modules/jszip/lib/stream/StreamHelper.js +0 -212
- package/node_modules/jszip/lib/support.js +0 -38
- package/node_modules/jszip/lib/utf8.js +0 -275
- package/node_modules/jszip/lib/utils.js +0 -501
- package/node_modules/jszip/lib/zipEntries.js +0 -262
- package/node_modules/jszip/lib/zipEntry.js +0 -294
- package/node_modules/jszip/lib/zipObject.js +0 -133
- package/node_modules/jszip/package.json +0 -99
- package/node_modules/jszip/tsconfig.json +0 -101
- package/node_modules/jszip/vendor/FileSaver.js +0 -247
- package/node_modules/lie/README.md +0 -62
- package/node_modules/lie/dist/lie.js +0 -350
- package/node_modules/lie/dist/lie.min.js +0 -1
- package/node_modules/lie/dist/lie.polyfill.js +0 -358
- package/node_modules/lie/dist/lie.polyfill.min.js +0 -1
- package/node_modules/lie/lib/browser.js +0 -273
- package/node_modules/lie/lib/index.js +0 -298
- package/node_modules/lie/license.md +0 -7
- package/node_modules/lie/lie.d.ts +0 -244
- package/node_modules/lie/package.json +0 -98
- package/node_modules/lie/polyfill.js +0 -4
- package/node_modules/p-finally/index.js +0 -15
- package/node_modules/p-finally/license +0 -21
- package/node_modules/p-finally/package.json +0 -77
- package/node_modules/p-finally/readme.md +0 -47
- package/node_modules/p-retry/index.js +0 -52
- package/node_modules/p-retry/license +0 -9
- package/node_modules/p-retry/package.json +0 -83
- package/node_modules/p-retry/readme.md +0 -109
- package/node_modules/p-timeout/index.d.ts +0 -72
- package/node_modules/p-timeout/index.js +0 -57
- package/node_modules/p-timeout/license +0 -9
- package/node_modules/p-timeout/package.json +0 -80
- package/node_modules/p-timeout/readme.md +0 -87
- package/node_modules/pako/CHANGELOG.md +0 -164
- package/node_modules/pako/LICENSE +0 -21
- package/node_modules/pako/README.md +0 -191
- package/node_modules/pako/dist/pako.js +0 -6818
- package/node_modules/pako/dist/pako.min.js +0 -1
- package/node_modules/pako/dist/pako_deflate.js +0 -3997
- package/node_modules/pako/dist/pako_deflate.min.js +0 -1
- package/node_modules/pako/dist/pako_inflate.js +0 -3300
- package/node_modules/pako/dist/pako_inflate.min.js +0 -1
- package/node_modules/pako/index.js +0 -14
- package/node_modules/pako/lib/deflate.js +0 -400
- package/node_modules/pako/lib/inflate.js +0 -423
- package/node_modules/pako/lib/utils/common.js +0 -105
- package/node_modules/pako/lib/utils/strings.js +0 -187
- package/node_modules/pako/lib/zlib/README +0 -59
- package/node_modules/pako/lib/zlib/adler32.js +0 -51
- package/node_modules/pako/lib/zlib/constants.js +0 -68
- package/node_modules/pako/lib/zlib/crc32.js +0 -59
- package/node_modules/pako/lib/zlib/deflate.js +0 -1874
- package/node_modules/pako/lib/zlib/gzheader.js +0 -58
- package/node_modules/pako/lib/zlib/inffast.js +0 -345
- package/node_modules/pako/lib/zlib/inflate.js +0 -1556
- package/node_modules/pako/lib/zlib/inftrees.js +0 -343
- package/node_modules/pako/lib/zlib/messages.js +0 -32
- package/node_modules/pako/lib/zlib/trees.js +0 -1222
- package/node_modules/pako/lib/zlib/zstream.js +0 -47
- package/node_modules/pako/package.json +0 -94
- package/node_modules/process-nextick-args/index.js +0 -45
- package/node_modules/process-nextick-args/license.md +0 -19
- package/node_modules/process-nextick-args/package.json +0 -53
- package/node_modules/process-nextick-args/readme.md +0 -18
- package/node_modules/readable-stream/.travis.yml +0 -34
- package/node_modules/readable-stream/CONTRIBUTING.md +0 -38
- package/node_modules/readable-stream/GOVERNANCE.md +0 -136
- package/node_modules/readable-stream/LICENSE +0 -47
- package/node_modules/readable-stream/README.md +0 -58
- package/node_modules/readable-stream/doc/wg-meetings/2015-01-30.md +0 -60
- package/node_modules/readable-stream/duplex-browser.js +0 -1
- package/node_modules/readable-stream/duplex.js +0 -1
- package/node_modules/readable-stream/lib/_stream_duplex.js +0 -131
- package/node_modules/readable-stream/lib/_stream_passthrough.js +0 -47
- package/node_modules/readable-stream/lib/_stream_readable.js +0 -1019
- package/node_modules/readable-stream/lib/_stream_transform.js +0 -214
- package/node_modules/readable-stream/lib/_stream_writable.js +0 -687
- package/node_modules/readable-stream/lib/internal/streams/BufferList.js +0 -79
- package/node_modules/readable-stream/lib/internal/streams/destroy.js +0 -74
- package/node_modules/readable-stream/lib/internal/streams/stream-browser.js +0 -1
- package/node_modules/readable-stream/lib/internal/streams/stream.js +0 -1
- package/node_modules/readable-stream/package.json +0 -86
- package/node_modules/readable-stream/passthrough.js +0 -1
- package/node_modules/readable-stream/readable-browser.js +0 -7
- package/node_modules/readable-stream/readable.js +0 -19
- package/node_modules/readable-stream/transform.js +0 -1
- package/node_modules/readable-stream/writable-browser.js +0 -1
- package/node_modules/readable-stream/writable.js +0 -8
- package/node_modules/retry/.npmignore +0 -3
- package/node_modules/retry/.travis.yml +0 -15
- package/node_modules/retry/License +0 -21
- package/node_modules/retry/Makefile +0 -18
- package/node_modules/retry/README.md +0 -227
- package/node_modules/retry/equation.gif +0 -0
- package/node_modules/retry/example/dns.js +0 -31
- package/node_modules/retry/example/stop.js +0 -40
- package/node_modules/retry/index.js +0 -1
- package/node_modules/retry/lib/retry.js +0 -100
- package/node_modules/retry/lib/retry_operation.js +0 -158
- package/node_modules/retry/package.json +0 -67
- package/node_modules/retry/test/common.js +0 -10
- package/node_modules/retry/test/integration/test-forever.js +0 -24
- package/node_modules/retry/test/integration/test-retry-operation.js +0 -258
- package/node_modules/retry/test/integration/test-retry-wrap.js +0 -101
- package/node_modules/retry/test/integration/test-timeouts.js +0 -69
- package/node_modules/setimmediate/LICENSE.txt +0 -20
- package/node_modules/setimmediate/package.json +0 -77
- package/node_modules/setimmediate/setImmediate.js +0 -186
- package/node_modules/split/.npmignore +0 -3
- package/node_modules/split/.travis.yml +0 -3
- package/node_modules/split/LICENCE +0 -22
- package/node_modules/split/examples/pretty.js +0 -26
- package/node_modules/split/index.js +0 -63
- package/node_modules/split/package.json +0 -65
- package/node_modules/split/readme.markdown +0 -72
- package/node_modules/split/test/options.asynct.js +0 -46
- package/node_modules/split/test/partitioned_unicode.js +0 -34
- package/node_modules/split/test/split.asynct.js +0 -137
- package/node_modules/split/test/try_catch.asynct.js +0 -51
- package/node_modules/stream-shift/.travis.yml +0 -6
- package/node_modules/stream-shift/LICENSE +0 -21
- package/node_modules/stream-shift/README.md +0 -25
- package/node_modules/stream-shift/index.js +0 -20
- package/node_modules/stream-shift/package.json +0 -56
- package/node_modules/stream-shift/test.js +0 -48
- package/node_modules/ultron/LICENSE +0 -22
- package/node_modules/ultron/README.md +0 -113
- package/node_modules/ultron/index.js +0 -136
- package/node_modules/ultron/package.json +0 -71
- package/node_modules/websocket-stream/LICENSE +0 -8
- package/node_modules/websocket-stream/collaborators.md +0 -11
- package/node_modules/websocket-stream/echo-server.js +0 -51
- package/node_modules/websocket-stream/index.d.ts +0 -27
- package/node_modules/websocket-stream/index.js +0 -6
- package/node_modules/websocket-stream/package.json +0 -82
- package/node_modules/websocket-stream/readme.md +0 -148
- package/node_modules/websocket-stream/server.js +0 -29
- package/node_modules/websocket-stream/stream.js +0 -189
- package/node_modules/websocket-stream/test-client.js +0 -74
- package/node_modules/websocket-stream/test-server.js +0 -56
- package/node_modules/websocket-stream/test.js +0 -338
- package/node_modules/websocket-stream/ts-tests.ts +0 -69
- package/node_modules/websocket-stream/ws-fallback.js +0 -12
- package/node_modules/ws/LICENSE +0 -21
- package/node_modules/ws/README.md +0 -341
- package/node_modules/ws/index.js +0 -15
- package/node_modules/ws/lib/.DS_Store +0 -0
- package/node_modules/ws/lib/BufferUtil.js +0 -71
- package/node_modules/ws/lib/Constants.js +0 -10
- package/node_modules/ws/lib/ErrorCodes.js +0 -28
- package/node_modules/ws/lib/EventTarget.js +0 -151
- package/node_modules/ws/lib/Extensions.js +0 -203
- package/node_modules/ws/lib/PerMessageDeflate.js +0 -507
- package/node_modules/ws/lib/Receiver.js +0 -553
- package/node_modules/ws/lib/Sender.js +0 -412
- package/node_modules/ws/lib/Validation.js +0 -17
- package/node_modules/ws/lib/WebSocket.js +0 -717
- package/node_modules/ws/lib/WebSocketServer.js +0 -326
- package/node_modules/ws/package.json +0 -83
- package/node_modules/xhr2/CONTRIBUTING.md +0 -33
- package/node_modules/xhr2/Cakefile +0 -131
- package/node_modules/xhr2/LICENSE.txt +0 -19
- package/node_modules/xhr2/README.md +0 -142
- package/node_modules/xhr2/lib/browser.js +0 -1
- package/node_modules/xhr2/lib/xhr2.js +0 -1244
- package/node_modules/xhr2/package.json +0 -103
- package/node_modules/xhr2/src/000-xml_http_request_event_target.coffee +0 -89
- package/node_modules/xhr2/src/001-xml_http_request.coffee +0 -781
- package/node_modules/xhr2/src/errors.coffee +0 -31
- package/node_modules/xhr2/src/progress_event.coffee +0 -39
- package/node_modules/xhr2/src/xml_http_request_upload.coffee +0 -95
- package/node_modules/xhr2/test/fixtures/hello.json +0 -1
- package/node_modules/xhr2/test/fixtures/hello.txt +0 -1
- package/node_modules/xhr2/test/fixtures/xhr2.png +0 -0
- package/node_modules/xhr2/test/html/browser_test.html +0 -30
- package/node_modules/xhr2/test/src/event_target_test.coffee +0 -85
- package/node_modules/xhr2/test/src/events_test.coffee +0 -204
- package/node_modules/xhr2/test/src/headers_test.coffee +0 -168
- package/node_modules/xhr2/test/src/helpers/browser_mocha_runner.coffee +0 -10
- package/node_modules/xhr2/test/src/helpers/browser_mocha_setup.coffee +0 -1
- package/node_modules/xhr2/test/src/helpers/setup.coffee +0 -38
- package/node_modules/xhr2/test/src/helpers/xhr_server.coffee +0 -156
- package/node_modules/xhr2/test/src/nodejs_set_test.coffee +0 -162
- package/node_modules/xhr2/test/src/redirect_test.coffee +0 -57
- package/node_modules/xhr2/test/src/response_type_test.coffee +0 -88
- package/node_modules/xhr2/test/src/responseurl_test.coffee +0 -18
- package/node_modules/xhr2/test/src/send_test.coffee +0 -89
- package/node_modules/xhr2/test/src/status_test.coffee +0 -47
- package/node_modules/xhr2/test/src/xhr_test.coffee +0 -102
- package/node_modules/xtend/.jshintrc +0 -30
- package/node_modules/xtend/LICENSE +0 -20
- package/node_modules/xtend/README.md +0 -32
- package/node_modules/xtend/immutable.js +0 -19
- package/node_modules/xtend/mutable.js +0 -17
- package/node_modules/xtend/package.json +0 -89
- package/node_modules/xtend/test.js +0 -103
- package/node_modules/yazl/LICENSE +0 -21
- package/node_modules/yazl/README.md +0 -389
- package/node_modules/yazl/index.js +0 -749
- package/node_modules/yazl/package.json +0 -69
- package/src/commands/CorelliumAPI.js +0 -76
- package/src/subscriberInvite.js +0 -140
|
@@ -1,262 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
var readerFor = require('./reader/readerFor');
|
|
3
|
-
var utils = require('./utils');
|
|
4
|
-
var sig = require('./signature');
|
|
5
|
-
var ZipEntry = require('./zipEntry');
|
|
6
|
-
var utf8 = require('./utf8');
|
|
7
|
-
var support = require('./support');
|
|
8
|
-
// class ZipEntries {{{
|
|
9
|
-
/**
|
|
10
|
-
* All the entries in the zip file.
|
|
11
|
-
* @constructor
|
|
12
|
-
* @param {Object} loadOptions Options for loading the stream.
|
|
13
|
-
*/
|
|
14
|
-
function ZipEntries(loadOptions) {
|
|
15
|
-
this.files = [];
|
|
16
|
-
this.loadOptions = loadOptions;
|
|
17
|
-
}
|
|
18
|
-
ZipEntries.prototype = {
|
|
19
|
-
/**
|
|
20
|
-
* Check that the reader is on the specified signature.
|
|
21
|
-
* @param {string} expectedSignature the expected signature.
|
|
22
|
-
* @throws {Error} if it is an other signature.
|
|
23
|
-
*/
|
|
24
|
-
checkSignature: function(expectedSignature) {
|
|
25
|
-
if (!this.reader.readAndCheckSignature(expectedSignature)) {
|
|
26
|
-
this.reader.index -= 4;
|
|
27
|
-
var signature = this.reader.readString(4);
|
|
28
|
-
throw new Error("Corrupted zip or bug: unexpected signature " + "(" + utils.pretty(signature) + ", expected " + utils.pretty(expectedSignature) + ")");
|
|
29
|
-
}
|
|
30
|
-
},
|
|
31
|
-
/**
|
|
32
|
-
* Check if the given signature is at the given index.
|
|
33
|
-
* @param {number} askedIndex the index to check.
|
|
34
|
-
* @param {string} expectedSignature the signature to expect.
|
|
35
|
-
* @return {boolean} true if the signature is here, false otherwise.
|
|
36
|
-
*/
|
|
37
|
-
isSignature: function(askedIndex, expectedSignature) {
|
|
38
|
-
var currentIndex = this.reader.index;
|
|
39
|
-
this.reader.setIndex(askedIndex);
|
|
40
|
-
var signature = this.reader.readString(4);
|
|
41
|
-
var result = signature === expectedSignature;
|
|
42
|
-
this.reader.setIndex(currentIndex);
|
|
43
|
-
return result;
|
|
44
|
-
},
|
|
45
|
-
/**
|
|
46
|
-
* Read the end of the central directory.
|
|
47
|
-
*/
|
|
48
|
-
readBlockEndOfCentral: function() {
|
|
49
|
-
this.diskNumber = this.reader.readInt(2);
|
|
50
|
-
this.diskWithCentralDirStart = this.reader.readInt(2);
|
|
51
|
-
this.centralDirRecordsOnThisDisk = this.reader.readInt(2);
|
|
52
|
-
this.centralDirRecords = this.reader.readInt(2);
|
|
53
|
-
this.centralDirSize = this.reader.readInt(4);
|
|
54
|
-
this.centralDirOffset = this.reader.readInt(4);
|
|
55
|
-
|
|
56
|
-
this.zipCommentLength = this.reader.readInt(2);
|
|
57
|
-
// warning : the encoding depends of the system locale
|
|
58
|
-
// On a linux machine with LANG=en_US.utf8, this field is utf8 encoded.
|
|
59
|
-
// On a windows machine, this field is encoded with the localized windows code page.
|
|
60
|
-
var zipComment = this.reader.readData(this.zipCommentLength);
|
|
61
|
-
var decodeParamType = support.uint8array ? "uint8array" : "array";
|
|
62
|
-
// To get consistent behavior with the generation part, we will assume that
|
|
63
|
-
// this is utf8 encoded unless specified otherwise.
|
|
64
|
-
var decodeContent = utils.transformTo(decodeParamType, zipComment);
|
|
65
|
-
this.zipComment = this.loadOptions.decodeFileName(decodeContent);
|
|
66
|
-
},
|
|
67
|
-
/**
|
|
68
|
-
* Read the end of the Zip 64 central directory.
|
|
69
|
-
* Not merged with the method readEndOfCentral :
|
|
70
|
-
* The end of central can coexist with its Zip64 brother,
|
|
71
|
-
* I don't want to read the wrong number of bytes !
|
|
72
|
-
*/
|
|
73
|
-
readBlockZip64EndOfCentral: function() {
|
|
74
|
-
this.zip64EndOfCentralSize = this.reader.readInt(8);
|
|
75
|
-
this.reader.skip(4);
|
|
76
|
-
// this.versionMadeBy = this.reader.readString(2);
|
|
77
|
-
// this.versionNeeded = this.reader.readInt(2);
|
|
78
|
-
this.diskNumber = this.reader.readInt(4);
|
|
79
|
-
this.diskWithCentralDirStart = this.reader.readInt(4);
|
|
80
|
-
this.centralDirRecordsOnThisDisk = this.reader.readInt(8);
|
|
81
|
-
this.centralDirRecords = this.reader.readInt(8);
|
|
82
|
-
this.centralDirSize = this.reader.readInt(8);
|
|
83
|
-
this.centralDirOffset = this.reader.readInt(8);
|
|
84
|
-
|
|
85
|
-
this.zip64ExtensibleData = {};
|
|
86
|
-
var extraDataSize = this.zip64EndOfCentralSize - 44,
|
|
87
|
-
index = 0,
|
|
88
|
-
extraFieldId,
|
|
89
|
-
extraFieldLength,
|
|
90
|
-
extraFieldValue;
|
|
91
|
-
while (index < extraDataSize) {
|
|
92
|
-
extraFieldId = this.reader.readInt(2);
|
|
93
|
-
extraFieldLength = this.reader.readInt(4);
|
|
94
|
-
extraFieldValue = this.reader.readData(extraFieldLength);
|
|
95
|
-
this.zip64ExtensibleData[extraFieldId] = {
|
|
96
|
-
id: extraFieldId,
|
|
97
|
-
length: extraFieldLength,
|
|
98
|
-
value: extraFieldValue
|
|
99
|
-
};
|
|
100
|
-
}
|
|
101
|
-
},
|
|
102
|
-
/**
|
|
103
|
-
* Read the end of the Zip 64 central directory locator.
|
|
104
|
-
*/
|
|
105
|
-
readBlockZip64EndOfCentralLocator: function() {
|
|
106
|
-
this.diskWithZip64CentralDirStart = this.reader.readInt(4);
|
|
107
|
-
this.relativeOffsetEndOfZip64CentralDir = this.reader.readInt(8);
|
|
108
|
-
this.disksCount = this.reader.readInt(4);
|
|
109
|
-
if (this.disksCount > 1) {
|
|
110
|
-
throw new Error("Multi-volumes zip are not supported");
|
|
111
|
-
}
|
|
112
|
-
},
|
|
113
|
-
/**
|
|
114
|
-
* Read the local files, based on the offset read in the central part.
|
|
115
|
-
*/
|
|
116
|
-
readLocalFiles: function() {
|
|
117
|
-
var i, file;
|
|
118
|
-
for (i = 0; i < this.files.length; i++) {
|
|
119
|
-
file = this.files[i];
|
|
120
|
-
this.reader.setIndex(file.localHeaderOffset);
|
|
121
|
-
this.checkSignature(sig.LOCAL_FILE_HEADER);
|
|
122
|
-
file.readLocalPart(this.reader);
|
|
123
|
-
file.handleUTF8();
|
|
124
|
-
file.processAttributes();
|
|
125
|
-
}
|
|
126
|
-
},
|
|
127
|
-
/**
|
|
128
|
-
* Read the central directory.
|
|
129
|
-
*/
|
|
130
|
-
readCentralDir: function() {
|
|
131
|
-
var file;
|
|
132
|
-
|
|
133
|
-
this.reader.setIndex(this.centralDirOffset);
|
|
134
|
-
while (this.reader.readAndCheckSignature(sig.CENTRAL_FILE_HEADER)) {
|
|
135
|
-
file = new ZipEntry({
|
|
136
|
-
zip64: this.zip64
|
|
137
|
-
}, this.loadOptions);
|
|
138
|
-
file.readCentralPart(this.reader);
|
|
139
|
-
this.files.push(file);
|
|
140
|
-
}
|
|
141
|
-
|
|
142
|
-
if (this.centralDirRecords !== this.files.length) {
|
|
143
|
-
if (this.centralDirRecords !== 0 && this.files.length === 0) {
|
|
144
|
-
// We expected some records but couldn't find ANY.
|
|
145
|
-
// This is really suspicious, as if something went wrong.
|
|
146
|
-
throw new Error("Corrupted zip or bug: expected " + this.centralDirRecords + " records in central dir, got " + this.files.length);
|
|
147
|
-
} else {
|
|
148
|
-
// We found some records but not all.
|
|
149
|
-
// Something is wrong but we got something for the user: no error here.
|
|
150
|
-
// console.warn("expected", this.centralDirRecords, "records in central dir, got", this.files.length);
|
|
151
|
-
}
|
|
152
|
-
}
|
|
153
|
-
},
|
|
154
|
-
/**
|
|
155
|
-
* Read the end of central directory.
|
|
156
|
-
*/
|
|
157
|
-
readEndOfCentral: function() {
|
|
158
|
-
var offset = this.reader.lastIndexOfSignature(sig.CENTRAL_DIRECTORY_END);
|
|
159
|
-
if (offset < 0) {
|
|
160
|
-
// Check if the content is a truncated zip or complete garbage.
|
|
161
|
-
// A "LOCAL_FILE_HEADER" is not required at the beginning (auto
|
|
162
|
-
// extractible zip for example) but it can give a good hint.
|
|
163
|
-
// If an ajax request was used without responseType, we will also
|
|
164
|
-
// get unreadable data.
|
|
165
|
-
var isGarbage = !this.isSignature(0, sig.LOCAL_FILE_HEADER);
|
|
166
|
-
|
|
167
|
-
if (isGarbage) {
|
|
168
|
-
throw new Error("Can't find end of central directory : is this a zip file ? " +
|
|
169
|
-
"If it is, see https://stuk.github.io/jszip/documentation/howto/read_zip.html");
|
|
170
|
-
} else {
|
|
171
|
-
throw new Error("Corrupted zip: can't find end of central directory");
|
|
172
|
-
}
|
|
173
|
-
|
|
174
|
-
}
|
|
175
|
-
this.reader.setIndex(offset);
|
|
176
|
-
var endOfCentralDirOffset = offset;
|
|
177
|
-
this.checkSignature(sig.CENTRAL_DIRECTORY_END);
|
|
178
|
-
this.readBlockEndOfCentral();
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
/* extract from the zip spec :
|
|
182
|
-
4) If one of the fields in the end of central directory
|
|
183
|
-
record is too small to hold required data, the field
|
|
184
|
-
should be set to -1 (0xFFFF or 0xFFFFFFFF) and the
|
|
185
|
-
ZIP64 format record should be created.
|
|
186
|
-
5) The end of central directory record and the
|
|
187
|
-
Zip64 end of central directory locator record must
|
|
188
|
-
reside on the same disk when splitting or spanning
|
|
189
|
-
an archive.
|
|
190
|
-
*/
|
|
191
|
-
if (this.diskNumber === utils.MAX_VALUE_16BITS || this.diskWithCentralDirStart === utils.MAX_VALUE_16BITS || this.centralDirRecordsOnThisDisk === utils.MAX_VALUE_16BITS || this.centralDirRecords === utils.MAX_VALUE_16BITS || this.centralDirSize === utils.MAX_VALUE_32BITS || this.centralDirOffset === utils.MAX_VALUE_32BITS) {
|
|
192
|
-
this.zip64 = true;
|
|
193
|
-
|
|
194
|
-
/*
|
|
195
|
-
Warning : the zip64 extension is supported, but ONLY if the 64bits integer read from
|
|
196
|
-
the zip file can fit into a 32bits integer. This cannot be solved : JavaScript represents
|
|
197
|
-
all numbers as 64-bit double precision IEEE 754 floating point numbers.
|
|
198
|
-
So, we have 53bits for integers and bitwise operations treat everything as 32bits.
|
|
199
|
-
see https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Operators/Bitwise_Operators
|
|
200
|
-
and http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf section 8.5
|
|
201
|
-
*/
|
|
202
|
-
|
|
203
|
-
// should look for a zip64 EOCD locator
|
|
204
|
-
offset = this.reader.lastIndexOfSignature(sig.ZIP64_CENTRAL_DIRECTORY_LOCATOR);
|
|
205
|
-
if (offset < 0) {
|
|
206
|
-
throw new Error("Corrupted zip: can't find the ZIP64 end of central directory locator");
|
|
207
|
-
}
|
|
208
|
-
this.reader.setIndex(offset);
|
|
209
|
-
this.checkSignature(sig.ZIP64_CENTRAL_DIRECTORY_LOCATOR);
|
|
210
|
-
this.readBlockZip64EndOfCentralLocator();
|
|
211
|
-
|
|
212
|
-
// now the zip64 EOCD record
|
|
213
|
-
if (!this.isSignature(this.relativeOffsetEndOfZip64CentralDir, sig.ZIP64_CENTRAL_DIRECTORY_END)) {
|
|
214
|
-
// console.warn("ZIP64 end of central directory not where expected.");
|
|
215
|
-
this.relativeOffsetEndOfZip64CentralDir = this.reader.lastIndexOfSignature(sig.ZIP64_CENTRAL_DIRECTORY_END);
|
|
216
|
-
if (this.relativeOffsetEndOfZip64CentralDir < 0) {
|
|
217
|
-
throw new Error("Corrupted zip: can't find the ZIP64 end of central directory");
|
|
218
|
-
}
|
|
219
|
-
}
|
|
220
|
-
this.reader.setIndex(this.relativeOffsetEndOfZip64CentralDir);
|
|
221
|
-
this.checkSignature(sig.ZIP64_CENTRAL_DIRECTORY_END);
|
|
222
|
-
this.readBlockZip64EndOfCentral();
|
|
223
|
-
}
|
|
224
|
-
|
|
225
|
-
var expectedEndOfCentralDirOffset = this.centralDirOffset + this.centralDirSize;
|
|
226
|
-
if (this.zip64) {
|
|
227
|
-
expectedEndOfCentralDirOffset += 20; // end of central dir 64 locator
|
|
228
|
-
expectedEndOfCentralDirOffset += 12 /* should not include the leading 12 bytes */ + this.zip64EndOfCentralSize;
|
|
229
|
-
}
|
|
230
|
-
|
|
231
|
-
var extraBytes = endOfCentralDirOffset - expectedEndOfCentralDirOffset;
|
|
232
|
-
|
|
233
|
-
if (extraBytes > 0) {
|
|
234
|
-
// console.warn(extraBytes, "extra bytes at beginning or within zipfile");
|
|
235
|
-
if (this.isSignature(endOfCentralDirOffset, sig.CENTRAL_FILE_HEADER)) {
|
|
236
|
-
// The offsets seem wrong, but we have something at the specified offset.
|
|
237
|
-
// So… we keep it.
|
|
238
|
-
} else {
|
|
239
|
-
// the offset is wrong, update the "zero" of the reader
|
|
240
|
-
// this happens if data has been prepended (crx files for example)
|
|
241
|
-
this.reader.zero = extraBytes;
|
|
242
|
-
}
|
|
243
|
-
} else if (extraBytes < 0) {
|
|
244
|
-
throw new Error("Corrupted zip: missing " + Math.abs(extraBytes) + " bytes.");
|
|
245
|
-
}
|
|
246
|
-
},
|
|
247
|
-
prepareReader: function(data) {
|
|
248
|
-
this.reader = readerFor(data);
|
|
249
|
-
},
|
|
250
|
-
/**
|
|
251
|
-
* Read a zip file and create ZipEntries.
|
|
252
|
-
* @param {String|ArrayBuffer|Uint8Array|Buffer} data the binary string representing a zip file.
|
|
253
|
-
*/
|
|
254
|
-
load: function(data) {
|
|
255
|
-
this.prepareReader(data);
|
|
256
|
-
this.readEndOfCentral();
|
|
257
|
-
this.readCentralDir();
|
|
258
|
-
this.readLocalFiles();
|
|
259
|
-
}
|
|
260
|
-
};
|
|
261
|
-
// }}} end of ZipEntries
|
|
262
|
-
module.exports = ZipEntries;
|
|
@@ -1,294 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
var readerFor = require('./reader/readerFor');
|
|
3
|
-
var utils = require('./utils');
|
|
4
|
-
var CompressedObject = require('./compressedObject');
|
|
5
|
-
var crc32fn = require('./crc32');
|
|
6
|
-
var utf8 = require('./utf8');
|
|
7
|
-
var compressions = require('./compressions');
|
|
8
|
-
var support = require('./support');
|
|
9
|
-
|
|
10
|
-
var MADE_BY_DOS = 0x00;
|
|
11
|
-
var MADE_BY_UNIX = 0x03;
|
|
12
|
-
|
|
13
|
-
/**
|
|
14
|
-
* Find a compression registered in JSZip.
|
|
15
|
-
* @param {string} compressionMethod the method magic to find.
|
|
16
|
-
* @return {Object|null} the JSZip compression object, null if none found.
|
|
17
|
-
*/
|
|
18
|
-
var findCompression = function(compressionMethod) {
|
|
19
|
-
for (var method in compressions) {
|
|
20
|
-
if (!compressions.hasOwnProperty(method)) {
|
|
21
|
-
continue;
|
|
22
|
-
}
|
|
23
|
-
if (compressions[method].magic === compressionMethod) {
|
|
24
|
-
return compressions[method];
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
return null;
|
|
28
|
-
};
|
|
29
|
-
|
|
30
|
-
// class ZipEntry {{{
|
|
31
|
-
/**
|
|
32
|
-
* An entry in the zip file.
|
|
33
|
-
* @constructor
|
|
34
|
-
* @param {Object} options Options of the current file.
|
|
35
|
-
* @param {Object} loadOptions Options for loading the stream.
|
|
36
|
-
*/
|
|
37
|
-
function ZipEntry(options, loadOptions) {
|
|
38
|
-
this.options = options;
|
|
39
|
-
this.loadOptions = loadOptions;
|
|
40
|
-
}
|
|
41
|
-
ZipEntry.prototype = {
|
|
42
|
-
/**
|
|
43
|
-
* say if the file is encrypted.
|
|
44
|
-
* @return {boolean} true if the file is encrypted, false otherwise.
|
|
45
|
-
*/
|
|
46
|
-
isEncrypted: function() {
|
|
47
|
-
// bit 1 is set
|
|
48
|
-
return (this.bitFlag & 0x0001) === 0x0001;
|
|
49
|
-
},
|
|
50
|
-
/**
|
|
51
|
-
* say if the file has utf-8 filename/comment.
|
|
52
|
-
* @return {boolean} true if the filename/comment is in utf-8, false otherwise.
|
|
53
|
-
*/
|
|
54
|
-
useUTF8: function() {
|
|
55
|
-
// bit 11 is set
|
|
56
|
-
return (this.bitFlag & 0x0800) === 0x0800;
|
|
57
|
-
},
|
|
58
|
-
/**
|
|
59
|
-
* Read the local part of a zip file and add the info in this object.
|
|
60
|
-
* @param {DataReader} reader the reader to use.
|
|
61
|
-
*/
|
|
62
|
-
readLocalPart: function(reader) {
|
|
63
|
-
var compression, localExtraFieldsLength;
|
|
64
|
-
|
|
65
|
-
// we already know everything from the central dir !
|
|
66
|
-
// If the central dir data are false, we are doomed.
|
|
67
|
-
// On the bright side, the local part is scary : zip64, data descriptors, both, etc.
|
|
68
|
-
// The less data we get here, the more reliable this should be.
|
|
69
|
-
// Let's skip the whole header and dash to the data !
|
|
70
|
-
reader.skip(22);
|
|
71
|
-
// in some zip created on windows, the filename stored in the central dir contains \ instead of /.
|
|
72
|
-
// Strangely, the filename here is OK.
|
|
73
|
-
// I would love to treat these zip files as corrupted (see http://www.info-zip.org/FAQ.html#backslashes
|
|
74
|
-
// or APPNOTE#4.4.17.1, "All slashes MUST be forward slashes '/'") but there are a lot of bad zip generators...
|
|
75
|
-
// Search "unzip mismatching "local" filename continuing with "central" filename version" on
|
|
76
|
-
// the internet.
|
|
77
|
-
//
|
|
78
|
-
// I think I see the logic here : the central directory is used to display
|
|
79
|
-
// content and the local directory is used to extract the files. Mixing / and \
|
|
80
|
-
// may be used to display \ to windows users and use / when extracting the files.
|
|
81
|
-
// Unfortunately, this lead also to some issues : http://seclists.org/fulldisclosure/2009/Sep/394
|
|
82
|
-
this.fileNameLength = reader.readInt(2);
|
|
83
|
-
localExtraFieldsLength = reader.readInt(2); // can't be sure this will be the same as the central dir
|
|
84
|
-
// the fileName is stored as binary data, the handleUTF8 method will take care of the encoding.
|
|
85
|
-
this.fileName = reader.readData(this.fileNameLength);
|
|
86
|
-
reader.skip(localExtraFieldsLength);
|
|
87
|
-
|
|
88
|
-
if (this.compressedSize === -1 || this.uncompressedSize === -1) {
|
|
89
|
-
throw new Error("Bug or corrupted zip : didn't get enough information from the central directory " + "(compressedSize === -1 || uncompressedSize === -1)");
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
compression = findCompression(this.compressionMethod);
|
|
93
|
-
if (compression === null) { // no compression found
|
|
94
|
-
throw new Error("Corrupted zip : compression " + utils.pretty(this.compressionMethod) + " unknown (inner file : " + utils.transformTo("string", this.fileName) + ")");
|
|
95
|
-
}
|
|
96
|
-
this.decompressed = new CompressedObject(this.compressedSize, this.uncompressedSize, this.crc32, compression, reader.readData(this.compressedSize));
|
|
97
|
-
},
|
|
98
|
-
|
|
99
|
-
/**
|
|
100
|
-
* Read the central part of a zip file and add the info in this object.
|
|
101
|
-
* @param {DataReader} reader the reader to use.
|
|
102
|
-
*/
|
|
103
|
-
readCentralPart: function(reader) {
|
|
104
|
-
this.versionMadeBy = reader.readInt(2);
|
|
105
|
-
reader.skip(2);
|
|
106
|
-
// this.versionNeeded = reader.readInt(2);
|
|
107
|
-
this.bitFlag = reader.readInt(2);
|
|
108
|
-
this.compressionMethod = reader.readString(2);
|
|
109
|
-
this.date = reader.readDate();
|
|
110
|
-
this.crc32 = reader.readInt(4);
|
|
111
|
-
this.compressedSize = reader.readInt(4);
|
|
112
|
-
this.uncompressedSize = reader.readInt(4);
|
|
113
|
-
var fileNameLength = reader.readInt(2);
|
|
114
|
-
this.extraFieldsLength = reader.readInt(2);
|
|
115
|
-
this.fileCommentLength = reader.readInt(2);
|
|
116
|
-
this.diskNumberStart = reader.readInt(2);
|
|
117
|
-
this.internalFileAttributes = reader.readInt(2);
|
|
118
|
-
this.externalFileAttributes = reader.readInt(4);
|
|
119
|
-
this.localHeaderOffset = reader.readInt(4);
|
|
120
|
-
|
|
121
|
-
if (this.isEncrypted()) {
|
|
122
|
-
throw new Error("Encrypted zip are not supported");
|
|
123
|
-
}
|
|
124
|
-
|
|
125
|
-
// will be read in the local part, see the comments there
|
|
126
|
-
reader.skip(fileNameLength);
|
|
127
|
-
this.readExtraFields(reader);
|
|
128
|
-
this.parseZIP64ExtraField(reader);
|
|
129
|
-
this.fileComment = reader.readData(this.fileCommentLength);
|
|
130
|
-
},
|
|
131
|
-
|
|
132
|
-
/**
|
|
133
|
-
* Parse the external file attributes and get the unix/dos permissions.
|
|
134
|
-
*/
|
|
135
|
-
processAttributes: function () {
|
|
136
|
-
this.unixPermissions = null;
|
|
137
|
-
this.dosPermissions = null;
|
|
138
|
-
var madeBy = this.versionMadeBy >> 8;
|
|
139
|
-
|
|
140
|
-
// Check if we have the DOS directory flag set.
|
|
141
|
-
// We look for it in the DOS and UNIX permissions
|
|
142
|
-
// but some unknown platform could set it as a compatibility flag.
|
|
143
|
-
this.dir = this.externalFileAttributes & 0x0010 ? true : false;
|
|
144
|
-
|
|
145
|
-
if(madeBy === MADE_BY_DOS) {
|
|
146
|
-
// first 6 bits (0 to 5)
|
|
147
|
-
this.dosPermissions = this.externalFileAttributes & 0x3F;
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
if(madeBy === MADE_BY_UNIX) {
|
|
151
|
-
this.unixPermissions = (this.externalFileAttributes >> 16) & 0xFFFF;
|
|
152
|
-
// the octal permissions are in (this.unixPermissions & 0x01FF).toString(8);
|
|
153
|
-
}
|
|
154
|
-
|
|
155
|
-
// fail safe : if the name ends with a / it probably means a folder
|
|
156
|
-
if (!this.dir && this.fileNameStr.slice(-1) === '/') {
|
|
157
|
-
this.dir = true;
|
|
158
|
-
}
|
|
159
|
-
},
|
|
160
|
-
|
|
161
|
-
/**
|
|
162
|
-
* Parse the ZIP64 extra field and merge the info in the current ZipEntry.
|
|
163
|
-
* @param {DataReader} reader the reader to use.
|
|
164
|
-
*/
|
|
165
|
-
parseZIP64ExtraField: function(reader) {
|
|
166
|
-
|
|
167
|
-
if (!this.extraFields[0x0001]) {
|
|
168
|
-
return;
|
|
169
|
-
}
|
|
170
|
-
|
|
171
|
-
// should be something, preparing the extra reader
|
|
172
|
-
var extraReader = readerFor(this.extraFields[0x0001].value);
|
|
173
|
-
|
|
174
|
-
// I really hope that these 64bits integer can fit in 32 bits integer, because js
|
|
175
|
-
// won't let us have more.
|
|
176
|
-
if (this.uncompressedSize === utils.MAX_VALUE_32BITS) {
|
|
177
|
-
this.uncompressedSize = extraReader.readInt(8);
|
|
178
|
-
}
|
|
179
|
-
if (this.compressedSize === utils.MAX_VALUE_32BITS) {
|
|
180
|
-
this.compressedSize = extraReader.readInt(8);
|
|
181
|
-
}
|
|
182
|
-
if (this.localHeaderOffset === utils.MAX_VALUE_32BITS) {
|
|
183
|
-
this.localHeaderOffset = extraReader.readInt(8);
|
|
184
|
-
}
|
|
185
|
-
if (this.diskNumberStart === utils.MAX_VALUE_32BITS) {
|
|
186
|
-
this.diskNumberStart = extraReader.readInt(4);
|
|
187
|
-
}
|
|
188
|
-
},
|
|
189
|
-
/**
|
|
190
|
-
* Read the central part of a zip file and add the info in this object.
|
|
191
|
-
* @param {DataReader} reader the reader to use.
|
|
192
|
-
*/
|
|
193
|
-
readExtraFields: function(reader) {
|
|
194
|
-
var end = reader.index + this.extraFieldsLength,
|
|
195
|
-
extraFieldId,
|
|
196
|
-
extraFieldLength,
|
|
197
|
-
extraFieldValue;
|
|
198
|
-
|
|
199
|
-
if (!this.extraFields) {
|
|
200
|
-
this.extraFields = {};
|
|
201
|
-
}
|
|
202
|
-
|
|
203
|
-
while (reader.index + 4 < end) {
|
|
204
|
-
extraFieldId = reader.readInt(2);
|
|
205
|
-
extraFieldLength = reader.readInt(2);
|
|
206
|
-
extraFieldValue = reader.readData(extraFieldLength);
|
|
207
|
-
|
|
208
|
-
this.extraFields[extraFieldId] = {
|
|
209
|
-
id: extraFieldId,
|
|
210
|
-
length: extraFieldLength,
|
|
211
|
-
value: extraFieldValue
|
|
212
|
-
};
|
|
213
|
-
}
|
|
214
|
-
|
|
215
|
-
reader.setIndex(end);
|
|
216
|
-
},
|
|
217
|
-
/**
|
|
218
|
-
* Apply an UTF8 transformation if needed.
|
|
219
|
-
*/
|
|
220
|
-
handleUTF8: function() {
|
|
221
|
-
var decodeParamType = support.uint8array ? "uint8array" : "array";
|
|
222
|
-
if (this.useUTF8()) {
|
|
223
|
-
this.fileNameStr = utf8.utf8decode(this.fileName);
|
|
224
|
-
this.fileCommentStr = utf8.utf8decode(this.fileComment);
|
|
225
|
-
} else {
|
|
226
|
-
var upath = this.findExtraFieldUnicodePath();
|
|
227
|
-
if (upath !== null) {
|
|
228
|
-
this.fileNameStr = upath;
|
|
229
|
-
} else {
|
|
230
|
-
// ASCII text or unsupported code page
|
|
231
|
-
var fileNameByteArray = utils.transformTo(decodeParamType, this.fileName);
|
|
232
|
-
this.fileNameStr = this.loadOptions.decodeFileName(fileNameByteArray);
|
|
233
|
-
}
|
|
234
|
-
|
|
235
|
-
var ucomment = this.findExtraFieldUnicodeComment();
|
|
236
|
-
if (ucomment !== null) {
|
|
237
|
-
this.fileCommentStr = ucomment;
|
|
238
|
-
} else {
|
|
239
|
-
// ASCII text or unsupported code page
|
|
240
|
-
var commentByteArray = utils.transformTo(decodeParamType, this.fileComment);
|
|
241
|
-
this.fileCommentStr = this.loadOptions.decodeFileName(commentByteArray);
|
|
242
|
-
}
|
|
243
|
-
}
|
|
244
|
-
},
|
|
245
|
-
|
|
246
|
-
/**
|
|
247
|
-
* Find the unicode path declared in the extra field, if any.
|
|
248
|
-
* @return {String} the unicode path, null otherwise.
|
|
249
|
-
*/
|
|
250
|
-
findExtraFieldUnicodePath: function() {
|
|
251
|
-
var upathField = this.extraFields[0x7075];
|
|
252
|
-
if (upathField) {
|
|
253
|
-
var extraReader = readerFor(upathField.value);
|
|
254
|
-
|
|
255
|
-
// wrong version
|
|
256
|
-
if (extraReader.readInt(1) !== 1) {
|
|
257
|
-
return null;
|
|
258
|
-
}
|
|
259
|
-
|
|
260
|
-
// the crc of the filename changed, this field is out of date.
|
|
261
|
-
if (crc32fn(this.fileName) !== extraReader.readInt(4)) {
|
|
262
|
-
return null;
|
|
263
|
-
}
|
|
264
|
-
|
|
265
|
-
return utf8.utf8decode(extraReader.readData(upathField.length - 5));
|
|
266
|
-
}
|
|
267
|
-
return null;
|
|
268
|
-
},
|
|
269
|
-
|
|
270
|
-
/**
|
|
271
|
-
* Find the unicode comment declared in the extra field, if any.
|
|
272
|
-
* @return {String} the unicode comment, null otherwise.
|
|
273
|
-
*/
|
|
274
|
-
findExtraFieldUnicodeComment: function() {
|
|
275
|
-
var ucommentField = this.extraFields[0x6375];
|
|
276
|
-
if (ucommentField) {
|
|
277
|
-
var extraReader = readerFor(ucommentField.value);
|
|
278
|
-
|
|
279
|
-
// wrong version
|
|
280
|
-
if (extraReader.readInt(1) !== 1) {
|
|
281
|
-
return null;
|
|
282
|
-
}
|
|
283
|
-
|
|
284
|
-
// the crc of the comment changed, this field is out of date.
|
|
285
|
-
if (crc32fn(this.fileComment) !== extraReader.readInt(4)) {
|
|
286
|
-
return null;
|
|
287
|
-
}
|
|
288
|
-
|
|
289
|
-
return utf8.utf8decode(extraReader.readData(ucommentField.length - 5));
|
|
290
|
-
}
|
|
291
|
-
return null;
|
|
292
|
-
}
|
|
293
|
-
};
|
|
294
|
-
module.exports = ZipEntry;
|
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
var StreamHelper = require('./stream/StreamHelper');
|
|
4
|
-
var DataWorker = require('./stream/DataWorker');
|
|
5
|
-
var utf8 = require('./utf8');
|
|
6
|
-
var CompressedObject = require('./compressedObject');
|
|
7
|
-
var GenericWorker = require('./stream/GenericWorker');
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* A simple object representing a file in the zip file.
|
|
11
|
-
* @constructor
|
|
12
|
-
* @param {string} name the name of the file
|
|
13
|
-
* @param {String|ArrayBuffer|Uint8Array|Buffer} data the data
|
|
14
|
-
* @param {Object} options the options of the file
|
|
15
|
-
*/
|
|
16
|
-
var ZipObject = function(name, data, options) {
|
|
17
|
-
this.name = name;
|
|
18
|
-
this.dir = options.dir;
|
|
19
|
-
this.date = options.date;
|
|
20
|
-
this.comment = options.comment;
|
|
21
|
-
this.unixPermissions = options.unixPermissions;
|
|
22
|
-
this.dosPermissions = options.dosPermissions;
|
|
23
|
-
|
|
24
|
-
this._data = data;
|
|
25
|
-
this._dataBinary = options.binary;
|
|
26
|
-
// keep only the compression
|
|
27
|
-
this.options = {
|
|
28
|
-
compression : options.compression,
|
|
29
|
-
compressionOptions : options.compressionOptions
|
|
30
|
-
};
|
|
31
|
-
};
|
|
32
|
-
|
|
33
|
-
ZipObject.prototype = {
|
|
34
|
-
/**
|
|
35
|
-
* Create an internal stream for the content of this object.
|
|
36
|
-
* @param {String} type the type of each chunk.
|
|
37
|
-
* @return StreamHelper the stream.
|
|
38
|
-
*/
|
|
39
|
-
internalStream: function (type) {
|
|
40
|
-
var result = null, outputType = "string";
|
|
41
|
-
try {
|
|
42
|
-
if (!type) {
|
|
43
|
-
throw new Error("No output type specified.");
|
|
44
|
-
}
|
|
45
|
-
outputType = type.toLowerCase();
|
|
46
|
-
var askUnicodeString = outputType === "string" || outputType === "text";
|
|
47
|
-
if (outputType === "binarystring" || outputType === "text") {
|
|
48
|
-
outputType = "string";
|
|
49
|
-
}
|
|
50
|
-
result = this._decompressWorker();
|
|
51
|
-
|
|
52
|
-
var isUnicodeString = !this._dataBinary;
|
|
53
|
-
|
|
54
|
-
if (isUnicodeString && !askUnicodeString) {
|
|
55
|
-
result = result.pipe(new utf8.Utf8EncodeWorker());
|
|
56
|
-
}
|
|
57
|
-
if (!isUnicodeString && askUnicodeString) {
|
|
58
|
-
result = result.pipe(new utf8.Utf8DecodeWorker());
|
|
59
|
-
}
|
|
60
|
-
} catch (e) {
|
|
61
|
-
result = new GenericWorker("error");
|
|
62
|
-
result.error(e);
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
return new StreamHelper(result, outputType, "");
|
|
66
|
-
},
|
|
67
|
-
|
|
68
|
-
/**
|
|
69
|
-
* Prepare the content in the asked type.
|
|
70
|
-
* @param {String} type the type of the result.
|
|
71
|
-
* @param {Function} onUpdate a function to call on each internal update.
|
|
72
|
-
* @return Promise the promise of the result.
|
|
73
|
-
*/
|
|
74
|
-
async: function (type, onUpdate) {
|
|
75
|
-
return this.internalStream(type).accumulate(onUpdate);
|
|
76
|
-
},
|
|
77
|
-
|
|
78
|
-
/**
|
|
79
|
-
* Prepare the content as a nodejs stream.
|
|
80
|
-
* @param {String} type the type of each chunk.
|
|
81
|
-
* @param {Function} onUpdate a function to call on each internal update.
|
|
82
|
-
* @return Stream the stream.
|
|
83
|
-
*/
|
|
84
|
-
nodeStream: function (type, onUpdate) {
|
|
85
|
-
return this.internalStream(type || "nodebuffer").toNodejsStream(onUpdate);
|
|
86
|
-
},
|
|
87
|
-
|
|
88
|
-
/**
|
|
89
|
-
* Return a worker for the compressed content.
|
|
90
|
-
* @private
|
|
91
|
-
* @param {Object} compression the compression object to use.
|
|
92
|
-
* @param {Object} compressionOptions the options to use when compressing.
|
|
93
|
-
* @return Worker the worker.
|
|
94
|
-
*/
|
|
95
|
-
_compressWorker: function (compression, compressionOptions) {
|
|
96
|
-
if (
|
|
97
|
-
this._data instanceof CompressedObject &&
|
|
98
|
-
this._data.compression.magic === compression.magic
|
|
99
|
-
) {
|
|
100
|
-
return this._data.getCompressedWorker();
|
|
101
|
-
} else {
|
|
102
|
-
var result = this._decompressWorker();
|
|
103
|
-
if(!this._dataBinary) {
|
|
104
|
-
result = result.pipe(new utf8.Utf8EncodeWorker());
|
|
105
|
-
}
|
|
106
|
-
return CompressedObject.createWorkerFrom(result, compression, compressionOptions);
|
|
107
|
-
}
|
|
108
|
-
},
|
|
109
|
-
/**
|
|
110
|
-
* Return a worker for the decompressed content.
|
|
111
|
-
* @private
|
|
112
|
-
* @return Worker the worker.
|
|
113
|
-
*/
|
|
114
|
-
_decompressWorker : function () {
|
|
115
|
-
if (this._data instanceof CompressedObject) {
|
|
116
|
-
return this._data.getContentWorker();
|
|
117
|
-
} else if (this._data instanceof GenericWorker) {
|
|
118
|
-
return this._data;
|
|
119
|
-
} else {
|
|
120
|
-
return new DataWorker(this._data);
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
};
|
|
124
|
-
|
|
125
|
-
var removedMethods = ["asText", "asBinary", "asNodeBuffer", "asUint8Array", "asArrayBuffer"];
|
|
126
|
-
var removedFn = function () {
|
|
127
|
-
throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.");
|
|
128
|
-
};
|
|
129
|
-
|
|
130
|
-
for(var i = 0; i < removedMethods.length; i++) {
|
|
131
|
-
ZipObject.prototype[removedMethods[i]] = removedFn;
|
|
132
|
-
}
|
|
133
|
-
module.exports = ZipObject;
|