@backblaze-labs/b2-sdk 0.1.0 → 0.3.0
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 +151 -5
- package/README.md +163 -34
- package/dist/_virtual/_b2-sdk-version-json.cjs +4 -0
- package/dist/_virtual/_b2-sdk-version-json.js +4 -0
- package/dist/auth/account-info.d.cts +32 -0
- package/dist/auth/account-info.d.cts.map +1 -1
- package/dist/auth/account-info.d.ts +32 -0
- package/dist/auth/account-info.d.ts.map +1 -1
- package/dist/auth/file.cjs +408 -207
- package/dist/auth/file.cjs.map +1 -1
- package/dist/auth/file.d.cts +77 -3
- package/dist/auth/file.d.cts.map +1 -1
- package/dist/auth/file.d.ts +77 -3
- package/dist/auth/file.d.ts.map +1 -1
- package/dist/auth/file.js +407 -207
- package/dist/auth/file.js.map +1 -1
- package/dist/auth/in-memory.cjs +212 -183
- package/dist/auth/in-memory.cjs.map +1 -1
- package/dist/auth/in-memory.d.cts +8 -0
- package/dist/auth/in-memory.d.cts.map +1 -1
- package/dist/auth/in-memory.d.ts +8 -0
- package/dist/auth/in-memory.d.ts.map +1 -1
- package/dist/auth/in-memory.js +211 -182
- package/dist/auth/in-memory.js.map +1 -1
- package/dist/auth/index.cjs +7 -9
- package/dist/auth/index.d.cts +3 -2
- package/dist/auth/index.d.cts.map +1 -1
- package/dist/auth/index.d.ts +3 -2
- package/dist/auth/index.d.ts.map +1 -1
- package/dist/auth/index.js +2 -8
- package/dist/auth/realms.cjs +80 -7
- package/dist/auth/realms.cjs.map +1 -1
- package/dist/auth/realms.d.cts +27 -4
- package/dist/auth/realms.d.cts.map +1 -1
- package/dist/auth/realms.d.ts +27 -4
- package/dist/auth/realms.d.ts.map +1 -1
- package/dist/auth/realms.js +80 -9
- package/dist/auth/realms.js.map +1 -1
- package/dist/auth/upload-url-pool.cjs +55 -51
- package/dist/auth/upload-url-pool.cjs.map +1 -1
- package/dist/auth/upload-url-pool.js +55 -51
- package/dist/auth/upload-url-pool.js.map +1 -1
- package/dist/backup/client.cjs +206 -0
- package/dist/backup/client.cjs.map +1 -0
- package/dist/backup/client.d.cts +238 -0
- package/dist/backup/client.d.cts.map +1 -0
- package/dist/backup/client.d.ts +238 -0
- package/dist/backup/client.d.ts.map +1 -0
- package/dist/backup/client.js +206 -0
- package/dist/backup/client.js.map +1 -0
- package/dist/backup/index.cjs +15 -0
- package/dist/backup/index.d.cts +22 -0
- package/dist/backup/index.d.cts.map +1 -0
- package/dist/backup/index.d.ts +22 -0
- package/dist/backup/index.d.ts.map +1 -0
- package/dist/backup/index.js +7 -0
- package/dist/backup/raw.cjs +146 -0
- package/dist/backup/raw.cjs.map +1 -0
- package/dist/backup/raw.d.cts +122 -0
- package/dist/backup/raw.d.cts.map +1 -0
- package/dist/backup/raw.d.ts +122 -0
- package/dist/backup/raw.d.ts.map +1 -0
- package/dist/backup/raw.js +146 -0
- package/dist/backup/raw.js.map +1 -0
- package/dist/bucket.cjs +786 -787
- package/dist/bucket.cjs.map +1 -1
- package/dist/bucket.d.cts +35 -47
- package/dist/bucket.d.cts.map +1 -1
- package/dist/bucket.d.ts +35 -47
- package/dist/bucket.d.ts.map +1 -1
- package/dist/bucket.js +781 -782
- package/dist/bucket.js.map +1 -1
- package/dist/client.cjs +246 -228
- package/dist/client.cjs.map +1 -1
- package/dist/client.d.cts +25 -17
- package/dist/client.d.cts.map +1 -1
- package/dist/client.d.ts +25 -17
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +243 -225
- package/dist/client.js.map +1 -1
- package/dist/copy/large.cjs +116 -71
- package/dist/copy/large.cjs.map +1 -1
- package/dist/copy/large.d.cts +6 -0
- package/dist/copy/large.d.cts.map +1 -1
- package/dist/copy/large.d.ts +6 -0
- package/dist/copy/large.d.ts.map +1 -1
- package/dist/copy/large.js +114 -69
- package/dist/copy/large.js.map +1 -1
- package/dist/download/checksum.cjs +93 -0
- package/dist/download/checksum.cjs.map +1 -0
- package/dist/download/checksum.d.cts +40 -0
- package/dist/download/checksum.d.cts.map +1 -0
- package/dist/download/checksum.d.ts +40 -0
- package/dist/download/checksum.d.ts.map +1 -0
- package/dist/download/checksum.js +91 -0
- package/dist/download/checksum.js.map +1 -0
- package/dist/download/parallel.cjs +251 -118
- package/dist/download/parallel.cjs.map +1 -1
- package/dist/download/parallel.d.cts +13 -2
- package/dist/download/parallel.d.cts.map +1 -1
- package/dist/download/parallel.d.ts +13 -2
- package/dist/download/parallel.d.ts.map +1 -1
- package/dist/download/parallel.js +249 -116
- package/dist/download/parallel.js.map +1 -1
- package/dist/download/single.cjs +323 -97
- package/dist/download/single.cjs.map +1 -1
- package/dist/download/single.d.cts +6 -1
- package/dist/download/single.d.cts.map +1 -1
- package/dist/download/single.d.ts +6 -1
- package/dist/download/single.d.ts.map +1 -1
- package/dist/download/single.js +322 -99
- package/dist/download/single.js.map +1 -1
- package/dist/errors/index.cjs +869 -243
- package/dist/errors/index.cjs.map +1 -1
- package/dist/errors/index.d.cts +404 -82
- package/dist/errors/index.d.cts.map +1 -1
- package/dist/errors/index.d.ts +404 -82
- package/dist/errors/index.d.ts.map +1 -1
- package/dist/errors/index.js +835 -261
- package/dist/errors/index.js.map +1 -1
- package/dist/http/retry.cjs +45 -28
- package/dist/http/retry.cjs.map +1 -1
- package/dist/http/retry.d.cts +15 -2
- package/dist/http/retry.d.cts.map +1 -1
- package/dist/http/retry.d.ts +15 -2
- package/dist/http/retry.d.ts.map +1 -1
- package/dist/http/retry.js +46 -31
- package/dist/http/retry.js.map +1 -1
- package/dist/http/transport.cjs +476 -140
- package/dist/http/transport.cjs.map +1 -1
- package/dist/http/transport.d.cts +46 -5
- package/dist/http/transport.d.cts.map +1 -1
- package/dist/http/transport.d.ts +46 -5
- package/dist/http/transport.d.ts.map +1 -1
- package/dist/http/transport.js +474 -140
- package/dist/http/transport.js.map +1 -1
- package/dist/http/url-guard.cjs +154 -89
- package/dist/http/url-guard.cjs.map +1 -1
- package/dist/http/url-guard.d.cts +25 -3
- package/dist/http/url-guard.d.cts.map +1 -1
- package/dist/http/url-guard.d.ts +25 -3
- package/dist/http/url-guard.d.ts.map +1 -1
- package/dist/http/url-guard.js +152 -90
- package/dist/http/url-guard.js.map +1 -1
- package/dist/http/user-agent.cjs +84 -44
- package/dist/http/user-agent.cjs.map +1 -1
- package/dist/http/user-agent.js +84 -46
- package/dist/http/user-agent.js.map +1 -1
- package/dist/index.cjs +124 -77
- package/dist/index.d.cts +29 -21
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.ts +29 -21
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +18 -72
- package/dist/internal/b2-naming.cjs +66 -0
- package/dist/internal/b2-naming.cjs.map +1 -0
- package/dist/internal/b2-naming.d.cts +43 -0
- package/dist/internal/b2-naming.d.cts.map +1 -0
- package/dist/internal/b2-naming.d.ts +43 -0
- package/dist/internal/b2-naming.d.ts.map +1 -0
- package/dist/internal/b2-naming.js +60 -0
- package/dist/internal/b2-naming.js.map +1 -0
- package/dist/internal/upload-retry-options.cjs +21 -0
- package/dist/internal/upload-retry-options.cjs.map +1 -0
- package/dist/internal/upload-retry-options.d.cts +12 -0
- package/dist/internal/upload-retry-options.d.cts.map +1 -0
- package/dist/internal/upload-retry-options.d.ts +12 -0
- package/dist/internal/upload-retry-options.d.ts.map +1 -0
- package/dist/internal/upload-retry-options.js +21 -0
- package/dist/internal/upload-retry-options.js.map +1 -0
- package/dist/internal/url-redaction.cjs +31 -0
- package/dist/internal/url-redaction.cjs.map +1 -0
- package/dist/internal/url-redaction.d.cts +17 -0
- package/dist/internal/url-redaction.d.cts.map +1 -0
- package/dist/internal/url-redaction.d.ts +17 -0
- package/dist/internal/url-redaction.d.ts.map +1 -0
- package/dist/internal/url-redaction.js +31 -0
- package/dist/internal/url-redaction.js.map +1 -0
- package/dist/notifications/index.cjs +4 -6
- package/dist/notifications/index.d.cts +1 -1
- package/dist/notifications/index.d.cts.map +1 -1
- package/dist/notifications/index.d.ts +1 -1
- package/dist/notifications/index.d.ts.map +1 -1
- package/dist/notifications/index.js +1 -6
- package/dist/notifications/webhook.cjs +195 -85
- package/dist/notifications/webhook.cjs.map +1 -1
- package/dist/notifications/webhook.d.cts.map +1 -1
- package/dist/notifications/webhook.d.ts.map +1 -1
- package/dist/notifications/webhook.js +195 -87
- package/dist/notifications/webhook.js.map +1 -1
- package/dist/object.cjs +253 -210
- package/dist/object.cjs.map +1 -1
- package/dist/object.d.cts +13 -57
- package/dist/object.d.cts.map +1 -1
- package/dist/object.d.ts +13 -57
- package/dist/object.d.ts.map +1 -1
- package/dist/object.js +249 -206
- package/dist/object.js.map +1 -1
- package/dist/partner/account-info.d.cts +43 -0
- package/dist/partner/account-info.d.cts.map +1 -0
- package/dist/partner/account-info.d.ts +43 -0
- package/dist/partner/account-info.d.ts.map +1 -0
- package/dist/partner/auth-clone.cjs +64 -0
- package/dist/partner/auth-clone.cjs.map +1 -0
- package/dist/partner/auth-clone.d.cts +27 -0
- package/dist/partner/auth-clone.d.cts.map +1 -0
- package/dist/partner/auth-clone.d.ts +27 -0
- package/dist/partner/auth-clone.d.ts.map +1 -0
- package/dist/partner/auth-clone.js +63 -0
- package/dist/partner/auth-clone.js.map +1 -0
- package/dist/partner/auth-core.cjs +175 -0
- package/dist/partner/auth-core.cjs.map +1 -0
- package/dist/partner/auth-core.d.cts +111 -0
- package/dist/partner/auth-core.d.cts.map +1 -0
- package/dist/partner/auth-core.d.ts +111 -0
- package/dist/partner/auth-core.d.ts.map +1 -0
- package/dist/partner/auth-core.js +175 -0
- package/dist/partner/auth-core.js.map +1 -0
- package/dist/partner/auth-shape.cjs +36 -0
- package/dist/partner/auth-shape.cjs.map +1 -0
- package/dist/partner/auth-shape.d.cts +12 -0
- package/dist/partner/auth-shape.d.cts.map +1 -0
- package/dist/partner/auth-shape.d.ts +12 -0
- package/dist/partner/auth-shape.d.ts.map +1 -0
- package/dist/partner/auth-shape.js +36 -0
- package/dist/partner/auth-shape.js.map +1 -0
- package/dist/partner/client.cjs +255 -0
- package/dist/partner/client.cjs.map +1 -0
- package/dist/partner/client.d.cts +335 -0
- package/dist/partner/client.d.cts.map +1 -0
- package/dist/partner/client.d.ts +335 -0
- package/dist/partner/client.d.ts.map +1 -0
- package/dist/partner/client.js +255 -0
- package/dist/partner/client.js.map +1 -0
- package/dist/partner/endpoint-url.cjs +108 -0
- package/dist/partner/endpoint-url.cjs.map +1 -0
- package/dist/partner/endpoint-url.d.cts +72 -0
- package/dist/partner/endpoint-url.d.cts.map +1 -0
- package/dist/partner/endpoint-url.d.ts +72 -0
- package/dist/partner/endpoint-url.d.ts.map +1 -0
- package/dist/partner/endpoint-url.js +105 -0
- package/dist/partner/endpoint-url.js.map +1 -0
- package/dist/partner/in-memory.cjs +135 -0
- package/dist/partner/in-memory.cjs.map +1 -0
- package/dist/partner/in-memory.d.cts +99 -0
- package/dist/partner/in-memory.d.cts.map +1 -0
- package/dist/partner/in-memory.d.ts +99 -0
- package/dist/partner/in-memory.d.ts.map +1 -0
- package/dist/partner/in-memory.js +135 -0
- package/dist/partner/in-memory.js.map +1 -0
- package/dist/partner/index.cjs +18 -0
- package/dist/partner/index.d.cts +23 -0
- package/dist/partner/index.d.cts.map +1 -0
- package/dist/partner/index.d.ts +23 -0
- package/dist/partner/index.d.ts.map +1 -0
- package/dist/partner/index.js +7 -0
- package/dist/partner/raw.cjs +392 -0
- package/dist/partner/raw.cjs.map +1 -0
- package/dist/partner/raw.d.cts +223 -0
- package/dist/partner/raw.d.cts.map +1 -0
- package/dist/partner/raw.d.ts +223 -0
- package/dist/partner/raw.d.ts.map +1 -0
- package/dist/partner/raw.js +390 -0
- package/dist/partner/raw.js.map +1 -0
- package/dist/partner/redaction-placeholders.cjs +10 -0
- package/dist/partner/redaction-placeholders.cjs.map +1 -0
- package/dist/partner/redaction-placeholders.d.cts +5 -0
- package/dist/partner/redaction-placeholders.d.cts.map +1 -0
- package/dist/partner/redaction-placeholders.d.ts +5 -0
- package/dist/partner/redaction-placeholders.d.ts.map +1 -0
- package/dist/partner/redaction-placeholders.js +9 -0
- package/dist/partner/redaction-placeholders.js.map +1 -0
- package/dist/partner/redaction.cjs +267 -0
- package/dist/partner/redaction.cjs.map +1 -0
- package/dist/partner/redaction.d.cts +124 -0
- package/dist/partner/redaction.d.cts.map +1 -0
- package/dist/partner/redaction.d.ts +124 -0
- package/dist/partner/redaction.d.ts.map +1 -0
- package/dist/partner/redaction.js +257 -0
- package/dist/partner/redaction.js.map +1 -0
- package/dist/raw/encoding.cjs +74 -35
- package/dist/raw/encoding.cjs.map +1 -1
- package/dist/raw/encoding.js +74 -38
- package/dist/raw/encoding.js.map +1 -1
- package/dist/raw/index.cjs +740 -587
- package/dist/raw/index.cjs.map +1 -1
- package/dist/raw/index.d.cts +126 -19
- package/dist/raw/index.d.cts.map +1 -1
- package/dist/raw/index.d.ts +126 -19
- package/dist/raw/index.d.ts.map +1 -1
- package/dist/raw/index.js +736 -589
- package/dist/raw/index.js.map +1 -1
- package/dist/raw/url.cjs +111 -0
- package/dist/raw/url.cjs.map +1 -0
- package/dist/raw/url.d.cts +41 -0
- package/dist/raw/url.d.cts.map +1 -0
- package/dist/raw/url.d.ts +41 -0
- package/dist/raw/url.d.ts.map +1 -0
- package/dist/raw/url.js +110 -0
- package/dist/raw/url.js.map +1 -0
- package/dist/s3/index.cjs +355 -18
- package/dist/s3/index.cjs.map +1 -1
- package/dist/s3/index.d.cts +233 -5
- package/dist/s3/index.d.cts.map +1 -1
- package/dist/s3/index.d.ts +233 -5
- package/dist/s3/index.d.ts.map +1 -1
- package/dist/s3/index.js +351 -22
- package/dist/s3/index.js.map +1 -1
- package/dist/s3/sigv4.cjs +154 -0
- package/dist/s3/sigv4.cjs.map +1 -0
- package/dist/s3/sigv4.d.cts +43 -0
- package/dist/s3/sigv4.d.cts.map +1 -0
- package/dist/s3/sigv4.d.ts +43 -0
- package/dist/s3/sigv4.d.ts.map +1 -0
- package/dist/s3/sigv4.js +153 -0
- package/dist/s3/sigv4.js.map +1 -0
- package/dist/s3/validation.cjs +69 -0
- package/dist/s3/validation.cjs.map +1 -0
- package/dist/s3/validation.d.cts +43 -0
- package/dist/s3/validation.d.cts.map +1 -0
- package/dist/s3/validation.d.ts +43 -0
- package/dist/s3/validation.d.ts.map +1 -0
- package/dist/s3/validation.js +66 -0
- package/dist/s3/validation.js.map +1 -0
- package/dist/simulator/capabilities.cjs +63 -48
- package/dist/simulator/capabilities.cjs.map +1 -1
- package/dist/simulator/capabilities.js +63 -49
- package/dist/simulator/capabilities.js.map +1 -1
- package/dist/simulator/index.cjs +3114 -1547
- package/dist/simulator/index.cjs.map +1 -1
- package/dist/simulator/index.d.cts +186 -20
- package/dist/simulator/index.d.cts.map +1 -1
- package/dist/simulator/index.d.ts +186 -20
- package/dist/simulator/index.d.ts.map +1 -1
- package/dist/simulator/index.js +3098 -1545
- package/dist/simulator/index.js.map +1 -1
- package/dist/simulator/partner.cjs +719 -0
- package/dist/simulator/partner.cjs.map +1 -0
- package/dist/simulator/partner.d.cts +183 -0
- package/dist/simulator/partner.d.cts.map +1 -0
- package/dist/simulator/partner.d.ts +183 -0
- package/dist/simulator/partner.d.ts.map +1 -0
- package/dist/simulator/partner.js +718 -0
- package/dist/simulator/partner.js.map +1 -0
- package/dist/simulator/validation.cjs +772 -157
- package/dist/simulator/validation.cjs.map +1 -1
- package/dist/simulator/validation.d.cts +120 -21
- package/dist/simulator/validation.d.cts.map +1 -1
- package/dist/simulator/validation.d.ts +120 -21
- package/dist/simulator/validation.d.ts.map +1 -1
- package/dist/simulator/validation.js +755 -167
- package/dist/simulator/validation.js.map +1 -1
- package/dist/streams/collect.cjs +74 -24
- package/dist/streams/collect.cjs.map +1 -1
- package/dist/streams/collect.d.cts +14 -1
- package/dist/streams/collect.d.cts.map +1 -1
- package/dist/streams/collect.d.ts +14 -1
- package/dist/streams/collect.d.ts.map +1 -1
- package/dist/streams/collect.js +74 -25
- package/dist/streams/collect.js.map +1 -1
- package/dist/streams/file-source.cjs +287 -0
- package/dist/streams/file-source.cjs.map +1 -0
- package/dist/streams/file-source.d.cts +96 -0
- package/dist/streams/file-source.d.cts.map +1 -0
- package/dist/streams/file-source.d.ts +96 -0
- package/dist/streams/file-source.d.ts.map +1 -0
- package/dist/streams/file-source.js +286 -0
- package/dist/streams/file-source.js.map +1 -0
- package/dist/streams/hash.cjs +207 -115
- package/dist/streams/hash.cjs.map +1 -1
- package/dist/streams/hash.d.cts +5 -4
- package/dist/streams/hash.d.cts.map +1 -1
- package/dist/streams/hash.d.ts +5 -4
- package/dist/streams/hash.d.ts.map +1 -1
- package/dist/streams/hash.js +208 -95
- package/dist/streams/hash.js.map +1 -1
- package/dist/streams/index.cjs +12 -12
- package/dist/streams/index.d.cts +3 -3
- package/dist/streams/index.d.cts.map +1 -1
- package/dist/streams/index.d.ts +3 -3
- package/dist/streams/index.d.ts.map +1 -1
- package/dist/streams/index.js +3 -11
- package/dist/streams/progress.cjs +60 -46
- package/dist/streams/progress.cjs.map +1 -1
- package/dist/streams/progress.js +60 -46
- package/dist/streams/progress.js.map +1 -1
- package/dist/streams/source.cjs +317 -146
- package/dist/streams/source.cjs.map +1 -1
- package/dist/streams/source.d.cts +56 -18
- package/dist/streams/source.d.cts.map +1 -1
- package/dist/streams/source.d.ts +56 -18
- package/dist/streams/source.d.ts.map +1 -1
- package/dist/streams/source.js +313 -149
- package/dist/streams/source.js.map +1 -1
- package/dist/sync/actions/index.cjs +236 -184
- package/dist/sync/actions/index.cjs.map +1 -1
- package/dist/sync/actions/index.d.cts +29 -21
- package/dist/sync/actions/index.d.cts.map +1 -1
- package/dist/sync/actions/index.d.ts +29 -21
- package/dist/sync/actions/index.d.ts.map +1 -1
- package/dist/sync/actions/index.js +236 -190
- package/dist/sync/actions/index.js.map +1 -1
- package/dist/sync/b2-sha1-reader.cjs +152 -0
- package/dist/sync/b2-sha1-reader.cjs.map +1 -0
- package/dist/sync/b2-sha1-reader.d.cts +58 -0
- package/dist/sync/b2-sha1-reader.d.cts.map +1 -0
- package/dist/sync/b2-sha1-reader.d.ts +58 -0
- package/dist/sync/b2-sha1-reader.d.ts.map +1 -0
- package/dist/sync/b2-sha1-reader.js +149 -0
- package/dist/sync/b2-sha1-reader.js.map +1 -0
- package/dist/sync/download-staging.cjs +266 -0
- package/dist/sync/download-staging.cjs.map +1 -0
- package/dist/sync/download-staging.d.cts +55 -0
- package/dist/sync/download-staging.d.cts.map +1 -0
- package/dist/sync/download-staging.d.ts +55 -0
- package/dist/sync/download-staging.d.ts.map +1 -0
- package/dist/sync/download-staging.js +260 -0
- package/dist/sync/download-staging.js.map +1 -0
- package/dist/sync/filesystem-errors.cjs +32 -0
- package/dist/sync/filesystem-errors.cjs.map +1 -0
- package/dist/sync/filesystem-errors.d.cts +8 -0
- package/dist/sync/filesystem-errors.d.cts.map +1 -0
- package/dist/sync/filesystem-errors.d.ts +8 -0
- package/dist/sync/filesystem-errors.d.ts.map +1 -0
- package/dist/sync/filesystem-errors.js +32 -0
- package/dist/sync/filesystem-errors.js.map +1 -0
- package/dist/sync/filters.cjs +217 -0
- package/dist/sync/filters.cjs.map +1 -0
- package/dist/sync/filters.d.cts +51 -0
- package/dist/sync/filters.d.cts.map +1 -0
- package/dist/sync/filters.d.ts +51 -0
- package/dist/sync/filters.d.ts.map +1 -0
- package/dist/sync/filters.js +213 -0
- package/dist/sync/filters.js.map +1 -0
- package/dist/sync/index.cjs +39 -22
- package/dist/sync/index.d.cts +14 -9
- package/dist/sync/index.d.cts.map +1 -1
- package/dist/sync/index.d.ts +14 -9
- package/dist/sync/index.d.ts.map +1 -1
- package/dist/sync/index.js +9 -20
- package/dist/sync/local-file-identity.cjs +61 -0
- package/dist/sync/local-file-identity.cjs.map +1 -0
- package/dist/sync/local-file-identity.d.cts +37 -0
- package/dist/sync/local-file-identity.d.cts.map +1 -0
- package/dist/sync/local-file-identity.d.ts +37 -0
- package/dist/sync/local-file-identity.d.ts.map +1 -0
- package/dist/sync/local-file-identity.js +60 -0
- package/dist/sync/local-file-identity.js.map +1 -0
- package/dist/sync/local-file-io.cjs +369 -0
- package/dist/sync/local-file-io.cjs.map +1 -0
- package/dist/sync/local-file-io.d.cts +76 -0
- package/dist/sync/local-file-io.d.cts.map +1 -0
- package/dist/sync/local-file-io.d.ts +76 -0
- package/dist/sync/local-file-io.d.ts.map +1 -0
- package/dist/sync/local-file-io.js +365 -0
- package/dist/sync/local-file-io.js.map +1 -0
- package/dist/sync/local-filesystem-root.cjs +27 -0
- package/dist/sync/local-filesystem-root.cjs.map +1 -0
- package/dist/sync/local-filesystem-root.d.cts +18 -0
- package/dist/sync/local-filesystem-root.d.cts.map +1 -0
- package/dist/sync/local-filesystem-root.d.ts +18 -0
- package/dist/sync/local-filesystem-root.d.ts.map +1 -0
- package/dist/sync/local-filesystem-root.js +26 -0
- package/dist/sync/local-filesystem-root.js.map +1 -0
- package/dist/sync/local-sha1.cjs +110 -0
- package/dist/sync/local-sha1.cjs.map +1 -0
- package/dist/sync/local-sha1.d.cts +31 -0
- package/dist/sync/local-sha1.d.cts.map +1 -0
- package/dist/sync/local-sha1.d.ts +31 -0
- package/dist/sync/local-sha1.d.ts.map +1 -0
- package/dist/sync/local-sha1.js +109 -0
- package/dist/sync/local-sha1.js.map +1 -0
- package/dist/sync/pairing.cjs +118 -29
- package/dist/sync/pairing.cjs.map +1 -1
- package/dist/sync/pairing.d.cts +7 -2
- package/dist/sync/pairing.d.cts.map +1 -1
- package/dist/sync/pairing.d.ts +7 -2
- package/dist/sync/pairing.d.ts.map +1 -1
- package/dist/sync/pairing.js +120 -31
- package/dist/sync/pairing.js.map +1 -1
- package/dist/sync/path-order.cjs +30 -0
- package/dist/sync/path-order.cjs.map +1 -0
- package/dist/sync/path-order.d.cts +28 -0
- package/dist/sync/path-order.d.cts.map +1 -0
- package/dist/sync/path-order.d.ts +28 -0
- package/dist/sync/path-order.d.ts.map +1 -0
- package/dist/sync/path-order.js +29 -0
- package/dist/sync/path-order.js.map +1 -0
- package/dist/sync/path-safety.cjs +111 -0
- package/dist/sync/path-safety.cjs.map +1 -0
- package/dist/sync/path-safety.d.cts +78 -0
- package/dist/sync/path-safety.d.cts.map +1 -0
- package/dist/sync/path-safety.d.ts +78 -0
- package/dist/sync/path-safety.d.ts.map +1 -0
- package/dist/sync/path-safety.js +105 -0
- package/dist/sync/path-safety.js.map +1 -0
- package/dist/sync/paths.d.cts +19 -0
- package/dist/sync/paths.d.cts.map +1 -0
- package/dist/sync/paths.d.ts +19 -0
- package/dist/sync/paths.d.ts.map +1 -0
- package/dist/sync/policies/compare.cjs +391 -11
- package/dist/sync/policies/compare.cjs.map +1 -1
- package/dist/sync/policies/compare.d.cts +100 -2
- package/dist/sync/policies/compare.d.cts.map +1 -1
- package/dist/sync/policies/compare.d.ts +100 -2
- package/dist/sync/policies/compare.d.ts.map +1 -1
- package/dist/sync/policies/compare.js +389 -13
- package/dist/sync/policies/compare.js.map +1 -1
- package/dist/sync/policies/index.cjs +70 -65
- package/dist/sync/policies/index.cjs.map +1 -1
- package/dist/sync/policies/index.d.cts +35 -6
- package/dist/sync/policies/index.d.cts.map +1 -1
- package/dist/sync/policies/index.d.ts +35 -6
- package/dist/sync/policies/index.d.ts.map +1 -1
- package/dist/sync/policies/index.js +70 -65
- package/dist/sync/policies/index.js.map +1 -1
- package/dist/sync/prefix.cjs +96 -0
- package/dist/sync/prefix.cjs.map +1 -0
- package/dist/sync/prefix.d.cts +55 -0
- package/dist/sync/prefix.d.cts.map +1 -0
- package/dist/sync/prefix.d.ts +55 -0
- package/dist/sync/prefix.d.ts.map +1 -0
- package/dist/sync/prefix.js +92 -0
- package/dist/sync/prefix.js.map +1 -0
- package/dist/sync/regexp-safety.cjs +192 -0
- package/dist/sync/regexp-safety.cjs.map +1 -0
- package/dist/sync/regexp-safety.d.cts +29 -0
- package/dist/sync/regexp-safety.d.cts.map +1 -0
- package/dist/sync/regexp-safety.d.ts +29 -0
- package/dist/sync/regexp-safety.d.ts.map +1 -0
- package/dist/sync/regexp-safety.js +190 -0
- package/dist/sync/regexp-safety.js.map +1 -0
- package/dist/sync/scan-events.cjs +33 -0
- package/dist/sync/scan-events.cjs.map +1 -0
- package/dist/sync/scan-events.d.cts +17 -0
- package/dist/sync/scan-events.d.cts.map +1 -0
- package/dist/sync/scan-events.d.ts +17 -0
- package/dist/sync/scan-events.d.ts.map +1 -0
- package/dist/sync/scan-events.js +32 -0
- package/dist/sync/scan-events.js.map +1 -0
- package/dist/sync/scan-limit.cjs +33 -0
- package/dist/sync/scan-limit.cjs.map +1 -0
- package/dist/sync/scan-limit.d.cts +21 -0
- package/dist/sync/scan-limit.d.cts.map +1 -0
- package/dist/sync/scan-limit.d.ts +21 -0
- package/dist/sync/scan-limit.d.ts.map +1 -0
- package/dist/sync/scan-limit.js +31 -0
- package/dist/sync/scan-limit.js.map +1 -0
- package/dist/sync/scanners/b2.cjs +239 -55
- package/dist/sync/scanners/b2.cjs.map +1 -1
- package/dist/sync/scanners/b2.d.cts +26 -7
- package/dist/sync/scanners/b2.d.cts.map +1 -1
- package/dist/sync/scanners/b2.d.ts +26 -7
- package/dist/sync/scanners/b2.d.ts.map +1 -1
- package/dist/sync/scanners/b2.js +239 -55
- package/dist/sync/scanners/b2.js.map +1 -1
- package/dist/sync/scanners/local.cjs +215 -56
- package/dist/sync/scanners/local.cjs.map +1 -1
- package/dist/sync/scanners/local.d.cts +22 -7
- package/dist/sync/scanners/local.d.cts.map +1 -1
- package/dist/sync/scanners/local.d.ts +22 -7
- package/dist/sync/scanners/local.d.ts.map +1 -1
- package/dist/sync/scanners/local.js +216 -57
- package/dist/sync/scanners/local.js.map +1 -1
- package/dist/sync/sha1-metadata.cjs +94 -0
- package/dist/sync/sha1-metadata.cjs.map +1 -0
- package/dist/sync/sha1-metadata.d.cts +82 -0
- package/dist/sync/sha1-metadata.d.cts.map +1 -0
- package/dist/sync/sha1-metadata.d.ts +82 -0
- package/dist/sync/sha1-metadata.d.ts.map +1 -0
- package/dist/sync/sha1-metadata.js +89 -0
- package/dist/sync/sha1-metadata.js.map +1 -0
- package/dist/sync/sha1-options.cjs +23 -0
- package/dist/sync/sha1-options.cjs.map +1 -0
- package/dist/sync/sha1-options.d.cts +14 -0
- package/dist/sync/sha1-options.d.cts.map +1 -0
- package/dist/sync/sha1-options.d.ts +14 -0
- package/dist/sync/sha1-options.d.ts.map +1 -0
- package/dist/sync/sha1-options.js +21 -0
- package/dist/sync/sha1-options.js.map +1 -0
- package/dist/sync/synchronizer.cjs +783 -197
- package/dist/sync/synchronizer.cjs.map +1 -1
- package/dist/sync/synchronizer.d.cts +47 -1
- package/dist/sync/synchronizer.d.cts.map +1 -1
- package/dist/sync/synchronizer.d.ts +47 -1
- package/dist/sync/synchronizer.d.ts.map +1 -1
- package/dist/sync/synchronizer.js +780 -173
- package/dist/sync/synchronizer.js.map +1 -1
- package/dist/sync/types.d.cts +208 -16
- package/dist/sync/types.d.cts.map +1 -1
- package/dist/sync/types.d.ts +208 -16
- package/dist/sync/types.d.ts.map +1 -1
- package/dist/types/auth.cjs +80 -56
- package/dist/types/auth.cjs.map +1 -1
- package/dist/types/auth.d.cts +71 -9
- package/dist/types/auth.d.cts.map +1 -1
- package/dist/types/auth.d.ts +71 -9
- package/dist/types/auth.d.ts.map +1 -1
- package/dist/types/auth.js +81 -57
- package/dist/types/auth.js.map +1 -1
- package/dist/types/backup.d.cts +80 -0
- package/dist/types/backup.d.cts.map +1 -0
- package/dist/types/backup.d.ts +80 -0
- package/dist/types/backup.d.ts.map +1 -0
- package/dist/types/bucket.cjs +74 -38
- package/dist/types/bucket.cjs.map +1 -1
- package/dist/types/bucket.d.cts +4 -2
- package/dist/types/bucket.d.cts.map +1 -1
- package/dist/types/bucket.d.ts +4 -2
- package/dist/types/bucket.d.ts.map +1 -1
- package/dist/types/bucket.js +75 -41
- package/dist/types/bucket.js.map +1 -1
- package/dist/types/download.cjs +62 -0
- package/dist/types/download.cjs.map +1 -0
- package/dist/types/download.d.cts +98 -0
- package/dist/types/download.d.cts.map +1 -1
- package/dist/types/download.d.ts +98 -0
- package/dist/types/download.d.ts.map +1 -1
- package/dist/types/download.js +61 -0
- package/dist/types/download.js.map +1 -0
- package/dist/types/encryption.cjs +194 -328
- package/dist/types/encryption.cjs.map +1 -1
- package/dist/types/encryption.d.cts +48 -0
- package/dist/types/encryption.d.cts.map +1 -1
- package/dist/types/encryption.d.ts +48 -0
- package/dist/types/encryption.d.ts.map +1 -1
- package/dist/types/encryption.js +192 -311
- package/dist/types/encryption.js.map +1 -1
- package/dist/types/errors.cjs +56 -0
- package/dist/types/errors.cjs.map +1 -0
- package/dist/types/errors.d.cts +13 -4
- package/dist/types/errors.d.cts.map +1 -1
- package/dist/types/errors.d.ts +13 -4
- package/dist/types/errors.d.ts.map +1 -1
- package/dist/types/errors.js +56 -0
- package/dist/types/errors.js.map +1 -0
- package/dist/types/file.cjs +36 -19
- package/dist/types/file.cjs.map +1 -1
- package/dist/types/file.d.cts +17 -4
- package/dist/types/file.d.cts.map +1 -1
- package/dist/types/file.d.ts +17 -4
- package/dist/types/file.d.ts.map +1 -1
- package/dist/types/file.js +37 -21
- package/dist/types/file.js.map +1 -1
- package/dist/types/ids.cjs +83 -9
- package/dist/types/ids.cjs.map +1 -1
- package/dist/types/ids.d.cts +32 -0
- package/dist/types/ids.d.cts.map +1 -1
- package/dist/types/ids.d.ts +32 -0
- package/dist/types/ids.d.ts.map +1 -1
- package/dist/types/ids.js +82 -16
- package/dist/types/ids.js.map +1 -1
- package/dist/types/index.d.cts +18 -13
- package/dist/types/index.d.cts.map +1 -1
- package/dist/types/index.d.ts +18 -13
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/key.d.cts +44 -8
- package/dist/types/key.d.cts.map +1 -1
- package/dist/types/key.d.ts +44 -8
- package/dist/types/key.d.ts.map +1 -1
- package/dist/types/lock.cjs +33 -13
- package/dist/types/lock.cjs.map +1 -1
- package/dist/types/lock.d.cts +14 -0
- package/dist/types/lock.d.cts.map +1 -1
- package/dist/types/lock.d.ts +14 -0
- package/dist/types/lock.d.ts.map +1 -1
- package/dist/types/lock.js +34 -15
- package/dist/types/lock.js.map +1 -1
- package/dist/types/notifications.cjs +44 -22
- package/dist/types/notifications.cjs.map +1 -1
- package/dist/types/notifications.d.cts +5 -3
- package/dist/types/notifications.d.cts.map +1 -1
- package/dist/types/notifications.d.ts +5 -3
- package/dist/types/notifications.d.ts.map +1 -1
- package/dist/types/notifications.js +45 -23
- package/dist/types/notifications.js.map +1 -1
- package/dist/types/partner.cjs +32 -0
- package/dist/types/partner.cjs.map +1 -0
- package/dist/types/partner.d.cts +394 -0
- package/dist/types/partner.d.cts.map +1 -0
- package/dist/types/partner.d.ts +394 -0
- package/dist/types/partner.d.ts.map +1 -0
- package/dist/types/partner.js +29 -0
- package/dist/types/partner.js.map +1 -0
- package/dist/types/upload.d.cts +53 -6
- package/dist/types/upload.d.cts.map +1 -1
- package/dist/types/upload.d.ts +53 -6
- package/dist/types/upload.d.ts.map +1 -1
- package/dist/upload/abort-scope.cjs +46 -0
- package/dist/upload/abort-scope.cjs.map +1 -0
- package/dist/upload/abort-scope.d.cts +26 -0
- package/dist/upload/abort-scope.d.cts.map +1 -0
- package/dist/upload/abort-scope.d.ts +26 -0
- package/dist/upload/abort-scope.d.ts.map +1 -0
- package/dist/upload/abort-scope.js +45 -0
- package/dist/upload/abort-scope.js.map +1 -0
- package/dist/upload/cancel.cjs +183 -8
- package/dist/upload/cancel.cjs.map +1 -1
- package/dist/upload/cancel.d.cts +110 -2
- package/dist/upload/cancel.d.cts.map +1 -1
- package/dist/upload/cancel.d.ts +110 -2
- package/dist/upload/cancel.d.ts.map +1 -1
- package/dist/upload/cancel.js +178 -9
- package/dist/upload/cancel.js.map +1 -1
- package/dist/upload/concurrency.cjs +79 -52
- package/dist/upload/concurrency.cjs.map +1 -1
- package/dist/upload/concurrency.js +79 -53
- package/dist/upload/concurrency.js.map +1 -1
- package/dist/upload/finish.cjs +54 -0
- package/dist/upload/finish.cjs.map +1 -0
- package/dist/upload/finish.d.cts +26 -0
- package/dist/upload/finish.d.cts.map +1 -0
- package/dist/upload/finish.d.ts +26 -0
- package/dist/upload/finish.d.ts.map +1 -0
- package/dist/upload/finish.js +54 -0
- package/dist/upload/finish.js.map +1 -0
- package/dist/upload/large.cjs +305 -218
- package/dist/upload/large.cjs.map +1 -1
- package/dist/upload/large.d.cts +90 -9
- package/dist/upload/large.d.cts.map +1 -1
- package/dist/upload/large.d.ts +90 -9
- package/dist/upload/large.d.ts.map +1 -1
- package/dist/upload/large.js +305 -218
- package/dist/upload/large.js.map +1 -1
- package/dist/upload/options.cjs +28 -0
- package/dist/upload/options.cjs.map +1 -0
- package/dist/upload/options.d.cts +116 -0
- package/dist/upload/options.d.cts.map +1 -0
- package/dist/upload/options.d.ts +116 -0
- package/dist/upload/options.d.ts.map +1 -0
- package/dist/upload/options.js +27 -0
- package/dist/upload/options.js.map +1 -0
- package/dist/upload/resume.cjs +334 -33
- package/dist/upload/resume.cjs.map +1 -1
- package/dist/upload/resume.d.cts +84 -12
- package/dist/upload/resume.d.cts.map +1 -1
- package/dist/upload/resume.d.ts +84 -12
- package/dist/upload/resume.d.ts.map +1 -1
- package/dist/upload/resume.js +331 -33
- package/dist/upload/resume.js.map +1 -1
- package/dist/upload/retry.cjs +191 -0
- package/dist/upload/retry.cjs.map +1 -0
- package/dist/upload/retry.d.cts +127 -0
- package/dist/upload/retry.d.cts.map +1 -0
- package/dist/upload/retry.d.ts +127 -0
- package/dist/upload/retry.d.ts.map +1 -0
- package/dist/upload/retry.js +187 -0
- package/dist/upload/retry.js.map +1 -0
- package/dist/upload/single.cjs +69 -44
- package/dist/upload/single.cjs.map +1 -1
- package/dist/upload/single.d.cts +8 -1
- package/dist/upload/single.d.cts.map +1 -1
- package/dist/upload/single.d.ts +8 -1
- package/dist/upload/single.d.ts.map +1 -1
- package/dist/upload/single.js +69 -44
- package/dist/upload/single.js.map +1 -1
- package/dist/upload/stream.cjs +319 -193
- package/dist/upload/stream.cjs.map +1 -1
- package/dist/upload/stream.d.cts +9 -1
- package/dist/upload/stream.d.cts.map +1 -1
- package/dist/upload/stream.d.ts +9 -1
- package/dist/upload/stream.d.ts.map +1 -1
- package/dist/upload/stream.js +318 -192
- package/dist/upload/stream.js.map +1 -1
- package/dist/util/abort.cjs +114 -0
- package/dist/util/abort.cjs.map +1 -0
- package/dist/util/abort.d.cts +65 -0
- package/dist/util/abort.d.cts.map +1 -0
- package/dist/util/abort.d.ts +65 -0
- package/dist/util/abort.d.ts.map +1 -0
- package/dist/util/abort.js +109 -0
- package/dist/util/abort.js.map +1 -0
- package/dist/util/best-effort.cjs +42 -8
- package/dist/util/best-effort.cjs.map +1 -1
- package/dist/util/best-effort.d.cts +2 -1
- package/dist/util/best-effort.d.cts.map +1 -1
- package/dist/util/best-effort.d.ts +2 -1
- package/dist/util/best-effort.d.ts.map +1 -1
- package/dist/util/best-effort.js +43 -9
- package/dist/util/best-effort.js.map +1 -1
- package/dist/util/bytes.cjs +23 -0
- package/dist/util/bytes.cjs.map +1 -0
- package/dist/util/bytes.d.cts +15 -0
- package/dist/util/bytes.d.cts.map +1 -0
- package/dist/util/bytes.d.ts +15 -0
- package/dist/util/bytes.d.ts.map +1 -0
- package/dist/util/bytes.js +23 -0
- package/dist/util/bytes.js.map +1 -0
- package/dist/util/crypto.cjs +68 -0
- package/dist/util/crypto.cjs.map +1 -0
- package/dist/util/crypto.d.cts +26 -0
- package/dist/util/crypto.d.cts.map +1 -0
- package/dist/util/crypto.d.ts +26 -0
- package/dist/util/crypto.d.ts.map +1 -0
- package/dist/util/crypto.js +66 -0
- package/dist/util/crypto.js.map +1 -0
- package/dist/util/defaults.cjs +28 -9
- package/dist/util/defaults.cjs.map +1 -1
- package/dist/util/defaults.d.cts +2 -0
- package/dist/util/defaults.d.cts.map +1 -1
- package/dist/util/defaults.d.ts +2 -0
- package/dist/util/defaults.d.ts.map +1 -1
- package/dist/util/defaults.js +28 -11
- package/dist/util/defaults.js.map +1 -1
- package/dist/util/error-reason.cjs +41 -0
- package/dist/util/error-reason.cjs.map +1 -0
- package/dist/util/error-reason.d.cts +9 -0
- package/dist/util/error-reason.d.cts.map +1 -0
- package/dist/util/error-reason.d.ts +9 -0
- package/dist/util/error-reason.d.ts.map +1 -0
- package/dist/util/error-reason.js +41 -0
- package/dist/util/error-reason.js.map +1 -0
- package/dist/util/http.cjs +23 -0
- package/dist/util/http.cjs.map +1 -0
- package/dist/util/http.d.cts +13 -0
- package/dist/util/http.d.cts.map +1 -0
- package/dist/util/http.d.ts +13 -0
- package/dist/util/http.d.ts.map +1 -0
- package/dist/util/http.js +23 -0
- package/dist/util/http.js.map +1 -0
- package/dist/util/md5.cjs +211 -0
- package/dist/util/md5.cjs.map +1 -0
- package/dist/util/md5.d.cts +43 -0
- package/dist/util/md5.d.cts.map +1 -0
- package/dist/util/md5.d.ts +43 -0
- package/dist/util/md5.d.ts.map +1 -0
- package/dist/util/md5.js +209 -0
- package/dist/util/md5.js.map +1 -0
- package/dist/util/normalize.cjs +66 -7
- package/dist/util/normalize.cjs.map +1 -1
- package/dist/util/normalize.d.cts +7 -7
- package/dist/util/normalize.d.cts.map +1 -1
- package/dist/util/normalize.d.ts +7 -7
- package/dist/util/normalize.d.ts.map +1 -1
- package/dist/util/normalize.js +67 -10
- package/dist/util/normalize.js.map +1 -1
- package/dist/util/paginator.cjs +69 -14
- package/dist/util/paginator.cjs.map +1 -1
- package/dist/util/paginator.d.cts +3 -1
- package/dist/util/paginator.d.cts.map +1 -1
- package/dist/util/paginator.d.ts +3 -1
- package/dist/util/paginator.d.ts.map +1 -1
- package/dist/util/paginator.js +70 -16
- package/dist/util/paginator.js.map +1 -1
- package/dist/util/plan-ranges.cjs +47 -22
- package/dist/util/plan-ranges.cjs.map +1 -1
- package/dist/util/plan-ranges.js +48 -24
- package/dist/util/plan-ranges.js.map +1 -1
- package/dist/util/sha1.cjs +27 -0
- package/dist/util/sha1.cjs.map +1 -0
- package/dist/util/sha1.d.cts +17 -0
- package/dist/util/sha1.d.cts.map +1 -0
- package/dist/util/sha1.d.ts +17 -0
- package/dist/util/sha1.d.ts.map +1 -0
- package/dist/util/sha1.js +26 -0
- package/dist/util/sha1.js.map +1 -0
- package/dist/util/text-codec.cjs +29 -5
- package/dist/util/text-codec.cjs.map +1 -1
- package/dist/util/text-codec.js +30 -7
- package/dist/util/text-codec.js.map +1 -1
- package/dist/util/to-error.cjs +18 -4
- package/dist/util/to-error.cjs.map +1 -1
- package/dist/util/to-error.js +19 -5
- package/dist/util/to-error.js.map +1 -1
- package/dist/version.cjs +17 -5
- package/dist/version.cjs.map +1 -1
- package/dist/version.d.cts +3 -3
- package/dist/version.d.ts +3 -3
- package/dist/version.js +19 -6
- package/dist/version.js.map +1 -1
- package/package.json +45 -20
- package/dist/auth/index.cjs.map +0 -1
- package/dist/auth/index.js.map +0 -1
- package/dist/index.cjs.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/notifications/index.cjs.map +0 -1
- package/dist/notifications/index.js.map +0 -1
- package/dist/package.json.cjs +0 -9
- package/dist/package.json.cjs.map +0 -1
- package/dist/package.json.js +0 -9
- package/dist/package.json.js.map +0 -1
- package/dist/streams/index.cjs.map +0 -1
- package/dist/streams/index.js.map +0 -1
- package/dist/sync/index.cjs.map +0 -1
- package/dist/sync/index.js.map +0 -1
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Detect HTTP header value control characters.
|
|
3
|
+
*
|
|
4
|
+
* Header values used by this SDK must not contain C0 controls or DEL. Rejecting
|
|
5
|
+
* them before signing avoids relying on later whitespace normalization to
|
|
6
|
+
* neutralize CR/LF header injection.
|
|
7
|
+
*
|
|
8
|
+
* @param value - Header value to inspect.
|
|
9
|
+
*
|
|
10
|
+
* @returns `true` when the value contains a disallowed control character.
|
|
11
|
+
*/
|
|
12
|
+
export declare function hasHttpHeaderControlCharacter(value: string): boolean;
|
|
13
|
+
//# sourceMappingURL=http.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/util/http.js"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAOpE"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Detect HTTP header value control characters.
|
|
3
|
+
*
|
|
4
|
+
* Header values used by this SDK must not contain C0 controls or DEL. Rejecting
|
|
5
|
+
* them before signing avoids relying on later whitespace normalization to
|
|
6
|
+
* neutralize CR/LF header injection.
|
|
7
|
+
*
|
|
8
|
+
* @param value - Header value to inspect.
|
|
9
|
+
*
|
|
10
|
+
* @returns `true` when the value contains a disallowed control character.
|
|
11
|
+
*/
|
|
12
|
+
export declare function hasHttpHeaderControlCharacter(value: string): boolean;
|
|
13
|
+
//# sourceMappingURL=http.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/util/http.js"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAOpE"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
//#region src/util/http.ts
|
|
2
|
+
/**
|
|
3
|
+
* Detect HTTP header value control characters.
|
|
4
|
+
*
|
|
5
|
+
* Header values used by this SDK must not contain C0 controls or DEL. Rejecting
|
|
6
|
+
* them before signing avoids relying on later whitespace normalization to
|
|
7
|
+
* neutralize CR/LF header injection.
|
|
8
|
+
*
|
|
9
|
+
* @param value - Header value to inspect.
|
|
10
|
+
*
|
|
11
|
+
* @returns `true` when the value contains a disallowed control character.
|
|
12
|
+
*/
|
|
13
|
+
function hasHttpHeaderControlCharacter(value) {
|
|
14
|
+
for (let i = 0; i < value.length; i++) {
|
|
15
|
+
const code = value.charCodeAt(i);
|
|
16
|
+
if (code <= 31 || code === 127) return true;
|
|
17
|
+
}
|
|
18
|
+
return false;
|
|
19
|
+
}
|
|
20
|
+
//#endregion
|
|
21
|
+
export { hasHttpHeaderControlCharacter };
|
|
22
|
+
|
|
23
|
+
//# sourceMappingURL=http.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http.js","names":[],"sources":["../../src/util/http.ts"],"sourcesContent":["/**\n * Detect HTTP header value control characters.\n *\n * Header values used by this SDK must not contain C0 controls or DEL. Rejecting\n * them before signing avoids relying on later whitespace normalization to\n * neutralize CR/LF header injection.\n *\n * @param value - Header value to inspect.\n *\n * @returns `true` when the value contains a disallowed control character.\n */\nexport function hasHttpHeaderControlCharacter(value: string): boolean {\n for (let i = 0; i < value.length; i++) {\n const code = value.charCodeAt(i)\n if (code <= 0x1f || code === 0x7f) return true\n }\n\n return false\n}\n"],"mappings":";;;;;;;;;;;;AAWA,SAAgB,8BAA8B,OAAwB;CACpE,KAAK,IAAI,IAAI,GAAG,IAAI,MAAM,QAAQ,KAAK;EACrC,MAAM,OAAO,MAAM,WAAW,CAAC;EAC/B,IAAI,QAAQ,MAAQ,SAAS,KAAM,OAAO;CAC5C;CAEA,OAAO;AACT"}
|
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
//#region src/util/md5.ts
|
|
2
|
+
/**
|
|
3
|
+
* Encodes raw bytes as base64 in an isomorphic way (Node Buffer fallback to btoa).
|
|
4
|
+
*
|
|
5
|
+
* @param bytes - The raw bytes to encode.
|
|
6
|
+
*
|
|
7
|
+
* @returns The base64-encoded string.
|
|
8
|
+
*/
|
|
9
|
+
function bytesToBase64(bytes) {
|
|
10
|
+
const g = globalThis;
|
|
11
|
+
if (g.Buffer) return g.Buffer.from(bytes).toString("base64");
|
|
12
|
+
let binary = "";
|
|
13
|
+
for (const byte of bytes) binary += String.fromCharCode(byte);
|
|
14
|
+
return btoa(binary);
|
|
15
|
+
}
|
|
16
|
+
var loadNodeCrypto = () => import("node:crypto");
|
|
17
|
+
function syncNodeCreateHash() {
|
|
18
|
+
const crypto = globalThis.process?.getBuiltinModule?.("node:crypto");
|
|
19
|
+
if (!crypto || typeof crypto !== "object") return null;
|
|
20
|
+
const { createHash } = crypto;
|
|
21
|
+
return typeof createHash === "function" ? createHash : null;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Computes the MD5 digest of the given bytes as a base64 string. Prefers
|
|
25
|
+
* `node:crypto` for native speed when available; falls back to a pure-JS
|
|
26
|
+
* implementation in browser / edge runtimes because WebCrypto's
|
|
27
|
+
* `crypto.subtle.digest` deliberately does not support MD5.
|
|
28
|
+
*
|
|
29
|
+
* MD5 is used only for wire-protocol integrity checks, not as a security
|
|
30
|
+
* boundary.
|
|
31
|
+
*
|
|
32
|
+
* @param bytes - The bytes to digest.
|
|
33
|
+
*
|
|
34
|
+
* @returns The base64-encoded MD5 digest.
|
|
35
|
+
*
|
|
36
|
+
* @internal
|
|
37
|
+
*/
|
|
38
|
+
async function md5Base64(bytes) {
|
|
39
|
+
return md5Base64WithCryptoLoader(bytes, loadNodeCrypto);
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Computes the MD5 digest with an injected async crypto loader.
|
|
43
|
+
*
|
|
44
|
+
* @param bytes - The bytes to digest.
|
|
45
|
+
* @param loadCrypto - Crypto module loader used by runtime fallback tests.
|
|
46
|
+
*
|
|
47
|
+
* @returns The base64-encoded MD5 digest.
|
|
48
|
+
*
|
|
49
|
+
* @internal
|
|
50
|
+
*/
|
|
51
|
+
async function md5Base64WithCryptoLoader(bytes, loadCrypto) {
|
|
52
|
+
try {
|
|
53
|
+
const { createHash } = await loadCrypto();
|
|
54
|
+
if (typeof createHash !== "function") throw new Error("createHash unavailable");
|
|
55
|
+
return createHash("md5").update(bytes).digest("base64");
|
|
56
|
+
} catch {
|
|
57
|
+
return md5Base64Sync(bytes);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Computes the MD5 digest of the given bytes as a base64 string without
|
|
62
|
+
* dynamic imports.
|
|
63
|
+
*
|
|
64
|
+
* @param bytes - The bytes to digest.
|
|
65
|
+
*
|
|
66
|
+
* @returns The base64-encoded MD5 digest.
|
|
67
|
+
*
|
|
68
|
+
* @internal
|
|
69
|
+
*/
|
|
70
|
+
function md5Base64Sync(bytes) {
|
|
71
|
+
const createHash = syncNodeCreateHash();
|
|
72
|
+
if (createHash) return createHash("md5").update(bytes).digest("base64");
|
|
73
|
+
return bytesToBase64(md5Bytes(bytes));
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Pure-JS MD5 implementation per RFC 1321. Returns the 16-byte digest of the
|
|
77
|
+
* input. Used as a browser fallback for SSE-C key MD5 computation; not
|
|
78
|
+
* intended for security-sensitive purposes (MD5 is broken cryptographically).
|
|
79
|
+
*
|
|
80
|
+
* @param data - The bytes to hash.
|
|
81
|
+
*
|
|
82
|
+
* @returns The 16-byte MD5 digest.
|
|
83
|
+
*/
|
|
84
|
+
function md5Bytes(data) {
|
|
85
|
+
const originalBitLength = data.length * 8;
|
|
86
|
+
const paddedLength = data.length + 1 + 8 + 63 & -64;
|
|
87
|
+
const msg = new Uint8Array(paddedLength);
|
|
88
|
+
msg.set(data);
|
|
89
|
+
msg[data.length] = 128;
|
|
90
|
+
const view = new DataView(msg.buffer);
|
|
91
|
+
view.setUint32(paddedLength - 8, originalBitLength >>> 0, true);
|
|
92
|
+
view.setUint32(paddedLength - 4, Math.floor(originalBitLength / 4294967296), true);
|
|
93
|
+
let a0 = 1732584193;
|
|
94
|
+
let b0 = 4023233417;
|
|
95
|
+
let c0 = 2562383102;
|
|
96
|
+
let d0 = 271733878;
|
|
97
|
+
const s = [
|
|
98
|
+
7,
|
|
99
|
+
12,
|
|
100
|
+
17,
|
|
101
|
+
22,
|
|
102
|
+
7,
|
|
103
|
+
12,
|
|
104
|
+
17,
|
|
105
|
+
22,
|
|
106
|
+
7,
|
|
107
|
+
12,
|
|
108
|
+
17,
|
|
109
|
+
22,
|
|
110
|
+
7,
|
|
111
|
+
12,
|
|
112
|
+
17,
|
|
113
|
+
22,
|
|
114
|
+
5,
|
|
115
|
+
9,
|
|
116
|
+
14,
|
|
117
|
+
20,
|
|
118
|
+
5,
|
|
119
|
+
9,
|
|
120
|
+
14,
|
|
121
|
+
20,
|
|
122
|
+
5,
|
|
123
|
+
9,
|
|
124
|
+
14,
|
|
125
|
+
20,
|
|
126
|
+
5,
|
|
127
|
+
9,
|
|
128
|
+
14,
|
|
129
|
+
20,
|
|
130
|
+
4,
|
|
131
|
+
11,
|
|
132
|
+
16,
|
|
133
|
+
23,
|
|
134
|
+
4,
|
|
135
|
+
11,
|
|
136
|
+
16,
|
|
137
|
+
23,
|
|
138
|
+
4,
|
|
139
|
+
11,
|
|
140
|
+
16,
|
|
141
|
+
23,
|
|
142
|
+
4,
|
|
143
|
+
11,
|
|
144
|
+
16,
|
|
145
|
+
23,
|
|
146
|
+
6,
|
|
147
|
+
10,
|
|
148
|
+
15,
|
|
149
|
+
21,
|
|
150
|
+
6,
|
|
151
|
+
10,
|
|
152
|
+
15,
|
|
153
|
+
21,
|
|
154
|
+
6,
|
|
155
|
+
10,
|
|
156
|
+
15,
|
|
157
|
+
21,
|
|
158
|
+
6,
|
|
159
|
+
10,
|
|
160
|
+
15,
|
|
161
|
+
21
|
|
162
|
+
];
|
|
163
|
+
const k = Array.from({ length: 64 }, (_, i) => Math.floor(Math.abs(Math.sin(i + 1)) * 4294967296));
|
|
164
|
+
const leftRotate = (x, c) => x << c | x >>> 32 - c;
|
|
165
|
+
for (let offset = 0; offset < paddedLength; offset += 64) {
|
|
166
|
+
let a = a0;
|
|
167
|
+
let b = b0;
|
|
168
|
+
let c = c0;
|
|
169
|
+
let d = d0;
|
|
170
|
+
const m = Array.from({ length: 16 }, (_, i) => view.getUint32(offset + i * 4, true));
|
|
171
|
+
for (let i = 0; i < 64; i++) {
|
|
172
|
+
let f;
|
|
173
|
+
let g;
|
|
174
|
+
if (i < 16) {
|
|
175
|
+
f = b & c | ~b & d;
|
|
176
|
+
g = i;
|
|
177
|
+
} else if (i < 32) {
|
|
178
|
+
f = d & b | ~d & c;
|
|
179
|
+
g = (5 * i + 1) % 16;
|
|
180
|
+
} else if (i < 48) {
|
|
181
|
+
f = b ^ c ^ d;
|
|
182
|
+
g = (3 * i + 5) % 16;
|
|
183
|
+
} else {
|
|
184
|
+
f = c ^ (b | ~d);
|
|
185
|
+
g = 7 * i % 16;
|
|
186
|
+
}
|
|
187
|
+
const temp = d;
|
|
188
|
+
d = c;
|
|
189
|
+
c = b;
|
|
190
|
+
b = b + leftRotate(a + f + k[i] + m[g] >>> 0, s[i]) >>> 0;
|
|
191
|
+
a = temp;
|
|
192
|
+
}
|
|
193
|
+
a0 = a0 + a >>> 0;
|
|
194
|
+
b0 = b0 + b >>> 0;
|
|
195
|
+
c0 = c0 + c >>> 0;
|
|
196
|
+
d0 = d0 + d >>> 0;
|
|
197
|
+
}
|
|
198
|
+
const out = /* @__PURE__ */ new Uint8Array(16);
|
|
199
|
+
const outView = new DataView(out.buffer);
|
|
200
|
+
outView.setUint32(0, a0, true);
|
|
201
|
+
outView.setUint32(4, b0, true);
|
|
202
|
+
outView.setUint32(8, c0, true);
|
|
203
|
+
outView.setUint32(12, d0, true);
|
|
204
|
+
return out;
|
|
205
|
+
}
|
|
206
|
+
//#endregion
|
|
207
|
+
exports.md5Base64 = md5Base64;
|
|
208
|
+
exports.md5Base64Sync = md5Base64Sync;
|
|
209
|
+
exports.md5Base64WithCryptoLoader = md5Base64WithCryptoLoader;
|
|
210
|
+
|
|
211
|
+
//# sourceMappingURL=md5.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"md5.cjs","names":[],"sources":["../../src/util/md5.ts"],"sourcesContent":["/**\n * Encodes raw bytes as base64 in an isomorphic way (Node Buffer fallback to btoa).\n *\n * @param bytes - The raw bytes to encode.\n *\n * @returns The base64-encoded string.\n */\nfunction bytesToBase64(bytes: Uint8Array): string {\n const g = globalThis as {\n Buffer?: { from(b: Uint8Array): { toString(encoding: string): string } }\n }\n if (g.Buffer) return g.Buffer.from(bytes).toString('base64')\n\n let binary = ''\n for (const byte of bytes) binary += String.fromCharCode(byte)\n return btoa(binary)\n}\n\ntype SyncNodeHash = {\n update(bytes: Uint8Array): SyncNodeHash\n digest(encoding: 'base64'): string\n}\n\ntype AsyncNodeCryptoLoader = () => Promise<{ createHash?: unknown }>\n\nconst loadNodeCrypto: AsyncNodeCryptoLoader = () => import('node:crypto')\n\nfunction syncNodeCreateHash(): ((algorithm: string) => SyncNodeHash) | null {\n const g = globalThis as {\n process?: {\n getBuiltinModule?: (name: string) => unknown\n }\n }\n const crypto = g.process?.getBuiltinModule?.('node:crypto')\n if (!crypto || typeof crypto !== 'object') return null\n const { createHash } = crypto as { createHash?: unknown }\n return typeof createHash === 'function'\n ? (createHash as (algorithm: string) => SyncNodeHash)\n : null\n}\n\n/**\n * Computes the MD5 digest of the given bytes as a base64 string. Prefers\n * `node:crypto` for native speed when available; falls back to a pure-JS\n * implementation in browser / edge runtimes because WebCrypto's\n * `crypto.subtle.digest` deliberately does not support MD5.\n *\n * MD5 is used only for wire-protocol integrity checks, not as a security\n * boundary.\n *\n * @param bytes - The bytes to digest.\n *\n * @returns The base64-encoded MD5 digest.\n *\n * @internal\n */\nexport async function md5Base64(bytes: Uint8Array): Promise<string> {\n return md5Base64WithCryptoLoader(bytes, loadNodeCrypto)\n}\n\n/**\n * Computes the MD5 digest with an injected async crypto loader.\n *\n * @param bytes - The bytes to digest.\n * @param loadCrypto - Crypto module loader used by runtime fallback tests.\n *\n * @returns The base64-encoded MD5 digest.\n *\n * @internal\n */\nexport async function md5Base64WithCryptoLoader(\n bytes: Uint8Array,\n loadCrypto: AsyncNodeCryptoLoader,\n): Promise<string> {\n try {\n const { createHash } = await loadCrypto()\n // Vite's browser shim resolves the import but does not implement\n // `createHash`. Probe explicitly so we fall through to the pure-JS path.\n if (typeof createHash !== 'function') throw new Error('createHash unavailable')\n return createHash('md5').update(bytes).digest('base64')\n } catch {\n return md5Base64Sync(bytes)\n }\n}\n\n/**\n * Computes the MD5 digest of the given bytes as a base64 string without\n * dynamic imports.\n *\n * @param bytes - The bytes to digest.\n *\n * @returns The base64-encoded MD5 digest.\n *\n * @internal\n */\nexport function md5Base64Sync(bytes: Uint8Array): string {\n const createHash = syncNodeCreateHash()\n if (createHash) return createHash('md5').update(bytes).digest('base64')\n\n return bytesToBase64(md5Bytes(bytes))\n}\n\n/**\n * Pure-JS MD5 implementation per RFC 1321. Returns the 16-byte digest of the\n * input. Used as a browser fallback for SSE-C key MD5 computation; not\n * intended for security-sensitive purposes (MD5 is broken cryptographically).\n *\n * @param data - The bytes to hash.\n *\n * @returns The 16-byte MD5 digest.\n */\nfunction md5Bytes(data: Uint8Array): Uint8Array {\n const originalBitLength = data.length * 8\n const withOne = data.length + 1\n const paddedLength = (withOne + 8 + 63) & ~63\n const msg = new Uint8Array(paddedLength)\n msg.set(data)\n msg[data.length] = 0x80\n const view = new DataView(msg.buffer)\n view.setUint32(paddedLength - 8, originalBitLength >>> 0, true)\n view.setUint32(paddedLength - 4, Math.floor(originalBitLength / 0x1_0000_0000), true)\n\n let a0 = 0x67452301\n let b0 = 0xefcdab89\n let c0 = 0x98badcfe\n let d0 = 0x10325476\n\n const s = [\n 7, 12, 17, 22, 7, 12, 17, 22, 7, 12, 17, 22, 7, 12, 17, 22, 5, 9, 14, 20, 5, 9, 14, 20, 5, 9,\n 14, 20, 5, 9, 14, 20, 4, 11, 16, 23, 4, 11, 16, 23, 4, 11, 16, 23, 4, 11, 16, 23, 6, 10, 15, 21,\n 6, 10, 15, 21, 6, 10, 15, 21, 6, 10, 15, 21,\n ]\n const k = Array.from({ length: 64 }, (_, i) =>\n Math.floor(Math.abs(Math.sin(i + 1)) * 0x1_0000_0000),\n )\n\n const leftRotate = (x: number, c: number) => (x << c) | (x >>> (32 - c))\n\n for (let offset = 0; offset < paddedLength; offset += 64) {\n let a = a0\n let b = b0\n let c = c0\n let d = d0\n\n const m = Array.from({ length: 16 }, (_, i) => view.getUint32(offset + i * 4, true))\n\n for (let i = 0; i < 64; i++) {\n let f: number\n let g: number\n if (i < 16) {\n f = (b & c) | (~b & d)\n g = i\n } else if (i < 32) {\n f = (d & b) | (~d & c)\n g = (5 * i + 1) % 16\n } else if (i < 48) {\n f = b ^ c ^ d\n g = (3 * i + 5) % 16\n } else {\n f = c ^ (b | ~d)\n g = (7 * i) % 16\n }\n\n const temp = d\n d = c\n c = b\n b =\n (b + leftRotate((a + f + (k[i] as number) + (m[g] as number)) >>> 0, s[i] as number)) >>> 0\n a = temp\n }\n\n a0 = (a0 + a) >>> 0\n b0 = (b0 + b) >>> 0\n c0 = (c0 + c) >>> 0\n d0 = (d0 + d) >>> 0\n }\n\n const out = new Uint8Array(16)\n const outView = new DataView(out.buffer)\n outView.setUint32(0, a0, true)\n outView.setUint32(4, b0, true)\n outView.setUint32(8, c0, true)\n outView.setUint32(12, d0, true)\n return out\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
type AsyncNodeCryptoLoader = () => Promise<{
|
|
2
|
+
createHash?: unknown;
|
|
3
|
+
}>;
|
|
4
|
+
/**
|
|
5
|
+
* Computes the MD5 digest of the given bytes as a base64 string. Prefers
|
|
6
|
+
* `node:crypto` for native speed when available; falls back to a pure-JS
|
|
7
|
+
* implementation in browser / edge runtimes because WebCrypto's
|
|
8
|
+
* `crypto.subtle.digest` deliberately does not support MD5.
|
|
9
|
+
*
|
|
10
|
+
* MD5 is used only for wire-protocol integrity checks, not as a security
|
|
11
|
+
* boundary.
|
|
12
|
+
*
|
|
13
|
+
* @param bytes - The bytes to digest.
|
|
14
|
+
*
|
|
15
|
+
* @returns The base64-encoded MD5 digest.
|
|
16
|
+
*
|
|
17
|
+
* @internal
|
|
18
|
+
*/
|
|
19
|
+
export declare function md5Base64(bytes: Uint8Array): Promise<string>;
|
|
20
|
+
/**
|
|
21
|
+
* Computes the MD5 digest with an injected async crypto loader.
|
|
22
|
+
*
|
|
23
|
+
* @param bytes - The bytes to digest.
|
|
24
|
+
* @param loadCrypto - Crypto module loader used by runtime fallback tests.
|
|
25
|
+
*
|
|
26
|
+
* @returns The base64-encoded MD5 digest.
|
|
27
|
+
*
|
|
28
|
+
* @internal
|
|
29
|
+
*/
|
|
30
|
+
export declare function md5Base64WithCryptoLoader(bytes: Uint8Array, loadCrypto: AsyncNodeCryptoLoader): Promise<string>;
|
|
31
|
+
/**
|
|
32
|
+
* Computes the MD5 digest of the given bytes as a base64 string without
|
|
33
|
+
* dynamic imports.
|
|
34
|
+
*
|
|
35
|
+
* @param bytes - The bytes to digest.
|
|
36
|
+
*
|
|
37
|
+
* @returns The base64-encoded MD5 digest.
|
|
38
|
+
*
|
|
39
|
+
* @internal
|
|
40
|
+
*/
|
|
41
|
+
export declare function md5Base64Sync(bytes: Uint8Array): string;
|
|
42
|
+
export {};
|
|
43
|
+
//# sourceMappingURL=md5.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"md5.d.ts","sourceRoot":"","sources":["../../src/util/md5.js"],"names":[],"mappings":"AAuBA,KAAK,qBAAqB,GAAG,MAAM,OAAO,CAAC;IAAE,UAAU,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAAA;AAkBpE;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,SAAS,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAElE;AAED;;;;;;;;;GASG;AACH,wBAAsB,yBAAyB,CAC7C,KAAK,EAAE,UAAU,EACjB,UAAU,EAAE,qBAAqB,GAChC,OAAO,CAAC,MAAM,CAAC,CAUjB;AAED;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAKvD"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
type AsyncNodeCryptoLoader = () => Promise<{
|
|
2
|
+
createHash?: unknown;
|
|
3
|
+
}>;
|
|
4
|
+
/**
|
|
5
|
+
* Computes the MD5 digest of the given bytes as a base64 string. Prefers
|
|
6
|
+
* `node:crypto` for native speed when available; falls back to a pure-JS
|
|
7
|
+
* implementation in browser / edge runtimes because WebCrypto's
|
|
8
|
+
* `crypto.subtle.digest` deliberately does not support MD5.
|
|
9
|
+
*
|
|
10
|
+
* MD5 is used only for wire-protocol integrity checks, not as a security
|
|
11
|
+
* boundary.
|
|
12
|
+
*
|
|
13
|
+
* @param bytes - The bytes to digest.
|
|
14
|
+
*
|
|
15
|
+
* @returns The base64-encoded MD5 digest.
|
|
16
|
+
*
|
|
17
|
+
* @internal
|
|
18
|
+
*/
|
|
19
|
+
export declare function md5Base64(bytes: Uint8Array): Promise<string>;
|
|
20
|
+
/**
|
|
21
|
+
* Computes the MD5 digest with an injected async crypto loader.
|
|
22
|
+
*
|
|
23
|
+
* @param bytes - The bytes to digest.
|
|
24
|
+
* @param loadCrypto - Crypto module loader used by runtime fallback tests.
|
|
25
|
+
*
|
|
26
|
+
* @returns The base64-encoded MD5 digest.
|
|
27
|
+
*
|
|
28
|
+
* @internal
|
|
29
|
+
*/
|
|
30
|
+
export declare function md5Base64WithCryptoLoader(bytes: Uint8Array, loadCrypto: AsyncNodeCryptoLoader): Promise<string>;
|
|
31
|
+
/**
|
|
32
|
+
* Computes the MD5 digest of the given bytes as a base64 string without
|
|
33
|
+
* dynamic imports.
|
|
34
|
+
*
|
|
35
|
+
* @param bytes - The bytes to digest.
|
|
36
|
+
*
|
|
37
|
+
* @returns The base64-encoded MD5 digest.
|
|
38
|
+
*
|
|
39
|
+
* @internal
|
|
40
|
+
*/
|
|
41
|
+
export declare function md5Base64Sync(bytes: Uint8Array): string;
|
|
42
|
+
export {};
|
|
43
|
+
//# sourceMappingURL=md5.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"md5.d.ts","sourceRoot":"","sources":["../../src/util/md5.js"],"names":[],"mappings":"AAuBA,KAAK,qBAAqB,GAAG,MAAM,OAAO,CAAC;IAAE,UAAU,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,CAAA;AAkBpE;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,SAAS,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAElE;AAED;;;;;;;;;GASG;AACH,wBAAsB,yBAAyB,CAC7C,KAAK,EAAE,UAAU,EACjB,UAAU,EAAE,qBAAqB,GAChC,OAAO,CAAC,MAAM,CAAC,CAUjB;AAED;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,CAKvD"}
|
package/dist/util/md5.js
ADDED
|
@@ -0,0 +1,209 @@
|
|
|
1
|
+
//#region src/util/md5.ts
|
|
2
|
+
/**
|
|
3
|
+
* Encodes raw bytes as base64 in an isomorphic way (Node Buffer fallback to btoa).
|
|
4
|
+
*
|
|
5
|
+
* @param bytes - The raw bytes to encode.
|
|
6
|
+
*
|
|
7
|
+
* @returns The base64-encoded string.
|
|
8
|
+
*/
|
|
9
|
+
function bytesToBase64(bytes) {
|
|
10
|
+
const g = globalThis;
|
|
11
|
+
if (g.Buffer) return g.Buffer.from(bytes).toString("base64");
|
|
12
|
+
let binary = "";
|
|
13
|
+
for (const byte of bytes) binary += String.fromCharCode(byte);
|
|
14
|
+
return btoa(binary);
|
|
15
|
+
}
|
|
16
|
+
var loadNodeCrypto = () => import("node:crypto");
|
|
17
|
+
function syncNodeCreateHash() {
|
|
18
|
+
const crypto = globalThis.process?.getBuiltinModule?.("node:crypto");
|
|
19
|
+
if (!crypto || typeof crypto !== "object") return null;
|
|
20
|
+
const { createHash } = crypto;
|
|
21
|
+
return typeof createHash === "function" ? createHash : null;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Computes the MD5 digest of the given bytes as a base64 string. Prefers
|
|
25
|
+
* `node:crypto` for native speed when available; falls back to a pure-JS
|
|
26
|
+
* implementation in browser / edge runtimes because WebCrypto's
|
|
27
|
+
* `crypto.subtle.digest` deliberately does not support MD5.
|
|
28
|
+
*
|
|
29
|
+
* MD5 is used only for wire-protocol integrity checks, not as a security
|
|
30
|
+
* boundary.
|
|
31
|
+
*
|
|
32
|
+
* @param bytes - The bytes to digest.
|
|
33
|
+
*
|
|
34
|
+
* @returns The base64-encoded MD5 digest.
|
|
35
|
+
*
|
|
36
|
+
* @internal
|
|
37
|
+
*/
|
|
38
|
+
async function md5Base64(bytes) {
|
|
39
|
+
return md5Base64WithCryptoLoader(bytes, loadNodeCrypto);
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Computes the MD5 digest with an injected async crypto loader.
|
|
43
|
+
*
|
|
44
|
+
* @param bytes - The bytes to digest.
|
|
45
|
+
* @param loadCrypto - Crypto module loader used by runtime fallback tests.
|
|
46
|
+
*
|
|
47
|
+
* @returns The base64-encoded MD5 digest.
|
|
48
|
+
*
|
|
49
|
+
* @internal
|
|
50
|
+
*/
|
|
51
|
+
async function md5Base64WithCryptoLoader(bytes, loadCrypto) {
|
|
52
|
+
try {
|
|
53
|
+
const { createHash } = await loadCrypto();
|
|
54
|
+
if (typeof createHash !== "function") throw new Error("createHash unavailable");
|
|
55
|
+
return createHash("md5").update(bytes).digest("base64");
|
|
56
|
+
} catch {
|
|
57
|
+
return md5Base64Sync(bytes);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Computes the MD5 digest of the given bytes as a base64 string without
|
|
62
|
+
* dynamic imports.
|
|
63
|
+
*
|
|
64
|
+
* @param bytes - The bytes to digest.
|
|
65
|
+
*
|
|
66
|
+
* @returns The base64-encoded MD5 digest.
|
|
67
|
+
*
|
|
68
|
+
* @internal
|
|
69
|
+
*/
|
|
70
|
+
function md5Base64Sync(bytes) {
|
|
71
|
+
const createHash = syncNodeCreateHash();
|
|
72
|
+
if (createHash) return createHash("md5").update(bytes).digest("base64");
|
|
73
|
+
return bytesToBase64(md5Bytes(bytes));
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Pure-JS MD5 implementation per RFC 1321. Returns the 16-byte digest of the
|
|
77
|
+
* input. Used as a browser fallback for SSE-C key MD5 computation; not
|
|
78
|
+
* intended for security-sensitive purposes (MD5 is broken cryptographically).
|
|
79
|
+
*
|
|
80
|
+
* @param data - The bytes to hash.
|
|
81
|
+
*
|
|
82
|
+
* @returns The 16-byte MD5 digest.
|
|
83
|
+
*/
|
|
84
|
+
function md5Bytes(data) {
|
|
85
|
+
const originalBitLength = data.length * 8;
|
|
86
|
+
const paddedLength = data.length + 1 + 8 + 63 & -64;
|
|
87
|
+
const msg = new Uint8Array(paddedLength);
|
|
88
|
+
msg.set(data);
|
|
89
|
+
msg[data.length] = 128;
|
|
90
|
+
const view = new DataView(msg.buffer);
|
|
91
|
+
view.setUint32(paddedLength - 8, originalBitLength >>> 0, true);
|
|
92
|
+
view.setUint32(paddedLength - 4, Math.floor(originalBitLength / 4294967296), true);
|
|
93
|
+
let a0 = 1732584193;
|
|
94
|
+
let b0 = 4023233417;
|
|
95
|
+
let c0 = 2562383102;
|
|
96
|
+
let d0 = 271733878;
|
|
97
|
+
const s = [
|
|
98
|
+
7,
|
|
99
|
+
12,
|
|
100
|
+
17,
|
|
101
|
+
22,
|
|
102
|
+
7,
|
|
103
|
+
12,
|
|
104
|
+
17,
|
|
105
|
+
22,
|
|
106
|
+
7,
|
|
107
|
+
12,
|
|
108
|
+
17,
|
|
109
|
+
22,
|
|
110
|
+
7,
|
|
111
|
+
12,
|
|
112
|
+
17,
|
|
113
|
+
22,
|
|
114
|
+
5,
|
|
115
|
+
9,
|
|
116
|
+
14,
|
|
117
|
+
20,
|
|
118
|
+
5,
|
|
119
|
+
9,
|
|
120
|
+
14,
|
|
121
|
+
20,
|
|
122
|
+
5,
|
|
123
|
+
9,
|
|
124
|
+
14,
|
|
125
|
+
20,
|
|
126
|
+
5,
|
|
127
|
+
9,
|
|
128
|
+
14,
|
|
129
|
+
20,
|
|
130
|
+
4,
|
|
131
|
+
11,
|
|
132
|
+
16,
|
|
133
|
+
23,
|
|
134
|
+
4,
|
|
135
|
+
11,
|
|
136
|
+
16,
|
|
137
|
+
23,
|
|
138
|
+
4,
|
|
139
|
+
11,
|
|
140
|
+
16,
|
|
141
|
+
23,
|
|
142
|
+
4,
|
|
143
|
+
11,
|
|
144
|
+
16,
|
|
145
|
+
23,
|
|
146
|
+
6,
|
|
147
|
+
10,
|
|
148
|
+
15,
|
|
149
|
+
21,
|
|
150
|
+
6,
|
|
151
|
+
10,
|
|
152
|
+
15,
|
|
153
|
+
21,
|
|
154
|
+
6,
|
|
155
|
+
10,
|
|
156
|
+
15,
|
|
157
|
+
21,
|
|
158
|
+
6,
|
|
159
|
+
10,
|
|
160
|
+
15,
|
|
161
|
+
21
|
|
162
|
+
];
|
|
163
|
+
const k = Array.from({ length: 64 }, (_, i) => Math.floor(Math.abs(Math.sin(i + 1)) * 4294967296));
|
|
164
|
+
const leftRotate = (x, c) => x << c | x >>> 32 - c;
|
|
165
|
+
for (let offset = 0; offset < paddedLength; offset += 64) {
|
|
166
|
+
let a = a0;
|
|
167
|
+
let b = b0;
|
|
168
|
+
let c = c0;
|
|
169
|
+
let d = d0;
|
|
170
|
+
const m = Array.from({ length: 16 }, (_, i) => view.getUint32(offset + i * 4, true));
|
|
171
|
+
for (let i = 0; i < 64; i++) {
|
|
172
|
+
let f;
|
|
173
|
+
let g;
|
|
174
|
+
if (i < 16) {
|
|
175
|
+
f = b & c | ~b & d;
|
|
176
|
+
g = i;
|
|
177
|
+
} else if (i < 32) {
|
|
178
|
+
f = d & b | ~d & c;
|
|
179
|
+
g = (5 * i + 1) % 16;
|
|
180
|
+
} else if (i < 48) {
|
|
181
|
+
f = b ^ c ^ d;
|
|
182
|
+
g = (3 * i + 5) % 16;
|
|
183
|
+
} else {
|
|
184
|
+
f = c ^ (b | ~d);
|
|
185
|
+
g = 7 * i % 16;
|
|
186
|
+
}
|
|
187
|
+
const temp = d;
|
|
188
|
+
d = c;
|
|
189
|
+
c = b;
|
|
190
|
+
b = b + leftRotate(a + f + k[i] + m[g] >>> 0, s[i]) >>> 0;
|
|
191
|
+
a = temp;
|
|
192
|
+
}
|
|
193
|
+
a0 = a0 + a >>> 0;
|
|
194
|
+
b0 = b0 + b >>> 0;
|
|
195
|
+
c0 = c0 + c >>> 0;
|
|
196
|
+
d0 = d0 + d >>> 0;
|
|
197
|
+
}
|
|
198
|
+
const out = /* @__PURE__ */ new Uint8Array(16);
|
|
199
|
+
const outView = new DataView(out.buffer);
|
|
200
|
+
outView.setUint32(0, a0, true);
|
|
201
|
+
outView.setUint32(4, b0, true);
|
|
202
|
+
outView.setUint32(8, c0, true);
|
|
203
|
+
outView.setUint32(12, d0, true);
|
|
204
|
+
return out;
|
|
205
|
+
}
|
|
206
|
+
//#endregion
|
|
207
|
+
export { md5Base64, md5Base64Sync, md5Base64WithCryptoLoader };
|
|
208
|
+
|
|
209
|
+
//# sourceMappingURL=md5.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"md5.js","names":[],"sources":["../../src/util/md5.ts"],"sourcesContent":["/**\n * Encodes raw bytes as base64 in an isomorphic way (Node Buffer fallback to btoa).\n *\n * @param bytes - The raw bytes to encode.\n *\n * @returns The base64-encoded string.\n */\nfunction bytesToBase64(bytes: Uint8Array): string {\n const g = globalThis as {\n Buffer?: { from(b: Uint8Array): { toString(encoding: string): string } }\n }\n if (g.Buffer) return g.Buffer.from(bytes).toString('base64')\n\n let binary = ''\n for (const byte of bytes) binary += String.fromCharCode(byte)\n return btoa(binary)\n}\n\ntype SyncNodeHash = {\n update(bytes: Uint8Array): SyncNodeHash\n digest(encoding: 'base64'): string\n}\n\ntype AsyncNodeCryptoLoader = () => Promise<{ createHash?: unknown }>\n\nconst loadNodeCrypto: AsyncNodeCryptoLoader = () => import('node:crypto')\n\nfunction syncNodeCreateHash(): ((algorithm: string) => SyncNodeHash) | null {\n const g = globalThis as {\n process?: {\n getBuiltinModule?: (name: string) => unknown\n }\n }\n const crypto = g.process?.getBuiltinModule?.('node:crypto')\n if (!crypto || typeof crypto !== 'object') return null\n const { createHash } = crypto as { createHash?: unknown }\n return typeof createHash === 'function'\n ? (createHash as (algorithm: string) => SyncNodeHash)\n : null\n}\n\n/**\n * Computes the MD5 digest of the given bytes as a base64 string. Prefers\n * `node:crypto` for native speed when available; falls back to a pure-JS\n * implementation in browser / edge runtimes because WebCrypto's\n * `crypto.subtle.digest` deliberately does not support MD5.\n *\n * MD5 is used only for wire-protocol integrity checks, not as a security\n * boundary.\n *\n * @param bytes - The bytes to digest.\n *\n * @returns The base64-encoded MD5 digest.\n *\n * @internal\n */\nexport async function md5Base64(bytes: Uint8Array): Promise<string> {\n return md5Base64WithCryptoLoader(bytes, loadNodeCrypto)\n}\n\n/**\n * Computes the MD5 digest with an injected async crypto loader.\n *\n * @param bytes - The bytes to digest.\n * @param loadCrypto - Crypto module loader used by runtime fallback tests.\n *\n * @returns The base64-encoded MD5 digest.\n *\n * @internal\n */\nexport async function md5Base64WithCryptoLoader(\n bytes: Uint8Array,\n loadCrypto: AsyncNodeCryptoLoader,\n): Promise<string> {\n try {\n const { createHash } = await loadCrypto()\n // Vite's browser shim resolves the import but does not implement\n // `createHash`. Probe explicitly so we fall through to the pure-JS path.\n if (typeof createHash !== 'function') throw new Error('createHash unavailable')\n return createHash('md5').update(bytes).digest('base64')\n } catch {\n return md5Base64Sync(bytes)\n }\n}\n\n/**\n * Computes the MD5 digest of the given bytes as a base64 string without\n * dynamic imports.\n *\n * @param bytes - The bytes to digest.\n *\n * @returns The base64-encoded MD5 digest.\n *\n * @internal\n */\nexport function md5Base64Sync(bytes: Uint8Array): string {\n const createHash = syncNodeCreateHash()\n if (createHash) return createHash('md5').update(bytes).digest('base64')\n\n return bytesToBase64(md5Bytes(bytes))\n}\n\n/**\n * Pure-JS MD5 implementation per RFC 1321. Returns the 16-byte digest of the\n * input. Used as a browser fallback for SSE-C key MD5 computation; not\n * intended for security-sensitive purposes (MD5 is broken cryptographically).\n *\n * @param data - The bytes to hash.\n *\n * @returns The 16-byte MD5 digest.\n */\nfunction md5Bytes(data: Uint8Array): Uint8Array {\n const originalBitLength = data.length * 8\n const withOne = data.length + 1\n const paddedLength = (withOne + 8 + 63) & ~63\n const msg = new Uint8Array(paddedLength)\n msg.set(data)\n msg[data.length] = 0x80\n const view = new DataView(msg.buffer)\n view.setUint32(paddedLength - 8, originalBitLength >>> 0, true)\n view.setUint32(paddedLength - 4, Math.floor(originalBitLength / 0x1_0000_0000), true)\n\n let a0 = 0x67452301\n let b0 = 0xefcdab89\n let c0 = 0x98badcfe\n let d0 = 0x10325476\n\n const s = [\n 7, 12, 17, 22, 7, 12, 17, 22, 7, 12, 17, 22, 7, 12, 17, 22, 5, 9, 14, 20, 5, 9, 14, 20, 5, 9,\n 14, 20, 5, 9, 14, 20, 4, 11, 16, 23, 4, 11, 16, 23, 4, 11, 16, 23, 4, 11, 16, 23, 6, 10, 15, 21,\n 6, 10, 15, 21, 6, 10, 15, 21, 6, 10, 15, 21,\n ]\n const k = Array.from({ length: 64 }, (_, i) =>\n Math.floor(Math.abs(Math.sin(i + 1)) * 0x1_0000_0000),\n )\n\n const leftRotate = (x: number, c: number) => (x << c) | (x >>> (32 - c))\n\n for (let offset = 0; offset < paddedLength; offset += 64) {\n let a = a0\n let b = b0\n let c = c0\n let d = d0\n\n const m = Array.from({ length: 16 }, (_, i) => view.getUint32(offset + i * 4, true))\n\n for (let i = 0; i < 64; i++) {\n let f: number\n let g: number\n if (i < 16) {\n f = (b & c) | (~b & d)\n g = i\n } else if (i < 32) {\n f = (d & b) | (~d & c)\n g = (5 * i + 1) % 16\n } else if (i < 48) {\n f = b ^ c ^ d\n g = (3 * i + 5) % 16\n } else {\n f = c ^ (b | ~d)\n g = (7 * i) % 16\n }\n\n const temp = d\n d = c\n c = b\n b =\n (b + leftRotate((a + f + (k[i] as number) + (m[g] as number)) >>> 0, s[i] as number)) >>> 0\n a = temp\n }\n\n a0 = (a0 + a) >>> 0\n b0 = (b0 + b) >>> 0\n c0 = (c0 + c) >>> 0\n d0 = (d0 + d) >>> 0\n }\n\n const out = new Uint8Array(16)\n const outView = new DataView(out.buffer)\n outView.setUint32(0, a0, true)\n outView.setUint32(4, b0, true)\n outView.setUint32(8, c0, true)\n outView.setUint32(12, d0, true)\n return out\n}\n"],"mappings":";;;;;;;;AAOA,SAAS,cAAc,OAA2B;CAChD,MAAM,IAAI;CAGV,IAAI,EAAE,QAAQ,OAAO,EAAE,OAAO,KAAK,KAAK,CAAC,CAAC,SAAS,QAAQ;CAE3D,IAAI,SAAS;CACb,KAAK,MAAM,QAAQ,OAAO,UAAU,OAAO,aAAa,IAAI;CAC5D,OAAO,KAAK,MAAM;AACpB;AASA,IAAM,uBAA8C,OAAO;AAE3D,SAAS,qBAAmE;CAM1E,MAAM,SAAS,WAAE,SAAS,mBAAmB,aAAa;CAC1D,IAAI,CAAC,UAAU,OAAO,WAAW,UAAU,OAAO;CAClD,MAAM,EAAE,eAAe;CACvB,OAAO,OAAO,eAAe,aACxB,aACD;AACN;;;;;;;;;;;;;;;;AAiBA,eAAsB,UAAU,OAAoC;CAClE,OAAO,0BAA0B,OAAO,cAAc;AACxD;;;;;;;;;;;AAYA,eAAsB,0BACpB,OACA,YACiB;CACjB,IAAI;EACF,MAAM,EAAE,eAAe,MAAM,WAAW;EAGxC,IAAI,OAAO,eAAe,YAAY,MAAM,IAAI,MAAM,wBAAwB;EAC9E,OAAO,WAAW,KAAK,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,OAAO,QAAQ;CACxD,QAAQ;EACN,OAAO,cAAc,KAAK;CAC5B;AACF;;;;;;;;;;;AAYA,SAAgB,cAAc,OAA2B;CACvD,MAAM,aAAa,mBAAmB;CACtC,IAAI,YAAY,OAAO,WAAW,KAAK,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,OAAO,QAAQ;CAEtE,OAAO,cAAc,SAAS,KAAK,CAAC;AACtC;;;;;;;;;;AAWA,SAAS,SAAS,MAA8B;CAC9C,MAAM,oBAAoB,KAAK,SAAS;CAExC,MAAM,eADU,KAAK,SAAS,IACE,IAAI,KAAM;CAC1C,MAAM,MAAM,IAAI,WAAW,YAAY;CACvC,IAAI,IAAI,IAAI;CACZ,IAAI,KAAK,UAAU;CACnB,MAAM,OAAO,IAAI,SAAS,IAAI,MAAM;CACpC,KAAK,UAAU,eAAe,GAAG,sBAAsB,GAAG,IAAI;CAC9D,KAAK,UAAU,eAAe,GAAG,KAAK,MAAM,oBAAoB,UAAa,GAAG,IAAI;CAEpF,IAAI,KAAK;CACT,IAAI,KAAK;CACT,IAAI,KAAK;CACT,IAAI,KAAK;CAET,MAAM,IAAI;EACR;EAAG;EAAI;EAAI;EAAI;EAAG;EAAI;EAAI;EAAI;EAAG;EAAI;EAAI;EAAI;EAAG;EAAI;EAAI;EAAI;EAAG;EAAG;EAAI;EAAI;EAAG;EAAG;EAAI;EAAI;EAAG;EAC3F;EAAI;EAAI;EAAG;EAAG;EAAI;EAAI;EAAG;EAAI;EAAI;EAAI;EAAG;EAAI;EAAI;EAAI;EAAG;EAAI;EAAI;EAAI;EAAG;EAAI;EAAI;EAAI;EAAG;EAAI;EAAI;EAC7F;EAAG;EAAI;EAAI;EAAI;EAAG;EAAI;EAAI;EAAI;EAAG;EAAI;EAAI;CAC3C;CACA,MAAM,IAAI,MAAM,KAAK,EAAE,QAAQ,GAAG,IAAI,GAAG,MACvC,KAAK,MAAM,KAAK,IAAI,KAAK,IAAI,IAAI,CAAC,CAAC,IAAI,UAAa,CACtD;CAEA,MAAM,cAAc,GAAW,MAAe,KAAK,IAAM,MAAO,KAAK;CAErE,KAAK,IAAI,SAAS,GAAG,SAAS,cAAc,UAAU,IAAI;EACxD,IAAI,IAAI;EACR,IAAI,IAAI;EACR,IAAI,IAAI;EACR,IAAI,IAAI;EAER,MAAM,IAAI,MAAM,KAAK,EAAE,QAAQ,GAAG,IAAI,GAAG,MAAM,KAAK,UAAU,SAAS,IAAI,GAAG,IAAI,CAAC;EAEnF,KAAK,IAAI,IAAI,GAAG,IAAI,IAAI,KAAK;GAC3B,IAAI;GACJ,IAAI;GACJ,IAAI,IAAI,IAAI;IACV,IAAK,IAAI,IAAM,CAAC,IAAI;IACpB,IAAI;GACN,OAAO,IAAI,IAAI,IAAI;IACjB,IAAK,IAAI,IAAM,CAAC,IAAI;IACpB,KAAK,IAAI,IAAI,KAAK;GACpB,OAAO,IAAI,IAAI,IAAI;IACjB,IAAI,IAAI,IAAI;IACZ,KAAK,IAAI,IAAI,KAAK;GACpB,OAAO;IACL,IAAI,KAAK,IAAI,CAAC;IACd,IAAK,IAAI,IAAK;GAChB;GAEA,MAAM,OAAO;GACb,IAAI;GACJ,IAAI;GACJ,IACG,IAAI,WAAY,IAAI,IAAK,EAAE,KAAiB,EAAE,OAAmB,GAAG,EAAE,EAAY,MAAO;GAC5F,IAAI;EACN;EAEA,KAAM,KAAK,MAAO;EAClB,KAAM,KAAK,MAAO;EAClB,KAAM,KAAK,MAAO;EAClB,KAAM,KAAK,MAAO;CACpB;CAEA,MAAM,sBAAM,IAAI,WAAW,EAAE;CAC7B,MAAM,UAAU,IAAI,SAAS,IAAI,MAAM;CACvC,QAAQ,UAAU,GAAG,IAAI,IAAI;CAC7B,QAAQ,UAAU,GAAG,IAAI,IAAI;CAC7B,QAAQ,UAAU,GAAG,IAAI,IAAI;CAC7B,QAAQ,UAAU,IAAI,IAAI,IAAI;CAC9B,OAAO;AACT"}
|