From c850b8c5ad110421d2ad68898452e8fef5321cd8 Mon Sep 17 00:00:00 2001 From: Alexander Harris Date: Mon, 1 Nov 2021 18:30:28 -0700 Subject: [PATCH] fix: only import props type for top-level component --- .../studio-ui-codegen-react.test.ts.snap | 33 ------------------- .../lib/amplify-ui-renderers/collection.ts | 1 - .../amplify-ui-renderers/customComponent.ts | 1 - .../lib/amplify-ui-renderers/text.ts | 1 - .../lib/react-component-renderer.ts | 1 - .../react-component-with-children-renderer.ts | 1 - .../lib/react-studio-template-renderer.ts | 7 ++-- 7 files changed, 5 insertions(+), 40 deletions(-) diff --git a/packages/studio-ui-codegen-react/lib/__tests__/__snapshots__/studio-ui-codegen-react.test.ts.snap b/packages/studio-ui-codegen-react/lib/__tests__/__snapshots__/studio-ui-codegen-react.test.ts.snap index 9bfd4dd93..c12318806 100644 --- a/packages/studio-ui-codegen-react/lib/__tests__/__snapshots__/studio-ui-codegen-react.test.ts.snap +++ b/packages/studio-ui-codegen-react/lib/__tests__/__snapshots__/studio-ui-codegen-react.test.ts.snap @@ -6,12 +6,10 @@ Object { import React from \\"react\\"; import { Button, - ButtonProps, EscapeHatchProps, Flex, FlexProps, Heading, - HeadingProps, findChildOverrides, getOverrideProps, } from \\"@aws-amplify/ui-react\\"; @@ -149,12 +147,10 @@ import React from \\"react\\"; import { User, UserPreferences } from \\"../models\\"; import { Button, - ButtonProps, Collection, CollectionProps, EscapeHatchProps, Flex, - FlexProps, getOverrideProps, useDataStoreBinding, } from \\"@aws-amplify/ui-react\\"; @@ -237,12 +233,10 @@ import React from \\"react\\"; import { User, UserPreferences } from \\"../models\\"; import { Button, - ButtonProps, Collection, CollectionProps, EscapeHatchProps, Flex, - FlexProps, getOverrideProps, useDataStoreBinding, } from \\"@aws-amplify/ui-react\\"; @@ -422,7 +416,6 @@ import { CollectionProps, EscapeHatchProps, ListingCard, - ListingCardProps, findChildOverrides, getOverrideProps, useDataStoreBinding, @@ -480,7 +473,6 @@ import { CollectionProps, EscapeHatchProps, ListingCard, - ListingCardProps, findChildOverrides, getOverrideProps, } from \\"@aws-amplify/ui-react\\"; @@ -519,7 +511,6 @@ exports[`amplify render tests complex component tests should generate a button w import React from \\"react\\"; import { Button, - ButtonProps, EscapeHatchProps, View, ViewProps, @@ -552,7 +543,6 @@ exports[`amplify render tests complex component tests should generate a componen import React from \\"react\\"; import { CustomButton, - CustomButtonProps, EscapeHatchProps, View, ViewProps, @@ -586,7 +576,6 @@ exports[`amplify render tests complex component tests should generate a componen import React from \\"react\\"; import { Button, - ButtonProps, EscapeHatchProps, View, ViewProps, @@ -622,7 +611,6 @@ import { Flex, FlexProps, Text, - TextProps, getOverrideProps, } from \\"@aws-amplify/ui-react\\"; @@ -670,7 +658,6 @@ exports[`amplify render tests complex examples should render complex sample 2 1` import React from \\"react\\"; import { Box, - BoxProps, EscapeHatchProps, Flex, FlexProps, @@ -741,14 +728,11 @@ exports[`amplify render tests complex examples should render complex sample 3 1` import React from \\"react\\"; import { Box, - BoxProps, EscapeHatchProps, Flex, FlexProps, ReneButton, - ReneButtonProps, Text, - TextProps, findChildOverrides, getOverrideProps, } from \\"@aws-amplify/ui-react\\"; @@ -829,7 +813,6 @@ exports[`amplify render tests complex examples should render complex sample 4 1` import React from \\"react\\"; import { Box, - BoxProps, EscapeHatchProps, Flex, FlexProps, @@ -947,7 +930,6 @@ exports[`amplify render tests complex examples should render complex sample 5 1` import React from \\"react\\"; import { Box, - BoxProps, EscapeHatchProps, Flex, FlexProps, @@ -1004,7 +986,6 @@ import { Flex, FlexProps, Text, - TextProps, getOverrideProps, } from \\"@aws-amplify/ui-react\\"; @@ -1084,9 +1065,7 @@ import { BoxProps, EscapeHatchProps, Image, - ImageProps, Text, - TextProps, findChildOverrides, getOverrideProps, } from \\"@aws-amplify/ui-react\\"; @@ -1157,7 +1136,6 @@ exports[`amplify render tests complex examples should render complex sample 8 1` import React from \\"react\\"; import { Box, - BoxProps, EscapeHatchProps, Flex, FlexProps, @@ -1308,7 +1286,6 @@ import { Flex, FlexProps, Text, - TextProps, getOverrideProps, } from \\"@aws-amplify/ui-react\\"; @@ -1371,7 +1348,6 @@ import { ButtonProps, EscapeHatchProps, Text, - TextProps, getOverrideProps, } from \\"@aws-amplify/ui-react\\"; @@ -1454,7 +1430,6 @@ import { ButtonProps, EscapeHatchProps, Text, - TextProps, getOverrideProps, } from \\"@aws-amplify/ui-react\\"; @@ -1488,7 +1463,6 @@ import { ButtonProps, EscapeHatchProps, Text, - TextProps, getOverrideProps, } from \\"@aws-amplify/ui-react\\"; @@ -1808,7 +1782,6 @@ import { CollectionProps, EscapeHatchProps, Text, - TextProps, getOverrideProps, useDataStoreBinding, } from \\"@aws-amplify/ui-react\\"; @@ -1928,7 +1901,6 @@ exports[`amplify render tests sample code snippet tests should generate a sample import React from \\"react\\"; import { CustomButton, - CustomButtonProps, EscapeHatchProps, View, ViewProps, @@ -1964,12 +1936,10 @@ Object { import React from \\"react\\"; import { Button, - ButtonProps, EscapeHatchProps, Flex, FlexProps, Heading, - HeadingProps, findChildOverrides, getOverrideProps, } from \\"@aws-amplify/ui-react\\"; @@ -2047,7 +2017,6 @@ import React from \\"react\\"; import { EscapeHatchProps, Input, - InputProps, View, ViewProps, findChildOverrides, @@ -2225,12 +2194,10 @@ exports[`amplify render tests user specific attributes should render user specif import React from \\"react\\"; import { Button, - ButtonProps, EscapeHatchProps, Flex, FlexProps, Image, - ImageProps, getOverrideProps, } from \\"@aws-amplify/ui-react\\"; diff --git a/packages/studio-ui-codegen-react/lib/amplify-ui-renderers/collection.ts b/packages/studio-ui-codegen-react/lib/amplify-ui-renderers/collection.ts index 58989a457..50ef1df9a 100644 --- a/packages/studio-ui-codegen-react/lib/amplify-ui-renderers/collection.ts +++ b/packages/studio-ui-codegen-react/lib/amplify-ui-renderers/collection.ts @@ -31,7 +31,6 @@ export default class CollectionRenderer extends ReactComponentWithChildrenRender ); this.importCollection.addImport('@aws-amplify/ui-react', this.component.componentType); - this.importCollection.addImport('@aws-amplify/ui-react', `${this.component.componentType}Props`); return element; } diff --git a/packages/studio-ui-codegen-react/lib/amplify-ui-renderers/customComponent.ts b/packages/studio-ui-codegen-react/lib/amplify-ui-renderers/customComponent.ts index 919d4d0bd..7b1b23982 100644 --- a/packages/studio-ui-codegen-react/lib/amplify-ui-renderers/customComponent.ts +++ b/packages/studio-ui-codegen-react/lib/amplify-ui-renderers/customComponent.ts @@ -30,7 +30,6 @@ export default class CustomComponentRenderer extends ReactComponentWithChildrenR ); this.importCollection.addImport('@aws-amplify/ui-react', this.component.componentType); - this.importCollection.addImport('@aws-amplify/ui-react', `${this.component.componentType}Props`); return element; } diff --git a/packages/studio-ui-codegen-react/lib/amplify-ui-renderers/text.ts b/packages/studio-ui-codegen-react/lib/amplify-ui-renderers/text.ts index 19a9dbe89..f8cfac77a 100644 --- a/packages/studio-ui-codegen-react/lib/amplify-ui-renderers/text.ts +++ b/packages/studio-ui-codegen-react/lib/amplify-ui-renderers/text.ts @@ -30,7 +30,6 @@ export default class TextRenderer extends ReactComponentRenderer { ); this.importCollection.addImport('@aws-amplify/ui-react', this.component.componentType); - this.importCollection.addImport('@aws-amplify/ui-react', `${this.component.componentType}Props`); return element; } diff --git a/packages/studio-ui-codegen-react/lib/react-component-renderer.ts b/packages/studio-ui-codegen-react/lib/react-component-renderer.ts index 3e356f913..24f9e1391 100644 --- a/packages/studio-ui-codegen-react/lib/react-component-renderer.ts +++ b/packages/studio-ui-codegen-react/lib/react-component-renderer.ts @@ -41,7 +41,6 @@ export class ReactComponentRenderer extends ComponentRendererBase extends ComponentWithCh ); this.importCollection.addImport('@aws-amplify/ui-react', this.component.componentType); - this.importCollection.addImport('@aws-amplify/ui-react', `${this.component.componentType}Props`); return element; } diff --git a/packages/studio-ui-codegen-react/lib/react-studio-template-renderer.ts b/packages/studio-ui-codegen-react/lib/react-studio-template-renderer.ts index 81e49fdc8..0aff2d60e 100644 --- a/packages/studio-ui-codegen-react/lib/react-studio-template-renderer.ts +++ b/packages/studio-ui-codegen-react/lib/react-studio-template-renderer.ts @@ -311,10 +311,13 @@ export abstract class ReactStudioTemplateRenderer extends StudioTemplateRenderer return undefined; } + const propsType = `${component.componentType}Props`; + + this.importCollection.addImport('@aws-amplify/ui-react', propsType); + const parameterizedPrimitivePropType = this.getParameterizedPrimitivePropType(component); const primitivePropType = - parameterizedPrimitivePropType || - factory.createTypeReferenceNode(factory.createIdentifier(`${component.componentType}Props`), undefined); + parameterizedPrimitivePropType || factory.createTypeReferenceNode(factory.createIdentifier(propsType), undefined); return factory.createTypeReferenceNode(factory.createIdentifier('Partial'), [primitivePropType]); }