appium-mac2-driver 4.3.5 → 4.3.6
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/CHANGELOG.md +6 -0
- package/WebDriverAgentMac/WebDriverAgentLib/Utilities/FBXPath.m +48 -2
- package/WebDriverAgentMac/WebDriverAgentMac.xcodeproj/project.pbxproj +4 -0
- package/build/lib/wda-mac.d.ts.map +1 -1
- package/build/lib/wda-mac.js +4 -5
- package/build/lib/wda-mac.js.map +1 -1
- package/lib/wda-mac.ts +4 -5
- package/node_modules/@appium/logger/CHANGELOG.md +8 -0
- package/node_modules/@appium/logger/package.json +3 -3
- package/node_modules/@appium/strongbox/build/lib/index.d.ts.map +1 -1
- package/node_modules/@appium/strongbox/build/lib/index.js +6 -1
- package/node_modules/@appium/strongbox/build/lib/index.js.map +1 -1
- package/node_modules/@appium/strongbox/lib/index.ts +6 -1
- package/node_modules/@appium/strongbox/package.json +2 -2
- package/node_modules/@appium/support/build/lib/fs.d.ts.map +1 -1
- package/node_modules/@appium/support/build/lib/fs.js +7 -0
- package/node_modules/@appium/support/build/lib/fs.js.map +1 -1
- package/node_modules/@appium/support/build/lib/index.d.ts.map +1 -1
- package/node_modules/@appium/support/build/lib/net.d.ts.map +1 -1
- package/node_modules/@appium/support/build/lib/net.js +6 -2
- package/node_modules/@appium/support/build/lib/net.js.map +1 -1
- package/node_modules/@appium/support/build/lib/util.d.ts.map +1 -1
- package/node_modules/@appium/support/build/lib/util.js +10 -4
- package/node_modules/@appium/support/build/lib/util.js.map +1 -1
- package/node_modules/@appium/support/build/lib/zip.d.ts.map +1 -1
- package/node_modules/@appium/support/build/lib/zip.js +2 -7
- package/node_modules/@appium/support/build/lib/zip.js.map +1 -1
- package/node_modules/@appium/support/lib/fs.ts +8 -1
- package/node_modules/@appium/support/lib/net.ts +7 -2
- package/node_modules/@appium/support/lib/util.ts +9 -3
- package/node_modules/@appium/support/lib/zip.ts +3 -9
- package/node_modules/@appium/support/package.json +9 -9
- package/node_modules/@appium/types/package.json +4 -4
- package/node_modules/@img/sharp-darwin-arm64/index.cjs +1 -1
- package/node_modules/@img/sharp-darwin-arm64/lib/sharp-darwin-arm64-0.35.5.node +0 -0
- package/node_modules/@img/sharp-darwin-arm64/package.json +2 -2
- package/node_modules/@img/sharp-libvips-darwin-arm64/README.md +1 -1
- package/node_modules/@img/sharp-libvips-darwin-arm64/lib/glib-2.0/include/glibconfig.h +2 -2
- package/node_modules/@img/sharp-libvips-darwin-arm64/lib/{libvips-cpp.8.18.6.dylib → libvips-cpp.8.18.7.dylib} +0 -0
- package/node_modules/@img/sharp-libvips-darwin-arm64/package.json +2 -2
- package/node_modules/@img/sharp-libvips-darwin-arm64/versions.json +11 -11
- package/node_modules/appium-xcode/CHANGELOG.md +28 -0
- package/node_modules/appium-xcode/README.md +1 -1
- package/node_modules/appium-xcode/package.json +14 -18
- package/node_modules/b4a/browser.js +5 -0
- package/node_modules/b4a/index.d.ts +144 -0
- package/node_modules/b4a/index.js +5 -0
- package/node_modules/b4a/package.json +4 -1
- package/node_modules/b4a/runtime.d.ts +14 -0
- package/node_modules/bare-fs/binding.c +53 -24
- package/node_modules/bare-fs/index.d.ts +12 -10
- package/node_modules/bare-fs/index.js +13 -4
- package/node_modules/bare-fs/package.json +2 -1
- package/node_modules/bare-fs/prebuilds/android-arm/bare-fs.bare +0 -0
- package/node_modules/bare-fs/prebuilds/android-arm64/bare-fs.bare +0 -0
- package/node_modules/bare-fs/prebuilds/android-ia32/bare-fs.bare +0 -0
- package/node_modules/bare-fs/prebuilds/android-x64/bare-fs.bare +0 -0
- package/node_modules/bare-fs/prebuilds/darwin-arm64/bare-fs.bare +0 -0
- package/node_modules/bare-fs/prebuilds/darwin-x64/bare-fs.bare +0 -0
- package/node_modules/bare-fs/prebuilds/ios-arm64/bare-fs.bare +0 -0
- package/node_modules/bare-fs/prebuilds/ios-arm64-simulator/bare-fs.bare +0 -0
- package/node_modules/bare-fs/prebuilds/ios-x64-simulator/bare-fs.bare +0 -0
- package/node_modules/bare-fs/prebuilds/linux-arm64/bare-fs.bare +0 -0
- package/node_modules/bare-fs/prebuilds/linux-x64/bare-fs.bare +0 -0
- package/node_modules/bare-fs/prebuilds/win32-arm64/bare-fs.bare +0 -0
- package/node_modules/bare-fs/prebuilds/win32-x64/bare-fs.bare +0 -0
- package/node_modules/bplist-creator/README.md +26 -6
- package/node_modules/bplist-creator/dist/index.cjs +508 -0
- package/node_modules/bplist-creator/dist/index.cjs.map +7 -0
- package/node_modules/bplist-creator/dist/index.d.cts +12 -0
- package/node_modules/bplist-creator/dist/index.d.ts +12 -0
- package/node_modules/bplist-creator/dist/index.mjs +472 -0
- package/node_modules/bplist-creator/dist/index.mjs.map +7 -0
- package/node_modules/bplist-creator/package.json +43 -9
- package/node_modules/bplist-parser/README.md +37 -3
- package/node_modules/bplist-parser/dist/index.cjs +385 -0
- package/node_modules/bplist-parser/dist/index.cjs.map +7 -0
- package/node_modules/bplist-parser/dist/index.d.cts +13 -0
- package/node_modules/bplist-parser/dist/index.d.ts +13 -0
- package/node_modules/bplist-parser/{bplistParser.js → dist/index.mjs} +141 -171
- package/node_modules/bplist-parser/dist/index.mjs.map +7 -0
- package/node_modules/bplist-parser/package.json +39 -12
- package/node_modules/brace-expansion/dist/commonjs/index.d.ts +4 -0
- package/node_modules/brace-expansion/dist/commonjs/index.d.ts.map +1 -1
- package/node_modules/brace-expansion/dist/commonjs/index.js +69 -25
- package/node_modules/brace-expansion/dist/commonjs/index.js.map +1 -1
- package/node_modules/brace-expansion/dist/esm/index.d.ts +4 -0
- package/node_modules/brace-expansion/dist/esm/index.d.ts.map +1 -1
- package/node_modules/brace-expansion/dist/esm/index.js +68 -24
- package/node_modules/brace-expansion/dist/esm/index.js.map +1 -1
- package/node_modules/brace-expansion/package.json +2 -1
- package/node_modules/follow-redirects/index.js +10 -1
- package/node_modules/follow-redirects/package.json +1 -1
- package/node_modules/lru-cache/dist/commonjs/react-native/diagnostics-channel-react-native.d.ts.map +1 -0
- package/node_modules/lru-cache/dist/commonjs/react-native/diagnostics-channel-react-native.js.map +1 -0
- package/node_modules/lru-cache/dist/commonjs/react-native/diagnostics-channel.d.ts +5 -0
- package/node_modules/lru-cache/dist/commonjs/react-native/diagnostics-channel.js +7 -0
- package/node_modules/lru-cache/dist/commonjs/react-native/index.d.ts +1400 -0
- package/node_modules/lru-cache/dist/commonjs/react-native/index.d.ts.map +1 -0
- package/node_modules/lru-cache/dist/commonjs/react-native/index.js +1733 -0
- package/node_modules/lru-cache/dist/commonjs/react-native/index.js.map +1 -0
- package/node_modules/lru-cache/dist/commonjs/react-native/perf.d.ts +12 -0
- package/node_modules/lru-cache/dist/commonjs/react-native/perf.d.ts.map +1 -0
- package/node_modules/lru-cache/dist/commonjs/react-native/perf.js +10 -0
- package/node_modules/lru-cache/dist/commonjs/react-native/perf.js.map +1 -0
- package/node_modules/lru-cache/dist/esm/react-native/diagnostics-channel-react-native.d.ts.map +1 -0
- package/node_modules/lru-cache/dist/esm/react-native/diagnostics-channel-react-native.js.map +1 -0
- package/node_modules/lru-cache/dist/esm/react-native/diagnostics-channel.d.ts +5 -0
- package/node_modules/lru-cache/dist/esm/react-native/diagnostics-channel.js +4 -0
- package/node_modules/lru-cache/dist/esm/react-native/index.d.ts +1400 -0
- package/node_modules/lru-cache/dist/esm/react-native/index.d.ts.map +1 -0
- package/node_modules/lru-cache/dist/esm/react-native/index.js +1729 -0
- package/node_modules/lru-cache/dist/esm/react-native/index.js.map +1 -0
- package/node_modules/lru-cache/dist/esm/react-native/perf.d.ts +12 -0
- package/node_modules/lru-cache/dist/esm/react-native/perf.d.ts.map +1 -0
- package/node_modules/lru-cache/dist/esm/react-native/perf.js +7 -0
- package/node_modules/lru-cache/dist/esm/react-native/perf.js.map +1 -0
- package/node_modules/lru-cache/package.json +27 -1
- package/node_modules/p-limit/index.d.ts +2 -0
- package/node_modules/p-limit/index.js +17 -1
- package/node_modules/p-limit/package.json +1 -1
- package/node_modules/p-limit/readme.md +2 -0
- package/node_modules/sharp/dist/index.d.cts +2 -2
- package/node_modules/sharp/dist/index.d.mts +3 -3
- package/node_modules/sharp/dist/is.cjs +8 -2
- package/node_modules/sharp/dist/is.mjs +8 -2
- package/node_modules/sharp/dist/operation.cjs +2 -2
- package/node_modules/sharp/dist/operation.mjs +2 -2
- package/node_modules/sharp/dist/output.cjs +1 -0
- package/node_modules/sharp/dist/output.mjs +1 -0
- package/node_modules/sharp/dist/resize.cjs +14 -14
- package/node_modules/sharp/dist/resize.mjs +14 -14
- package/node_modules/sharp/dist/sharp.cjs +3 -3
- package/node_modules/sharp/dist/sharp.mjs +3 -3
- package/node_modules/sharp/lib/index.d.ts +2 -2
- package/node_modules/sharp/package.json +35 -35
- package/node_modules/sharp/src/binding.gyp +1 -1
- package/node_modules/sharp/src/common.cc +4 -4
- package/node_modules/sharp/src/common.h +2 -2
- package/node_modules/sharp/src/pipeline.cc +31 -6
- package/node_modules/sharp/src/utilities.cc +1 -1
- package/node_modules/spdx-license-ids/index.json +13 -0
- package/node_modules/spdx-license-ids/package.json +1 -1
- package/node_modules/stream-buffers/.codeclimate.yml +12 -0
- package/node_modules/stream-buffers/.eslintignore +1 -0
- package/node_modules/stream-buffers/.eslintrc +25 -0
- package/node_modules/stream-buffers/.github/workflows/codeql-analysis.yml +71 -0
- package/node_modules/stream-buffers/.github/workflows/node.js.yml +31 -0
- package/node_modules/stream-buffers/.mailmap +1 -0
- package/node_modules/stream-buffers/.nvmrc +1 -0
- package/node_modules/stream-buffers/README.md +65 -65
- package/node_modules/stream-buffers/lib/constants.js +8 -6
- package/node_modules/stream-buffers/lib/readable_streambuffer.js +114 -136
- package/node_modules/stream-buffers/lib/streambuffer.js +5 -3
- package/node_modules/stream-buffers/lib/writable_streambuffer.js +72 -97
- package/node_modules/stream-buffers/package.json +7 -5
- package/node_modules/type-fest/index.d.ts +7 -7
- package/node_modules/type-fest/package.json +2 -1
- package/node_modules/type-fest/readme.md +7 -16
- package/node_modules/type-fest/source/all-extend.d.ts +9 -7
- package/node_modules/type-fest/source/array-reverse.d.ts +13 -12
- package/node_modules/type-fest/source/array-tail.d.ts +3 -3
- package/node_modules/type-fest/source/delimiter-case.d.ts +1 -1
- package/node_modules/type-fest/source/get.d.ts +1 -1
- package/node_modules/type-fest/source/int-closed-range.d.ts +4 -1
- package/node_modules/type-fest/source/int-range.d.ts +56 -9
- package/node_modules/type-fest/source/internal/array.d.ts +14 -13
- package/node_modules/type-fest/source/internal/numeric.d.ts +0 -38
- package/node_modules/type-fest/source/internal/object.d.ts +30 -1
- package/node_modules/type-fest/source/is-boolean-literal.d.ts +39 -0
- package/node_modules/type-fest/source/is-literal.d.ts +43 -269
- package/node_modules/type-fest/source/is-numeric-literal.d.ts +50 -0
- package/node_modules/type-fest/source/is-string-literal.d.ts +72 -0
- package/node_modules/type-fest/source/is-symbol-literal.d.ts +39 -0
- package/node_modules/type-fest/source/is-tuple.d.ts +3 -3
- package/node_modules/type-fest/source/jsonify.d.ts +1 -5
- package/node_modules/type-fest/source/merge-deep.d.ts +3 -3
- package/node_modules/type-fest/source/remove-prefix.d.ts +1 -1
- package/node_modules/type-fest/source/remove-suffix.d.ts +1 -1
- package/node_modules/type-fest/source/rename-keys.d.ts +163 -0
- package/node_modules/type-fest/source/set-required.d.ts +10 -9
- package/node_modules/type-fest/source/shared-union-fields-deep.d.ts +6 -4
- package/node_modules/type-fest/source/some-extend.d.ts +9 -7
- package/node_modules/type-fest/source/split-on-rest-element.d.ts +14 -13
- package/node_modules/type-fest/source/split.d.ts +22 -11
- package/node_modules/type-fest/source/string-repeat.d.ts +1 -1
- package/node_modules/type-fest/source/string-to-array.d.ts +1 -1
- package/node_modules/type-fest/source/tsconfig-json.d.ts +1 -1
- package/node_modules/type-fest/source/typed-array.d.ts +6 -0
- package/node_modules/type-fest/source/union-max.d.ts +56 -0
- package/node_modules/type-fest/source/writable.d.ts +2 -2
- package/package.json +3 -3
- package/node_modules/@appium/support/node_modules/asyncbox/LICENSE +0 -203
- package/node_modules/@appium/support/node_modules/asyncbox/README.md +0 -215
- package/node_modules/@appium/support/node_modules/asyncbox/build/cjs/lib/asyncbox.d.ts +0 -103
- package/node_modules/@appium/support/node_modules/asyncbox/build/cjs/lib/asyncbox.d.ts.map +0 -1
- package/node_modules/@appium/support/node_modules/asyncbox/build/cjs/lib/asyncbox.js +0 -301
- package/node_modules/@appium/support/node_modules/asyncbox/build/cjs/lib/asyncbox.js.map +0 -1
- package/node_modules/@appium/support/node_modules/asyncbox/build/cjs/lib/types.d.ts +0 -84
- package/node_modules/@appium/support/node_modules/asyncbox/build/cjs/lib/types.d.ts.map +0 -1
- package/node_modules/@appium/support/node_modules/asyncbox/build/cjs/lib/types.js +0 -3
- package/node_modules/@appium/support/node_modules/asyncbox/build/cjs/lib/types.js.map +0 -1
- package/node_modules/@appium/support/node_modules/asyncbox/build/cjs/package.json +0 -3
- package/node_modules/@appium/support/node_modules/asyncbox/build/esm/lib/asyncbox.d.ts +0 -103
- package/node_modules/@appium/support/node_modules/asyncbox/build/esm/lib/asyncbox.d.ts.map +0 -1
- package/node_modules/@appium/support/node_modules/asyncbox/build/esm/lib/asyncbox.js +0 -288
- package/node_modules/@appium/support/node_modules/asyncbox/build/esm/lib/asyncbox.js.map +0 -1
- package/node_modules/@appium/support/node_modules/asyncbox/build/esm/lib/types.d.ts +0 -84
- package/node_modules/@appium/support/node_modules/asyncbox/build/esm/lib/types.d.ts.map +0 -1
- package/node_modules/@appium/support/node_modules/asyncbox/build/esm/lib/types.js +0 -2
- package/node_modules/@appium/support/node_modules/asyncbox/build/esm/lib/types.js.map +0 -1
- package/node_modules/@appium/support/node_modules/asyncbox/build/esm/package.json +0 -3
- package/node_modules/@appium/support/node_modules/asyncbox/lib/asyncbox.ts +0 -365
- package/node_modules/@appium/support/node_modules/asyncbox/lib/types.ts +0 -88
- package/node_modules/@appium/support/node_modules/asyncbox/package.json +0 -74
- package/node_modules/@appium/support/node_modules/axios/CHANGELOG.md +0 -1872
- package/node_modules/@appium/support/node_modules/axios/LICENSE +0 -7
- package/node_modules/@appium/support/node_modules/axios/MIGRATION_GUIDE.md +0 -877
- package/node_modules/@appium/support/node_modules/axios/README.md +0 -2623
- package/node_modules/@appium/support/node_modules/axios/dist/axios.js +0 -5509
- package/node_modules/@appium/support/node_modules/axios/dist/axios.min.js +0 -5
- package/node_modules/@appium/support/node_modules/axios/dist/axios.min.js.map +0 -1
- package/node_modules/@appium/support/node_modules/axios/dist/browser/axios.cjs +0 -5469
- package/node_modules/@appium/support/node_modules/axios/dist/esm/axios.js +0 -5490
- package/node_modules/@appium/support/node_modules/axios/dist/esm/axios.min.js +0 -3
- package/node_modules/@appium/support/node_modules/axios/dist/esm/axios.min.js.map +0 -1
- package/node_modules/@appium/support/node_modules/axios/dist/node/axios.cjs +0 -6356
- package/node_modules/@appium/support/node_modules/axios/index.d.cts +0 -762
- package/node_modules/@appium/support/node_modules/axios/index.d.ts +0 -783
- package/node_modules/@appium/support/node_modules/axios/index.js +0 -45
- package/node_modules/@appium/support/node_modules/axios/lib/adapters/README.md +0 -36
- package/node_modules/@appium/support/node_modules/axios/lib/adapters/adapters.js +0 -132
- package/node_modules/@appium/support/node_modules/axios/lib/adapters/fetch.js +0 -643
- package/node_modules/@appium/support/node_modules/axios/lib/adapters/http.js +0 -1406
- package/node_modules/@appium/support/node_modules/axios/lib/adapters/xhr.js +0 -228
- package/node_modules/@appium/support/node_modules/axios/lib/axios.js +0 -89
- package/node_modules/@appium/support/node_modules/axios/lib/cancel/CancelToken.js +0 -135
- package/node_modules/@appium/support/node_modules/axios/lib/cancel/CanceledError.js +0 -22
- package/node_modules/@appium/support/node_modules/axios/lib/cancel/isCancel.js +0 -5
- package/node_modules/@appium/support/node_modules/axios/lib/core/Axios.js +0 -301
- package/node_modules/@appium/support/node_modules/axios/lib/core/AxiosError.js +0 -219
- package/node_modules/@appium/support/node_modules/axios/lib/core/AxiosHeaders.js +0 -474
- package/node_modules/@appium/support/node_modules/axios/lib/core/InterceptorManager.js +0 -72
- package/node_modules/@appium/support/node_modules/axios/lib/core/README.md +0 -8
- package/node_modules/@appium/support/node_modules/axios/lib/core/buildFullPath.js +0 -88
- package/node_modules/@appium/support/node_modules/axios/lib/core/dispatchRequest.js +0 -89
- package/node_modules/@appium/support/node_modules/axios/lib/core/mergeConfig.js +0 -174
- package/node_modules/@appium/support/node_modules/axios/lib/core/setFormDataHeaders.js +0 -27
- package/node_modules/@appium/support/node_modules/axios/lib/core/settle.js +0 -27
- package/node_modules/@appium/support/node_modules/axios/lib/core/transformData.js +0 -28
- package/node_modules/@appium/support/node_modules/axios/lib/defaults/index.js +0 -177
- package/node_modules/@appium/support/node_modules/axios/lib/defaults/transitional.js +0 -10
- package/node_modules/@appium/support/node_modules/axios/lib/env/README.md +0 -3
- package/node_modules/@appium/support/node_modules/axios/lib/env/classes/FormData.js +0 -2
- package/node_modules/@appium/support/node_modules/axios/lib/env/data.js +0 -1
- package/node_modules/@appium/support/node_modules/axios/lib/helpers/AxiosTransformStream.js +0 -156
- package/node_modules/@appium/support/node_modules/axios/lib/helpers/AxiosURLSearchParams.js +0 -59
- package/node_modules/@appium/support/node_modules/axios/lib/helpers/Http2Sessions.js +0 -119
- package/node_modules/@appium/support/node_modules/axios/lib/helpers/HttpStatusCode.js +0 -78
- package/node_modules/@appium/support/node_modules/axios/lib/helpers/README.md +0 -7
- package/node_modules/@appium/support/node_modules/axios/lib/helpers/ZlibHeaderTransformStream.js +0 -29
- package/node_modules/@appium/support/node_modules/axios/lib/helpers/bind.js +0 -14
- package/node_modules/@appium/support/node_modules/axios/lib/helpers/buildURL.js +0 -69
- package/node_modules/@appium/support/node_modules/axios/lib/helpers/callbackify.js +0 -18
- package/node_modules/@appium/support/node_modules/axios/lib/helpers/combineURLs.js +0 -23
- package/node_modules/@appium/support/node_modules/axios/lib/helpers/composeSignals.js +0 -68
- package/node_modules/@appium/support/node_modules/axios/lib/helpers/cookies.js +0 -64
- package/node_modules/@appium/support/node_modules/axios/lib/helpers/deprecatedMethod.js +0 -31
- package/node_modules/@appium/support/node_modules/axios/lib/helpers/estimateDataURLDecodedBytes.js +0 -166
- package/node_modules/@appium/support/node_modules/axios/lib/helpers/formDataToJSON.js +0 -125
- package/node_modules/@appium/support/node_modules/axios/lib/helpers/formDataToStream.js +0 -119
- package/node_modules/@appium/support/node_modules/axios/lib/helpers/fromDataURI.js +0 -68
- package/node_modules/@appium/support/node_modules/axios/lib/helpers/isAbsoluteURL.js +0 -19
- package/node_modules/@appium/support/node_modules/axios/lib/helpers/isAxiosError.js +0 -14
- package/node_modules/@appium/support/node_modules/axios/lib/helpers/isURLSameOrigin.js +0 -16
- package/node_modules/@appium/support/node_modules/axios/lib/helpers/null.js +0 -2
- package/node_modules/@appium/support/node_modules/axios/lib/helpers/parseHeaders.js +0 -71
- package/node_modules/@appium/support/node_modules/axios/lib/helpers/parseProtocol.js +0 -6
- package/node_modules/@appium/support/node_modules/axios/lib/helpers/progressEventReducer.js +0 -54
- package/node_modules/@appium/support/node_modules/axios/lib/helpers/readBlob.js +0 -15
- package/node_modules/@appium/support/node_modules/axios/lib/helpers/resolveConfig.js +0 -105
- package/node_modules/@appium/support/node_modules/axios/lib/helpers/sanitizeHeaderValue.js +0 -60
- package/node_modules/@appium/support/node_modules/axios/lib/helpers/shouldBypassProxy.js +0 -329
- package/node_modules/@appium/support/node_modules/axios/lib/helpers/speedometer.js +0 -55
- package/node_modules/@appium/support/node_modules/axios/lib/helpers/spread.js +0 -28
- package/node_modules/@appium/support/node_modules/axios/lib/helpers/throttle.js +0 -44
- package/node_modules/@appium/support/node_modules/axios/lib/helpers/toFormData.js +0 -286
- package/node_modules/@appium/support/node_modules/axios/lib/helpers/toURLEncodedForm.js +0 -19
- package/node_modules/@appium/support/node_modules/axios/lib/helpers/trackStream.js +0 -89
- package/node_modules/@appium/support/node_modules/axios/lib/helpers/validator.js +0 -112
- package/node_modules/@appium/support/node_modules/axios/lib/platform/browser/classes/Blob.js +0 -3
- package/node_modules/@appium/support/node_modules/axios/lib/platform/browser/classes/FormData.js +0 -3
- package/node_modules/@appium/support/node_modules/axios/lib/platform/browser/classes/URLSearchParams.js +0 -4
- package/node_modules/@appium/support/node_modules/axios/lib/platform/browser/index.js +0 -13
- package/node_modules/@appium/support/node_modules/axios/lib/platform/common/utils.js +0 -52
- package/node_modules/@appium/support/node_modules/axios/lib/platform/index.js +0 -7
- package/node_modules/@appium/support/node_modules/axios/lib/platform/node/classes/Buffer.js +0 -11
- package/node_modules/@appium/support/node_modules/axios/lib/platform/node/classes/FormData.js +0 -3
- package/node_modules/@appium/support/node_modules/axios/lib/platform/node/classes/URLSearchParams.js +0 -4
- package/node_modules/@appium/support/node_modules/axios/lib/platform/node/index.js +0 -37
- package/node_modules/@appium/support/node_modules/axios/lib/utils.js +0 -1029
- package/node_modules/@appium/support/node_modules/axios/package.json +0 -203
- package/node_modules/@img/sharp-darwin-arm64/lib/sharp-darwin-arm64-0.35.4.node +0 -0
- package/node_modules/big-integer/BigInteger.d.ts +0 -2393
- package/node_modules/big-integer/BigInteger.js +0 -1453
- package/node_modules/big-integer/BigInteger.min.js +0 -1
- package/node_modules/big-integer/LICENSE +0 -24
- package/node_modules/big-integer/README.md +0 -589
- package/node_modules/big-integer/bower.json +0 -29
- package/node_modules/big-integer/package.json +0 -48
- package/node_modules/big-integer/tsconfig.json +0 -24
- package/node_modules/bplist-creator/bplistCreator.d.ts +0 -8
- package/node_modules/bplist-creator/bplistCreator.js +0 -460
- package/node_modules/bplist-creator/test/airplay.bplist +0 -0
- package/node_modules/bplist-creator/test/binaryData.bplist +0 -0
- package/node_modules/bplist-creator/test/creatorTest.js +0 -211
- package/node_modules/bplist-creator/test/iTunes-small.bplist +0 -0
- package/node_modules/bplist-creator/test/integers.bplist +0 -0
- package/node_modules/bplist-creator/test/sample1.bplist +0 -0
- package/node_modules/bplist-creator/test/sample2.bplist +0 -0
- package/node_modules/bplist-creator/test/uid.bplist +0 -0
- package/node_modules/bplist-creator/test/utf16.bplist +0 -0
- package/node_modules/bplist-parser/.editorconfig +0 -12
- package/node_modules/bplist-parser/.eslintignore +0 -1
- package/node_modules/bplist-parser/.eslintrc.js +0 -296
- package/node_modules/bplist-parser/bplistParser.d.ts +0 -8
- package/node_modules/stream-buffers/.travis.yml +0 -28
- package/node_modules/stream-buffers/coverage/coverage.json +0 -1
- package/node_modules/stream-buffers/coverage/lcov-report/base.css +0 -182
- package/node_modules/stream-buffers/coverage/lcov-report/index.html +0 -73
- package/node_modules/stream-buffers/coverage/lcov-report/lib/constants.js.html +0 -63
- package/node_modules/stream-buffers/coverage/lcov-report/lib/index.html +0 -112
- package/node_modules/stream-buffers/coverage/lcov-report/lib/readable_streambuffer.js.html +0 -453
- package/node_modules/stream-buffers/coverage/lcov-report/lib/streambuffer.js.html +0 -54
- package/node_modules/stream-buffers/coverage/lcov-report/lib/writable_streambuffer.js.html +0 -336
- package/node_modules/stream-buffers/coverage/lcov-report/prettify.css +0 -1
- package/node_modules/stream-buffers/coverage/lcov-report/prettify.js +0 -1
- package/node_modules/stream-buffers/coverage/lcov-report/sort-arrow-sprite.png +0 -0
- package/node_modules/stream-buffers/coverage/lcov-report/sorter.js +0 -156
- package/node_modules/stream-buffers/coverage/lcov.info +0 -305
|
@@ -1,28 +1,23 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
// UID object definition
|
|
20
|
-
const UID = exports.UID = function(id) {
|
|
21
|
-
this.UID = id;
|
|
1
|
+
// bplistParser.ts
|
|
2
|
+
import fs from "node:fs";
|
|
3
|
+
var debug = false;
|
|
4
|
+
var maxObjectSize = 100 * 1e3 * 1e3;
|
|
5
|
+
var maxObjectCount = 32768;
|
|
6
|
+
function setMaxObjectSize(value) {
|
|
7
|
+
maxObjectSize = value;
|
|
8
|
+
}
|
|
9
|
+
function setMaxObjectCount(value) {
|
|
10
|
+
maxObjectCount = value;
|
|
11
|
+
}
|
|
12
|
+
var EPOCH = 9783072e5;
|
|
13
|
+
var UID = class {
|
|
14
|
+
UID;
|
|
15
|
+
constructor(id) {
|
|
16
|
+
this.UID = id;
|
|
17
|
+
}
|
|
22
18
|
};
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
return new Promise(function (resolve, reject) {
|
|
19
|
+
function parseFile(fileNameOrBuffer, callback) {
|
|
20
|
+
return new Promise(function(resolve, reject) {
|
|
26
21
|
function tryParseBuffer(buffer) {
|
|
27
22
|
let err = null;
|
|
28
23
|
let result;
|
|
@@ -36,37 +31,32 @@ exports.parseFile = function (fileNameOrBuffer, callback) {
|
|
|
36
31
|
if (callback) callback(err, result);
|
|
37
32
|
}
|
|
38
33
|
}
|
|
39
|
-
|
|
40
34
|
if (Buffer.isBuffer(fileNameOrBuffer)) {
|
|
41
35
|
return tryParseBuffer(fileNameOrBuffer);
|
|
42
36
|
}
|
|
43
|
-
fs.readFile(fileNameOrBuffer, function
|
|
37
|
+
fs.readFile(fileNameOrBuffer, function(err, data) {
|
|
44
38
|
if (err) {
|
|
45
39
|
reject(err);
|
|
46
|
-
|
|
40
|
+
if (callback) callback(err);
|
|
41
|
+
return;
|
|
47
42
|
}
|
|
48
43
|
tryParseBuffer(data);
|
|
49
44
|
});
|
|
50
45
|
});
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
46
|
+
}
|
|
47
|
+
function parseFileSync(fileNameOrBuffer) {
|
|
48
|
+
const buffer = Buffer.isBuffer(fileNameOrBuffer) ? fileNameOrBuffer : fs.readFileSync(fileNameOrBuffer);
|
|
49
|
+
return parseBuffer(buffer);
|
|
50
|
+
}
|
|
51
|
+
function parseBuffer(buffer) {
|
|
52
|
+
const header = buffer.slice(0, "bplist00".length).toString("utf8");
|
|
53
|
+
if (header !== "bplist00") {
|
|
54
|
+
throw new Error("Invalid binary plist. Expected 'bplist00' at offset 0.");
|
|
56
55
|
}
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
const parseBuffer = exports.parseBuffer = function (buffer) {
|
|
61
|
-
// check header
|
|
62
|
-
const header = buffer.slice(0, 'bplist'.length).toString('utf8');
|
|
63
|
-
if (header !== 'bplist') {
|
|
64
|
-
throw new Error("Invalid binary plist. Expected 'bplist' at offset 0.");
|
|
56
|
+
if (buffer.length < "bplist00".length + 32) {
|
|
57
|
+
throw new Error("Invalid binary plist. Expected a trailer.");
|
|
65
58
|
}
|
|
66
|
-
|
|
67
|
-
// Handle trailer, last 32 bytes of the file
|
|
68
59
|
const trailer = buffer.slice(buffer.length - 32, buffer.length);
|
|
69
|
-
// 6 null bytes (index 0 to 5)
|
|
70
60
|
const offsetSize = trailer.readUInt8(6);
|
|
71
61
|
if (debug) {
|
|
72
62
|
console.log("offsetSize: " + offsetSize);
|
|
@@ -87,14 +77,10 @@ const parseBuffer = exports.parseBuffer = function (buffer) {
|
|
|
87
77
|
if (debug) {
|
|
88
78
|
console.log("offsetTableOffset: " + offsetTableOffset);
|
|
89
79
|
}
|
|
90
|
-
|
|
91
|
-
if (numObjects > exports.maxObjectCount) {
|
|
80
|
+
if (numObjects > maxObjectCount) {
|
|
92
81
|
throw new Error("maxObjectCount exceeded");
|
|
93
82
|
}
|
|
94
|
-
|
|
95
|
-
// Handle offset table
|
|
96
83
|
const offsetTable = [];
|
|
97
|
-
|
|
98
84
|
for (let i = 0; i < numObjects; i++) {
|
|
99
85
|
const offsetBytes = buffer.slice(offsetTableOffset + i * offsetSize, offsetTableOffset + (i + 1) * offsetSize);
|
|
100
86
|
offsetTable[i] = readUInt(offsetBytes, 0);
|
|
@@ -102,101 +88,67 @@ const parseBuffer = exports.parseBuffer = function (buffer) {
|
|
|
102
88
|
console.log("Offset for Object #" + i + " is " + offsetTable[i] + " [" + offsetTable[i].toString(16) + "]");
|
|
103
89
|
}
|
|
104
90
|
}
|
|
105
|
-
|
|
106
|
-
// Parses an object inside the currently parsed binary property list.
|
|
107
|
-
// For the format specification check
|
|
108
|
-
// <a href="https://www.opensource.apple.com/source/CF/CF-635/CFBinaryPList.c">
|
|
109
|
-
// Apple's binary property list parser implementation</a>.
|
|
110
91
|
function parseObject(tableOffset) {
|
|
111
92
|
const offset = offsetTable[tableOffset];
|
|
112
93
|
const type = buffer[offset];
|
|
113
|
-
const objType = (type &
|
|
114
|
-
const objInfo =
|
|
94
|
+
const objType = (type & 240) >> 4;
|
|
95
|
+
const objInfo = type & 15;
|
|
115
96
|
switch (objType) {
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
97
|
+
case 0:
|
|
98
|
+
return parseSimple();
|
|
99
|
+
case 1:
|
|
100
|
+
return parseInteger();
|
|
101
|
+
case 8:
|
|
102
|
+
return parseUID();
|
|
103
|
+
case 2:
|
|
104
|
+
return parseReal();
|
|
105
|
+
case 3:
|
|
106
|
+
return parseDate();
|
|
107
|
+
case 4:
|
|
108
|
+
return parseData();
|
|
109
|
+
case 5:
|
|
110
|
+
return parsePlistString();
|
|
111
|
+
case 6:
|
|
112
|
+
return parsePlistString(true);
|
|
113
|
+
case 10:
|
|
114
|
+
return parseArray();
|
|
115
|
+
case 13:
|
|
116
|
+
return parseDictionary();
|
|
117
|
+
default:
|
|
118
|
+
throw new Error("Unhandled type 0x" + objType.toString(16));
|
|
138
119
|
}
|
|
139
|
-
|
|
140
120
|
function parseSimple() {
|
|
141
|
-
//Simple
|
|
142
121
|
switch (objInfo) {
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
122
|
+
case 0:
|
|
123
|
+
return null;
|
|
124
|
+
case 8:
|
|
125
|
+
return false;
|
|
126
|
+
case 9:
|
|
127
|
+
return true;
|
|
128
|
+
case 15:
|
|
129
|
+
return null;
|
|
130
|
+
default:
|
|
131
|
+
throw new Error("Unhandled simple type 0x" + objType.toString(16));
|
|
153
132
|
}
|
|
154
133
|
}
|
|
155
|
-
|
|
156
|
-
function bufferToHexString(buffer) {
|
|
157
|
-
let str = '';
|
|
158
|
-
let i;
|
|
159
|
-
for (i = 0; i < buffer.length; i++) {
|
|
160
|
-
if (buffer[i] != 0x00) {
|
|
161
|
-
break;
|
|
162
|
-
}
|
|
163
|
-
}
|
|
164
|
-
for (; i < buffer.length; i++) {
|
|
165
|
-
const part = '00' + buffer[i].toString(16);
|
|
166
|
-
str += part.substr(part.length - 2);
|
|
167
|
-
}
|
|
168
|
-
return str;
|
|
169
|
-
}
|
|
170
|
-
|
|
171
134
|
function parseInteger() {
|
|
172
135
|
const length = Math.pow(2, objInfo);
|
|
173
|
-
if (length <
|
|
136
|
+
if (length < maxObjectSize) {
|
|
174
137
|
const data = buffer.slice(offset + 1, offset + 1 + length);
|
|
175
|
-
|
|
176
|
-
const str = bufferToHexString(data);
|
|
177
|
-
return bigInt(str, 16);
|
|
178
|
-
}
|
|
179
|
-
return data.reduce((acc, curr) => {
|
|
180
|
-
acc <<= 8;
|
|
181
|
-
acc |= curr & 255;
|
|
182
|
-
return acc;
|
|
183
|
-
});
|
|
138
|
+
return readInteger(data);
|
|
184
139
|
}
|
|
185
|
-
|
|
186
|
-
|
|
140
|
+
throw new Error("Too little heap space available! Wanted to read " + length + " bytes, but only " + maxObjectSize + " are available.");
|
|
187
141
|
}
|
|
188
|
-
|
|
189
142
|
function parseUID() {
|
|
190
143
|
const length = objInfo + 1;
|
|
191
|
-
if (length <
|
|
144
|
+
if (length < maxObjectSize) {
|
|
192
145
|
return new UID(readUInt(buffer.slice(offset + 1, offset + 1 + length)));
|
|
193
146
|
}
|
|
194
|
-
throw new Error("Too little heap space available! Wanted to read " + length + " bytes, but only " +
|
|
147
|
+
throw new Error("Too little heap space available! Wanted to read " + length + " bytes, but only " + maxObjectSize + " are available.");
|
|
195
148
|
}
|
|
196
|
-
|
|
197
149
|
function parseReal() {
|
|
198
150
|
const length = Math.pow(2, objInfo);
|
|
199
|
-
if (length <
|
|
151
|
+
if (length < maxObjectSize) {
|
|
200
152
|
const realBuffer = buffer.slice(offset + 1, offset + 1 + length);
|
|
201
153
|
if (length === 4) {
|
|
202
154
|
return realBuffer.readFloatBE(0);
|
|
@@ -205,28 +157,26 @@ const parseBuffer = exports.parseBuffer = function (buffer) {
|
|
|
205
157
|
return realBuffer.readDoubleBE(0);
|
|
206
158
|
}
|
|
207
159
|
} else {
|
|
208
|
-
throw new Error("Too little heap space available! Wanted to read " + length + " bytes, but only " +
|
|
160
|
+
throw new Error("Too little heap space available! Wanted to read " + length + " bytes, but only " + maxObjectSize + " are available.");
|
|
209
161
|
}
|
|
210
162
|
}
|
|
211
|
-
|
|
212
163
|
function parseDate() {
|
|
213
|
-
if (objInfo !=
|
|
164
|
+
if (objInfo != 3) {
|
|
214
165
|
console.error("Unknown date type :" + objInfo + ". Parsing anyway...");
|
|
215
166
|
}
|
|
216
167
|
const dateBuffer = buffer.slice(offset + 1, offset + 9);
|
|
217
|
-
return new Date(EPOCH +
|
|
168
|
+
return new Date(EPOCH + 1e3 * dateBuffer.readDoubleBE(0));
|
|
218
169
|
}
|
|
219
|
-
|
|
220
170
|
function parseData() {
|
|
221
171
|
let dataoffset = 1;
|
|
222
172
|
let length = objInfo;
|
|
223
|
-
if (objInfo ==
|
|
173
|
+
if (objInfo == 15) {
|
|
224
174
|
const int_type = buffer[offset + 1];
|
|
225
|
-
const intType = (int_type &
|
|
226
|
-
if (intType !=
|
|
175
|
+
const intType = (int_type & 240) / 16;
|
|
176
|
+
if (intType != 1) {
|
|
227
177
|
console.error("0x4: UNEXPECTED LENGTH-INT TYPE! " + intType);
|
|
228
178
|
}
|
|
229
|
-
const intInfo = int_type &
|
|
179
|
+
const intInfo = int_type & 15;
|
|
230
180
|
const intLength = Math.pow(2, intInfo);
|
|
231
181
|
dataoffset = 2 + intLength;
|
|
232
182
|
if (intLength < 3) {
|
|
@@ -235,24 +185,23 @@ const parseBuffer = exports.parseBuffer = function (buffer) {
|
|
|
235
185
|
length = readUInt(buffer.slice(offset + 2, offset + 2 + intLength));
|
|
236
186
|
}
|
|
237
187
|
}
|
|
238
|
-
if (length <
|
|
188
|
+
if (length < maxObjectSize) {
|
|
239
189
|
return buffer.slice(offset + dataoffset, offset + dataoffset + length);
|
|
240
190
|
}
|
|
241
|
-
throw new Error("Too little heap space available! Wanted to read " + length + " bytes, but only " +
|
|
191
|
+
throw new Error("Too little heap space available! Wanted to read " + length + " bytes, but only " + maxObjectSize + " are available.");
|
|
242
192
|
}
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
isUtf16 = isUtf16 || 0;
|
|
193
|
+
function parsePlistString(isUtf16) {
|
|
194
|
+
const utf16Flag = isUtf16 || false;
|
|
246
195
|
let enc = "utf8";
|
|
247
196
|
let length = objInfo;
|
|
248
197
|
let stroffset = 1;
|
|
249
|
-
if (objInfo ==
|
|
198
|
+
if (objInfo == 15) {
|
|
250
199
|
const int_type = buffer[offset + 1];
|
|
251
|
-
const intType = (int_type &
|
|
252
|
-
if (intType !=
|
|
200
|
+
const intType = (int_type & 240) / 16;
|
|
201
|
+
if (intType != 1) {
|
|
253
202
|
console.error("UNEXPECTED LENGTH-INT TYPE! " + intType);
|
|
254
203
|
}
|
|
255
|
-
const intInfo = int_type &
|
|
204
|
+
const intInfo = int_type & 15;
|
|
256
205
|
const intLength = Math.pow(2, intInfo);
|
|
257
206
|
stroffset = 2 + intLength;
|
|
258
207
|
if (intLength < 3) {
|
|
@@ -261,29 +210,27 @@ const parseBuffer = exports.parseBuffer = function (buffer) {
|
|
|
261
210
|
length = readUInt(buffer.slice(offset + 2, offset + 2 + intLength));
|
|
262
211
|
}
|
|
263
212
|
}
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
if (length < exports.maxObjectSize) {
|
|
213
|
+
length *= utf16Flag ? 2 : 1;
|
|
214
|
+
if (length < maxObjectSize) {
|
|
267
215
|
let plistString = Buffer.from(buffer.slice(offset + stroffset, offset + stroffset + length));
|
|
268
|
-
if (
|
|
216
|
+
if (utf16Flag) {
|
|
269
217
|
plistString = swapBytes(plistString);
|
|
270
218
|
enc = "ucs2";
|
|
271
219
|
}
|
|
272
220
|
return plistString.toString(enc);
|
|
273
221
|
}
|
|
274
|
-
throw new Error("Too little heap space available! Wanted to read " + length + " bytes, but only " +
|
|
222
|
+
throw new Error("Too little heap space available! Wanted to read " + length + " bytes, but only " + maxObjectSize + " are available.");
|
|
275
223
|
}
|
|
276
|
-
|
|
277
224
|
function parseArray() {
|
|
278
225
|
let length = objInfo;
|
|
279
226
|
let arrayoffset = 1;
|
|
280
|
-
if (objInfo ==
|
|
227
|
+
if (objInfo == 15) {
|
|
281
228
|
const int_type = buffer[offset + 1];
|
|
282
|
-
const intType = (int_type &
|
|
283
|
-
if (intType !=
|
|
229
|
+
const intType = (int_type & 240) / 16;
|
|
230
|
+
if (intType != 1) {
|
|
284
231
|
console.error("0xa: UNEXPECTED LENGTH-INT TYPE! " + intType);
|
|
285
232
|
}
|
|
286
|
-
const intInfo = int_type &
|
|
233
|
+
const intInfo = int_type & 15;
|
|
287
234
|
const intLength = Math.pow(2, intInfo);
|
|
288
235
|
arrayoffset = 2 + intLength;
|
|
289
236
|
if (intLength < 3) {
|
|
@@ -292,7 +239,7 @@ const parseBuffer = exports.parseBuffer = function (buffer) {
|
|
|
292
239
|
length = readUInt(buffer.slice(offset + 2, offset + 2 + intLength));
|
|
293
240
|
}
|
|
294
241
|
}
|
|
295
|
-
if (length * objectRefSize >
|
|
242
|
+
if (length * objectRefSize > maxObjectSize) {
|
|
296
243
|
throw new Error("Too little heap space available!");
|
|
297
244
|
}
|
|
298
245
|
const array = [];
|
|
@@ -302,17 +249,16 @@ const parseBuffer = exports.parseBuffer = function (buffer) {
|
|
|
302
249
|
}
|
|
303
250
|
return array;
|
|
304
251
|
}
|
|
305
|
-
|
|
306
252
|
function parseDictionary() {
|
|
307
253
|
let length = objInfo;
|
|
308
254
|
let dictoffset = 1;
|
|
309
|
-
if (objInfo ==
|
|
255
|
+
if (objInfo == 15) {
|
|
310
256
|
const int_type = buffer[offset + 1];
|
|
311
|
-
const intType = (int_type &
|
|
312
|
-
if (intType !=
|
|
257
|
+
const intType = (int_type & 240) / 16;
|
|
258
|
+
if (intType != 1) {
|
|
313
259
|
console.error("0xD: UNEXPECTED LENGTH-INT TYPE! " + intType);
|
|
314
260
|
}
|
|
315
|
-
const intInfo = int_type &
|
|
261
|
+
const intInfo = int_type & 15;
|
|
316
262
|
const intLength = Math.pow(2, intInfo);
|
|
317
263
|
dictoffset = 2 + intLength;
|
|
318
264
|
if (intLength < 3) {
|
|
@@ -321,7 +267,7 @@ const parseBuffer = exports.parseBuffer = function (buffer) {
|
|
|
321
267
|
length = readUInt(buffer.slice(offset + 2, offset + 2 + intLength));
|
|
322
268
|
}
|
|
323
269
|
}
|
|
324
|
-
if (length * 2 * objectRefSize >
|
|
270
|
+
if (length * 2 * objectRefSize > maxObjectSize) {
|
|
325
271
|
throw new Error("Too little heap space available!");
|
|
326
272
|
}
|
|
327
273
|
if (debug) {
|
|
@@ -330,7 +276,7 @@ const parseBuffer = exports.parseBuffer = function (buffer) {
|
|
|
330
276
|
const dict = {};
|
|
331
277
|
for (let i = 0; i < length; i++) {
|
|
332
278
|
const keyRef = readUInt(buffer.slice(offset + dictoffset + i * objectRefSize, offset + dictoffset + (i + 1) * objectRefSize));
|
|
333
|
-
const valRef = readUInt(buffer.slice(offset + dictoffset +
|
|
279
|
+
const valRef = readUInt(buffer.slice(offset + dictoffset + length * objectRefSize + i * objectRefSize, offset + dictoffset + length * objectRefSize + (i + 1) * objectRefSize));
|
|
334
280
|
const key = parseObject(keyRef);
|
|
335
281
|
const val = parseObject(valRef);
|
|
336
282
|
if (debug) {
|
|
@@ -341,33 +287,57 @@ const parseBuffer = exports.parseBuffer = function (buffer) {
|
|
|
341
287
|
return dict;
|
|
342
288
|
}
|
|
343
289
|
}
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
};
|
|
347
|
-
|
|
290
|
+
return [parseObject(topObject)];
|
|
291
|
+
}
|
|
348
292
|
function readUInt(buffer, start) {
|
|
349
293
|
start = start || 0;
|
|
350
|
-
|
|
351
294
|
let l = 0;
|
|
352
295
|
for (let i = start; i < buffer.length; i++) {
|
|
353
|
-
l
|
|
354
|
-
l |= buffer[i] & 0xFF;
|
|
296
|
+
l = l * 256 + buffer[i];
|
|
355
297
|
}
|
|
356
298
|
return l;
|
|
357
299
|
}
|
|
358
|
-
|
|
359
|
-
|
|
300
|
+
function readBigUInt(buffer) {
|
|
301
|
+
let value = 0n;
|
|
302
|
+
for (const byte of buffer) {
|
|
303
|
+
value = value << 8n | BigInt(byte);
|
|
304
|
+
}
|
|
305
|
+
return value;
|
|
306
|
+
}
|
|
307
|
+
function simplifyInteger(value) {
|
|
308
|
+
if (value >= BigInt(Number.MIN_SAFE_INTEGER) && value <= BigInt(Number.MAX_SAFE_INTEGER)) {
|
|
309
|
+
return Number(value);
|
|
310
|
+
}
|
|
311
|
+
return value;
|
|
312
|
+
}
|
|
313
|
+
function readInteger(buffer) {
|
|
314
|
+
let value = readBigUInt(buffer);
|
|
315
|
+
if (buffer.length === 8 && buffer[0] & 128) {
|
|
316
|
+
value -= 1n << 64n;
|
|
317
|
+
}
|
|
318
|
+
return simplifyInteger(value);
|
|
319
|
+
}
|
|
360
320
|
function readUInt64BE(buffer, start) {
|
|
361
321
|
const data = buffer.slice(start, start + 8);
|
|
362
|
-
return data
|
|
322
|
+
return readUInt(data, 0);
|
|
363
323
|
}
|
|
364
|
-
|
|
365
324
|
function swapBytes(buffer) {
|
|
366
325
|
const len = buffer.length;
|
|
367
326
|
for (let i = 0; i < len; i += 2) {
|
|
368
327
|
const a = buffer[i];
|
|
369
|
-
buffer[i] = buffer[i+1];
|
|
370
|
-
buffer[i+1] = a;
|
|
328
|
+
buffer[i] = buffer[i + 1];
|
|
329
|
+
buffer[i + 1] = a;
|
|
371
330
|
}
|
|
372
331
|
return buffer;
|
|
373
332
|
}
|
|
333
|
+
export {
|
|
334
|
+
UID,
|
|
335
|
+
maxObjectCount,
|
|
336
|
+
maxObjectSize,
|
|
337
|
+
parseBuffer,
|
|
338
|
+
parseFile,
|
|
339
|
+
parseFileSync,
|
|
340
|
+
setMaxObjectCount,
|
|
341
|
+
setMaxObjectSize
|
|
342
|
+
};
|
|
343
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../bplistParser.ts"],
|
|
4
|
+
"sourcesContent": ["/* eslint-disable no-console */\n\n// adapted from https://github.com/3breadt/dd-plist\n\nimport fs from 'node:fs';\nconst debug = false;\n\nexport let maxObjectSize = 100 * 1000 * 1000; // 100Meg\nexport let maxObjectCount = 32768;\n\n// Exported bindings are read-only to consumers (an ESM import binding cannot be\n// assigned, and the CommonJS build exposes exports as getters), so these knobs\n// are tuned through setters rather than by assigning to the exports.\nexport function setMaxObjectSize(value: number): void {\n maxObjectSize = value;\n}\n\nexport function setMaxObjectCount(value: number): void {\n maxObjectCount = value;\n}\n\n// EPOCH = new SimpleDateFormat(\"yyyy MM dd zzz\").parse(\"2001 01 01 GMT\").getTime();\n// ...but that's annoying in a static initializer because it can throw exceptions, ick.\n// So we just hardcode the correct value.\nconst EPOCH = 978307200000;\n\n/** Wrapper for a CoreFoundation keyed-archiver UID value. */\nexport class UID {\n UID: number;\n\n constructor(id: number) {\n this.UID = id;\n }\n}\n\nexport type CallbackFunction<T = any> = (error: Error | null, result?: [T]) => void;\n\nexport function parseFile<T = any>(\n fileNameOrBuffer: string | Buffer,\n callback?: CallbackFunction<T>\n): Promise<[T]> {\n return new Promise<[T]>(function (resolve, reject) {\n function tryParseBuffer(buffer: Buffer) {\n let err: Error | null = null;\n let result: [T] | undefined;\n try {\n result = parseBuffer<T>(buffer);\n resolve(result);\n } catch (ex) {\n err = ex as Error;\n reject(err);\n } finally {\n if (callback) callback(err, result);\n }\n }\n\n if (Buffer.isBuffer(fileNameOrBuffer)) {\n return tryParseBuffer(fileNameOrBuffer);\n }\n fs.readFile(fileNameOrBuffer, function (err, data) {\n if (err) {\n reject(err);\n if (callback) callback(err);\n return;\n }\n tryParseBuffer(data);\n });\n });\n}\n\nexport function parseFileSync<T = any>(fileNameOrBuffer: string | Buffer): [T] {\n const buffer = Buffer.isBuffer(fileNameOrBuffer) ? fileNameOrBuffer : fs.readFileSync(fileNameOrBuffer);\n return parseBuffer<T>(buffer);\n}\n\nexport function parseBuffer<T = any>(buffer: Buffer): [T] {\n // check header\n const header = buffer.slice(0, 'bplist00'.length).toString('utf8');\n if (header !== 'bplist00') {\n throw new Error(\"Invalid binary plist. Expected 'bplist00' at offset 0.\");\n }\n if (buffer.length < 'bplist00'.length + 32) {\n throw new Error(\"Invalid binary plist. Expected a trailer.\");\n }\n\n // Handle trailer, last 32 bytes of the file\n const trailer = buffer.slice(buffer.length - 32, buffer.length);\n // 6 null bytes (index 0 to 5)\n const offsetSize = trailer.readUInt8(6);\n if (debug) {\n console.log(\"offsetSize: \" + offsetSize);\n }\n const objectRefSize = trailer.readUInt8(7);\n if (debug) {\n console.log(\"objectRefSize: \" + objectRefSize);\n }\n const numObjects = readUInt64BE(trailer, 8);\n if (debug) {\n console.log(\"numObjects: \" + numObjects);\n }\n const topObject = readUInt64BE(trailer, 16);\n if (debug) {\n console.log(\"topObject: \" + topObject);\n }\n const offsetTableOffset = readUInt64BE(trailer, 24);\n if (debug) {\n console.log(\"offsetTableOffset: \" + offsetTableOffset);\n }\n\n if (numObjects > maxObjectCount) {\n throw new Error(\"maxObjectCount exceeded\");\n }\n\n // Handle offset table\n const offsetTable: number[] = [];\n\n for (let i = 0; i < numObjects; i++) {\n const offsetBytes = buffer.slice(offsetTableOffset + i * offsetSize, offsetTableOffset + (i + 1) * offsetSize);\n offsetTable[i] = readUInt(offsetBytes, 0);\n if (debug) {\n console.log(\"Offset for Object #\" + i + \" is \" + offsetTable[i] + \" [\" + offsetTable[i].toString(16) + \"]\");\n }\n }\n\n // Parses an object inside the currently parsed binary property list.\n // For the format specification check\n // <a href=\"https://www.opensource.apple.com/source/CF/CF-635/CFBinaryPList.c\">\n // Apple's binary property list parser implementation</a>.\n function parseObject(tableOffset: number): any {\n const offset = offsetTable[tableOffset];\n const type = buffer[offset];\n const objType = (type & 0xF0) >> 4; //First 4 bits\n const objInfo = (type & 0x0F); //Second 4 bits\n switch (objType) {\n case 0x0:\n return parseSimple();\n case 0x1:\n return parseInteger();\n case 0x8:\n return parseUID();\n case 0x2:\n return parseReal();\n case 0x3:\n return parseDate();\n case 0x4:\n return parseData();\n case 0x5: // ASCII\n return parsePlistString();\n case 0x6: // UTF-16\n return parsePlistString(true);\n case 0xA:\n return parseArray();\n case 0xD:\n return parseDictionary();\n default:\n throw new Error(\"Unhandled type 0x\" + objType.toString(16));\n }\n\n function parseSimple(): any {\n //Simple\n switch (objInfo) {\n case 0x0: // null\n return null;\n case 0x8: // false\n return false;\n case 0x9: // true\n return true;\n case 0xF: // filler byte\n return null;\n default:\n throw new Error(\"Unhandled simple type 0x\" + objType.toString(16));\n }\n }\n\n function parseInteger(): number | bigint {\n const length = Math.pow(2, objInfo);\n if (length < maxObjectSize) {\n const data = buffer.slice(offset + 1, offset + 1 + length);\n return readInteger(data);\n }\n throw new Error(\"Too little heap space available! Wanted to read \" + length + \" bytes, but only \" + maxObjectSize + \" are available.\");\n\n }\n\n function parseUID(): UID {\n const length = objInfo + 1;\n if (length < maxObjectSize) {\n return new UID(readUInt(buffer.slice(offset + 1, offset + 1 + length)));\n }\n throw new Error(\"Too little heap space available! Wanted to read \" + length + \" bytes, but only \" + maxObjectSize + \" are available.\");\n }\n\n function parseReal(): number | undefined {\n const length = Math.pow(2, objInfo);\n if (length < maxObjectSize) {\n const realBuffer = buffer.slice(offset + 1, offset + 1 + length);\n if (length === 4) {\n return realBuffer.readFloatBE(0);\n }\n if (length === 8) {\n return realBuffer.readDoubleBE(0);\n }\n } else {\n throw new Error(\"Too little heap space available! Wanted to read \" + length + \" bytes, but only \" + maxObjectSize + \" are available.\");\n }\n }\n\n function parseDate(): Date {\n if (objInfo != 0x3) {\n console.error(\"Unknown date type :\" + objInfo + \". Parsing anyway...\");\n }\n const dateBuffer = buffer.slice(offset + 1, offset + 9);\n return new Date(EPOCH + (1000 * dateBuffer.readDoubleBE(0)));\n }\n\n function parseData(): Buffer {\n let dataoffset = 1;\n let length = objInfo;\n if (objInfo == 0xF) {\n const int_type = buffer[offset + 1];\n const intType = (int_type & 0xF0) / 0x10;\n if (intType != 0x1) {\n console.error(\"0x4: UNEXPECTED LENGTH-INT TYPE! \" + intType);\n }\n const intInfo = int_type & 0x0F;\n const intLength = Math.pow(2, intInfo);\n dataoffset = 2 + intLength;\n if (intLength < 3) {\n length = readUInt(buffer.slice(offset + 2, offset + 2 + intLength));\n } else {\n length = readUInt(buffer.slice(offset + 2, offset + 2 + intLength));\n }\n }\n if (length < maxObjectSize) {\n return buffer.slice(offset + dataoffset, offset + dataoffset + length);\n }\n throw new Error(\"Too little heap space available! Wanted to read \" + length + \" bytes, but only \" + maxObjectSize + \" are available.\");\n }\n\n function parsePlistString(isUtf16?: boolean): string {\n const utf16Flag = isUtf16 || false;\n let enc: BufferEncoding = \"utf8\";\n let length = objInfo;\n let stroffset = 1;\n if (objInfo == 0xF) {\n const int_type = buffer[offset + 1];\n const intType = (int_type & 0xF0) / 0x10;\n if (intType != 0x1) {\n console.error(\"UNEXPECTED LENGTH-INT TYPE! \" + intType);\n }\n const intInfo = int_type & 0x0F;\n const intLength = Math.pow(2, intInfo);\n stroffset = 2 + intLength;\n if (intLength < 3) {\n length = readUInt(buffer.slice(offset + 2, offset + 2 + intLength));\n } else {\n length = readUInt(buffer.slice(offset + 2, offset + 2 + intLength));\n }\n }\n // length is String length -> to get byte length multiply by 2, as 1 character takes 2 bytes in UTF-16\n length *= (utf16Flag ? 2 : 1);\n if (length < maxObjectSize) {\n let plistString = Buffer.from(buffer.slice(offset + stroffset, offset + stroffset + length));\n if (utf16Flag) {\n plistString = swapBytes(plistString);\n enc = \"ucs2\";\n }\n return plistString.toString(enc);\n }\n throw new Error(\"Too little heap space available! Wanted to read \" + length + \" bytes, but only \" + maxObjectSize + \" are available.\");\n }\n\n function parseArray(): any[] {\n let length = objInfo;\n let arrayoffset = 1;\n if (objInfo == 0xF) {\n const int_type = buffer[offset + 1];\n const intType = (int_type & 0xF0) / 0x10;\n if (intType != 0x1) {\n console.error(\"0xa: UNEXPECTED LENGTH-INT TYPE! \" + intType);\n }\n const intInfo = int_type & 0x0F;\n const intLength = Math.pow(2, intInfo);\n arrayoffset = 2 + intLength;\n if (intLength < 3) {\n length = readUInt(buffer.slice(offset + 2, offset + 2 + intLength));\n } else {\n length = readUInt(buffer.slice(offset + 2, offset + 2 + intLength));\n }\n }\n if (length * objectRefSize > maxObjectSize) {\n throw new Error(\"Too little heap space available!\");\n }\n const array: any[] = [];\n for (let i = 0; i < length; i++) {\n const objRef = readUInt(buffer.slice(offset + arrayoffset + i * objectRefSize, offset + arrayoffset + (i + 1) * objectRefSize));\n array[i] = parseObject(objRef);\n }\n return array;\n }\n\n function parseDictionary(): Record<string, any> {\n let length = objInfo;\n let dictoffset = 1;\n if (objInfo == 0xF) {\n const int_type = buffer[offset + 1];\n const intType = (int_type & 0xF0) / 0x10;\n if (intType != 0x1) {\n console.error(\"0xD: UNEXPECTED LENGTH-INT TYPE! \" + intType);\n }\n const intInfo = int_type & 0x0F;\n const intLength = Math.pow(2, intInfo);\n dictoffset = 2 + intLength;\n if (intLength < 3) {\n length = readUInt(buffer.slice(offset + 2, offset + 2 + intLength));\n } else {\n length = readUInt(buffer.slice(offset + 2, offset + 2 + intLength));\n }\n }\n if (length * 2 * objectRefSize > maxObjectSize) {\n throw new Error(\"Too little heap space available!\");\n }\n if (debug) {\n console.log(\"Parsing dictionary #\" + tableOffset);\n }\n const dict: Record<string, any> = {};\n for (let i = 0; i < length; i++) {\n const keyRef = readUInt(buffer.slice(offset + dictoffset + i * objectRefSize, offset + dictoffset + (i + 1) * objectRefSize));\n const valRef = readUInt(buffer.slice(offset + dictoffset + (length * objectRefSize) + i * objectRefSize, offset + dictoffset + (length * objectRefSize) + (i + 1) * objectRefSize));\n const key = parseObject(keyRef);\n const val = parseObject(valRef);\n if (debug) {\n console.log(\" DICT #\" + tableOffset + \": Mapped \" + key + \" to \" + val);\n }\n dict[key] = val;\n }\n return dict;\n }\n }\n\n return [ parseObject(topObject) ];\n}\n\nfunction readUInt(buffer: Buffer, start?: number): number {\n start = start || 0;\n\n let l = 0;\n for (let i = start; i < buffer.length; i++) {\n l = (l * 0x100) + buffer[i];\n }\n return l;\n}\n\nfunction readBigUInt(buffer: Buffer): bigint {\n let value = 0n;\n for (const byte of buffer) {\n value = (value << 8n) | BigInt(byte);\n }\n return value;\n}\n\nfunction simplifyInteger(value: bigint): number | bigint {\n if (value >= BigInt(Number.MIN_SAFE_INTEGER) && value <= BigInt(Number.MAX_SAFE_INTEGER)) {\n return Number(value);\n }\n return value;\n}\n\nfunction readInteger(buffer: Buffer): number | bigint {\n let value = readBigUInt(buffer);\n\n if (buffer.length === 8 && (buffer[0] & 0x80)) {\n value -= 1n << 64n;\n }\n\n return simplifyInteger(value);\n}\n\n// we're just going to toss the high order bits because javascript doesn't have 64-bit ints\nfunction readUInt64BE(buffer: Buffer, start: number): number {\n const data = buffer.slice(start, start + 8);\n return readUInt(data, 0);\n}\n\nfunction swapBytes<T extends Buffer>(buffer: T): T {\n const len = buffer.length;\n for (let i = 0; i < len; i += 2) {\n const a = buffer[i];\n buffer[i] = buffer[i+1];\n buffer[i+1] = a;\n }\n return buffer;\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1,10 +1,34 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "bplist-parser",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5.0",
|
|
4
4
|
"description": "Binary plist parser.",
|
|
5
|
-
"
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "./dist/index.cjs",
|
|
7
|
+
"module": "./dist/index.mjs",
|
|
8
|
+
"types": "./dist/index.d.ts",
|
|
9
|
+
"exports": {
|
|
10
|
+
".": {
|
|
11
|
+
"import": {
|
|
12
|
+
"types": "./dist/index.d.ts",
|
|
13
|
+
"default": "./dist/index.mjs"
|
|
14
|
+
},
|
|
15
|
+
"require": {
|
|
16
|
+
"types": "./dist/index.d.cts",
|
|
17
|
+
"default": "./dist/index.cjs"
|
|
18
|
+
}
|
|
19
|
+
},
|
|
20
|
+
"./package.json": "./package.json"
|
|
21
|
+
},
|
|
22
|
+
"files": [
|
|
23
|
+
"dist"
|
|
24
|
+
],
|
|
6
25
|
"scripts": {
|
|
7
|
-
"
|
|
26
|
+
"build": "node build.js",
|
|
27
|
+
"lint": "eslint .",
|
|
28
|
+
"typecheck": "tsc --noEmit",
|
|
29
|
+
"test": "vitest run",
|
|
30
|
+
"smoke": "npm run build && node smoke.cjs",
|
|
31
|
+
"prepublishOnly": "npm run typecheck && npm run build"
|
|
8
32
|
},
|
|
9
33
|
"keywords": [
|
|
10
34
|
"bplist",
|
|
@@ -17,19 +41,22 @@
|
|
|
17
41
|
],
|
|
18
42
|
"license": "MIT",
|
|
19
43
|
"devDependencies": {
|
|
20
|
-
"eslint": "
|
|
21
|
-
"
|
|
44
|
+
"@eslint/js": "10.0.x",
|
|
45
|
+
"@types/node": "26.4.x",
|
|
46
|
+
"esbuild": "0.28.x",
|
|
47
|
+
"eslint": "10.10.x",
|
|
48
|
+
"globals": "17.12.x",
|
|
49
|
+
"typescript": "6.0.x",
|
|
50
|
+
"typescript-eslint": "8.69.x",
|
|
51
|
+
"vitest": "5.0.x"
|
|
22
52
|
},
|
|
23
|
-
"homepage": "https://github.com/
|
|
24
|
-
"bugs": "https://github.com/
|
|
53
|
+
"homepage": "https://github.com/joeferner/node-bplist-parser",
|
|
54
|
+
"bugs": "https://github.com/joeferner/node-bplist-parser/issues",
|
|
25
55
|
"engines": {
|
|
26
|
-
"node": ">=
|
|
56
|
+
"node": ">=20.19.0"
|
|
27
57
|
},
|
|
28
58
|
"repository": {
|
|
29
59
|
"type": "git",
|
|
30
|
-
"url": "https://github.com/
|
|
31
|
-
},
|
|
32
|
-
"dependencies": {
|
|
33
|
-
"big-integer": "1.6.x"
|
|
60
|
+
"url": "https://github.com/joeferner/node-bplist-parser.git"
|
|
34
61
|
}
|
|
35
62
|
}
|
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
export declare const EXPANSION_MAX = 100000;
|
|
2
2
|
export declare const EXPANSION_MAX_LENGTH = 4000000;
|
|
3
|
+
export declare const EXPANSION_MAX_DEPTH = 1000;
|
|
4
|
+
export declare const EXPANSION_MAX_REWRITES = 1000;
|
|
3
5
|
export type BraceExpansionOptions = {
|
|
4
6
|
max?: number;
|
|
5
7
|
maxLength?: number;
|
|
8
|
+
maxDepth?: number;
|
|
9
|
+
maxRewrites?: number;
|
|
6
10
|
};
|
|
7
11
|
export declare function expand(str: string, options?: BraceExpansionOptions): string[];
|
|
8
12
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAkBA,eAAO,MAAM,aAAa,SAAU,CAAA;AAYpC,eAAO,MAAM,oBAAoB,UAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAkBA,eAAO,MAAM,aAAa,SAAU,CAAA;AAYpC,eAAO,MAAM,oBAAoB,UAAY,CAAA;AAU7C,eAAO,MAAM,mBAAmB,OAAQ,CAAA;AAUxC,eAAO,MAAM,sBAAsB,OAAQ,CAAA;AAyE3C,MAAM,MAAM,qBAAqB,GAAG;IAClC,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAED,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,qBAA0B,YA+BtE"}
|