diff options
Diffstat (limited to 'node_modules/workbox-build/src/lib/maximum-size-transform.js')
| -rw-r--r-- | node_modules/workbox-build/src/lib/maximum-size-transform.js | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/node_modules/workbox-build/src/lib/maximum-size-transform.js b/node_modules/workbox-build/src/lib/maximum-size-transform.js new file mode 100644 index 00000000..2924ef22 --- /dev/null +++ b/node_modules/workbox-build/src/lib/maximum-size-transform.js @@ -0,0 +1,35 @@ +/* + Copyright 2017 Google Inc. + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + https://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ + +const prettyBytes = require('pretty-bytes'); + +module.exports = (maximumFileSizeToCacheInBytes) => { + return (originalManifest) => { + const warnings = []; + 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}; + }; +}; |
