serviceworker.js 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. var STATIC_CACHE = 'gitote-sw-cache';
  2. var urlsToCache = [
  3. // js
  4. 'expansion/expansion.js',
  5. 'https://cdn.gitote.in/js/gitote.min.js',
  6. 'https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js',
  7. 'https://cdnjs.cloudflare.com/ajax/libs/jquery.AreYouSure/1.9.0/jquery.are-you-sure.min.js',
  8. 'https://cdnjs.cloudflare.com/ajax/libs/semantic-ui/2.3.1/semantic.min.js',
  9. 'https://cdn.gitote.in/plugins/highlight/highlight.pack.js',
  10. 'https://cdnjs.cloudflare.com/ajax/libs/emojify.js/1.1.0/js/emojify.min.js',
  11. 'https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/1.5.9/clipboard.min.js',
  12. 'https://cdn.jsdelivr.net/npm/notebookjs@0.3.0/notebook.min.js',
  13. 'https://cdnjs.cloudflare.com/ajax/libs/marked/0.3.6/marked.min.js',
  14. 'https://cdnjs.cloudflare.com/ajax/libs/simplemde/1.10.1/simplemde.min.js',
  15. 'https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.17.0/addon/mode/loadmode.js',
  16. 'https://cdnjs.cloudflare.com/ajax/libs/codemirror/5.17.0/mode/meta.js',
  17. 'https://cdnjs.cloudflare.com/ajax/libs/autosize.js/4.0.2/autosize.min.js',
  18. 'https://cdnjs.cloudflare.com/ajax/libs/dropzone/4.2.0/dropzone.js',
  19. 'https://cdn.gitote.in/plugins/datetimepicker/jquery.datetimepicker.js',
  20. 'https://cdnjs.cloudflare.com/ajax/libs/jquery-minicolors/2.2.3/jquery.minicolors.min.js',
  21. // css
  22. '/css/gitote.min.css',
  23. 'https://cdn.gitote.in/css/bundle.min.css',
  24. 'https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.6.3/css/font-awesome.min.css',
  25. 'https://cdn.gitote.in/plugins/octicons/octicons.min.css',
  26. 'https://cdn.gitote.in/plugins/highlight/github.css',
  27. 'https://cdnjs.cloudflare.com/ajax/libs/simplemde/1.10.1/simplemde.min.css',
  28. 'https://cdnjs.cloudflare.com/ajax/libs/dropzone/4.2.0/dropzone.css',
  29. 'https://cdn.gitote.in/plugins/datetimepicker/jquery.datetimepicker.css',
  30. 'https://cdnjs.cloudflare.com/ajax/libs/jquery-minicolors/2.2.3/jquery.minicolors.min.css',
  31. // img
  32. '/fluidicon.png',
  33. '/og.png',
  34. '/black.png',
  35. 'https://cdn.gitote.in/logo.png',
  36. 'https://cdn.gitote.in/img/404.png',
  37. 'https://cdn.gitote.in/logo.svg',
  38. 'https://cdn.gitote.in/img/500.png',
  39. // misc
  40. '/favicon.ico',
  41. ];
  42. self.addEventListener('install', function (event) {
  43. event.waitUntil(
  44. caches.open(STATIC_CACHE)
  45. .then(function (cache) {
  46. return cache.addAll(urlsToCache);
  47. })
  48. );
  49. });
  50. self.addEventListener('fetch', function (event) {
  51. event.respondWith(
  52. caches.match(event.request)
  53. .then(function (response) {
  54. if (response) {
  55. return response;
  56. }
  57. return fetch(event.request);
  58. }
  59. )
  60. );
  61. });