UNPKG

@platform/cell.schema

Version:

URI and database schemas for the `cell.os`.

33 lines (32 loc) 1.07 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ManifestHash = void 0; var common_1 = require("../common"); var sha256 = common_1.Hash.sha256; exports.ManifestHash = { sha256: sha256, files: function (input) { var files = Array.isArray(input) ? input : input.files; var hashes = files.filter(Boolean).map(function (file) { return file.filehash; }); sort(hashes); return sha256(hashes); }, module: function (info, files) { var fileshash = exports.ManifestHash.files(files); return { files: fileshash, module: sha256({ module: info, files: fileshash }), }; }, dir: function (info, files) { var fileshash = exports.ManifestHash.files(files); return { files: fileshash, dir: sha256({ dir: info, files: fileshash }), }; }, }; function sort(hashes) { var collator = new Intl.Collator('en', { usage: 'sort' }); hashes.sort(function (a, b) { return collator.compare(a, b); }); }