diff --git a/packages/ui-components/package.json b/packages/ui-components/package.json index 6235ce5011b40..352ef6f559df1 100644 --- a/packages/ui-components/package.json +++ b/packages/ui-components/package.json @@ -1,6 +1,6 @@ { "name": "@node-core/ui-components", - "version": "1.6.2", + "version": "1.6.3", "type": "module", "exports": { "./*": { diff --git a/packages/ui-components/src/Common/Signature/SignatureRoot/index.module.css b/packages/ui-components/src/Common/Signature/SignatureRoot/index.module.css index 15d730563dc28..fa97a8e31f87b 100644 --- a/packages/ui-components/src/Common/Signature/SignatureRoot/index.module.css +++ b/packages/ui-components/src/Common/Signature/SignatureRoot/index.module.css @@ -12,7 +12,8 @@ } .root { - @apply flex + @apply mb-3 + flex flex-col gap-4 rounded-sm diff --git a/packages/ui-components/src/Containers/FunctionSignature/index.stories.tsx b/packages/ui-components/src/Containers/FunctionSignature/index.stories.tsx index 4aebee4bdee88..49ae8a3efca08 100644 --- a/packages/ui-components/src/Containers/FunctionSignature/index.stories.tsx +++ b/packages/ui-components/src/Containers/FunctionSignature/index.stories.tsx @@ -118,6 +118,17 @@ export const Nested: Story = { }, ], }, + { + name: 'Returns', + kind: 'return', + description: 'description', + type: ( + <> + <Promise>| + <AsyncIterable> + + ), + }, ], }, }; diff --git a/packages/ui-components/src/Containers/FunctionSignature/index.tsx b/packages/ui-components/src/Containers/FunctionSignature/index.tsx index 96eeaf00b53be..0f661394643d8 100644 --- a/packages/ui-components/src/Containers/FunctionSignature/index.tsx +++ b/packages/ui-components/src/Containers/FunctionSignature/index.tsx @@ -29,10 +29,26 @@ const renderSignature = (param: SignatureDefinition, index: number) => ( const FunctionSignature: FC = ({ title, items }) => { if (title) { + const attributes: Array = []; + const returnTypes: Array = []; + + for (const item of items) { + const target = item.kind === 'return' ? returnTypes : attributes; + + target.push(item); + } + return ( - - {items.map((param, i) => renderSignature(param, i))} - + <> + + {attributes.map((param, i) => renderSignature(param, i))} + + + {returnTypes.length > 0 && + returnTypes.map((param, i) => + renderSignature(param, attributes.length + i) + )} + ); }