package web import ( "git.jmbit.de/jmb/scanfile/server/web/templui/components/card" "git.jmbit.de/jmb/scanfile/server/web/templui/components/button" "git.jmbit.de/jmb/scanfile/server/web/templui/components/input" "git.jmbit.de/jmb/scanfile/server/web/templui/components/form" "git.jmbit.de/jmb/scanfile/server/internal/sqlc" "fmt" ) templ Index(files []sqlc.File) { @Base("Scanfile") {
@UploadCard()
@FileList(files)
} } templ UploadCard() { @card.Card(card.Props{ID: "upload-card"}) { @card.Header() { @card.Title() { Upload File } } @card.Content() {
@form.Item() {
@form.Label(form.LabelProps{ For: "file", }) { File } @input.Input(input.Props{ ID: "file", Name: "file", Type: input.TypeFile, })
} @form.Item() { @button.Button(button.Props{Type: button.TypeSubmit}) { Submit } }
} } } templ UploadSuccessCard(file sqlc.File) { @card.Card(card.Props{ID: "upload-card"}) { @card.Header() { @card.Title() { Upload Successful } @card.Description() { Name: { file.Name } } } @card.Content() {

ID: { file.ID.String() }

Size: { file.Size } Bytes

@button.Button(button.Props{Type: button.TypeButton, Href: fmt.Sprintf("/files/%s", file.ID.String())}) { Go to file }
} } }