@openclaw/openshell-sandbox 2026.9.2 → 2026.9.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/dist/index.js +87 -47
- package/node_modules/@openclaw/fs-safe/CHANGELOG.md +700 -0
- package/node_modules/@openclaw/fs-safe/LICENSE +21 -0
- package/node_modules/@openclaw/fs-safe/README.md +564 -0
- package/node_modules/@openclaw/fs-safe/SECURITY.md +45 -0
- package/node_modules/@openclaw/fs-safe/dist/absolute-path.d.ts +33 -0
- package/node_modules/@openclaw/fs-safe/dist/absolute-path.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/absolute-path.js +307 -0
- package/node_modules/@openclaw/fs-safe/dist/advanced.d.ts +26 -0
- package/node_modules/@openclaw/fs-safe/dist/advanced.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/advanced.js +28 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-crc32.d.ts +2 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-crc32.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-crc32.js +14 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-deadline.d.ts +12 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-deadline.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-deadline.js +103 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-entry.d.ts +14 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-entry.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-entry.js +85 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-errors.d.ts +13 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-errors.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-errors.js +23 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-gzip-tail.d.ts +18 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-gzip-tail.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-gzip-tail.js +74 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-input.d.ts +19 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-input.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-input.js +92 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-kind.d.ts +9 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-kind.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-kind.js +82 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-limits.d.ts +57 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-limits.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-limits.js +131 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-merge.d.ts +18 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-merge.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-merge.js +157 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-native.d.ts +20 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-native.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-native.js +107 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-options.d.ts +21 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-options.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-options.js +1 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-parser-errors.d.ts +2 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-parser-errors.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-parser-errors.js +12 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-parser.wasm +0 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-plan.d.ts +20 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-plan.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-plan.js +55 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-policy.d.ts +22 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-policy.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-policy.js +38 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-read.d.ts +6 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-read.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-read.js +225 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-staging.d.ts +31 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-staging.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-staging.js +250 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-tar-inspect.d.ts +7 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-tar-inspect.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-tar-inspect.js +59 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-tar-stream.d.ts +18 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-tar-stream.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-tar-stream.js +95 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-tar-wasm.d.ts +18 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-tar-wasm.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-tar-wasm.js +99 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-tar.d.ts +19 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-tar.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-tar.js +21 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-zip-admission.d.ts +8 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-zip-admission.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-zip-admission.js +60 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-zip-count.d.ts +2 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-zip-count.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-zip-count.js +140 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-zip-directory.d.ts +15 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-zip-directory.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-zip-directory.js +228 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-zip-entry.d.ts +21 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-zip-entry.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-zip-entry.js +27 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-zip-integrity.d.ts +5 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-zip-integrity.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-zip-integrity.js +41 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-zip-names.d.ts +12 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-zip-names.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-zip-names.js +100 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-zip-preflight.d.ts +7 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-zip-preflight.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/archive-zip-preflight.js +44 -0
- package/node_modules/@openclaw/fs-safe/dist/archive.d.ts +15 -0
- package/node_modules/@openclaw/fs-safe/dist/archive.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/archive.js +275 -0
- package/node_modules/@openclaw/fs-safe/dist/async-lock.d.ts +2 -0
- package/node_modules/@openclaw/fs-safe/dist/async-lock.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/async-lock.js +17 -0
- package/node_modules/@openclaw/fs-safe/dist/atomic.d.ts +5 -0
- package/node_modules/@openclaw/fs-safe/dist/atomic.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/atomic.js +4 -0
- package/node_modules/@openclaw/fs-safe/dist/bounded-read-stream.d.ts +4 -0
- package/node_modules/@openclaw/fs-safe/dist/bounded-read-stream.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/bounded-read-stream.js +21 -0
- package/node_modules/@openclaw/fs-safe/dist/bounded-read.d.ts +14 -0
- package/node_modules/@openclaw/fs-safe/dist/bounded-read.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/bounded-read.js +106 -0
- package/node_modules/@openclaw/fs-safe/dist/byte-budget.d.ts +4 -0
- package/node_modules/@openclaw/fs-safe/dist/byte-budget.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/byte-budget.js +9 -0
- package/node_modules/@openclaw/fs-safe/dist/config.d.ts +3 -0
- package/node_modules/@openclaw/fs-safe/dist/config.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/config.js +2 -0
- package/node_modules/@openclaw/fs-safe/dist/containment.d.ts +2 -0
- package/node_modules/@openclaw/fs-safe/dist/containment.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/containment.js +1 -0
- package/node_modules/@openclaw/fs-safe/dist/deny-mutations.d.ts +12 -0
- package/node_modules/@openclaw/fs-safe/dist/deny-mutations.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/deny-mutations.js +69 -0
- package/node_modules/@openclaw/fs-safe/dist/device-path.d.ts +15 -0
- package/node_modules/@openclaw/fs-safe/dist/device-path.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/device-path.js +137 -0
- package/node_modules/@openclaw/fs-safe/dist/directory-durability.d.ts +44 -0
- package/node_modules/@openclaw/fs-safe/dist/directory-durability.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/directory-durability.js +299 -0
- package/node_modules/@openclaw/fs-safe/dist/directory-guard.d.ts +31 -0
- package/node_modules/@openclaw/fs-safe/dist/directory-guard.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/directory-guard.js +82 -0
- package/node_modules/@openclaw/fs-safe/dist/directory-mode-node.d.ts +8 -0
- package/node_modules/@openclaw/fs-safe/dist/directory-mode-node.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/directory-mode-node.js +93 -0
- package/node_modules/@openclaw/fs-safe/dist/directory-mode-owner.d.ts +21 -0
- package/node_modules/@openclaw/fs-safe/dist/directory-mode-owner.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/directory-mode-owner.js +78 -0
- package/node_modules/@openclaw/fs-safe/dist/durability.d.ts +4 -0
- package/node_modules/@openclaw/fs-safe/dist/durability.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/durability.js +3 -0
- package/node_modules/@openclaw/fs-safe/dist/error-detail.d.ts +3 -0
- package/node_modules/@openclaw/fs-safe/dist/error-detail.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/error-detail.js +10 -0
- package/node_modules/@openclaw/fs-safe/dist/errors.d.ts +14 -0
- package/node_modules/@openclaw/fs-safe/dist/errors.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/errors.js +26 -0
- package/node_modules/@openclaw/fs-safe/dist/file-hash.d.ts +10 -0
- package/node_modules/@openclaw/fs-safe/dist/file-hash.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/file-hash.js +73 -0
- package/node_modules/@openclaw/fs-safe/dist/file-identity.d.ts +8 -0
- package/node_modules/@openclaw/fs-safe/dist/file-identity.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/file-identity.js +34 -0
- package/node_modules/@openclaw/fs-safe/dist/file-lock-sync.d.ts +35 -0
- package/node_modules/@openclaw/fs-safe/dist/file-lock-sync.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/file-lock-sync.js +349 -0
- package/node_modules/@openclaw/fs-safe/dist/file-lock.d.ts +24 -0
- package/node_modules/@openclaw/fs-safe/dist/file-lock.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/file-lock.js +46 -0
- package/node_modules/@openclaw/fs-safe/dist/file-observation.d.ts +9 -0
- package/node_modules/@openclaw/fs-safe/dist/file-observation.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/file-observation.js +22 -0
- package/node_modules/@openclaw/fs-safe/dist/file-store-boundary.d.ts +33 -0
- package/node_modules/@openclaw/fs-safe/dist/file-store-boundary.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/file-store-boundary.js +189 -0
- package/node_modules/@openclaw/fs-safe/dist/file-store-limit.d.ts +2 -0
- package/node_modules/@openclaw/fs-safe/dist/file-store-limit.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/file-store-limit.js +8 -0
- package/node_modules/@openclaw/fs-safe/dist/file-store-prune.d.ts +12 -0
- package/node_modules/@openclaw/fs-safe/dist/file-store-prune.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/file-store-prune.js +95 -0
- package/node_modules/@openclaw/fs-safe/dist/file-store-sync-write.d.ts +9 -0
- package/node_modules/@openclaw/fs-safe/dist/file-store-sync-write.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/file-store-sync-write.js +127 -0
- package/node_modules/@openclaw/fs-safe/dist/file-store.d.ts +62 -0
- package/node_modules/@openclaw/fs-safe/dist/file-store.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/file-store.js +357 -0
- package/node_modules/@openclaw/fs-safe/dist/file-sync.d.ts +5 -0
- package/node_modules/@openclaw/fs-safe/dist/file-sync.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/file-sync.js +19 -0
- package/node_modules/@openclaw/fs-safe/dist/filename.d.ts +8 -0
- package/node_modules/@openclaw/fs-safe/dist/filename.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/filename.js +91 -0
- package/node_modules/@openclaw/fs-safe/dist/fs.d.ts +13 -0
- package/node_modules/@openclaw/fs-safe/dist/fs.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/fs.js +30 -0
- package/node_modules/@openclaw/fs-safe/dist/guarded-mkdir.d.ts +14 -0
- package/node_modules/@openclaw/fs-safe/dist/guarded-mkdir.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/guarded-mkdir.js +87 -0
- package/node_modules/@openclaw/fs-safe/dist/guarded-mutation.d.ts +37 -0
- package/node_modules/@openclaw/fs-safe/dist/guarded-mutation.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/guarded-mutation.js +82 -0
- package/node_modules/@openclaw/fs-safe/dist/home-dir.d.ts +12 -0
- package/node_modules/@openclaw/fs-safe/dist/home-dir.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/home-dir.js +84 -0
- package/node_modules/@openclaw/fs-safe/dist/index.d.ts +7 -0
- package/node_modules/@openclaw/fs-safe/dist/index.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/index.js +5 -0
- package/node_modules/@openclaw/fs-safe/dist/install-path.d.ts +20 -0
- package/node_modules/@openclaw/fs-safe/dist/install-path.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/install-path.js +94 -0
- package/node_modules/@openclaw/fs-safe/dist/json-document-store.d.ts +35 -0
- package/node_modules/@openclaw/fs-safe/dist/json-document-store.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/json-document-store.js +97 -0
- package/node_modules/@openclaw/fs-safe/dist/json-durable-queue-directory.d.ts +2 -0
- package/node_modules/@openclaw/fs-safe/dist/json-durable-queue-directory.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/json-durable-queue-directory.js +20 -0
- package/node_modules/@openclaw/fs-safe/dist/json-durable-queue-ownership.d.ts +17 -0
- package/node_modules/@openclaw/fs-safe/dist/json-durable-queue-ownership.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/json-durable-queue-ownership.js +292 -0
- package/node_modules/@openclaw/fs-safe/dist/json-durable-queue.d.ts +46 -0
- package/node_modules/@openclaw/fs-safe/dist/json-durable-queue.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/json-durable-queue.js +383 -0
- package/node_modules/@openclaw/fs-safe/dist/json-store.d.ts +9 -0
- package/node_modules/@openclaw/fs-safe/dist/json-store.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/json-store.js +12 -0
- package/node_modules/@openclaw/fs-safe/dist/json-stringify.d.ts +2 -0
- package/node_modules/@openclaw/fs-safe/dist/json-stringify.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/json-stringify.js +7 -0
- package/node_modules/@openclaw/fs-safe/dist/json.d.ts +50 -0
- package/node_modules/@openclaw/fs-safe/dist/json.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/json.js +343 -0
- package/node_modules/@openclaw/fs-safe/dist/local-file-access.d.ts +9 -0
- package/node_modules/@openclaw/fs-safe/dist/local-file-access.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/local-file-access.js +87 -0
- package/node_modules/@openclaw/fs-safe/dist/local-roots.d.ts +26 -0
- package/node_modules/@openclaw/fs-safe/dist/local-roots.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/local-roots.js +135 -0
- package/node_modules/@openclaw/fs-safe/dist/lock-config.d.ts +10 -0
- package/node_modules/@openclaw/fs-safe/dist/lock-config.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/lock-config.js +12 -0
- package/node_modules/@openclaw/fs-safe/dist/move-path-cleanup.d.ts +43 -0
- package/node_modules/@openclaw/fs-safe/dist/move-path-cleanup.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/move-path-cleanup.js +161 -0
- package/node_modules/@openclaw/fs-safe/dist/move-path.d.ts +21 -0
- package/node_modules/@openclaw/fs-safe/dist/move-path.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/move-path.js +334 -0
- package/node_modules/@openclaw/fs-safe/dist/native-binding.d.ts +93 -0
- package/node_modules/@openclaw/fs-safe/dist/native-binding.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/native-binding.js +1 -0
- package/node_modules/@openclaw/fs-safe/dist/native-config.d.ts +17 -0
- package/node_modules/@openclaw/fs-safe/dist/native-config.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/native-config.js +71 -0
- package/node_modules/@openclaw/fs-safe/dist/native-operations.d.ts +21 -0
- package/node_modules/@openclaw/fs-safe/dist/native-operations.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/native-operations.js +132 -0
- package/node_modules/@openclaw/fs-safe/dist/native-pinned-write-windows.d.ts +8 -0
- package/node_modules/@openclaw/fs-safe/dist/native-pinned-write-windows.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/native-pinned-write-windows.js +96 -0
- package/node_modules/@openclaw/fs-safe/dist/native-pinned-write.d.ts +5 -0
- package/node_modules/@openclaw/fs-safe/dist/native-pinned-write.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/native-pinned-write.js +161 -0
- package/node_modules/@openclaw/fs-safe/dist/native-staged-file.d.ts +31 -0
- package/node_modules/@openclaw/fs-safe/dist/native-staged-file.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/native-staged-file.js +362 -0
- package/node_modules/@openclaw/fs-safe/dist/native.d.ts +14 -0
- package/node_modules/@openclaw/fs-safe/dist/native.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/native.js +204 -0
- package/node_modules/@openclaw/fs-safe/dist/opened-file-failure.d.ts +8 -0
- package/node_modules/@openclaw/fs-safe/dist/opened-file-failure.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/opened-file-failure.js +45 -0
- package/node_modules/@openclaw/fs-safe/dist/opened-realpath.d.ts +16 -0
- package/node_modules/@openclaw/fs-safe/dist/opened-realpath.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/opened-realpath.js +92 -0
- package/node_modules/@openclaw/fs-safe/dist/output.d.ts +15 -0
- package/node_modules/@openclaw/fs-safe/dist/output.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/output.js +123 -0
- package/node_modules/@openclaw/fs-safe/dist/owner-dacl.d.ts +31 -0
- package/node_modules/@openclaw/fs-safe/dist/owner-dacl.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/owner-dacl.js +28 -0
- package/node_modules/@openclaw/fs-safe/dist/path-policy.d.ts +25 -0
- package/node_modules/@openclaw/fs-safe/dist/path-policy.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/path-policy.js +44 -0
- package/node_modules/@openclaw/fs-safe/dist/path.d.ts +21 -0
- package/node_modules/@openclaw/fs-safe/dist/path.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/path.js +136 -0
- package/node_modules/@openclaw/fs-safe/dist/permission-exec.d.ts +25 -0
- package/node_modules/@openclaw/fs-safe/dist/permission-exec.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/permission-exec.js +74 -0
- package/node_modules/@openclaw/fs-safe/dist/permissions-public.d.ts +4 -0
- package/node_modules/@openclaw/fs-safe/dist/permissions-public.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/permissions-public.js +3 -0
- package/node_modules/@openclaw/fs-safe/dist/permissions-windows.d.ts +59 -0
- package/node_modules/@openclaw/fs-safe/dist/permissions-windows.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/permissions-windows.js +296 -0
- package/node_modules/@openclaw/fs-safe/dist/permissions.d.ts +60 -0
- package/node_modules/@openclaw/fs-safe/dist/permissions.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/permissions.js +125 -0
- package/node_modules/@openclaw/fs-safe/dist/pinned-open.d.ts +24 -0
- package/node_modules/@openclaw/fs-safe/dist/pinned-open.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/pinned-open.js +74 -0
- package/node_modules/@openclaw/fs-safe/dist/pinned-operation.d.ts +2 -0
- package/node_modules/@openclaw/fs-safe/dist/pinned-operation.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/pinned-operation.js +35 -0
- package/node_modules/@openclaw/fs-safe/dist/pinned-write.d.ts +36 -0
- package/node_modules/@openclaw/fs-safe/dist/pinned-write.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/pinned-write.js +252 -0
- package/node_modules/@openclaw/fs-safe/dist/private-directory.d.ts +5 -0
- package/node_modules/@openclaw/fs-safe/dist/private-directory.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/private-directory.js +14 -0
- package/node_modules/@openclaw/fs-safe/dist/private-temp-workspace.d.ts +45 -0
- package/node_modules/@openclaw/fs-safe/dist/private-temp-workspace.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/private-temp-workspace.js +299 -0
- package/node_modules/@openclaw/fs-safe/dist/publish-file-failure.d.ts +28 -0
- package/node_modules/@openclaw/fs-safe/dist/publish-file-failure.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/publish-file-failure.js +22 -0
- package/node_modules/@openclaw/fs-safe/dist/publish-file.d.ts +21 -0
- package/node_modules/@openclaw/fs-safe/dist/publish-file.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/publish-file.js +366 -0
- package/node_modules/@openclaw/fs-safe/dist/read-open-flags.d.ts +8 -0
- package/node_modules/@openclaw/fs-safe/dist/read-open-flags.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/read-open-flags.js +13 -0
- package/node_modules/@openclaw/fs-safe/dist/read-opened-file.d.ts +21 -0
- package/node_modules/@openclaw/fs-safe/dist/read-opened-file.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/read-opened-file.js +18 -0
- package/node_modules/@openclaw/fs-safe/dist/regular-file.d.ts +38 -0
- package/node_modules/@openclaw/fs-safe/dist/regular-file.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/regular-file.js +391 -0
- package/node_modules/@openclaw/fs-safe/dist/replace-directory.d.ts +7 -0
- package/node_modules/@openclaw/fs-safe/dist/replace-directory.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/replace-directory.js +42 -0
- package/node_modules/@openclaw/fs-safe/dist/replace-file-copy-fallback.d.ts +39 -0
- package/node_modules/@openclaw/fs-safe/dist/replace-file-copy-fallback.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/replace-file-copy-fallback.js +331 -0
- package/node_modules/@openclaw/fs-safe/dist/replace-file-copy-source.d.ts +21 -0
- package/node_modules/@openclaw/fs-safe/dist/replace-file-copy-source.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/replace-file-copy-source.js +107 -0
- package/node_modules/@openclaw/fs-safe/dist/replace-file-descriptor.d.ts +51 -0
- package/node_modules/@openclaw/fs-safe/dist/replace-file-descriptor.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/replace-file-descriptor.js +161 -0
- package/node_modules/@openclaw/fs-safe/dist/replace-file-rename-policy.d.ts +7 -0
- package/node_modules/@openclaw/fs-safe/dist/replace-file-rename-policy.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/replace-file-rename-policy.js +30 -0
- package/node_modules/@openclaw/fs-safe/dist/replace-file-temp-owner.d.ts +53 -0
- package/node_modules/@openclaw/fs-safe/dist/replace-file-temp-owner.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/replace-file-temp-owner.js +376 -0
- package/node_modules/@openclaw/fs-safe/dist/replace-file.d.ts +58 -0
- package/node_modules/@openclaw/fs-safe/dist/replace-file.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/replace-file.js +329 -0
- package/node_modules/@openclaw/fs-safe/dist/root-context.d.ts +38 -0
- package/node_modules/@openclaw/fs-safe/dist/root-context.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/root-context.js +141 -0
- package/node_modules/@openclaw/fs-safe/dist/root-errors.d.ts +12 -0
- package/node_modules/@openclaw/fs-safe/dist/root-errors.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/root-errors.js +75 -0
- package/node_modules/@openclaw/fs-safe/dist/root-file.d.ts +45 -0
- package/node_modules/@openclaw/fs-safe/dist/root-file.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/root-file.js +120 -0
- package/node_modules/@openclaw/fs-safe/dist/root-impl.d.ts +163 -0
- package/node_modules/@openclaw/fs-safe/dist/root-impl.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/root-impl.js +1230 -0
- package/node_modules/@openclaw/fs-safe/dist/root-path-existing.d.ts +3 -0
- package/node_modules/@openclaw/fs-safe/dist/root-path-existing.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/root-path-existing.js +68 -0
- package/node_modules/@openclaw/fs-safe/dist/root-path-symlink.d.ts +7 -0
- package/node_modules/@openclaw/fs-safe/dist/root-path-symlink.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/root-path-symlink.js +35 -0
- package/node_modules/@openclaw/fs-safe/dist/root-path.d.ts +40 -0
- package/node_modules/@openclaw/fs-safe/dist/root-path.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/root-path.js +481 -0
- package/node_modules/@openclaw/fs-safe/dist/root-paths.d.ts +89 -0
- package/node_modules/@openclaw/fs-safe/dist/root-paths.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/root-paths.js +381 -0
- package/node_modules/@openclaw/fs-safe/dist/root-walk.d.ts +41 -0
- package/node_modules/@openclaw/fs-safe/dist/root-walk.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/root-walk.js +133 -0
- package/node_modules/@openclaw/fs-safe/dist/root-write-mode.d.ts +6 -0
- package/node_modules/@openclaw/fs-safe/dist/root-write-mode.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/root-write-mode.js +61 -0
- package/node_modules/@openclaw/fs-safe/dist/root-write-verification.d.ts +12 -0
- package/node_modules/@openclaw/fs-safe/dist/root-write-verification.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/root-write-verification.js +97 -0
- package/node_modules/@openclaw/fs-safe/dist/root.d.ts +4 -0
- package/node_modules/@openclaw/fs-safe/dist/root.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/root.js +1 -0
- package/node_modules/@openclaw/fs-safe/dist/safe-path-segment.d.ts +12 -0
- package/node_modules/@openclaw/fs-safe/dist/safe-path-segment.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/safe-path-segment.js +75 -0
- package/node_modules/@openclaw/fs-safe/dist/secret-file.d.ts +25 -0
- package/node_modules/@openclaw/fs-safe/dist/secret-file.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/secret-file.js +329 -0
- package/node_modules/@openclaw/fs-safe/dist/secret-read-async.d.ts +4 -0
- package/node_modules/@openclaw/fs-safe/dist/secret-read-async.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/secret-read-async.js +73 -0
- package/node_modules/@openclaw/fs-safe/dist/secret-read-policy.d.ts +17 -0
- package/node_modules/@openclaw/fs-safe/dist/secret-read-policy.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/secret-read-policy.js +40 -0
- package/node_modules/@openclaw/fs-safe/dist/secret.d.ts +4 -0
- package/node_modules/@openclaw/fs-safe/dist/secret.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/secret.js +3 -0
- package/node_modules/@openclaw/fs-safe/dist/secure-file.d.ts +32 -0
- package/node_modules/@openclaw/fs-safe/dist/secure-file.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/secure-file.js +182 -0
- package/node_modules/@openclaw/fs-safe/dist/secure-temp-dir.d.ts +27 -0
- package/node_modules/@openclaw/fs-safe/dist/secure-temp-dir.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/secure-temp-dir.js +160 -0
- package/node_modules/@openclaw/fs-safe/dist/sibling-staged-file.d.ts +15 -0
- package/node_modules/@openclaw/fs-safe/dist/sibling-staged-file.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/sibling-staged-file.js +143 -0
- package/node_modules/@openclaw/fs-safe/dist/sibling-temp.d.ts +27 -0
- package/node_modules/@openclaw/fs-safe/dist/sibling-temp.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/sibling-temp.js +95 -0
- package/node_modules/@openclaw/fs-safe/dist/sidecar-lock-acquire.d.ts +31 -0
- package/node_modules/@openclaw/fs-safe/dist/sidecar-lock-acquire.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/sidecar-lock-acquire.js +336 -0
- package/node_modules/@openclaw/fs-safe/dist/sidecar-lock-handle.d.ts +24 -0
- package/node_modules/@openclaw/fs-safe/dist/sidecar-lock-handle.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/sidecar-lock-handle.js +42 -0
- package/node_modules/@openclaw/fs-safe/dist/sidecar-lock-policy.d.ts +14 -0
- package/node_modules/@openclaw/fs-safe/dist/sidecar-lock-policy.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/sidecar-lock-policy.js +71 -0
- package/node_modules/@openclaw/fs-safe/dist/sidecar-lock-reclaim.d.ts +63 -0
- package/node_modules/@openclaw/fs-safe/dist/sidecar-lock-reclaim.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/sidecar-lock-reclaim.js +305 -0
- package/node_modules/@openclaw/fs-safe/dist/sidecar-lock-root.d.ts +3 -0
- package/node_modules/@openclaw/fs-safe/dist/sidecar-lock-root.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/sidecar-lock-root.js +76 -0
- package/node_modules/@openclaw/fs-safe/dist/sidecar-lock-types.d.ts +63 -0
- package/node_modules/@openclaw/fs-safe/dist/sidecar-lock-types.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/sidecar-lock-types.js +1 -0
- package/node_modules/@openclaw/fs-safe/dist/sidecar-lock.d.ts +14 -0
- package/node_modules/@openclaw/fs-safe/dist/sidecar-lock.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/sidecar-lock.js +265 -0
- package/node_modules/@openclaw/fs-safe/dist/staged-directory.d.ts +16 -0
- package/node_modules/@openclaw/fs-safe/dist/staged-directory.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/staged-directory.js +60 -0
- package/node_modules/@openclaw/fs-safe/dist/staged-file-types.d.ts +56 -0
- package/node_modules/@openclaw/fs-safe/dist/staged-file-types.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/staged-file-types.js +1 -0
- package/node_modules/@openclaw/fs-safe/dist/store.d.ts +4 -0
- package/node_modules/@openclaw/fs-safe/dist/store.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/store.js +3 -0
- package/node_modules/@openclaw/fs-safe/dist/strict-file-identity.d.ts +6 -0
- package/node_modules/@openclaw/fs-safe/dist/strict-file-identity.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/strict-file-identity.js +51 -0
- package/node_modules/@openclaw/fs-safe/dist/string-coerce.d.ts +5 -0
- package/node_modules/@openclaw/fs-safe/dist/string-coerce.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/string-coerce.js +16 -0
- package/node_modules/@openclaw/fs-safe/dist/suppressed-error.d.ts +6 -0
- package/node_modules/@openclaw/fs-safe/dist/suppressed-error.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/suppressed-error.js +15 -0
- package/node_modules/@openclaw/fs-safe/dist/symlink-parents.d.ts +12 -0
- package/node_modules/@openclaw/fs-safe/dist/symlink-parents.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/symlink-parents.js +78 -0
- package/node_modules/@openclaw/fs-safe/dist/temp-cleanup.d.ts +14 -0
- package/node_modules/@openclaw/fs-safe/dist/temp-cleanup.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/temp-cleanup.js +87 -0
- package/node_modules/@openclaw/fs-safe/dist/temp-target.d.ts +28 -0
- package/node_modules/@openclaw/fs-safe/dist/temp-target.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/temp-target.js +137 -0
- package/node_modules/@openclaw/fs-safe/dist/temp-workspace-owner.d.ts +23 -0
- package/node_modules/@openclaw/fs-safe/dist/temp-workspace-owner.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/temp-workspace-owner.js +320 -0
- package/node_modules/@openclaw/fs-safe/dist/temp.d.ts +4 -0
- package/node_modules/@openclaw/fs-safe/dist/temp.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/temp.js +2 -0
- package/node_modules/@openclaw/fs-safe/dist/test-hooks.d.ts +25 -0
- package/node_modules/@openclaw/fs-safe/dist/test-hooks.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/test-hooks.js +13 -0
- package/node_modules/@openclaw/fs-safe/dist/text-atomic.d.ts +14 -0
- package/node_modules/@openclaw/fs-safe/dist/text-atomic.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/text-atomic.js +14 -0
- package/node_modules/@openclaw/fs-safe/dist/timing.d.ts +8 -0
- package/node_modules/@openclaw/fs-safe/dist/timing.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/timing.js +40 -0
- package/node_modules/@openclaw/fs-safe/dist/trash.d.ts +5 -0
- package/node_modules/@openclaw/fs-safe/dist/trash.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/trash.js +171 -0
- package/node_modules/@openclaw/fs-safe/dist/types.d.ts +23 -0
- package/node_modules/@openclaw/fs-safe/dist/types.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/types.js +1 -0
- package/node_modules/@openclaw/fs-safe/dist/walk.d.ts +37 -0
- package/node_modules/@openclaw/fs-safe/dist/walk.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/walk.js +207 -0
- package/node_modules/@openclaw/fs-safe/dist/windows-command.d.ts +2 -0
- package/node_modules/@openclaw/fs-safe/dist/windows-command.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/windows-command.js +34 -0
- package/node_modules/@openclaw/fs-safe/dist/windows-owner.d.ts +32 -0
- package/node_modules/@openclaw/fs-safe/dist/windows-owner.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/windows-owner.js +126 -0
- package/node_modules/@openclaw/fs-safe/dist/write-open-flags.d.ts +5 -0
- package/node_modules/@openclaw/fs-safe/dist/write-open-flags.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/write-open-flags.js +35 -0
- package/node_modules/@openclaw/fs-safe/dist/write-queue.d.ts +2 -0
- package/node_modules/@openclaw/fs-safe/dist/write-queue.d.ts.map +1 -0
- package/node_modules/@openclaw/fs-safe/dist/write-queue.js +18 -0
- package/node_modules/@openclaw/fs-safe/docs/advanced.md +153 -0
- package/node_modules/@openclaw/fs-safe/docs/archive.md +658 -0
- package/node_modules/@openclaw/fs-safe/docs/assets/readme-banner.jpg +0 -0
- package/node_modules/@openclaw/fs-safe/docs/atomic.md +334 -0
- package/node_modules/@openclaw/fs-safe/docs/config.md +131 -0
- package/node_modules/@openclaw/fs-safe/docs/contributing.md +180 -0
- package/node_modules/@openclaw/fs-safe/docs/durability.md +313 -0
- package/node_modules/@openclaw/fs-safe/docs/errors.md +232 -0
- package/node_modules/@openclaw/fs-safe/docs/file-store.md +258 -0
- package/node_modules/@openclaw/fs-safe/docs/filename.md +96 -0
- package/node_modules/@openclaw/fs-safe/docs/index.md +84 -0
- package/node_modules/@openclaw/fs-safe/docs/install-path.md +170 -0
- package/node_modules/@openclaw/fs-safe/docs/install.md +163 -0
- package/node_modules/@openclaw/fs-safe/docs/json-store.md +221 -0
- package/node_modules/@openclaw/fs-safe/docs/json.md +213 -0
- package/node_modules/@openclaw/fs-safe/docs/local-roots.md +141 -0
- package/node_modules/@openclaw/fs-safe/docs/migrating-to-0.5.md +196 -0
- package/node_modules/@openclaw/fs-safe/docs/migrating-to-0.6.md +43 -0
- package/node_modules/@openclaw/fs-safe/docs/native-helper.md +118 -0
- package/node_modules/@openclaw/fs-safe/docs/native.md +196 -0
- package/node_modules/@openclaw/fs-safe/docs/output.md +139 -0
- package/node_modules/@openclaw/fs-safe/docs/path-scope.md +159 -0
- package/node_modules/@openclaw/fs-safe/docs/path.md +208 -0
- package/node_modules/@openclaw/fs-safe/docs/permissions.md +200 -0
- package/node_modules/@openclaw/fs-safe/docs/private-file-store.md +54 -0
- package/node_modules/@openclaw/fs-safe/docs/public-api.md +112 -0
- package/node_modules/@openclaw/fs-safe/docs/quickstart.md +154 -0
- package/node_modules/@openclaw/fs-safe/docs/reading.md +183 -0
- package/node_modules/@openclaw/fs-safe/docs/regular-file.md +190 -0
- package/node_modules/@openclaw/fs-safe/docs/root.md +266 -0
- package/node_modules/@openclaw/fs-safe/docs/secret-file.md +273 -0
- package/node_modules/@openclaw/fs-safe/docs/secure-file.md +100 -0
- package/node_modules/@openclaw/fs-safe/docs/security-model.md +188 -0
- package/node_modules/@openclaw/fs-safe/docs/sidecar-lock.md +439 -0
- package/node_modules/@openclaw/fs-safe/docs/staged-file.md +182 -0
- package/node_modules/@openclaw/fs-safe/docs/store.md +94 -0
- package/node_modules/@openclaw/fs-safe/docs/temp.md +476 -0
- package/node_modules/@openclaw/fs-safe/docs/test-hooks.md +96 -0
- package/node_modules/@openclaw/fs-safe/docs/testing.md +189 -0
- package/node_modules/@openclaw/fs-safe/docs/timing.md +121 -0
- package/node_modules/@openclaw/fs-safe/docs/types.md +188 -0
- package/node_modules/@openclaw/fs-safe/docs/walk.md +128 -0
- package/node_modules/@openclaw/fs-safe/docs/writing.md +347 -0
- package/node_modules/@openclaw/fs-safe/package.json +187 -0
- package/node_modules/@openclaw/fs-safe-darwin-arm64/fs-safe-native.node +0 -0
- package/node_modules/@openclaw/fs-safe-darwin-arm64/package.json +29 -0
- package/node_modules/@openclaw/fs-safe-darwin-x64/fs-safe-native.node +0 -0
- package/node_modules/@openclaw/fs-safe-darwin-x64/package.json +29 -0
- package/node_modules/@openclaw/fs-safe-linux-arm64-gnu/fs-safe-native.node +0 -0
- package/node_modules/@openclaw/fs-safe-linux-arm64-gnu/package.json +32 -0
- package/node_modules/@openclaw/fs-safe-linux-arm64-musl/fs-safe-native.node +0 -0
- package/node_modules/@openclaw/fs-safe-linux-arm64-musl/package.json +32 -0
- package/node_modules/@openclaw/fs-safe-linux-x64-gnu/fs-safe-native.node +0 -0
- package/node_modules/@openclaw/fs-safe-linux-x64-gnu/package.json +32 -0
- package/node_modules/@openclaw/fs-safe-linux-x64-musl/fs-safe-native.node +0 -0
- package/node_modules/@openclaw/fs-safe-linux-x64-musl/package.json +32 -0
- package/node_modules/@openclaw/fs-safe-win32-x64-msvc/fs-safe-native.node +0 -0
- package/node_modules/@openclaw/fs-safe-win32-x64-msvc/package.json +29 -0
- package/node_modules/core-util-is/LICENSE +19 -0
- package/node_modules/core-util-is/README.md +3 -0
- package/node_modules/core-util-is/lib/util.js +107 -0
- package/node_modules/core-util-is/package.json +38 -0
- package/node_modules/immediate/LICENSE.txt +20 -0
- package/node_modules/immediate/README.md +93 -0
- package/node_modules/immediate/dist/immediate.js +75 -0
- package/node_modules/immediate/dist/immediate.min.js +1 -0
- package/node_modules/immediate/lib/browser.js +69 -0
- package/node_modules/immediate/lib/index.js +73 -0
- package/node_modules/immediate/package.json +42 -0
- package/node_modules/inherits/LICENSE +16 -0
- package/node_modules/inherits/README.md +42 -0
- package/node_modules/inherits/inherits.js +9 -0
- package/node_modules/inherits/inherits_browser.js +27 -0
- package/node_modules/inherits/package.json +29 -0
- package/node_modules/isarray/.npmignore +1 -0
- package/node_modules/isarray/.travis.yml +4 -0
- package/node_modules/isarray/Makefile +6 -0
- package/node_modules/isarray/README.md +60 -0
- package/node_modules/isarray/component.json +19 -0
- package/node_modules/isarray/index.js +5 -0
- package/node_modules/isarray/package.json +45 -0
- package/node_modules/isarray/test.js +20 -0
- package/node_modules/jszip/.codeclimate.yml +16 -0
- package/node_modules/jszip/.editorconfig +8 -0
- package/node_modules/jszip/.eslintrc.js +43 -0
- package/node_modules/jszip/.github/workflows/pr.yaml +58 -0
- package/node_modules/jszip/.jekyll-metadata +0 -0
- package/node_modules/jszip/.travis.yml +17 -0
- package/node_modules/jszip/CHANGES.md +204 -0
- package/node_modules/jszip/LICENSE.markdown +651 -0
- package/node_modules/jszip/README.markdown +33 -0
- package/node_modules/jszip/deps.js +37 -0
- package/node_modules/jszip/dist/jszip.js +11577 -0
- package/node_modules/jszip/dist/jszip.min.js +13 -0
- package/node_modules/jszip/graph.svg +601 -0
- package/node_modules/jszip/index.d.ts +330 -0
- package/node_modules/jszip/lib/base64.js +106 -0
- package/node_modules/jszip/lib/compressedObject.js +74 -0
- package/node_modules/jszip/lib/compressions.js +14 -0
- package/node_modules/jszip/lib/crc32.js +77 -0
- package/node_modules/jszip/lib/defaults.js +11 -0
- package/node_modules/jszip/lib/external.js +18 -0
- package/node_modules/jszip/lib/flate.js +85 -0
- package/node_modules/jszip/lib/generate/ZipFileWorker.js +539 -0
- package/node_modules/jszip/lib/generate/index.js +57 -0
- package/node_modules/jszip/lib/index.js +55 -0
- package/node_modules/jszip/lib/license_header.js +11 -0
- package/node_modules/jszip/lib/load.js +88 -0
- package/node_modules/jszip/lib/nodejs/NodejsStreamInputAdapter.js +74 -0
- package/node_modules/jszip/lib/nodejs/NodejsStreamOutputAdapter.js +42 -0
- package/node_modules/jszip/lib/nodejsUtils.js +57 -0
- package/node_modules/jszip/lib/object.js +384 -0
- package/node_modules/jszip/lib/readable-stream-browser.js +10 -0
- package/node_modules/jszip/lib/reader/ArrayReader.js +57 -0
- package/node_modules/jszip/lib/reader/DataReader.js +116 -0
- package/node_modules/jszip/lib/reader/NodeBufferReader.js +19 -0
- package/node_modules/jszip/lib/reader/StringReader.js +38 -0
- package/node_modules/jszip/lib/reader/Uint8ArrayReader.js +22 -0
- package/node_modules/jszip/lib/reader/readerFor.js +28 -0
- package/node_modules/jszip/lib/signature.js +7 -0
- package/node_modules/jszip/lib/stream/ConvertWorker.js +26 -0
- package/node_modules/jszip/lib/stream/Crc32Probe.js +24 -0
- package/node_modules/jszip/lib/stream/DataLengthProbe.js +29 -0
- package/node_modules/jszip/lib/stream/DataWorker.js +116 -0
- package/node_modules/jszip/lib/stream/GenericWorker.js +263 -0
- package/node_modules/jszip/lib/stream/StreamHelper.js +214 -0
- package/node_modules/jszip/lib/support.js +38 -0
- package/node_modules/jszip/lib/utf8.js +275 -0
- package/node_modules/jszip/lib/utils.js +501 -0
- package/node_modules/jszip/lib/zipEntries.js +261 -0
- package/node_modules/jszip/lib/zipEntry.js +293 -0
- package/node_modules/jszip/lib/zipObject.js +133 -0
- package/node_modules/jszip/package.json +67 -0
- package/node_modules/jszip/sponsors.md +21 -0
- package/node_modules/jszip/tsconfig.json +101 -0
- package/node_modules/jszip/vendor/FileSaver.js +247 -0
- package/node_modules/lie/README.md +62 -0
- package/node_modules/lie/dist/lie.js +350 -0
- package/node_modules/lie/dist/lie.min.js +1 -0
- package/node_modules/lie/dist/lie.polyfill.js +358 -0
- package/node_modules/lie/dist/lie.polyfill.min.js +1 -0
- package/node_modules/lie/lib/browser.js +273 -0
- package/node_modules/lie/lib/index.js +298 -0
- package/node_modules/lie/license.md +7 -0
- package/node_modules/lie/lie.d.ts +244 -0
- package/node_modules/lie/package.json +69 -0
- package/node_modules/lie/polyfill.js +4 -0
- package/node_modules/pako/CHANGELOG.md +164 -0
- package/node_modules/pako/LICENSE +21 -0
- package/node_modules/pako/README.md +191 -0
- package/node_modules/pako/dist/pako.js +6818 -0
- package/node_modules/pako/dist/pako.min.js +1 -0
- package/node_modules/pako/dist/pako_deflate.js +3997 -0
- package/node_modules/pako/dist/pako_deflate.min.js +1 -0
- package/node_modules/pako/dist/pako_inflate.js +3300 -0
- package/node_modules/pako/dist/pako_inflate.min.js +1 -0
- package/node_modules/pako/index.js +14 -0
- package/node_modules/pako/lib/deflate.js +400 -0
- package/node_modules/pako/lib/inflate.js +423 -0
- package/node_modules/pako/lib/utils/common.js +105 -0
- package/node_modules/pako/lib/utils/strings.js +187 -0
- package/node_modules/pako/lib/zlib/README +59 -0
- package/node_modules/pako/lib/zlib/adler32.js +51 -0
- package/node_modules/pako/lib/zlib/constants.js +68 -0
- package/node_modules/pako/lib/zlib/crc32.js +59 -0
- package/node_modules/pako/lib/zlib/deflate.js +1874 -0
- package/node_modules/pako/lib/zlib/gzheader.js +58 -0
- package/node_modules/pako/lib/zlib/inffast.js +345 -0
- package/node_modules/pako/lib/zlib/inflate.js +1556 -0
- package/node_modules/pako/lib/zlib/inftrees.js +343 -0
- package/node_modules/pako/lib/zlib/messages.js +32 -0
- package/node_modules/pako/lib/zlib/trees.js +1222 -0
- package/node_modules/pako/lib/zlib/zstream.js +47 -0
- package/node_modules/pako/package.json +44 -0
- package/node_modules/process-nextick-args/index.js +45 -0
- package/node_modules/process-nextick-args/license.md +19 -0
- package/node_modules/process-nextick-args/package.json +25 -0
- package/node_modules/process-nextick-args/readme.md +18 -0
- package/node_modules/readable-stream/.travis.yml +34 -0
- package/node_modules/readable-stream/CONTRIBUTING.md +38 -0
- package/node_modules/readable-stream/GOVERNANCE.md +136 -0
- package/node_modules/readable-stream/LICENSE +47 -0
- package/node_modules/readable-stream/README.md +58 -0
- package/node_modules/readable-stream/doc/wg-meetings/2015-01-30.md +60 -0
- package/node_modules/readable-stream/duplex-browser.js +1 -0
- package/node_modules/readable-stream/duplex.js +1 -0
- package/node_modules/readable-stream/lib/_stream_duplex.js +131 -0
- package/node_modules/readable-stream/lib/_stream_passthrough.js +47 -0
- package/node_modules/readable-stream/lib/_stream_readable.js +1019 -0
- package/node_modules/readable-stream/lib/_stream_transform.js +214 -0
- package/node_modules/readable-stream/lib/_stream_writable.js +685 -0
- package/node_modules/readable-stream/lib/internal/streams/BufferList.js +78 -0
- package/node_modules/readable-stream/lib/internal/streams/destroy.js +84 -0
- package/node_modules/readable-stream/lib/internal/streams/stream-browser.js +1 -0
- package/node_modules/readable-stream/lib/internal/streams/stream.js +1 -0
- package/node_modules/readable-stream/package.json +52 -0
- package/node_modules/readable-stream/passthrough.js +1 -0
- package/node_modules/readable-stream/readable-browser.js +7 -0
- package/node_modules/readable-stream/readable.js +19 -0
- package/node_modules/readable-stream/transform.js +1 -0
- package/node_modules/readable-stream/writable-browser.js +1 -0
- package/node_modules/readable-stream/writable.js +8 -0
- package/node_modules/safe-buffer/LICENSE +21 -0
- package/node_modules/safe-buffer/README.md +584 -0
- package/node_modules/safe-buffer/index.d.ts +187 -0
- package/node_modules/safe-buffer/index.js +62 -0
- package/node_modules/safe-buffer/package.json +37 -0
- package/node_modules/setimmediate/LICENSE.txt +20 -0
- package/node_modules/setimmediate/package.json +30 -0
- package/node_modules/setimmediate/setImmediate.js +186 -0
- package/node_modules/string_decoder/.travis.yml +50 -0
- package/node_modules/string_decoder/LICENSE +48 -0
- package/node_modules/string_decoder/README.md +47 -0
- package/node_modules/string_decoder/lib/string_decoder.js +296 -0
- package/node_modules/string_decoder/package.json +31 -0
- package/node_modules/util-deprecate/History.md +16 -0
- package/node_modules/util-deprecate/LICENSE +24 -0
- package/node_modules/util-deprecate/README.md +53 -0
- package/node_modules/util-deprecate/browser.js +67 -0
- package/node_modules/util-deprecate/node.js +6 -0
- package/node_modules/util-deprecate/package.json +27 -0
- package/openclaw.plugin.json +1 -0
- package/package.json +7 -4
- /package/node_modules/{p-limit/node_modules/yocto-queue → yocto-queue}/index.d.ts +0 -0
- /package/node_modules/{p-limit/node_modules/yocto-queue → yocto-queue}/index.js +0 -0
- /package/node_modules/{p-limit/node_modules/yocto-queue → yocto-queue}/license +0 -0
- /package/node_modules/{p-limit/node_modules/yocto-queue → yocto-queue}/package.json +0 -0
- /package/node_modules/{p-limit/node_modules/yocto-queue → yocto-queue}/readme.md +0 -0
|
@@ -0,0 +1,423 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
var zlib_inflate = require('./zlib/inflate');
|
|
5
|
+
var utils = require('./utils/common');
|
|
6
|
+
var strings = require('./utils/strings');
|
|
7
|
+
var c = require('./zlib/constants');
|
|
8
|
+
var msg = require('./zlib/messages');
|
|
9
|
+
var ZStream = require('./zlib/zstream');
|
|
10
|
+
var GZheader = require('./zlib/gzheader');
|
|
11
|
+
|
|
12
|
+
var toString = Object.prototype.toString;
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* class Inflate
|
|
16
|
+
*
|
|
17
|
+
* Generic JS-style wrapper for zlib calls. If you don't need
|
|
18
|
+
* streaming behaviour - use more simple functions: [[inflate]]
|
|
19
|
+
* and [[inflateRaw]].
|
|
20
|
+
**/
|
|
21
|
+
|
|
22
|
+
/* internal
|
|
23
|
+
* inflate.chunks -> Array
|
|
24
|
+
*
|
|
25
|
+
* Chunks of output data, if [[Inflate#onData]] not overridden.
|
|
26
|
+
**/
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Inflate.result -> Uint8Array|Array|String
|
|
30
|
+
*
|
|
31
|
+
* Uncompressed result, generated by default [[Inflate#onData]]
|
|
32
|
+
* and [[Inflate#onEnd]] handlers. Filled after you push last chunk
|
|
33
|
+
* (call [[Inflate#push]] with `Z_FINISH` / `true` param) or if you
|
|
34
|
+
* push a chunk with explicit flush (call [[Inflate#push]] with
|
|
35
|
+
* `Z_SYNC_FLUSH` param).
|
|
36
|
+
**/
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* Inflate.err -> Number
|
|
40
|
+
*
|
|
41
|
+
* Error code after inflate finished. 0 (Z_OK) on success.
|
|
42
|
+
* Should be checked if broken data possible.
|
|
43
|
+
**/
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* Inflate.msg -> String
|
|
47
|
+
*
|
|
48
|
+
* Error message, if [[Inflate.err]] != 0
|
|
49
|
+
**/
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* new Inflate(options)
|
|
54
|
+
* - options (Object): zlib inflate options.
|
|
55
|
+
*
|
|
56
|
+
* Creates new inflator instance with specified params. Throws exception
|
|
57
|
+
* on bad params. Supported options:
|
|
58
|
+
*
|
|
59
|
+
* - `windowBits`
|
|
60
|
+
* - `dictionary`
|
|
61
|
+
*
|
|
62
|
+
* [http://zlib.net/manual.html#Advanced](http://zlib.net/manual.html#Advanced)
|
|
63
|
+
* for more information on these.
|
|
64
|
+
*
|
|
65
|
+
* Additional options, for internal needs:
|
|
66
|
+
*
|
|
67
|
+
* - `chunkSize` - size of generated data chunks (16K by default)
|
|
68
|
+
* - `raw` (Boolean) - do raw inflate
|
|
69
|
+
* - `to` (String) - if equal to 'string', then result will be converted
|
|
70
|
+
* from utf8 to utf16 (javascript) string. When string output requested,
|
|
71
|
+
* chunk length can differ from `chunkSize`, depending on content.
|
|
72
|
+
*
|
|
73
|
+
* By default, when no options set, autodetect deflate/gzip data format via
|
|
74
|
+
* wrapper header.
|
|
75
|
+
*
|
|
76
|
+
* ##### Example:
|
|
77
|
+
*
|
|
78
|
+
* ```javascript
|
|
79
|
+
* var pako = require('pako')
|
|
80
|
+
* , chunk1 = Uint8Array([1,2,3,4,5,6,7,8,9])
|
|
81
|
+
* , chunk2 = Uint8Array([10,11,12,13,14,15,16,17,18,19]);
|
|
82
|
+
*
|
|
83
|
+
* var inflate = new pako.Inflate({ level: 3});
|
|
84
|
+
*
|
|
85
|
+
* inflate.push(chunk1, false);
|
|
86
|
+
* inflate.push(chunk2, true); // true -> last chunk
|
|
87
|
+
*
|
|
88
|
+
* if (inflate.err) { throw new Error(inflate.err); }
|
|
89
|
+
*
|
|
90
|
+
* console.log(inflate.result);
|
|
91
|
+
* ```
|
|
92
|
+
**/
|
|
93
|
+
function Inflate(options) {
|
|
94
|
+
if (!(this instanceof Inflate)) return new Inflate(options);
|
|
95
|
+
|
|
96
|
+
this.options = utils.assign({
|
|
97
|
+
chunkSize: 16384,
|
|
98
|
+
windowBits: 0,
|
|
99
|
+
to: ''
|
|
100
|
+
}, options || {});
|
|
101
|
+
|
|
102
|
+
var opt = this.options;
|
|
103
|
+
|
|
104
|
+
// Force window size for `raw` data, if not set directly,
|
|
105
|
+
// because we have no header for autodetect.
|
|
106
|
+
if (opt.raw && (opt.windowBits >= 0) && (opt.windowBits < 16)) {
|
|
107
|
+
opt.windowBits = -opt.windowBits;
|
|
108
|
+
if (opt.windowBits === 0) { opt.windowBits = -15; }
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
// If `windowBits` not defined (and mode not raw) - set autodetect flag for gzip/deflate
|
|
112
|
+
if ((opt.windowBits >= 0) && (opt.windowBits < 16) &&
|
|
113
|
+
!(options && options.windowBits)) {
|
|
114
|
+
opt.windowBits += 32;
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
// Gzip header has no info about windows size, we can do autodetect only
|
|
118
|
+
// for deflate. So, if window size not set, force it to max when gzip possible
|
|
119
|
+
if ((opt.windowBits > 15) && (opt.windowBits < 48)) {
|
|
120
|
+
// bit 3 (16) -> gzipped data
|
|
121
|
+
// bit 4 (32) -> autodetect gzip/deflate
|
|
122
|
+
if ((opt.windowBits & 15) === 0) {
|
|
123
|
+
opt.windowBits |= 15;
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
this.err = 0; // error code, if happens (0 = Z_OK)
|
|
128
|
+
this.msg = ''; // error message
|
|
129
|
+
this.ended = false; // used to avoid multiple onEnd() calls
|
|
130
|
+
this.chunks = []; // chunks of compressed data
|
|
131
|
+
|
|
132
|
+
this.strm = new ZStream();
|
|
133
|
+
this.strm.avail_out = 0;
|
|
134
|
+
|
|
135
|
+
var status = zlib_inflate.inflateInit2(
|
|
136
|
+
this.strm,
|
|
137
|
+
opt.windowBits
|
|
138
|
+
);
|
|
139
|
+
|
|
140
|
+
if (status !== c.Z_OK) {
|
|
141
|
+
throw new Error(msg[status]);
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
this.header = new GZheader();
|
|
145
|
+
|
|
146
|
+
zlib_inflate.inflateGetHeader(this.strm, this.header);
|
|
147
|
+
|
|
148
|
+
// Setup dictionary
|
|
149
|
+
if (opt.dictionary) {
|
|
150
|
+
// Convert data if needed
|
|
151
|
+
if (typeof opt.dictionary === 'string') {
|
|
152
|
+
opt.dictionary = strings.string2buf(opt.dictionary);
|
|
153
|
+
} else if (toString.call(opt.dictionary) === '[object ArrayBuffer]') {
|
|
154
|
+
opt.dictionary = new Uint8Array(opt.dictionary);
|
|
155
|
+
}
|
|
156
|
+
if (opt.raw) { //In raw mode we need to set the dictionary early
|
|
157
|
+
status = zlib_inflate.inflateSetDictionary(this.strm, opt.dictionary);
|
|
158
|
+
if (status !== c.Z_OK) {
|
|
159
|
+
throw new Error(msg[status]);
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
/**
|
|
166
|
+
* Inflate#push(data[, mode]) -> Boolean
|
|
167
|
+
* - data (Uint8Array|Array|ArrayBuffer|String): input data
|
|
168
|
+
* - mode (Number|Boolean): 0..6 for corresponding Z_NO_FLUSH..Z_TREE modes.
|
|
169
|
+
* See constants. Skipped or `false` means Z_NO_FLUSH, `true` means Z_FINISH.
|
|
170
|
+
*
|
|
171
|
+
* Sends input data to inflate pipe, generating [[Inflate#onData]] calls with
|
|
172
|
+
* new output chunks. Returns `true` on success. The last data block must have
|
|
173
|
+
* mode Z_FINISH (or `true`). That will flush internal pending buffers and call
|
|
174
|
+
* [[Inflate#onEnd]]. For interim explicit flushes (without ending the stream) you
|
|
175
|
+
* can use mode Z_SYNC_FLUSH, keeping the decompression context.
|
|
176
|
+
*
|
|
177
|
+
* On fail call [[Inflate#onEnd]] with error code and return false.
|
|
178
|
+
*
|
|
179
|
+
* We strongly recommend to use `Uint8Array` on input for best speed (output
|
|
180
|
+
* format is detected automatically). Also, don't skip last param and always
|
|
181
|
+
* use the same type in your code (boolean or number). That will improve JS speed.
|
|
182
|
+
*
|
|
183
|
+
* For regular `Array`-s make sure all elements are [0..255].
|
|
184
|
+
*
|
|
185
|
+
* ##### Example
|
|
186
|
+
*
|
|
187
|
+
* ```javascript
|
|
188
|
+
* push(chunk, false); // push one of data chunks
|
|
189
|
+
* ...
|
|
190
|
+
* push(chunk, true); // push last chunk
|
|
191
|
+
* ```
|
|
192
|
+
**/
|
|
193
|
+
Inflate.prototype.push = function (data, mode) {
|
|
194
|
+
var strm = this.strm;
|
|
195
|
+
var chunkSize = this.options.chunkSize;
|
|
196
|
+
var dictionary = this.options.dictionary;
|
|
197
|
+
var status, _mode;
|
|
198
|
+
var next_out_utf8, tail, utf8str;
|
|
199
|
+
|
|
200
|
+
// Flag to properly process Z_BUF_ERROR on testing inflate call
|
|
201
|
+
// when we check that all output data was flushed.
|
|
202
|
+
var allowBufError = false;
|
|
203
|
+
|
|
204
|
+
if (this.ended) { return false; }
|
|
205
|
+
_mode = (mode === ~~mode) ? mode : ((mode === true) ? c.Z_FINISH : c.Z_NO_FLUSH);
|
|
206
|
+
|
|
207
|
+
// Convert data if needed
|
|
208
|
+
if (typeof data === 'string') {
|
|
209
|
+
// Only binary strings can be decompressed on practice
|
|
210
|
+
strm.input = strings.binstring2buf(data);
|
|
211
|
+
} else if (toString.call(data) === '[object ArrayBuffer]') {
|
|
212
|
+
strm.input = new Uint8Array(data);
|
|
213
|
+
} else {
|
|
214
|
+
strm.input = data;
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
strm.next_in = 0;
|
|
218
|
+
strm.avail_in = strm.input.length;
|
|
219
|
+
|
|
220
|
+
do {
|
|
221
|
+
if (strm.avail_out === 0) {
|
|
222
|
+
strm.output = new utils.Buf8(chunkSize);
|
|
223
|
+
strm.next_out = 0;
|
|
224
|
+
strm.avail_out = chunkSize;
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
status = zlib_inflate.inflate(strm, c.Z_NO_FLUSH); /* no bad return value */
|
|
228
|
+
|
|
229
|
+
if (status === c.Z_NEED_DICT && dictionary) {
|
|
230
|
+
status = zlib_inflate.inflateSetDictionary(this.strm, dictionary);
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
if (status === c.Z_BUF_ERROR && allowBufError === true) {
|
|
234
|
+
status = c.Z_OK;
|
|
235
|
+
allowBufError = false;
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
if (status !== c.Z_STREAM_END && status !== c.Z_OK) {
|
|
239
|
+
this.onEnd(status);
|
|
240
|
+
this.ended = true;
|
|
241
|
+
return false;
|
|
242
|
+
}
|
|
243
|
+
|
|
244
|
+
if (strm.next_out) {
|
|
245
|
+
if (strm.avail_out === 0 || status === c.Z_STREAM_END || (strm.avail_in === 0 && (_mode === c.Z_FINISH || _mode === c.Z_SYNC_FLUSH))) {
|
|
246
|
+
|
|
247
|
+
if (this.options.to === 'string') {
|
|
248
|
+
|
|
249
|
+
next_out_utf8 = strings.utf8border(strm.output, strm.next_out);
|
|
250
|
+
|
|
251
|
+
tail = strm.next_out - next_out_utf8;
|
|
252
|
+
utf8str = strings.buf2string(strm.output, next_out_utf8);
|
|
253
|
+
|
|
254
|
+
// move tail
|
|
255
|
+
strm.next_out = tail;
|
|
256
|
+
strm.avail_out = chunkSize - tail;
|
|
257
|
+
if (tail) { utils.arraySet(strm.output, strm.output, next_out_utf8, tail, 0); }
|
|
258
|
+
|
|
259
|
+
this.onData(utf8str);
|
|
260
|
+
|
|
261
|
+
} else {
|
|
262
|
+
this.onData(utils.shrinkBuf(strm.output, strm.next_out));
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
|
|
267
|
+
// When no more input data, we should check that internal inflate buffers
|
|
268
|
+
// are flushed. The only way to do it when avail_out = 0 - run one more
|
|
269
|
+
// inflate pass. But if output data not exists, inflate return Z_BUF_ERROR.
|
|
270
|
+
// Here we set flag to process this error properly.
|
|
271
|
+
//
|
|
272
|
+
// NOTE. Deflate does not return error in this case and does not needs such
|
|
273
|
+
// logic.
|
|
274
|
+
if (strm.avail_in === 0 && strm.avail_out === 0) {
|
|
275
|
+
allowBufError = true;
|
|
276
|
+
}
|
|
277
|
+
|
|
278
|
+
} while ((strm.avail_in > 0 || strm.avail_out === 0) && status !== c.Z_STREAM_END);
|
|
279
|
+
|
|
280
|
+
if (status === c.Z_STREAM_END) {
|
|
281
|
+
_mode = c.Z_FINISH;
|
|
282
|
+
}
|
|
283
|
+
|
|
284
|
+
// Finalize on the last chunk.
|
|
285
|
+
if (_mode === c.Z_FINISH) {
|
|
286
|
+
status = zlib_inflate.inflateEnd(this.strm);
|
|
287
|
+
this.onEnd(status);
|
|
288
|
+
this.ended = true;
|
|
289
|
+
return status === c.Z_OK;
|
|
290
|
+
}
|
|
291
|
+
|
|
292
|
+
// callback interim results if Z_SYNC_FLUSH.
|
|
293
|
+
if (_mode === c.Z_SYNC_FLUSH) {
|
|
294
|
+
this.onEnd(c.Z_OK);
|
|
295
|
+
strm.avail_out = 0;
|
|
296
|
+
return true;
|
|
297
|
+
}
|
|
298
|
+
|
|
299
|
+
return true;
|
|
300
|
+
};
|
|
301
|
+
|
|
302
|
+
|
|
303
|
+
/**
|
|
304
|
+
* Inflate#onData(chunk) -> Void
|
|
305
|
+
* - chunk (Uint8Array|Array|String): output data. Type of array depends
|
|
306
|
+
* on js engine support. When string output requested, each chunk
|
|
307
|
+
* will be string.
|
|
308
|
+
*
|
|
309
|
+
* By default, stores data blocks in `chunks[]` property and glue
|
|
310
|
+
* those in `onEnd`. Override this handler, if you need another behaviour.
|
|
311
|
+
**/
|
|
312
|
+
Inflate.prototype.onData = function (chunk) {
|
|
313
|
+
this.chunks.push(chunk);
|
|
314
|
+
};
|
|
315
|
+
|
|
316
|
+
|
|
317
|
+
/**
|
|
318
|
+
* Inflate#onEnd(status) -> Void
|
|
319
|
+
* - status (Number): inflate status. 0 (Z_OK) on success,
|
|
320
|
+
* other if not.
|
|
321
|
+
*
|
|
322
|
+
* Called either after you tell inflate that the input stream is
|
|
323
|
+
* complete (Z_FINISH) or should be flushed (Z_SYNC_FLUSH)
|
|
324
|
+
* or if an error happened. By default - join collected chunks,
|
|
325
|
+
* free memory and fill `results` / `err` properties.
|
|
326
|
+
**/
|
|
327
|
+
Inflate.prototype.onEnd = function (status) {
|
|
328
|
+
// On success - join
|
|
329
|
+
if (status === c.Z_OK) {
|
|
330
|
+
if (this.options.to === 'string') {
|
|
331
|
+
// Glue & convert here, until we teach pako to send
|
|
332
|
+
// utf8 aligned strings to onData
|
|
333
|
+
this.result = this.chunks.join('');
|
|
334
|
+
} else {
|
|
335
|
+
this.result = utils.flattenChunks(this.chunks);
|
|
336
|
+
}
|
|
337
|
+
}
|
|
338
|
+
this.chunks = [];
|
|
339
|
+
this.err = status;
|
|
340
|
+
this.msg = this.strm.msg;
|
|
341
|
+
};
|
|
342
|
+
|
|
343
|
+
|
|
344
|
+
/**
|
|
345
|
+
* inflate(data[, options]) -> Uint8Array|Array|String
|
|
346
|
+
* - data (Uint8Array|Array|String): input data to decompress.
|
|
347
|
+
* - options (Object): zlib inflate options.
|
|
348
|
+
*
|
|
349
|
+
* Decompress `data` with inflate/ungzip and `options`. Autodetect
|
|
350
|
+
* format via wrapper header by default. That's why we don't provide
|
|
351
|
+
* separate `ungzip` method.
|
|
352
|
+
*
|
|
353
|
+
* Supported options are:
|
|
354
|
+
*
|
|
355
|
+
* - windowBits
|
|
356
|
+
*
|
|
357
|
+
* [http://zlib.net/manual.html#Advanced](http://zlib.net/manual.html#Advanced)
|
|
358
|
+
* for more information.
|
|
359
|
+
*
|
|
360
|
+
* Sugar (options):
|
|
361
|
+
*
|
|
362
|
+
* - `raw` (Boolean) - say that we work with raw stream, if you don't wish to specify
|
|
363
|
+
* negative windowBits implicitly.
|
|
364
|
+
* - `to` (String) - if equal to 'string', then result will be converted
|
|
365
|
+
* from utf8 to utf16 (javascript) string. When string output requested,
|
|
366
|
+
* chunk length can differ from `chunkSize`, depending on content.
|
|
367
|
+
*
|
|
368
|
+
*
|
|
369
|
+
* ##### Example:
|
|
370
|
+
*
|
|
371
|
+
* ```javascript
|
|
372
|
+
* var pako = require('pako')
|
|
373
|
+
* , input = pako.deflate([1,2,3,4,5,6,7,8,9])
|
|
374
|
+
* , output;
|
|
375
|
+
*
|
|
376
|
+
* try {
|
|
377
|
+
* output = pako.inflate(input);
|
|
378
|
+
* } catch (err)
|
|
379
|
+
* console.log(err);
|
|
380
|
+
* }
|
|
381
|
+
* ```
|
|
382
|
+
**/
|
|
383
|
+
function inflate(input, options) {
|
|
384
|
+
var inflator = new Inflate(options);
|
|
385
|
+
|
|
386
|
+
inflator.push(input, true);
|
|
387
|
+
|
|
388
|
+
// That will never happens, if you don't cheat with options :)
|
|
389
|
+
if (inflator.err) { throw inflator.msg || msg[inflator.err]; }
|
|
390
|
+
|
|
391
|
+
return inflator.result;
|
|
392
|
+
}
|
|
393
|
+
|
|
394
|
+
|
|
395
|
+
/**
|
|
396
|
+
* inflateRaw(data[, options]) -> Uint8Array|Array|String
|
|
397
|
+
* - data (Uint8Array|Array|String): input data to decompress.
|
|
398
|
+
* - options (Object): zlib inflate options.
|
|
399
|
+
*
|
|
400
|
+
* The same as [[inflate]], but creates raw data, without wrapper
|
|
401
|
+
* (header and adler32 crc).
|
|
402
|
+
**/
|
|
403
|
+
function inflateRaw(input, options) {
|
|
404
|
+
options = options || {};
|
|
405
|
+
options.raw = true;
|
|
406
|
+
return inflate(input, options);
|
|
407
|
+
}
|
|
408
|
+
|
|
409
|
+
|
|
410
|
+
/**
|
|
411
|
+
* ungzip(data[, options]) -> Uint8Array|Array|String
|
|
412
|
+
* - data (Uint8Array|Array|String): input data to decompress.
|
|
413
|
+
* - options (Object): zlib inflate options.
|
|
414
|
+
*
|
|
415
|
+
* Just shortcut to [[inflate]], because it autodetects format
|
|
416
|
+
* by header.content. Done for convenience.
|
|
417
|
+
**/
|
|
418
|
+
|
|
419
|
+
|
|
420
|
+
exports.Inflate = Inflate;
|
|
421
|
+
exports.inflate = inflate;
|
|
422
|
+
exports.inflateRaw = inflateRaw;
|
|
423
|
+
exports.ungzip = inflate;
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
var TYPED_OK = (typeof Uint8Array !== 'undefined') &&
|
|
5
|
+
(typeof Uint16Array !== 'undefined') &&
|
|
6
|
+
(typeof Int32Array !== 'undefined');
|
|
7
|
+
|
|
8
|
+
function _has(obj, key) {
|
|
9
|
+
return Object.prototype.hasOwnProperty.call(obj, key);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
exports.assign = function (obj /*from1, from2, from3, ...*/) {
|
|
13
|
+
var sources = Array.prototype.slice.call(arguments, 1);
|
|
14
|
+
while (sources.length) {
|
|
15
|
+
var source = sources.shift();
|
|
16
|
+
if (!source) { continue; }
|
|
17
|
+
|
|
18
|
+
if (typeof source !== 'object') {
|
|
19
|
+
throw new TypeError(source + 'must be non-object');
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
for (var p in source) {
|
|
23
|
+
if (_has(source, p)) {
|
|
24
|
+
obj[p] = source[p];
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
return obj;
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
// reduce buffer size, avoiding mem copy
|
|
34
|
+
exports.shrinkBuf = function (buf, size) {
|
|
35
|
+
if (buf.length === size) { return buf; }
|
|
36
|
+
if (buf.subarray) { return buf.subarray(0, size); }
|
|
37
|
+
buf.length = size;
|
|
38
|
+
return buf;
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
var fnTyped = {
|
|
43
|
+
arraySet: function (dest, src, src_offs, len, dest_offs) {
|
|
44
|
+
if (src.subarray && dest.subarray) {
|
|
45
|
+
dest.set(src.subarray(src_offs, src_offs + len), dest_offs);
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
// Fallback to ordinary array
|
|
49
|
+
for (var i = 0; i < len; i++) {
|
|
50
|
+
dest[dest_offs + i] = src[src_offs + i];
|
|
51
|
+
}
|
|
52
|
+
},
|
|
53
|
+
// Join array of chunks to single array.
|
|
54
|
+
flattenChunks: function (chunks) {
|
|
55
|
+
var i, l, len, pos, chunk, result;
|
|
56
|
+
|
|
57
|
+
// calculate data length
|
|
58
|
+
len = 0;
|
|
59
|
+
for (i = 0, l = chunks.length; i < l; i++) {
|
|
60
|
+
len += chunks[i].length;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
// join chunks
|
|
64
|
+
result = new Uint8Array(len);
|
|
65
|
+
pos = 0;
|
|
66
|
+
for (i = 0, l = chunks.length; i < l; i++) {
|
|
67
|
+
chunk = chunks[i];
|
|
68
|
+
result.set(chunk, pos);
|
|
69
|
+
pos += chunk.length;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
return result;
|
|
73
|
+
}
|
|
74
|
+
};
|
|
75
|
+
|
|
76
|
+
var fnUntyped = {
|
|
77
|
+
arraySet: function (dest, src, src_offs, len, dest_offs) {
|
|
78
|
+
for (var i = 0; i < len; i++) {
|
|
79
|
+
dest[dest_offs + i] = src[src_offs + i];
|
|
80
|
+
}
|
|
81
|
+
},
|
|
82
|
+
// Join array of chunks to single array.
|
|
83
|
+
flattenChunks: function (chunks) {
|
|
84
|
+
return [].concat.apply([], chunks);
|
|
85
|
+
}
|
|
86
|
+
};
|
|
87
|
+
|
|
88
|
+
|
|
89
|
+
// Enable/Disable typed arrays use, for testing
|
|
90
|
+
//
|
|
91
|
+
exports.setTyped = function (on) {
|
|
92
|
+
if (on) {
|
|
93
|
+
exports.Buf8 = Uint8Array;
|
|
94
|
+
exports.Buf16 = Uint16Array;
|
|
95
|
+
exports.Buf32 = Int32Array;
|
|
96
|
+
exports.assign(exports, fnTyped);
|
|
97
|
+
} else {
|
|
98
|
+
exports.Buf8 = Array;
|
|
99
|
+
exports.Buf16 = Array;
|
|
100
|
+
exports.Buf32 = Array;
|
|
101
|
+
exports.assign(exports, fnUntyped);
|
|
102
|
+
}
|
|
103
|
+
};
|
|
104
|
+
|
|
105
|
+
exports.setTyped(TYPED_OK);
|
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
// String encode/decode helpers
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
var utils = require('./common');
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
// Quick check if we can use fast array to bin string conversion
|
|
9
|
+
//
|
|
10
|
+
// - apply(Array) can fail on Android 2.2
|
|
11
|
+
// - apply(Uint8Array) can fail on iOS 5.1 Safari
|
|
12
|
+
//
|
|
13
|
+
var STR_APPLY_OK = true;
|
|
14
|
+
var STR_APPLY_UIA_OK = true;
|
|
15
|
+
|
|
16
|
+
try { String.fromCharCode.apply(null, [ 0 ]); } catch (__) { STR_APPLY_OK = false; }
|
|
17
|
+
try { String.fromCharCode.apply(null, new Uint8Array(1)); } catch (__) { STR_APPLY_UIA_OK = false; }
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
// Table with utf8 lengths (calculated by first byte of sequence)
|
|
21
|
+
// Note, that 5 & 6-byte values and some 4-byte values can not be represented in JS,
|
|
22
|
+
// because max possible codepoint is 0x10ffff
|
|
23
|
+
var _utf8len = new utils.Buf8(256);
|
|
24
|
+
for (var q = 0; q < 256; q++) {
|
|
25
|
+
_utf8len[q] = (q >= 252 ? 6 : q >= 248 ? 5 : q >= 240 ? 4 : q >= 224 ? 3 : q >= 192 ? 2 : 1);
|
|
26
|
+
}
|
|
27
|
+
_utf8len[254] = _utf8len[254] = 1; // Invalid sequence start
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
// convert string to array (typed, when possible)
|
|
31
|
+
exports.string2buf = function (str) {
|
|
32
|
+
var buf, c, c2, m_pos, i, str_len = str.length, buf_len = 0;
|
|
33
|
+
|
|
34
|
+
// count binary size
|
|
35
|
+
for (m_pos = 0; m_pos < str_len; m_pos++) {
|
|
36
|
+
c = str.charCodeAt(m_pos);
|
|
37
|
+
if ((c & 0xfc00) === 0xd800 && (m_pos + 1 < str_len)) {
|
|
38
|
+
c2 = str.charCodeAt(m_pos + 1);
|
|
39
|
+
if ((c2 & 0xfc00) === 0xdc00) {
|
|
40
|
+
c = 0x10000 + ((c - 0xd800) << 10) + (c2 - 0xdc00);
|
|
41
|
+
m_pos++;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
buf_len += c < 0x80 ? 1 : c < 0x800 ? 2 : c < 0x10000 ? 3 : 4;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
// allocate buffer
|
|
48
|
+
buf = new utils.Buf8(buf_len);
|
|
49
|
+
|
|
50
|
+
// convert
|
|
51
|
+
for (i = 0, m_pos = 0; i < buf_len; m_pos++) {
|
|
52
|
+
c = str.charCodeAt(m_pos);
|
|
53
|
+
if ((c & 0xfc00) === 0xd800 && (m_pos + 1 < str_len)) {
|
|
54
|
+
c2 = str.charCodeAt(m_pos + 1);
|
|
55
|
+
if ((c2 & 0xfc00) === 0xdc00) {
|
|
56
|
+
c = 0x10000 + ((c - 0xd800) << 10) + (c2 - 0xdc00);
|
|
57
|
+
m_pos++;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
if (c < 0x80) {
|
|
61
|
+
/* one byte */
|
|
62
|
+
buf[i++] = c;
|
|
63
|
+
} else if (c < 0x800) {
|
|
64
|
+
/* two bytes */
|
|
65
|
+
buf[i++] = 0xC0 | (c >>> 6);
|
|
66
|
+
buf[i++] = 0x80 | (c & 0x3f);
|
|
67
|
+
} else if (c < 0x10000) {
|
|
68
|
+
/* three bytes */
|
|
69
|
+
buf[i++] = 0xE0 | (c >>> 12);
|
|
70
|
+
buf[i++] = 0x80 | (c >>> 6 & 0x3f);
|
|
71
|
+
buf[i++] = 0x80 | (c & 0x3f);
|
|
72
|
+
} else {
|
|
73
|
+
/* four bytes */
|
|
74
|
+
buf[i++] = 0xf0 | (c >>> 18);
|
|
75
|
+
buf[i++] = 0x80 | (c >>> 12 & 0x3f);
|
|
76
|
+
buf[i++] = 0x80 | (c >>> 6 & 0x3f);
|
|
77
|
+
buf[i++] = 0x80 | (c & 0x3f);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
return buf;
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
// Helper (used in 2 places)
|
|
85
|
+
function buf2binstring(buf, len) {
|
|
86
|
+
// On Chrome, the arguments in a function call that are allowed is `65534`.
|
|
87
|
+
// If the length of the buffer is smaller than that, we can use this optimization,
|
|
88
|
+
// otherwise we will take a slower path.
|
|
89
|
+
if (len < 65534) {
|
|
90
|
+
if ((buf.subarray && STR_APPLY_UIA_OK) || (!buf.subarray && STR_APPLY_OK)) {
|
|
91
|
+
return String.fromCharCode.apply(null, utils.shrinkBuf(buf, len));
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
var result = '';
|
|
96
|
+
for (var i = 0; i < len; i++) {
|
|
97
|
+
result += String.fromCharCode(buf[i]);
|
|
98
|
+
}
|
|
99
|
+
return result;
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
// Convert byte array to binary string
|
|
104
|
+
exports.buf2binstring = function (buf) {
|
|
105
|
+
return buf2binstring(buf, buf.length);
|
|
106
|
+
};
|
|
107
|
+
|
|
108
|
+
|
|
109
|
+
// Convert binary string (typed, when possible)
|
|
110
|
+
exports.binstring2buf = function (str) {
|
|
111
|
+
var buf = new utils.Buf8(str.length);
|
|
112
|
+
for (var i = 0, len = buf.length; i < len; i++) {
|
|
113
|
+
buf[i] = str.charCodeAt(i);
|
|
114
|
+
}
|
|
115
|
+
return buf;
|
|
116
|
+
};
|
|
117
|
+
|
|
118
|
+
|
|
119
|
+
// convert array to string
|
|
120
|
+
exports.buf2string = function (buf, max) {
|
|
121
|
+
var i, out, c, c_len;
|
|
122
|
+
var len = max || buf.length;
|
|
123
|
+
|
|
124
|
+
// Reserve max possible length (2 words per char)
|
|
125
|
+
// NB: by unknown reasons, Array is significantly faster for
|
|
126
|
+
// String.fromCharCode.apply than Uint16Array.
|
|
127
|
+
var utf16buf = new Array(len * 2);
|
|
128
|
+
|
|
129
|
+
for (out = 0, i = 0; i < len;) {
|
|
130
|
+
c = buf[i++];
|
|
131
|
+
// quick process ascii
|
|
132
|
+
if (c < 0x80) { utf16buf[out++] = c; continue; }
|
|
133
|
+
|
|
134
|
+
c_len = _utf8len[c];
|
|
135
|
+
// skip 5 & 6 byte codes
|
|
136
|
+
if (c_len > 4) { utf16buf[out++] = 0xfffd; i += c_len - 1; continue; }
|
|
137
|
+
|
|
138
|
+
// apply mask on first byte
|
|
139
|
+
c &= c_len === 2 ? 0x1f : c_len === 3 ? 0x0f : 0x07;
|
|
140
|
+
// join the rest
|
|
141
|
+
while (c_len > 1 && i < len) {
|
|
142
|
+
c = (c << 6) | (buf[i++] & 0x3f);
|
|
143
|
+
c_len--;
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
// terminated by end of string?
|
|
147
|
+
if (c_len > 1) { utf16buf[out++] = 0xfffd; continue; }
|
|
148
|
+
|
|
149
|
+
if (c < 0x10000) {
|
|
150
|
+
utf16buf[out++] = c;
|
|
151
|
+
} else {
|
|
152
|
+
c -= 0x10000;
|
|
153
|
+
utf16buf[out++] = 0xd800 | ((c >> 10) & 0x3ff);
|
|
154
|
+
utf16buf[out++] = 0xdc00 | (c & 0x3ff);
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
return buf2binstring(utf16buf, out);
|
|
159
|
+
};
|
|
160
|
+
|
|
161
|
+
|
|
162
|
+
// Calculate max possible position in utf8 buffer,
|
|
163
|
+
// that will not break sequence. If that's not possible
|
|
164
|
+
// - (very small limits) return max size as is.
|
|
165
|
+
//
|
|
166
|
+
// buf[] - utf8 bytes array
|
|
167
|
+
// max - length limit (mandatory);
|
|
168
|
+
exports.utf8border = function (buf, max) {
|
|
169
|
+
var pos;
|
|
170
|
+
|
|
171
|
+
max = max || buf.length;
|
|
172
|
+
if (max > buf.length) { max = buf.length; }
|
|
173
|
+
|
|
174
|
+
// go back from last position, until start of sequence found
|
|
175
|
+
pos = max - 1;
|
|
176
|
+
while (pos >= 0 && (buf[pos] & 0xC0) === 0x80) { pos--; }
|
|
177
|
+
|
|
178
|
+
// Very small and broken sequence,
|
|
179
|
+
// return max, because we should return something anyway.
|
|
180
|
+
if (pos < 0) { return max; }
|
|
181
|
+
|
|
182
|
+
// If we came to start of buffer - that means buffer is too small,
|
|
183
|
+
// return max too.
|
|
184
|
+
if (pos === 0) { return max; }
|
|
185
|
+
|
|
186
|
+
return (pos + _utf8len[buf[pos]] > max) ? pos : max;
|
|
187
|
+
};
|