@aws-sdk/sha256-tree-hash 3.35.0 → 3.36.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 +11 -0
- package/dist-cjs/index.js +0 -1
- package/dist-es/index.js +0 -1
- package/package.json +7 -4
- package/src/index.ts +0 -119
- package/tsconfig.cjs.json +0 -9
- package/tsconfig.es.json +0 -10
- package/tsconfig.types.json +0 -9
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,17 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# [3.36.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.35.0...v3.36.0) (2021-10-08)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Features
|
|
10
|
+
|
|
11
|
+
* publish files in dist-* only ([#2873](https://github.com/aws/aws-sdk-js-v3/issues/2873)) ([53b4243](https://github.com/aws/aws-sdk-js-v3/commit/53b4243b066f25ff2412d5f0dea1036054b2df32))
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
6
17
|
# [3.35.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.34.0...v3.35.0) (2021-10-04)
|
|
7
18
|
|
|
8
19
|
**Note:** Version bump only for package @aws-sdk/sha256-tree-hash
|
package/dist-cjs/index.js
CHANGED
|
@@ -75,4 +75,3 @@ class TreeHash {
|
|
|
75
75
|
}
|
|
76
76
|
}
|
|
77
77
|
exports.TreeHash = TreeHash;
|
|
78
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUEsTUFBTSxHQUFHLEdBQUcsT0FBTyxDQUFDO0FBS3BCLE1BQWEsUUFBUTtJQVFuQixZQUE2QixNQUF1QixFQUFtQixRQUFpQjtRQUEzRCxXQUFNLEdBQU4sTUFBTSxDQUFpQjtRQUFtQixhQUFRLEdBQVIsUUFBUSxDQUFTO1FBTmhGLHlCQUFvQixHQUEwQixFQUFFLENBQUM7SUFNa0MsQ0FBQztJQVFwRixVQUFVO1FBQ2hCLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ2hCLE9BQU87U0FDUjtRQUVELElBQUksYUFBYSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDO1FBQzNDLE9BQU8sYUFBYSxJQUFJLEdBQUcsRUFBRTtZQUMzQixNQUFNLElBQUksR0FBRyxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUMvQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQzFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7WUFFOUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN4QyxhQUFhLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUM7U0FDeEM7SUFDSCxDQUFDO0lBTU0sTUFBTSxDQUFDLElBQWdCO1FBQzVCLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDekMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDaEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7U0FDckI7YUFBTTtZQUVMLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQyxVQUFVLENBQUM7WUFDNUQsTUFBTSxVQUFVLEdBQUcsSUFBSSxVQUFVLENBQUMsU0FBUyxDQUFDLENBQUM7WUFFN0MsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDNUIsVUFBVSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUM5QyxJQUFJLENBQUMsTUFBTSxHQUFHLFVBQVUsQ0FBQztTQUMxQjtRQUdELElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNwQixDQUFDO0lBS00sS0FBSyxDQUFDLE1BQU07UUFDakIsSUFBSSxvQkFBb0IsR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUM7UUFFckQsSUFBSSxDQUFDLG9CQUFvQixHQUFHLEVBQUUsQ0FBQztRQUcvQixJQUFJLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLEdBQUcsQ0FBQyxFQUFFO1lBQzdDLE1BQU0sU0FBUyxHQUFHLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ3BDLFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQzlCLG9CQUFvQixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztZQUU5QyxJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQyxDQUFDO1NBQ3RCO1FBRUQsT0FBTyxvQkFBb0IsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ3RDLE1BQU0sc0JBQXNCLEdBQTBCLEVBQUUsQ0FBQztZQUN6RCxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsb0JBQW9CLENBQUMsTUFBTSxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQ3ZELElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxvQkFBb0IsQ0FBQyxNQUFNLEVBQUU7b0JBRXZDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLEdBQUcsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDLEVBQUUsb0JBQW9CLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFFckcsTUFBTSxLQUFLLEdBQUcsSUFBSSxVQUFVLENBQUMsT0FBTyxDQUFDLFVBQVUsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUM7b0JBQ3RFLEtBQUssQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7b0JBQ25CLEtBQUssQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztvQkFFdkMsTUFBTSxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7b0JBQy9CLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQ25CLHNCQUFzQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztpQkFDNUM7cUJBQU07b0JBRUwsc0JBQXNCLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7aUJBQ3REO2FBQ0Y7WUFDRCxvQkFBb0IsR0FBRyxzQkFBc0IsQ0FBQztTQUMvQztRQUVELE9BQU8sb0JBQW9CLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQU1PLGVBQWUsQ0FBQyxJQUFnQjtRQUN0QyxJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVEsRUFBRTtZQUM1QixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDNUI7UUFFRCxJQUFJLFdBQVcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDNUIsT0FBTyxJQUFJLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUMsaUJBQWlCLENBQUMsQ0FBQztTQUNyRztRQUVELE9BQU8sSUFBSSxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDOUIsQ0FBQztDQUNGO0FBL0dELDRCQStHQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERlY29kZXIsIEhhc2gsIEhhc2hDb25zdHJ1Y3RvciwgU291cmNlRGF0YSB9IGZyb20gXCJAYXdzLXNkay90eXBlc1wiO1xuXG5jb25zdCBNaUIgPSAxMDQ4NTc2O1xuXG4vKipcbiAqIEEgSGFzaCB0aGF0IHdpbGwgY2FsY3VsYXRlIGEgU2hhMjU2IHRyZWUgaGFzaC5cbiAqL1xuZXhwb3J0IGNsYXNzIFRyZWVIYXNoIGltcGxlbWVudHMgSGFzaCB7XG4gIHByaXZhdGUgYnVmZmVyPzogVWludDhBcnJheTtcbiAgcHJpdmF0ZSBjb2xsZWN0ZWRIYXNoRGlnZXN0czogUHJvbWlzZTxVaW50OEFycmF5PltdID0gW107XG5cbiAgLyoqXG4gICAqIEluaXRpYWxpemVzIGEgVHJlZUhhc2guXG4gICAqIEBwYXJhbSBTaGEyNTYgQSBTaGEyNTYgaGFzaCBjb25zdHJ1Y3Rvci5cbiAgICovXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgU2hhMjU2OiBIYXNoQ29uc3RydWN0b3IsIHByaXZhdGUgcmVhZG9ubHkgZnJvbVV0Zjg6IERlY29kZXIpIHt9XG5cbiAgLyoqXG4gICAqIEdlbmVyYXRlcyBTaGEyNTYgaGFzaGVzIGZyb20gMSBNaUIgY2h1bmtzIG9mIHRoZVxuICAgKiBpbnRlcm5hbCBidWZmZXIuXG4gICAqIFdpbGwgc2V0IHRoZSBpbnRlcm5hbCBidWZmZXIgdG8gYW55IGJ5dGVzIHJlbWFpbmluZ1xuICAgKiB0aGF0IGlzIGxlc3MgdGhhbiAxIE1pQi5cbiAgICovXG4gIHByaXZhdGUgaGFzaEJ1ZmZlcigpIHtcbiAgICBpZiAoIXRoaXMuYnVmZmVyKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgbGV0IHJlbWFpbmluZ1NpemUgPSB0aGlzLmJ1ZmZlci5ieXRlTGVuZ3RoO1xuICAgIHdoaWxlIChyZW1haW5pbmdTaXplID49IE1pQikge1xuICAgICAgY29uc3QgaGFzaCA9IG5ldyB0aGlzLlNoYTI1NigpO1xuICAgICAgaGFzaC51cGRhdGUodGhpcy5idWZmZXIuc3ViYXJyYXkoMCwgTWlCKSk7XG4gICAgICB0aGlzLmNvbGxlY3RlZEhhc2hEaWdlc3RzLnB1c2goaGFzaC5kaWdlc3QoKSk7XG5cbiAgICAgIHRoaXMuYnVmZmVyID0gdGhpcy5idWZmZXIuc3ViYXJyYXkoTWlCKTtcbiAgICAgIHJlbWFpbmluZ1NpemUgPSB0aGlzLmJ1ZmZlci5ieXRlTGVuZ3RoO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGVzIHRoZSB0cmVlIGhhc2ggd2l0aCBieXRlIGRhdGEuXG4gICAqIEBwYXJhbSBjaHVuayBCeXRlIGRhdGEgdG8gYXBwbHkgdG8gdGhlIHRyZWUgaGFzaC5cbiAgICovXG4gIHB1YmxpYyB1cGRhdGUoZGF0YTogU291cmNlRGF0YSkge1xuICAgIGNvbnN0IGNodW5rID0gdGhpcy5jb252ZXJ0VG9CdWZmZXIoZGF0YSk7XG4gICAgaWYgKCF0aGlzLmJ1ZmZlcikge1xuICAgICAgdGhpcy5idWZmZXIgPSBjaHVuaztcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gZGV0ZXJtaW5lIHNpemUgb2YgYm90aCBwaWVjZXNcbiAgICAgIGNvbnN0IHRvdGFsU2l6ZSA9IHRoaXMuYnVmZmVyLmJ5dGVMZW5ndGggKyBjaHVuay5ieXRlTGVuZ3RoO1xuICAgICAgY29uc3QgdGVtcEJ1ZmZlciA9IG5ldyBVaW50OEFycmF5KHRvdGFsU2l6ZSk7XG5cbiAgICAgIHRlbXBCdWZmZXIuc2V0KHRoaXMuYnVmZmVyKTtcbiAgICAgIHRlbXBCdWZmZXIuc2V0KGNodW5rLCB0aGlzLmJ1ZmZlci5ieXRlTGVuZ3RoKTtcbiAgICAgIHRoaXMuYnVmZmVyID0gdGVtcEJ1ZmZlcjtcbiAgICB9XG5cbiAgICAvLyBoYXNCdWZmZXIgd2lsbCBzZXQgdGhpcy5idWZmZXIgd2l0aCByZW1haW5pbmcgZGF0YVxuICAgIHRoaXMuaGFzaEJ1ZmZlcigpO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGN1bGF0ZXMgdGhlIGRpZ2VzdCBmb3IgdGhlIHRyZWUgaGFzaC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBkaWdlc3QoKTogUHJvbWlzZTxVaW50OEFycmF5PiB7XG4gICAgbGV0IGNvbGxlY3RlZEhhc2hEaWdlc3RzID0gdGhpcy5jb2xsZWN0ZWRIYXNoRGlnZXN0cztcbiAgICAvLyByZW1vdmUgdGhlIHJlZmVyZW5jZSB0byBjb2xsZWN0ZWQgaGFzaGVzIHRvIGZyZWUgdXAgc3BhY2VcbiAgICB0aGlzLmNvbGxlY3RlZEhhc2hEaWdlc3RzID0gW107XG5cbiAgICAvLyBsb29wIHRocm91Z2ggY29sbGVjdGVkIGhhc2hlc1xuICAgIGlmICh0aGlzLmJ1ZmZlciAmJiB0aGlzLmJ1ZmZlci5ieXRlTGVuZ3RoID4gMCkge1xuICAgICAgY29uc3Qgc21hbGxIYXNoID0gbmV3IHRoaXMuU2hhMjU2KCk7XG4gICAgICBzbWFsbEhhc2gudXBkYXRlKHRoaXMuYnVmZmVyKTtcbiAgICAgIGNvbGxlY3RlZEhhc2hEaWdlc3RzLnB1c2goc21hbGxIYXNoLmRpZ2VzdCgpKTtcbiAgICAgIC8vIHJlbW92ZSB0aGUgcmVtYWluaW5nIGJ1ZmZlclxuICAgICAgdGhpcy5idWZmZXIgPSB2b2lkIDA7XG4gICAgfVxuXG4gICAgd2hpbGUgKGNvbGxlY3RlZEhhc2hEaWdlc3RzLmxlbmd0aCA+IDEpIHtcbiAgICAgIGNvbnN0IGhpZ2hlckxldmVsSGFzaERpZ2VzdHM6IFByb21pc2U8VWludDhBcnJheT5bXSA9IFtdO1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjb2xsZWN0ZWRIYXNoRGlnZXN0cy5sZW5ndGg7IGkgKz0gMikge1xuICAgICAgICBpZiAoaSArIDEgPCBjb2xsZWN0ZWRIYXNoRGlnZXN0cy5sZW5ndGgpIHtcbiAgICAgICAgICAvLyBjb25jYXRlbmF0ZSB0aGUgcGFpciBvZiBoYXNoZXNcbiAgICAgICAgICBjb25zdCBbZGlnZXN0MSwgZGlnZXN0Ml0gPSBhd2FpdCBQcm9taXNlLmFsbChbY29sbGVjdGVkSGFzaERpZ2VzdHNbaV0sIGNvbGxlY3RlZEhhc2hEaWdlc3RzW2kgKyAxXV0pO1xuXG4gICAgICAgICAgY29uc3QgY2h1bmsgPSBuZXcgVWludDhBcnJheShkaWdlc3QxLmJ5dGVMZW5ndGggKyBkaWdlc3QyLmJ5dGVMZW5ndGgpO1xuICAgICAgICAgIGNodW5rLnNldChkaWdlc3QxKTtcbiAgICAgICAgICBjaHVuay5zZXQoZGlnZXN0MiwgZGlnZXN0MS5ieXRlTGVuZ3RoKTtcblxuICAgICAgICAgIGNvbnN0IGhhc2ggPSBuZXcgdGhpcy5TaGEyNTYoKTtcbiAgICAgICAgICBoYXNoLnVwZGF0ZShjaHVuayk7XG4gICAgICAgICAgaGlnaGVyTGV2ZWxIYXNoRGlnZXN0cy5wdXNoKGhhc2guZGlnZXN0KCkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIC8vIG1vdmUgYSBsb25lIGhhc2ggdXAgYSBsZXZlbFxuICAgICAgICAgIGhpZ2hlckxldmVsSGFzaERpZ2VzdHMucHVzaChjb2xsZWN0ZWRIYXNoRGlnZXN0c1tpXSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGNvbGxlY3RlZEhhc2hEaWdlc3RzID0gaGlnaGVyTGV2ZWxIYXNoRGlnZXN0cztcbiAgICB9XG5cbiAgICByZXR1cm4gY29sbGVjdGVkSGFzaERpZ2VzdHNbMF07XG4gIH1cblxuICAvKipcbiAgICogQ29udmVydHMgc291cmNlIGRhdGEgaW50byBhIFVpbnQ4QXJyYXkuXG4gICAqIEBwYXJhbSBkYXRhIERhdGEgdG8gY29udmVydCB0byBhIFVpbnQ4QXJyYXkuXG4gICAqL1xuICBwcml2YXRlIGNvbnZlcnRUb0J1ZmZlcihkYXRhOiBTb3VyY2VEYXRhKTogVWludDhBcnJheSB7XG4gICAgaWYgKHR5cGVvZiBkYXRhID09PSBcInN0cmluZ1wiKSB7XG4gICAgICByZXR1cm4gdGhpcy5mcm9tVXRmOChkYXRhKTtcbiAgICB9XG5cbiAgICBpZiAoQXJyYXlCdWZmZXIuaXNWaWV3KGRhdGEpKSB7XG4gICAgICByZXR1cm4gbmV3IFVpbnQ4QXJyYXkoZGF0YS5idWZmZXIsIGRhdGEuYnl0ZU9mZnNldCwgZGF0YS5ieXRlTGVuZ3RoIC8gVWludDhBcnJheS5CWVRFU19QRVJfRUxFTUVOVCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG5ldyBVaW50OEFycmF5KGRhdGEpO1xuICB9XG59XG4iXX0=
|
package/dist-es/index.js
CHANGED
|
@@ -92,4 +92,3 @@ var TreeHash = (function () {
|
|
|
92
92
|
return TreeHash;
|
|
93
93
|
}());
|
|
94
94
|
export { TreeHash };
|
|
95
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUVBLElBQU0sR0FBRyxHQUFHLE9BQU8sQ0FBQztBQUtwQjtJQVFFLGtCQUE2QixNQUF1QixFQUFtQixRQUFpQjtRQUEzRCxXQUFNLEdBQU4sTUFBTSxDQUFpQjtRQUFtQixhQUFRLEdBQVIsUUFBUSxDQUFTO1FBTmhGLHlCQUFvQixHQUEwQixFQUFFLENBQUM7SUFNa0MsQ0FBQztJQVFwRiw2QkFBVSxHQUFsQjtRQUNFLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ2hCLE9BQU87U0FDUjtRQUVELElBQUksYUFBYSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDO1FBQzNDLE9BQU8sYUFBYSxJQUFJLEdBQUcsRUFBRTtZQUMzQixJQUFNLElBQUksR0FBRyxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUMvQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQzFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7WUFFOUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN4QyxhQUFhLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUM7U0FDeEM7SUFDSCxDQUFDO0lBTU0seUJBQU0sR0FBYixVQUFjLElBQWdCO1FBQzVCLElBQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDekMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDaEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENB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LE1BQU0sRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDLGlCQUFpQixDQUFDLENBQUM7U0FDckc7UUFFRCxPQUFPLElBQUksVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFDSCxlQUFDO0FBQUQsQ0FBQyxBQS9HRCxJQStHQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERlY29kZXIsIEhhc2gsIEhhc2hDb25zdHJ1Y3RvciwgU291cmNlRGF0YSB9IGZyb20gXCJAYXdzLXNkay90eXBlc1wiO1xuXG5jb25zdCBNaUIgPSAxMDQ4NTc2O1xuXG4vKipcbiAqIEEgSGFzaCB0aGF0IHdpbGwgY2FsY3VsYXRlIGEgU2hhMjU2IHRyZWUgaGFzaC5cbiAqL1xuZXhwb3J0IGNsYXNzIFRyZWVIYXNoIGltcGxlbWVudHMgSGFzaCB7XG4gIHByaXZhdGUgYnVmZmVyPzogVWludDhBcnJheTtcbiAgcHJpdmF0ZSBjb2xsZWN0ZWRIYXNoRGlnZXN0czogUHJvbWlzZTxVaW50OEFycmF5PltdID0gW107XG5cbiAgLyoqXG4gICAqIEluaXRpYWxpemVzIGEgVHJlZUhhc2guXG4gICAqIEBwYXJhbSBTaGEyNTYgQSBTaGEyNTYgaGFzaCBjb25zdHJ1Y3Rvci5cbiAgICovXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgU2hhMjU2OiBIYXNoQ29uc3RydWN0b3IsIHByaXZhdGUgcmVhZG9ubHkgZnJvbVV0Zjg6IERlY29kZXIpIHt9XG5cbiAgLyoqXG4gICAqIEdlbmVyYXRlcyBTaGEyNTYgaGFzaGVzIGZyb20gMSBNaUIgY2h1bmtzIG9mIHRoZVxuICAgKiBpbnRlcm5hbCBidWZmZXIuXG4gICAqIFdpbGwgc2V0IHRoZSBpbnRlcm5hbCBidWZmZXIgdG8gYW55IGJ5dGVzIHJlbWFpbmluZ1xuICAgKiB0aGF0IGlzIGxlc3MgdGhhbiAxIE1pQi5cbiAgICovXG4gIHByaXZhdGUgaGFzaEJ1ZmZlcigpIHtcbiAgICBpZiAoIXRoaXMuYnVmZmVyKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgbGV0IHJlbWFpbmluZ1NpemUgPSB0aGlzLmJ1ZmZlci5ieXRlTGVuZ3RoO1xuICAgIHdoaWxlIChyZW1haW5pbmdTaXplID49IE1pQikge1xuICAgICAgY29uc3QgaGFzaCA9IG5ldyB0aGlzLlNoYTI1NigpO1xuICAgICAgaGFzaC51cGRhdGUodGhpcy5idWZmZXIuc3ViYXJyYXkoMCwgTWlCKSk7XG4gICAgICB0aGlzLmNvbGxlY3RlZEhhc2hEaWdlc3RzLnB1c2goaGFzaC5kaWdlc3QoKSk7XG5cbiAgICAgIHRoaXMuYnVmZmVyID0gdGhpcy5idWZmZXIuc3ViYXJyYXkoTWlCKTtcbiAgICAgIHJlbWFpbmluZ1NpemUgPSB0aGlzLmJ1ZmZlci5ieXRlTGVuZ3RoO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGVzIHRoZSB0cmVlIGhhc2ggd2l0aCBieXRlIGRhdGEuXG4gICAqIEBwYXJhbSBjaHVuayBCeXRlIGRhdGEgdG8gYXBwbHkgdG8gdGhlIHRyZWUgaGFzaC5cbiAgICovXG4gIHB1YmxpYyB1cGRhdGUoZGF0YTogU291cmNlRGF0YSkge1xuICAgIGNvbnN0IGNodW5rID0gdGhpcy5jb252ZXJ0VG9CdWZmZXIoZGF0YSk7XG4gICAgaWYgKCF0aGlzLmJ1ZmZlcikge1xuICAgICAgdGhpcy5idWZmZXIgPSBjaHVuaztcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gZGV0ZXJtaW5lIHNpemUgb2YgYm90aCBwaWVjZXNcbiAgICAgIGNvbnN0IHRvdGFsU2l6ZSA9IHRoaXMuYnVmZmVyLmJ5dGVMZW5ndGggKyBjaHVuay5ieXRlTGVuZ3RoO1xuICAgICAgY29uc3QgdGVtcEJ1ZmZlciA9IG5ldyBVaW50OEFycmF5KHRvdGFsU2l6ZSk7XG5cbiAgICAgIHRlbXBCdWZmZXIuc2V0KHRoaXMuYnVmZmVyKTtcbiAgICAgIHRlbXBCdWZmZXIuc2V0KGNodW5rLCB0aGlzLmJ1ZmZlci5ieXRlTGVuZ3RoKTtcbiAgICAgIHRoaXMuYnVmZmVyID0gdGVtcEJ1ZmZlcjtcbiAgICB9XG5cbiAgICAvLyBoYXNCdWZmZXIgd2lsbCBzZXQgdGhpcy5idWZmZXIgd2l0aCByZW1haW5pbmcgZGF0YVxuICAgIHRoaXMuaGFzaEJ1ZmZlcigpO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGN1bGF0ZXMgdGhlIGRpZ2VzdCBmb3IgdGhlIHRyZWUgaGFzaC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBkaWdlc3QoKTogUHJvbWlzZTxVaW50OEFycmF5PiB7XG4gICAgbGV0IGNvbGxlY3RlZEhhc2hEaWdlc3RzID0gdGhpcy5jb2xsZWN0ZWRIYXNoRGlnZXN0cztcbiAgICAvLyByZW1vdmUgdGhlIHJlZmVyZW5jZSB0byBjb2xsZWN0ZWQgaGFzaGVzIHRvIGZyZWUgdXAgc3BhY2VcbiAgICB0aGlzLmNvbGxlY3RlZEhhc2hEaWdlc3RzID0gW107XG5cbiAgICAvLyBsb29wIHRocm91Z2ggY29sbGVjdGVkIGhhc2hlc1xuICAgIGlmICh0aGlzLmJ1ZmZlciAmJiB0aGlzLmJ1ZmZlci5ieXRlTGVuZ3RoID4gMCkge1xuICAgICAgY29uc3Qgc21hbGxIYXNoID0gbmV3IHRoaXMuU2hhMjU2KCk7XG4gICAgICBzbWFsbEhhc2gudXBkYXRlKHRoaXMuYnVmZmVyKTtcbiAgICAgIGNvbGxlY3RlZEhhc2hEaWdlc3RzLnB1c2goc21hbGxIYXNoLmRpZ2VzdCgpKTtcbiAgICAgIC8vIHJlbW92ZSB0aGUgcmVtYWluaW5nIGJ1ZmZlclxuICAgICAgdGhpcy5idWZmZXIgPSB2b2lkIDA7XG4gICAgfVxuXG4gICAgd2hpbGUgKGNvbGxlY3RlZEhhc2hEaWdlc3RzLmxlbmd0aCA+IDEpIHtcbiAgICAgIGNvbnN0IGhpZ2hlckxldmVsSGFzaERpZ2VzdHM6IFByb21pc2U8VWludDhBcnJheT5bXSA9IFtdO1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjb2xsZWN0ZWRIYXNoRGlnZXN0cy5sZW5ndGg7IGkgKz0gMikge1xuICAgICAgICBpZiAoaSArIDEgPCBjb2xsZWN0ZWRIYXNoRGlnZXN0cy5sZW5ndGgpIHtcbiAgICAgICAgICAvLyBjb25jYXRlbmF0ZSB0aGUgcGFpciBvZiBoYXNoZXNcbiAgICAgICAgICBjb25zdCBbZGlnZXN0MSwgZGlnZXN0Ml0gPSBhd2FpdCBQcm9taXNlLmFsbChbY29sbGVjdGVkSGFzaERpZ2VzdHNbaV0sIGNvbGxlY3RlZEhhc2hEaWdlc3RzW2kgKyAxXV0pO1xuXG4gICAgICAgICAgY29uc3QgY2h1bmsgPSBuZXcgVWludDhBcnJheShkaWdlc3QxLmJ5dGVMZW5ndGggKyBkaWdlc3QyLmJ5dGVMZW5ndGgpO1xuICAgICAgICAgIGNodW5rLnNldChkaWdlc3QxKTtcbiAgICAgICAgICBjaHVuay5zZXQoZGlnZXN0MiwgZGlnZXN0MS5ieXRlTGVuZ3RoKTtcblxuICAgICAgICAgIGNvbnN0IGhhc2ggPSBuZXcgdGhpcy5TaGEyNTYoKTtcbiAgICAgICAgICBoYXNoLnVwZGF0ZShjaHVuayk7XG4gICAgICAgICAgaGlnaGVyTGV2ZWxIYXNoRGlnZXN0cy5wdXNoKGhhc2guZGlnZXN0KCkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIC8vIG1vdmUgYSBsb25lIGhhc2ggdXAgYSBsZXZlbFxuICAgICAgICAgIGhpZ2hlckxldmVsSGFzaERpZ2VzdHMucHVzaChjb2xsZWN0ZWRIYXNoRGlnZXN0c1tpXSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGNvbGxlY3RlZEhhc2hEaWdlc3RzID0gaGlnaGVyTGV2ZWxIYXNoRGlnZXN0cztcbiAgICB9XG5cbiAgICByZXR1cm4gY29sbGVjdGVkSGFzaERpZ2VzdHNbMF07XG4gIH1cblxuICAvKipcbiAgICogQ29udmVydHMgc291cmNlIGRhdGEgaW50byBhIFVpbnQ4QXJyYXkuXG4gICAqIEBwYXJhbSBkYXRhIERhdGEgdG8gY29udmVydCB0byBhIFVpbnQ4QXJyYXkuXG4gICAqL1xuICBwcml2YXRlIGNvbnZlcnRUb0J1ZmZlcihkYXRhOiBTb3VyY2VEYXRhKTogVWludDhBcnJheSB7XG4gICAgaWYgKHR5cGVvZiBkYXRhID09PSBcInN0cmluZ1wiKSB7XG4gICAgICByZXR1cm4gdGhpcy5mcm9tVXRmOChkYXRhKTtcbiAgICB9XG5cbiAgICBpZiAoQXJyYXlCdWZmZXIuaXNWaWV3KGRhdGEpKSB7XG4gICAgICByZXR1cm4gbmV3IFVpbnQ4QXJyYXkoZGF0YS5idWZmZXIsIGRhdGEuYnl0ZU9mZnNldCwgZGF0YS5ieXRlTGVuZ3RoIC8gVWludDhBcnJheS5CWVRFU19QRVJfRUxFTUVOVCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG5ldyBVaW50OEFycmF5KGRhdGEpO1xuICB9XG59XG4iXX0=
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aws-sdk/sha256-tree-hash",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.36.0",
|
|
4
4
|
"scripts": {
|
|
5
5
|
"build": "yarn build:cjs && yarn build:es && yarn build:types",
|
|
6
6
|
"build:cjs": "tsc -p tsconfig.cjs.json",
|
|
@@ -18,13 +18,13 @@
|
|
|
18
18
|
},
|
|
19
19
|
"license": "Apache-2.0",
|
|
20
20
|
"dependencies": {
|
|
21
|
-
"@aws-sdk/types": "3.
|
|
21
|
+
"@aws-sdk/types": "3.36.0",
|
|
22
22
|
"tslib": "^2.3.0"
|
|
23
23
|
},
|
|
24
24
|
"devDependencies": {
|
|
25
25
|
"@aws-crypto/sha256-js": "^1.0.0",
|
|
26
|
-
"@aws-sdk/util-hex-encoding": "3.
|
|
27
|
-
"@aws-sdk/util-utf8-node": "3.
|
|
26
|
+
"@aws-sdk/util-hex-encoding": "3.36.0",
|
|
27
|
+
"@aws-sdk/util-utf8-node": "3.36.0",
|
|
28
28
|
"@types/jest": "^26.0.4",
|
|
29
29
|
"jest": "^26.1.0",
|
|
30
30
|
"typescript": "~4.3.5"
|
|
@@ -39,6 +39,9 @@
|
|
|
39
39
|
]
|
|
40
40
|
}
|
|
41
41
|
},
|
|
42
|
+
"files": [
|
|
43
|
+
"dist-*"
|
|
44
|
+
],
|
|
42
45
|
"homepage": "https://github.com/aws/aws-sdk-js-v3/tree/main/packages/sha256-tree-hash",
|
|
43
46
|
"repository": {
|
|
44
47
|
"type": "git",
|
package/src/index.ts
DELETED
|
@@ -1,119 +0,0 @@
|
|
|
1
|
-
import { Decoder, Hash, HashConstructor, SourceData } from "@aws-sdk/types";
|
|
2
|
-
|
|
3
|
-
const MiB = 1048576;
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* A Hash that will calculate a Sha256 tree hash.
|
|
7
|
-
*/
|
|
8
|
-
export class TreeHash implements Hash {
|
|
9
|
-
private buffer?: Uint8Array;
|
|
10
|
-
private collectedHashDigests: Promise<Uint8Array>[] = [];
|
|
11
|
-
|
|
12
|
-
/**
|
|
13
|
-
* Initializes a TreeHash.
|
|
14
|
-
* @param Sha256 A Sha256 hash constructor.
|
|
15
|
-
*/
|
|
16
|
-
constructor(private readonly Sha256: HashConstructor, private readonly fromUtf8: Decoder) {}
|
|
17
|
-
|
|
18
|
-
/**
|
|
19
|
-
* Generates Sha256 hashes from 1 MiB chunks of the
|
|
20
|
-
* internal buffer.
|
|
21
|
-
* Will set the internal buffer to any bytes remaining
|
|
22
|
-
* that is less than 1 MiB.
|
|
23
|
-
*/
|
|
24
|
-
private hashBuffer() {
|
|
25
|
-
if (!this.buffer) {
|
|
26
|
-
return;
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
let remainingSize = this.buffer.byteLength;
|
|
30
|
-
while (remainingSize >= MiB) {
|
|
31
|
-
const hash = new this.Sha256();
|
|
32
|
-
hash.update(this.buffer.subarray(0, MiB));
|
|
33
|
-
this.collectedHashDigests.push(hash.digest());
|
|
34
|
-
|
|
35
|
-
this.buffer = this.buffer.subarray(MiB);
|
|
36
|
-
remainingSize = this.buffer.byteLength;
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
/**
|
|
41
|
-
* Updates the tree hash with byte data.
|
|
42
|
-
* @param chunk Byte data to apply to the tree hash.
|
|
43
|
-
*/
|
|
44
|
-
public update(data: SourceData) {
|
|
45
|
-
const chunk = this.convertToBuffer(data);
|
|
46
|
-
if (!this.buffer) {
|
|
47
|
-
this.buffer = chunk;
|
|
48
|
-
} else {
|
|
49
|
-
// determine size of both pieces
|
|
50
|
-
const totalSize = this.buffer.byteLength + chunk.byteLength;
|
|
51
|
-
const tempBuffer = new Uint8Array(totalSize);
|
|
52
|
-
|
|
53
|
-
tempBuffer.set(this.buffer);
|
|
54
|
-
tempBuffer.set(chunk, this.buffer.byteLength);
|
|
55
|
-
this.buffer = tempBuffer;
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
// hasBuffer will set this.buffer with remaining data
|
|
59
|
-
this.hashBuffer();
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
/**
|
|
63
|
-
* Calculates the digest for the tree hash.
|
|
64
|
-
*/
|
|
65
|
-
public async digest(): Promise<Uint8Array> {
|
|
66
|
-
let collectedHashDigests = this.collectedHashDigests;
|
|
67
|
-
// remove the reference to collected hashes to free up space
|
|
68
|
-
this.collectedHashDigests = [];
|
|
69
|
-
|
|
70
|
-
// loop through collected hashes
|
|
71
|
-
if (this.buffer && this.buffer.byteLength > 0) {
|
|
72
|
-
const smallHash = new this.Sha256();
|
|
73
|
-
smallHash.update(this.buffer);
|
|
74
|
-
collectedHashDigests.push(smallHash.digest());
|
|
75
|
-
// remove the remaining buffer
|
|
76
|
-
this.buffer = void 0;
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
while (collectedHashDigests.length > 1) {
|
|
80
|
-
const higherLevelHashDigests: Promise<Uint8Array>[] = [];
|
|
81
|
-
for (let i = 0; i < collectedHashDigests.length; i += 2) {
|
|
82
|
-
if (i + 1 < collectedHashDigests.length) {
|
|
83
|
-
// concatenate the pair of hashes
|
|
84
|
-
const [digest1, digest2] = await Promise.all([collectedHashDigests[i], collectedHashDigests[i + 1]]);
|
|
85
|
-
|
|
86
|
-
const chunk = new Uint8Array(digest1.byteLength + digest2.byteLength);
|
|
87
|
-
chunk.set(digest1);
|
|
88
|
-
chunk.set(digest2, digest1.byteLength);
|
|
89
|
-
|
|
90
|
-
const hash = new this.Sha256();
|
|
91
|
-
hash.update(chunk);
|
|
92
|
-
higherLevelHashDigests.push(hash.digest());
|
|
93
|
-
} else {
|
|
94
|
-
// move a lone hash up a level
|
|
95
|
-
higherLevelHashDigests.push(collectedHashDigests[i]);
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
collectedHashDigests = higherLevelHashDigests;
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
return collectedHashDigests[0];
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
/**
|
|
105
|
-
* Converts source data into a Uint8Array.
|
|
106
|
-
* @param data Data to convert to a Uint8Array.
|
|
107
|
-
*/
|
|
108
|
-
private convertToBuffer(data: SourceData): Uint8Array {
|
|
109
|
-
if (typeof data === "string") {
|
|
110
|
-
return this.fromUtf8(data);
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
if (ArrayBuffer.isView(data)) {
|
|
114
|
-
return new Uint8Array(data.buffer, data.byteOffset, data.byteLength / Uint8Array.BYTES_PER_ELEMENT);
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
return new Uint8Array(data);
|
|
118
|
-
}
|
|
119
|
-
}
|
package/tsconfig.cjs.json
DELETED
package/tsconfig.es.json
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"compilerOptions": {
|
|
3
|
-
"baseUrl": ".",
|
|
4
|
-
"lib": ["dom", "es5", "es2015.promise", "es2015.collection", "es2015.iterable", "es2015.symbol.wellknown"],
|
|
5
|
-
"outDir": "dist-es",
|
|
6
|
-
"rootDir": "src"
|
|
7
|
-
},
|
|
8
|
-
"extends": "../../tsconfig.es.json",
|
|
9
|
-
"include": ["src/"]
|
|
10
|
-
}
|