Files
cloud-code/claude-code-source/node_modules/@smithy/hash-node/dist-cjs/index.js
janlaywss 6187147b74 reconstruct and build @anthropic-ai/claude-code source from source map
- Extract 4756 source files from cli.js.map (57MB)
- Set up Bun build system with bun:bundle feature flag shim
- Configure 90+ compile-time feature flags matching production defaults
- Inject MACRO constants (VERSION, BUILD_TIME, etc.)
- Create stubs for private packages (color-diff-napi, modifiers-napi, etc.)
- Install all public dependencies via pnpm
- Patch commander v14 to allow multi-char short flags (-d2e)
- Build output: dist/cli.js (22MB), verified working
2026-03-31 19:19:50 +08:00

43 lines
1.2 KiB
JavaScript

'use strict';
var utilBufferFrom = require('@smithy/util-buffer-from');
var utilUtf8 = require('@smithy/util-utf8');
var buffer = require('buffer');
var crypto = require('crypto');
class Hash {
algorithmIdentifier;
secret;
hash;
constructor(algorithmIdentifier, secret) {
this.algorithmIdentifier = algorithmIdentifier;
this.secret = secret;
this.reset();
}
update(toHash, encoding) {
this.hash.update(utilUtf8.toUint8Array(castSourceData(toHash, encoding)));
}
digest() {
return Promise.resolve(this.hash.digest());
}
reset() {
this.hash = this.secret
? crypto.createHmac(this.algorithmIdentifier, castSourceData(this.secret))
: crypto.createHash(this.algorithmIdentifier);
}
}
function castSourceData(toCast, encoding) {
if (buffer.Buffer.isBuffer(toCast)) {
return toCast;
}
if (typeof toCast === "string") {
return utilBufferFrom.fromString(toCast, encoding);
}
if (ArrayBuffer.isView(toCast)) {
return utilBufferFrom.fromArrayBuffer(toCast.buffer, toCast.byteOffset, toCast.byteLength);
}
return utilBufferFrom.fromArrayBuffer(toCast);
}
exports.Hash = Hash;