11import React , { useMemo } from 'react' ;
2- import { Modal , Paragraph , Skeleton , Flex } from '@contentful/f36-components' ;
2+ import { Modal , Paragraph , Skeleton , Flex , Spinner , Box } from '@contentful/f36-components' ;
33import { useSequentialMessages } from '@hooks/useSequentialMessages' ;
44import tokens , { ColorTokens } from '@contentful/f36-tokens' ;
55import { css , keyframes } from '@emotion/css' ;
@@ -71,15 +71,15 @@ export const LoadingModal: React.FC<LoadingModalProps> = ({
7171 const messages = useMemo ( ( ) => {
7272 if ( step === 'reviewingContentTypes' ) {
7373 const baseMessages = [
74- 'Fetching document... ' ,
75- 'Analyzing document structure... ' ,
76- 'Processing document with AI... ' ,
74+ 'Fetching document' ,
75+ 'Analyzing document structure' ,
76+ 'Processing document with AI' ,
7777 contentTypeCount
7878 ? `Analyzing content for ${ contentTypeCount } content type${
7979 contentTypeCount === 1 ? '' : 's'
80- } ... `
81- : 'Analyzing content for content types... ' ,
82- 'Generating preview entries... ' ,
80+ } `
81+ : 'Analyzing content for content types' ,
82+ 'Generating preview entries' ,
8383 ] ;
8484 return baseMessages ;
8585 }
@@ -106,13 +106,19 @@ export const LoadingModal: React.FC<LoadingModalProps> = ({
106106 < div className = { styles . verticalBar } />
107107 < Flex flex = { 1 } flexDirection = "column" gap = "spacingS" alignItems = "flex-start" >
108108 { visibleMessages . map ( ( message , index ) => (
109- < Paragraph
110- key = { message }
111- fontColor = { getMessageColor ( index , visibleMessages . length ) }
112- marginBottom = "none"
113- className = { styles . message } >
114- { message }
115- </ Paragraph >
109+ < Flex key = { message } alignItems = "center" className = { styles . message } >
110+ < Paragraph
111+ fontColor = { getMessageColor ( index , visibleMessages . length ) }
112+ marginBottom = "none" >
113+ { message }
114+ </ Paragraph >
115+
116+ { index === visibleMessages . length - 1 ? (
117+ < Box as = "span" marginLeft = "spacing2Xs" >
118+ < Spinner customSize = { 18 } variant = "default" />
119+ </ Box >
120+ ) : null }
121+ </ Flex >
116122 ) ) }
117123 </ Flex >
118124 </ Flex >
0 commit comments