@iit/precision-ui 0.5.5 → 0.7.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 +1 -0
- package/dist/Adapters.d.ts.map +1 -1
- package/dist/components/ArticlePreviewTag.d.ts +11 -0
- package/dist/components/ArticlePreviewTag.d.ts.map +1 -0
- package/dist/components/GridIterator.d.ts +3 -2
- package/dist/components/GridIterator.d.ts.map +1 -1
- package/dist/components/cards/AdvantageWithAccordion.d.ts +12 -0
- package/dist/components/cards/AdvantageWithAccordion.d.ts.map +1 -0
- package/dist/components/cards/Connect.d.ts +19 -0
- package/dist/components/cards/Connect.d.ts.map +1 -0
- package/dist/components/cards/Doc.d.ts +11 -0
- package/dist/components/cards/Doc.d.ts.map +1 -0
- package/dist/components/cards/FAQ.d.ts +14 -0
- package/dist/components/cards/FAQ.d.ts.map +1 -0
- package/dist/components/cards/FeaturedCard.d.ts +1 -1
- package/dist/components/cards/FeaturedCard.d.ts.map +1 -1
- package/dist/components/cards/License.d.ts +10 -0
- package/dist/components/cards/License.d.ts.map +1 -0
- package/dist/components/cards/Package.d.ts +28 -0
- package/dist/components/cards/Package.d.ts.map +1 -0
- package/dist/components/pieces/ShowMoreAccordionTrigger.d.ts +8 -0
- package/dist/components/pieces/ShowMoreAccordionTrigger.d.ts.map +1 -0
- package/dist/components/ui/Link.d.ts +1 -1
- package/dist/components/ui/Link.d.ts.map +1 -1
- package/dist/components/ui/TagLink.d.ts +14 -0
- package/dist/components/ui/TagLink.d.ts.map +1 -0
- package/dist/components/ui/accordion.d.ts +15 -0
- package/dist/components/ui/accordion.d.ts.map +1 -0
- package/dist/components/ui/button/ButtonText.d.ts +1 -0
- package/dist/components/ui/button/ButtonText.d.ts.map +1 -1
- package/dist/components/ui/carousel.d.ts +5 -1
- package/dist/components/ui/carousel.d.ts.map +1 -1
- package/dist/components/ui/input/SearchInput.d.ts +1 -0
- package/dist/components/ui/input/SearchInput.d.ts.map +1 -1
- package/dist/components/ui/tabs.d.ts +8 -0
- package/dist/components/ui/tabs.d.ts.map +1 -0
- package/dist/decorators/CarouselWrapper.d.ts +3 -2
- package/dist/decorators/CarouselWrapper.d.ts.map +1 -1
- package/dist/icons/comet.svg +5 -0
- package/dist/index.d.ts +23 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.es.js +105 -63
- 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.es13.js +1 -1
- package/dist/index.es15.js +1 -1
- package/dist/index.es16.js +2 -2
- package/dist/index.es18.js +1 -1
- package/dist/index.es19.js +1 -1
- package/dist/index.es2.js +1 -1
- package/dist/index.es20.js +1 -1
- package/dist/index.es21.js +14 -23
- package/dist/index.es21.js.map +1 -1
- package/dist/index.es22.js +36 -173
- package/dist/index.es22.js.map +1 -1
- package/dist/index.es23.js +31 -46
- package/dist/index.es23.js.map +1 -1
- package/dist/index.es24.js +48 -52
- package/dist/index.es24.js.map +1 -1
- package/dist/index.es25.js +14 -61
- package/dist/index.es25.js.map +1 -1
- package/dist/index.es26.js +6 -20
- package/dist/index.es26.js.map +1 -1
- package/dist/index.es27.js +52 -18
- package/dist/index.es27.js.map +1 -1
- package/dist/index.es28.js +27 -91
- package/dist/index.es28.js.map +1 -1
- package/dist/index.es29.js +88 -81
- package/dist/index.es29.js.map +1 -1
- package/dist/index.es3.js +2 -2
- package/dist/index.es30.js +54 -31
- package/dist/index.es30.js.map +1 -1
- package/dist/index.es31.js +92 -6
- package/dist/index.es31.js.map +1 -1
- package/dist/index.es32.js +97 -21
- package/dist/index.es32.js.map +1 -1
- package/dist/index.es33.js +12 -19
- package/dist/index.es33.js.map +1 -1
- package/dist/index.es34.js +43 -18
- package/dist/index.es34.js.map +1 -1
- package/dist/index.es35.js +23 -10
- package/dist/index.es35.js.map +1 -1
- package/dist/index.es36.js +26 -83
- package/dist/index.es36.js.map +1 -1
- package/dist/index.es37.js +207 -16
- package/dist/index.es37.js.map +1 -1
- package/dist/index.es38.js +47 -41
- package/dist/index.es38.js.map +1 -1
- package/dist/index.es39.js +53 -40
- package/dist/index.es39.js.map +1 -1
- package/dist/index.es4.js +1 -1
- package/dist/index.es40.js +59 -35
- package/dist/index.es40.js.map +1 -1
- package/dist/index.es41.js +18 -54
- package/dist/index.es41.js.map +1 -1
- package/dist/index.es42.js +17 -90
- package/dist/index.es42.js.map +1 -1
- package/dist/index.es43.js +88 -95
- package/dist/index.es43.js.map +1 -1
- package/dist/index.es44.js +88 -25
- package/dist/index.es44.js.map +1 -1
- package/dist/index.es45.js +33 -45
- package/dist/index.es45.js.map +1 -1
- package/dist/index.es46.js +75 -14
- package/dist/index.es46.js.map +1 -1
- package/dist/index.es47.js +39 -212
- package/dist/index.es47.js.map +1 -1
- package/dist/index.es48.js +10 -3
- package/dist/index.es48.js.map +1 -1
- package/dist/index.es49.js +9 -0
- package/dist/index.es49.js.map +1 -0
- package/dist/index.es5.js +1 -1
- package/dist/index.es50.js +25 -0
- package/dist/index.es50.js.map +1 -0
- package/dist/index.es51.js +23 -0
- package/dist/index.es51.js.map +1 -0
- package/dist/index.es52.js +23 -0
- package/dist/index.es52.js.map +1 -0
- package/dist/index.es53.js +88 -0
- package/dist/index.es53.js.map +1 -0
- package/dist/index.es54.js +42 -0
- package/dist/index.es54.js.map +1 -0
- package/dist/index.es55.js +30 -0
- package/dist/index.es55.js.map +1 -0
- package/dist/index.es56.js +19 -0
- package/dist/index.es56.js.map +1 -0
- package/dist/index.es57.js +50 -0
- package/dist/index.es57.js.map +1 -0
- package/dist/index.es58.js +7 -0
- package/dist/index.es58.js.map +1 -0
- package/dist/index.es59.js +245 -0
- package/dist/index.es59.js.map +1 -0
- package/dist/index.es6.js +36 -31
- package/dist/index.es6.js.map +1 -1
- package/dist/index.es7.js +1 -1
- package/dist/index.es8.js +11 -10
- package/dist/index.es8.js.map +1 -1
- package/dist/index.es9.js.map +1 -1
- package/dist/sections/CardsGridSection.d.ts +2 -2
- package/dist/sections/Hero.d.ts +2 -0
- package/dist/sections/Hero.d.ts.map +1 -1
- package/dist/styles.css +336 -15
- package/package.json +5 -3
|
@@ -0,0 +1,30 @@
|
|
|
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
|
+
});
|
|
27
|
+
export {
|
|
28
|
+
i as typeVariants
|
|
29
|
+
};
|
|
30
|
+
//# sourceMappingURL=index.es55.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.es55.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,19 @@
|
|
|
1
|
+
import t from "react";
|
|
2
|
+
import a from "./index.es42.js";
|
|
3
|
+
import { getAdapter as o } from "./index.es9.js";
|
|
4
|
+
import i from "./index.es58.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.es56.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.es56.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,50 @@
|
|
|
1
|
+
import { Carousel as n, CarouselContent as i, CarouselItem as p } from "./index.es59.js";
|
|
2
|
+
import e from "react";
|
|
3
|
+
import { cn as b } from "./index.es49.js";
|
|
4
|
+
const g = ({
|
|
5
|
+
items: r,
|
|
6
|
+
renderItem: t,
|
|
7
|
+
columns: l,
|
|
8
|
+
hideControlsOnDesktop: m,
|
|
9
|
+
className: o,
|
|
10
|
+
variant: c
|
|
11
|
+
}) => {
|
|
12
|
+
const u = (s) => {
|
|
13
|
+
switch (s ?? l) {
|
|
14
|
+
case 2:
|
|
15
|
+
return "md:basis-1/2 lg:basis-1/2";
|
|
16
|
+
case 3:
|
|
17
|
+
return "md:basis-1/2 lg:basis-1/3";
|
|
18
|
+
case 4:
|
|
19
|
+
return "md:basis-1/2 lg:basis-1/4";
|
|
20
|
+
default:
|
|
21
|
+
return "md:basis-1/2 lg:basis-1/3";
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
return /* @__PURE__ */ e.createElement(
|
|
25
|
+
n,
|
|
26
|
+
{
|
|
27
|
+
opts: {
|
|
28
|
+
align: "start"
|
|
29
|
+
},
|
|
30
|
+
className: b("my-carousel w-full -mt-3", o),
|
|
31
|
+
hideControlsOnDesktop: m,
|
|
32
|
+
variant: c
|
|
33
|
+
},
|
|
34
|
+
/* @__PURE__ */ e.createElement(i, { className: "-ml-4 pt-3" }, r.map((s, a) => /* @__PURE__ */ e.createElement(
|
|
35
|
+
p,
|
|
36
|
+
{
|
|
37
|
+
key: a,
|
|
38
|
+
className: `pl-4 ${u(
|
|
39
|
+
s.size
|
|
40
|
+
// Safely access `size` property
|
|
41
|
+
)}`
|
|
42
|
+
},
|
|
43
|
+
t(s, a)
|
|
44
|
+
)))
|
|
45
|
+
);
|
|
46
|
+
};
|
|
47
|
+
export {
|
|
48
|
+
g as CarouselWrapper
|
|
49
|
+
};
|
|
50
|
+
//# sourceMappingURL=index.es57.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.es57.js","sources":["../src/decorators/CarouselWrapper.tsx"],"sourcesContent":["import {\r\n Carousel,\r\n CarouselContent,\r\n CarouselItem,\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 hideControlsOnDesktop,\r\n className,\r\n variant,\r\n}: {\r\n items: T[]\r\n renderItem: (item: T, index: number) => React.ReactNode\r\n columns: number\r\n hideControlsOnDesktop: boolean\r\n className?: string\r\n variant?: 'default' | 'white'\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 -mt-3', className)}\r\n hideControlsOnDesktop={hideControlsOnDesktop}\r\n variant={variant}\r\n >\r\n <CarouselContent className=\"-ml-4 pt-3\">\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 </Carousel>\r\n )\r\n}\r\n"],"names":["CarouselWrapper","items","renderItem","columns","hideControlsOnDesktop","className","variant","carouselColumnsClasses","size","React","Carousel","cn","CarouselContent","item","index","CarouselItem"],"mappings":";;;AASO,MAAMA,IAAkB,CAAK;AAAA,EAClC,OAAAC;AAAA,EACA,YAAAC;AAAA,EACA,SAAAC;AAAA,EACA,uBAAAC;AAAA,EACA,WAAAC;AAAA,EACA,SAAAC;AACF,MAOM;AACE,QAAAC,IAAyB,CAACC,MAAkB;AAChD,YAAQA,KAAQL,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,SAAAM,gBAAAA,EAAA;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,MAAM;AAAA,QACJ,OAAO;AAAA,MACT;AAAA,MACA,WAAWC,EAAG,4BAA4BN,CAAS;AAAA,MACnD,uBAAAD;AAAA,MACA,SAAAE;AAAA,IAAA;AAAA,IAEAG,gBAAAA,EAAA,cAACG,KAAgB,WAAU,aAAA,GACxBX,EAAM,IAAI,CAACY,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,MAEAX,EAAWW,GAAMC,CAAK;AAAA,IAAA,CAE1B,CACH;AAAA,EAAA;AAGN;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.es58.js","sources":["../src/lib/utils/truncateText.ts"],"sourcesContent":["function truncateText(text: string, maxLength: number): string {\r\n if (!text) return ''\r\n if (text.length <= maxLength) {\r\n return text\r\n }\r\n return text.slice(0, maxLength) + '...'\r\n}\r\n\r\nexport default truncateText\r\n"],"names":["truncateText","text","maxLength"],"mappings":"AAAA,SAASA,EAAaC,GAAcC,GAA2B;AAC7D,SAAKD,IACDA,EAAK,UAAUC,IACVD,IAEFA,EAAK,MAAM,GAAGC,CAAS,IAAI,QAJhB;AAKpB;"}
|
|
@@ -0,0 +1,245 @@
|
|
|
1
|
+
import e from "react";
|
|
2
|
+
import D from "embla-carousel-react";
|
|
3
|
+
import { ChevronLeft as j, ChevronRight as B } from "lucide-react";
|
|
4
|
+
import { cn as i } from "./index.es49.js";
|
|
5
|
+
import { Slot as K } from "@radix-ui/react-slot";
|
|
6
|
+
import { cva as L } from "class-variance-authority";
|
|
7
|
+
const V = L(
|
|
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: l, asChild: a = !1, ...s }, u) => {
|
|
32
|
+
const c = a ? K : "button";
|
|
33
|
+
return /* @__PURE__ */ e.createElement(
|
|
34
|
+
c,
|
|
35
|
+
{
|
|
36
|
+
className: i(V({ variant: o, size: l }), r),
|
|
37
|
+
ref: u,
|
|
38
|
+
...s
|
|
39
|
+
}
|
|
40
|
+
);
|
|
41
|
+
}
|
|
42
|
+
);
|
|
43
|
+
g.displayName = "Button";
|
|
44
|
+
const x = e.createContext(null);
|
|
45
|
+
function h() {
|
|
46
|
+
const r = e.useContext(x);
|
|
47
|
+
if (!r)
|
|
48
|
+
throw new Error("useCarousel must be used within a <Carousel />");
|
|
49
|
+
return r;
|
|
50
|
+
}
|
|
51
|
+
const $ = e.forwardRef(
|
|
52
|
+
({
|
|
53
|
+
orientation: r = "horizontal",
|
|
54
|
+
opts: o,
|
|
55
|
+
setApi: l,
|
|
56
|
+
plugins: a,
|
|
57
|
+
className: s,
|
|
58
|
+
children: u,
|
|
59
|
+
hideControlsOnDesktop: c = !1,
|
|
60
|
+
variant: d = "default",
|
|
61
|
+
...C
|
|
62
|
+
}, N) => {
|
|
63
|
+
const [E, t] = D(
|
|
64
|
+
{
|
|
65
|
+
...o,
|
|
66
|
+
axis: r === "horizontal" ? "x" : "y"
|
|
67
|
+
},
|
|
68
|
+
a
|
|
69
|
+
), [S, P] = e.useState(!1), [k, R] = e.useState(!1), [z, _] = e.useState(0), m = e.useCallback(() => {
|
|
70
|
+
if (!t)
|
|
71
|
+
return;
|
|
72
|
+
const n = t.scrollProgress();
|
|
73
|
+
console.log("progress", n), _(n * 100);
|
|
74
|
+
}, [t]), f = e.useCallback(
|
|
75
|
+
(n) => {
|
|
76
|
+
n && (P(n.canScrollPrev()), R(n.canScrollNext()), m());
|
|
77
|
+
},
|
|
78
|
+
[m]
|
|
79
|
+
), v = e.useCallback(() => {
|
|
80
|
+
t?.scrollPrev();
|
|
81
|
+
}, [t]), b = e.useCallback(() => {
|
|
82
|
+
t?.scrollNext();
|
|
83
|
+
}, [t]), I = e.useCallback(
|
|
84
|
+
(n) => {
|
|
85
|
+
n.key === "ArrowLeft" ? (n.preventDefault(), v()) : n.key === "ArrowRight" && (n.preventDefault(), b());
|
|
86
|
+
},
|
|
87
|
+
[v, b]
|
|
88
|
+
);
|
|
89
|
+
e.useEffect(() => {
|
|
90
|
+
!t || !l || l(t);
|
|
91
|
+
}, [t, l]), e.useEffect(() => {
|
|
92
|
+
if (t)
|
|
93
|
+
return f(t), t.on("reInit", f), t.on("select", f), t.on("scroll", m), () => {
|
|
94
|
+
t?.off("reInit", f), t?.off("select", f), t?.off("scroll", m);
|
|
95
|
+
};
|
|
96
|
+
}, [t, f, m]);
|
|
97
|
+
const p = i(
|
|
98
|
+
"relative left-auto top-auto right-auto translate-y-0 border border-solid rounded-lg bg-transparent hover:rounded-[24px] transition-all duration-200 h-10 w-10",
|
|
99
|
+
d === "white" ? "hover:bg-whitish border-whitish-opacity-32" : "hover:bg-navy hover:text-white border-navy-opacity-32"
|
|
100
|
+
);
|
|
101
|
+
return /* @__PURE__ */ e.createElement(
|
|
102
|
+
x.Provider,
|
|
103
|
+
{
|
|
104
|
+
value: {
|
|
105
|
+
carouselRef: E,
|
|
106
|
+
api: t,
|
|
107
|
+
opts: o,
|
|
108
|
+
orientation: r || (o?.axis === "y" ? "vertical" : "horizontal"),
|
|
109
|
+
scrollPrev: v,
|
|
110
|
+
scrollNext: b,
|
|
111
|
+
canScrollPrev: S,
|
|
112
|
+
canScrollNext: k
|
|
113
|
+
}
|
|
114
|
+
},
|
|
115
|
+
/* @__PURE__ */ e.createElement(
|
|
116
|
+
"div",
|
|
117
|
+
{
|
|
118
|
+
ref: N,
|
|
119
|
+
onKeyDownCapture: I,
|
|
120
|
+
className: i("relative", s),
|
|
121
|
+
role: "region",
|
|
122
|
+
"aria-roledescription": "carousel",
|
|
123
|
+
...C
|
|
124
|
+
},
|
|
125
|
+
u,
|
|
126
|
+
/* @__PURE__ */ e.createElement(
|
|
127
|
+
"div",
|
|
128
|
+
{
|
|
129
|
+
className: i(
|
|
130
|
+
"relative w-full mt-8 rounded-full overflow-hidden md:max-w-2xl mx-auto",
|
|
131
|
+
c ? "lg:hidden" : "",
|
|
132
|
+
d === "white" ? "bg-whitish-opacity-16 h-0.5" : "bg-gray-300 h-0.5"
|
|
133
|
+
)
|
|
134
|
+
},
|
|
135
|
+
/* @__PURE__ */ e.createElement(
|
|
136
|
+
"div",
|
|
137
|
+
{
|
|
138
|
+
className: i(
|
|
139
|
+
"absolute top-0 left-0 h-full w-full rounded-full transition-transform duration-0",
|
|
140
|
+
d === "white" ? "bg-whitish" : "bg-navy"
|
|
141
|
+
),
|
|
142
|
+
style: {
|
|
143
|
+
transform: `translateX(${z - 100}%)`
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
)
|
|
147
|
+
),
|
|
148
|
+
/* @__PURE__ */ e.createElement(
|
|
149
|
+
"div",
|
|
150
|
+
{
|
|
151
|
+
className: `embla__controls max-w-sm mx-auto mt-6 flex justify-center gap-4 ${c ? "lg:hidden" : ""}`
|
|
152
|
+
},
|
|
153
|
+
/* @__PURE__ */ e.createElement("div", { className: "embla__buttons space-x-2" }, /* @__PURE__ */ e.createElement(w, { className: p }), /* @__PURE__ */ e.createElement(y, { className: p }))
|
|
154
|
+
)
|
|
155
|
+
)
|
|
156
|
+
);
|
|
157
|
+
}
|
|
158
|
+
);
|
|
159
|
+
$.displayName = "Carousel";
|
|
160
|
+
const X = e.forwardRef(({ className: r, ...o }, l) => {
|
|
161
|
+
const { carouselRef: a, orientation: s } = h();
|
|
162
|
+
return /* @__PURE__ */ e.createElement("div", { ref: a, className: "overflow-hidden" }, /* @__PURE__ */ e.createElement(
|
|
163
|
+
"div",
|
|
164
|
+
{
|
|
165
|
+
ref: l,
|
|
166
|
+
className: i(
|
|
167
|
+
"flex",
|
|
168
|
+
s === "horizontal" ? "-ml-4" : "-mt-4 flex-col",
|
|
169
|
+
r
|
|
170
|
+
),
|
|
171
|
+
...o
|
|
172
|
+
}
|
|
173
|
+
));
|
|
174
|
+
});
|
|
175
|
+
X.displayName = "CarouselContent";
|
|
176
|
+
const q = e.forwardRef(({ className: r, ...o }, l) => {
|
|
177
|
+
const { orientation: a } = h();
|
|
178
|
+
return /* @__PURE__ */ e.createElement(
|
|
179
|
+
"div",
|
|
180
|
+
{
|
|
181
|
+
ref: l,
|
|
182
|
+
role: "group",
|
|
183
|
+
"aria-roledescription": "slide",
|
|
184
|
+
className: i(
|
|
185
|
+
"min-w-0 shrink-0 grow-0 basis-full",
|
|
186
|
+
a === "horizontal" ? "pl-4" : "pt-4",
|
|
187
|
+
r
|
|
188
|
+
),
|
|
189
|
+
...o
|
|
190
|
+
}
|
|
191
|
+
);
|
|
192
|
+
});
|
|
193
|
+
q.displayName = "CarouselItem";
|
|
194
|
+
const w = e.forwardRef(({ className: r, variant: o = "outline", size: l = "icon", ...a }, s) => {
|
|
195
|
+
const { orientation: u, scrollPrev: c, canScrollPrev: d } = h();
|
|
196
|
+
return /* @__PURE__ */ e.createElement(
|
|
197
|
+
g,
|
|
198
|
+
{
|
|
199
|
+
ref: s,
|
|
200
|
+
variant: o,
|
|
201
|
+
size: l,
|
|
202
|
+
className: i(
|
|
203
|
+
"absolute h-8 w-8 rounded-full",
|
|
204
|
+
u === "horizontal" ? "-left-12 top-1/2 -translate-y-1/2" : "-top-12 left-1/2 -translate-x-1/2 rotate-90",
|
|
205
|
+
r
|
|
206
|
+
),
|
|
207
|
+
disabled: !d,
|
|
208
|
+
onClick: c,
|
|
209
|
+
...a
|
|
210
|
+
},
|
|
211
|
+
/* @__PURE__ */ e.createElement(j, { className: "h-5 w-5" }),
|
|
212
|
+
/* @__PURE__ */ e.createElement("span", { className: "sr-only" }, "Previous slide")
|
|
213
|
+
);
|
|
214
|
+
});
|
|
215
|
+
w.displayName = "CarouselPrevious";
|
|
216
|
+
const y = e.forwardRef(({ className: r, variant: o = "outline", size: l = "icon", ...a }, s) => {
|
|
217
|
+
const { orientation: u, scrollNext: c, canScrollNext: d } = h();
|
|
218
|
+
return /* @__PURE__ */ e.createElement(
|
|
219
|
+
g,
|
|
220
|
+
{
|
|
221
|
+
ref: s,
|
|
222
|
+
variant: o,
|
|
223
|
+
size: l,
|
|
224
|
+
className: i(
|
|
225
|
+
"absolute h-8 w-8 rounded-full",
|
|
226
|
+
u === "horizontal" ? "-right-12 top-1/2 -translate-y-1/2" : "-bottom-12 left-1/2 -translate-x-1/2 rotate-90",
|
|
227
|
+
r
|
|
228
|
+
),
|
|
229
|
+
disabled: !d,
|
|
230
|
+
onClick: c,
|
|
231
|
+
...a
|
|
232
|
+
},
|
|
233
|
+
/* @__PURE__ */ e.createElement(B, { className: "h-5 w-5" }),
|
|
234
|
+
/* @__PURE__ */ e.createElement("span", { className: "sr-only" }, "Next slide")
|
|
235
|
+
);
|
|
236
|
+
});
|
|
237
|
+
y.displayName = "CarouselNext";
|
|
238
|
+
export {
|
|
239
|
+
$ as Carousel,
|
|
240
|
+
X as CarouselContent,
|
|
241
|
+
q as CarouselItem,
|
|
242
|
+
y as CarouselNext,
|
|
243
|
+
w as CarouselPrevious
|
|
244
|
+
};
|
|
245
|
+
//# sourceMappingURL=index.es59.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.es59.js","sources":["../src/components/ui/carousel.tsx"],"sourcesContent":["import React from 'react'\r\nimport useEmblaCarousel, {\r\n type UseEmblaCarouselType,\r\n} from 'embla-carousel-react'\r\nimport { ChevronLeft, ChevronRight } from 'lucide-react'\r\n\r\nimport { cn } from '@/lib/utils/cn'\r\n// import { Button } from './button'\r\n\r\n// Button here to reuse\r\nimport { Slot } from '@radix-ui/react-slot'\r\nimport { cva, type VariantProps } from 'class-variance-authority'\r\n\r\nconst buttonVariants = cva(\r\n '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',\r\n {\r\n variants: {\r\n variant: {\r\n default: 'bg-white text-navy hover:bg-navy-opacity-4',\r\n destructive:\r\n 'bg-destructive text-destructive-foreground hover:bg-destructive/90',\r\n outline:\r\n 'border border-input bg-background hover:bg-accent hover:text-accent-foreground',\r\n ghost: 'hover:bg-accent hover:text-accent-foreground',\r\n link: 'text-primary underline-offset-4 hover:underline',\r\n },\r\n size: {\r\n default: 'h-10 px-4 py-2',\r\n sm: 'h-9 rounded-md px-3',\r\n lg: 'h-11 rounded-md px-8',\r\n icon: 'h-10 w-10',\r\n },\r\n },\r\n defaultVariants: {\r\n // variant: \"default\",\r\n // size: \"default\",\r\n },\r\n }\r\n)\r\n\r\nexport interface ButtonProps\r\n extends React.ButtonHTMLAttributes<HTMLButtonElement>,\r\n VariantProps<typeof buttonVariants> {\r\n asChild?: boolean\r\n}\r\n\r\nconst Button = React.forwardRef<HTMLButtonElement, ButtonProps>(\r\n ({ className, variant, size, asChild = false, ...props }, ref) => {\r\n const Comp = asChild ? Slot : 'button'\r\n return (\r\n <Comp\r\n className={cn(buttonVariants({ variant, size }), className)}\r\n ref={ref}\r\n {...props}\r\n />\r\n )\r\n }\r\n)\r\nButton.displayName = 'Button'\r\n\r\n// end of Button\r\n\r\ntype CarouselApi = UseEmblaCarouselType[1]\r\ntype UseCarouselParameters = Parameters<typeof useEmblaCarousel>\r\ntype CarouselOptions = UseCarouselParameters[0]\r\ntype CarouselPlugin = UseCarouselParameters[1]\r\n\r\ntype CarouselProps = {\r\n opts?: CarouselOptions\r\n plugins?: CarouselPlugin\r\n orientation?: 'horizontal' | 'vertical'\r\n setApi?: (api: CarouselApi) => void\r\n}\r\n\r\ntype CarouselContextProps = {\r\n carouselRef: ReturnType<typeof useEmblaCarousel>[0]\r\n api: ReturnType<typeof useEmblaCarousel>[1]\r\n scrollPrev: () => void\r\n scrollNext: () => void\r\n canScrollPrev: boolean\r\n canScrollNext: boolean\r\n} & CarouselProps\r\n\r\nconst CarouselContext = React.createContext<CarouselContextProps | null>(null)\r\n\r\nfunction useCarousel() {\r\n const context = React.useContext(CarouselContext)\r\n\r\n if (!context) {\r\n throw new Error('useCarousel must be used within a <Carousel />')\r\n }\r\n\r\n return context\r\n}\r\n\r\ninterface CustomProps {\r\n hideControlsOnDesktop?: boolean\r\n variant?: \"default\" | \"white\";\r\n}\r\n\r\nconst Carousel = React.forwardRef<\r\n HTMLDivElement,\r\n React.HTMLAttributes<HTMLDivElement> & CarouselProps & CustomProps\r\n>(\r\n (\r\n {\r\n orientation = 'horizontal',\r\n opts,\r\n setApi,\r\n plugins,\r\n className,\r\n children,\r\n hideControlsOnDesktop = false,\r\n variant = \"default\",\r\n ...props\r\n },\r\n ref\r\n ) => {\r\n const [carouselRef, api] = useEmblaCarousel(\r\n {\r\n ...opts,\r\n axis: orientation === 'horizontal' ? 'x' : 'y',\r\n },\r\n plugins\r\n )\r\n const [canScrollPrev, setCanScrollPrev] = React.useState(false)\r\n const [canScrollNext, setCanScrollNext] = React.useState(false)\r\n const [scrollProgress, setScrollProgress] = React.useState(0)\r\n\r\n const onScroll = React.useCallback(() => {\r\n if (!api) return\r\n const progress = api.scrollProgress()\r\n console.log('progress', progress)\r\n setScrollProgress(progress * 100) // Convert to percentage\r\n }, [api])\r\n\r\n const onSelect = React.useCallback(\r\n (api: CarouselApi) => {\r\n if (!api) return\r\n setCanScrollPrev(api.canScrollPrev())\r\n setCanScrollNext(api.canScrollNext())\r\n onScroll() // Update scroll progress when selection changes\r\n },\r\n [onScroll]\r\n )\r\n\r\n const scrollPrev = React.useCallback(() => {\r\n api?.scrollPrev()\r\n }, [api])\r\n\r\n const scrollNext = React.useCallback(() => {\r\n api?.scrollNext()\r\n }, [api])\r\n\r\n const handleKeyDown = React.useCallback(\r\n (event: React.KeyboardEvent<HTMLDivElement>) => {\r\n if (event.key === 'ArrowLeft') {\r\n event.preventDefault()\r\n scrollPrev()\r\n } else if (event.key === 'ArrowRight') {\r\n event.preventDefault()\r\n scrollNext()\r\n }\r\n },\r\n [scrollPrev, scrollNext]\r\n )\r\n\r\n React.useEffect(() => {\r\n if (!api || !setApi) return\r\n setApi(api)\r\n }, [api, setApi])\r\n\r\n React.useEffect(() => {\r\n if (!api) return\r\n onSelect(api)\r\n api.on('reInit', onSelect)\r\n api.on('select', onSelect)\r\n api.on('scroll', onScroll) // Update on scroll events\r\n\r\n return () => {\r\n api?.off('reInit', onSelect)\r\n api?.off('select', onSelect)\r\n api?.off('scroll', onScroll)\r\n }\r\n }, [api, onSelect, onScroll])\r\n\r\n // const { selectedIndex, scrollSnaps, onDotButtonClick } = useDotButton(api)\r\n\r\n const buttonClasses = cn(\r\n \"relative left-auto top-auto right-auto translate-y-0 border border-solid rounded-lg bg-transparent hover:rounded-[24px] transition-all duration-200 h-10 w-10\",\r\n variant === \"white\"\r\n ? \"hover:bg-whitish border-whitish-opacity-32\"\r\n : \"hover:bg-navy hover:text-white border-navy-opacity-32\"\r\n );\r\n\r\n return (\r\n <CarouselContext.Provider\r\n value={{\r\n carouselRef,\r\n api: api,\r\n opts,\r\n orientation:\r\n orientation || (opts?.axis === 'y' ? 'vertical' : 'horizontal'),\r\n scrollPrev,\r\n scrollNext,\r\n canScrollPrev,\r\n canScrollNext,\r\n }}\r\n >\r\n <div\r\n ref={ref}\r\n onKeyDownCapture={handleKeyDown}\r\n className={cn('relative', className)}\r\n role=\"region\"\r\n aria-roledescription=\"carousel\"\r\n {...props}\r\n >\r\n {children}\r\n\r\n {/* Scroll Progress Indicator */}\r\n <div\r\n className={cn(\r\n \"relative w-full mt-8 rounded-full overflow-hidden md:max-w-2xl mx-auto\",\r\n hideControlsOnDesktop ? \"lg:hidden\" : \"\",\r\n variant === \"white\"\r\n ? \"bg-whitish-opacity-16 h-0.5\"\r\n : \"bg-gray-300 h-0.5\"\r\n )}\r\n >\r\n <div\r\n className={cn(\r\n \"absolute top-0 left-0 h-full w-full rounded-full transition-transform duration-0\",\r\n variant === \"white\" ? \"bg-whitish\" : \"bg-navy\"\r\n )}\r\n style={{\r\n transform: `translateX(${scrollProgress - 100}%)`,\r\n }}\r\n ></div>\r\n </div>\r\n\r\n <div\r\n className={`embla__controls max-w-sm mx-auto mt-6 flex justify-center gap-4 ${\r\n hideControlsOnDesktop ? 'lg:hidden' : ''\r\n }`}\r\n >\r\n <div className=\"embla__buttons space-x-2\">\r\n <CarouselPrevious className={buttonClasses} />\r\n <CarouselNext className={buttonClasses} />\r\n </div>\r\n\r\n {/* <div className=\"embla__progress\">\r\n <div\r\n className=\"embla__progress__bar\"\r\n style={{ transform: `translate3d(${scrollProgress}%,0px,0px)` }}\r\n />\r\n </div> */}\r\n </div>\r\n\r\n {/* Dots: not used */}\r\n {/* <div className=\"embla__controls\">\r\n <div className=\"embla__buttons\">\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 <div className=\"embla__dots\">\r\n {scrollSnaps.map((_, index) => (\r\n <DotButton\r\n key={index}\r\n onClick={() => onDotButtonClick(index)}\r\n className={\"embla__dot\".concat(\r\n index === selectedIndex ? \" embla__dot--selected\" : \"\"\r\n )}\r\n />\r\n ))}\r\n </div>\r\n </div> */}\r\n </div>\r\n </CarouselContext.Provider>\r\n )\r\n }\r\n)\r\nCarousel.displayName = 'Carousel'\r\n\r\nconst CarouselContent = React.forwardRef<\r\n HTMLDivElement,\r\n React.HTMLAttributes<HTMLDivElement>\r\n>(({ className, ...props }, ref) => {\r\n const { carouselRef, orientation } = useCarousel()\r\n\r\n return (\r\n <div ref={carouselRef} className=\"overflow-hidden\">\r\n <div\r\n ref={ref}\r\n className={cn(\r\n 'flex',\r\n orientation === 'horizontal' ? '-ml-4' : '-mt-4 flex-col',\r\n className\r\n )}\r\n {...props}\r\n />\r\n </div>\r\n )\r\n})\r\nCarouselContent.displayName = 'CarouselContent'\r\n\r\nconst CarouselItem = React.forwardRef<\r\n HTMLDivElement,\r\n React.HTMLAttributes<HTMLDivElement>\r\n>(({ className, ...props }, ref) => {\r\n const { orientation } = useCarousel()\r\n\r\n return (\r\n <div\r\n ref={ref}\r\n role=\"group\"\r\n aria-roledescription=\"slide\"\r\n className={cn(\r\n 'min-w-0 shrink-0 grow-0 basis-full',\r\n orientation === 'horizontal' ? 'pl-4' : 'pt-4',\r\n className\r\n )}\r\n {...props}\r\n />\r\n )\r\n})\r\nCarouselItem.displayName = 'CarouselItem'\r\n\r\nconst CarouselPrevious = React.forwardRef<\r\n HTMLButtonElement,\r\n React.ComponentProps<typeof Button>\r\n>(({ className, variant = 'outline', size = 'icon', ...props }, ref) => {\r\n const { orientation, scrollPrev, canScrollPrev } = useCarousel()\r\n\r\n return (\r\n <Button\r\n ref={ref}\r\n variant={variant}\r\n size={size}\r\n className={cn(\r\n 'absolute h-8 w-8 rounded-full',\r\n orientation === 'horizontal'\r\n ? '-left-12 top-1/2 -translate-y-1/2'\r\n : '-top-12 left-1/2 -translate-x-1/2 rotate-90',\r\n className\r\n )}\r\n disabled={!canScrollPrev}\r\n onClick={scrollPrev}\r\n {...props}\r\n >\r\n <ChevronLeft className=\"h-5 w-5\" />\r\n <span className=\"sr-only\">Previous slide</span>\r\n </Button>\r\n )\r\n})\r\nCarouselPrevious.displayName = 'CarouselPrevious'\r\n\r\nconst CarouselNext = React.forwardRef<\r\n HTMLButtonElement,\r\n React.ComponentProps<typeof Button>\r\n>(({ className, variant = 'outline', size = 'icon', ...props }, ref) => {\r\n const { orientation, scrollNext, canScrollNext } = useCarousel()\r\n\r\n return (\r\n <Button\r\n ref={ref}\r\n variant={variant}\r\n size={size}\r\n className={cn(\r\n 'absolute h-8 w-8 rounded-full',\r\n orientation === 'horizontal'\r\n ? '-right-12 top-1/2 -translate-y-1/2'\r\n : '-bottom-12 left-1/2 -translate-x-1/2 rotate-90',\r\n className\r\n )}\r\n disabled={!canScrollNext}\r\n onClick={scrollNext}\r\n {...props}\r\n >\r\n <ChevronRight className=\"h-5 w-5\" />\r\n <span className=\"sr-only\">Next slide</span>\r\n </Button>\r\n )\r\n})\r\nCarouselNext.displayName = 'CarouselNext'\r\n\r\nexport {\r\n type CarouselApi,\r\n Carousel,\r\n CarouselContent,\r\n CarouselItem,\r\n CarouselPrevious,\r\n CarouselNext,\r\n}\r\n"],"names":["buttonVariants","cva","Button","React","className","variant","size","asChild","props","ref","Comp","Slot","cn","CarouselContext","useCarousel","context","Carousel","orientation","opts","setApi","plugins","children","hideControlsOnDesktop","carouselRef","api","useEmblaCarousel","canScrollPrev","setCanScrollPrev","canScrollNext","setCanScrollNext","scrollProgress","setScrollProgress","onScroll","progress","onSelect","scrollPrev","scrollNext","handleKeyDown","event","buttonClasses","CarouselPrevious","CarouselNext","CarouselContent","CarouselItem","ChevronLeft","ChevronRight"],"mappings":"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"}
|
package/dist/index.es6.js
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { Button as
|
|
3
|
-
import { LessLink16X16 as
|
|
4
|
-
import { cva as
|
|
5
|
-
import { cn as n } from "./index.
|
|
6
|
-
import { ArrowDownToLine as
|
|
7
|
-
|
|
1
|
+
import e from "react";
|
|
2
|
+
import { Button as m } from "./index.es2.js";
|
|
3
|
+
import { LessLink16X16 as d, MoreLink16X16 as f, ArrowLinkRight16X16 as h } from "@iit/precision-ui-icons";
|
|
4
|
+
import { cva as i } from "class-variance-authority";
|
|
5
|
+
import { cn as n } from "./index.es49.js";
|
|
6
|
+
import { ArrowDownToLine as p } from "lucide-react";
|
|
7
|
+
import { getAdapter as g } from "./index.es9.js";
|
|
8
|
+
const w = i("bg-link-gradient-container hover:cursor-pointer", {
|
|
8
9
|
variants: {
|
|
9
10
|
variant: {
|
|
10
11
|
default: "text-navy",
|
|
@@ -14,7 +15,7 @@ const f = r("bg-link-gradient-container hover:cursor-pointer", {
|
|
|
14
15
|
defaultVariants: {
|
|
15
16
|
variant: "default"
|
|
16
17
|
}
|
|
17
|
-
}),
|
|
18
|
+
}), v = i("rounded-full p-[8px]", {
|
|
18
19
|
variants: {
|
|
19
20
|
variant: {
|
|
20
21
|
default: "bg-navy-opacity-4",
|
|
@@ -25,7 +26,7 @@ const f = r("bg-link-gradient-container hover:cursor-pointer", {
|
|
|
25
26
|
defaultVariants: {
|
|
26
27
|
variant: "default"
|
|
27
28
|
}
|
|
28
|
-
}),
|
|
29
|
+
}), E = i("", {
|
|
29
30
|
variants: {
|
|
30
31
|
variant: {
|
|
31
32
|
default: "bg-link-gradient",
|
|
@@ -35,36 +36,40 @@ const f = r("bg-link-gradient-container hover:cursor-pointer", {
|
|
|
35
36
|
defaultVariants: {
|
|
36
37
|
variant: "default"
|
|
37
38
|
}
|
|
38
|
-
}),
|
|
39
|
-
switch (
|
|
39
|
+
}), k = (a, t) => {
|
|
40
|
+
switch (a) {
|
|
40
41
|
case "arrowRight":
|
|
41
|
-
return /* @__PURE__ */
|
|
42
|
+
return /* @__PURE__ */ e.createElement(h, { width: t, height: t });
|
|
42
43
|
case "plus":
|
|
43
|
-
return /* @__PURE__ */
|
|
44
|
+
return /* @__PURE__ */ e.createElement(f, { width: t, height: t });
|
|
44
45
|
case "minus":
|
|
45
|
-
return /* @__PURE__ */
|
|
46
|
+
return /* @__PURE__ */ e.createElement(d, { width: t, height: t });
|
|
46
47
|
case "download":
|
|
47
|
-
return /* @__PURE__ */
|
|
48
|
+
return /* @__PURE__ */ e.createElement(p, { size: 16, width: t, height: t });
|
|
48
49
|
default:
|
|
49
50
|
return null;
|
|
50
51
|
}
|
|
51
|
-
},
|
|
52
|
-
className:
|
|
53
|
-
children:
|
|
54
|
-
variant:
|
|
55
|
-
icon:
|
|
52
|
+
}, x = ({
|
|
53
|
+
className: a,
|
|
54
|
+
children: t,
|
|
55
|
+
variant: r,
|
|
56
|
+
icon: o,
|
|
56
57
|
// asChild = false,
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
58
|
+
href: c,
|
|
59
|
+
...s
|
|
60
|
+
}) => {
|
|
61
|
+
const u = g("LinkWrapper"), l = /* @__PURE__ */ e.createElement(
|
|
62
|
+
m,
|
|
63
|
+
{
|
|
64
|
+
className: n(w({ variant: r, className: a })),
|
|
65
|
+
asChild: !0,
|
|
66
|
+
...s
|
|
67
|
+
},
|
|
68
|
+
/* @__PURE__ */ e.createElement("div", { className: "gap-2 flex items-center" }, o && /* @__PURE__ */ e.createElement("div", { className: n(v({ variant: r })) }, k(o, 16)), /* @__PURE__ */ e.createElement("div", { className: n(E({ variant: r })) }, t))
|
|
69
|
+
);
|
|
70
|
+
return c ? /* @__PURE__ */ e.createElement(u, { href: c, passHref: !0 }, l) : l;
|
|
71
|
+
}, C = x;
|
|
67
72
|
export {
|
|
68
|
-
|
|
73
|
+
C as default
|
|
69
74
|
};
|
|
70
75
|
//# sourceMappingURL=index.es6.js.map
|
package/dist/index.es6.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.es6.js","sources":["../src/components/ui/button/ButtonText.tsx"],"sourcesContent":["import React from 'react'\r\nimport { Button } from './button'\r\nimport {\r\n ArrowLinkRight16X16,\r\n MoreLink16X16,\r\n LessLink16X16,\r\n} from '@iit/precision-ui-icons'\r\n\r\nimport { cva, type VariantProps } from 'class-variance-authority'\r\nimport { cn } from '@/lib/utils/cn'\r\nimport { ArrowDownToLine } from 'lucide-react'\r\n\r\nconst buttonVariants = cva('bg-link-gradient-container hover:cursor-pointer', {\r\n variants: {\r\n variant: {\r\n default: 'text-navy',\r\n white: 'text-white',\r\n },\r\n },\r\n defaultVariants: {\r\n variant: 'default',\r\n },\r\n})\r\n\r\nconst iconContainerVariants = cva('rounded-full p-[
|
|
1
|
+
{"version":3,"file":"index.es6.js","sources":["../src/components/ui/button/ButtonText.tsx"],"sourcesContent":["import React from 'react'\r\nimport { Button } from './button'\r\nimport {\r\n ArrowLinkRight16X16,\r\n MoreLink16X16,\r\n LessLink16X16,\r\n} from '@iit/precision-ui-icons'\r\n\r\nimport { cva, type VariantProps } from 'class-variance-authority'\r\nimport { cn } from '@/lib/utils/cn'\r\nimport { ArrowDownToLine } from 'lucide-react'\r\nimport { getAdapter } from '@/Adapters'\r\n\r\nconst buttonVariants = cva('bg-link-gradient-container hover:cursor-pointer', {\r\n variants: {\r\n variant: {\r\n default: 'text-navy',\r\n white: 'text-white',\r\n },\r\n },\r\n defaultVariants: {\r\n variant: 'default',\r\n },\r\n})\r\n\r\nconst iconContainerVariants = cva('rounded-full p-[8px]', {\r\n variants: {\r\n variant: {\r\n default: 'bg-navy-opacity-4',\r\n // default: \"bg-red-500\",\r\n white: 'bg-whitish-opacity-8',\r\n },\r\n },\r\n defaultVariants: {\r\n variant: 'default',\r\n },\r\n})\r\n\r\nconst textContainerVariants = cva('', {\r\n variants: {\r\n variant: {\r\n default: 'bg-link-gradient',\r\n white: 'bg-link-white-gradient',\r\n },\r\n },\r\n defaultVariants: {\r\n variant: 'default',\r\n },\r\n})\r\n\r\nexport type ButtonTextIconName = 'arrowRight' | 'plus' | 'minus' | 'download'\r\n\r\nconst iconDefiner = (icon?: ButtonTextIconName, size?: number) => {\r\n switch (icon) {\r\n case 'arrowRight':\r\n return <ArrowLinkRight16X16 width={size} height={size} />\r\n\r\n case 'plus':\r\n return <MoreLink16X16 width={size} height={size} />\r\n\r\n case 'minus':\r\n return <LessLink16X16 width={size} height={size} />\r\n\r\n case 'download':\r\n return <ArrowDownToLine size={16} width={size} height={size} />\r\n\r\n default:\r\n return null\r\n }\r\n}\r\n\r\ninterface NewProps {\r\n className?: string\r\n children?: React.ReactNode\r\n icon?: ButtonTextIconName\r\n asChild?: boolean\r\n href?: string\r\n}\r\n\r\nexport interface ButtonTextProps\r\n extends React.ButtonHTMLAttributes<HTMLButtonElement>,\r\n VariantProps<typeof buttonVariants>,\r\n NewProps {}\r\n\r\nexport interface ButtonTextPropsWithoutHTMLAttributes\r\n extends Omit<NewProps, 'children' | 'className'> {\r\n text: string\r\n}\r\n\r\nconst ButtonText: React.FC<ButtonTextProps> = ({\r\n className,\r\n children,\r\n variant,\r\n icon,\r\n // asChild = false,\r\n href,\r\n ...props\r\n}) => {\r\n const LinkWrapper = getAdapter('LinkWrapper')\r\n\r\n const component = (\r\n <Button\r\n className={cn(buttonVariants({ variant, className }))}\r\n asChild\r\n {...props}\r\n >\r\n <div className=\"gap-2 flex items-center\">\r\n {icon && (\r\n <div className={cn(iconContainerVariants({ variant }))}>\r\n {iconDefiner(icon, 16)}\r\n </div>\r\n )}\r\n <div className={cn(textContainerVariants({ variant }))}>{children}</div>\r\n </div>\r\n </Button>\r\n )\r\n\r\n if (href) {\r\n return (\r\n <LinkWrapper href={href} passHref>\r\n {component}\r\n </LinkWrapper>\r\n )\r\n }\r\n\r\n return component\r\n}\r\n\r\nexport default ButtonText\r\n"],"names":["buttonVariants","cva","iconContainerVariants","textContainerVariants","iconDefiner","icon","size","React","ArrowLinkRight16X16","MoreLink16X16","LessLink16X16","ArrowDownToLine","ButtonText","className","children","variant","href","props","LinkWrapper","getAdapter","component","Button","cn","ButtonText$1"],"mappings":";;;;;;;AAaA,MAAMA,IAAiBC,EAAI,mDAAmD;AAAA,EAC5E,UAAU;AAAA,IACR,SAAS;AAAA,MACP,SAAS;AAAA,MACT,OAAO;AAAA,IACT;AAAA,EACF;AAAA,EACA,iBAAiB;AAAA,IACf,SAAS;AAAA,EACX;AACF,CAAC,GAEKC,IAAwBD,EAAI,wBAAwB;AAAA,EACxD,UAAU;AAAA,IACR,SAAS;AAAA,MACP,SAAS;AAAA;AAAA,MAET,OAAO;AAAA,IACT;AAAA,EACF;AAAA,EACA,iBAAiB;AAAA,IACf,SAAS;AAAA,EACX;AACF,CAAC,GAEKE,IAAwBF,EAAI,IAAI;AAAA,EACpC,UAAU;AAAA,IACR,SAAS;AAAA,MACP,SAAS;AAAA,MACT,OAAO;AAAA,IACT;AAAA,EACF;AAAA,EACA,iBAAiB;AAAA,IACf,SAAS;AAAA,EACX;AACF,CAAC,GAIKG,IAAc,CAACC,GAA2BC,MAAkB;AAChE,UAAQD,GAAM;AAAA,IACZ,KAAK;AACH,aAAQE,gBAAAA,EAAA,cAAAC,GAAA,EAAoB,OAAOF,GAAM,QAAQA,EAAM,CAAA;AAAA,IAEzD,KAAK;AACH,aAAQC,gBAAAA,EAAA,cAAAE,GAAA,EAAc,OAAOH,GAAM,QAAQA,EAAM,CAAA;AAAA,IAEnD,KAAK;AACH,aAAQC,gBAAAA,EAAA,cAAAG,GAAA,EAAc,OAAOJ,GAAM,QAAQA,EAAM,CAAA;AAAA,IAEnD,KAAK;AACH,6CAAQK,GAAgB,EAAA,MAAM,IAAI,OAAOL,GAAM,QAAQA,EAAM,CAAA;AAAA,IAE/D;AACS,aAAA;AAAA,EACX;AACF,GAoBMM,IAAwC,CAAC;AAAA,EAC7C,WAAAC;AAAA,EACA,UAAAC;AAAA,EACA,SAAAC;AAAA,EACA,MAAAV;AAAA;AAAA,EAEA,MAAAW;AAAA,EACA,GAAGC;AACL,MAAM;AACE,QAAAC,IAAcC,EAAW,aAAa,GAEtCC,IACJb,gBAAAA,EAAA;AAAA,IAACc;AAAA,IAAA;AAAA,MACC,WAAWC,EAAGtB,EAAe,EAAE,SAAAe,GAAS,WAAAF,EAAW,CAAA,CAAC;AAAA,MACpD,SAAO;AAAA,MACN,GAAGI;AAAA,IAAA;AAAA,IAEHV,gBAAAA,EAAA,cAAA,OAAA,EAAI,WAAU,0BAAA,GACZF,KACCE,gBAAAA,EAAA,cAAC,OAAI,EAAA,WAAWe,EAAGpB,EAAsB,EAAE,SAAAa,GAAS,CAAC,EAAA,GAClDX,EAAYC,GAAM,EAAE,CACvB,GAEFE,gBAAAA,EAAA,cAAC,SAAI,WAAWe,EAAGnB,EAAsB,EAAE,SAAAY,EAAS,CAAA,CAAC,EAAA,GAAID,CAAS,CACpE;AAAA,EAAA;AAIJ,SAAIE,IAECT,gBAAAA,EAAA,cAAAW,GAAA,EAAY,MAAAF,GAAY,UAAQ,MAC9BI,CACH,IAIGA;AACT,GAEAG,IAAeX;"}
|
package/dist/index.es7.js
CHANGED
|
@@ -2,7 +2,7 @@ import t from "react";
|
|
|
2
2
|
import { Button as s } from "./index.es2.js";
|
|
3
3
|
import { ServicesModal16X16 as u, Login16X16 as c } from "@iit/precision-ui-icons";
|
|
4
4
|
import { cva as i } from "class-variance-authority";
|
|
5
|
-
import { cn as n } from "./index.
|
|
5
|
+
import { cn as n } from "./index.es49.js";
|
|
6
6
|
const m = i("bg-link-gradient-container group cursor-pointer", {
|
|
7
7
|
variants: {
|
|
8
8
|
variant: {
|
package/dist/index.es8.js
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import l from "react";
|
|
2
2
|
import { cva as s } from "class-variance-authority";
|
|
3
|
-
import { cn as c } from "./index.
|
|
4
|
-
import { getAdapter as
|
|
5
|
-
const
|
|
3
|
+
import { cn as c } from "./index.es49.js";
|
|
4
|
+
import { getAdapter as v } from "./index.es9.js";
|
|
5
|
+
const f = s("duration-200 transition-colors", {
|
|
6
6
|
variants: {
|
|
7
7
|
variant: {
|
|
8
8
|
default: "text-turquoise link",
|
|
9
9
|
navy: "text-navy link_navy",
|
|
10
|
+
navy_light: "text-navy link_navy opacity-40 hover:opacity-60",
|
|
10
11
|
white: "text-white link_white"
|
|
11
12
|
}
|
|
12
13
|
},
|
|
@@ -14,28 +15,28 @@ const m = s("duration-200 transition-colors", {
|
|
|
14
15
|
variant: "default"
|
|
15
16
|
}
|
|
16
17
|
}), k = ({
|
|
17
|
-
href:
|
|
18
|
+
href: a,
|
|
18
19
|
children: n,
|
|
19
|
-
className:
|
|
20
|
+
className: r,
|
|
20
21
|
variant: e,
|
|
21
22
|
target: t,
|
|
22
23
|
rel: i,
|
|
23
24
|
...o
|
|
24
25
|
}) => {
|
|
25
|
-
const p =
|
|
26
|
+
const p = v("LinkWrapper");
|
|
26
27
|
return /* @__PURE__ */ l.createElement(
|
|
27
28
|
p,
|
|
28
29
|
{
|
|
29
|
-
href:
|
|
30
|
+
href: a,
|
|
30
31
|
target: t,
|
|
31
32
|
rel: i || (t === "_blank" ? "noopener noreferrer" : void 0),
|
|
32
|
-
className: c(
|
|
33
|
+
className: c(f({ variant: e, className: r })),
|
|
33
34
|
...o
|
|
34
35
|
},
|
|
35
36
|
n
|
|
36
37
|
);
|
|
37
|
-
},
|
|
38
|
+
}, _ = k;
|
|
38
39
|
export {
|
|
39
|
-
|
|
40
|
+
_ as default
|
|
40
41
|
};
|
|
41
42
|
//# sourceMappingURL=index.es8.js.map
|
package/dist/index.es8.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.es8.js","sources":["../src/components/ui/Link.tsx"],"sourcesContent":["import React from 'react'\r\nimport { cva, type VariantProps } from 'class-variance-authority'\r\nimport { cn } from '@/lib/utils/cn'\r\nimport { getAdapter } from '@/Adapters'\r\n\r\nconst linkVariants = cva('duration-200 transition-colors', {\r\n variants: {\r\n variant: {\r\n default: 'text-turquoise link',\r\n navy: 'text-navy link_navy',\r\n white: 'text-white link_white',\r\n },\r\n },\r\n defaultVariants: {\r\n variant: 'default',\r\n },\r\n})\r\n\r\ninterface AppLinkProps\r\n extends React.HTMLAttributes<HTMLAnchorElement>,\r\n VariantProps<typeof linkVariants> {\r\n href: string\r\n children: React.ReactNode\r\n className?: string\r\n target?: string\r\n}\r\n\r\nconst AppLink: React.FC<AppLinkProps> = ({\r\n href,\r\n children,\r\n className,\r\n variant,\r\n target,\r\n rel,\r\n ...props\r\n}) => {\r\n const LinkWrapper = getAdapter('LinkWrapper')\r\n\r\n return (\r\n <LinkWrapper\r\n href={href}\r\n target={target}\r\n rel={rel || (target === '_blank' ? 'noopener noreferrer' : undefined)}\r\n className={cn(linkVariants({ variant, className }))}\r\n {...props}\r\n >\r\n {children}\r\n </LinkWrapper>\r\n )\r\n}\r\n\r\nexport default AppLink\r\n"],"names":["linkVariants","cva","AppLink","href","children","className","variant","target","rel","props","LinkWrapper","getAdapter","React","cn","AppLink$1"],"mappings":";;;;AAKA,MAAMA,IAAeC,EAAI,kCAAkC;AAAA,EACzD,UAAU;AAAA,IACR,SAAS;AAAA,MACP,SAAS;AAAA,MACT,MAAM;AAAA,MACN,OAAO;AAAA,IACT;AAAA,EACF;AAAA,EACA,iBAAiB;AAAA,IACf,SAAS;AAAA,EACX;AACF,CAAC,GAWKC,IAAkC,CAAC;AAAA,EACvC,MAAAC;AAAA,EACA,UAAAC;AAAA,EACA,WAAAC;AAAA,EACA,SAAAC;AAAA,EACA,QAAAC;AAAA,EACA,KAAAC;AAAA,EACA,GAAGC;AACL,MAAM;AACE,QAAAC,IAAcC,EAAW,aAAa;AAG1C,SAAAC,gBAAAA,EAAA;AAAA,IAACF;AAAA,IAAA;AAAA,MACC,MAAAP;AAAA,MACA,QAAAI;AAAA,MACA,KAAKC,MAAQD,MAAW,WAAW,wBAAwB;AAAA,MAC3D,WAAWM,EAAGb,EAAa,EAAE,SAAAM,GAAS,WAAAD,EAAW,CAAA,CAAC;AAAA,MACjD,GAAGI;AAAA,IAAA;AAAA,IAEHL;AAAA,EAAA;AAGP,GAEAU,IAAeZ;"}
|
|
1
|
+
{"version":3,"file":"index.es8.js","sources":["../src/components/ui/Link.tsx"],"sourcesContent":["import React from 'react'\r\nimport { cva, type VariantProps } from 'class-variance-authority'\r\nimport { cn } from '@/lib/utils/cn'\r\nimport { getAdapter } from '@/Adapters'\r\n\r\nconst linkVariants = cva('duration-200 transition-colors', {\r\n variants: {\r\n variant: {\r\n default: 'text-turquoise link',\r\n navy: 'text-navy link_navy',\r\n navy_light: 'text-navy link_navy opacity-40 hover:opacity-60',\r\n white: 'text-white link_white',\r\n },\r\n },\r\n defaultVariants: {\r\n variant: 'default',\r\n },\r\n})\r\n\r\ninterface AppLinkProps\r\n extends React.HTMLAttributes<HTMLAnchorElement>,\r\n VariantProps<typeof linkVariants> {\r\n href: string\r\n children: React.ReactNode\r\n className?: string\r\n target?: string\r\n}\r\n\r\nconst AppLink: React.FC<AppLinkProps> = ({\r\n href,\r\n children,\r\n className,\r\n variant,\r\n target,\r\n rel,\r\n ...props\r\n}) => {\r\n const LinkWrapper = getAdapter('LinkWrapper')\r\n\r\n return (\r\n <LinkWrapper\r\n href={href}\r\n target={target}\r\n rel={rel || (target === '_blank' ? 'noopener noreferrer' : undefined)}\r\n className={cn(linkVariants({ variant, className }))}\r\n {...props}\r\n >\r\n {children}\r\n </LinkWrapper>\r\n )\r\n}\r\n\r\nexport default AppLink\r\n"],"names":["linkVariants","cva","AppLink","href","children","className","variant","target","rel","props","LinkWrapper","getAdapter","React","cn","AppLink$1"],"mappings":";;;;AAKA,MAAMA,IAAeC,EAAI,kCAAkC;AAAA,EACzD,UAAU;AAAA,IACR,SAAS;AAAA,MACP,SAAS;AAAA,MACT,MAAM;AAAA,MACN,YAAY;AAAA,MACZ,OAAO;AAAA,IACT;AAAA,EACF;AAAA,EACA,iBAAiB;AAAA,IACf,SAAS;AAAA,EACX;AACF,CAAC,GAWKC,IAAkC,CAAC;AAAA,EACvC,MAAAC;AAAA,EACA,UAAAC;AAAA,EACA,WAAAC;AAAA,EACA,SAAAC;AAAA,EACA,QAAAC;AAAA,EACA,KAAAC;AAAA,EACA,GAAGC;AACL,MAAM;AACE,QAAAC,IAAcC,EAAW,aAAa;AAG1C,SAAAC,gBAAAA,EAAA;AAAA,IAACF;AAAA,IAAA;AAAA,MACC,MAAAP;AAAA,MACA,QAAAI;AAAA,MACA,KAAKC,MAAQD,MAAW,WAAW,wBAAwB;AAAA,MAC3D,WAAWM,EAAGb,EAAa,EAAE,SAAAM,GAAS,WAAAD,EAAW,CAAA,CAAC;AAAA,MACjD,GAAGI;AAAA,IAAA;AAAA,IAEHL;AAAA,EAAA;AAGP,GAEAU,IAAeZ;"}
|
package/dist/index.es9.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.es9.js","sources":["../src/Adapters.tsx"],"sourcesContent":["type ComponentAdapter<TProps = unknown> = React.FC<TProps>\r\n\r\ninterface Adapters {\r\n LinkWrapper?: ComponentAdapter<{\r\n href: string\r\n children: React.ReactNode\r\n className?: string\r\n target?: string\r\n rel?: string\r\n }>\r\n ImageWrapper?: ComponentAdapter<{\r\n src: string\r\n alt: string\r\n width?: number\r\n height?: number\r\n className?: string\r\n objectFit?: string\r\n }>\r\n // CarouselWrapper?: ComponentAdapter<{\r\n // items: unknown[]\r\n // renderItem: (item: unknown, index: number) => React.ReactNode\r\n // columns: number\r\n //
|
|
1
|
+
{"version":3,"file":"index.es9.js","sources":["../src/Adapters.tsx"],"sourcesContent":["type ComponentAdapter<TProps = unknown> = React.FC<TProps>\r\n\r\ninterface Adapters {\r\n LinkWrapper?: ComponentAdapter<{\r\n href: string\r\n children: React.ReactNode\r\n className?: string\r\n target?: string\r\n rel?: string\r\n passHref?: boolean\r\n }>\r\n ImageWrapper?: ComponentAdapter<{\r\n src: string\r\n alt: string\r\n width?: number\r\n height?: number\r\n className?: string\r\n objectFit?: string\r\n }>\r\n // CarouselWrapper?: ComponentAdapter<{\r\n // items: unknown[]\r\n // renderItem: (item: unknown, index: number) => React.ReactNode\r\n // columns: number\r\n // hideControlsOnDesktop: boolean\r\n // className?: string\r\n // }>\r\n}\r\n\r\nconst adapters: Adapters = {}\r\n\r\nexport const registerAdapter = <T extends keyof Adapters>(\r\n key: T,\r\n adapter: NonNullable<Adapters[T]>\r\n) => {\r\n adapters[key] = adapter\r\n}\r\n\r\nexport const getAdapter = <T extends keyof Adapters>(\r\n key: T\r\n): NonNullable<Adapters[T]> => {\r\n const adapter = adapters[key]\r\n if (!adapter) {\r\n throw new Error(`Adapter for ${key} is not registered.`)\r\n }\r\n return adapter\r\n}\r\n"],"names":["adapters","registerAdapter","key","adapter","getAdapter"],"mappings":"AA4BA,MAAMA,IAAqB,CAAA,GAEdC,IAAkB,CAC7BC,GACAC,MACG;AACH,EAAAH,EAASE,CAAG,IAAIC;AAClB,GAEaC,IAAa,CACxBF,MAC6B;AACvB,QAAAC,IAAUH,EAASE,CAAG;AAC5B,MAAI,CAACC;AACH,UAAM,IAAI,MAAM,eAAeD,CAAG,qBAAqB;AAElD,SAAAC;AACT;"}
|