SingleAttachmentField component

This commit is contained in:
Adria Navarro 2024-03-27 09:25:37 +01:00
parent ac5bae0e23
commit 21597a44c9
4 changed files with 106 additions and 7 deletions

View File

@ -4226,7 +4226,7 @@
] ]
}, },
"attachmentfield": { "attachmentfield": {
"name": "Attachment", "name": "Attachment list",
"icon": "Attach", "icon": "Attach",
"styles": ["size"], "styles": ["size"],
"requiredAncestors": ["form"], "requiredAncestors": ["form"],
@ -4322,6 +4322,103 @@
} }
] ]
}, },
"singleattachmentfield": {
"name": "Single Attachment",
"icon": "Attach",
"styles": ["size"],
"requiredAncestors": ["form"],
"editable": true,
"size": {
"width": 400,
"height": 200
},
"settings": [
{
"type": "field/attachment_single",
"label": "Field",
"key": "field",
"required": true
},
{
"type": "text",
"label": "Label",
"key": "label"
},
{
"type": "text",
"label": "Help text",
"key": "helpText"
},
{
"type": "text",
"label": "Extensions",
"key": "extensions"
},
{
"type": "number",
"label": "Max attachments",
"key": "maximum",
"min": 1
},
{
"type": "event",
"label": "On change",
"key": "onChange",
"context": [
{
"label": "Field Value",
"key": "value"
}
]
},
{
"type": "boolean",
"label": "Compact",
"key": "compact",
"defaultValue": false
},
{
"type": "boolean",
"label": "Read only",
"key": "disabled",
"defaultValue": false
},
{
"type": "validation/attachment",
"label": "Validation",
"key": "validation"
},
{
"type": "select",
"label": "Layout",
"key": "span",
"defaultValue": 6,
"hidden": true,
"showInBar": true,
"barStyle": "buttons",
"options": [
{
"label": "1 column",
"value": 6,
"barIcon": "Stop",
"barTitle": "1 column"
},
{
"label": "2 columns",
"value": 3,
"barIcon": "ColumnTwoA",
"barTitle": "2 columns"
},
{
"label": "3 columns",
"value": 2,
"barIcon": "ViewColumn",
"barTitle": "3 columns"
}
]
}
]
},
"relationshipfield": { "relationshipfield": {
"name": "Relationship Picker", "name": "Relationship Picker",
"icon": "TaskList", "icon": "TaskList",

View File

@ -16,7 +16,7 @@
[FieldType.LONGFORM]: "longformfield", [FieldType.LONGFORM]: "longformfield",
[FieldType.DATETIME]: "datetimefield", [FieldType.DATETIME]: "datetimefield",
[FieldType.ATTACHMENT]: "attachmentfield", [FieldType.ATTACHMENT]: "attachmentfield",
[FieldType.ATTACHMENT_SINGLE]: "attachmentfield", [FieldType.ATTACHMENT_SINGLE]: "singleattachmentfield",
[FieldType.LINK]: "relationshipfield", [FieldType.LINK]: "relationshipfield",
[FieldType.JSON]: "jsonfield", [FieldType.JSON]: "jsonfield",
[FieldType.BARCODEQR]: "codescanner", [FieldType.BARCODEQR]: "codescanner",
@ -66,11 +66,6 @@
maximum: schema?.constraints?.length?.maximum, maximum: schema?.constraints?.length?.maximum,
} }
}, },
[FieldType.ATTACHMENT_SINGLE]: () => {
return {
type: FieldType.ATTACHMENT_SINGLE,
}
},
} }
const fieldSchema = getFieldSchema(field) const fieldSchema = getFieldSchema(field)

View File

@ -0,0 +1,6 @@
<script>
import { FieldType } from "@budibase/types"
import AttachmentField from "./AttachmentField.svelte"
</script>
<AttachmentField {...$$restProps} type={FieldType.ATTACHMENT_SINGLE} />

View File

@ -9,6 +9,7 @@ export { default as booleanfield } from "./BooleanField.svelte"
export { default as longformfield } from "./LongFormField.svelte" export { default as longformfield } from "./LongFormField.svelte"
export { default as datetimefield } from "./DateTimeField.svelte" export { default as datetimefield } from "./DateTimeField.svelte"
export { default as attachmentfield } from "./AttachmentField.svelte" export { default as attachmentfield } from "./AttachmentField.svelte"
export { default as singleattachmentfield } from "./SingleAttachmentField.svelte"
export { default as relationshipfield } from "./RelationshipField.svelte" export { default as relationshipfield } from "./RelationshipField.svelte"
export { default as passwordfield } from "./PasswordField.svelte" export { default as passwordfield } from "./PasswordField.svelte"
export { default as formstep } from "./FormStep.svelte" export { default as formstep } from "./FormStep.svelte"