Urara-Blog/node_modules/.pnpm-store/v3/files/ff/cbd8ef68312f9d4561965a38b246fd5b85f4b73fe7c6488c8e28cb549d6e9954313072ed7b2c83311c48a6903fb52e0a2e1d1881c556c2b3b685cdadc8aff4
2022-08-14 01:14:53 +08:00

33 lines
859 B
Text

/*
Copyright 2018 Google LLC
Use of this source code is governed by an MIT-style
license that can be found in the LICENSE file or at
https://opensource.org/licenses/MIT.
*/
import prettyBytes from 'pretty-bytes';
import {ManifestTransform} from '../types';
export function maximumSizeTransform(
maximumFileSizeToCacheInBytes: number,
): ManifestTransform {
return (originalManifest) => {
const warnings: Array<string> = [];
const manifest = originalManifest.filter((entry) => {
if (entry.size <= maximumFileSizeToCacheInBytes) {
return true;
}
warnings.push(
`${entry.url} is ${prettyBytes(entry.size)}, and won't ` +
`be precached. Configure maximumFileSizeToCacheInBytes to change ` +
`this limit.`,
);
return false;
});
return {manifest, warnings};
};
}