@npm_leadtech/legal-lib-components 5.22.0 → 5.22.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/dist/images/componentsSvg/IconWeb.d.ts +2 -0
  2. package/dist/images/componentsSvg/IconWeb.js +4 -0
  3. package/dist/images/componentsSvg/IconWeb.tsx +31 -0
  4. package/dist/images/componentsSvg/PhoneIcon.d.ts +6 -0
  5. package/dist/images/componentsSvg/PhoneIcon.js +4 -0
  6. package/dist/images/componentsSvg/PhoneIcon.tsx +18 -0
  7. package/dist/images/componentsSvg/PhoneIcon24px.tsx +4 -2
  8. package/dist/images/svg/facebook.svg +4 -0
  9. package/dist/images/svg/icon-24-px-satisfaction-grey.svg +3 -0
  10. package/dist/images/svg/icon-24-px-security_black.svg +3 -0
  11. package/dist/images/svg/linkedin.svg +4 -0
  12. package/dist/images/svg/pinterest.svg +4 -0
  13. package/dist/images/svg/x.svg +4 -0
  14. package/dist/src/components/atoms/FixedFooter/FixedFooter.d.ts +3 -0
  15. package/dist/src/components/atoms/FixedFooter/FixedFooter.js +73 -0
  16. package/dist/src/components/atoms/FixedFooter/FixedFooter.styled.d.ts +1 -0
  17. package/dist/src/components/atoms/FixedFooter/FixedFooter.styled.js +394 -0
  18. package/dist/src/components/atoms/FixedFooter/FixedFooter.styled.ts +395 -0
  19. package/dist/src/components/atoms/FixedFooter/FixedFooter.tsx +303 -0
  20. package/dist/src/components/atoms/FixedFooter/FixedFooterProps.d.ts +68 -0
  21. package/dist/src/components/atoms/FixedFooter/FixedFooterProps.js +1 -0
  22. package/dist/src/components/atoms/FixedFooter/FixedFooterProps.ts +70 -0
  23. package/dist/src/components/atoms/FixedFooter/index.d.ts +2 -0
  24. package/dist/src/components/atoms/FixedFooter/index.js +2 -0
  25. package/dist/src/components/atoms/FixedFooter/index.ts +2 -0
  26. package/dist/src/components/atoms/PreFooter/PreFooter.d.ts +3 -0
  27. package/dist/src/components/atoms/PreFooter/PreFooter.js +8 -0
  28. package/dist/src/components/atoms/PreFooter/PreFooter.styled.d.ts +1 -0
  29. package/dist/src/components/atoms/PreFooter/PreFooter.styled.js +43 -0
  30. package/dist/src/components/atoms/PreFooter/PreFooter.styled.ts +43 -0
  31. package/dist/src/components/atoms/PreFooter/PreFooter.tsx +34 -0
  32. package/dist/src/components/atoms/PreFooter/PreFooterProps.d.ts +8 -0
  33. package/dist/src/components/atoms/PreFooter/PreFooterProps.js +1 -0
  34. package/dist/src/components/atoms/PreFooter/PreFooterProps.ts +8 -0
  35. package/dist/src/components/atoms/PreFooter/index.d.ts +2 -0
  36. package/dist/src/components/atoms/PreFooter/index.js +2 -0
  37. package/dist/src/components/atoms/PreFooter/index.ts +2 -0
  38. package/dist/src/components/atoms/index.d.ts +2 -0
  39. package/dist/src/components/atoms/index.js +2 -0
  40. package/dist/src/components/atoms/index.ts +2 -0
  41. package/dist/src/components/molecules/FreeDocModalContent/FreeDocModalContent.js +2 -2
  42. package/dist/src/components/molecules/FreeDocModalContent/FreeDocModalContent.tsx +1 -2
  43. package/dist/src/components/molecules/FreeDocModalContent/FreeDocModalContent.types.d.ts +0 -1
  44. package/dist/src/components/molecules/FreeDocModalContent/FreeDocModalContent.types.ts +0 -1
  45. package/dist/src/components/molecules/PricingCard/PricingCard.js +2 -2
  46. package/dist/src/components/molecules/PricingCard/PricingCard.tsx +2 -4
  47. package/dist/src/components/molecules/PricingCard/PricingCardProps.types.d.ts +0 -2
  48. package/dist/src/components/molecules/PricingCard/PricingCardProps.types.ts +0 -2
  49. package/dist/tsconfig.build.tsbuildinfo +1 -1
  50. package/package.json +1 -1
@@ -0,0 +1,68 @@
1
+ import React from 'react';
2
+ export interface Link {
3
+ label: string;
4
+ url: string;
5
+ onClick: () => void;
6
+ }
7
+ export interface FixedFooterProps {
8
+ config: {
9
+ siteName: string;
10
+ sitePhone: string;
11
+ siteSchedule: string;
12
+ siteUrl: string;
13
+ hasGrav: boolean;
14
+ hasCookieMessage: boolean;
15
+ hasContactBar: boolean;
16
+ hasTrustPilot: boolean;
17
+ isJonSnow: boolean;
18
+ isSEMPage: boolean;
19
+ isMobile: boolean;
20
+ isTablet: boolean;
21
+ isDesktop: boolean;
22
+ isAnonymousPayment: boolean;
23
+ hide: boolean;
24
+ noFooter: boolean;
25
+ };
26
+ footer: {
27
+ disclaimerText: string;
28
+ guaranteeText: string;
29
+ securityText: string;
30
+ bottomFixedBlock: React.ReactNode;
31
+ createDocumentBlock: React.ReactNode;
32
+ trustPilotWidget: React.ReactNode;
33
+ };
34
+ preFooter: {
35
+ show: boolean;
36
+ title: string;
37
+ columns: string[];
38
+ hasButton: boolean;
39
+ buttonLabel: string;
40
+ buttonLink: string;
41
+ buttonClick: () => void;
42
+ };
43
+ productsBlock: {
44
+ title: string;
45
+ productsCategories: React.ReactNode;
46
+ allProductsLink: React.ReactNode;
47
+ };
48
+ popularDocumentsBlock: {
49
+ title: string;
50
+ popularDocuments: React.ReactNode;
51
+ };
52
+ companyBlock: {
53
+ title: string;
54
+ links: React.ReactNode;
55
+ };
56
+ helpBlock: {
57
+ title: string;
58
+ links: React.ReactNode;
59
+ };
60
+ resourcesBlock: {
61
+ title: string;
62
+ links: React.ReactNode;
63
+ };
64
+ languageSelector: {
65
+ show: boolean;
66
+ content: React.ReactNode;
67
+ };
68
+ }
@@ -0,0 +1,70 @@
1
+ import React from 'react'
2
+
3
+ export interface Link {
4
+ label: string
5
+ url: string
6
+ onClick: () => void
7
+ }
8
+
9
+ export interface FixedFooterProps {
10
+ config: {
11
+ siteName: string
12
+ sitePhone: string
13
+ siteSchedule: string
14
+ siteUrl: string
15
+ hasGrav: boolean
16
+ hasCookieMessage: boolean
17
+ hasContactBar: boolean
18
+ hasTrustPilot: boolean
19
+ isJonSnow: boolean
20
+ isSEMPage: boolean
21
+ isMobile: boolean
22
+ isTablet: boolean
23
+ isDesktop: boolean
24
+ isAnonymousPayment: boolean
25
+ hide: boolean
26
+ noFooter: boolean
27
+ }
28
+ footer: {
29
+ disclaimerText: string
30
+ guaranteeText: string
31
+ securityText: string
32
+ bottomFixedBlock: React.ReactNode
33
+ createDocumentBlock: React.ReactNode
34
+ trustPilotWidget: React.ReactNode
35
+ }
36
+ preFooter: {
37
+ show: boolean
38
+ title: string
39
+ columns: string[]
40
+ hasButton: boolean
41
+ buttonLabel: string
42
+ buttonLink: string
43
+ buttonClick: () => void
44
+ }
45
+ productsBlock: {
46
+ title: string
47
+ productsCategories: React.ReactNode
48
+ allProductsLink: React.ReactNode
49
+ }
50
+ popularDocumentsBlock: {
51
+ title: string
52
+ popularDocuments: React.ReactNode
53
+ }
54
+ companyBlock: {
55
+ title: string
56
+ links: React.ReactNode
57
+ }
58
+ helpBlock: {
59
+ title: string
60
+ links: React.ReactNode
61
+ }
62
+ resourcesBlock: {
63
+ title: string
64
+ links: React.ReactNode
65
+ }
66
+ languageSelector: {
67
+ show: boolean
68
+ content: React.ReactNode
69
+ }
70
+ }
@@ -0,0 +1,2 @@
1
+ export * from './FixedFooter';
2
+ export * from './FixedFooterProps';
@@ -0,0 +1,2 @@
1
+ export * from './FixedFooter';
2
+ export * from './FixedFooterProps';
@@ -0,0 +1,2 @@
1
+ export * from './FixedFooter'
2
+ export * from './FixedFooterProps'
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ import { PreFooterProps } from './PreFooterProps';
3
+ export declare const PreFooter: React.FC<PreFooterProps>;
@@ -0,0 +1,8 @@
1
+ import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
2
+ import { Button } from '../Button';
3
+ import { PreFooterStyled } from './PreFooter.styled';
4
+ export const PreFooter = ({ siteName, content, ctaLabel, ctaOnClick, ctaDataQa, ctaLink }) => {
5
+ return (_jsx(PreFooterStyled, { children: _jsx("div", { className: 'wrapper', children: _jsxs("div", { className: 'prefooter', children: [_jsxs("div", { className: 'serif --hero prefooter__title', children: ["Try ", siteName, " Now"] }), _jsx("div", { className: 'prefooter__columns', children: content.map((text, index) => {
6
+ return (_jsx("p", { className: 'prefooter__columns__text', children: text }, index));
7
+ }) }), _jsx(Button, { label: ctaLabel, onClick: ctaOnClick, link: ctaLink, dataQa: ctaDataQa, isExternal: true, hasNoFollow: true })] }) }) }));
8
+ };
@@ -0,0 +1 @@
1
+ export declare const PreFooterStyled: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLElement>, HTMLElement>, never>> & string;
@@ -0,0 +1,43 @@
1
+ import { device } from '../../../globalStyles/breakpoints';
2
+ import styled from 'styled-components';
3
+ export const PreFooterStyled = styled.section `
4
+ background-color: var(--primary-main-light-6);
5
+ text-align: center;
6
+
7
+ .prefooter {
8
+ margin: 0 1.5rem;
9
+
10
+ @media ${device['landscape-tablets']} {
11
+ margin: 0;
12
+ }
13
+
14
+ &__title {
15
+ color: var(--neutral-neutral-1);
16
+ display: inline-block;
17
+ margin: 2rem 0 0;
18
+ }
19
+
20
+ &__columns {
21
+ display: flex;
22
+ flex-direction: column;
23
+ align-items: center;
24
+ justify-content: space-between;
25
+
26
+ @media ${device['landscape-tablets']} {
27
+ flex-direction: row;
28
+ margin: 0 1rem;
29
+ align-items: flex-start;
30
+ }
31
+
32
+ &__text {
33
+ width: 16.375rem;
34
+ color: var(--neutral-neutral-1);
35
+ margin: 2rem 0.5rem 0 0.5rem;
36
+ }
37
+ }
38
+ .e-button {
39
+ display: inline-block;
40
+ margin: 2rem 0;
41
+ }
42
+ }
43
+ `;
@@ -0,0 +1,43 @@
1
+ import { device } from '../../../globalStyles/breakpoints'
2
+ import styled from 'styled-components'
3
+ export const PreFooterStyled = styled.section`
4
+ background-color: var(--primary-main-light-6);
5
+ text-align: center;
6
+
7
+ .prefooter {
8
+ margin: 0 1.5rem;
9
+
10
+ @media ${device['landscape-tablets']} {
11
+ margin: 0;
12
+ }
13
+
14
+ &__title {
15
+ color: var(--neutral-neutral-1);
16
+ display: inline-block;
17
+ margin: 2rem 0 0;
18
+ }
19
+
20
+ &__columns {
21
+ display: flex;
22
+ flex-direction: column;
23
+ align-items: center;
24
+ justify-content: space-between;
25
+
26
+ @media ${device['landscape-tablets']} {
27
+ flex-direction: row;
28
+ margin: 0 1rem;
29
+ align-items: flex-start;
30
+ }
31
+
32
+ &__text {
33
+ width: 16.375rem;
34
+ color: var(--neutral-neutral-1);
35
+ margin: 2rem 0.5rem 0 0.5rem;
36
+ }
37
+ }
38
+ .e-button {
39
+ display: inline-block;
40
+ margin: 2rem 0;
41
+ }
42
+ }
43
+ `
@@ -0,0 +1,34 @@
1
+ import React from 'react'
2
+
3
+ import { Button } from '../Button'
4
+ import { PreFooterProps } from './PreFooterProps'
5
+ import { PreFooterStyled } from './PreFooter.styled'
6
+
7
+ export const PreFooter: React.FC<PreFooterProps> = ({
8
+ siteName,
9
+ content,
10
+ ctaLabel,
11
+ ctaOnClick,
12
+ ctaDataQa,
13
+ ctaLink
14
+ }) => {
15
+ return (
16
+ <PreFooterStyled>
17
+ <div className='wrapper'>
18
+ <div className='prefooter'>
19
+ <div className='serif --hero prefooter__title'>Try {siteName} Now</div>
20
+ <div className='prefooter__columns'>
21
+ {content.map((text, index) => {
22
+ return (
23
+ <p key={index} className='prefooter__columns__text'>
24
+ {text}
25
+ </p>
26
+ )
27
+ })}
28
+ </div>
29
+ <Button label={ctaLabel} onClick={ctaOnClick} link={ctaLink} dataQa={ctaDataQa} isExternal hasNoFollow />
30
+ </div>
31
+ </div>
32
+ </PreFooterStyled>
33
+ )
34
+ }
@@ -0,0 +1,8 @@
1
+ export interface PreFooterProps {
2
+ siteName: string;
3
+ content: string[];
4
+ ctaLabel: string;
5
+ ctaOnClick: () => void;
6
+ ctaDataQa: string;
7
+ ctaLink: string;
8
+ }
@@ -0,0 +1,8 @@
1
+ export interface PreFooterProps {
2
+ siteName: string
3
+ content: string[]
4
+ ctaLabel: string
5
+ ctaOnClick: () => void
6
+ ctaDataQa: string
7
+ ctaLink: string
8
+ }
@@ -0,0 +1,2 @@
1
+ export * from './PreFooter';
2
+ export * from './PreFooterProps';
@@ -0,0 +1,2 @@
1
+ export * from './PreFooter';
2
+ export * from './PreFooterProps';
@@ -0,0 +1,2 @@
1
+ export * from './PreFooter'
2
+ export * from './PreFooterProps'
@@ -19,6 +19,7 @@ export * from './DocumentStatus';
19
19
  export * from './DocumentTag';
20
20
  export * from './ExpertCard';
21
21
  export * from './FeatureRatafiaCard';
22
+ export * from './FixedFooter';
22
23
  export * from './FormFaq';
23
24
  export * from './GoogleButton';
24
25
  export * from './IconImage';
@@ -36,6 +37,7 @@ export * from './MoreDocsItem';
36
37
  export * from './NavMenuItem';
37
38
  export * from './PaypalButton';
38
39
  export * from './PopularDocsItem';
40
+ export * from './PreFooter';
39
41
  export * from './ProgressBar';
40
42
  export * from './Radio';
41
43
  export * from './RemoveButton';
@@ -19,6 +19,7 @@ export * from './DocumentStatus';
19
19
  export * from './DocumentTag';
20
20
  export * from './ExpertCard';
21
21
  export * from './FeatureRatafiaCard';
22
+ export * from './FixedFooter';
22
23
  export * from './FormFaq';
23
24
  export * from './GoogleButton';
24
25
  export * from './IconImage';
@@ -36,6 +37,7 @@ export * from './MoreDocsItem';
36
37
  export * from './NavMenuItem';
37
38
  export * from './PaypalButton';
38
39
  export * from './PopularDocsItem';
40
+ export * from './PreFooter';
39
41
  export * from './ProgressBar';
40
42
  export * from './Radio';
41
43
  export * from './RemoveButton';
@@ -19,6 +19,7 @@ export * from './DocumentStatus'
19
19
  export * from './DocumentTag'
20
20
  export * from './ExpertCard'
21
21
  export * from './FeatureRatafiaCard'
22
+ export * from './FixedFooter'
22
23
  export * from './FormFaq'
23
24
  export * from './GoogleButton'
24
25
  export * from './IconImage'
@@ -36,6 +37,7 @@ export * from './MoreDocsItem'
36
37
  export * from './NavMenuItem'
37
38
  export * from './PaypalButton'
38
39
  export * from './PopularDocsItem'
40
+ export * from './PreFooter'
39
41
  export * from './ProgressBar'
40
42
  export * from './Radio'
41
43
  export * from './RemoveButton'
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { Button } from '../../atoms';
3
3
  import { FreeDocModalContentStyled } from './FreeDocModalContent.styled';
4
- const FreeDocModalContent = ({ buttonLabel, bodyTitle, bodyText, closeModal, clickGoToFormInApp, isActiveDocument }) => {
4
+ const FreeDocModalContent = ({ bodyTitle, bodyText, closeModal, clickGoToFormInApp, isActiveDocument }) => {
5
5
  const onGoToApp = () => {
6
6
  if (clickGoToFormInApp !== undefined)
7
7
  clickGoToFormInApp(null, '', true);
@@ -12,7 +12,7 @@ const FreeDocModalContent = ({ buttonLabel, bodyTitle, bodyText, closeModal, cli
12
12
  const buttonProps = {
13
13
  color: 'primary',
14
14
  size: 'S',
15
- label: buttonLabel,
15
+ label: 'Make Document',
16
16
  dataQa: 'free-modal-doc-button',
17
17
  ...(isActiveDocument ? { noLink: true } : { link: '#' }),
18
18
  onClick: isActiveDocument ? onGoToApp : onNavigateToTop
@@ -7,7 +7,6 @@ import { type FreeDocModalContentProps } from './FreeDocModalContent.types'
7
7
  import { FreeDocModalContentStyled } from './FreeDocModalContent.styled'
8
8
 
9
9
  const FreeDocModalContent: FC<FreeDocModalContentProps> = ({
10
- buttonLabel,
11
10
  bodyTitle,
12
11
  bodyText,
13
12
  closeModal,
@@ -25,7 +24,7 @@ const FreeDocModalContent: FC<FreeDocModalContentProps> = ({
25
24
  const buttonProps: ButtonProps = {
26
25
  color: 'primary',
27
26
  size: 'S',
28
- label: buttonLabel,
27
+ label: 'Make Document',
29
28
  dataQa: 'free-modal-doc-button',
30
29
  ...(isActiveDocument ? { noLink: true } : { link: '#' }),
31
30
  onClick: isActiveDocument ? onGoToApp : onNavigateToTop
@@ -1,5 +1,4 @@
1
1
  export interface FreeDocModalContentProps {
2
- buttonLabel: string;
3
2
  bodyTitle: string;
4
3
  bodyText: string;
5
4
  closeModal: () => void;
@@ -1,5 +1,4 @@
1
1
  export interface FreeDocModalContentProps {
2
- buttonLabel: string
3
2
  bodyTitle: string
4
3
  bodyText: string
5
4
  closeModal: () => void
@@ -2,7 +2,7 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
2
2
  import { useState } from 'react';
3
3
  import { Button, Message } from '../../atoms';
4
4
  import { PricingCardStyled } from './PricingCard.styled';
5
- const PricingCard = ({ order, subscriptionId, onChangeRadio, isChecked = false, planName, price, currency, underPricingText, featuresList = [], children, disclaimer, message, cardButton, seeLessLabel, seeMoreLabel }) => {
5
+ const PricingCard = ({ order, subscriptionId, onChangeRadio, isChecked = false, planName, price, currency, underPricingText, featuresList = [], children, disclaimer, message, cardButton }) => {
6
6
  const [cardState, setCardState] = useState({ expanded: false });
7
7
  if (planName === undefined ||
8
8
  (onChangeRadio != null && subscriptionId === undefined) ||
@@ -22,7 +22,7 @@ const PricingCard = ({ order, subscriptionId, onChangeRadio, isChecked = false,
22
22
  return { ...prevState };
23
23
  });
24
24
  };
25
- const renderMoreMobileButton = (_jsx(Button, { dataQa: '', givenClass: 'see-more-button', color: 'tertiary', label: cardState.expanded ? (seeLessLabel ?? 'See less') : (seeMoreLabel ?? 'See more'), noLink: true, onClick: toggleCardContent }));
25
+ const renderMoreMobileButton = (_jsx(Button, { dataQa: '', givenClass: 'see-more-button', color: 'tertiary', label: cardState.expanded ? 'See less' : 'See more', noLink: true, onClick: toggleCardContent }));
26
26
  const renderHeaderContent = (_jsx("div", { className: 'pricing-card__header', children: _jsx("h5", { className: 'sans-serif --big pricing-card__header__text', children: _jsx("strong", { children: planName }) }) }));
27
27
  const renderBodyContent = (_jsxs("div", { className: 'pricing-card__body', children: [Boolean(price) && (_jsxs("div", { className: 'sans-serif pricing-card__body__price', children: [_jsx("strong", { children: price }), _jsx("span", { children: currency }), Boolean(underPricingText) && _jsx("div", { className: 'pricing-card__body__text', children: underPricingText })] })), Boolean(featuresList.length) && (_jsxs("div", { className: `pricing-card__body__features-list ${expandedContentClass}`, children: [_jsx("hr", {}), _jsx("ul", { children: featuresList.map((feature) => (_jsx("li", { className: 'pricing-card__body__features-list__item', children: feature }, 'feature-item-' + feature))) })] })), children, featuresList != null && renderMoreMobileButton, cardButton, message != null && _jsx(Message, { ...message })] }));
28
28
  return (_jsxs(PricingCardStyled, { style: style, className: `pricing-card grid__column ${selectableCardClass} ${selectedCardClass}`, children: [_jsx("div", { className: 'pricing-card__wrapper', children: isSelectableCard ? (_jsxs("label", { className: 'pricing-card__radio-label', "data-qa": planName, children: [_jsx("input", { className: 'radio-input', type: 'radio', value: subscriptionId, onChange: onChangeRadio, name: 'pricing', checked: isChecked }), _jsx("span", { className: 'radio-checkbox' }), renderHeaderContent, renderBodyContent] })) : (_jsxs(_Fragment, { children: [renderHeaderContent, renderBodyContent] })) }), Boolean(disclaimer) && (_jsx("div", { className: 'pricing-card__disclaimer', children: _jsx("small", { children: disclaimer }) }))] }));
@@ -17,9 +17,7 @@ const PricingCard: FC<PricingCardProps> = ({
17
17
  children,
18
18
  disclaimer,
19
19
  message,
20
- cardButton,
21
- seeLessLabel,
22
- seeMoreLabel
20
+ cardButton
23
21
  }) => {
24
22
  const [cardState, setCardState] = useState({ expanded: false })
25
23
  if (
@@ -50,7 +48,7 @@ const PricingCard: FC<PricingCardProps> = ({
50
48
  dataQa=''
51
49
  givenClass='see-more-button'
52
50
  color='tertiary'
53
- label={cardState.expanded ? (seeLessLabel ?? 'See less') : (seeMoreLabel ?? 'See more')}
51
+ label={cardState.expanded ? 'See less' : 'See more'}
54
52
  noLink
55
53
  onClick={toggleCardContent}
56
54
  />
@@ -13,6 +13,4 @@ export interface PricingCardProps {
13
13
  disclaimer?: string;
14
14
  message?: MessageProps;
15
15
  cardButton?: any;
16
- seeLessLabel?: string;
17
- seeMoreLabel?: string;
18
16
  }
@@ -15,6 +15,4 @@ export interface PricingCardProps {
15
15
  disclaimer?: string
16
16
  message?: MessageProps
17
17
  cardButton?: any
18
- seeLessLabel?: string
19
- seeMoreLabel?: string
20
18
  }