UNPKG

vite-plugin-react-server

Version:
25 lines (22 loc) 4.41 kB
/** * vite-plugin-react-server * Copyright (c) Nico Brinkkemper * MIT License */ import { createHash } from 'node:crypto'; const createRollupLikeHash = (content, hashCharacters = "base36") => { const hash = createHash("sha1"); hash.update(content); const fullHash = hash.digest("hex"); switch (hashCharacters) { case "base36": return parseInt(fullHash.substring(0, 8), 16).toString(36); case "base64": return Buffer.from(fullHash.substring(0, 8), "hex").toString("base64").replace(/\+/g, "-").replace(/\//g, "_").replace(/=/g, ""); case "hex": default: return fullHash.substring(0, 8); } }; export { createRollupLikeHash }; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlUm9sbHVwTGlrZUhhc2guanMiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3BsdWdpbi9jb25maWcvY3JlYXRlUm9sbHVwTGlrZUhhc2gudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlSGFzaCB9IGZyb20gXCJub2RlOmNyeXB0b1wiO1xuXG4vKipcbiAqIENvbnRlbnQtYWRkcmVzc2VkIGhhc2ggZm9yIGNsaWVudC1jb21wb25lbnQgbW9kdWxlIElEcyB0aGF0IG1pbWljcyBSb2xsdXAnc1xuICogYGhhc2hDaGFyYWN0ZXJzYCBzZW1hbnRpY3MuIFVzZWQgdG8gZ2l2ZSBldmVyeSBob3N0ZWQgY2xpZW50IG1vZHVsZSBhIHN0YWJsZSxcbiAqIHNvdXJjZS1jb250ZW50LWRlcml2ZWQgc3VmZml4IHNvIHRoZSBidWlsZCdzIGVtaXR0ZWQgY2h1bmsgYW5kIHRoZSByZWdpc3RlcmVkXG4gKiBjbGllbnQgcmVmZXJlbmNlIGFncmVlIG9uIHRoZSBzYW1lIGZpbGVuYW1lIGFjcm9zcyBydW5zIGFuZCBhY3Jvc3MgdGhlXG4gKiB0cmFuc2Zvcm1lciAvIGJ1aWxkIC8gU1NHIHBpcGVsaW5lcy5cbiAqXG4gKiBIYXNoZXMgdGhlIGlucHV0IHdpdGggc2hhMSwgdGhlbiB0cnVuY2F0ZXMgdGhlIGZpcnN0IDggaGV4IGNoYXJhY3RlcnMgYW5kXG4gKiByZS1lbmNvZGVzIHRoZW0gaW50byBvbmUgb2YgdGhyZWUgY2hhcmFjdGVyIHNldHM6XG4gKiAgIC0gYGJhc2UzNmAgKGRlZmF1bHQpOiBoZXggcGFyc2VkIGFzIGludCB0aGVuIGAudG9TdHJpbmcoMzYpYCDigJQgUm9sbHVwJ3NcbiAqICAgICBkZWZhdWx0OyBzaG9ydCwgZmlsZW5hbWUtc2FmZSwgbm8gc3BlY2lhbCBjaGFyYWN0ZXJzLlxuICogICAtIGBiYXNlNjRgOiBmaXJzdCA4IGhleCBjaGFycyBkZWNvZGVkIHRvIGJ5dGVzIGFuZCBiYXNlNjQtZW5jb2RlZCB3aXRoXG4gKiAgICAgVVJMLXNhZmUgc3Vic3RpdHV0aW9ucyAoYCtg4oaSYC1gLCBgL2DihpJgX2AsIGA9YCBzdHJpcHBlZCkuXG4gKiAgIC0gYGhleGA6IHJhdyBmaXJzdCA4IGhleCBjaGFyYWN0ZXJzLlxuICpcbiAqIGBiYXNlMzZgIGlzIHRoZSBkZWZhdWx0IGJlY2F1c2UgaXQgbWF0Y2hlcyBSb2xsdXAncyBvd24gZGVmYXVsdCBhbmQgcHJvZHVjZXNcbiAqIHRoZSBzaG9ydGVzdCBoYXNoIGZvciB0aGUgc2FtZSBpbnB1dCBzcGFjZSwgd2hpY2gga2VlcHMgZ2VuZXJhdGVkIG1vZHVsZSBJRHNcbiAqIGNvbXBhY3QgaW4gc291cmNlIG1hcHMgYW5kIGltcG9ydCBncmFwaHMuXG4gKi9cbmV4cG9ydCBjb25zdCBjcmVhdGVSb2xsdXBMaWtlSGFzaCA9IChcbiAgY29udGVudDogc3RyaW5nLFxuICBoYXNoQ2hhcmFjdGVyczogXCJiYXNlMzZcIiB8IFwiYmFzZTY0XCIgfCBcImhleFwiID0gXCJiYXNlMzZcIixcbikgPT4ge1xuICBjb25zdCBoYXNoID0gY3JlYXRlSGFzaChcInNoYTFcIik7XG4gIGhhc2gudXBkYXRlKGNvbnRlbnQpO1xuICBjb25zdCBmdWxsSGFzaCA9IGhhc2guZGlnZXN0KFwiaGV4XCIpO1xuXG4gIC8vIEFwcGx5IHRoZSBzYW1lIGNoYXJhY3RlciBzZXQgbG9naWMgYXMgUm9sbHVwXG4gIHN3aXRjaCAoaGFzaENoYXJhY3RlcnMpIHtcbiAgICBjYXNlIFwiYmFzZTM2XCI6XG4gICAgICAvLyBDb252ZXJ0IGhleCB0byBiYXNlMzYgKDAtOSwgYS16KVxuICAgICAgcmV0dXJuIHBhcnNlSW50KGZ1bGxIYXNoLnN1YnN0cmluZygwLCA4KSwgMTYpLnRvU3RyaW5nKDM2KTtcbiAgICBjYXNlIFwiYmFzZTY0XCI6XG4gICAgICAvLyBDb252ZXJ0IHRvIGJhc2U2NC1saWtlIGZvcm1hdCAoQS1aLCBhLXosIDAtOSwgLSwgXylcbiAgICAgIHJldHVybiBCdWZmZXIuZnJvbShmdWxsSGFzaC5zdWJzdHJpbmcoMCwgOCksIFwiaGV4XCIpXG4gICAgICAgIC50b1N0cmluZyhcImJhc2U2NFwiKVxuICAgICAgICAucmVwbGFjZSgvXFwrL2csIFwiLVwiKVxuICAgICAgICAucmVwbGFjZSgvXFwvL2csIFwiX1wiKVxuICAgICAgICAucmVwbGFjZSgvPS9nLCBcIlwiKTtcbiAgICBjYXNlIFwiaGV4XCI6XG4gICAgZGVmYXVsdDpcbiAgICAgIC8vIFJldHVybiBoZXggZm9ybWF0XG4gICAgICByZXR1cm4gZnVsbEhhc2guc3Vic3RyaW5nKDAsIDgpO1xuICB9XG59O1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFxQk8sTUFBTSxvQkFBdUIsR0FBQSxDQUNsQyxPQUNBLEVBQUEsY0FBQSxHQUE4QyxRQUMzQyxLQUFBO0FBQ0gsRUFBTSxNQUFBLElBQUEsR0FBTyxXQUFXLE1BQU0sQ0FBQTtBQUM5QixFQUFBLElBQUEsQ0FBSyxPQUFPLE9BQU8sQ0FBQTtBQUNuQixFQUFNLE1BQUEsUUFBQSxHQUFXLElBQUssQ0FBQSxNQUFBLENBQU8sS0FBSyxDQUFBO0FBR2xDLEVBQUEsUUFBUSxjQUFnQjtBQUFBLElBQ3RCLEtBQUssUUFBQTtBQUVILE1BQU8sT0FBQSxRQUFBLENBQVMsU0FBUyxTQUFVLENBQUEsQ0FBQSxFQUFHLENBQUMsQ0FBRyxFQUFBLEVBQUUsQ0FBRSxDQUFBLFFBQUEsQ0FBUyxFQUFFLENBQUE7QUFBQSxJQUMzRCxLQUFLLFFBQUE7QUFFSCxNQUFPLE9BQUEsTUFBQSxDQUFPLEtBQUssUUFBUyxDQUFBLFNBQUEsQ0FBVSxHQUFHLENBQUMsQ0FBQSxFQUFHLEtBQUssQ0FBQSxDQUMvQyxRQUFTLENBQUEsUUFBUSxFQUNqQixPQUFRLENBQUEsS0FBQSxFQUFPLEdBQUcsQ0FDbEIsQ0FBQSxPQUFBLENBQVEsT0FBTyxHQUFHLENBQUEsQ0FDbEIsT0FBUSxDQUFBLElBQUEsRUFBTSxFQUFFLENBQUE7QUFBQSxJQUNyQixLQUFLLEtBQUE7QUFBQSxJQUNMO0FBRUUsTUFBTyxPQUFBLFFBQUEsQ0FBUyxTQUFVLENBQUEsQ0FBQSxFQUFHLENBQUMsQ0FBQTtBQUFBO0FBRXBDOzs7OyJ9