@iit/precision-ui 0.8.3 → 0.8.4
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.
- package/dist/components/cards/Rate.d.ts +6 -2
- package/dist/components/cards/Rate.d.ts.map +1 -1
- package/dist/index.es15.js +11 -11
- package/dist/index.es15.js.map +1 -1
- package/dist/index.es28.js.map +1 -1
- package/dist/index.es34.js +30 -29
- package/dist/index.es34.js.map +1 -1
- package/dist/index.es40.js +41 -41
- package/dist/index.es40.js.map +1 -1
- package/dist/styles.css +4 -0
- package/package.json +1 -1
|
@@ -11,7 +11,8 @@ export interface RateButtonProps {
|
|
|
11
11
|
title?: string;
|
|
12
12
|
link?: string;
|
|
13
13
|
isBuyButton?: boolean;
|
|
14
|
-
|
|
14
|
+
uniqId?: string;
|
|
15
|
+
onClick?: (uniqId?: string) => void;
|
|
15
16
|
}
|
|
16
17
|
export declare const RateButton: React.FC<RateButtonProps>;
|
|
17
18
|
export interface RateCardProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof rateCardVariants> {
|
|
@@ -21,7 +22,10 @@ export interface RateCardProps extends React.HTMLAttributes<HTMLDivElement>, Var
|
|
|
21
22
|
price: string;
|
|
22
23
|
desc: string;
|
|
23
24
|
link: string;
|
|
24
|
-
onClickBuyButton?: (title
|
|
25
|
+
onClickBuyButton?: ({ title, uniqId, }: {
|
|
26
|
+
title: string;
|
|
27
|
+
uniqId?: string;
|
|
28
|
+
}) => void;
|
|
25
29
|
buttons?: RateButtonProps[];
|
|
26
30
|
tags?: TagItemProps[];
|
|
27
31
|
titleInformer?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Rate.d.ts","sourceRoot":"","sources":["../../../src/components/cards/Rate.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAMjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAA;AACnE,OAAO,EAAO,YAAY,EAAE,MAAM,WAAW,CAAA;AAM7C,QAAA,MAAM,gBAAgB;;8EAcrB,CAAA;AA0BD,MAAM,WAAW,eAAe;IAC9B,OAAO,CAAC,EAAE,oBAAoB,CAAC,SAAS,CAAC,CAAA;IACzC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;
|
|
1
|
+
{"version":3,"file":"Rate.d.ts","sourceRoot":"","sources":["../../../src/components/cards/Rate.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAMjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAA;AACnE,OAAO,EAAO,YAAY,EAAE,MAAM,WAAW,CAAA;AAM7C,QAAA,MAAM,gBAAgB;;8EAcrB,CAAA;AA0BD,MAAM,WAAW,eAAe;IAC9B,OAAO,CAAC,EAAE,oBAAoB,CAAC,SAAS,CAAC,CAAA;IACzC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;CACpC;AAED,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAoBhD,CAAA;AAED,MAAM,WAAW,aACf,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAC1C,YAAY,CAAC,OAAO,gBAAgB,CAAC;IACvC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,gBAAgB,CAAC,EAAE,CAAC,EAClB,KAAK,EACL,MAAM,GACP,EAAE;QACD,KAAK,EAAE,MAAM,CAAA;QACb,MAAM,CAAC,EAAE,MAAM,CAAA;KAChB,KAAK,IAAI,CAAA;IACV,OAAO,CAAC,EAAE,eAAe,EAAE,CAAA;IAC3B,IAAI,CAAC,EAAE,YAAY,EAAE,CAAA;IACrB,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,WAAW,kCACf,SAAQ,IAAI,CAAC,aAAa,EAAE,MAAM,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;IACvE,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;CACd;AAED,QAAA,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CAiFrC,CAAA;AAED,eAAe,QAAQ,CAAA"}
|
package/dist/index.es15.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import * as e from "react";
|
|
2
|
-
import { cva as
|
|
2
|
+
import { cva as o } from "class-variance-authority";
|
|
3
3
|
import { cn as n } from "./index.es55.js";
|
|
4
|
-
const
|
|
5
|
-
"flex min-h-[80px] w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible0:ring-2 focus-visible0:ring-ring focus-visible0:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",
|
|
4
|
+
const d = o(
|
|
5
|
+
"flex min-h-[80px] w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible0:ring-2 focus-visible0:ring-ring focus-visible0:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-red-500",
|
|
6
6
|
{
|
|
7
7
|
variants: {
|
|
8
8
|
variant: {
|
|
9
|
-
default: "bg-navy-opacity-4 text-navy focus:border-navy hover:bg-navy-opacity-8 border-b-navy-opacity-32",
|
|
9
|
+
default: "bg-navy-opacity-4 text-navy focus:border-navy hover:bg-navy-opacity-8 border-b-navy-opacity-32 aria-invalid:bg-red-50",
|
|
10
10
|
blue: "bg-whitish-opacity-8 text-white focus:border-white hover:bg-whitish-opacity-16 border-b-whitish-opacity-32"
|
|
11
11
|
}
|
|
12
12
|
},
|
|
@@ -14,18 +14,18 @@ const s = i(
|
|
|
14
14
|
variant: "default"
|
|
15
15
|
}
|
|
16
16
|
}
|
|
17
|
-
),
|
|
18
|
-
({ className:
|
|
17
|
+
), s = e.forwardRef(
|
|
18
|
+
({ className: a, variant: r, ...t }, i) => /* @__PURE__ */ e.createElement(
|
|
19
19
|
"textarea",
|
|
20
20
|
{
|
|
21
|
-
className: n(
|
|
22
|
-
ref:
|
|
23
|
-
...
|
|
21
|
+
className: n(d({ variant: r, className: a })),
|
|
22
|
+
ref: i,
|
|
23
|
+
...t
|
|
24
24
|
}
|
|
25
25
|
)
|
|
26
26
|
);
|
|
27
|
-
|
|
27
|
+
s.displayName = "Textarea";
|
|
28
28
|
export {
|
|
29
|
-
|
|
29
|
+
s as Textarea
|
|
30
30
|
};
|
|
31
31
|
//# sourceMappingURL=index.es15.js.map
|
package/dist/index.es15.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.es15.js","sources":["../src/components/ui/textarea/Textarea.tsx"],"sourcesContent":["import * as React from 'react'\r\n\r\nimport { VariantProps, cva } from 'class-variance-authority'\r\n\r\nimport { cn } from '@/lib/utils/cn'\r\n\r\nconst textareaVariants = cva(\r\n 'flex min-h-[80px] w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible0:ring-2 focus-visible0:ring-ring focus-visible0:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50',\r\n {\r\n variants: {\r\n variant: {\r\n default:\r\n 'bg-navy-opacity-4 text-navy focus:border-navy hover:bg-navy-opacity-8 border-b-navy-opacity-32',\r\n blue: 'bg-whitish-opacity-8 text-white focus:border-white hover:bg-whitish-opacity-16 border-b-whitish-opacity-32',\r\n },\r\n },\r\n defaultVariants: {\r\n variant: 'default',\r\n },\r\n }\r\n)\r\n\r\nexport interface TextareaProps\r\n extends React.TextareaHTMLAttributes<HTMLTextAreaElement>,\r\n VariantProps<typeof textareaVariants> {\r\n // className?: string\r\n}\r\n\r\nconst Textarea = React.forwardRef<HTMLTextAreaElement, TextareaProps>(\r\n ({ className, variant, ...props }, ref) => {\r\n return (\r\n <textarea\r\n className={cn(textareaVariants({ variant, className }))}\r\n ref={ref}\r\n {...props}\r\n />\r\n )\r\n }\r\n)\r\nTextarea.displayName = 'Textarea'\r\n\r\nexport { Textarea }\r\n"],"names":["textareaVariants","cva","Textarea","React","className","variant","props","ref","cn"],"mappings":";;;AAMA,MAAMA,IAAmBC;AAAA,EACvB;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,SAAS;AAAA,QACP,SACE;AAAA,QACF,MAAM;AAAA,MACR;AAAA,IACF;AAAA,IACA,iBAAiB;AAAA,MACf,SAAS;AAAA,IACX;AAAA,EACF;AACF,GAQMC,IAAWC,EAAM;AAAA,EACrB,CAAC,EAAE,WAAAC,GAAW,SAAAC,GAAS,GAAGC,EAAA,GAASC,MAE/B,gBAAAJ,EAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWK,EAAGR,EAAiB,EAAE,SAAAK,GAAS,WAAAD,EAAW,CAAA,CAAC;AAAA,MACtD,KAAAG;AAAA,MACC,GAAGD;AAAA,IAAA;AAAA,EAAA;AAIZ;AACAJ,EAAS,cAAc;"}
|
|
1
|
+
{"version":3,"file":"index.es15.js","sources":["../src/components/ui/textarea/Textarea.tsx"],"sourcesContent":["import * as React from 'react'\r\n\r\nimport { VariantProps, cva } from 'class-variance-authority'\r\n\r\nimport { cn } from '@/lib/utils/cn'\r\n\r\nconst textareaVariants = cva(\r\n 'flex min-h-[80px] w-full rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible0:ring-2 focus-visible0:ring-ring focus-visible0:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-red-500',\r\n {\r\n variants: {\r\n variant: {\r\n default:\r\n 'bg-navy-opacity-4 text-navy focus:border-navy hover:bg-navy-opacity-8 border-b-navy-opacity-32 aria-invalid:bg-red-50',\r\n blue: 'bg-whitish-opacity-8 text-white focus:border-white hover:bg-whitish-opacity-16 border-b-whitish-opacity-32',\r\n },\r\n },\r\n defaultVariants: {\r\n variant: 'default',\r\n },\r\n }\r\n)\r\n\r\nexport interface TextareaProps\r\n extends React.TextareaHTMLAttributes<HTMLTextAreaElement>,\r\n VariantProps<typeof textareaVariants> {\r\n // className?: string\r\n}\r\n\r\nconst Textarea = React.forwardRef<HTMLTextAreaElement, TextareaProps>(\r\n ({ className, variant, ...props }, ref) => {\r\n return (\r\n <textarea\r\n className={cn(textareaVariants({ variant, className }))}\r\n ref={ref}\r\n {...props}\r\n />\r\n )\r\n }\r\n)\r\nTextarea.displayName = 'Textarea'\r\n\r\nexport { Textarea }\r\n"],"names":["textareaVariants","cva","Textarea","React","className","variant","props","ref","cn"],"mappings":";;;AAMA,MAAMA,IAAmBC;AAAA,EACvB;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,SAAS;AAAA,QACP,SACE;AAAA,QACF,MAAM;AAAA,MACR;AAAA,IACF;AAAA,IACA,iBAAiB;AAAA,MACf,SAAS;AAAA,IACX;AAAA,EACF;AACF,GAQMC,IAAWC,EAAM;AAAA,EACrB,CAAC,EAAE,WAAAC,GAAW,SAAAC,GAAS,GAAGC,EAAA,GAASC,MAE/B,gBAAAJ,EAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWK,EAAGR,EAAiB,EAAE,SAAAK,GAAS,WAAAD,EAAW,CAAA,CAAC;AAAA,MACtD,KAAAG;AAAA,MACC,GAAGD;AAAA,IAAA;AAAA,EAAA;AAIZ;AACAJ,EAAS,cAAc;"}
|
package/dist/index.es28.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.es28.js","sources":["../src/components/cards/FAQ.tsx"],"sourcesContent":["import {\r\n Accordion,\r\n AccordionContent,\r\n AccordionItem,\r\n AccordionTrigger,\r\n} from '../ui/accordion'\r\n\r\nimport { ButtonText } from '../ui/button'\r\nimport React from 'react'\r\nimport SafeHtmlRenderer from '../SafeHtml'\r\n\r\nexport interface FAQItem {\r\n question: string\r\n answer: string\r\n linkToFull?: string\r\n}\r\n\r\nexport interface FAQCardProps {\r\n questions: FAQItem[]\r\n type: 'single' | 'multiple'\r\n}\r\n\r\nconst FAQCard: React.FC<FAQCardProps> = ({ questions, type }) => {\r\n return (\r\n <div>\r\n <Accordion type={type} collapsible className=\"space-y-3\">\r\n {questions.map((question, index) => (\r\n <AccordionItem key={index} value={`item-${index}`}>\r\n <AccordionTrigger size=\"small\">\r\n {question.question}\r\n </AccordionTrigger>\r\n <AccordionContent>\r\n <SafeHtmlRenderer html={question.answer} />\r\n\r\n {question.linkToFull && (\r\n <div className=\"pt-6 no-content-rules\">\r\n <ButtonText icon=\"arrowRight\" asChild>\r\n <a href={question.linkToFull} className=\"more-link\">\r\n Читать полностью\r\n </a>\r\n </ButtonText>\r\n </div>\r\n )}\r\n </AccordionContent>\r\n </AccordionItem>\r\n ))}\r\n </Accordion>\r\n </div>\r\n )\r\n}\r\n\r\nexport default FAQCard\r\n"],"names":["FAQCard","questions","type","React","Accordion","question","index","AccordionItem","AccordionTrigger","AccordionContent","SafeHtmlRenderer","ButtonText","FAQCard$1"],"mappings":";;;;AAsBA,MAAMA,IAAkC,CAAC,EAAE,WAAAC,GAAW,MAAAC,QAEjDC,gBAAAA,EAAA,cAAA,OAAA,MACEA,gBAAAA,EAAA,cAAAC,GAAA,EAAU,MAAAF,GAAY,
|
|
1
|
+
{"version":3,"file":"index.es28.js","sources":["../src/components/cards/FAQ.tsx"],"sourcesContent":["import {\r\n Accordion,\r\n AccordionContent,\r\n AccordionItem,\r\n AccordionTrigger,\r\n} from '../ui/accordion'\r\n\r\nimport { ButtonText } from '../ui/button'\r\nimport React from 'react'\r\nimport SafeHtmlRenderer from '../SafeHtml'\r\n\r\nexport interface FAQItem {\r\n question: string\r\n answer: string\r\n linkToFull?: string\r\n}\r\n\r\nexport interface FAQCardProps {\r\n questions: FAQItem[]\r\n type: 'single' | 'multiple'\r\n}\r\n\r\nconst FAQCard: React.FC<FAQCardProps> = ({ questions, type }) => {\r\n return (\r\n <div>\r\n <Accordion type={type} collapsible={true} className=\"space-y-3\">\r\n {questions.map((question, index) => (\r\n <AccordionItem key={index} value={`item-${index}`}>\r\n <AccordionTrigger size=\"small\">\r\n {question.question}\r\n </AccordionTrigger>\r\n <AccordionContent>\r\n <SafeHtmlRenderer html={question.answer} />\r\n\r\n {question.linkToFull && (\r\n <div className=\"pt-6 no-content-rules\">\r\n <ButtonText icon=\"arrowRight\" asChild>\r\n <a href={question.linkToFull} className=\"more-link\">\r\n Читать полностью\r\n </a>\r\n </ButtonText>\r\n </div>\r\n )}\r\n </AccordionContent>\r\n </AccordionItem>\r\n ))}\r\n </Accordion>\r\n </div>\r\n )\r\n}\r\n\r\nexport default FAQCard\r\n"],"names":["FAQCard","questions","type","React","Accordion","question","index","AccordionItem","AccordionTrigger","AccordionContent","SafeHtmlRenderer","ButtonText","FAQCard$1"],"mappings":";;;;AAsBA,MAAMA,IAAkC,CAAC,EAAE,WAAAC,GAAW,MAAAC,QAEjDC,gBAAAA,EAAA,cAAA,OAAA,MACEA,gBAAAA,EAAA,cAAAC,GAAA,EAAU,MAAAF,GAAY,aAAa,IAAM,WAAU,eACjDD,EAAU,IAAI,CAACI,GAAUC,MACvBH,gBAAAA,EAAA,cAAAI,GAAA,EAAc,KAAKD,GAAO,OAAO,QAAQA,CAAK,MAC5CH,gBAAAA,EAAA,cAAAK,GAAA,EAAiB,MAAK,QAAA,GACpBH,EAAS,QACZ,GACCF,gBAAAA,EAAA,cAAAM,GAAA,MACEN,gBAAAA,EAAA,cAAAO,GAAA,EAAiB,MAAML,EAAS,OAAQ,CAAA,GAExCA,EAAS,cACPF,gBAAAA,EAAA,cAAA,OAAA,EAAI,WAAU,wBAAA,GACZA,gBAAAA,EAAA,cAAAQ,GAAA,EAAW,MAAK,cAAa,SAAO,GACnC,GAAAR,gBAAAA,EAAA,cAAC,KAAE,EAAA,MAAME,EAAS,YAAY,WAAU,eAAY,kBAEpD,CACF,CACF,CAEJ,CACF,CACD,CACH,CACF,GAIJO,IAAeZ;"}
|
package/dist/index.es34.js
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import e from "react";
|
|
2
|
-
import { cva as
|
|
3
|
-
import { cn as
|
|
4
|
-
import
|
|
5
|
-
import
|
|
2
|
+
import { cva as v } from "class-variance-authority";
|
|
3
|
+
import { cn as o } from "./index.es55.js";
|
|
4
|
+
import d from "./index.es46.js";
|
|
5
|
+
import y from "./index.es47.js";
|
|
6
6
|
import E from "./index.es5.js";
|
|
7
7
|
import x from "./index.es8.js";
|
|
8
8
|
import { Tag as g } from "./index.es22.js";
|
|
9
9
|
import N from "./index.es19.js";
|
|
10
10
|
import { getAdapter as b } from "./index.es9.js";
|
|
11
|
-
import
|
|
12
|
-
const
|
|
11
|
+
import k from "./index.es18.js";
|
|
12
|
+
const w = v(
|
|
13
13
|
"group p-6 rounded-lg min-h-[360px] flex flex-col justify-between h-full",
|
|
14
14
|
{
|
|
15
15
|
variants: {
|
|
@@ -22,7 +22,7 @@ const k = o(
|
|
|
22
22
|
variant: "default"
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
|
-
), V =
|
|
25
|
+
), V = v("w-full h-[1px]", {
|
|
26
26
|
variants: {
|
|
27
27
|
variant: {
|
|
28
28
|
default: "bg-grey-3",
|
|
@@ -32,7 +32,7 @@ const k = o(
|
|
|
32
32
|
defaultVariants: {
|
|
33
33
|
variant: "default"
|
|
34
34
|
}
|
|
35
|
-
}), R =
|
|
35
|
+
}), R = v("", {
|
|
36
36
|
variants: {
|
|
37
37
|
variant: {
|
|
38
38
|
default: "text-navy-opacity-60",
|
|
@@ -46,56 +46,57 @@ const k = o(
|
|
|
46
46
|
variant: a,
|
|
47
47
|
title: l,
|
|
48
48
|
link: r,
|
|
49
|
-
|
|
49
|
+
uniqId: n,
|
|
50
|
+
onClick: m
|
|
50
51
|
}) => {
|
|
51
|
-
const
|
|
52
|
-
return r ? /* @__PURE__ */ e.createElement(
|
|
52
|
+
const c = b("LinkWrapper"), i = /* @__PURE__ */ e.createElement(E, { variant: a, onClick: () => m?.(n) }, l || "Подробнее");
|
|
53
|
+
return r ? /* @__PURE__ */ e.createElement(c, { href: r }, i) : i;
|
|
53
54
|
}, C = ({
|
|
54
55
|
variant: a,
|
|
55
56
|
className: l,
|
|
56
57
|
title: r,
|
|
57
58
|
oldPrice: n,
|
|
58
59
|
price: m,
|
|
59
|
-
desc:
|
|
60
|
-
link:
|
|
60
|
+
desc: c,
|
|
61
|
+
link: i,
|
|
61
62
|
onClickBuyButton: u,
|
|
62
63
|
buttons: h,
|
|
63
|
-
tags:
|
|
64
|
-
titleInformer:
|
|
65
|
-
}) => /* @__PURE__ */ e.createElement("div", { className:
|
|
64
|
+
tags: p,
|
|
65
|
+
titleInformer: f
|
|
66
|
+
}) => /* @__PURE__ */ e.createElement("div", { className: o(w({ variant: a, className: l })) }, /* @__PURE__ */ e.createElement("div", null, p && /* @__PURE__ */ e.createElement("div", { className: "flex space-x-2 mb-6" }, p.map((t, s) => /* @__PURE__ */ e.createElement(g, { key: s, variant: t.color }, t.title))), /* @__PURE__ */ e.createElement("div", { className: "space-y-12 mb-6" }, /* @__PURE__ */ e.createElement("div", { className: "space-y-4" }, /* @__PURE__ */ e.createElement("div", { className: "flex space-x-2 items-center relative" }, /* @__PURE__ */ e.createElement(
|
|
66
67
|
x,
|
|
67
68
|
{
|
|
68
|
-
href:
|
|
69
|
+
href: i,
|
|
69
70
|
variant: a === "navy" ? "white" : "navy"
|
|
70
71
|
},
|
|
71
|
-
/* @__PURE__ */ e.createElement(
|
|
72
|
-
),
|
|
73
|
-
|
|
72
|
+
/* @__PURE__ */ e.createElement(d, { level: 4, as: "span" }, r)
|
|
73
|
+
), f && /* @__PURE__ */ e.createElement(k, { content: f })), /* @__PURE__ */ e.createElement("div", { className: "flex space-x-4 items-baseline" }, n && /* @__PURE__ */ e.createElement(
|
|
74
|
+
y,
|
|
74
75
|
{
|
|
75
76
|
variant: "caption",
|
|
76
77
|
className: "text-navy-opacity-40 line-through"
|
|
77
78
|
},
|
|
78
79
|
n
|
|
79
|
-
), /* @__PURE__ */ e.createElement(
|
|
80
|
-
|
|
80
|
+
), /* @__PURE__ */ e.createElement(d, { level: 5, as: "div" }, m))), /* @__PURE__ */ e.createElement("div", { className: "space-y-4" }, /* @__PURE__ */ e.createElement("div", { className: o(V({ variant: a })) }), /* @__PURE__ */ e.createElement(
|
|
81
|
+
y,
|
|
81
82
|
{
|
|
82
83
|
variant: "small-body",
|
|
83
84
|
as: "div",
|
|
84
|
-
className:
|
|
85
|
+
className: o(R({ variant: a }), "content")
|
|
85
86
|
},
|
|
86
|
-
/* @__PURE__ */ e.createElement(N, { html:
|
|
87
|
-
)))), /* @__PURE__ */ e.createElement("div", { className: "w-full gap-2 flex" }, h?.map((t,
|
|
87
|
+
/* @__PURE__ */ e.createElement(N, { html: c })
|
|
88
|
+
)))), /* @__PURE__ */ e.createElement("div", { className: "w-full gap-2 flex" }, h?.map((t, s) => /* @__PURE__ */ e.createElement(
|
|
88
89
|
B,
|
|
89
90
|
{
|
|
90
|
-
key:
|
|
91
|
+
key: s,
|
|
91
92
|
variant: t.variant,
|
|
92
93
|
title: t.title,
|
|
93
94
|
link: t.link,
|
|
94
|
-
onClick: () => t.isBuyButton && u?.(r)
|
|
95
|
+
onClick: () => t.isBuyButton && u?.({ title: r, uniqId: t.uniqId })
|
|
95
96
|
}
|
|
96
|
-
)))),
|
|
97
|
+
)))), D = C;
|
|
97
98
|
export {
|
|
98
99
|
B as RateButton,
|
|
99
|
-
|
|
100
|
+
D as default
|
|
100
101
|
};
|
|
101
102
|
//# sourceMappingURL=index.es34.js.map
|
package/dist/index.es34.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.es34.js","sources":["../src/components/cards/Rate.tsx"],"sourcesContent":["import React from 'react'\r\n\r\nimport { cva, type VariantProps } from 'class-variance-authority'\r\nimport { cn } from '@/lib/utils/cn'\r\nimport Heading from '../core/typography/Heading'\r\nimport Text from '../core/typography/Text'\r\nimport { ButtonSecondary } from '../ui/button'\r\nimport AppLink from '../ui/Link'\r\nimport { ButtonSecondaryProps } from '../ui/button/ButtonSecondary'\r\nimport { Tag, TagItemProps } from '../ui/Tag'\r\n\r\nimport SafeHtmlRenderer from '../SafeHtml'\r\nimport { getAdapter } from '@/Adapters'\r\nimport Informer from '../Informer'\r\n\r\nconst rateCardVariants = cva(\r\n 'group p-6 rounded-lg min-h-[360px] flex flex-col justify-between h-full',\r\n {\r\n variants: {\r\n variant: {\r\n default:\r\n 'text-navy bg-whitish hover1:bg-navy-opacity-4 hover1:text-navy',\r\n navy: 'text-whitish bg-gradient-to-b from-navy to-sapphire hover1:from-sapphire hover1:to-navy',\r\n },\r\n },\r\n defaultVariants: {\r\n variant: 'default',\r\n },\r\n }\r\n)\r\n\r\nconst dividerVariants = cva('w-full h-[1px]', {\r\n variants: {\r\n variant: {\r\n default: 'bg-grey-3',\r\n navy: 'bg-whitish-opacity-16',\r\n },\r\n },\r\n defaultVariants: {\r\n variant: 'default',\r\n },\r\n})\r\n\r\nconst descVariants = cva('', {\r\n variants: {\r\n variant: {\r\n default: 'text-navy-opacity-60',\r\n navy: 'text-whitish-opacity-60',\r\n },\r\n },\r\n defaultVariants: {\r\n variant: 'default',\r\n },\r\n})\r\n\r\nexport interface RateButtonProps {\r\n variant?: ButtonSecondaryProps['variant']\r\n title?: string\r\n link?: string\r\n isBuyButton?: boolean\r\n onClick?: () => void\r\n}\r\n\r\nexport const RateButton: React.FC<RateButtonProps> = ({\r\n variant,\r\n title,\r\n link,\r\n onClick,\r\n}) => {\r\n const LinkWrapper = getAdapter('LinkWrapper')\r\n\r\n const button = (\r\n <ButtonSecondary variant={variant} onClick={onClick}>\r\n {title || 'Подробнее'}\r\n </ButtonSecondary>\r\n )\r\n\r\n if (link) {\r\n return <LinkWrapper href={link}>{button}</LinkWrapper>\r\n }\r\n\r\n return button\r\n}\r\n\r\nexport interface RateCardProps\r\n extends React.HTMLAttributes<HTMLDivElement>,\r\n VariantProps<typeof rateCardVariants> {\r\n className?: string\r\n title: string\r\n oldPrice?: string\r\n price: string\r\n desc: string\r\n link: string\r\n onClickBuyButton?: (title: string) => void\r\n buttons?: RateButtonProps[]\r\n tags?: TagItemProps[]\r\n titleInformer?: string\r\n}\r\n\r\nexport interface RateCardPropsWithoutHTMLAttributes\r\n extends Omit<RateCardProps, keyof React.HTMLAttributes<HTMLDivElement>> {\r\n className?: string\r\n title: string\r\n}\r\n\r\nconst RateCard: React.FC<RateCardProps> = ({\r\n variant,\r\n className,\r\n title,\r\n oldPrice,\r\n price,\r\n desc,\r\n link,\r\n onClickBuyButton,\r\n buttons,\r\n tags,\r\n titleInformer,\r\n}) => {\r\n return (\r\n <div className={cn(rateCardVariants({ variant, className }))}>\r\n <div>\r\n {tags && (\r\n <div className=\"flex space-x-2 mb-6\">\r\n {tags.map((tag, index) => (\r\n <Tag key={index} variant={tag.color}>\r\n {tag.title}\r\n </Tag>\r\n ))}\r\n </div>\r\n )}\r\n <div className=\"space-y-12 mb-6\">\r\n <div className=\"space-y-4\">\r\n <div className=\"flex space-x-2 items-center relative\">\r\n <AppLink\r\n href={link}\r\n variant={variant === 'navy' ? 'white' : 'navy'}\r\n >\r\n <Heading level={4} as={'span'}>\r\n {title}\r\n </Heading>\r\n </AppLink>\r\n {titleInformer && <Informer content={titleInformer} />}\r\n </div>\r\n <div className=\"flex space-x-4 items-baseline\">\r\n {oldPrice && (\r\n <Text\r\n variant=\"caption\"\r\n className=\"text-navy-opacity-40 line-through\"\r\n >\r\n {oldPrice}\r\n </Text>\r\n )}\r\n <Heading level={5} as={'div'}>\r\n {price}\r\n </Heading>\r\n </div>\r\n </div>\r\n <div className=\"space-y-4\">\r\n <div className={cn(dividerVariants({ variant }))}></div>\r\n <Text\r\n variant=\"small-body\"\r\n as=\"div\"\r\n className={cn(descVariants({ variant }), 'content')}\r\n >\r\n <SafeHtmlRenderer html={desc} />\r\n </Text>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div className=\"w-full gap-2 flex\">\r\n {buttons?.map((button, index) => (\r\n <RateButton\r\n key={index}\r\n variant={button.variant}\r\n title={button.title}\r\n link={button.link}\r\n onClick={()
|
|
1
|
+
{"version":3,"file":"index.es34.js","sources":["../src/components/cards/Rate.tsx"],"sourcesContent":["import React from 'react'\r\n\r\nimport { cva, type VariantProps } from 'class-variance-authority'\r\nimport { cn } from '@/lib/utils/cn'\r\nimport Heading from '../core/typography/Heading'\r\nimport Text from '../core/typography/Text'\r\nimport { ButtonSecondary } from '../ui/button'\r\nimport AppLink from '../ui/Link'\r\nimport { ButtonSecondaryProps } from '../ui/button/ButtonSecondary'\r\nimport { Tag, TagItemProps } from '../ui/Tag'\r\n\r\nimport SafeHtmlRenderer from '../SafeHtml'\r\nimport { getAdapter } from '@/Adapters'\r\nimport Informer from '../Informer'\r\n\r\nconst rateCardVariants = cva(\r\n 'group p-6 rounded-lg min-h-[360px] flex flex-col justify-between h-full',\r\n {\r\n variants: {\r\n variant: {\r\n default:\r\n 'text-navy bg-whitish hover1:bg-navy-opacity-4 hover1:text-navy',\r\n navy: 'text-whitish bg-gradient-to-b from-navy to-sapphire hover1:from-sapphire hover1:to-navy',\r\n },\r\n },\r\n defaultVariants: {\r\n variant: 'default',\r\n },\r\n }\r\n)\r\n\r\nconst dividerVariants = cva('w-full h-[1px]', {\r\n variants: {\r\n variant: {\r\n default: 'bg-grey-3',\r\n navy: 'bg-whitish-opacity-16',\r\n },\r\n },\r\n defaultVariants: {\r\n variant: 'default',\r\n },\r\n})\r\n\r\nconst descVariants = cva('', {\r\n variants: {\r\n variant: {\r\n default: 'text-navy-opacity-60',\r\n navy: 'text-whitish-opacity-60',\r\n },\r\n },\r\n defaultVariants: {\r\n variant: 'default',\r\n },\r\n})\r\n\r\nexport interface RateButtonProps {\r\n variant?: ButtonSecondaryProps['variant']\r\n title?: string\r\n link?: string\r\n isBuyButton?: boolean\r\n uniqId?: string\r\n onClick?: (uniqId?: string) => void\r\n}\r\n\r\nexport const RateButton: React.FC<RateButtonProps> = ({\r\n variant,\r\n title,\r\n link,\r\n uniqId,\r\n onClick,\r\n}) => {\r\n const LinkWrapper = getAdapter('LinkWrapper')\r\n\r\n const button = (\r\n <ButtonSecondary variant={variant} onClick={() => onClick?.(uniqId)}>\r\n {title || 'Подробнее'}\r\n </ButtonSecondary>\r\n )\r\n\r\n if (link) {\r\n return <LinkWrapper href={link}>{button}</LinkWrapper>\r\n }\r\n\r\n return button\r\n}\r\n\r\nexport interface RateCardProps\r\n extends React.HTMLAttributes<HTMLDivElement>,\r\n VariantProps<typeof rateCardVariants> {\r\n className?: string\r\n title: string\r\n oldPrice?: string\r\n price: string\r\n desc: string\r\n link: string\r\n onClickBuyButton?: ({\r\n title,\r\n uniqId,\r\n }: {\r\n title: string\r\n uniqId?: string\r\n }) => void\r\n buttons?: RateButtonProps[]\r\n tags?: TagItemProps[]\r\n titleInformer?: string\r\n}\r\n\r\nexport interface RateCardPropsWithoutHTMLAttributes\r\n extends Omit<RateCardProps, keyof React.HTMLAttributes<HTMLDivElement>> {\r\n className?: string\r\n title: string\r\n}\r\n\r\nconst RateCard: React.FC<RateCardProps> = ({\r\n variant,\r\n className,\r\n title,\r\n oldPrice,\r\n price,\r\n desc,\r\n link,\r\n onClickBuyButton,\r\n buttons,\r\n tags,\r\n titleInformer,\r\n}) => {\r\n return (\r\n <div className={cn(rateCardVariants({ variant, className }))}>\r\n <div>\r\n {tags && (\r\n <div className=\"flex space-x-2 mb-6\">\r\n {tags.map((tag, index) => (\r\n <Tag key={index} variant={tag.color}>\r\n {tag.title}\r\n </Tag>\r\n ))}\r\n </div>\r\n )}\r\n <div className=\"space-y-12 mb-6\">\r\n <div className=\"space-y-4\">\r\n <div className=\"flex space-x-2 items-center relative\">\r\n <AppLink\r\n href={link}\r\n variant={variant === 'navy' ? 'white' : 'navy'}\r\n >\r\n <Heading level={4} as={'span'}>\r\n {title}\r\n </Heading>\r\n </AppLink>\r\n {titleInformer && <Informer content={titleInformer} />}\r\n </div>\r\n <div className=\"flex space-x-4 items-baseline\">\r\n {oldPrice && (\r\n <Text\r\n variant=\"caption\"\r\n className=\"text-navy-opacity-40 line-through\"\r\n >\r\n {oldPrice}\r\n </Text>\r\n )}\r\n <Heading level={5} as={'div'}>\r\n {price}\r\n </Heading>\r\n </div>\r\n </div>\r\n <div className=\"space-y-4\">\r\n <div className={cn(dividerVariants({ variant }))}></div>\r\n <Text\r\n variant=\"small-body\"\r\n as=\"div\"\r\n className={cn(descVariants({ variant }), 'content')}\r\n >\r\n <SafeHtmlRenderer html={desc} />\r\n </Text>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div className=\"w-full gap-2 flex\">\r\n {buttons?.map((button, index) => (\r\n <RateButton\r\n key={index}\r\n variant={button.variant}\r\n title={button.title}\r\n link={button.link}\r\n onClick={() =>\r\n button.isBuyButton &&\r\n onClickBuyButton?.({ title, uniqId: button.uniqId })\r\n }\r\n />\r\n ))}\r\n </div>\r\n </div>\r\n )\r\n}\r\n\r\nexport default RateCard\r\n"],"names":["rateCardVariants","cva","dividerVariants","descVariants","RateButton","variant","title","link","uniqId","onClick","LinkWrapper","getAdapter","button","React","ButtonSecondary","RateCard","className","oldPrice","price","desc","onClickBuyButton","buttons","tags","titleInformer","cn","tag","index","Tag","AppLink","Heading","Informer","Text","SafeHtmlRenderer","Rate"],"mappings":"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"}
|
package/dist/index.es40.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import V from "./index.es54.js";
|
|
2
|
-
import
|
|
2
|
+
import f from "./index.es4.js";
|
|
3
3
|
import N from "./index.es46.js";
|
|
4
4
|
import e from "react";
|
|
5
5
|
import k from "./index.es19.js";
|
|
6
6
|
import H from "./index.es14.js";
|
|
7
7
|
import y from "./index.es47.js";
|
|
8
|
-
import { cn as
|
|
8
|
+
import { cn as m } from "./index.es55.js";
|
|
9
9
|
import { cva as h } from "class-variance-authority";
|
|
10
10
|
import { getAdapter as j } from "./index.es9.js";
|
|
11
11
|
const I = h("", {
|
|
@@ -57,29 +57,29 @@ const I = h("", {
|
|
|
57
57
|
}), C = ({
|
|
58
58
|
text: a,
|
|
59
59
|
href: r,
|
|
60
|
-
target:
|
|
61
|
-
anchor:
|
|
60
|
+
target: i,
|
|
61
|
+
anchor: c,
|
|
62
62
|
theme: l,
|
|
63
|
-
className:
|
|
64
|
-
linkClassName:
|
|
65
|
-
iconDirection:
|
|
66
|
-
onClick:
|
|
63
|
+
className: o,
|
|
64
|
+
linkClassName: d,
|
|
65
|
+
iconDirection: s,
|
|
66
|
+
onClick: u
|
|
67
67
|
}) => r ? /* @__PURE__ */ e.createElement(
|
|
68
|
-
|
|
68
|
+
f,
|
|
69
69
|
{
|
|
70
70
|
href: r,
|
|
71
71
|
theme: l,
|
|
72
|
-
className:
|
|
73
|
-
linkClassName:
|
|
74
|
-
iconDirection:
|
|
72
|
+
className: m(o, "w-fit"),
|
|
73
|
+
linkClassName: d,
|
|
74
|
+
iconDirection: s
|
|
75
75
|
},
|
|
76
76
|
a
|
|
77
|
-
) :
|
|
78
|
-
|
|
77
|
+
) : c ? /* @__PURE__ */ e.createElement(f, { asChild: !0, theme: l, iconDirection: s }, /* @__PURE__ */ e.createElement("a", { href: r }, a)) : i ? /* @__PURE__ */ e.createElement(f, { asChild: !0, theme: l, iconDirection: s }, /* @__PURE__ */ e.createElement("a", { href: r, target: i, rel: "noopener noreferrer" }, a)) : /* @__PURE__ */ e.createElement(
|
|
78
|
+
f,
|
|
79
79
|
{
|
|
80
80
|
theme: l,
|
|
81
|
-
iconDirection:
|
|
82
|
-
onClick:
|
|
81
|
+
iconDirection: s,
|
|
82
|
+
onClick: u
|
|
83
83
|
},
|
|
84
84
|
a
|
|
85
85
|
), B = (a) => {
|
|
@@ -108,16 +108,16 @@ const I = h("", {
|
|
|
108
108
|
}, F = ({
|
|
109
109
|
title: a,
|
|
110
110
|
contentContainerSize: r,
|
|
111
|
-
desc:
|
|
112
|
-
price:
|
|
111
|
+
desc: i,
|
|
112
|
+
price: c,
|
|
113
113
|
oldPrice: l,
|
|
114
|
-
image:
|
|
115
|
-
buttons:
|
|
116
|
-
childrenComponentType:
|
|
117
|
-
breadcrumbs:
|
|
114
|
+
image: o,
|
|
115
|
+
buttons: d,
|
|
116
|
+
childrenComponentType: s,
|
|
117
|
+
breadcrumbs: u,
|
|
118
118
|
bottomButtons: x,
|
|
119
|
-
size:
|
|
120
|
-
imageSize:
|
|
119
|
+
size: n = "default",
|
|
120
|
+
imageSize: p,
|
|
121
121
|
linesImage: v,
|
|
122
122
|
onButtonClick: E
|
|
123
123
|
}) => {
|
|
@@ -144,18 +144,18 @@ const I = h("", {
|
|
|
144
144
|
"div",
|
|
145
145
|
{
|
|
146
146
|
"data-test-id": "content-container",
|
|
147
|
-
className:
|
|
147
|
+
className: m(
|
|
148
148
|
"w-full relative z-20 grid grid-cols-1 sm:grid-cols-9 pb-12",
|
|
149
|
-
I({ size:
|
|
149
|
+
I({ size: n })
|
|
150
150
|
)
|
|
151
151
|
},
|
|
152
|
-
/* @__PURE__ */ e.createElement("div", { className: "right-divider_with-tongue1 col-span-2 mt-6 pr-4 relative hidden lg:block" },
|
|
152
|
+
/* @__PURE__ */ e.createElement("div", { className: "right-divider_with-tongue1 col-span-2 mt-6 pr-4 relative hidden lg:block" }, u && /* @__PURE__ */ e.createElement(V, { list: u })),
|
|
153
153
|
/* @__PURE__ */ e.createElement(
|
|
154
154
|
"div",
|
|
155
155
|
{
|
|
156
|
-
className:
|
|
156
|
+
className: m(
|
|
157
157
|
"w-auto sm:p-10 pt-10 sm:pt-32 flex flex-col justify-center items-start col-span-7 border-[1px] border-t-0 border-r-0 border-b-0 border-l-0 lg:border-l-[1px] border-whitish-opacity-16 border-solid pb-4",
|
|
158
|
-
W({ size:
|
|
158
|
+
W({ size: n })
|
|
159
159
|
)
|
|
160
160
|
},
|
|
161
161
|
/* @__PURE__ */ e.createElement(
|
|
@@ -163,7 +163,7 @@ const I = h("", {
|
|
|
163
163
|
{
|
|
164
164
|
level: 1,
|
|
165
165
|
as: "h1",
|
|
166
|
-
className:
|
|
166
|
+
className: m("", _({ contentContainerSize: r }))
|
|
167
167
|
},
|
|
168
168
|
/* @__PURE__ */ e.createElement(k, { html: a })
|
|
169
169
|
),
|
|
@@ -171,20 +171,20 @@ const I = h("", {
|
|
|
171
171
|
y,
|
|
172
172
|
{
|
|
173
173
|
variant: "body",
|
|
174
|
-
className:
|
|
174
|
+
className: m(
|
|
175
175
|
q({ contentContainerSize: r }),
|
|
176
176
|
"text-whitish-opacity-60 mt-5"
|
|
177
177
|
)
|
|
178
178
|
},
|
|
179
|
-
|
|
180
|
-
), (
|
|
179
|
+
i
|
|
180
|
+
), (c || l) && /* @__PURE__ */ e.createElement("div", { className: "flex space-x-5 items-baseline" }, l && /* @__PURE__ */ e.createElement(
|
|
181
181
|
y,
|
|
182
182
|
{
|
|
183
183
|
variant: "lead-text",
|
|
184
184
|
className: "text-whitish-opacity-32 line-through"
|
|
185
185
|
},
|
|
186
186
|
l
|
|
187
|
-
), /* @__PURE__ */ e.createElement(N, { level: 3, as: "div" },
|
|
187
|
+
), /* @__PURE__ */ e.createElement(N, { level: 3, as: "div" }, c)), d && /* @__PURE__ */ e.createElement("div", { className: "flex gap-4 mt-12 w-full" }, d.map((t) => /* @__PURE__ */ e.createElement(
|
|
188
188
|
C,
|
|
189
189
|
{
|
|
190
190
|
key: t.text,
|
|
@@ -192,7 +192,7 @@ const I = h("", {
|
|
|
192
192
|
onClick: () => E?.(t.uniqId)
|
|
193
193
|
}
|
|
194
194
|
)))),
|
|
195
|
-
|
|
195
|
+
s && /* @__PURE__ */ e.createElement("div", { className: "mt-5" }, B(s))
|
|
196
196
|
)
|
|
197
197
|
), x && /* @__PURE__ */ e.createElement("div", { className: "flex gap-4 absolute bottom-8 z-30 w-[96%] mx-auto" }, x.map((t) => /* @__PURE__ */ e.createElement(
|
|
198
198
|
C,
|
|
@@ -204,13 +204,13 @@ const I = h("", {
|
|
|
204
204
|
linkClassName: "w-full",
|
|
205
205
|
onClick: () => E?.(t.uniqId)
|
|
206
206
|
}
|
|
207
|
-
))),
|
|
207
|
+
))), o && /* @__PURE__ */ e.createElement("div", { className: "hidden sm:block absolute bottom-0 right-6 floating" }, /* @__PURE__ */ e.createElement(
|
|
208
208
|
b,
|
|
209
209
|
{
|
|
210
|
-
src:
|
|
210
|
+
src: o,
|
|
211
211
|
alt: a,
|
|
212
|
-
width: g(
|
|
213
|
-
height: w(
|
|
212
|
+
width: g(p || n),
|
|
213
|
+
height: w(p || n),
|
|
214
214
|
objectFit: "contain"
|
|
215
215
|
}
|
|
216
216
|
)), v && /* @__PURE__ */ e.createElement("div", { className: "absolute bottom-0 right-6 fadeLines" }, /* @__PURE__ */ e.createElement(
|
|
@@ -218,8 +218,8 @@ const I = h("", {
|
|
|
218
218
|
{
|
|
219
219
|
src: v,
|
|
220
220
|
alt: a,
|
|
221
|
-
width: g(
|
|
222
|
-
height: w(
|
|
221
|
+
width: g(p || n),
|
|
222
|
+
height: w(p || n),
|
|
223
223
|
objectFit: "contain"
|
|
224
224
|
}
|
|
225
225
|
))));
|
package/dist/index.es40.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.es40.js","sources":["../src/sections/Hero.tsx"],"sourcesContent":["import { BreadcrumbProps, Breadcrumbs } from '@/components/breadcrumbs'\r\n\r\nimport { ButtonPrimary } from '@/components/ui/button'\r\nimport { CommonButtonProps } from './common'\r\nimport Heading from '@/components/core/typography/Heading'\r\nimport React from 'react'\r\nimport SafeHtmlRenderer from '@/components/SafeHtml'\r\nimport SearchInputWithButton from '@/components/ui/input/SearchInputWithButton'\r\nimport Text from '@/components/core/typography/Text'\r\nimport { cn } from '@/lib/utils/cn'\r\nimport { cva } from 'class-variance-authority'\r\nimport { getAdapter } from '@/Adapters'\r\n\r\n// import { SearchInput } from '@/components/ui/input'\r\n\r\nconst contentContainerVariants = cva('', {\r\n variants: {\r\n size: {\r\n default: 'sm:pb-32',\r\n medium: 'sm:pb-[116px]',\r\n small: 'sm:pb-10',\r\n },\r\n },\r\n defaultVariants: {\r\n size: 'default',\r\n },\r\n})\r\n\r\nconst sliderContentVariants = cva('', {\r\n variants: {\r\n size: {\r\n default: 'sm:pb-[76px]',\r\n medium: 'sm:pb-6',\r\n small: 'sm:pb-6',\r\n },\r\n },\r\n defaultVariants: {\r\n size: 'default',\r\n },\r\n})\r\n\r\nconst titleVariants = cva('', {\r\n variants: {\r\n contentContainerSize: {\r\n default: 'mb-5 lg:max-w-[700px]',\r\n medium: 'lg:max-w-[590px]',\r\n large: 'lg:max-w-5xl',\r\n // small: \"\",\r\n },\r\n },\r\n defaultVariants: {\r\n contentContainerSize: 'default',\r\n },\r\n})\r\n\r\nconst descVariants = cva('', {\r\n variants: {\r\n contentContainerSize: {\r\n default: 'lg:max-w-[460px]',\r\n medium: 'lg:max-w-[370px]',\r\n large: 'lg:max-w-2xl',\r\n // small: \"\",\r\n },\r\n },\r\n defaultVariants: {\r\n contentContainerSize: 'default',\r\n },\r\n})\r\n\r\nexport interface HeroProps {\r\n title: string\r\n desc?: string\r\n price?: string\r\n oldPrice?: string\r\n image?: string\r\n buttons?: CommonButtonProps[]\r\n childrenComponentType?: 'search-news'\r\n breadcrumbs?: BreadcrumbProps[]\r\n bottomButtons?: CommonButtonProps[]\r\n size?: 'default' | 'small' | 'medium'\r\n contentContainerSize?: 'default' | 'medium' | 'large'\r\n imageSize?: 'default' | 'small' | 'medium'\r\n linesImage?: string\r\n onButtonClick?: (uniqId?: string) => void\r\n}\r\n\r\nexport const HeroButton: React.FC<CommonButtonProps> = ({\r\n text,\r\n href,\r\n target,\r\n anchor,\r\n theme,\r\n className,\r\n linkClassName,\r\n iconDirection,\r\n onClick,\r\n}) => {\r\n if (href) {\r\n return (\r\n <ButtonPrimary\r\n href={href}\r\n theme={theme}\r\n className={className}\r\n linkClassName={linkClassName}\r\n iconDirection={iconDirection}\r\n >\r\n {text}\r\n </ButtonPrimary>\r\n )\r\n }\r\n\r\n if (anchor) {\r\n // TODO: the whole button is not clickable, but it should be\r\n return (\r\n <ButtonPrimary asChild theme={theme} iconDirection={iconDirection}>\r\n <a href={href}>{text}</a>\r\n </ButtonPrimary>\r\n )\r\n }\r\n\r\n if (target) {\r\n return (\r\n <ButtonPrimary asChild theme={theme} iconDirection={iconDirection}>\r\n <a href={href} target={target} rel=\"noopener noreferrer\">\r\n {text}\r\n </a>\r\n </ButtonPrimary>\r\n )\r\n }\r\n\r\n return (\r\n <ButtonPrimary\r\n theme={theme}\r\n iconDirection={iconDirection}\r\n onClick={onClick}\r\n >\r\n {text}\r\n </ButtonPrimary>\r\n )\r\n}\r\n\r\nconst childrenComponent = (componentType: 'search-news') => {\r\n switch (componentType) {\r\n case 'search-news':\r\n return (\r\n <div\r\n data-test-id=\"search-news\"\r\n className=\"w-full h-full flex justify-center items-center\"\r\n >\r\n <SearchInputWithButton\r\n placeholder=\"Фильтр по тарифам\"\r\n onChange={(event) => {\r\n console.log(event.target.value)\r\n }}\r\n className=\"w-[456px]\"\r\n // className=\"h-16 w-72 mt-2 bg-whitish\"\r\n />\r\n </div>\r\n )\r\n\r\n default:\r\n return null\r\n }\r\n}\r\n\r\nconst Hero: React.FC<HeroProps> = ({\r\n title,\r\n contentContainerSize,\r\n desc,\r\n price,\r\n oldPrice,\r\n image,\r\n buttons,\r\n childrenComponentType,\r\n breadcrumbs,\r\n bottomButtons,\r\n size = 'default',\r\n imageSize,\r\n linesImage,\r\n onButtonClick,\r\n}) => {\r\n const imageWidth = (size: 'small' | 'medium' | 'default') => {\r\n switch (size) {\r\n case 'small':\r\n return 448\r\n case 'medium':\r\n return 552\r\n default:\r\n return 664\r\n }\r\n }\r\n const imageHeight = (size: 'small' | 'medium' | 'default') => {\r\n switch (size) {\r\n case 'small':\r\n return 336\r\n case 'medium':\r\n return 456\r\n default:\r\n return 544\r\n }\r\n }\r\n\r\n const ImageWrapper = getAdapter('ImageWrapper')\r\n\r\n return (\r\n <section className=\"container relative\">\r\n <div className=\"mx-auto w-full h-[606px]1 bg-gradient-to-b from-navy to-sapphire text-white rounded-2xl px-6 relative overflow-hidden\">\r\n <div\r\n data-test-id=\"content-container\"\r\n className={cn(\r\n 'w-full relative z-20 grid grid-cols-1 sm:grid-cols-9 pb-12',\r\n contentContainerVariants({ size })\r\n )}\r\n >\r\n {/* Navigation */}\r\n <div className=\"right-divider_with-tongue1 col-span-2 mt-6 pr-4 relative hidden lg:block\">\r\n {breadcrumbs && <Breadcrumbs list={breadcrumbs} />}\r\n </div>\r\n\r\n {/* Slider Content */}\r\n <div\r\n className={cn(\r\n 'w-auto sm:p-10 pt-10 sm:pt-32 flex flex-col justify-center items-start col-span-7 border-[1px] border-t-0 border-r-0 border-b-0 border-l-0 lg:border-l-[1px] border-whitish-opacity-16 border-solid pb-4',\r\n sliderContentVariants({ size })\r\n )}\r\n >\r\n <Heading\r\n level={1}\r\n as={'h1'}\r\n className={cn('', titleVariants({ contentContainerSize }))}\r\n >\r\n <SafeHtmlRenderer html={title} />\r\n </Heading>\r\n\r\n <div className=\"space-y-10\">\r\n <Text\r\n variant=\"body\"\r\n className={cn(\r\n descVariants({ contentContainerSize }),\r\n 'text-whitish-opacity-60 mt-5'\r\n )}\r\n >\r\n {desc}\r\n </Text>\r\n\r\n {(price || oldPrice) && (\r\n <div className=\"flex space-x-5 items-baseline\">\r\n {oldPrice && (\r\n <Text\r\n variant=\"lead-text\"\r\n className=\"text-whitish-opacity-32 line-through\"\r\n >\r\n {oldPrice}\r\n </Text>\r\n )}\r\n <Heading level={3} as={'div'}>\r\n {price}\r\n </Heading>\r\n </div>\r\n )}\r\n\r\n {buttons && (\r\n <div className=\"flex gap-4 mt-12 w-full\">\r\n {buttons.map((button) => (\r\n <HeroButton\r\n key={button.text}\r\n {...button}\r\n onClick={() => onButtonClick?.(button.uniqId)}\r\n />\r\n ))}\r\n </div>\r\n )}\r\n </div>\r\n\r\n {childrenComponentType && (\r\n <div className=\"mt-5\">\r\n {childrenComponent(childrenComponentType)}\r\n </div>\r\n )}\r\n </div>\r\n </div>\r\n\r\n {bottomButtons && (\r\n <div className=\"flex gap-4 absolute bottom-8 z-30 w-[96%] mx-auto\">\r\n {bottomButtons.map((button) => (\r\n <HeroButton\r\n key={button.text}\r\n theme=\"opacity\"\r\n {...button}\r\n className=\"w-full backdrop-blur-[8px]\"\r\n linkClassName=\"w-full\"\r\n onClick={() => onButtonClick?.(button.uniqId)}\r\n />\r\n ))}\r\n </div>\r\n )}\r\n\r\n {image && (\r\n <div className=\"hidden sm:block absolute bottom-0 right-6 floating\">\r\n <ImageWrapper\r\n src={image}\r\n alt={title}\r\n // width={size === \"default\" ? 664 : 448}\r\n // height={size === \"default\" ? 544 : 336}\r\n width={imageWidth(imageSize || size)}\r\n height={imageHeight(imageSize || size)}\r\n objectFit=\"contain\"\r\n />\r\n </div>\r\n )}\r\n\r\n {linesImage && (\r\n <div className=\"absolute bottom-0 right-6 fadeLines\">\r\n <ImageWrapper\r\n src={linesImage}\r\n alt={title}\r\n // width={size === \"default\" ? 664 : 448}\r\n // height={size === \"default\" ? 544 : 336}\r\n width={imageWidth(imageSize || size)}\r\n height={imageHeight(imageSize || size)}\r\n objectFit=\"contain\"\r\n />\r\n </div>\r\n )}\r\n </div>\r\n </section>\r\n )\r\n}\r\n\r\nexport default Hero\r\n"],"names":["contentContainerVariants","cva","sliderContentVariants","titleVariants","descVariants","HeroButton","text","href","target","anchor","theme","className","linkClassName","iconDirection","onClick","React","ButtonPrimary","childrenComponent","componentType","SearchInputWithButton","event","Hero","title","contentContainerSize","desc","price","oldPrice","image","buttons","childrenComponentType","breadcrumbs","bottomButtons","size","imageSize","linesImage","onButtonClick","imageWidth","imageHeight","ImageWrapper","getAdapter","cn","Breadcrumbs","Heading","SafeHtmlRenderer","Text","button","Hero$1"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.es40.js","sources":["../src/sections/Hero.tsx"],"sourcesContent":["import { BreadcrumbProps, Breadcrumbs } from '@/components/breadcrumbs'\r\n\r\nimport { ButtonPrimary } from '@/components/ui/button'\r\nimport { CommonButtonProps } from './common'\r\nimport Heading from '@/components/core/typography/Heading'\r\nimport React from 'react'\r\nimport SafeHtmlRenderer from '@/components/SafeHtml'\r\nimport SearchInputWithButton from '@/components/ui/input/SearchInputWithButton'\r\nimport Text from '@/components/core/typography/Text'\r\nimport { cn } from '@/lib/utils/cn'\r\nimport { cva } from 'class-variance-authority'\r\nimport { getAdapter } from '@/Adapters'\r\n\r\n// import { SearchInput } from '@/components/ui/input'\r\n\r\nconst contentContainerVariants = cva('', {\r\n variants: {\r\n size: {\r\n default: 'sm:pb-32',\r\n medium: 'sm:pb-[116px]',\r\n small: 'sm:pb-10',\r\n },\r\n },\r\n defaultVariants: {\r\n size: 'default',\r\n },\r\n})\r\n\r\nconst sliderContentVariants = cva('', {\r\n variants: {\r\n size: {\r\n default: 'sm:pb-[76px]',\r\n medium: 'sm:pb-6',\r\n small: 'sm:pb-6',\r\n },\r\n },\r\n defaultVariants: {\r\n size: 'default',\r\n },\r\n})\r\n\r\nconst titleVariants = cva('', {\r\n variants: {\r\n contentContainerSize: {\r\n default: 'mb-5 lg:max-w-[700px]',\r\n medium: 'lg:max-w-[590px]',\r\n large: 'lg:max-w-5xl',\r\n // small: \"\",\r\n },\r\n },\r\n defaultVariants: {\r\n contentContainerSize: 'default',\r\n },\r\n})\r\n\r\nconst descVariants = cva('', {\r\n variants: {\r\n contentContainerSize: {\r\n default: 'lg:max-w-[460px]',\r\n medium: 'lg:max-w-[370px]',\r\n large: 'lg:max-w-2xl',\r\n // small: \"\",\r\n },\r\n },\r\n defaultVariants: {\r\n contentContainerSize: 'default',\r\n },\r\n})\r\n\r\nexport interface HeroProps {\r\n title: string\r\n desc?: string\r\n price?: string\r\n oldPrice?: string\r\n image?: string\r\n buttons?: CommonButtonProps[]\r\n childrenComponentType?: 'search-news'\r\n breadcrumbs?: BreadcrumbProps[]\r\n bottomButtons?: CommonButtonProps[]\r\n size?: 'default' | 'small' | 'medium'\r\n contentContainerSize?: 'default' | 'medium' | 'large'\r\n imageSize?: 'default' | 'small' | 'medium'\r\n linesImage?: string\r\n onButtonClick?: (uniqId?: string) => void\r\n}\r\n\r\nexport const HeroButton: React.FC<CommonButtonProps> = ({\r\n text,\r\n href,\r\n target,\r\n anchor,\r\n theme,\r\n className,\r\n linkClassName,\r\n iconDirection,\r\n onClick,\r\n}) => {\r\n if (href) {\r\n return (\r\n <ButtonPrimary\r\n href={href}\r\n theme={theme}\r\n className={cn(className, 'w-fit')}\r\n linkClassName={linkClassName}\r\n iconDirection={iconDirection}\r\n >\r\n {text}\r\n </ButtonPrimary>\r\n )\r\n }\r\n\r\n if (anchor) {\r\n // TODO: the whole button is not clickable, but it should be\r\n return (\r\n <ButtonPrimary asChild theme={theme} iconDirection={iconDirection}>\r\n <a href={href}>{text}</a>\r\n </ButtonPrimary>\r\n )\r\n }\r\n\r\n if (target) {\r\n return (\r\n <ButtonPrimary asChild theme={theme} iconDirection={iconDirection}>\r\n <a href={href} target={target} rel=\"noopener noreferrer\">\r\n {text}\r\n </a>\r\n </ButtonPrimary>\r\n )\r\n }\r\n\r\n return (\r\n <ButtonPrimary\r\n theme={theme}\r\n iconDirection={iconDirection}\r\n onClick={onClick}\r\n >\r\n {text}\r\n </ButtonPrimary>\r\n )\r\n}\r\n\r\nconst childrenComponent = (componentType: 'search-news') => {\r\n switch (componentType) {\r\n case 'search-news':\r\n return (\r\n <div\r\n data-test-id=\"search-news\"\r\n className=\"w-full h-full flex justify-center items-center\"\r\n >\r\n <SearchInputWithButton\r\n placeholder=\"Фильтр по тарифам\"\r\n onChange={(event) => {\r\n console.log(event.target.value)\r\n }}\r\n className=\"w-[456px]\"\r\n // className=\"h-16 w-72 mt-2 bg-whitish\"\r\n />\r\n </div>\r\n )\r\n\r\n default:\r\n return null\r\n }\r\n}\r\n\r\nconst Hero: React.FC<HeroProps> = ({\r\n title,\r\n contentContainerSize,\r\n desc,\r\n price,\r\n oldPrice,\r\n image,\r\n buttons,\r\n childrenComponentType,\r\n breadcrumbs,\r\n bottomButtons,\r\n size = 'default',\r\n imageSize,\r\n linesImage,\r\n onButtonClick,\r\n}) => {\r\n const imageWidth = (size: 'small' | 'medium' | 'default') => {\r\n switch (size) {\r\n case 'small':\r\n return 448\r\n case 'medium':\r\n return 552\r\n default:\r\n return 664\r\n }\r\n }\r\n const imageHeight = (size: 'small' | 'medium' | 'default') => {\r\n switch (size) {\r\n case 'small':\r\n return 336\r\n case 'medium':\r\n return 456\r\n default:\r\n return 544\r\n }\r\n }\r\n\r\n const ImageWrapper = getAdapter('ImageWrapper')\r\n\r\n return (\r\n <section className=\"container relative\">\r\n <div className=\"mx-auto w-full h-[606px]1 bg-gradient-to-b from-navy to-sapphire text-white rounded-2xl px-6 relative overflow-hidden\">\r\n <div\r\n data-test-id=\"content-container\"\r\n className={cn(\r\n 'w-full relative z-20 grid grid-cols-1 sm:grid-cols-9 pb-12',\r\n contentContainerVariants({ size })\r\n )}\r\n >\r\n {/* Navigation */}\r\n <div className=\"right-divider_with-tongue1 col-span-2 mt-6 pr-4 relative hidden lg:block\">\r\n {breadcrumbs && <Breadcrumbs list={breadcrumbs} />}\r\n </div>\r\n\r\n {/* Slider Content */}\r\n <div\r\n className={cn(\r\n 'w-auto sm:p-10 pt-10 sm:pt-32 flex flex-col justify-center items-start col-span-7 border-[1px] border-t-0 border-r-0 border-b-0 border-l-0 lg:border-l-[1px] border-whitish-opacity-16 border-solid pb-4',\r\n sliderContentVariants({ size })\r\n )}\r\n >\r\n <Heading\r\n level={1}\r\n as={'h1'}\r\n className={cn('', titleVariants({ contentContainerSize }))}\r\n >\r\n <SafeHtmlRenderer html={title} />\r\n </Heading>\r\n\r\n <div className=\"space-y-10\">\r\n <Text\r\n variant=\"body\"\r\n className={cn(\r\n descVariants({ contentContainerSize }),\r\n 'text-whitish-opacity-60 mt-5'\r\n )}\r\n >\r\n {desc}\r\n </Text>\r\n\r\n {(price || oldPrice) && (\r\n <div className=\"flex space-x-5 items-baseline\">\r\n {oldPrice && (\r\n <Text\r\n variant=\"lead-text\"\r\n className=\"text-whitish-opacity-32 line-through\"\r\n >\r\n {oldPrice}\r\n </Text>\r\n )}\r\n <Heading level={3} as={'div'}>\r\n {price}\r\n </Heading>\r\n </div>\r\n )}\r\n\r\n {buttons && (\r\n <div className=\"flex gap-4 mt-12 w-full\">\r\n {buttons.map((button) => (\r\n <HeroButton\r\n key={button.text}\r\n {...button}\r\n onClick={() => onButtonClick?.(button.uniqId)}\r\n />\r\n ))}\r\n </div>\r\n )}\r\n </div>\r\n\r\n {childrenComponentType && (\r\n <div className=\"mt-5\">\r\n {childrenComponent(childrenComponentType)}\r\n </div>\r\n )}\r\n </div>\r\n </div>\r\n\r\n {bottomButtons && (\r\n <div className=\"flex gap-4 absolute bottom-8 z-30 w-[96%] mx-auto\">\r\n {bottomButtons.map((button) => (\r\n <HeroButton\r\n key={button.text}\r\n theme=\"opacity\"\r\n {...button}\r\n className=\"w-full backdrop-blur-[8px]\"\r\n linkClassName=\"w-full\"\r\n onClick={() => onButtonClick?.(button.uniqId)}\r\n />\r\n ))}\r\n </div>\r\n )}\r\n\r\n {image && (\r\n <div className=\"hidden sm:block absolute bottom-0 right-6 floating\">\r\n <ImageWrapper\r\n src={image}\r\n alt={title}\r\n // width={size === \"default\" ? 664 : 448}\r\n // height={size === \"default\" ? 544 : 336}\r\n width={imageWidth(imageSize || size)}\r\n height={imageHeight(imageSize || size)}\r\n objectFit=\"contain\"\r\n />\r\n </div>\r\n )}\r\n\r\n {linesImage && (\r\n <div className=\"absolute bottom-0 right-6 fadeLines\">\r\n <ImageWrapper\r\n src={linesImage}\r\n alt={title}\r\n // width={size === \"default\" ? 664 : 448}\r\n // height={size === \"default\" ? 544 : 336}\r\n width={imageWidth(imageSize || size)}\r\n height={imageHeight(imageSize || size)}\r\n objectFit=\"contain\"\r\n />\r\n </div>\r\n )}\r\n </div>\r\n </section>\r\n )\r\n}\r\n\r\nexport default Hero\r\n"],"names":["contentContainerVariants","cva","sliderContentVariants","titleVariants","descVariants","HeroButton","text","href","target","anchor","theme","className","linkClassName","iconDirection","onClick","React","ButtonPrimary","cn","childrenComponent","componentType","SearchInputWithButton","event","Hero","title","contentContainerSize","desc","price","oldPrice","image","buttons","childrenComponentType","breadcrumbs","bottomButtons","size","imageSize","linesImage","onButtonClick","imageWidth","imageHeight","ImageWrapper","getAdapter","Breadcrumbs","Heading","SafeHtmlRenderer","Text","button","Hero$1"],"mappings":"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"}
|
package/dist/styles.css
CHANGED