@npm_leadtech/legal-lib-components 5.39.9 → 5.39.10

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 (39) hide show
  1. package/dist/css/styles.css +89 -203
  2. package/dist/src/components/atoms/Radio/Radio.d.ts +2 -2
  3. package/dist/src/components/atoms/Radio/Radio.js +16 -15
  4. package/dist/src/components/atoms/Radio/Radio.scss +103 -185
  5. package/dist/src/components/atoms/Radio/Radio.tsx +38 -34
  6. package/dist/src/components/atoms/Radio/RadioProps.types.d.ts +9 -3
  7. package/dist/src/components/atoms/Radio/RadioProps.types.js +6 -1
  8. package/dist/src/components/atoms/Radio/RadioProps.types.ts +10 -3
  9. package/dist/src/components/molecules/Feedback/Feedback.js +1 -1
  10. package/dist/src/components/molecules/Feedback/Feedback.tsx +2 -2
  11. package/dist/src/components/molecules/Feedback/FeedbackProps.types.d.ts +2 -2
  12. package/dist/src/components/molecules/Feedback/FeedbackProps.types.ts +2 -2
  13. package/dist/src/components/molecules/RatafiaSubscriptionCard/RatafiaSubscriptionCard.js +2 -2
  14. package/dist/src/components/molecules/RatafiaSubscriptionCard/RatafiaSubscriptionCard.styled.js +1 -1
  15. package/dist/src/components/molecules/RatafiaSubscriptionCard/RatafiaSubscriptionCard.styled.ts +1 -1
  16. package/dist/src/components/molecules/RatafiaSubscriptionCard/RatafiaSubscriptionCard.tsx +1 -2
  17. package/dist/src/components/molecules/RatafiaSubscriptionCard/RatafiaSubscriptionCardProps.types.d.ts +0 -2
  18. package/dist/src/components/molecules/RatafiaSubscriptionCard/RatafiaSubscriptionCardProps.types.ts +0 -2
  19. package/dist/src/components/pages/PricingRatafiaPage/PricingRatafiaPage.d.ts +3 -0
  20. package/dist/src/components/pages/{RatafiaPricingPage/RatafiaPricingPage.js → PricingRatafiaPage/PricingRatafiaPage.js} +5 -4
  21. package/dist/src/components/pages/{RatafiaPricingPage/RatafiaPricingPage.styled.d.ts → PricingRatafiaPage/PricingRatafiaPage.styled.d.ts} +1 -1
  22. package/dist/src/components/pages/{RatafiaPricingPage/RatafiaPricingPage.styled.js → PricingRatafiaPage/PricingRatafiaPage.styled.js} +1 -1
  23. package/dist/src/components/pages/{RatafiaPricingPage/RatafiaPricingPage.styled.ts → PricingRatafiaPage/PricingRatafiaPage.styled.ts} +1 -1
  24. package/dist/src/components/pages/{RatafiaPricingPage/RatafiaPricingPage.tsx → PricingRatafiaPage/PricingRatafiaPage.tsx} +8 -7
  25. package/dist/src/components/pages/{RatafiaPricingPage/RatafiaPricingPageProps.d.ts → PricingRatafiaPage/PricingRatafiaPageProps.d.ts} +6 -3
  26. package/dist/src/components/pages/{RatafiaPricingPage/RatafiaPricingPageProps.ts → PricingRatafiaPage/PricingRatafiaPageProps.ts} +7 -3
  27. package/dist/src/components/pages/PricingRatafiaPage/index.d.ts +2 -0
  28. package/dist/src/components/pages/PricingRatafiaPage/index.js +2 -0
  29. package/dist/src/components/pages/PricingRatafiaPage/index.ts +2 -0
  30. package/dist/src/components/pages/index.d.ts +1 -1
  31. package/dist/src/components/pages/index.js +1 -1
  32. package/dist/src/components/pages/index.ts +1 -1
  33. package/dist/tsconfig.build.tsbuildinfo +1 -1
  34. package/package.json +2 -2
  35. package/dist/src/components/pages/RatafiaPricingPage/RatafiaPricingPage.d.ts +0 -3
  36. package/dist/src/components/pages/RatafiaPricingPage/index.d.ts +0 -2
  37. package/dist/src/components/pages/RatafiaPricingPage/index.js +0 -2
  38. package/dist/src/components/pages/RatafiaPricingPage/index.ts +0 -2
  39. /package/dist/src/components/pages/{RatafiaPricingPage/RatafiaPricingPageProps.js → PricingRatafiaPage/PricingRatafiaPageProps.js} +0 -0
@@ -1,110 +1,59 @@
1
1
  @import '../../../globalStyles/variables.scss';
2
2
  @import '../../../globalStyles/mediaqueries.scss';
3
3
 
4
- @mixin regularStyles {
4
+ @mixin defaultStyles {
5
5
  .e-radio__inner {
6
6
  display: flex;
7
- flex-flow: row wrap;
8
- width: 100%;
9
- margin-left: 1.5rem;
10
-
11
- label {
12
- margin-bottom: 0.25rem;
13
- flex-basis: 100%;
14
- display: flex;
15
- align-items: center;
16
- color: var(--neutral-main);
17
- font-size: 16px;
18
- position: relative;
19
- cursor: pointer;
20
- width: 100%;
21
- }
22
- }
23
-
24
- input {
25
- position: absolute;
26
- left: -9999px;
27
-
28
- &:not(:checked):hover + label {
29
- &:before {
30
- background-color: var(--primary-main-light-5);
31
- }
32
- }
7
+ flex-direction: column;
8
+ gap: 1rem;
9
+ .radio-item-container {
10
+ .e-radio-label {
11
+ display: flex;
12
+ align-items: center;
13
+ gap: 0.5rem;
14
+
15
+ input[type='radio']:after {
16
+ width: 16px;
17
+ height: 16px;
18
+ border-radius: 16px;
19
+ top: -4px;
20
+ left: -2px;
21
+ position: relative;
22
+ background-color: var(--others-white);
23
+ content: '';
24
+ display: inline-block;
25
+ visibility: visible;
26
+ border: 1px solid var(--neutral-neutral-1);
27
+ cursor: pointer;
28
+ }
33
29
 
34
- &:checked:hover + label {
35
- &:before {
36
- background-color: var(--primary-main);
30
+ .e-radio-label__label {
31
+ cursor: pointer;
32
+ }
37
33
  }
38
- }
39
34
 
40
- &:checked + label {
41
- color: var(--primary-main);
42
- text-shadow:
43
- -0.02ex 0 get-color(primary),
44
- 0.02ex 0 var(--primary-main);
45
-
46
- &:before {
47
- content: '';
48
- position: absolute;
49
- top: 2px;
50
- left: -23px;
51
- height: 1.25rem;
52
- width: 1.25rem;
53
- background-color: var(--primary-main);
54
- border: 1px solid var(--primary-main);
55
- border-radius: 50%;
56
- box-sizing: border-box;
35
+ &.active {
36
+ .e-radio-label {
37
+ input[type='radio']:after {
38
+ border: 5px solid var(--primary-main);
39
+ }
40
+ .e-radio-label__label {
41
+ color: var(--primary-main);
42
+ }
43
+ }
57
44
  }
58
45
 
59
- &:after {
60
- content: '';
61
- position: absolute;
62
- top: 0.5rem;
63
- left: -17px;
64
- display: block;
65
- height: 0.5rem;
66
- width: 0.5rem;
67
- background: currentColor;
68
- border-radius: 50%;
69
- opacity: 1;
70
- transform: scale(1);
71
- color: #fff;
72
- transition: all 0.1s;
46
+ &:hover {
47
+ .e-radio-label {
48
+ input[type='radio']:after {
49
+ background-color: var(--primary-main-light-5);
50
+ }
51
+ }
73
52
  }
74
53
  }
75
54
 
76
- + label {
77
- cursor: pointer;
78
- font-size: 16px;
79
-
80
- &:before {
81
- content: '';
82
- position: absolute;
83
- left: -23px;
84
- top: 2px;
85
- height: 1.25rem;
86
- width: 1.25rem;
87
- border-radius: 50%;
88
- background-color: transparent;
89
- border: 1px solid var(--neutral-main);
90
- box-sizing: border-box;
91
- }
92
-
93
- &:after {
94
- position: absolute;
95
- top: 0.5rem;
96
- left: -17px;
97
- display: block;
98
- height: 0.5rem;
99
- width: 0.5rem;
100
- opacity: 0;
101
- transform: scale(0);
102
- color: var(--others-white);
103
- transition: all 0.1s;
104
- content: '';
105
- bottom: 0.5rem;
106
- border-radius: 50%;
107
- }
55
+ @include portrait-tablets {
56
+ gap: 0.5rem;
108
57
  }
109
58
  }
110
59
  }
@@ -178,62 +127,69 @@
178
127
  }
179
128
 
180
129
  @mixin iconStyles {
181
- .radio-icon {
182
- display: none;
130
+ .e-radio__inner {
131
+ display: flex;
132
+ flex-flow: row wrap;
133
+ margin-top: 1.5rem;
183
134
  }
184
- @include portrait-tablets {
185
- .e-radio__inner {
186
- display: flex;
187
- flex-flow: row wrap;
188
- margin-top: 1.5rem;
189
- }
190
135
 
191
- .radio-item-container {
192
- display: flex;
193
- width: 47%;
194
- border: 1px solid black;
195
- min-width: 80px;
196
- min-height: 3.5rem;
197
- margin-bottom: 0.5rem;
198
- border-radius: var(--global-border-radius);
199
- border-color: var(--neutral-neutral-4);
200
- cursor: pointer;
201
- }
136
+ .radio-item-container {
137
+ display: flex;
138
+ width: 47%;
139
+ border: 1px solid black;
140
+ min-width: 80px;
141
+ min-height: 3.5rem;
142
+ margin-bottom: 0.5rem;
143
+ border-radius: var(--global-border-radius);
144
+ border-color: var(--neutral-neutral-4);
145
+ cursor: pointer;
146
+ }
202
147
 
203
- .radio-item-container:not(:nth-child(2n + 0)) {
204
- margin-right: 0.5rem;
205
- }
148
+ .radio-item-container:not(:nth-child(2n + 0)) {
149
+ margin-right: 0.5rem;
150
+ }
206
151
 
207
- .radio-item-input {
208
- position: absolute;
209
- visibility: hidden;
210
- }
152
+ .radio-item-input {
153
+ position: absolute;
154
+ visibility: hidden;
155
+ }
211
156
 
212
- .radio-item-container.active {
213
- border: 2px solid var(--primary-main-dark-1);
214
- background-color: var(--neutral-neutral-5);
215
- }
157
+ .radio-item-container.active {
158
+ border: 2px solid var(--primary-main-dark-1);
159
+ background-color: var(--neutral-neutral-5);
160
+ }
216
161
 
217
- .radio-item-container:hover {
218
- background-color: var(--neutral-neutral-5);
219
- font-weight: bold;
220
- }
162
+ .radio-item-container:hover {
163
+ background-color: var(--neutral-neutral-5);
164
+ font-weight: bold;
165
+ }
221
166
 
222
- .e-radio-label {
223
- display: flex;
224
- align-items: center;
225
- padding: 0.25rem 1rem;
226
- width: 100%;
227
- }
167
+ .e-radio-label {
168
+ display: flex;
169
+ align-items: center;
170
+ padding: 0.25rem 1rem;
171
+ width: 100%;
172
+ }
228
173
 
229
- .radio-icon {
230
- display: block;
231
- margin-right: 1rem;
232
- }
174
+ .radio-icon {
175
+ display: block;
176
+ margin-right: 1rem;
233
177
  }
234
178
  }
235
179
 
236
180
  .e-radio {
181
+ .label {
182
+ color: var(--neutral-neutral-1);
183
+ margin-bottom: 1rem;
184
+ display: block;
185
+ }
186
+
187
+ &.default {
188
+ @include defaultStyles;
189
+ }
190
+
191
+ // por aqui
192
+
237
193
  label:first-child:not(.e-radio-label) {
238
194
  font-weight: bold;
239
195
  }
@@ -242,17 +198,6 @@
242
198
  width: 100%;
243
199
  }
244
200
 
245
- &.--regular {
246
- @media (max-width: #{$xs}) {
247
- @include regularStyles;
248
- }
249
- &:not(.--icons) {
250
- @media (min-width: #{$xs}) {
251
- @include regularStyles;
252
- }
253
- }
254
- }
255
-
256
201
  &.--tabs {
257
202
  @media (max-width: #{$xs}) {
258
203
  @include tabsStyles;
@@ -265,21 +210,19 @@
265
210
  }
266
211
 
267
212
  &.--icons {
268
- @include iconStyles;
213
+ @include mobile {
214
+ @include defaultStyles();
215
+ }
216
+ .radio-icon {
217
+ display: none;
218
+ }
219
+ @include portrait-tablets {
220
+ @include iconStyles;
221
+ }
269
222
  }
270
223
 
271
224
  &.--is-invalid,
272
225
  &.--group-invalid {
273
- &.--regular {
274
- input {
275
- & + label {
276
- &:before {
277
- border-color: var(--error-main);
278
- }
279
- }
280
- }
281
- }
282
-
283
226
  &.--tabs,
284
227
  &.--group-invalid {
285
228
  .e-radio__inner {
@@ -301,10 +244,6 @@
301
244
  }
302
245
  }
303
246
 
304
- .radio-group__label {
305
- color: var(--neutral-neutral-1);
306
- }
307
-
308
247
  .e-radio.radio--small.--tabs {
309
248
  input + label {
310
249
  font-size: 0.875rem;
@@ -316,24 +255,3 @@
316
255
  margin-bottom: 0;
317
256
  }
318
257
  }
319
-
320
- .e-radio.radio--narrow.--regular {
321
- .e-radio__inner {
322
- margin-top: 0.5rem;
323
- }
324
- }
325
-
326
- .e-radio.--regular.radio--regular--bare {
327
- .e-radio__inner {
328
- display: inline-block;
329
- margin-right: auto;
330
- text-align: left;
331
- width: auto;
332
- }
333
-
334
- .e-radio-label,
335
- .e-radio-label__label {
336
- display: block;
337
- margin-bottom: 0.75rem;
338
- }
339
- }
@@ -1,35 +1,39 @@
1
- import React, { type FC } from 'react'
1
+ import React from 'react'
2
2
 
3
+ import { RadioFormat, type RadioProps } from './RadioProps.types'
3
4
  import IconImage from '../IconImage/IconImage'
4
- import { type RadioProps } from './RadioProps.types'
5
5
  // import './Radio.scss'
6
6
 
7
- const Radio: FC<RadioProps> = (props) => {
8
- const optionalClassNames = {
9
- small: 'radio--small',
10
- narrow: 'radio--narrow',
11
- regularBare: 'radio--regular--bare'
12
- }
13
-
14
- const additionalClassNames = Object.keys(optionalClassNames)
15
- .filter((attribute) => props[attribute])
16
- .map((key) => optionalClassNames[key])
17
- .join(' ')
18
-
19
- const classNames = `e-radio ${props.class} ${!props.validate ? '--is-invalid' : ''} ${
20
- !props.isValidGroup ? '--group-invalid' : ''
21
- } ${additionalClassNames}`
22
- const TooltipObject = props.tooltip ? <p className='tooltip-form sans-serif --small'>{props.tooltip}</p> : ''
23
-
7
+ const Radio: React.FC<RadioProps> = ({
8
+ class: className,
9
+ format = RadioFormat.Default,
10
+ validate = false,
11
+ isValidGroup = false,
12
+ tooltip,
13
+ name,
14
+ label,
15
+ items,
16
+ value,
17
+ disabled = false,
18
+ help,
19
+ onChange
20
+ }) => {
21
+ const [classNameValue] = React.useState<string>(() => {
22
+ let value = `e-radio ${format}`
23
+ if (className) value += ` ${className}`
24
+ if (!validate) value += ' --is-invalid'
25
+ if (!isValidGroup) value += ' --group-invalid'
26
+ return value
27
+ })
24
28
  return (
25
- <div className={classNames}>
26
- <label htmlFor={props.name} className='radio-group__label'>
27
- {props.label}
29
+ <div className={classNameValue}>
30
+ <label htmlFor={name} className='sans-serif --medium --bold-weight label'>
31
+ {label}
28
32
  </label>
29
33
  <div className={'e-radio__inner'}>
30
- {props.items?.map((radio) => {
34
+ {items.map((radio) => {
31
35
  return (
32
- <div className={`radio-item-container ${radio.value === props.value ? 'active' : ''}`} key={radio.value}>
36
+ <div className={`radio-item-container ${radio.value === value ? 'active' : ''}`} key={radio.value}>
33
37
  <label className='e-radio-label' key={radio.value}>
34
38
  {radio.iconName !== undefined && radio.iconName !== '' && (
35
39
  <IconImage givenClass='radio-icon' iconName={radio.iconName} />
@@ -37,27 +41,27 @@ const Radio: FC<RadioProps> = (props) => {
37
41
  <input
38
42
  type='radio'
39
43
  className='radio-item-input'
40
- id={`${props.name}_${radio.value}`}
41
- name={props.name}
42
- onChange={props.onChange}
44
+ id={`${name}_${radio.value}`}
45
+ name={name}
46
+ onChange={onChange}
43
47
  value={radio.value}
44
- checked={radio.value === props.value}
45
- disabled={props.disabled}
48
+ checked={radio.value === value}
49
+ disabled={disabled}
46
50
  />
47
51
  <label
48
- className='e-radio-label__label'
49
- htmlFor={`${props.name}_${radio.value}`}
50
- data-qa={`${props.name}_${radio.value}`}
52
+ className='e-radio-label__label sans-serif --medium'
53
+ htmlFor={`${name}_${radio.value}`}
54
+ data-qa={`${name}_${radio.value}`}
51
55
  >
52
56
  {radio.label}
53
57
  </label>
54
- <div>{props.help}</div>
58
+ {help && <div>{help}</div>}
55
59
  </label>
56
60
  </div>
57
61
  )
58
62
  })}
59
63
  </div>
60
- {TooltipObject}
64
+ {tooltip ?? <p className='tooltip-form sans-serif --small'>{tooltip}</p>}
61
65
  </div>
62
66
  )
63
67
  }
@@ -1,18 +1,24 @@
1
1
  export interface RadioProps {
2
2
  id?: string;
3
- name?: string;
3
+ name: string;
4
4
  class?: string;
5
+ format?: RadioFormat;
5
6
  value?: string;
6
7
  tooltip?: string;
7
- label?: string;
8
+ label: string;
8
9
  help?: string;
9
10
  validate?: boolean;
10
11
  isValidGroup?: boolean;
11
12
  disabled?: boolean;
12
- items?: {
13
+ items: {
13
14
  value: string;
14
15
  label: string;
15
16
  iconName?: string;
16
17
  }[];
17
18
  onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
18
19
  }
20
+ export declare enum RadioFormat {
21
+ Default = "default",
22
+ Tabs = "--tabs",
23
+ Icons = "--icons"
24
+ }
@@ -1 +1,6 @@
1
- export {};
1
+ export var RadioFormat;
2
+ (function (RadioFormat) {
3
+ RadioFormat["Default"] = "default";
4
+ RadioFormat["Tabs"] = "--tabs";
5
+ RadioFormat["Icons"] = "--icons";
6
+ })(RadioFormat || (RadioFormat = {}));
@@ -1,14 +1,21 @@
1
1
  export interface RadioProps {
2
2
  id?: string
3
- name?: string
3
+ name: string
4
4
  class?: string
5
+ format?: RadioFormat
5
6
  value?: string
6
7
  tooltip?: string
7
- label?: string
8
+ label: string
8
9
  help?: string
9
10
  validate?: boolean
10
11
  isValidGroup?: boolean
11
12
  disabled?: boolean
12
- items?: { value: string; label: string; iconName?: string }[]
13
+ items: { value: string; label: string; iconName?: string }[]
13
14
  onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void
14
15
  }
16
+
17
+ export enum RadioFormat {
18
+ Default = 'default',
19
+ Tabs = '--tabs',
20
+ Icons = '--icons'
21
+ }
@@ -14,7 +14,7 @@ const themes = {
14
14
  icon: _jsx(Done24pxOutline, {})
15
15
  }
16
16
  };
17
- const Feedback = ({ theme = 'success', title, text, button, cancel, large = false, fluid = false, imgSrc = '', dataQa = '' }) => {
17
+ const Feedback = ({ theme = 'success', title, text, button, cancel, large, fluid, imgSrc = '', dataQa = '' }) => {
18
18
  const currentTheme = themes[theme] ?? {};
19
19
  if (Object.keys(currentTheme).length === 0 && imgSrc.length === 0) {
20
20
  return null;
@@ -28,8 +28,8 @@ const Feedback: FC<FeedbackProps> = ({
28
28
  text,
29
29
  button,
30
30
  cancel,
31
- large = false,
32
- fluid = false,
31
+ large,
32
+ fluid,
33
33
  imgSrc = '',
34
34
  dataQa = ''
35
35
  }) => {
@@ -4,8 +4,8 @@ export interface FeedbackProps {
4
4
  title?: string;
5
5
  text?: string;
6
6
  imgSrc?: string;
7
- large?: boolean;
8
- fluid?: boolean;
7
+ large: boolean;
8
+ fluid: boolean;
9
9
  dataQa?: string;
10
10
  button?: ButtonProps;
11
11
  cancel?: {
@@ -5,8 +5,8 @@ export interface FeedbackProps {
5
5
  title?: string
6
6
  text?: string
7
7
  imgSrc?: string
8
- large?: boolean
9
- fluid?: boolean
8
+ large: boolean
9
+ fluid: boolean
10
10
  dataQa?: string
11
11
  button?: ButtonProps
12
12
  cancel?: {
@@ -2,11 +2,11 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { Button, IconSvgURLWithThemeColor, RichTextStrapi } from '../../atoms';
3
3
  import { RatafiaSubscriptionCardStyled } from './RatafiaSubscriptionCard.styled';
4
4
  import { stringSlugify } from '../../../utils/stringSlugify';
5
- const RatafiaSubscriptionCard = ({ cardStyle = 'primary', iconTitle, title, priceText, mainFeatures, AIFeatures, buttonText, dataQa, handleClick }) => {
5
+ const RatafiaSubscriptionCard = ({ cardStyle = 'primary', iconTitle, title, priceText, mainFeatures, AIFeatures, buttonText, handleClick }) => {
6
6
  if (!title)
7
7
  return null;
8
8
  const buttonStyle = cardStyle === 'Secondary' ? 'primary3' : 'primary';
9
9
  const renderFeatures = (features, className) => features.map((feature) => (_jsxs("div", { className: `ratafia-card__feature ${className ?? ''}`, children: [feature.image?.url && _jsx(IconSvgURLWithThemeColor, { url: feature.image.url, height: '16', width: '16' }), _jsx(RichTextStrapi, { html: feature.title })] }, feature.title)));
10
- return (_jsxs(RatafiaSubscriptionCardStyled, { className: `ratafia-card ${cardStyle ? stringSlugify(cardStyle) : 'primary'}`, children: [_jsxs("div", { className: 'ratafia-card__header', children: [title && (_jsxs("div", { className: 'ratafia-card__title', children: [iconTitle?.url && _jsx(IconSvgURLWithThemeColor, { url: iconTitle.url, height: '26', width: '26' }), _jsx(RichTextStrapi, { html: title })] })), priceText && _jsx("div", { className: 'ratafia-card__price-text', children: priceText })] }), _jsx("hr", {}), _jsxs("div", { className: 'ratafia-card__body', children: [mainFeatures && renderFeatures(mainFeatures, 'main-feature'), AIFeatures && renderFeatures(AIFeatures, 'ratafia-feature')] }), buttonText && (_jsx("div", { className: 'ratafia-card__footer', children: _jsx(Button, { dataQa: `${dataQa ?? 'ratafia-card-button'}`, givenClass: 'ratafia-card__button', color: buttonStyle, label: buttonText, noLink: true, onClick: handleClick }) }))] }));
10
+ return (_jsxs(RatafiaSubscriptionCardStyled, { className: `ratafia-card ${cardStyle ? stringSlugify(cardStyle) : 'primary'}`, children: [_jsxs("div", { className: 'ratafia-card__header', children: [title && (_jsxs("div", { className: 'ratafia-card__title', children: [iconTitle?.url && _jsx(IconSvgURLWithThemeColor, { url: iconTitle.url, height: '26', width: '26' }), _jsx(RichTextStrapi, { html: title })] })), priceText && _jsx("div", { className: 'ratafia-card__price-text', children: priceText })] }), _jsx("hr", {}), _jsxs("div", { className: 'ratafia-card__body', children: [mainFeatures && renderFeatures(mainFeatures, 'main-feature'), AIFeatures && renderFeatures(AIFeatures, 'ratafia-feature')] }), buttonText && (_jsx("div", { className: 'ratafia-card__footer', children: _jsx(Button, { dataQa: 'ratafia-card-button', givenClass: 'ratafia-card__button', color: buttonStyle, label: buttonText, noLink: true, onClick: handleClick }) }))] }));
11
11
  };
12
12
  export default RatafiaSubscriptionCard;
@@ -5,7 +5,7 @@ export const RatafiaSubscriptionCardStyled = styled.div `
5
5
  flex-flow: column nowrap;
6
6
  flex: 1;
7
7
  gap: 0.5rem;
8
- min-width: 350px;
8
+ min-width: 368px;
9
9
  padding: 1rem;
10
10
  border-radius: var(--global-border-radius);
11
11
 
@@ -6,7 +6,7 @@ export const RatafiaSubscriptionCardStyled = styled.div`
6
6
  flex-flow: column nowrap;
7
7
  flex: 1;
8
8
  gap: 0.5rem;
9
- min-width: 350px;
9
+ min-width: 368px;
10
10
  padding: 1rem;
11
11
  border-radius: var(--global-border-radius);
12
12
 
@@ -13,7 +13,6 @@ const RatafiaSubscriptionCard: FC<RatafiaSubscriptionCardProps> = ({
13
13
  mainFeatures,
14
14
  AIFeatures,
15
15
  buttonText,
16
- dataQa,
17
16
  handleClick
18
17
  }) => {
19
18
  if (!title) return null
@@ -45,7 +44,7 @@ const RatafiaSubscriptionCard: FC<RatafiaSubscriptionCardProps> = ({
45
44
  {buttonText && (
46
45
  <div className='ratafia-card__footer'>
47
46
  <Button
48
- dataQa={`${dataQa ?? 'ratafia-card-button'}`}
47
+ dataQa='ratafia-card-button'
49
48
  givenClass='ratafia-card__button'
50
49
  color={buttonStyle}
51
50
  label={buttonText}
@@ -1,5 +1,4 @@
1
1
  export interface RatafiaSubscriptionCardProps {
2
- subscriptionTypeName?: string;
3
2
  cardStyle?: CardStyleType;
4
3
  iconTitle?: IconTitleProps;
5
4
  title?: string;
@@ -7,7 +6,6 @@ export interface RatafiaSubscriptionCardProps {
7
6
  mainFeatures?: BenefitProps[];
8
7
  AIFeatures?: BenefitProps[];
9
8
  buttonText?: string;
10
- dataQa?: string;
11
9
  handleClick?: () => void;
12
10
  }
13
11
  interface IconTitleProps {
@@ -1,5 +1,4 @@
1
1
  export interface RatafiaSubscriptionCardProps {
2
- subscriptionTypeName?: string
3
2
  cardStyle?: CardStyleType
4
3
  iconTitle?: IconTitleProps
5
4
  title?: string
@@ -7,7 +6,6 @@ export interface RatafiaSubscriptionCardProps {
7
6
  mainFeatures?: BenefitProps[]
8
7
  AIFeatures?: BenefitProps[]
9
8
  buttonText?: string
10
- dataQa?: string
11
9
  handleClick?: () => void
12
10
  }
13
11
 
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ import { type PricingRatafiaPageProps } from './PricingRatafiaPageProps';
3
+ export declare const PricingRatafiaPage: React.FC<PricingRatafiaPageProps>;
@@ -2,10 +2,11 @@ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-run
2
2
  import DisclaimerRatafia from '../../atoms/DisclaimerRatafia/DisclaimerRatafia';
3
3
  import { LayoutRatafia } from '../../organisms';
4
4
  import { RatafiaSubscriptionCard } from '../../molecules';
5
- import { RatafiaPricingPageStyled } from './RatafiaPricingPage.styled';
6
- export const RatafiaPricingPage = ({ header, disclaimer, title, subscriptions }) => {
5
+ import { PricingRatafiaPageStyled } from './PricingRatafiaPage.styled';
6
+ export const PricingRatafiaPage = ({ header, disclaimer, pricingPage }) => {
7
7
  const footerDesktop = (_jsx(DisclaimerRatafia, { icon: disclaimer.icon, text: disclaimer.text, copyrightText: disclaimer.copyrightText, ctaTextShowDisclaimer: disclaimer.ctaTextShowDisclaimer, ctaTextCloseDisclaimer: disclaimer.ctaTextCloseDisclaimer }));
8
8
  const footerMobile = _jsx(_Fragment, { children: footerDesktop });
9
- const content = (_jsxs("div", { className: 'pricing-ratafia-page__content', children: [title && _jsx("div", { className: 'pricing-ratafia-page__content__title', children: title }), _jsx("div", { className: 'pricing-ratafia-page__content__cards', children: subscriptions?.length > 0 && subscriptions.map((card) => _jsx(RatafiaSubscriptionCard, { ...card }, card.id)) })] }));
10
- return (_jsx(RatafiaPricingPageStyled, { className: 'pricing-ratafia-page', children: _jsx(LayoutRatafia, { header: header, content: content, footerDesktop: footerDesktop, footerMobile: footerMobile }) }));
9
+ const content = (_jsxs("div", { className: 'pricing-ratafia-page__content', children: [_jsx("div", { className: 'pricing-ratafia-page__content__title', children: pricingPage.title }), _jsx("div", { className: 'pricing-ratafia-page__content__cards', children: pricingPage.cardSubscription?.length > 0 &&
10
+ pricingPage.cardSubscription.map((card) => _jsx(RatafiaSubscriptionCard, { ...card }, card.id)) })] }));
11
+ return (_jsx(PricingRatafiaPageStyled, { className: 'pricing-ratafia-page', children: _jsx(LayoutRatafia, { header: header, content: content, footerDesktop: footerDesktop, footerMobile: footerMobile }) }));
11
12
  };