From fa7b15e8a8042dcca142aa4bcc5163f250985eb4 Mon Sep 17 00:00:00 2001 From: Hassan Malik Date: Wed, 22 Jan 2025 16:42:40 -0500 Subject: [PATCH 1/9] add requireCompleteView prop --- packages/snaps-sdk/src/jsx/components/Footer.test.tsx | 3 ++- packages/snaps-sdk/src/jsx/components/Footer.ts | 9 +++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/packages/snaps-sdk/src/jsx/components/Footer.test.tsx b/packages/snaps-sdk/src/jsx/components/Footer.test.tsx index e7d6de0512..0a5879b935 100644 --- a/packages/snaps-sdk/src/jsx/components/Footer.test.tsx +++ b/packages/snaps-sdk/src/jsx/components/Footer.test.tsx @@ -27,7 +27,7 @@ describe('Footer', () => { it('renders a footer element with multiple buttons', () => { const result = ( - + * @example + * */ export const Footer = createSnapComponent(TYPE); From 393e2fbd8511388b6f3e46d269109be616028900 Mon Sep 17 00:00:00 2001 From: Hassan Malik Date: Wed, 22 Jan 2025 16:51:46 -0500 Subject: [PATCH 2/9] update validation --- packages/snaps-sdk/src/jsx/validation.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/snaps-sdk/src/jsx/validation.ts b/packages/snaps-sdk/src/jsx/validation.ts index 3649a37da8..489abfc898 100644 --- a/packages/snaps-sdk/src/jsx/validation.ts +++ b/packages/snaps-sdk/src/jsx/validation.ts @@ -662,6 +662,7 @@ export const FooterChildStruct = selectiveUnion((value) => { */ export const FooterStruct: Describe = element('Footer', { children: FooterChildStruct, + requireCompleteView: optional(boolean()), }); /** From 662bdeedc8fdb4cc886d69f08dcf50d7188e9f68 Mon Sep 17 00:00:00 2001 From: Hassan Malik Date: Wed, 22 Jan 2025 17:08:54 -0500 Subject: [PATCH 3/9] change prop name --- packages/snaps-sdk/src/jsx/components/Footer.test.tsx | 4 ++-- packages/snaps-sdk/src/jsx/components/Footer.ts | 10 +++++----- packages/snaps-sdk/src/jsx/validation.ts | 2 +- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/snaps-sdk/src/jsx/components/Footer.test.tsx b/packages/snaps-sdk/src/jsx/components/Footer.test.tsx index 0a5879b935..2f1752ca3f 100644 --- a/packages/snaps-sdk/src/jsx/components/Footer.test.tsx +++ b/packages/snaps-sdk/src/jsx/components/Footer.test.tsx @@ -27,7 +27,7 @@ describe('Footer', () => { it('renders a footer element with multiple buttons', () => { const result = ( -
+
@@ -37,7 +37,7 @@ describe('Footer', () => { type: 'Footer', key: null, props: { - requireCompleteView: true, + requireScroll: true, children: [ { type: 'Button', diff --git a/packages/snaps-sdk/src/jsx/components/Footer.ts b/packages/snaps-sdk/src/jsx/components/Footer.ts index b21971094f..28325fb600 100644 --- a/packages/snaps-sdk/src/jsx/components/Footer.ts +++ b/packages/snaps-sdk/src/jsx/components/Footer.ts @@ -5,11 +5,11 @@ import type { ButtonElement } from './form'; * The props of the {@link Footer} component. * * @property children - The single or multiple buttons in the footer. - * @property requireCompleteView - Controls whether footer buttons require all content to be viewed before becoming active. + * @property requireScroll - Controls whether footer buttons require all content to be viewed before becoming active. */ export type FooterProps = { children: ButtonElement | [ButtonElement, ButtonElement]; - requireCompleteView?: boolean; + requireScroll?: boolean; }; const TYPE = 'Footer'; @@ -17,10 +17,10 @@ const TYPE = 'Footer'; /** * A footer component, which is used to create a footer with buttons. * - * Note: The `requireCompleteView` prop also activates an arrow that allows you to scroll to bottom. + * Note: The `requireScroll` prop also activates an arrow that allows you to scroll to bottom. * * @param props - The props of the component. - * @param props.requireCompleteView - Controls whether footer buttons require all content to be viewed before becoming active. + * @param props.requireScroll - Controls whether footer buttons require all content to be viewed before becoming active. * @param props.children - The single or multiple buttons in the footer. * @returns A footer element. * @example @@ -29,7 +29,7 @@ const TYPE = 'Footer'; * *
* @example - *