| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
parent directory.. | ||||
To use the bit Bswup, please follow these steps:
dotnet add package Bit.Bswupapp.UseStaticFiles(new StaticFileOptions
{
OnPrepareResponse = ctx =>
{
ctx.Context.Response.GetTypedHeaders().CacheControl = new CacheControlHeaderValue()
{
NoCache = true
};
}
});<script src="_framework/blazor.webassembly.js" autostart="false"></script><script src="_content/Bit.Bswup/bit-bswup.js"
scope="/"
log="verbose"
sw="service-worker.js"
handler="bitBswupHandler"></script>You can remove any of these attributes, and use the default values mentioned above.
const appEl = document.getElementById('app');
const bswupEl = document.getElementById('bit-bswup');
const progressBar = document.getElementById('bit-bswup-progress-bar');
const reloadButton = document.getElementById('bit-bswup-reload');
function bitBswupHandler(type, data) {
switch (type)
{
case BswupMessage.updateFound: return console.log('an update found.');
case BswupMessage.stateChanged: return console.log('state has changed to:', data.currentTarget.state);
case BswupMessage.activate: return console.log('new version activated:', data.version);
case BswupMessage.downloadStarted:
appEl.style.display = 'none';
bswupEl.style.display = 'block';
return console.log('downloading assets started:', data?.version);
case BswupMessage.downloadProgress:
progressBar.style.width = `${percent}%`;
return console.log('asset downloaded:', data);
case BswupMessage.downloadFinished:
if (data.firstInstall) {
data.reload().then(() => {
appEl.style.display = 'block';
bswupEl.style.display = 'none';
});
} else {
reloadButton.style.display = 'block';
reloadButton.onclick = data.reload;
}
return console.log('downloading assets finished.');
case BswupMessage.updateReady:
reloadButton.style.display = 'block';
reloadButton.onclick = data.reload;
return console.log('new update ready.');
}
}self.assetsInclude = [];
self.assetsExclude = [/\.scp\.css$/, /weather\.json$/];
self.defaultUrl = 'index.html';
self.prohibitedUrls = [];
self.assetsUrl = '/service-worker-assets.js';
self.externalAssets = [
{
"url": "/"
},
{
"url": "https://www.googletagmanager.com/gtag/js?id=G-G1ET5L69QF"
}
];
self.caseInsensitiveUrl = true;
self.serverHandledUrls = [/\/api\//];
self.serverRenderedUrls = [/\/privacy$/];
self.noPrerenderQuery = 'no-prerender=true';
self.importScripts('_content/Bit.Bswup/bit-bswup.sw.js');The most important line of code which is the only mandatory config in this file is the last line of importing the Bswup service-worker file:
self.importScripts('_content/Bit.Bswup/bit-bswup.sw.js');The other settings are:
[/\.dll$/, /\.pdb$/, /\.wasm/, /\.html/, /\.js$/, /\.json$/, /\.css$/, /\.woff$/, /\.png$/, /\.jpe?g$/, /\.gif$/, /\.ico$/, /\.blat$/, /\.dat$/, /\.svg$/, /\.woff2$/, /\.ttf$/, /\.webp$/][/^_content\/Bit\.Bswup\/bit-bswup\.sw\.js$/, /^service-worker\.js$/]| Back | FazBrowse Home | New Git URL |