Hugo-book, (simple) js shenanigans

Hi,
I’m trying to bundle all assets that can be bundled, but there are some js files, that I don’t understand (the theme author is as good as dead it seems :expressionless:). How would you inline sw.js below, so that it doesn’t appear in /public ?

{{- $swJS := resources.Get "sw.js" | resources.ExecuteAsTemplate "sw.js" . -}}
if (navigator.serviceWorker) {
  navigator.serviceWorker.register(
    "{{ $swJS.RelPermalink }}", 
    { scope: "{{ "/" | relURL }}" }
  );
}

So that it gets bundled up with this:

{{$searchjs := resources.Get "js/search.js"}}
{{$menuresetjs := resources.Get "js/menu-reset.js"}}
{{$flexsearchjs := resources.Get "js/flexsearch.min.js"}}
{{$clipboardjs := resources.Get "js/clipboard.js"}}
{{$swregisterjs := resources.Get "js/sw-register.js"}}
{{- $styles := resources.Get "main.scss" | resources.ExecuteAsTemplate "main.scss" . | resources.ToCSS (dict "transpiler" "dartsass") | minify | fingerprint "md5"  }}
{{- $bundlejs := slice $searchjs $menuresetjs $flexsearchjs $clipboardjs $swregisterjs | resources.Concat "js/bundle.js" | resources.ExecuteAsTemplate "js/bundle.js" . | minify | fingerprint "md5" }}

Thanks, It should a cakewalk for you folk :wink:

sw.js is a service worker. You can’t bundle it.

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.