@iit/precision-ui 0.2.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Adapters.d.ts +0 -7
- package/dist/Adapters.d.ts.map +1 -1
- package/dist/components/GridIterator.d.ts.map +1 -1
- package/dist/components/core/typography/Heading.d.ts +1 -0
- package/dist/components/core/typography/Heading.d.ts.map +1 -1
- package/dist/components/ui/checkbox/CheckboxWithLabel.d.ts.map +1 -1
- package/dist/components/ui/form.d.ts +24 -0
- package/dist/components/ui/form.d.ts.map +1 -0
- package/dist/components/ui/textarea/Textarea.d.ts +10 -0
- package/dist/components/ui/textarea/Textarea.d.ts.map +1 -0
- package/dist/components/ui/textarea/TextareaWithLabel.d.ts +11 -0
- package/dist/components/ui/textarea/TextareaWithLabel.d.ts.map +1 -0
- package/dist/components/ui/textarea/index.d.ts +5 -0
- package/dist/components/ui/textarea/index.d.ts.map +1 -0
- package/dist/decorators/CarouselWrapper.d.ts +4 -4
- package/dist/decorators/CarouselWrapper.d.ts.map +1 -1
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.es.js +55 -41
- package/dist/index.es.js.map +1 -1
- package/dist/index.es10.js +1 -1
- package/dist/index.es11.js +1 -1
- package/dist/index.es12.js +13 -14
- package/dist/index.es12.js.map +1 -1
- package/dist/index.es13.js +27 -24
- package/dist/index.es13.js.map +1 -1
- package/dist/index.es14.js +28 -73
- package/dist/index.es14.js.map +1 -1
- package/dist/index.es15.js +15 -23
- package/dist/index.es15.js.map +1 -1
- package/dist/index.es16.js +23 -31
- package/dist/index.es16.js.map +1 -1
- package/dist/index.es17.js +71 -28
- package/dist/index.es17.js.map +1 -1
- package/dist/index.es18.js +33 -26
- package/dist/index.es18.js.map +1 -1
- package/dist/index.es19.js +25 -176
- package/dist/index.es19.js.map +1 -1
- package/dist/index.es2.js +1 -1
- package/dist/index.es20.js +29 -51
- package/dist/index.es20.js.map +1 -1
- package/dist/index.es21.js +25 -54
- package/dist/index.es21.js.map +1 -1
- package/dist/index.es22.js +178 -54
- package/dist/index.es22.js.map +1 -1
- package/dist/index.es23.js +50 -17
- package/dist/index.es23.js.map +1 -1
- package/dist/index.es24.js +56 -18
- package/dist/index.es24.js.map +1 -1
- package/dist/index.es25.js +59 -6
- package/dist/index.es25.js.map +1 -1
- package/dist/index.es26.js +19 -21
- package/dist/index.es26.js.map +1 -1
- package/dist/index.es27.js +18 -26
- package/dist/index.es27.js.map +1 -1
- package/dist/index.es28.js +88 -2
- package/dist/index.es28.js.map +1 -1
- package/dist/index.es29.js +6 -20
- package/dist/index.es29.js.map +1 -1
- package/dist/index.es3.js +2 -2
- package/dist/index.es30.js +21 -19
- package/dist/index.es30.js.map +1 -1
- package/dist/index.es31.js +18 -9
- package/dist/index.es31.js.map +1 -1
- package/dist/index.es32.js +19 -84
- package/dist/index.es32.js.map +1 -1
- package/dist/index.es33.js +10 -18
- package/dist/index.es33.js.map +1 -1
- package/dist/index.es34.js +77 -38
- package/dist/index.es34.js.map +1 -1
- package/dist/index.es35.js +15 -41
- package/dist/index.es35.js.map +1 -1
- package/dist/index.es36.js +42 -33
- package/dist/index.es36.js.map +1 -1
- package/dist/index.es37.js +40 -51
- package/dist/index.es37.js.map +1 -1
- package/dist/index.es38.js +33 -88
- package/dist/index.es38.js.map +1 -1
- package/dist/index.es39.js +37 -79
- package/dist/index.es39.js.map +1 -1
- package/dist/index.es4.js +1 -1
- package/dist/index.es40.js +86 -21
- package/dist/index.es40.js.map +1 -1
- package/dist/index.es41.js +97 -15
- package/dist/index.es41.js.map +1 -1
- package/dist/index.es42.js +27 -4
- package/dist/index.es42.js.map +1 -1
- package/dist/index.es43.js +48 -0
- package/dist/index.es43.js.map +1 -0
- package/dist/index.es44.js +19 -0
- package/dist/index.es44.js.map +1 -0
- package/dist/index.es45.js +225 -0
- package/dist/index.es45.js.map +1 -0
- package/dist/index.es46.js +7 -0
- package/dist/index.es46.js.map +1 -0
- package/dist/index.es5.js +1 -1
- package/dist/index.es6.js +1 -1
- package/dist/index.es7.js +1 -1
- package/dist/index.es8.js +1 -1
- package/dist/index.es9.js.map +1 -1
- package/dist/styles.css +35 -2
- package/package.json +18 -4
- package/dist/utils/unique.d.ts +0 -2
- package/dist/utils/unique.d.ts.map +0 -1
package/dist/index.es40.js
CHANGED
|
@@ -1,30 +1,95 @@
|
|
|
1
|
-
import { cva as
|
|
2
|
-
|
|
1
|
+
import { cva as d } from "class-variance-authority";
|
|
2
|
+
import c from "./index.es6.js";
|
|
3
|
+
import g from "./index.es26.js";
|
|
4
|
+
import e from "react";
|
|
5
|
+
import u from "./index.es27.js";
|
|
6
|
+
import { cn as o } from "./index.es29.js";
|
|
7
|
+
import { getAdapter as m } from "./index.es9.js";
|
|
8
|
+
const x = d(
|
|
9
|
+
"group p-6 rounded-lg min-h-[300px] flex flex-col justify-between gap-12 items-start relative hover:scale1-[1.005] h-full",
|
|
10
|
+
{
|
|
11
|
+
variants: {
|
|
12
|
+
variant: {
|
|
13
|
+
default: "text-navy bg-whitish hover1:bg-navy-opacity-4 hover1:text-navy",
|
|
14
|
+
// navy: "text-whitish bg-gradient-to-b from-navy to-sapphire hover:from-sapphire hover:to-navy",
|
|
15
|
+
navy: "text-whitish primary-gradient"
|
|
16
|
+
},
|
|
17
|
+
size: {
|
|
18
|
+
1: "sm:col-span-1",
|
|
19
|
+
2: "sm:col-span-2"
|
|
20
|
+
}
|
|
21
|
+
},
|
|
22
|
+
defaultVariants: {
|
|
23
|
+
variant: "default",
|
|
24
|
+
size: 1
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
), E = d("", {
|
|
3
28
|
variants: {
|
|
4
29
|
variant: {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
h2: "typo_variant_h2",
|
|
8
|
-
h3: "typo_variant_h3",
|
|
9
|
-
h4: "typo_variant_h4",
|
|
10
|
-
h5: "typo_variant_h5",
|
|
11
|
-
h6: "typo_variant_h6",
|
|
12
|
-
"subtitle-1": "typo_variant_subtitle-1",
|
|
13
|
-
"subtitle-2": "typo_variant_subtitle-2",
|
|
14
|
-
overline: "typo_variant_overline",
|
|
15
|
-
"lead-text": "typo_variant_lead-text",
|
|
16
|
-
body: "typo_variant_body",
|
|
17
|
-
"small-body": "typo_variant_small-body",
|
|
18
|
-
caption: "typo_variant_caption",
|
|
19
|
-
button: "typo_variant_button",
|
|
20
|
-
link: "typo_variant_link"
|
|
30
|
+
default: "text-navy-opacity-60",
|
|
31
|
+
navy: "text-whitish-opacity-60"
|
|
21
32
|
}
|
|
22
33
|
},
|
|
23
34
|
defaultVariants: {
|
|
24
|
-
variant: "
|
|
35
|
+
variant: "default"
|
|
25
36
|
}
|
|
26
|
-
})
|
|
37
|
+
}), j = ({
|
|
38
|
+
title: i,
|
|
39
|
+
desc: p,
|
|
40
|
+
icon: v,
|
|
41
|
+
link: l,
|
|
42
|
+
variant: t,
|
|
43
|
+
size: s,
|
|
44
|
+
buttons: r
|
|
45
|
+
}) => {
|
|
46
|
+
const f = m("LinkWrapper"), h = m("ImageWrapper");
|
|
47
|
+
let n = /* @__PURE__ */ e.createElement("div", { className: o(x({ variant: t, size: s })) }, /* @__PURE__ */ e.createElement("div", { className: "rounded-lg p-4 bg-turquoise-opacity-20" }, /* @__PURE__ */ e.createElement(
|
|
48
|
+
h,
|
|
49
|
+
{
|
|
50
|
+
src: v,
|
|
51
|
+
alt: `Изображение для ${i}`,
|
|
52
|
+
width: 32,
|
|
53
|
+
height: 32,
|
|
54
|
+
className: "object-contain"
|
|
55
|
+
}
|
|
56
|
+
)), /* @__PURE__ */ e.createElement("div", { className: "space-y-2" }, /* @__PURE__ */ e.createElement(g, { level: 5, className: "mt-4 mb-2" }, i), /* @__PURE__ */ e.createElement(u, { variant: "small-body", className: o(E({ variant: t })) }, p)), !(r && r.length) && /* @__PURE__ */ e.createElement(
|
|
57
|
+
c,
|
|
58
|
+
{
|
|
59
|
+
icon: "arrowRight",
|
|
60
|
+
variant: t === "navy" ? "white" : "default"
|
|
61
|
+
},
|
|
62
|
+
"Подробнее"
|
|
63
|
+
), r && /* @__PURE__ */ e.createElement("div", { className: "flex space-x-3" }, r?.map((a, y) => /* @__PURE__ */ e.createElement("div", { key: y }, /* @__PURE__ */ e.createElement(
|
|
64
|
+
c,
|
|
65
|
+
{
|
|
66
|
+
variant: t === "navy" ? "white" : "default",
|
|
67
|
+
icon: a.icon,
|
|
68
|
+
asChild: !0
|
|
69
|
+
},
|
|
70
|
+
/* @__PURE__ */ e.createElement(
|
|
71
|
+
"a",
|
|
72
|
+
{
|
|
73
|
+
href: a.href,
|
|
74
|
+
target: a.target || "_self",
|
|
75
|
+
download: a.download
|
|
76
|
+
},
|
|
77
|
+
a.text
|
|
78
|
+
)
|
|
79
|
+
)))));
|
|
80
|
+
return l && (n = /* @__PURE__ */ e.createElement(
|
|
81
|
+
f,
|
|
82
|
+
{
|
|
83
|
+
href: l,
|
|
84
|
+
className: o(
|
|
85
|
+
"relative transition-all bottom-0 hover:bottom-2 transform duration-300 border border-transparent rounded-lg hover1:border-navy-opacity-16",
|
|
86
|
+
s === 2 ? "sm:col-span-2" : "sm:col-span-1"
|
|
87
|
+
)
|
|
88
|
+
},
|
|
89
|
+
n
|
|
90
|
+
)), n;
|
|
91
|
+
};
|
|
27
92
|
export {
|
|
28
|
-
|
|
93
|
+
j as default
|
|
29
94
|
};
|
|
30
95
|
//# sourceMappingURL=index.es40.js.map
|
package/dist/index.es40.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.es40.js","sources":["../src/components/
|
|
1
|
+
{"version":3,"file":"index.es40.js","sources":["../src/components/cards/Product.tsx"],"sourcesContent":["import {\r\n ButtonTextIconName,\r\n ButtonTextPropsWithoutHTMLAttributes,\r\n} from '../ui/button/ButtonText'\r\nimport { VariantProps, cva } from 'class-variance-authority'\r\n\r\nimport { ButtonText } from '../ui/button'\r\nimport Heading from '../core/typography/Heading'\r\nimport React from 'react'\r\nimport Text from '../core/typography/Text'\r\nimport { cn } from '@/lib/utils/cn'\r\nimport { getAdapter } from '@/Adapters'\r\n\r\nconst productCardVariants = cva(\r\n 'group p-6 rounded-lg min-h-[300px] flex flex-col justify-between gap-12 items-start relative hover:scale1-[1.005] 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 hover:from-sapphire hover:to-navy\",\r\n navy: 'text-whitish primary-gradient',\r\n },\r\n size: {\r\n 1: 'sm:col-span-1',\r\n 2: 'sm:col-span-2',\r\n },\r\n },\r\n defaultVariants: {\r\n variant: 'default',\r\n size: 1,\r\n },\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 ProductCardButtonProps\r\n extends ButtonTextPropsWithoutHTMLAttributes {\r\n href?: string\r\n target?: '_blank' | '_self'\r\n icon?: ButtonTextIconName\r\n download?: boolean\r\n}\r\n\r\nexport interface ProductCardProps\r\n extends React.HTMLAttributes<HTMLAnchorElement>,\r\n VariantProps<typeof productCardVariants> {\r\n title: string\r\n desc: string\r\n icon: string\r\n link?: string\r\n size?: 1 | 2\r\n buttons?: ProductCardButtonProps[]\r\n}\r\n\r\nexport interface ProductCardPropsWithoutHtmlAttributes\r\n extends Omit<ProductCardProps, keyof React.HTMLAttributes<HTMLDivElement>> {\r\n title: string\r\n}\r\n\r\nconst ProductCard: React.FC<ProductCardProps> = ({\r\n title,\r\n desc,\r\n icon,\r\n link,\r\n variant,\r\n size,\r\n buttons,\r\n}) => {\r\n const LinkWrapper = getAdapter('LinkWrapper')\r\n const ImageWrapper = getAdapter('ImageWrapper')\r\n\r\n let component = (\r\n <div className={cn(productCardVariants({ variant, size }))}>\r\n <div className=\"rounded-lg p-4 bg-turquoise-opacity-20\">\r\n <ImageWrapper\r\n src={icon}\r\n alt={`Изображение для ${title}`}\r\n width={32}\r\n height={32}\r\n className=\"object-contain\"\r\n />\r\n </div>\r\n <div className=\"space-y-2\">\r\n <Heading level={5} className=\"mt-4 mb-2\">\r\n {title}\r\n </Heading>\r\n <Text variant=\"small-body\" className={cn(descVariants({ variant }))}>\r\n {desc}\r\n </Text>\r\n </div>\r\n {/* TODO: here is the button, should be a link */}\r\n\r\n {!(buttons && buttons.length) && (\r\n <ButtonText\r\n icon=\"arrowRight\"\r\n variant={variant === 'navy' ? 'white' : 'default'}\r\n >\r\n Подробнее\r\n </ButtonText>\r\n )}\r\n\r\n {buttons && (\r\n <div className=\"flex space-x-3\">\r\n {buttons?.map((button, index) => (\r\n <div key={index}>\r\n <ButtonText\r\n variant={variant === 'navy' ? 'white' : 'default'}\r\n icon={button.icon}\r\n asChild\r\n >\r\n <a\r\n href={button.href}\r\n target={button.target || '_self'}\r\n download={button.download}\r\n >\r\n {button.text}\r\n </a>\r\n </ButtonText>\r\n {/* <ButtonSecondary asChild variant={\"outline\"}>\r\n <a href={button.href} target={button.target}>\r\n {button.text}\r\n </a>\r\n </ButtonSecondary> */}\r\n </div>\r\n ))}\r\n </div>\r\n )}\r\n </div>\r\n )\r\n\r\n if (link) {\r\n component = (\r\n <LinkWrapper\r\n href={link}\r\n className={cn(\r\n 'relative transition-all bottom-0 hover:bottom-2 transform duration-300 border border-transparent rounded-lg hover1:border-navy-opacity-16',\r\n size === 2 ? 'sm:col-span-2' : 'sm:col-span-1'\r\n )}\r\n >\r\n {component}\r\n </LinkWrapper>\r\n )\r\n }\r\n\r\n return component\r\n}\r\n\r\nexport default ProductCard\r\n"],"names":["productCardVariants","cva","descVariants","ProductCard","title","desc","icon","link","variant","size","buttons","LinkWrapper","getAdapter","ImageWrapper","component","React","cn","Heading","Text","ButtonText","button","index"],"mappings":";;;;;;;AAaA,MAAMA,IAAsBC;AAAA,EAC1B;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,SAAS;AAAA,QACP,SACE;AAAA;AAAA,QAEF,MAAM;AAAA,MACR;AAAA,MACA,MAAM;AAAA,QACJ,GAAG;AAAA,QACH,GAAG;AAAA,MACL;AAAA,IACF;AAAA,IACA,iBAAiB;AAAA,MACf,SAAS;AAAA,MACT,MAAM;AAAA,IACR;AAAA,EACF;AACF,GAEMC,IAAeD,EAAI,IAAI;AAAA,EAC3B,UAAU;AAAA,IACR,SAAS;AAAA,MACP,SAAS;AAAA,MACT,MAAM;AAAA,IACR;AAAA,EACF;AAAA,EACA,iBAAiB;AAAA,IACf,SAAS;AAAA,EACX;AACF,CAAC,GA0BKE,IAA0C,CAAC;AAAA,EAC/C,OAAAC;AAAA,EACA,MAAAC;AAAA,EACA,MAAAC;AAAA,EACA,MAAAC;AAAA,EACA,SAAAC;AAAA,EACA,MAAAC;AAAA,EACA,SAAAC;AACF,MAAM;AACE,QAAAC,IAAcC,EAAW,aAAa,GACtCC,IAAeD,EAAW,cAAc;AAE9C,MAAIE,IACFC,gBAAAA,EAAA,cAAC,OAAI,EAAA,WAAWC,EAAGhB,EAAoB,EAAE,SAAAQ,GAAS,MAAAC,EAAA,CAAM,CAAC,EAAA,GACtDM,gBAAAA,EAAA,cAAA,OAAA,EAAI,WAAU,4CACbA,gBAAAA,EAAA;AAAA,IAACF;AAAA,IAAA;AAAA,MACC,KAAKP;AAAA,MACL,KAAK,mBAAmBF,CAAK;AAAA,MAC7B,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,WAAU;AAAA,IAAA;AAAA,EAAA,CAEd,GACCW,gBAAAA,EAAA,cAAA,OAAA,EAAI,WAAU,YACb,GAAAA,gBAAAA,EAAA,cAACE,GAAQ,EAAA,OAAO,GAAG,WAAU,YAC1B,GAAAb,CACH,GACCW,gBAAAA,EAAA,cAAAG,GAAA,EAAK,SAAQ,cAAa,WAAWF,EAAGd,EAAa,EAAE,SAAAM,EAAS,CAAA,CAAC,EAC/D,GAAAH,CACH,CACF,GAGC,EAAEK,KAAWA,EAAQ,WACpBK,gBAAAA,EAAA;AAAA,IAACI;AAAA,IAAA;AAAA,MACC,MAAK;AAAA,MACL,SAASX,MAAY,SAAS,UAAU;AAAA,IAAA;AAAA,IACzC;AAAA,EAAA,GAKFE,KACEK,gBAAAA,EAAA,cAAA,OAAA,EAAI,WAAU,oBACZL,GAAS,IAAI,CAACU,GAAQC,MACpBN,gBAAAA,EAAA,cAAA,OAAA,EAAI,KAAKM,KACRN,gBAAAA,EAAA;AAAA,IAACI;AAAA,IAAA;AAAA,MACC,SAASX,MAAY,SAAS,UAAU;AAAA,MACxC,MAAMY,EAAO;AAAA,MACb,SAAO;AAAA,IAAA;AAAA,IAEPL,gBAAAA,EAAA;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,MAAMK,EAAO;AAAA,QACb,QAAQA,EAAO,UAAU;AAAA,QACzB,UAAUA,EAAO;AAAA,MAAA;AAAA,MAEhBA,EAAO;AAAA,IACV;AAAA,EAAA,CAOJ,CACD,CACH,CAEJ;AAGF,SAAIb,MAEAO,IAAAC,gBAAAA,EAAA;AAAA,IAACJ;AAAA,IAAA;AAAA,MACC,MAAMJ;AAAA,MACN,WAAWS;AAAA,QACT;AAAA,QACAP,MAAS,IAAI,kBAAkB;AAAA,MACjC;AAAA,IAAA;AAAA,IAECK;AAAA,EAAA,IAKAA;AACT;"}
|
package/dist/index.es41.js
CHANGED
|
@@ -1,19 +1,101 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import {
|
|
4
|
-
import
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
1
|
+
import e from "react";
|
|
2
|
+
import { cva as o } from "class-variance-authority";
|
|
3
|
+
import { cn as s } from "./index.es29.js";
|
|
4
|
+
import f from "./index.es26.js";
|
|
5
|
+
import d from "./index.es27.js";
|
|
6
|
+
import E from "./index.es5.js";
|
|
7
|
+
import x from "./index.es8.js";
|
|
8
|
+
import { Tag as g } from "./index.es20.js";
|
|
9
|
+
import N from "./index.es17.js";
|
|
10
|
+
import { getAdapter as b } from "./index.es9.js";
|
|
11
|
+
import w from "./index.es16.js";
|
|
12
|
+
const k = o(
|
|
13
|
+
"group p-6 rounded-lg min-h-[360px] flex flex-col justify-between h-full",
|
|
14
|
+
{
|
|
15
|
+
variants: {
|
|
16
|
+
variant: {
|
|
17
|
+
default: "text-navy bg-whitish hover1:bg-navy-opacity-4 hover1:text-navy",
|
|
18
|
+
navy: "text-whitish bg-gradient-to-b from-navy to-sapphire hover1:from-sapphire hover1:to-navy"
|
|
19
|
+
}
|
|
12
20
|
},
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
}
|
|
21
|
+
defaultVariants: {
|
|
22
|
+
variant: "default"
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
), V = o("w-full h-[1px]", {
|
|
26
|
+
variants: {
|
|
27
|
+
variant: {
|
|
28
|
+
default: "bg-grey-1",
|
|
29
|
+
navy: "bg-whitish-opacity-16"
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
defaultVariants: {
|
|
33
|
+
variant: "default"
|
|
34
|
+
}
|
|
35
|
+
}), B = o("", {
|
|
36
|
+
variants: {
|
|
37
|
+
variant: {
|
|
38
|
+
default: "text-navy-opacity-60",
|
|
39
|
+
navy: "text-whitish-opacity-60"
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
defaultVariants: {
|
|
43
|
+
variant: "default"
|
|
44
|
+
}
|
|
45
|
+
}), R = ({
|
|
46
|
+
variant: a,
|
|
47
|
+
title: l,
|
|
48
|
+
link: r,
|
|
49
|
+
onClick: n
|
|
50
|
+
}) => {
|
|
51
|
+
const m = b("LinkWrapper"), i = /* @__PURE__ */ e.createElement(E, { variant: a, onClick: n }, l || "Подробнее");
|
|
52
|
+
return r ? /* @__PURE__ */ e.createElement(m, { href: r }, i) : i;
|
|
53
|
+
}, D = ({
|
|
54
|
+
variant: a,
|
|
55
|
+
className: l,
|
|
56
|
+
title: r,
|
|
57
|
+
oldPrice: n,
|
|
58
|
+
price: m,
|
|
59
|
+
desc: i,
|
|
60
|
+
link: y,
|
|
61
|
+
onClickBuyButton: u,
|
|
62
|
+
buttons: h,
|
|
63
|
+
tags: v,
|
|
64
|
+
titleInformer: p
|
|
65
|
+
}) => /* @__PURE__ */ e.createElement("div", { className: s(k({ variant: a, className: l })) }, /* @__PURE__ */ e.createElement("div", null, v && /* @__PURE__ */ e.createElement("div", { className: "flex space-x-2 mb-6" }, v.map((t, c) => /* @__PURE__ */ e.createElement(g, { key: c, 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
|
+
x,
|
|
67
|
+
{
|
|
68
|
+
href: y,
|
|
69
|
+
variant: a === "navy" ? "white" : "navy"
|
|
70
|
+
},
|
|
71
|
+
/* @__PURE__ */ e.createElement(f, { level: 4, as: "span" }, r)
|
|
72
|
+
), p && /* @__PURE__ */ e.createElement(w, { content: p })), /* @__PURE__ */ e.createElement("div", { className: "flex space-x-4 items-baseline" }, n && /* @__PURE__ */ e.createElement(
|
|
73
|
+
d,
|
|
74
|
+
{
|
|
75
|
+
variant: "caption",
|
|
76
|
+
className: "text-navy-opacity-40 line-through"
|
|
77
|
+
},
|
|
78
|
+
n
|
|
79
|
+
), /* @__PURE__ */ e.createElement(f, { level: 5, as: "div" }, m))), /* @__PURE__ */ e.createElement("div", { className: "space-y-4" }, /* @__PURE__ */ e.createElement("div", { className: s(V({ variant: a })) }), /* @__PURE__ */ e.createElement(
|
|
80
|
+
d,
|
|
81
|
+
{
|
|
82
|
+
variant: "small-body",
|
|
83
|
+
as: "div",
|
|
84
|
+
className: s(B({ variant: a }), "content")
|
|
85
|
+
},
|
|
86
|
+
/* @__PURE__ */ e.createElement(N, { html: i })
|
|
87
|
+
)))), /* @__PURE__ */ e.createElement("div", { className: "w-full gap-2 flex" }, h?.map((t, c) => /* @__PURE__ */ e.createElement(
|
|
88
|
+
R,
|
|
89
|
+
{
|
|
90
|
+
key: c,
|
|
91
|
+
variant: t.variant,
|
|
92
|
+
title: t.title,
|
|
93
|
+
link: t.link,
|
|
94
|
+
onClick: () => t.isBuyButton && u?.(r)
|
|
95
|
+
}
|
|
96
|
+
))));
|
|
16
97
|
export {
|
|
17
|
-
|
|
98
|
+
R as RateButton,
|
|
99
|
+
D as default
|
|
18
100
|
};
|
|
19
101
|
//# sourceMappingURL=index.es41.js.map
|
package/dist/index.es41.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.es41.js","sources":["../src/components/
|
|
1
|
+
{"version":3,"file":"index.es41.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-1',\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={() => button.isBuyButton && onClickBuyButton?.(title)}\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","onClick","LinkWrapper","getAdapter","button","React","ButtonSecondary","RateCard","className","oldPrice","price","desc","onClickBuyButton","buttons","tags","titleInformer","cn","tag","index","Tag","AppLink","Heading","Informer","Text","SafeHtmlRenderer"],"mappings":"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"}
|
package/dist/index.es42.js
CHANGED
|
@@ -1,7 +1,30 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { cva as t } from "class-variance-authority";
|
|
2
|
+
const i = t("", {
|
|
3
|
+
variants: {
|
|
4
|
+
variant: {
|
|
5
|
+
factoid: "typo_variant_factoid",
|
|
6
|
+
h1: "typo_variant_h1",
|
|
7
|
+
h2: "typo_variant_h2",
|
|
8
|
+
h3: "typo_variant_h3",
|
|
9
|
+
h4: "typo_variant_h4",
|
|
10
|
+
h5: "typo_variant_h5",
|
|
11
|
+
h6: "typo_variant_h6",
|
|
12
|
+
"subtitle-1": "typo_variant_subtitle-1",
|
|
13
|
+
"subtitle-2": "typo_variant_subtitle-2",
|
|
14
|
+
overline: "typo_variant_overline",
|
|
15
|
+
"lead-text": "typo_variant_lead-text",
|
|
16
|
+
body: "typo_variant_body",
|
|
17
|
+
"small-body": "typo_variant_small-body",
|
|
18
|
+
caption: "typo_variant_caption",
|
|
19
|
+
button: "typo_variant_button",
|
|
20
|
+
link: "typo_variant_link"
|
|
21
|
+
}
|
|
22
|
+
},
|
|
23
|
+
defaultVariants: {
|
|
24
|
+
variant: "body"
|
|
25
|
+
}
|
|
26
|
+
});
|
|
4
27
|
export {
|
|
5
|
-
|
|
28
|
+
i as typeVariants
|
|
6
29
|
};
|
|
7
30
|
//# sourceMappingURL=index.es42.js.map
|
package/dist/index.es42.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.es42.js","sources":["../src/
|
|
1
|
+
{"version":3,"file":"index.es42.js","sources":["../src/components/core/typography/typeVariants.ts"],"sourcesContent":["import { cva } from \"class-variance-authority\";\r\n\r\nexport const typeVariants = cva(\"\", {\r\n variants: {\r\n variant: {\r\n factoid: \"typo_variant_factoid\",\r\n h1: \"typo_variant_h1\",\r\n h2: \"typo_variant_h2\",\r\n h3: \"typo_variant_h3\",\r\n h4: \"typo_variant_h4\",\r\n h5: \"typo_variant_h5\",\r\n h6: \"typo_variant_h6\",\r\n \"subtitle-1\": \"typo_variant_subtitle-1\",\r\n \"subtitle-2\": \"typo_variant_subtitle-2\",\r\n overline: \"typo_variant_overline\",\r\n \"lead-text\": \"typo_variant_lead-text\",\r\n body: \"typo_variant_body\",\r\n \"small-body\": \"typo_variant_small-body\",\r\n caption: \"typo_variant_caption\",\r\n button: \"typo_variant_button\",\r\n link: \"typo_variant_link\",\r\n },\r\n },\r\n defaultVariants: {\r\n variant: \"body\",\r\n },\r\n});\r\n"],"names":["typeVariants","cva"],"mappings":";AAEa,MAAAA,IAAeC,EAAI,IAAI;AAAA,EAClC,UAAU;AAAA,IACR,SAAS;AAAA,MACP,SAAS;AAAA,MACT,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,cAAc;AAAA,MACd,cAAc;AAAA,MACd,UAAU;AAAA,MACV,aAAa;AAAA,MACb,MAAM;AAAA,MACN,cAAc;AAAA,MACd,SAAS;AAAA,MACT,QAAQ;AAAA,MACR,MAAM;AAAA,IACR;AAAA,EACF;AAAA,EACA,iBAAiB;AAAA,IACf,SAAS;AAAA,EACX;AACF,CAAC;"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { Carousel as c, CarouselContent as n, CarouselItem as i, CarouselPrevious as p, CarouselNext as f } from "./index.es45.js";
|
|
2
|
+
import e from "react";
|
|
3
|
+
import { cn as C } from "./index.es29.js";
|
|
4
|
+
const d = ({
|
|
5
|
+
items: s,
|
|
6
|
+
renderItem: r,
|
|
7
|
+
columns: l,
|
|
8
|
+
showControlsOnDesktop: o,
|
|
9
|
+
className: m
|
|
10
|
+
}) => {
|
|
11
|
+
const u = (a) => {
|
|
12
|
+
switch (a ?? l) {
|
|
13
|
+
case 2:
|
|
14
|
+
return "md:basis-1/2 lg:basis-1/2";
|
|
15
|
+
case 3:
|
|
16
|
+
return "md:basis-1/2 lg:basis-1/3";
|
|
17
|
+
case 4:
|
|
18
|
+
return "md:basis-1/2 lg:basis-1/4";
|
|
19
|
+
default:
|
|
20
|
+
return "md:basis-1/2 lg:basis-1/3";
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
return /* @__PURE__ */ e.createElement(
|
|
24
|
+
c,
|
|
25
|
+
{
|
|
26
|
+
opts: {
|
|
27
|
+
align: "start"
|
|
28
|
+
},
|
|
29
|
+
className: C("my-carousel w-full", m)
|
|
30
|
+
},
|
|
31
|
+
/* @__PURE__ */ e.createElement(n, { className: "-ml-4" }, s.map((a, t) => /* @__PURE__ */ e.createElement(
|
|
32
|
+
i,
|
|
33
|
+
{
|
|
34
|
+
key: t,
|
|
35
|
+
className: `pl-4 ${u(
|
|
36
|
+
a.size
|
|
37
|
+
// Safely access `size` property
|
|
38
|
+
)}`
|
|
39
|
+
},
|
|
40
|
+
r(a, t)
|
|
41
|
+
))),
|
|
42
|
+
o && /* @__PURE__ */ e.createElement("div", { className: "flex justify-center mt-4" }, /* @__PURE__ */ e.createElement(p, { className: "relative left-auto top-auto right-auto translate-y-0" }), /* @__PURE__ */ e.createElement(f, { className: "relative left-auto top-auto right-auto translate-y-0" }))
|
|
43
|
+
);
|
|
44
|
+
};
|
|
45
|
+
export {
|
|
46
|
+
d as CarouselWrapper
|
|
47
|
+
};
|
|
48
|
+
//# sourceMappingURL=index.es43.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.es43.js","sources":["../src/decorators/CarouselWrapper.tsx"],"sourcesContent":["import {\r\n Carousel,\r\n CarouselContent,\r\n CarouselItem,\r\n CarouselNext,\r\n CarouselPrevious,\r\n} from '@/components/ui/carousel'\r\n\r\nimport React from 'react'\r\nimport { cn } from '@/lib/utils/cn'\r\n\r\nexport const CarouselWrapper = <T,>({\r\n items,\r\n renderItem,\r\n columns,\r\n showControlsOnDesktop,\r\n className,\r\n}: {\r\n items: T[]\r\n renderItem: (item: T, index: number) => React.ReactNode\r\n columns: number\r\n showControlsOnDesktop: boolean\r\n className?: string\r\n}) => {\r\n const carouselColumnsClasses = (size?: number) => {\r\n switch (size ?? columns) {\r\n case 2:\r\n return 'md:basis-1/2 lg:basis-1/2'\r\n case 3:\r\n return 'md:basis-1/2 lg:basis-1/3'\r\n case 4:\r\n return 'md:basis-1/2 lg:basis-1/4'\r\n default:\r\n return 'md:basis-1/2 lg:basis-1/3'\r\n }\r\n }\r\n\r\n return (\r\n <Carousel\r\n opts={{\r\n align: 'start',\r\n }}\r\n className={cn('my-carousel w-full', className)}\r\n >\r\n <CarouselContent className=\"-ml-4\">\r\n {items.map((item, index) => (\r\n <CarouselItem\r\n key={index}\r\n className={`pl-4 ${carouselColumnsClasses(\r\n (item as { size?: number }).size // Safely access `size` property\r\n )}`}\r\n >\r\n {renderItem(item, index)}\r\n </CarouselItem>\r\n ))}\r\n </CarouselContent>\r\n\r\n {showControlsOnDesktop && (\r\n <div className=\"flex justify-center mt-4\">\r\n <CarouselPrevious className=\"relative left-auto top-auto right-auto translate-y-0\" />\r\n <CarouselNext className=\"relative left-auto top-auto right-auto translate-y-0\" />\r\n </div>\r\n )}\r\n </Carousel>\r\n )\r\n}\r\n"],"names":["CarouselWrapper","items","renderItem","columns","showControlsOnDesktop","className","carouselColumnsClasses","size","React","Carousel","cn","CarouselContent","item","index","CarouselItem","CarouselPrevious","CarouselNext"],"mappings":";;;AAWO,MAAMA,IAAkB,CAAK;AAAA,EAClC,OAAAC;AAAA,EACA,YAAAC;AAAA,EACA,SAAAC;AAAA,EACA,uBAAAC;AAAA,EACA,WAAAC;AACF,MAMM;AACE,QAAAC,IAAyB,CAACC,MAAkB;AAChD,YAAQA,KAAQJ,GAAS;AAAA,MACvB,KAAK;AACI,eAAA;AAAA,MACT,KAAK;AACI,eAAA;AAAA,MACT,KAAK;AACI,eAAA;AAAA,MACT;AACS,eAAA;AAAA,IACX;AAAA,EAAA;AAIA,SAAAK,gBAAAA,EAAA;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,MAAM;AAAA,QACJ,OAAO;AAAA,MACT;AAAA,MACA,WAAWC,EAAG,sBAAsBL,CAAS;AAAA,IAAA;AAAA,IAE7CG,gBAAAA,EAAA,cAACG,KAAgB,WAAU,QAAA,GACxBV,EAAM,IAAI,CAACW,GAAMC,MAChBL,gBAAAA,EAAA;AAAA,MAACM;AAAA,MAAA;AAAA,QACC,KAAKD;AAAA,QACL,WAAW,QAAQP;AAAA,UAChBM,EAA2B;AAAA;AAAA,QAAA,CAC7B;AAAA,MAAA;AAAA,MAEAV,EAAWU,GAAMC,CAAK;AAAA,IAAA,CAE1B,CACH;AAAA,IAECT,KACCI,gBAAAA,EAAA,cAAC,OAAI,EAAA,WAAU,8BACZA,gBAAAA,EAAA,cAAAO,GAAA,EAAiB,WAAU,wDAAuD,GACnFP,gBAAAA,EAAA,cAACQ,GAAa,EAAA,WAAU,wDAAuD,CACjF;AAAA,EAAA;AAIR;"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import t from "react";
|
|
2
|
+
import a from "./index.es27.js";
|
|
3
|
+
import { getAdapter as o } from "./index.es9.js";
|
|
4
|
+
import i from "./index.es46.js";
|
|
5
|
+
const l = ({ title: e, href: r }) => {
|
|
6
|
+
const m = o("LinkWrapper");
|
|
7
|
+
return r ? /* @__PURE__ */ t.createElement(a, { variant: "small-body", className: "text-whitish-opacity-32" }, /* @__PURE__ */ t.createElement(
|
|
8
|
+
m,
|
|
9
|
+
{
|
|
10
|
+
href: r,
|
|
11
|
+
className: "breadcrumb hover:text-whitish-opacity-60 duration-200"
|
|
12
|
+
},
|
|
13
|
+
i(e, 55)
|
|
14
|
+
)) : /* @__PURE__ */ t.createElement(a, { variant: "link", className: "text-whitish breadcrumb" }, i(e, 55));
|
|
15
|
+
};
|
|
16
|
+
export {
|
|
17
|
+
l as default
|
|
18
|
+
};
|
|
19
|
+
//# sourceMappingURL=index.es44.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.es44.js","sources":["../src/components/breadcrumbs/Breadcrumb.tsx"],"sourcesContent":["import React from 'react'\r\nimport Text from '../core/typography/Text'\r\nimport { getAdapter } from '@/Adapters'\r\nimport truncateText from '@/lib/utils/truncateText'\r\n\r\nexport interface BreadcrumbProps {\r\n title: string\r\n href?: string\r\n}\r\n\r\nconst Breadcrumb: React.FC<BreadcrumbProps> = ({ title, href }) => {\r\n const LinkWrapper = getAdapter('LinkWrapper')\r\n\r\n if (!href)\r\n return (\r\n <Text variant=\"link\" className=\"text-whitish breadcrumb\">\r\n {truncateText(title, 55)}\r\n </Text>\r\n )\r\n\r\n return (\r\n <Text variant=\"small-body\" className=\"text-whitish-opacity-32\">\r\n <LinkWrapper\r\n href={href}\r\n className=\"breadcrumb hover:text-whitish-opacity-60 duration-200\"\r\n >\r\n {truncateText(title, 55)}\r\n </LinkWrapper>\r\n </Text>\r\n )\r\n}\r\n\r\nexport default Breadcrumb\r\n"],"names":["Breadcrumb","title","href","LinkWrapper","getAdapter","React","Text","truncateText"],"mappings":";;;;AAUA,MAAMA,IAAwC,CAAC,EAAE,OAAAC,GAAO,MAAAC,QAAW;AAC3D,QAAAC,IAAcC,EAAW,aAAa;AAE5C,SAAKF,IAQFG,gBAAAA,EAAA,cAAAC,GAAA,EAAK,SAAQ,cAAa,WAAU,6BACnCD,gBAAAA,EAAA;AAAA,IAACF;AAAA,IAAA;AAAA,MACC,MAAAD;AAAA,MACA,WAAU;AAAA,IAAA;AAAA,IAETK,EAAaN,GAAO,EAAE;AAAA,EAAA,CAE3B,IAbEI,gBAAAA,EAAA,cAACC,KAAK,SAAQ,QAAO,WAAU,0BAC5B,GAAAC,EAAaN,GAAO,EAAE,CACzB;AAaN;"}
|
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
import e from "react";
|
|
2
|
+
import R from "embla-carousel-react";
|
|
3
|
+
import { ArrowLeft as z, ArrowRight as D } from "lucide-react";
|
|
4
|
+
import { cn as f } from "./index.es29.js";
|
|
5
|
+
import { Slot as I } from "@radix-ui/react-slot";
|
|
6
|
+
import { cva as j } from "class-variance-authority";
|
|
7
|
+
const A = j(
|
|
8
|
+
"inline-flex items-center justify-center whitespace-nowrap rounded-full typo_variant_button ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 disabled:cursor-not-allowed border-none",
|
|
9
|
+
{
|
|
10
|
+
variants: {
|
|
11
|
+
variant: {
|
|
12
|
+
default: "bg-white text-navy hover:bg-navy-opacity-4",
|
|
13
|
+
destructive: "bg-destructive text-destructive-foreground hover:bg-destructive/90",
|
|
14
|
+
outline: "border border-input bg-background hover:bg-accent hover:text-accent-foreground",
|
|
15
|
+
ghost: "hover:bg-accent hover:text-accent-foreground",
|
|
16
|
+
link: "text-primary underline-offset-4 hover:underline"
|
|
17
|
+
},
|
|
18
|
+
size: {
|
|
19
|
+
default: "h-10 px-4 py-2",
|
|
20
|
+
sm: "h-9 rounded-md px-3",
|
|
21
|
+
lg: "h-11 rounded-md px-8",
|
|
22
|
+
icon: "h-10 w-10"
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
defaultVariants: {
|
|
26
|
+
// variant: "default",
|
|
27
|
+
// size: "default",
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
), g = e.forwardRef(
|
|
31
|
+
({ className: r, variant: o, size: a, asChild: l = !1, ...n }, c) => {
|
|
32
|
+
const i = l ? I : "button";
|
|
33
|
+
return /* @__PURE__ */ e.createElement(
|
|
34
|
+
i,
|
|
35
|
+
{
|
|
36
|
+
className: f(A({ variant: o, size: a }), r),
|
|
37
|
+
ref: c,
|
|
38
|
+
...n
|
|
39
|
+
}
|
|
40
|
+
);
|
|
41
|
+
}
|
|
42
|
+
);
|
|
43
|
+
g.displayName = "Button";
|
|
44
|
+
const h = e.createContext(null);
|
|
45
|
+
function v() {
|
|
46
|
+
const r = e.useContext(h);
|
|
47
|
+
if (!r)
|
|
48
|
+
throw new Error("useCarousel must be used within a <Carousel />");
|
|
49
|
+
return r;
|
|
50
|
+
}
|
|
51
|
+
const B = e.forwardRef(
|
|
52
|
+
({
|
|
53
|
+
orientation: r = "horizontal",
|
|
54
|
+
opts: o,
|
|
55
|
+
setApi: a,
|
|
56
|
+
plugins: l,
|
|
57
|
+
className: n,
|
|
58
|
+
children: c,
|
|
59
|
+
...i
|
|
60
|
+
}, m) => {
|
|
61
|
+
const [y, t] = R(
|
|
62
|
+
{
|
|
63
|
+
...o,
|
|
64
|
+
axis: r === "horizontal" ? "x" : "y"
|
|
65
|
+
},
|
|
66
|
+
l
|
|
67
|
+
), [C, E] = e.useState(!1), [S, P] = e.useState(!1), [x, _] = e.useState(0), d = e.useCallback(() => {
|
|
68
|
+
if (!t)
|
|
69
|
+
return;
|
|
70
|
+
const s = t.scrollProgress();
|
|
71
|
+
console.log("progress", s), _(s * 100);
|
|
72
|
+
}, [t]), u = e.useCallback(
|
|
73
|
+
(s) => {
|
|
74
|
+
s && (E(s.canScrollPrev()), P(s.canScrollNext()), d());
|
|
75
|
+
},
|
|
76
|
+
[d]
|
|
77
|
+
), b = e.useCallback(() => {
|
|
78
|
+
t?.scrollPrev();
|
|
79
|
+
}, [t]), p = e.useCallback(() => {
|
|
80
|
+
t?.scrollNext();
|
|
81
|
+
}, [t]), k = e.useCallback(
|
|
82
|
+
(s) => {
|
|
83
|
+
s.key === "ArrowLeft" ? (s.preventDefault(), b()) : s.key === "ArrowRight" && (s.preventDefault(), p());
|
|
84
|
+
},
|
|
85
|
+
[b, p]
|
|
86
|
+
);
|
|
87
|
+
return e.useEffect(() => {
|
|
88
|
+
!t || !a || a(t);
|
|
89
|
+
}, [t, a]), e.useEffect(() => {
|
|
90
|
+
if (t)
|
|
91
|
+
return u(t), t.on("reInit", u), t.on("select", u), t.on("scroll", d), () => {
|
|
92
|
+
t?.off("reInit", u), t?.off("select", u), t?.off("scroll", d);
|
|
93
|
+
};
|
|
94
|
+
}, [t, u, d]), /* @__PURE__ */ e.createElement(
|
|
95
|
+
h.Provider,
|
|
96
|
+
{
|
|
97
|
+
value: {
|
|
98
|
+
carouselRef: y,
|
|
99
|
+
api: t,
|
|
100
|
+
opts: o,
|
|
101
|
+
orientation: r || (o?.axis === "y" ? "vertical" : "horizontal"),
|
|
102
|
+
scrollPrev: b,
|
|
103
|
+
scrollNext: p,
|
|
104
|
+
canScrollPrev: C,
|
|
105
|
+
canScrollNext: S
|
|
106
|
+
}
|
|
107
|
+
},
|
|
108
|
+
/* @__PURE__ */ e.createElement(
|
|
109
|
+
"div",
|
|
110
|
+
{
|
|
111
|
+
ref: m,
|
|
112
|
+
onKeyDownCapture: k,
|
|
113
|
+
className: f("relative", n),
|
|
114
|
+
role: "region",
|
|
115
|
+
"aria-roledescription": "carousel",
|
|
116
|
+
...i
|
|
117
|
+
},
|
|
118
|
+
c,
|
|
119
|
+
/* @__PURE__ */ e.createElement("div", { className: "relative w-full mt-4 h-1 bg-gray-300 rounded-full overflow-hidden md:max-w-3xl mx-auto" }, /* @__PURE__ */ e.createElement(
|
|
120
|
+
"div",
|
|
121
|
+
{
|
|
122
|
+
className: "absolute top-0 left-0 h-full w-full bg-navy rounded-full transition-transform duration-0",
|
|
123
|
+
style: {
|
|
124
|
+
transform: `translateX(${x - 100}%)`
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
)),
|
|
128
|
+
/* @__PURE__ */ e.createElement("div", { className: "embla__controls max-w-sm mx-auto mt-6 flex justify-center gap-4" }, /* @__PURE__ */ e.createElement("div", { className: "embla__buttons" }, /* @__PURE__ */ e.createElement(N, { className: "relative left-auto top-auto right-auto translate-y-0" }), /* @__PURE__ */ e.createElement(w, { className: "relative left-auto top-auto right-auto translate-y-0" })), /* @__PURE__ */ e.createElement("div", { className: "embla__progress" }, /* @__PURE__ */ e.createElement(
|
|
129
|
+
"div",
|
|
130
|
+
{
|
|
131
|
+
className: "embla__progress__bar",
|
|
132
|
+
style: { transform: `translate3d(${x}%,0px,0px)` }
|
|
133
|
+
}
|
|
134
|
+
)))
|
|
135
|
+
)
|
|
136
|
+
);
|
|
137
|
+
}
|
|
138
|
+
);
|
|
139
|
+
B.displayName = "Carousel";
|
|
140
|
+
const K = e.forwardRef(({ className: r, ...o }, a) => {
|
|
141
|
+
const { carouselRef: l, orientation: n } = v();
|
|
142
|
+
return /* @__PURE__ */ e.createElement("div", { ref: l, className: "overflow-hidden" }, /* @__PURE__ */ e.createElement(
|
|
143
|
+
"div",
|
|
144
|
+
{
|
|
145
|
+
ref: a,
|
|
146
|
+
className: f(
|
|
147
|
+
"flex",
|
|
148
|
+
n === "horizontal" ? "-ml-4" : "-mt-4 flex-col",
|
|
149
|
+
r
|
|
150
|
+
),
|
|
151
|
+
...o
|
|
152
|
+
}
|
|
153
|
+
));
|
|
154
|
+
});
|
|
155
|
+
K.displayName = "CarouselContent";
|
|
156
|
+
const L = e.forwardRef(({ className: r, ...o }, a) => {
|
|
157
|
+
const { orientation: l } = v();
|
|
158
|
+
return /* @__PURE__ */ e.createElement(
|
|
159
|
+
"div",
|
|
160
|
+
{
|
|
161
|
+
ref: a,
|
|
162
|
+
role: "group",
|
|
163
|
+
"aria-roledescription": "slide",
|
|
164
|
+
className: f(
|
|
165
|
+
"min-w-0 shrink-0 grow-0 basis-full",
|
|
166
|
+
l === "horizontal" ? "pl-4" : "pt-4",
|
|
167
|
+
r
|
|
168
|
+
),
|
|
169
|
+
...o
|
|
170
|
+
}
|
|
171
|
+
);
|
|
172
|
+
});
|
|
173
|
+
L.displayName = "CarouselItem";
|
|
174
|
+
const N = e.forwardRef(({ className: r, variant: o = "outline", size: a = "icon", ...l }, n) => {
|
|
175
|
+
const { orientation: c, scrollPrev: i, canScrollPrev: m } = v();
|
|
176
|
+
return /* @__PURE__ */ e.createElement(
|
|
177
|
+
g,
|
|
178
|
+
{
|
|
179
|
+
ref: n,
|
|
180
|
+
variant: o,
|
|
181
|
+
size: a,
|
|
182
|
+
className: f(
|
|
183
|
+
"absolute h-8 w-8 rounded-full",
|
|
184
|
+
c === "horizontal" ? "-left-12 top-1/2 -translate-y-1/2" : "-top-12 left-1/2 -translate-x-1/2 rotate-90",
|
|
185
|
+
r
|
|
186
|
+
),
|
|
187
|
+
disabled: !m,
|
|
188
|
+
onClick: i,
|
|
189
|
+
...l
|
|
190
|
+
},
|
|
191
|
+
/* @__PURE__ */ e.createElement(z, { className: "h-4 w-4" }),
|
|
192
|
+
/* @__PURE__ */ e.createElement("span", { className: "sr-only" }, "Previous slide")
|
|
193
|
+
);
|
|
194
|
+
});
|
|
195
|
+
N.displayName = "CarouselPrevious";
|
|
196
|
+
const w = e.forwardRef(({ className: r, variant: o = "outline", size: a = "icon", ...l }, n) => {
|
|
197
|
+
const { orientation: c, scrollNext: i, canScrollNext: m } = v();
|
|
198
|
+
return /* @__PURE__ */ e.createElement(
|
|
199
|
+
g,
|
|
200
|
+
{
|
|
201
|
+
ref: n,
|
|
202
|
+
variant: o,
|
|
203
|
+
size: a,
|
|
204
|
+
className: f(
|
|
205
|
+
"absolute h-8 w-8 rounded-full",
|
|
206
|
+
c === "horizontal" ? "-right-12 top-1/2 -translate-y-1/2" : "-bottom-12 left-1/2 -translate-x-1/2 rotate-90",
|
|
207
|
+
r
|
|
208
|
+
),
|
|
209
|
+
disabled: !m,
|
|
210
|
+
onClick: i,
|
|
211
|
+
...l
|
|
212
|
+
},
|
|
213
|
+
/* @__PURE__ */ e.createElement(D, { className: "h-4 w-4" }),
|
|
214
|
+
/* @__PURE__ */ e.createElement("span", { className: "sr-only" }, "Next slide")
|
|
215
|
+
);
|
|
216
|
+
});
|
|
217
|
+
w.displayName = "CarouselNext";
|
|
218
|
+
export {
|
|
219
|
+
B as Carousel,
|
|
220
|
+
K as CarouselContent,
|
|
221
|
+
L as CarouselItem,
|
|
222
|
+
w as CarouselNext,
|
|
223
|
+
N as CarouselPrevious
|
|
224
|
+
};
|
|
225
|
+
//# sourceMappingURL=index.es45.js.map
|