You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

serviceworker_js.tmpl 3.4KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. var STATIC_CACHE = 'static-cache-v1';
  2. var urlsToCache = [
  3. // js
  4. '{{StaticUrlPrefix}}/fomantic/semantic.min.js?v={{MD5 AppVer}}',
  5. '{{StaticUrlPrefix}}/js/gitgraph.js',
  6. '{{StaticUrlPrefix}}/js/index.js?v={{MD5 AppVer}}',
  7. '{{StaticUrlPrefix}}/js/jquery.js?v={{MD5 AppVer}}',
  8. '{{StaticUrlPrefix}}/js/swagger.js?v={{MD5 AppVer}}',
  9. '{{StaticUrlPrefix}}/vendor/plugins/clipboard/clipboard.min.js',
  10. '{{StaticUrlPrefix}}/vendor/plugins/codemirror/addon/mode/loadmode.js',
  11. '{{StaticUrlPrefix}}/vendor/plugins/codemirror/mode/meta.js',
  12. '{{StaticUrlPrefix}}/vendor/plugins/dropzone/dropzone.js',
  13. '{{StaticUrlPrefix}}/vendor/plugins/emojify/emojify.custom.js',
  14. '{{StaticUrlPrefix}}/vendor/plugins/highlight/highlight.pack.js',
  15. '{{StaticUrlPrefix}}/vendor/plugins/jquery.areyousure/jquery.are-you-sure.js',
  16. '{{StaticUrlPrefix}}/vendor/plugins/jquery.datetimepicker/jquery.datetimepicker.js',
  17. '{{StaticUrlPrefix}}/vendor/plugins/jquery.minicolors/jquery.minicolors.min.js',
  18. '{{StaticUrlPrefix}}/vendor/plugins/simplemde/simplemde.min.js',
  19. '{{StaticUrlPrefix}}/vendor/plugins/vue/vue.min.js',
  20. // css
  21. '{{StaticUrlPrefix}}/css/gitgraph.css',
  22. '{{StaticUrlPrefix}}/css/index.css?v={{MD5 AppVer}}',
  23. '{{StaticUrlPrefix}}/css/swagger.css?v={{MD5 AppVer}}',
  24. '{{StaticUrlPrefix}}/fomantic/semantic.min.css?v={{MD5 AppVer}}',
  25. '{{StaticUrlPrefix}}/vendor/assets/font-awesome/css/font-awesome.min.css',
  26. '{{StaticUrlPrefix}}/vendor/assets/octicons/octicons.min.css',
  27. '{{StaticUrlPrefix}}/vendor/plugins/dropzone/dropzone.css',
  28. '{{StaticUrlPrefix}}/vendor/plugins/highlight/github.css',
  29. '{{StaticUrlPrefix}}/vendor/plugins/jquery.datetimepicker/jquery.datetimepicker.css',
  30. '{{StaticUrlPrefix}}/vendor/plugins/jquery.minicolors/jquery.minicolors.css',
  31. '{{StaticUrlPrefix}}/vendor/plugins/simplemde/simplemde.min.css',
  32. '{{StaticUrlPrefix}}/vendor/plugins/tribute/tribute.css',
  33. {{if .IsSigned }}
  34. {{ if ne .SignedUser.Theme "gitea" }}
  35. '{{StaticUrlPrefix}}/css/theme-{{.SignedUser.Theme}}.css?v={{MD5 AppVer}}',
  36. {{end}}
  37. {{else if ne DefaultTheme "gitea"}}
  38. '{{StaticUrlPrefix}}/css/theme-{{DefaultTheme}}.css?v={{MD5 AppVer}}',
  39. {{end}}
  40. // img
  41. '{{StaticUrlPrefix}}/img/gitea-sm.png',
  42. '{{StaticUrlPrefix}}/img/gitea-lg.png',
  43. // fonts
  44. '{{StaticUrlPrefix}}/fomantic/themes/default/assets/fonts/icons.woff2',
  45. '{{StaticUrlPrefix}}/vendor/assets/octicons/octicons.woff2?ef21c39f0ca9b1b5116e5eb7ac5eabe6',
  46. '{{StaticUrlPrefix}}/vendor/assets/roboto-fonts/roboto-v20-latin-ext_cyrillic-ext_latin_greek_vietnamese_cyrillic_greek-ext-regular.woff2',
  47. '{{StaticUrlPrefix}}/vendor/assets/roboto-fonts/roboto-v20-latin-ext_cyrillic-ext_latin_greek_vietnamese_cyrillic_greek-ext-italic.woff2',
  48. '{{StaticUrlPrefix}}/vendor/assets/roboto-fonts/roboto-v20-latin-ext_cyrillic-ext_latin_greek_vietnamese_cyrillic_greek-ext-700.woff2',
  49. '{{StaticUrlPrefix}}/vendor/assets/roboto-fonts/roboto-v20-latin-ext_cyrillic-ext_latin_greek_vietnamese_cyrillic_greek-ext-700italic.woff2'
  50. ];
  51. self.addEventListener('install', function (event) {
  52. // Perform install steps
  53. event.waitUntil(
  54. caches.open(STATIC_CACHE)
  55. .then(function (cache) {
  56. return cache.addAll(urlsToCache);
  57. })
  58. );
  59. });
  60. self.addEventListener('fetch', function (event) {
  61. event.respondWith(
  62. caches.match(event.request)
  63. .then(function (response) {
  64. // Cache hit - return response
  65. if (response) {
  66. return response;
  67. }
  68. return fetch(event.request);
  69. }
  70. )
  71. );
  72. });