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.2KB

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