import {makeT} from 'app/client/lib/localization'; import {colors, mediaSmall} from 'app/client/ui2018/cssVars'; import {icon} from 'app/client/ui2018/icons'; import {commonUrls} from 'app/common/gristUrls'; import {DomContents, DomElementArg, styled} from 'grainjs'; const t = makeT('FormContainer'); export function buildFormMessagePage(buildBody: () => DomContents, ...args: DomElementArg[]) { return cssFormMessagePage( cssFormMessage( cssFormMessageBody( buildBody(), ), cssFormMessageFooter( buildFormFooter(), ), ), ...args, ); } export function buildFormFooter() { return [ cssPoweredByGrist( cssPoweredByGristLink( {href: commonUrls.forms, target: '_blank'}, t('Powered by'), cssGristLogo(), ) ), cssBuildForm( cssBuildFormLink( {href: commonUrls.forms, target: '_blank'}, t('Build your own form'), icon('Expand'), ), ), ]; } export const cssFormMessageImageContainer = styled('div', ` margin-top: 28px; display: flex; justify-content: center; `); export const cssFormMessageImage = styled('img', ` height: 100%; width: 100%; `); export const cssFormMessageText = styled('div', ` color: ${colors.dark}; text-align: center; font-weight: 600; font-size: 16px; line-height: 24px; margin-top: 32px; margin-bottom: 24px; `); const cssFormMessagePage = styled('div', ` padding: 16px; `); const cssFormMessage = styled('div', ` display: flex; flex-direction: column; align-items: center; background-color: white; border: 1px solid ${colors.darkGrey}; border-radius: 3px; max-width: 600px; margin: 0px auto; `); const cssFormMessageBody = styled('div', ` width: 100%; padding: 20px 48px 20px 48px; @media ${mediaSmall} { & { padding: 20px; } } `); const cssFormMessageFooter = styled('div', ` border-top: 1px solid ${colors.darkGrey}; padding: 8px 16px; width: 100%; `); const cssPoweredByGrist = styled('div', ` color: ${colors.darkText}; font-size: 13px; font-style: normal; font-weight: 600; line-height: 16px; display: flex; align-items: center; justify-content: center; padding: 0px 10px; `); const cssPoweredByGristLink = styled('a', ` display: flex; align-items: center; justify-content: center; gap: 8px; color: ${colors.darkText}; text-decoration: none; `); const cssGristLogo = styled('div', ` width: 58px; height: 20.416px; flex-shrink: 0; background: url(img/logo-grist.png); background-position: 0 0; background-size: contain; background-color: transparent; background-repeat: no-repeat; margin-top: 3px; `); const cssBuildForm = styled('div', ` display: flex; align-items: center; justify-content: center; margin-top: 8px; `); const cssBuildFormLink = styled('a', ` display: flex; align-items: center; justify-content: center; font-size: 11px; line-height: 16px; text-decoration-line: underline; color: ${colors.darkGreen}; --icon-color: ${colors.darkGreen}; `);