diff --git a/package-lock.json b/package-lock.json index f9463617..9d1a7128 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,7 +10,7 @@ "dependencies": { "@apollo/client": "^4.0.9", "@code0-tech/pictor": "^0.15.0", - "@code0-tech/triangulum": "^0.30.2", + "@code0-tech/triangulum": "^0.31.0", "@codemirror/lang-javascript": "^6.2.5", "@codemirror/lint": "^6.9.5", "@icons-pack/react-simple-icons": "^13.13.0", @@ -1954,9 +1954,9 @@ "peer": true }, "node_modules/@code0-tech/triangulum": { - "version": "0.30.2", - "resolved": "https://registry.npmjs.org/@code0-tech/triangulum/-/triangulum-0.30.2.tgz", - "integrity": "sha512-F0HRpfEpIq8dzd+e0m4uhXagLKGi4gxGGNhuuS2TO6phBlZjtnqHcwxyHISeSNraDIGeJAhlDI9HsHghgtdtBA==", + "version": "0.31.0", + "resolved": "https://registry.npmjs.org/@code0-tech/triangulum/-/triangulum-0.31.0.tgz", + "integrity": "sha512-nqCjxRTLrXRKJh6hBMWl3fjDT/dcuPYxT4URjBjhZjjqzPyfGd1sOpGSHYNmOLoZ+m9tuhDmAhnBzQlWdlmI1A==", "peerDependencies": { "@code0-tech/sagittarius-graphql-types": "0.0.0-experimental-2744343400-55133b9bb6062772c50f83d945a22a531a6e48e2", "@typescript/vfs": "^1.6.4", diff --git a/package.json b/package.json index 46264401..d5b96505 100644 --- a/package.json +++ b/package.json @@ -17,7 +17,7 @@ "dependencies": { "@apollo/client": "^4.0.9", "@code0-tech/pictor": "^0.15.0", - "@code0-tech/triangulum": "^0.30.2", + "@code0-tech/triangulum": "^0.31.0", "@codemirror/lang-javascript": "^6.2.5", "@codemirror/lint": "^6.9.5", "@icons-pack/react-simple-icons": "^13.13.0", diff --git a/src/packages/ce/src/datatype/components/inputs/DataTypeInputComponent.tsx b/src/packages/ce/src/datatype/components/inputs/DataTypeInputComponent.tsx index bdbf5a99..94518472 100644 --- a/src/packages/ce/src/datatype/components/inputs/DataTypeInputComponent.tsx +++ b/src/packages/ce/src/datatype/components/inputs/DataTypeInputComponent.tsx @@ -13,6 +13,7 @@ import {DataTypeSelectInputComponent} from "@edition/datatype/components/inputs/ import {InputWrapperProps} from "@code0-tech/pictor/dist/components/form/InputWrapper"; import {DataTypeNumberInputComponent} from "@edition/datatype/components/inputs/number/DataTypeNumberInputComponent"; import {DataTypeDateInputComponent} from "@edition/datatype/components/inputs/date/DataTypeDateInputComponent"; +import {DataTypeFileInputComponent} from "@edition/datatype/components/inputs/file/DataTypeFileInputComponent"; import {DataTypeJSONInputComponent} from "@edition/datatype/components/inputs/json/DataTypeJSONInputComponent"; import {DataTypeGenericInputComponent} from "@edition/datatype/components/inputs/generic/DataTypeGenericInputComponent"; import { @@ -62,6 +63,12 @@ export const DataTypeInputComponent: React.FC = (pr schema={schema} suggestions={suggestions} {...rest}/> + case "file": + case "list-file": + return case "list": case "data": return ) : <>} - {children ?? <>} + { + (children ?? null as unknown as ReactElement) + } + + + + }> +
+ + {({acceptedFiles}) => acceptedFiles.length <= 0 ? ( + + {title} + + ) : !multiple ? ( + + {acceptedFiles[0]?.name} + + ) : ( + event.stopPropagation()} + py={0.7} + style={{gap: "0.35rem", flexWrap: "wrap", alignItems: "center"}}> + {acceptedFiles.map(file => ( + + + + + + {acceptedFiles.length > 1 && ( + + + + )} + + + ))} + + )} + +
+ + + + + + + , [formValidation, defaultValue]) +}