This repository has been archived on 2026-04-03. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
core/server/pages/templates/components/file-upload.html
Jeffrey Smith 45fe965c32 Changeset 0.22.5 (#147)
Co-authored-by: Jeffrey Smith <jasafpro@gmail.com>
Co-committed-by: Jeffrey Smith <jasafpro@gmail.com>
2026-03-03 09:58:23 +00:00

30 lines
1.1 KiB
HTML

{{/*
Reusable file upload component (v0.23.0).
Renders a drop zone + file picker button.
Expects dict with:
FieldName — unique ID for the input (e.g. "workspace-upload")
Label — optional label text
Multiple — bool, allow multiple files
Accept — optional file type filter (e.g. ".md,.txt,.go")
DropZone — bool, show drag-and-drop zone
*/}}
{{define "file-upload"}}
<div class="file-upload-wrap" id="{{.FieldName}}Wrap">
{{if .Label}}<label class="form-group-label">{{.Label}}</label>{{end}}
<input type="file" id="{{.FieldName}}Input"
{{if .Multiple}}multiple{{end}}
{{if .Accept}}accept="{{.Accept}}"{{end}}
style="display:none">
<button type="button" class="btn-small btn-primary"
onclick="document.getElementById('{{.FieldName}}Input').click()">
Choose files…
</button>
{{if .DropZone}}
<div class="file-upload-drop" id="{{.FieldName}}Drop">
Drop files here or click above
</div>
{{end}}
</div>
{{end}}