2024-11-13 17:03:38 -08:00
|
|
|
{{/*
|
2024-08-07 08:13:56 -10:00
|
|
|
|
|
|
|
Emit an HTML script element referring to a JavaScript resource. The resource can
|
|
|
|
be either a path or a Hugo Resource object. If the former, the resource will be
|
|
|
|
looked up and built.
|
2024-08-08 09:55:08 -10:00
|
|
|
|
2024-08-07 08:13:56 -10:00
|
|
|
@context {string|Resource} resource
|
|
|
|
The Resource
|
2024-08-08 09:55:08 -10:00
|
|
|
@context {bool} minify
|
|
|
|
If true and the resource is a string, it will be minified as part of the build
|
|
|
|
step.
|
|
|
|
@context {bool} module
|
2024-08-07 08:13:56 -10:00
|
|
|
If true, add information to the script element indicating it should be loaded
|
|
|
|
as a module
|
|
|
|
|
2024-11-13 17:03:38 -08:00
|
|
|
*/}}
|
2024-08-03 16:17:44 -07:00
|
|
|
|
|
|
|
{{- $resource := .resource -}}
|
2024-08-08 09:55:08 -10:00
|
|
|
{{- $shouldMinify := .minify -}}
|
2024-08-08 10:15:59 -10:00
|
|
|
{{- $isModule := .module | default false -}}
|
2024-08-07 08:13:56 -10:00
|
|
|
|
2024-11-14 08:49:09 -08:00
|
|
|
{{- if eq (printf "%T" $resource) "string" }}
|
2024-08-08 09:55:08 -10:00
|
|
|
{{
|
|
|
|
$resource = partial "resource_builders/build_js.html"
|
|
|
|
(dict "resource" $resource "minify" $shouldMinify)
|
|
|
|
}}
|
2024-11-14 08:49:09 -08:00
|
|
|
{{- end -}}
|
2024-08-03 16:17:44 -07:00
|
|
|
|
2024-11-14 08:49:09 -08:00
|
|
|
{{- with $resource }}
|
|
|
|
{{- if eq hugo.Environment "development" }}
|
|
|
|
<script src="{{ .RelPermalink }}"
|
|
|
|
{{- if $isModule }} type="module"{{ end -}}
|
|
|
|
></script>
|
|
|
|
{{- else }}
|
|
|
|
<script src="{{ .RelPermalink }}" crossorigin="anonymous"
|
|
|
|
{{- if $isModule }} type="module"{{ end }}
|
|
|
|
{{- with .Data.Integrity }} integrity="{{ . }}"{{ end -}}
|
|
|
|
></script>
|
|
|
|
{{- end }}
|
|
|
|
{{- end -}}
|