diff --git a/apps/web/src/components/(marketing)/faster-smarter-beautiful-bento.tsx b/apps/web/src/components/(marketing)/faster-smarter-beautiful-bento.tsx index 2cbaaef53..8b7eaf15c 100644 --- a/apps/web/src/components/(marketing)/faster-smarter-beautiful-bento.tsx +++ b/apps/web/src/components/(marketing)/faster-smarter-beautiful-bento.tsx @@ -16,6 +16,21 @@ export const FasterSmarterBeautifulBento = ({ className, ...props }: FasterSmarterBeautifulBentoProps) => { + const featureCards = [ + { + title: 'Beautiful.', + description: + 'Because signing should be celebrated. That’s why we care about the smallest detail in our product.', + image: cardBeautifulFigure, + }, + { + title: 'Smart.', + description: + 'Our custom templates come with smart rules that can help you save time and energy.', + image: cardSmartFigure, + }, + ]; + return (
@@ -45,32 +60,19 @@ export const FasterSmarterBeautifulBento = ({ - - -

- Beautiful. - Because signing should be celebrated. That’s why we care about the smallest detail in - our product. -

- -
- its fast -
-
-
- - - -

- Smart. - Our custom templates come with smart rules that can help you save time and energy. -

- -
- its fast -
-
-
+ {featureCards.map((card, index) => ( + + +

+ {card.title} + {card.description} +

+
+ Its fast +
+
+
+ ))}
); diff --git a/apps/web/src/components/(marketing)/open-build-template-bento.tsx b/apps/web/src/components/(marketing)/open-build-template-bento.tsx index e7920500b..779ef36e5 100644 --- a/apps/web/src/components/(marketing)/open-build-template-bento.tsx +++ b/apps/web/src/components/(marketing)/open-build-template-bento.tsx @@ -13,6 +13,22 @@ import cardTemplateFigure from '~/assets/card-template-figure.png'; export type OpenBuildTemplateBentoProps = HTMLAttributes; export const OpenBuildTemplateBento = ({ className, ...props }: OpenBuildTemplateBentoProps) => { + const cardData = [ + { + title: 'Build on top.', + description: 'Make it your own through advanced customization and adjustability.', + image: cardBuildFigure, + imageSize: 'max-w-xs', + }, + { + title: 'Template Store (Soon).', + description: + 'Choose a template from the community app store. Or submit your own template for others to use.', + image: cardTemplateFigure, + imageSize: 'max-w-sm', + }, + ]; + return (
@@ -42,32 +58,19 @@ export const OpenBuildTemplateBento = ({ className, ...props }: OpenBuildTemplat - - -

- Build on top. - Make it your own through advanced customization and adjustability. -

- -
- its fast -
-
-
- - - -

- Template Store (Soon). - Choose a template from the community app store. Or submit your own template for others - to use. -

- -
- its fast -
-
-
+ {cardData.map((card, index) => ( + + +

+ {card.title} + {card.description} +

+
+ Its fast +
+
+
+ ))}
); diff --git a/apps/web/src/components/(marketing)/share-connect-paid-widget-bento.tsx b/apps/web/src/components/(marketing)/share-connect-paid-widget-bento.tsx index 05b6a3232..8c7fa74e5 100644 --- a/apps/web/src/components/(marketing)/share-connect-paid-widget-bento.tsx +++ b/apps/web/src/components/(marketing)/share-connect-paid-widget-bento.tsx @@ -17,6 +17,29 @@ export const ShareConnectPaidWidgetBento = ({ className, ...props }: ShareConnectPaidWidgetBentoProps) => { + const cardData = [ + { + title: 'Connections (Soon).', + description: + 'Create connections and automations with Zapier and more to integrate with your favorite tools.', + image: cardConnectionsFigure, + imageSize: 'max-w-sm', + }, + { + title: 'Get paid (Soon).', + description: 'Integrated payments with stripe so you don’t have to worry about getting paid.', + image: cardPaidFigure, + imageSize: 'max-w-[14rem]', + }, + { + title: 'React Widget (Soon).', + description: + 'Easily embed Documenso into your product. Simply copy and paste our react widget into your application.', + image: cardWidgetFigure, + imageSize: 'max-w-xs', + }, + ]; + return (
@@ -45,46 +68,19 @@ export const ShareConnectPaidWidgetBento = ({ - - -

- Connections (Soon). - Create connections and automations with Zapier and more to integrate with your - favorite tools. -

- -
- its fast -
-
-
- - - -

- Get paid (Soon). - Integrated payments with stripe so you don’t have to worry about getting paid. -

- -
- its fast -
-
-
- - - -

- React Widget (Soon). - Easily embed Documenso into your product. Simply copy and paste our react widget into - your application. -

- -
- its fast -
-
-
+ {cardData.map((card, index) => ( + + +

+ {card.title} + {card.description} +

+
+ Its fast +
+
+
+ ))}
);