@lanaco/lnc-react-ui 4.0.32 → 4.0.33

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 (186) hide show
  1. package/dist/Accordion.cjs +1 -1
  2. package/dist/Accordion.js +1 -1
  3. package/dist/AccordionSummary.cjs +1 -1
  4. package/dist/AccordionSummary.js +1 -1
  5. package/dist/ActionsToolbar.cjs +1 -1
  6. package/dist/ActionsToolbar.js +1 -1
  7. package/dist/Alert.cjs +1 -1
  8. package/dist/Alert.js +1 -1
  9. package/dist/Avatar.cjs +1 -1
  10. package/dist/Avatar.js +1 -1
  11. package/dist/Badge.cjs +1 -1
  12. package/dist/Badge.js +1 -1
  13. package/dist/BannerSectionWithList.cjs +1 -1
  14. package/dist/BannerSectionWithList.js +1 -1
  15. package/dist/BlogsSectionDetailed.cjs +111 -0
  16. package/dist/BlogsSectionDetailed.js +224 -0
  17. package/dist/BlogsSectionLarge.cjs +101 -0
  18. package/dist/BlogsSectionLarge.js +177 -0
  19. package/dist/BlogsSectionSimple.cjs +71 -0
  20. package/dist/BlogsSectionSimple.js +158 -0
  21. package/dist/BlogsSectionSimpleCentered.cjs +78 -0
  22. package/dist/BlogsSectionSimpleCentered.js +149 -0
  23. package/dist/BlogsSectionWithFilters.cjs +173 -0
  24. package/dist/BlogsSectionWithFilters.js +559 -0
  25. package/dist/BrandHitsSection.cjs +11 -7
  26. package/dist/BrandHitsSection.js +9 -5
  27. package/dist/Breadcrumbs.cjs +1 -1
  28. package/dist/Breadcrumbs.js +1 -1
  29. package/dist/Button.cjs +1 -1
  30. package/dist/Button.js +1 -1
  31. package/dist/ButtonGroup.cjs +1 -1
  32. package/dist/ButtonGroup.js +1 -1
  33. package/dist/CheckBoxInput.cjs +1 -1
  34. package/dist/CheckBoxInput.js +1 -1
  35. package/dist/Chip.cjs +1 -1
  36. package/dist/Chip.js +1 -1
  37. package/dist/ColorInput.cjs +1 -1
  38. package/dist/ColorInput.js +1 -1
  39. package/dist/ConfirmationForm.cjs +1 -1
  40. package/dist/ConfirmationForm.js +1 -1
  41. package/dist/CustomLoanMapSection.cjs +240 -0
  42. package/dist/CustomLoanMapSection.js +410 -0
  43. package/dist/{CustomStyles-DuADCM-0.js → CustomStyles-C45a_Y92.js} +1 -1
  44. package/dist/{CustomStyles-CBON9fD-.cjs → CustomStyles-jdvxQvK1.cjs} +1 -1
  45. package/dist/DateInput.cjs +1 -1
  46. package/dist/DateInput.js +1 -1
  47. package/dist/DecimalInput.cjs +1 -1
  48. package/dist/DecimalInput.js +1 -1
  49. package/dist/DecimalInputV2.cjs +1 -1
  50. package/dist/DecimalInputV2.js +1 -1
  51. package/dist/DetailedProductsSection.cjs +1 -1
  52. package/dist/DetailedProductsSection.js +3 -3
  53. package/dist/DetailsView.cjs +1 -1
  54. package/dist/DetailsView.js +1 -1
  55. package/dist/DoubleRangeSlider.cjs +1 -1
  56. package/dist/DoubleRangeSlider.js +1 -1
  57. package/dist/DragAndDropFile.cjs +1 -1
  58. package/dist/DragAndDropFile.js +1 -1
  59. package/dist/DragDropFiles.cjs +1 -1
  60. package/dist/DragDropFiles.js +1 -1
  61. package/dist/Drawer.cjs +1 -1
  62. package/dist/Drawer.js +1 -1
  63. package/dist/Dropdown.cjs +1 -1
  64. package/dist/Dropdown.js +2 -2
  65. package/dist/DropdownItem.cjs +1 -1
  66. package/dist/DropdownItem.js +1 -1
  67. package/dist/DropdownLookup.cjs +1 -1
  68. package/dist/DropdownLookup.js +1 -1
  69. package/dist/DropdownMenu.cjs +1 -1
  70. package/dist/DropdownMenu.js +1 -1
  71. package/dist/EditableTable.cjs +1 -1
  72. package/dist/EditableTable.js +1 -1
  73. package/dist/FieldOfInterestsMasonrySection.cjs +7 -7
  74. package/dist/FieldOfInterestsMasonrySection.js +23 -23
  75. package/dist/FieldOfInterestsWithAvatarsCardsSection.cjs +11 -7
  76. package/dist/FieldOfInterestsWithAvatarsCardsSection.js +62 -58
  77. package/dist/FieldOfInterestsWithTagsCardsSection.cjs +37 -17
  78. package/dist/FieldOfInterestsWithTagsCardsSection.js +68 -48
  79. package/dist/FileInput.cjs +1 -1
  80. package/dist/FileInput.js +1 -1
  81. package/dist/FlexGridItem.cjs +1 -1
  82. package/dist/FlexGridItem.js +1 -1
  83. package/dist/FormField.cjs +1 -1
  84. package/dist/FormField.js +1 -1
  85. package/dist/FormView.cjs +1 -1
  86. package/dist/FormView.js +1 -1
  87. package/dist/GeneralWithTagsCardsSection.cjs +198 -0
  88. package/dist/GeneralWithTagsCardsSection.js +287 -0
  89. package/dist/GiftCardsSection.cjs +11 -7
  90. package/dist/GiftCardsSection.js +34 -30
  91. package/dist/Icon.cjs +1 -1
  92. package/dist/Icon.js +1 -1
  93. package/dist/IconButton.cjs +1 -1
  94. package/dist/IconButton.js +1 -1
  95. package/dist/Kanban.cjs +1 -1
  96. package/dist/Kanban.js +1 -1
  97. package/dist/KanbanActionsToolbar.cjs +1 -1
  98. package/dist/KanbanActionsToolbar.js +1 -1
  99. package/dist/KanbanView.cjs +1 -1
  100. package/dist/KanbanView.js +1 -1
  101. package/dist/Link.cjs +1 -1
  102. package/dist/Link.js +1 -1
  103. package/dist/MasonryGeneralCardsSection.cjs +6 -6
  104. package/dist/MasonryGeneralCardsSection.js +38 -36
  105. package/dist/MenuItem.cjs +1 -1
  106. package/dist/MenuItem.js +1 -1
  107. package/dist/Modal.cjs +1 -1
  108. package/dist/Modal.js +1 -1
  109. package/dist/MultiSelectDropdown.cjs +1 -1
  110. package/dist/MultiSelectDropdown.js +1 -1
  111. package/dist/MultiSelectDropdownLookup.cjs +1 -1
  112. package/dist/MultiSelectDropdownLookup.js +1 -1
  113. package/dist/NestedDropdownItem.cjs +1 -1
  114. package/dist/NestedDropdownItem.js +1 -1
  115. package/dist/NestedMenuItem.cjs +1 -1
  116. package/dist/NestedMenuItem.js +1 -1
  117. package/dist/NotificationContainer.cjs +1 -1
  118. package/dist/NotificationContainer.js +1 -1
  119. package/dist/NotificationMessage.cjs +1 -1
  120. package/dist/NotificationMessage.js +1 -1
  121. package/dist/NumberInput.cjs +1 -1
  122. package/dist/NumberInput.js +1 -1
  123. package/dist/OverlayGeneralCardsSection.cjs +127 -0
  124. package/dist/OverlayGeneralCardsSection.js +183 -0
  125. package/dist/PasswordInput.cjs +1 -1
  126. package/dist/PasswordInput.js +1 -1
  127. package/dist/PopoverContent.cjs +1 -1
  128. package/dist/PopoverContent.js +1 -1
  129. package/dist/ProductsWithBannerSection.cjs +1 -1
  130. package/dist/ProductsWithBannerSection.js +2 -2
  131. package/dist/ProgressBar.cjs +1 -1
  132. package/dist/ProgressBar.js +1 -1
  133. package/dist/RadioInput.cjs +1 -1
  134. package/dist/RadioInput.js +1 -1
  135. package/dist/RangeSlider.cjs +1 -1
  136. package/dist/RangeSlider.js +1 -1
  137. package/dist/Separator.cjs +1 -1
  138. package/dist/Separator.js +1 -1
  139. package/dist/ShopCardsSection.cjs +8 -8
  140. package/dist/ShopCardsSection.js +49 -49
  141. package/dist/Sidebar.cjs +1 -1
  142. package/dist/Sidebar.js +1 -1
  143. package/dist/SimpleCategoriesSection.cjs +81 -0
  144. package/dist/SimpleCategoriesSection.js +153 -0
  145. package/dist/SimpleProductsSection.cjs +1 -1
  146. package/dist/SimpleProductsSection.js +1 -1
  147. package/dist/Spinner.cjs +1 -1
  148. package/dist/Spinner.js +1 -1
  149. package/dist/Surface.cjs +1 -1
  150. package/dist/Surface.js +1 -1
  151. package/dist/SwipeableDrawer.cjs +1 -1
  152. package/dist/SwipeableDrawer.js +1 -1
  153. package/dist/TabItem.cjs +1 -1
  154. package/dist/TabItem.js +1 -1
  155. package/dist/Table.cjs +1 -1
  156. package/dist/Table.js +1 -1
  157. package/dist/TableView.cjs +1 -1
  158. package/dist/TableView.js +1 -1
  159. package/dist/TextAreaInput.cjs +1 -1
  160. package/dist/TextAreaInput.js +1 -1
  161. package/dist/TextInput.cjs +1 -1
  162. package/dist/TextInput.js +1 -1
  163. package/dist/ThemeProvider.cjs +1 -1
  164. package/dist/ThemeProvider.js +1 -1
  165. package/dist/TimeInput.cjs +1 -1
  166. package/dist/TimeInput.js +1 -1
  167. package/dist/Toggle.cjs +1 -1
  168. package/dist/Toggle.js +1 -1
  169. package/dist/TreeMenuSeparator.cjs +1 -1
  170. package/dist/TreeMenuSeparator.js +1 -1
  171. package/dist/UploadedFile.cjs +1 -1
  172. package/dist/UploadedFile.js +1 -1
  173. package/dist/UrgentSaleProductsSection.cjs +1 -1
  174. package/dist/UrgentSaleProductsSection.js +1 -1
  175. package/dist/{index-jVpIwR2G.js → index-BfOdDcQF.js} +1 -1
  176. package/dist/{index-BlV3tdJ8.cjs → index-CC_hdGKn.cjs} +1 -1
  177. package/dist/{index-DGl-lSfF.js → index-DZxSlQJQ.js} +1 -1
  178. package/dist/{index-LdP7U1Yl.cjs → index-Dld_cRbm.cjs} +1 -1
  179. package/dist/index.cjs +1 -1
  180. package/dist/index.js +25 -23
  181. package/dist/{style-C3OB0uad.cjs → style-CeMnBJ6v.cjs} +4 -4
  182. package/dist/{style-Ch-xOasu.js → style-D6sNCRwG.js} +6 -7
  183. package/dist/{utils-CE6bljYe.cjs → utils-UJt-R-G3.cjs} +7 -7
  184. package/dist/{utils-DtEdJZWa.js → utils-xpQsPsCa.js} +33 -33
  185. package/package.json +13 -3
  186. package/vite.config.js +36 -0
@@ -0,0 +1,177 @@
1
+ import { jsxs as l, jsx as t } from "react/jsx-runtime";
2
+ import { forwardRef as d } from "react";
3
+ import { n as g } from "./emotion-styled.browser.esm-BiK8DcgW.js";
4
+ import { M as c } from "./consts-DNVz1x1I.js";
5
+ import { u as h } from "./useDetectMobile-BookNOsk.js";
6
+ import { m as u, t as k } from "./utils-xpQsPsCa.js";
7
+ import s from "./Button.js";
8
+ const y = g.div`
9
+ display: grid;
10
+ grid-template-columns: ${(i) => `repeat(${i.limit}, minmax(0, 1fr))`};
11
+ gap: 1.25rem;
12
+
13
+ @media (max-width: ${c + "px"}) {
14
+ grid-template-columns: repeat(1, 1fr);
15
+ }
16
+ `, b = g.div`
17
+ display: flex;
18
+ width: 100%;
19
+ gap: 1.25rem;
20
+ box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.1),
21
+ 0px 1px 2px 0px rgba(0, 0, 0, 0.06);
22
+ background-color: var(--white);
23
+ border-radius: 0.75rem;
24
+ border: 1px solid var(--gray-95008);
25
+ overflow: hidden;
26
+ max-height: 11.25rem;
27
+ min-height: 11.25rem;
28
+
29
+ & img {
30
+ max-height: 11.25rem;
31
+ min-height: 11.25rem;
32
+ min-width: 11.25rem;
33
+ max-width: 11.25rem;
34
+ object-fit: cover;
35
+ width: 100%;
36
+ border-radius: 0.75rem 0 0 0.75rem;
37
+ }
38
+
39
+ & .skeleton-img {
40
+ width: 100%;
41
+ max-height: 11.25rem;
42
+ min-height: 12.25rem;
43
+ min-width: 11.25rem;
44
+ max-width: 11.25rem;
45
+ background-color: ${u("-90deg")};
46
+ border-radius: 0.75rem 0 0 0.75rem;
47
+ }
48
+
49
+ @media (max-width: ${c + "px"}) {
50
+ padding: 1rem;
51
+ column-gap: 1.5rem;
52
+ row-gap: 1rem;
53
+ display: grid;
54
+ grid-template-columns: repeat(2, auto);
55
+ max-height: 13.25rem;
56
+ min-height: 13.25rem;
57
+ & .action {
58
+ grid-column: 1 / 3;
59
+ }
60
+
61
+ & img,
62
+ .skeleton-img {
63
+ max-height: 7.75rem;
64
+ min-height: 7.75rem;
65
+ min-width: 7.75rem;
66
+ max-width: 7.75rem;
67
+ border-radius: 0.75rem;
68
+ }
69
+
70
+ & button {
71
+ width: 100%;
72
+ margin-top: auto;
73
+ }
74
+ }
75
+ `, w = g.div`
76
+ padding: 1rem;
77
+ display: flex;
78
+ flex-direction: column;
79
+ gap: 0.25rem;
80
+ color: var(--gray-950, #14161a);
81
+
82
+ & .text-wr-title {
83
+ font-weight: 600;
84
+ font-size: 1.25rem;
85
+ }
86
+
87
+ & .text-wr {
88
+ font-weight: 400;
89
+ font-size: 0.875rem;
90
+ color: var(--gray-700, #4e555f);
91
+ ${k(3)}
92
+ }
93
+
94
+ & button {
95
+ width: fit-content;
96
+ margin-top: auto;
97
+ }
98
+
99
+ & .skeleton-title {
100
+ height: 1.75rem;
101
+ width: 80%;
102
+ background-color: ${u("-90deg")};
103
+ }
104
+
105
+ @media (max-width: ${c + "px"}) {
106
+ padding: 0;
107
+ }
108
+ `;
109
+ d(({}, i) => /* @__PURE__ */ l(b, { className: "blog-card", children: [
110
+ /* @__PURE__ */ t("div", { className: "skeleton-img" }),
111
+ /* @__PURE__ */ t(w, { children: /* @__PURE__ */ t("div", { className: "skeleton-title" }) })
112
+ ] }));
113
+ const p = d((i, f) => {
114
+ const { title: r, image: a, text: n, onCardClick: m, buttonText: e } = i, o = h();
115
+ return (
116
+ // <BlogCardLargeSkeleton />
117
+ /* @__PURE__ */ l(b, { className: "blog-card", onClick: m, children: [
118
+ /* @__PURE__ */ t("img", { src: a }),
119
+ /* @__PURE__ */ l(w, { children: [
120
+ /* @__PURE__ */ t("div", { className: "text-wr-title", children: r }),
121
+ /* @__PURE__ */ t("div", { className: "text-wr", children: n }),
122
+ o !== !0 && /* @__PURE__ */ t(
123
+ s,
124
+ {
125
+ type: "button",
126
+ btnType: "outline",
127
+ size: "medium",
128
+ color: "gray",
129
+ onClick: m,
130
+ children: e
131
+ }
132
+ )
133
+ ] }),
134
+ o === !0 && /* @__PURE__ */ t(
135
+ s,
136
+ {
137
+ className: "action",
138
+ type: "button",
139
+ btnType: "outline",
140
+ size: "medium",
141
+ color: "gray",
142
+ onClick: m,
143
+ children: e
144
+ }
145
+ )
146
+ ] })
147
+ );
148
+ }), z = d((i, f) => {
149
+ const { items: r, onSelectCard: a = () => {
150
+ }, limit: n = 2 } = i, m = h();
151
+ return /* @__PURE__ */ t(y, { limit: n, children: m === !0 ? r == null ? void 0 : r.map((e, o) => /* @__PURE__ */ t(
152
+ p,
153
+ {
154
+ title: e == null ? void 0 : e.title,
155
+ image: e == null ? void 0 : e.image,
156
+ text: e == null ? void 0 : e.text,
157
+ titleSlug: e == null ? void 0 : e.titleSlug,
158
+ buttonText: e == null ? void 0 : e.buttonText,
159
+ onCardClick: () => a(e)
160
+ },
161
+ o
162
+ )) : r == null ? void 0 : r.slice(0, n).map((e, o) => /* @__PURE__ */ t(
163
+ p,
164
+ {
165
+ title: e == null ? void 0 : e.title,
166
+ image: e == null ? void 0 : e.image,
167
+ text: e == null ? void 0 : e.text,
168
+ titleSlug: e == null ? void 0 : e.titleSlug,
169
+ buttonText: e == null ? void 0 : e.buttonText,
170
+ onCardClick: () => a(e)
171
+ },
172
+ o
173
+ )) });
174
+ });
175
+ export {
176
+ z as default
177
+ };
@@ -0,0 +1,71 @@
1
+ "use strict";const t=require("react/jsx-runtime"),m=require("react"),g=require("./emotion-styled.browser.esm-Cbp_XsK4.cjs"),h=require("./consts-dNz9tpt4.cjs"),y=require("./useDetectMobile-rBe0FiP2.cjs"),l=require("./utils-UJt-R-G3.cjs"),S=require("./style-CeMnBJ6v.cjs"),k=require("./Button.cjs"),x=require("./Link.cjs"),N=g.newStyled.div`
2
+ display: grid;
3
+ grid-template-columns: ${r=>`repeat(${r.limit}, minmax(0, 1fr))`};
4
+ gap: 1.25rem;
5
+
6
+ @media (max-width: ${h.MOBILE_SIZE_PX+"px"}) {
7
+ grid-template-columns: repeat(1, 1fr);
8
+ }
9
+ `,f=g.newStyled.div`
10
+ display: flex;
11
+ flex-direction: column;
12
+ width: 100%;
13
+ box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.1),
14
+ 0px 1px 2px 0px rgba(0, 0, 0, 0.06);
15
+ background-color: var(--white);
16
+ border-radius: 0.75rem;
17
+ border: 1px solid var(--gray-95008);
18
+ overflow: hidden;
19
+ max-height: 21.5625rem;
20
+ min-height: 21.5625rem;
21
+ cursor: pointer;
22
+
23
+ &:hover {
24
+ & .text-wr-title {
25
+ color: var(--primary-500, #f59e0b);
26
+ transition: var(--transition);
27
+ }
28
+ }
29
+
30
+ & img {
31
+ max-height: 12.5625rem;
32
+ min-height: 12.5625rem;
33
+ object-fit: cover;
34
+ width: 100%;
35
+ }
36
+
37
+ & .skeleton-img {
38
+ width: 100%;
39
+ max-height: 12.5625rem;
40
+ min-height: 12.5625rem;
41
+ background-color: ${l.linearGradientAnimation("-90deg")};
42
+ }
43
+
44
+ & .action {
45
+ padding: 0 1rem 1rem 1rem;
46
+ margin-top: auto;
47
+ }
48
+
49
+ @media (max-width: ${h.MOBILE_SIZE_PX+"px"}) {
50
+ }
51
+ `,w=g.newStyled.div`
52
+ padding: 1rem 1rem 0 1rem;
53
+ display: flex;
54
+ flex-direction: column;
55
+ gap: 0.25rem;
56
+ color: var(--gray-950, #14161a);
57
+ border-top: 1px solid var(--gray-95008);
58
+
59
+ & .text-wr-title {
60
+ font-weight: 600;
61
+ font-size: 1rem;
62
+ }
63
+
64
+ & .text-wr {
65
+ font-weight: 400;
66
+ font-size: 0.875rem;
67
+ flex: 1;
68
+ color: var(--gray-700, #4e555f);
69
+ ${l.truncateTextInRows(3)}
70
+ }
71
+ `;m.forwardRef(({},r)=>t.jsxs(f,{className:"product-card",children:[t.jsx("div",{className:"skeleton-img"}),t.jsx("div",{className:"card-title"}),t.jsx(w,{})]}));const p=m.forwardRef((r,j)=>{const{title:a,image:s,text:c,onCardClick:o,readMoreText:n="Read more"}=r;return t.jsxs(f,{className:"blog-card",onClick:o,children:[t.jsx("img",{src:s}),t.jsxs(w,{children:[t.jsx("div",{className:"text-wr-title",children:a}),t.jsx("div",{className:"text-wr",children:c})]}),t.jsx(x,{className:"action",color:"gray",onClick:o,children:n})]})}),C=m.forwardRef((r,j)=>{const{icon:a,title:s,onButtonAction:c=()=>{},onSelectCard:o=()=>{},buttonLink:n,items:i,buttonText:b,limit:u=3}=r,v=y.useDetectMobile();return t.jsxs(S.RegulatTitleSectionWrapper,{children:[t.jsxs("div",{className:"regular-title",children:[t.jsxs("div",{className:"regular-title-text",children:[l.isDefinedNotEmptyString(a)&&t.jsx("i",{className:a}),t.jsx("span",{children:s})]}),l.isDefinedNotEmptyString(n)&&t.jsx(k,{type:"button",btnType:"tinted",color:"gray",onClick:()=>c(n),borderRadius:"curved",children:b})]}),t.jsx(N,{limit:u,children:v===!0?i==null?void 0:i.map((e,d)=>t.jsx(p,{title:e==null?void 0:e.title,image:e==null?void 0:e.image,text:e==null?void 0:e.text,titleSlug:e==null?void 0:e.titleSlug,onCardClick:()=>o(e==null?void 0:e.uuid)},d)):i==null?void 0:i.slice(0,u).map((e,d)=>t.jsx(p,{title:e==null?void 0:e.title,image:e==null?void 0:e.image,text:e==null?void 0:e.text,titleSlug:e==null?void 0:e.titleSlug,onCardClick:()=>o(e==null?void 0:e.uuid)},d))})]})});module.exports=C;
@@ -0,0 +1,158 @@
1
+ import { jsxs as a, jsx as t } from "react/jsx-runtime";
2
+ import { forwardRef as s } from "react";
3
+ import { n as p } from "./emotion-styled.browser.esm-BiK8DcgW.js";
4
+ import { M as f } from "./consts-DNVz1x1I.js";
5
+ import { u as S } from "./useDetectMobile-BookNOsk.js";
6
+ import { m as C, t as N, k as u } from "./utils-xpQsPsCa.js";
7
+ import { R } from "./style-D6sNCRwG.js";
8
+ import T from "./Button.js";
9
+ import $ from "./Link.js";
10
+ const B = p.div`
11
+ display: grid;
12
+ grid-template-columns: ${(r) => `repeat(${r.limit}, minmax(0, 1fr))`};
13
+ gap: 1.25rem;
14
+
15
+ @media (max-width: ${f + "px"}) {
16
+ grid-template-columns: repeat(1, 1fr);
17
+ }
18
+ `, v = p.div`
19
+ display: flex;
20
+ flex-direction: column;
21
+ width: 100%;
22
+ box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.1),
23
+ 0px 1px 2px 0px rgba(0, 0, 0, 0.06);
24
+ background-color: var(--white);
25
+ border-radius: 0.75rem;
26
+ border: 1px solid var(--gray-95008);
27
+ overflow: hidden;
28
+ max-height: 21.5625rem;
29
+ min-height: 21.5625rem;
30
+ cursor: pointer;
31
+
32
+ &:hover {
33
+ & .text-wr-title {
34
+ color: var(--primary-500, #f59e0b);
35
+ transition: var(--transition);
36
+ }
37
+ }
38
+
39
+ & img {
40
+ max-height: 12.5625rem;
41
+ min-height: 12.5625rem;
42
+ object-fit: cover;
43
+ width: 100%;
44
+ }
45
+
46
+ & .skeleton-img {
47
+ width: 100%;
48
+ max-height: 12.5625rem;
49
+ min-height: 12.5625rem;
50
+ background-color: ${C("-90deg")};
51
+ }
52
+
53
+ & .action {
54
+ padding: 0 1rem 1rem 1rem;
55
+ margin-top: auto;
56
+ }
57
+
58
+ @media (max-width: ${f + "px"}) {
59
+ }
60
+ `, b = p.div`
61
+ padding: 1rem 1rem 0 1rem;
62
+ display: flex;
63
+ flex-direction: column;
64
+ gap: 0.25rem;
65
+ color: var(--gray-950, #14161a);
66
+ border-top: 1px solid var(--gray-95008);
67
+
68
+ & .text-wr-title {
69
+ font-weight: 600;
70
+ font-size: 1rem;
71
+ }
72
+
73
+ & .text-wr {
74
+ font-weight: 400;
75
+ font-size: 0.875rem;
76
+ flex: 1;
77
+ color: var(--gray-700, #4e555f);
78
+ ${N(3)}
79
+ }
80
+ `;
81
+ s(({}, r) => (
82
+ // <LandingPageClearProductCardSkeleton />
83
+ /* @__PURE__ */ a(v, { className: "product-card", children: [
84
+ /* @__PURE__ */ t("div", { className: "skeleton-img" }),
85
+ /* @__PURE__ */ t("div", { className: "card-title" }),
86
+ /* @__PURE__ */ t(b, {})
87
+ ] })
88
+ ));
89
+ const h = s((r, w) => {
90
+ const { title: l, image: m, text: d, onCardClick: o, readMoreText: n = "Read more" } = r;
91
+ return (
92
+ // <SimpleBlogCardSkeleton />
93
+ /* @__PURE__ */ a(v, { className: "blog-card", onClick: o, children: [
94
+ /* @__PURE__ */ t("img", { src: m }),
95
+ /* @__PURE__ */ a(b, { children: [
96
+ /* @__PURE__ */ t("div", { className: "text-wr-title", children: l }),
97
+ /* @__PURE__ */ t("div", { className: "text-wr", children: d })
98
+ ] }),
99
+ /* @__PURE__ */ t($, { className: "action", color: "gray", onClick: o, children: n })
100
+ ] })
101
+ );
102
+ }), G = s((r, w) => {
103
+ const {
104
+ icon: l,
105
+ title: m,
106
+ onButtonAction: d = () => {
107
+ },
108
+ onSelectCard: o = () => {
109
+ },
110
+ buttonLink: n,
111
+ items: i,
112
+ buttonText: y,
113
+ limit: g = 3
114
+ } = r, k = S();
115
+ return /* @__PURE__ */ a(R, { children: [
116
+ /* @__PURE__ */ a("div", { className: "regular-title", children: [
117
+ /* @__PURE__ */ a("div", { className: "regular-title-text", children: [
118
+ u(l) && /* @__PURE__ */ t("i", { className: l }),
119
+ /* @__PURE__ */ t("span", { children: m })
120
+ ] }),
121
+ u(n) && /* @__PURE__ */ t(
122
+ T,
123
+ {
124
+ type: "button",
125
+ btnType: "tinted",
126
+ color: "gray",
127
+ onClick: () => d(n),
128
+ borderRadius: "curved",
129
+ children: y
130
+ }
131
+ )
132
+ ] }),
133
+ /* @__PURE__ */ t(B, { limit: g, children: k === !0 ? i == null ? void 0 : i.map((e, c) => /* @__PURE__ */ t(
134
+ h,
135
+ {
136
+ title: e == null ? void 0 : e.title,
137
+ image: e == null ? void 0 : e.image,
138
+ text: e == null ? void 0 : e.text,
139
+ titleSlug: e == null ? void 0 : e.titleSlug,
140
+ onCardClick: () => o(e == null ? void 0 : e.uuid)
141
+ },
142
+ c
143
+ )) : i == null ? void 0 : i.slice(0, g).map((e, c) => /* @__PURE__ */ t(
144
+ h,
145
+ {
146
+ title: e == null ? void 0 : e.title,
147
+ image: e == null ? void 0 : e.image,
148
+ text: e == null ? void 0 : e.text,
149
+ titleSlug: e == null ? void 0 : e.titleSlug,
150
+ onCardClick: () => o(e == null ? void 0 : e.uuid)
151
+ },
152
+ c
153
+ )) })
154
+ ] });
155
+ });
156
+ export {
157
+ G as default
158
+ };
@@ -0,0 +1,78 @@
1
+ "use strict";const t=require("react/jsx-runtime"),s=require("react"),m=require("./emotion-styled.browser.esm-Cbp_XsK4.cjs"),g=require("./consts-dNz9tpt4.cjs"),w=require("./useDetectMobile-rBe0FiP2.cjs"),d=require("./utils-UJt-R-G3.cjs"),b=require("./Button.cjs"),f=m.newStyled.div`
2
+ display: grid;
3
+ grid-template-columns: ${i=>`repeat(${i.limit}, minmax(0, 1fr))`};
4
+ gap: 1.25rem;
5
+ margin: auto;
6
+
7
+ @media (max-width: ${g.MOBILE_SIZE_PX+"px"}) {
8
+ grid-template-columns: repeat(1, 1fr);
9
+ }
10
+ `,h=m.newStyled.div`
11
+ display: flex;
12
+ flex-direction: column;
13
+ width: 100%;
14
+ max-width: 18.125rem;
15
+ box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.1),
16
+ 0px 1px 2px 0px rgba(0, 0, 0, 0.06);
17
+ background-color: var(--white);
18
+ border-radius: 0.75rem;
19
+ border: 1px solid var(--gray-95008);
20
+ overflow: hidden;
21
+ gap: 1.5rem;
22
+ padding: 2rem 1.25rem;
23
+ min-height: 22.5rem;
24
+ max-height: 22.5rem;
25
+ align-items: center;
26
+
27
+ & button {
28
+ width: fit-content;
29
+ margin-top: auto;
30
+ }
31
+
32
+ & img {
33
+ max-width: 6rem;
34
+ min-width: 6rem;
35
+ min-height: 6rem;
36
+ max-height: 6rem;
37
+ border-radius: 0.75rem;
38
+ object-fit: cover;
39
+ }
40
+
41
+ & .skeleton-img {
42
+ max-width: 6rem;
43
+ min-width: 6rem;
44
+ min-height: 6rem;
45
+ max-height: 6rem;
46
+ border-radius: 0.75rem;
47
+ background-color: ${d.linearGradientAnimation("-90deg")};
48
+ }
49
+
50
+ @media (max-width: ${g.MOBILE_SIZE_PX+"px"}) {
51
+ max-width: unset;
52
+ }
53
+ `,p=m.newStyled.div`
54
+ text-align: center;
55
+ display: flex;
56
+ flex-direction: column;
57
+ gap: 0.5rem;
58
+ color: var(--gray-950, #14161a);
59
+
60
+ & .text-wr-title {
61
+ font-weight: 600;
62
+ font-size: 1.375rem;
63
+ }
64
+
65
+ & .skeleton-title {
66
+ height: 1.75rem;
67
+ width: 80%;
68
+ background-color: ${d.linearGradientAnimation("-90deg")};
69
+ }
70
+
71
+ & .text-wr {
72
+ font-weight: 400;
73
+ font-size: 0.875rem;
74
+ flex: 1;
75
+ color: var(--gray-700, #4e555f);
76
+ ${d.truncateTextInRows(3)}
77
+ }
78
+ `;s.forwardRef((i,c)=>{const{onCardClick:r}=i;return t.jsxs(h,{className:"product-card",onClick:r,children:[t.jsx("div",{"skeleton-img":!0}),t.jsx(p,{children:t.jsx("div",{className:"skeleton-title"})})]})});const u=s.forwardRef((i,c)=>{const{title:r,image:n,text:o,buttonText:a,onCardClick:e}=i;return t.jsxs(h,{className:"blog-card",onClick:e,children:[t.jsx("img",{src:n}),t.jsxs(p,{children:[t.jsx("div",{className:"text-wr-title",children:r}),t.jsx("div",{className:"text-wr",children:o})]}),t.jsx(b,{borderRadius:"curved",color:"gray",type:"button",btnType:"outline",onClick:e,size:"medium",children:a})]})}),j=s.forwardRef((i,c)=>{const{items:r,limit:n=3,onSelectCard:o=()=>{}}=i,a=w.useDetectMobile();return t.jsx(f,{limit:n,children:a===!0?r==null?void 0:r.map((e,l)=>t.jsx(u,{title:e==null?void 0:e.title,image:e==null?void 0:e.image,text:e==null?void 0:e.text,titleSlug:e==null?void 0:e.titleSlug,buttonText:e==null?void 0:e.buttonText,onCardClick:()=>o(e==null?void 0:e.uuid)},l)):r==null?void 0:r.slice(0,n).map((e,l)=>t.jsx(u,{title:e==null?void 0:e.title,image:e==null?void 0:e.image,text:e==null?void 0:e.text,titleSlug:e==null?void 0:e.titleSlug,buttonText:e==null?void 0:e.buttonText,onCardClick:()=>o(e==null?void 0:e.uuid)},l))})});module.exports=j;
@@ -0,0 +1,149 @@
1
+ import { jsxs as l, jsx as r } from "react/jsx-runtime";
2
+ import { forwardRef as d } from "react";
3
+ import { n as c } from "./emotion-styled.browser.esm-BiK8DcgW.js";
4
+ import { M as p } from "./consts-DNVz1x1I.js";
5
+ import { u as b } from "./useDetectMobile-BookNOsk.js";
6
+ import { m as u, t as w } from "./utils-xpQsPsCa.js";
7
+ import C from "./Button.js";
8
+ const k = c.div`
9
+ display: grid;
10
+ grid-template-columns: ${(i) => `repeat(${i.limit}, minmax(0, 1fr))`};
11
+ gap: 1.25rem;
12
+ margin: auto;
13
+
14
+ @media (max-width: ${p + "px"}) {
15
+ grid-template-columns: repeat(1, 1fr);
16
+ }
17
+ `, h = c.div`
18
+ display: flex;
19
+ flex-direction: column;
20
+ width: 100%;
21
+ max-width: 18.125rem;
22
+ box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.1),
23
+ 0px 1px 2px 0px rgba(0, 0, 0, 0.06);
24
+ background-color: var(--white);
25
+ border-radius: 0.75rem;
26
+ border: 1px solid var(--gray-95008);
27
+ overflow: hidden;
28
+ gap: 1.5rem;
29
+ padding: 2rem 1.25rem;
30
+ min-height: 22.5rem;
31
+ max-height: 22.5rem;
32
+ align-items: center;
33
+
34
+ & button {
35
+ width: fit-content;
36
+ margin-top: auto;
37
+ }
38
+
39
+ & img {
40
+ max-width: 6rem;
41
+ min-width: 6rem;
42
+ min-height: 6rem;
43
+ max-height: 6rem;
44
+ border-radius: 0.75rem;
45
+ object-fit: cover;
46
+ }
47
+
48
+ & .skeleton-img {
49
+ max-width: 6rem;
50
+ min-width: 6rem;
51
+ min-height: 6rem;
52
+ max-height: 6rem;
53
+ border-radius: 0.75rem;
54
+ background-color: ${u("-90deg")};
55
+ }
56
+
57
+ @media (max-width: ${p + "px"}) {
58
+ max-width: unset;
59
+ }
60
+ `, f = c.div`
61
+ text-align: center;
62
+ display: flex;
63
+ flex-direction: column;
64
+ gap: 0.5rem;
65
+ color: var(--gray-950, #14161a);
66
+
67
+ & .text-wr-title {
68
+ font-weight: 600;
69
+ font-size: 1.375rem;
70
+ }
71
+
72
+ & .skeleton-title {
73
+ height: 1.75rem;
74
+ width: 80%;
75
+ background-color: ${u("-90deg")};
76
+ }
77
+
78
+ & .text-wr {
79
+ font-weight: 400;
80
+ font-size: 0.875rem;
81
+ flex: 1;
82
+ color: var(--gray-700, #4e555f);
83
+ ${w(3)}
84
+ }
85
+ `;
86
+ d((i, s) => {
87
+ const { onCardClick: t } = i;
88
+ return (
89
+ // <SimpleBlogCardSkeleton />
90
+ /* @__PURE__ */ l(h, { className: "product-card", onClick: t, children: [
91
+ /* @__PURE__ */ r("div", { "skeleton-img": !0 }),
92
+ /* @__PURE__ */ r(f, { children: /* @__PURE__ */ r("div", { className: "skeleton-title" }) })
93
+ ] })
94
+ );
95
+ });
96
+ const g = d((i, s) => {
97
+ const { title: t, image: o, text: a, buttonText: m, onCardClick: e } = i;
98
+ return (
99
+ // <SimpleBlogCardCenteredSkeleton />
100
+ /* @__PURE__ */ l(h, { className: "blog-card", onClick: e, children: [
101
+ /* @__PURE__ */ r("img", { src: o }),
102
+ /* @__PURE__ */ l(f, { children: [
103
+ /* @__PURE__ */ r("div", { className: "text-wr-title", children: t }),
104
+ /* @__PURE__ */ r("div", { className: "text-wr", children: a })
105
+ ] }),
106
+ /* @__PURE__ */ r(
107
+ C,
108
+ {
109
+ borderRadius: "curved",
110
+ color: "gray",
111
+ type: "button",
112
+ btnType: "outline",
113
+ onClick: e,
114
+ size: "medium",
115
+ children: m
116
+ }
117
+ )
118
+ ] })
119
+ );
120
+ }), M = d((i, s) => {
121
+ const { items: t, limit: o = 3, onSelectCard: a = () => {
122
+ } } = i, m = b();
123
+ return /* @__PURE__ */ r(k, { limit: o, children: m === !0 ? t == null ? void 0 : t.map((e, n) => /* @__PURE__ */ r(
124
+ g,
125
+ {
126
+ title: e == null ? void 0 : e.title,
127
+ image: e == null ? void 0 : e.image,
128
+ text: e == null ? void 0 : e.text,
129
+ titleSlug: e == null ? void 0 : e.titleSlug,
130
+ buttonText: e == null ? void 0 : e.buttonText,
131
+ onCardClick: () => a(e == null ? void 0 : e.uuid)
132
+ },
133
+ n
134
+ )) : t == null ? void 0 : t.slice(0, o).map((e, n) => /* @__PURE__ */ r(
135
+ g,
136
+ {
137
+ title: e == null ? void 0 : e.title,
138
+ image: e == null ? void 0 : e.image,
139
+ text: e == null ? void 0 : e.text,
140
+ titleSlug: e == null ? void 0 : e.titleSlug,
141
+ buttonText: e == null ? void 0 : e.buttonText,
142
+ onCardClick: () => a(e == null ? void 0 : e.uuid)
143
+ },
144
+ n
145
+ )) });
146
+ });
147
+ export {
148
+ M as default
149
+ };