aboutsummaryrefslogtreecommitdiff
path: root/node_modules/workbox-build/src/index.js
diff options
context:
space:
mode:
authorruki <waruqi@gmail.com>2018-11-08 00:38:48 +0800
committerruki <waruqi@gmail.com>2018-11-07 21:53:09 +0800
commit26105034da4fcce7ac883c899d781f016559310d (patch)
treec459a5dc4e3aa0972d9919033ece511ce76dd129 /node_modules/workbox-build/src/index.js
parent2c77f00f1a7ecb6c8192f9c16d3b2001b254a107 (diff)
downloadxmake-docs-26105034da4fcce7ac883c899d781f016559310d.tar.gz
xmake-docs-26105034da4fcce7ac883c899d781f016559310d.zip
switch to vuepress
Diffstat (limited to 'node_modules/workbox-build/src/index.js')
-rw-r--r--node_modules/workbox-build/src/index.js88
1 files changed, 88 insertions, 0 deletions
diff --git a/node_modules/workbox-build/src/index.js b/node_modules/workbox-build/src/index.js
new file mode 100644
index 00000000..c9d125f7
--- /dev/null
+++ b/node_modules/workbox-build/src/index.js
@@ -0,0 +1,88 @@
+/*
+ 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 copyWorkboxLibraries = require('./lib/copy-workbox-libraries');
+const generateSW = require('./entry-points/generate-sw');
+const generateSWString = require('./entry-points/generate-sw-string');
+const getManifest = require('./entry-points/get-manifest');
+const injectManifest = require('./entry-points/inject-manifest');
+const {getModuleUrl} = require('./lib/cdn-utils');
+
+/**
+ * This Node module can be used to generate a list of assets that should be
+ * precached in a service worker, generating a hash that can be used to
+ * intelligently update a cache when the service worker is updated.
+ *
+ * This module will use glob patterns to find assets in a given directory
+ * and use the resulting URL and revision data for one of the follow uses:
+ *
+ * 1. Generate a complete service worker with precaching and some basic
+ * configurable options, writing the resulting service worker file to disk. See
+ * [generateSW()]{@link module:workbox-build.generateSW}.
+ * 1. Generate a complete service worker with precaching and some basic
+ * configurable options, without writing the results to disk. See
+ * [generateSWString()]{@link module:workbox-build.generateSWString}.
+ * 1. Inject a manifest into an existing service worker. This allows you
+ * to control your own service worker while still taking advantage of
+ * [workboxSW.precache()]{@link module:workbox-sw.WorkboxSW#precache} logic.
+ * See [injectManifest()]{@link module:workbox-build.injectManifest}.
+ * 1. Just generate a manifest, not a full service worker file.
+ * This is useful if you want to make use of the manifest from your own existing
+ * service worker file and are okay with including the manifest yourself.
+ * See [getManifest()]{@link module:workbox-build.getManifest}.
+ *
+ * @property {Array<RegExp>} [ignoreUrlParametersMatching=[/^utm_/]] Any
+ * search parameter names that match against one of the regex's in this array
+ * will be removed before looking for a precache match.
+ *
+ * This is useful if your users might request URLs that contain, for example,
+ * URL parameters used to track the source of the traffic. Those URL parameters
+ * would normally cause the cache lookup to fail, since the URL strings used
+ * as cache keys would not be expected to include them.
+ *
+ * You can use `[/./]` to ignore all URL parameters.
+ *
+ * Note: This option is only valid when used with
+ * {@link module:workbox-build#generateSW|generateSW()}. When using
+ * {@link module:workbox-build.injectManifest|injectManifest()}, you can
+ * explicitly pass the desired value in to the
+ * {@link module:workbox-sw.WorkboxSW|WorkboxSW() constructor} in your `swSrc`
+ * file.
+ *
+ * E.g. `[/homescreen/]`
+ *
+ * @property {Boolean} [handleFetch=true] Whether or not `workbox-sw` should
+ * create a `fetch` event handler that responds to network requests. This is
+ * useful during development if you don't want the service worker serving stale
+ * content.
+ *
+ * Note: This option is only valid when used with
+ * {@link module:workbox-build#generateSW|generateSW()}. When using
+ * {@link module:workbox-build.injectManifest|injectManifest()}, you can
+ * explicitly pass the desired value in to the
+ * {@link module:workbox-sw.WorkboxSW|WorkboxSW() constructor} in your `swSrc`
+ * file.
+ *
+ * @module workbox-build
+ */
+module.exports = {
+ copyWorkboxLibraries,
+ generateSW,
+ generateSWString,
+ getManifest,
+ getModuleUrl,
+ injectManifest,
+};