Files
summercms/admin/tests/fixtures/deferred.form-schema.json
Jakub Zych ea33296799 feat(12.2-04): add the fileupload field with deferred uploads on the form session key
- sessionKey.ts: one 32-byte base64url key per form mount, sent only in headers
- api/files.ts: FileRoutes over the record and child file routes, XHR upload with progress, 401 refresh and retry
- FileuploadField and FileCaptionModal per UI-SPEC section 3: dropzone, image grid, rows, per-item states, client pre-checks, reorder, protected previews
- FormView provides FORM_SESSION, counts pending changes as dirty and sends X-Session-Key on create and update
- fileupload lang keys in en and pl, admin-spa docs note, deferred smoke test, rebuilt dist
2026-10-02 19:22:22 +02:00

69 lines
1.3 KiB
JSON

{
"data": {
"name": "Gadget",
"fields": [
{
"name": "name",
"label": "Name",
"type": "text",
"required": true
},
{
"name": "photos",
"label": "Photos",
"type": "fileupload",
"mode": "image",
"multiple": true,
"maxFiles": 3,
"fileTypes": [
"jpg",
"png"
],
"maxFilesize": 2,
"thumbOptions": {
"mode": "crop"
},
"useCaption": true
}
],
"messages": {
"create": {
"other": "New gadget"
},
"update": {
"other": "Editing gadget"
},
"saved": {
"other": "Gadget „:name” saved"
},
"deleteConfirm": {
"other": "Delete this gadget?"
},
"deleted": {
"other": "Gadget deleted"
}
},
"meta": {
"locale": "en"
},
"assets": {
"scripts": [],
"styles": []
},
"redirects": {
"create": {
"redirect": "acme/demo/gadgets/update/:id",
"redirectClose": "acme/demo/gadgets"
},
"update": {
"redirect": "acme/demo/gadgets",
"redirectClose": "acme/demo/gadgets"
},
"default": "acme/demo/gadgets"
}
},
"meta": {
"locale": "en"
}
}