@npm_leadtech/legal-lib-components 5.23.0 → 5.25.0

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 (57) hide show
  1. package/README.md +16 -0
  2. package/dist/src/components/molecules/FreeDocModalContent/FreeDocModalContent.js +2 -2
  3. package/dist/src/components/molecules/FreeDocModalContent/FreeDocModalContent.tsx +2 -1
  4. package/dist/src/components/molecules/FreeDocModalContent/FreeDocModalContent.types.d.ts +1 -0
  5. package/dist/src/components/molecules/FreeDocModalContent/FreeDocModalContent.types.ts +1 -0
  6. package/dist/src/components/molecules/PricingCard/PricingCard.js +2 -2
  7. package/dist/src/components/molecules/PricingCard/PricingCard.tsx +4 -2
  8. package/dist/src/components/molecules/PricingCard/PricingCardProps.types.d.ts +2 -0
  9. package/dist/src/components/molecules/PricingCard/PricingCardProps.types.ts +2 -0
  10. package/dist/src/components/molecules/RatafiaSubscriptionCard/RatafiaSubscriptionCard.styled.js +20 -5
  11. package/dist/src/components/molecules/RatafiaSubscriptionCard/RatafiaSubscriptionCard.styled.ts +20 -5
  12. package/dist/src/components/organisms/LayoutRatafia/LayoutRatafia.styled.js +9 -13
  13. package/dist/src/components/organisms/LayoutRatafia/LayoutRatafia.styled.ts +9 -13
  14. package/dist/src/components/organisms/LimitReachedContentRatafia/LimitReachedContentRatafia.d.ts +3 -0
  15. package/dist/src/components/organisms/LimitReachedContentRatafia/LimitReachedContentRatafia.js +5 -0
  16. package/dist/src/components/organisms/LimitReachedContentRatafia/LimitReachedContentRatafia.styled.d.ts +1 -0
  17. package/dist/src/components/organisms/LimitReachedContentRatafia/LimitReachedContentRatafia.styled.js +41 -0
  18. package/dist/src/components/organisms/LimitReachedContentRatafia/LimitReachedContentRatafia.styled.ts +42 -0
  19. package/dist/src/components/organisms/LimitReachedContentRatafia/LimitReachedContentRatafia.tsx +16 -0
  20. package/dist/src/components/organisms/LimitReachedContentRatafia/LimitReachedContentRatafiaProps.types.d.ts +5 -0
  21. package/dist/src/components/organisms/LimitReachedContentRatafia/LimitReachedContentRatafiaProps.types.js +1 -0
  22. package/dist/src/components/organisms/LimitReachedContentRatafia/LimitReachedContentRatafiaProps.types.ts +5 -0
  23. package/dist/src/components/organisms/LimitReachedContentRatafia/index.d.ts +2 -0
  24. package/dist/src/components/organisms/LimitReachedContentRatafia/index.js +1 -0
  25. package/dist/src/components/organisms/LimitReachedContentRatafia/index.ts +2 -0
  26. package/dist/src/components/organisms/index.d.ts +1 -0
  27. package/dist/src/components/organisms/index.js +1 -0
  28. package/dist/src/components/organisms/index.ts +1 -0
  29. package/dist/src/components/pages/LimitReachedRatafiaPage/LimitReachedRatafiaPage.d.ts +3 -0
  30. package/dist/src/components/pages/LimitReachedRatafiaPage/LimitReachedRatafiaPage.js +13 -0
  31. package/dist/src/components/pages/LimitReachedRatafiaPage/LimitReachedRatafiaPage.styled.d.ts +1 -0
  32. package/dist/src/components/pages/LimitReachedRatafiaPage/LimitReachedRatafiaPage.styled.js +22 -0
  33. package/dist/src/components/pages/LimitReachedRatafiaPage/LimitReachedRatafiaPage.styled.ts +23 -0
  34. package/dist/src/components/pages/LimitReachedRatafiaPage/LimitReachedRatafiaPage.tsx +56 -0
  35. package/dist/src/components/pages/LimitReachedRatafiaPage/LimitReachedRatafiaPageProps.types.d.ts +15 -0
  36. package/dist/src/components/pages/LimitReachedRatafiaPage/LimitReachedRatafiaPageProps.types.js +1 -0
  37. package/dist/src/components/pages/LimitReachedRatafiaPage/LimitReachedRatafiaPageProps.types.ts +16 -0
  38. package/dist/src/components/pages/LimitReachedRatafiaPage/index.d.ts +2 -0
  39. package/dist/src/components/pages/LimitReachedRatafiaPage/index.js +1 -0
  40. package/dist/src/components/pages/LimitReachedRatafiaPage/index.ts +2 -0
  41. package/dist/src/components/pages/PricingRatafiaPage/PricingRatafiaPage.d.ts +3 -0
  42. package/dist/src/components/pages/PricingRatafiaPage/PricingRatafiaPage.js +12 -0
  43. package/dist/src/components/pages/PricingRatafiaPage/PricingRatafiaPage.styled.d.ts +1 -0
  44. package/dist/src/components/pages/PricingRatafiaPage/PricingRatafiaPage.styled.js +28 -0
  45. package/dist/src/components/pages/PricingRatafiaPage/PricingRatafiaPage.styled.ts +29 -0
  46. package/dist/src/components/pages/PricingRatafiaPage/PricingRatafiaPage.tsx +38 -0
  47. package/dist/src/components/pages/PricingRatafiaPage/PricingRatafiaPageProps.d.ts +33 -0
  48. package/dist/src/components/pages/PricingRatafiaPage/PricingRatafiaPageProps.js +1 -0
  49. package/dist/src/components/pages/PricingRatafiaPage/PricingRatafiaPageProps.ts +38 -0
  50. package/dist/src/components/pages/PricingRatafiaPage/index.d.ts +2 -0
  51. package/dist/src/components/pages/PricingRatafiaPage/index.js +2 -0
  52. package/dist/src/components/pages/PricingRatafiaPage/index.ts +2 -0
  53. package/dist/src/components/pages/index.d.ts +2 -0
  54. package/dist/src/components/pages/index.js +2 -0
  55. package/dist/src/components/pages/index.ts +2 -0
  56. package/dist/tsconfig.build.tsbuildinfo +1 -1
  57. package/package.json +6 -2
package/README.md CHANGED
@@ -35,3 +35,19 @@ Para ejecutar: `yarn chromatic`
35
35
  - Tenemos que importar el componente en package.json para luego poderlo importar en el otro proyecto ejemplode AddButton --> "./AddButton": "./dist/src/components/atoms/AddButton/index.js",
36
36
  - Los archivos de scss están importados en globalStyles/styles.scss para tener una importación de todo hasta que lo pasemos a styled-components, no se debe importar en css en los archivos de js
37
37
  - Para la importación en www o app utilizaremos la ruta completa import { FaqsPage } from '@npm_leadtech/legal-lib-components/FaqsPage'
38
+
39
+ ## Sonar localmente
40
+
41
+ Para ejecutar sonar localmente será necesiario:
42
+
43
+ - Tener instalado y configurado el servidor de sonar del repo de devops
44
+ - desde devops ejecutar el comando `make sonar-build`
45
+ - Crear carpeta y fichero `scripts/sonar.sh`
46
+ - Agregar este contenido al fichero:
47
+
48
+ ```
49
+ #!/bin/bash
50
+ npx sonarqube-scanner -Dsonar.host.url=http://sonar.legal-contracts.com:9000 -Dsonar.token=TOKEN GENERADO EN SONAR
51
+ ```
52
+
53
+ - Ejecutar en consola `yarn sonar`
@@ -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 = ({ bodyTitle, bodyText, closeModal, clickGoToFormInApp, isActiveDocument }) => {
4
+ const FreeDocModalContent = ({ buttonLabel, 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 = ({ bodyTitle, bodyText, closeModal, clickGoToFormInA
12
12
  const buttonProps = {
13
13
  color: 'primary',
14
14
  size: 'S',
15
- label: 'Make Document',
15
+ label: buttonLabel,
16
16
  dataQa: 'free-modal-doc-button',
17
17
  ...(isActiveDocument ? { noLink: true } : { link: '#' }),
18
18
  onClick: isActiveDocument ? onGoToApp : onNavigateToTop
@@ -7,6 +7,7 @@ import { type FreeDocModalContentProps } from './FreeDocModalContent.types'
7
7
  import { FreeDocModalContentStyled } from './FreeDocModalContent.styled'
8
8
 
9
9
  const FreeDocModalContent: FC<FreeDocModalContentProps> = ({
10
+ buttonLabel,
10
11
  bodyTitle,
11
12
  bodyText,
12
13
  closeModal,
@@ -24,7 +25,7 @@ const FreeDocModalContent: FC<FreeDocModalContentProps> = ({
24
25
  const buttonProps: ButtonProps = {
25
26
  color: 'primary',
26
27
  size: 'S',
27
- label: 'Make Document',
28
+ label: buttonLabel,
28
29
  dataQa: 'free-modal-doc-button',
29
30
  ...(isActiveDocument ? { noLink: true } : { link: '#' }),
30
31
  onClick: isActiveDocument ? onGoToApp : onNavigateToTop
@@ -1,4 +1,5 @@
1
1
  export interface FreeDocModalContentProps {
2
+ buttonLabel: string;
2
3
  bodyTitle: string;
3
4
  bodyText: string;
4
5
  closeModal: () => void;
@@ -1,4 +1,5 @@
1
1
  export interface FreeDocModalContentProps {
2
+ buttonLabel: string
2
3
  bodyTitle: string
3
4
  bodyText: string
4
5
  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 }) => {
5
+ const PricingCard = ({ order, subscriptionId, onChangeRadio, isChecked = false, planName, price, currency, underPricingText, featuresList = [], children, disclaimer, message, cardButton, seeLessLabel, seeMoreLabel }) => {
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 ? 'See less' : 'See more', noLink: true, onClick: toggleCardContent }));
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 }));
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,7 +17,9 @@ const PricingCard: FC<PricingCardProps> = ({
17
17
  children,
18
18
  disclaimer,
19
19
  message,
20
- cardButton
20
+ cardButton,
21
+ seeLessLabel,
22
+ seeMoreLabel
21
23
  }) => {
22
24
  const [cardState, setCardState] = useState({ expanded: false })
23
25
  if (
@@ -48,7 +50,7 @@ const PricingCard: FC<PricingCardProps> = ({
48
50
  dataQa=''
49
51
  givenClass='see-more-button'
50
52
  color='tertiary'
51
- label={cardState.expanded ? 'See less' : 'See more'}
53
+ label={cardState.expanded ? (seeLessLabel ?? 'See less') : (seeMoreLabel ?? 'See more')}
52
54
  noLink
53
55
  onClick={toggleCardContent}
54
56
  />
@@ -13,4 +13,6 @@ export interface PricingCardProps {
13
13
  disclaimer?: string;
14
14
  message?: MessageProps;
15
15
  cardButton?: any;
16
+ seeLessLabel?: string;
17
+ seeMoreLabel?: string;
16
18
  }
@@ -15,4 +15,6 @@ export interface PricingCardProps {
15
15
  disclaimer?: string
16
16
  message?: MessageProps
17
17
  cardButton?: any
18
+ seeLessLabel?: string
19
+ seeMoreLabel?: string
18
20
  }
@@ -9,6 +9,12 @@ export const RatafiaSubscriptionCardStyled = styled.div `
9
9
  padding: 1rem;
10
10
  border-radius: var(--global-border-radius);
11
11
 
12
+ hr {
13
+ border: none;
14
+ border-top: 1px solid var(--neutral-neutral-4);
15
+ width: 100%;
16
+ }
17
+
12
18
  &.primary {
13
19
  background-color: var(--neutral-neutral-6);
14
20
 
@@ -35,6 +41,10 @@ export const RatafiaSubscriptionCardStyled = styled.div `
35
41
  background-color: var(--secondary-main-light-3);
36
42
  }
37
43
  }
44
+
45
+ .ratafia-card__button {
46
+ color: var(--others-black);
47
+ }
38
48
  }
39
49
 
40
50
  .ratafia-card {
@@ -44,20 +54,24 @@ export const RatafiaSubscriptionCardStyled = styled.div `
44
54
  align-items: center;
45
55
  justify-content: space-between;
46
56
  gap: 0.5rem 1rem;
57
+
58
+ @media ${device.mobile} {
59
+ flex-direction: column;
60
+ align-items: start;
61
+ }
47
62
  }
48
63
 
49
64
  &__title {
50
65
  display: flex;
51
66
  flex-flow: row nowrap;
52
67
  align-items: center;
53
- gap: 0.8rem;
68
+ gap: 0.5rem;
69
+ color: var(--neutral-neutral-1);
54
70
  font-weight: bold;
55
71
  }
56
72
 
57
- hr {
58
- border: none;
59
- border-top: 1px solid var(--neutral-neutral-4);
60
- width: 100%;
73
+ &__price-text {
74
+ font-size: 0.875rem;
61
75
  }
62
76
 
63
77
  &__body {
@@ -72,6 +86,7 @@ export const RatafiaSubscriptionCardStyled = styled.div `
72
86
  justify-content: flex-start;
73
87
  gap: 0.5rem;
74
88
  color: var(--neutral-neutral-1);
89
+ font-size: 0.875rem;
75
90
  text-align: left;
76
91
  padding: 0.25rem 0;
77
92
 
@@ -10,6 +10,12 @@ export const RatafiaSubscriptionCardStyled = styled.div`
10
10
  padding: 1rem;
11
11
  border-radius: var(--global-border-radius);
12
12
 
13
+ hr {
14
+ border: none;
15
+ border-top: 1px solid var(--neutral-neutral-4);
16
+ width: 100%;
17
+ }
18
+
13
19
  &.primary {
14
20
  background-color: var(--neutral-neutral-6);
15
21
 
@@ -36,6 +42,10 @@ export const RatafiaSubscriptionCardStyled = styled.div`
36
42
  background-color: var(--secondary-main-light-3);
37
43
  }
38
44
  }
45
+
46
+ .ratafia-card__button {
47
+ color: var(--others-black);
48
+ }
39
49
  }
40
50
 
41
51
  .ratafia-card {
@@ -45,20 +55,24 @@ export const RatafiaSubscriptionCardStyled = styled.div`
45
55
  align-items: center;
46
56
  justify-content: space-between;
47
57
  gap: 0.5rem 1rem;
58
+
59
+ @media ${device.mobile} {
60
+ flex-direction: column;
61
+ align-items: start;
62
+ }
48
63
  }
49
64
 
50
65
  &__title {
51
66
  display: flex;
52
67
  flex-flow: row nowrap;
53
68
  align-items: center;
54
- gap: 0.8rem;
69
+ gap: 0.5rem;
70
+ color: var(--neutral-neutral-1);
55
71
  font-weight: bold;
56
72
  }
57
73
 
58
- hr {
59
- border: none;
60
- border-top: 1px solid var(--neutral-neutral-4);
61
- width: 100%;
74
+ &__price-text {
75
+ font-size: 0.875rem;
62
76
  }
63
77
 
64
78
  &__body {
@@ -73,6 +87,7 @@ export const RatafiaSubscriptionCardStyled = styled.div`
73
87
  justify-content: flex-start;
74
88
  gap: 0.5rem;
75
89
  color: var(--neutral-neutral-1);
90
+ font-size: 0.875rem;
76
91
  text-align: left;
77
92
  padding: 0.25rem 0;
78
93
 
@@ -15,12 +15,9 @@ export const LayoutRatafiaStyled = styled.div `
15
15
  flex-direction: column;
16
16
  align-items: center;
17
17
  justify-content: space-between;
18
-
19
18
  padding: 1.5rem 1.5rem 0 1.5rem;
20
-
21
19
  width: 100%;
22
- height: calc(100vh - 5.125rem);
23
-
20
+ height: calc(100vh - 8.375rem);
24
21
  border-radius: 16px 16px 0 0;
25
22
  background: var(--others-white);
26
23
  box-shadow: var(--box-shadow-small);
@@ -28,9 +25,9 @@ export const LayoutRatafiaStyled = styled.div `
28
25
  @media ${device['portrait-tablets']} {
29
26
  padding: 2.5rem 2.5rem 1.5rem 2.5rem;
30
27
  }
28
+
31
29
  @media ${device['portrait-tablets']} {
32
30
  width: 800px;
33
- height: 890px;
34
31
  }
35
32
 
36
33
  &__header {
@@ -45,26 +42,31 @@ export const LayoutRatafiaStyled = styled.div `
45
42
  align-items: flex-start;
46
43
  flex: 1 0 0;
47
44
  align-self: stretch;
48
-
49
45
  gap: 1.5rem;
50
46
  margin-bottom: 1rem;
47
+
51
48
  @media ${device['portrait-tablets']} {
52
49
  margin-bottom: 2.5rem;
53
50
  }
54
51
  }
52
+
55
53
  &__cta {
56
54
  display: none;
55
+
57
56
  @media ${device['portrait-tablets']} {
58
57
  display: block;
59
58
  }
60
59
  }
60
+
61
61
  &__footer-desktop {
62
62
  width: 100%;
63
63
  display: none;
64
+
64
65
  @media ${device['portrait-tablets']} {
65
66
  display: block;
66
67
  }
67
68
  }
69
+
68
70
  &__footer-mobile {
69
71
  display: flex;
70
72
  flex-direction: column;
@@ -72,20 +74,14 @@ export const LayoutRatafiaStyled = styled.div `
72
74
  bottom: 0;
73
75
  left: 0;
74
76
  right: 0;
75
-
76
77
  gap: 1rem;
77
78
  padding: 1.5rem;
78
-
79
79
  width: 100vw;
80
80
  background: var(--others-white);
81
+
81
82
  @media ${device['portrait-tablets']} {
82
83
  display: none;
83
84
  }
84
85
  }
85
- .e-button.--primary-1 {
86
- height: auto;
87
- padding: 0.6875rem 1rem;
88
- line-height: 22px;
89
- }
90
86
  }
91
87
  `;
@@ -16,12 +16,9 @@ export const LayoutRatafiaStyled = styled.div`
16
16
  flex-direction: column;
17
17
  align-items: center;
18
18
  justify-content: space-between;
19
-
20
19
  padding: 1.5rem 1.5rem 0 1.5rem;
21
-
22
20
  width: 100%;
23
- height: calc(100vh - 5.125rem);
24
-
21
+ height: calc(100vh - 8.375rem);
25
22
  border-radius: 16px 16px 0 0;
26
23
  background: var(--others-white);
27
24
  box-shadow: var(--box-shadow-small);
@@ -29,9 +26,9 @@ export const LayoutRatafiaStyled = styled.div`
29
26
  @media ${device['portrait-tablets']} {
30
27
  padding: 2.5rem 2.5rem 1.5rem 2.5rem;
31
28
  }
29
+
32
30
  @media ${device['portrait-tablets']} {
33
31
  width: 800px;
34
- height: 890px;
35
32
  }
36
33
 
37
34
  &__header {
@@ -46,26 +43,31 @@ export const LayoutRatafiaStyled = styled.div`
46
43
  align-items: flex-start;
47
44
  flex: 1 0 0;
48
45
  align-self: stretch;
49
-
50
46
  gap: 1.5rem;
51
47
  margin-bottom: 1rem;
48
+
52
49
  @media ${device['portrait-tablets']} {
53
50
  margin-bottom: 2.5rem;
54
51
  }
55
52
  }
53
+
56
54
  &__cta {
57
55
  display: none;
56
+
58
57
  @media ${device['portrait-tablets']} {
59
58
  display: block;
60
59
  }
61
60
  }
61
+
62
62
  &__footer-desktop {
63
63
  width: 100%;
64
64
  display: none;
65
+
65
66
  @media ${device['portrait-tablets']} {
66
67
  display: block;
67
68
  }
68
69
  }
70
+
69
71
  &__footer-mobile {
70
72
  display: flex;
71
73
  flex-direction: column;
@@ -73,20 +75,14 @@ export const LayoutRatafiaStyled = styled.div`
73
75
  bottom: 0;
74
76
  left: 0;
75
77
  right: 0;
76
-
77
78
  gap: 1rem;
78
79
  padding: 1.5rem;
79
-
80
80
  width: 100vw;
81
81
  background: var(--others-white);
82
+
82
83
  @media ${device['portrait-tablets']} {
83
84
  display: none;
84
85
  }
85
86
  }
86
- .e-button.--primary-1 {
87
- height: auto;
88
- padding: 0.6875rem 1rem;
89
- line-height: 22px;
90
- }
91
87
  }
92
88
  `
@@ -0,0 +1,3 @@
1
+ import { type FC } from 'react';
2
+ import { LimitReachedContentRatafiaProps } from '../LimitReachedContentRatafia';
3
+ export declare const LimitReachedContentRatafia: FC<LimitReachedContentRatafiaProps>;
@@ -0,0 +1,5 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { LimitReachedContentRatafiaStyled } from './LimitReachedContentRatafia.styled';
3
+ export const LimitReachedContentRatafia = ({ title, message, icon }) => {
4
+ return (_jsxs(LimitReachedContentRatafiaStyled, { className: 'limit-reached-content-ratafia', children: [_jsx("h2", { className: 'limit-reached-content-ratafia__title sans-serif --bold-weight', children: title }), _jsxs("div", { className: 'limit-reached-content-ratafia__message', children: [_jsx("div", { className: 'limit-reached-content-ratafia__message__icon', children: icon }), _jsx("div", { className: 'limit-reached-content-ratafia__message__text sans-serif --small', children: message })] })] }));
5
+ };
@@ -0,0 +1 @@
1
+ export declare const LimitReachedContentRatafiaStyled: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
@@ -0,0 +1,41 @@
1
+ import { device } from '../../../globalStyles/breakpoints';
2
+ import styled from 'styled-components';
3
+ export const LimitReachedContentRatafiaStyled = styled.div `
4
+ display: flex;
5
+ flex-direction: column;
6
+ align-items: flex-start;
7
+ gap: 1rem;
8
+ align-self: stretch;
9
+ @media ${device['portrait-tablets']} {
10
+ gap: 2rem;
11
+ }
12
+ .limit-reached-content-ratafia {
13
+ &__title {
14
+ color: var(--neutral-neutral-2);
15
+ font-size: 1rem;
16
+ @media ${device['portrait-tablets']} {
17
+ font-size: 1.125rem;
18
+ }
19
+ }
20
+ &__message {
21
+ display: flex;
22
+ padding: 0.5rem;
23
+ align-items: flex-start;
24
+ gap: 0.5rem;
25
+ @media ${device['portrait-tablets']} {
26
+ align-items: center;
27
+ }
28
+
29
+ border-radius: 0.25rem;
30
+ background: var(--neutral-neutral-6);
31
+ &__icon {
32
+ width: 0.875rem;
33
+ height: 0.875rem;
34
+ flex-shrink: 0;
35
+ }
36
+ &__text {
37
+ color: var(--neutral-neutral-2);
38
+ }
39
+ }
40
+ }
41
+ `;
@@ -0,0 +1,42 @@
1
+ import { device } from '../../../globalStyles/breakpoints'
2
+ import styled from 'styled-components'
3
+
4
+ export const LimitReachedContentRatafiaStyled = styled.div`
5
+ display: flex;
6
+ flex-direction: column;
7
+ align-items: flex-start;
8
+ gap: 1rem;
9
+ align-self: stretch;
10
+ @media ${device['portrait-tablets']} {
11
+ gap: 2rem;
12
+ }
13
+ .limit-reached-content-ratafia {
14
+ &__title {
15
+ color: var(--neutral-neutral-2);
16
+ font-size: 1rem;
17
+ @media ${device['portrait-tablets']} {
18
+ font-size: 1.125rem;
19
+ }
20
+ }
21
+ &__message {
22
+ display: flex;
23
+ padding: 0.5rem;
24
+ align-items: flex-start;
25
+ gap: 0.5rem;
26
+ @media ${device['portrait-tablets']} {
27
+ align-items: center;
28
+ }
29
+
30
+ border-radius: 0.25rem;
31
+ background: var(--neutral-neutral-6);
32
+ &__icon {
33
+ width: 0.875rem;
34
+ height: 0.875rem;
35
+ flex-shrink: 0;
36
+ }
37
+ &__text {
38
+ color: var(--neutral-neutral-2);
39
+ }
40
+ }
41
+ }
42
+ `
@@ -0,0 +1,16 @@
1
+ import React, { type FC } from 'react'
2
+
3
+ import { LimitReachedContentRatafiaProps } from '../LimitReachedContentRatafia'
4
+ import { LimitReachedContentRatafiaStyled } from './LimitReachedContentRatafia.styled'
5
+
6
+ export const LimitReachedContentRatafia: FC<LimitReachedContentRatafiaProps> = ({ title, message, icon }) => {
7
+ return (
8
+ <LimitReachedContentRatafiaStyled className='limit-reached-content-ratafia'>
9
+ <h2 className='limit-reached-content-ratafia__title sans-serif --bold-weight'>{title}</h2>
10
+ <div className='limit-reached-content-ratafia__message'>
11
+ <div className='limit-reached-content-ratafia__message__icon'>{icon}</div>
12
+ <div className='limit-reached-content-ratafia__message__text sans-serif --small'>{message}</div>
13
+ </div>
14
+ </LimitReachedContentRatafiaStyled>
15
+ )
16
+ }
@@ -0,0 +1,5 @@
1
+ export interface LimitReachedContentRatafiaProps {
2
+ title: string;
3
+ message?: React.ReactNode;
4
+ icon?: React.ReactNode;
5
+ }
@@ -0,0 +1,5 @@
1
+ export interface LimitReachedContentRatafiaProps {
2
+ title: string
3
+ message?: React.ReactNode
4
+ icon?: React.ReactNode
5
+ }
@@ -0,0 +1,2 @@
1
+ export { LimitReachedContentRatafia } from './LimitReachedContentRatafia';
2
+ export { type LimitReachedContentRatafiaProps } from './LimitReachedContentRatafiaProps.types';
@@ -0,0 +1 @@
1
+ export { LimitReachedContentRatafia } from './LimitReachedContentRatafia';
@@ -0,0 +1,2 @@
1
+ export { LimitReachedContentRatafia } from './LimitReachedContentRatafia'
2
+ export { type LimitReachedContentRatafiaProps } from './LimitReachedContentRatafiaProps.types'
@@ -16,6 +16,7 @@ export * from './KeyFactsResultContentRatafia';
16
16
  export * from './LanguageSelector';
17
17
  export * from './LanguageSelectorMobile';
18
18
  export * from './LayoutRatafia';
19
+ export * from './LimitReachedContentRatafia';
19
20
  export * from './ListStepsGetForm';
20
21
  export * from './LoginRatafiaContent';
21
22
  export * from './MobileBottomBar';
@@ -16,6 +16,7 @@ export * from './KeyFactsResultContentRatafia';
16
16
  export * from './LanguageSelector';
17
17
  export * from './LanguageSelectorMobile';
18
18
  export * from './LayoutRatafia';
19
+ export * from './LimitReachedContentRatafia';
19
20
  export * from './ListStepsGetForm';
20
21
  export * from './LoginRatafiaContent';
21
22
  export * from './MobileBottomBar';
@@ -16,6 +16,7 @@ export * from './KeyFactsResultContentRatafia'
16
16
  export * from './LanguageSelector'
17
17
  export * from './LanguageSelectorMobile'
18
18
  export * from './LayoutRatafia'
19
+ export * from './LimitReachedContentRatafia'
19
20
  export * from './ListStepsGetForm'
20
21
  export * from './LoginRatafiaContent'
21
22
  export * from './MobileBottomBar'
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ import { LimitReachedRatafiaPageProps } from './LimitReachedRatafiaPageProps.types';
3
+ export declare const LimitReachedRatafiaPage: React.FC<LimitReachedRatafiaPageProps>;
@@ -0,0 +1,13 @@
1
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Button } from '../../atoms';
3
+ import DisclaimerRatafia from '../../atoms/DisclaimerRatafia/DisclaimerRatafia';
4
+ import { LayoutRatafia } from '../../organisms/LayoutRatafia';
5
+ import { LimitReachedContentRatafia } from '../../organisms';
6
+ import { LimitReachedRatafiaPageStyled } from './LimitReachedRatafiaPage.styled';
7
+ export const LimitReachedRatafiaPage = ({ header, limitReachedContent, disclaimer, goToDashboardCta }) => {
8
+ const ctaButton = (_jsx(Button, { givenClass: 'limit-reached-ratafia-page__cta', dataQa: goToDashboardCta.dataQa, color: 'primary', label: goToDashboardCta.label, link: goToDashboardCta.link }));
9
+ const content = _jsx(LimitReachedContentRatafia, { ...limitReachedContent });
10
+ const footerDesktop = (_jsx(DisclaimerRatafia, { icon: disclaimer.icon, text: disclaimer.text, copyrightText: disclaimer.copyrightText, ctaTextShowDisclaimer: disclaimer.ctaTextShowDisclaimer, ctaTextCloseDisclaimer: disclaimer.ctaTextCloseDisclaimer }));
11
+ const footerMobile = (_jsxs(_Fragment, { children: [footerDesktop, ctaButton] }));
12
+ return (_jsx(LimitReachedRatafiaPageStyled, { className: 'limit-reached-ratafia-page', children: _jsx(LayoutRatafia, { header: header, content: content, cta: ctaButton, footerDesktop: footerDesktop, footerMobile: footerMobile }) }));
13
+ };
@@ -0,0 +1 @@
1
+ export declare const LimitReachedRatafiaPageStyled: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
@@ -0,0 +1,22 @@
1
+ import { device } from '../../../globalStyles/breakpoints';
2
+ import styled from 'styled-components';
3
+ export const LimitReachedRatafiaPageStyled = styled.div `
4
+ background-color: var(--neutral-neutral-6);
5
+ display: flex;
6
+ flex-direction: column;
7
+ align-items: flex-start;
8
+ flex: 1 0 0;
9
+ align-self: stretch;
10
+ gap: 1.5rem;
11
+ .limit-reached-ratafia-page {
12
+ &__cta {
13
+ align-self: start;
14
+ display: block;
15
+ width: 100%;
16
+ margin-top: 0.5rem;
17
+ @media ${device['portrait-tablets']} {
18
+ display: inline-block;
19
+ }
20
+ }
21
+ }
22
+ `;
@@ -0,0 +1,23 @@
1
+ import { device } from '../../../globalStyles/breakpoints'
2
+ import styled from 'styled-components'
3
+
4
+ export const LimitReachedRatafiaPageStyled = styled.div`
5
+ background-color: var(--neutral-neutral-6);
6
+ display: flex;
7
+ flex-direction: column;
8
+ align-items: flex-start;
9
+ flex: 1 0 0;
10
+ align-self: stretch;
11
+ gap: 1.5rem;
12
+ .limit-reached-ratafia-page {
13
+ &__cta {
14
+ align-self: start;
15
+ display: block;
16
+ width: 100%;
17
+ margin-top: 0.5rem;
18
+ @media ${device['portrait-tablets']} {
19
+ display: inline-block;
20
+ }
21
+ }
22
+ }
23
+ `