@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.
Files changed (144) hide show
  1. package/dist/Adapters.d.ts +1 -0
  2. package/dist/Adapters.d.ts.map +1 -1
  3. package/dist/components/ArticlePreviewTag.d.ts +11 -0
  4. package/dist/components/ArticlePreviewTag.d.ts.map +1 -0
  5. package/dist/components/GridIterator.d.ts +3 -2
  6. package/dist/components/GridIterator.d.ts.map +1 -1
  7. package/dist/components/cards/AdvantageWithAccordion.d.ts +12 -0
  8. package/dist/components/cards/AdvantageWithAccordion.d.ts.map +1 -0
  9. package/dist/components/cards/Connect.d.ts +19 -0
  10. package/dist/components/cards/Connect.d.ts.map +1 -0
  11. package/dist/components/cards/Doc.d.ts +11 -0
  12. package/dist/components/cards/Doc.d.ts.map +1 -0
  13. package/dist/components/cards/FAQ.d.ts +14 -0
  14. package/dist/components/cards/FAQ.d.ts.map +1 -0
  15. package/dist/components/cards/FeaturedCard.d.ts +1 -1
  16. package/dist/components/cards/FeaturedCard.d.ts.map +1 -1
  17. package/dist/components/cards/License.d.ts +10 -0
  18. package/dist/components/cards/License.d.ts.map +1 -0
  19. package/dist/components/cards/Package.d.ts +28 -0
  20. package/dist/components/cards/Package.d.ts.map +1 -0
  21. package/dist/components/pieces/ShowMoreAccordionTrigger.d.ts +8 -0
  22. package/dist/components/pieces/ShowMoreAccordionTrigger.d.ts.map +1 -0
  23. package/dist/components/ui/Link.d.ts +1 -1
  24. package/dist/components/ui/Link.d.ts.map +1 -1
  25. package/dist/components/ui/TagLink.d.ts +14 -0
  26. package/dist/components/ui/TagLink.d.ts.map +1 -0
  27. package/dist/components/ui/accordion.d.ts +15 -0
  28. package/dist/components/ui/accordion.d.ts.map +1 -0
  29. package/dist/components/ui/button/ButtonText.d.ts +1 -0
  30. package/dist/components/ui/button/ButtonText.d.ts.map +1 -1
  31. package/dist/components/ui/carousel.d.ts +5 -1
  32. package/dist/components/ui/carousel.d.ts.map +1 -1
  33. package/dist/components/ui/input/SearchInput.d.ts +1 -0
  34. package/dist/components/ui/input/SearchInput.d.ts.map +1 -1
  35. package/dist/components/ui/tabs.d.ts +8 -0
  36. package/dist/components/ui/tabs.d.ts.map +1 -0
  37. package/dist/decorators/CarouselWrapper.d.ts +3 -2
  38. package/dist/decorators/CarouselWrapper.d.ts.map +1 -1
  39. package/dist/icons/comet.svg +5 -0
  40. package/dist/index.d.ts +23 -2
  41. package/dist/index.d.ts.map +1 -1
  42. package/dist/index.es.js +105 -63
  43. package/dist/index.es.js.map +1 -1
  44. package/dist/index.es10.js +1 -1
  45. package/dist/index.es11.js +1 -1
  46. package/dist/index.es13.js +1 -1
  47. package/dist/index.es15.js +1 -1
  48. package/dist/index.es16.js +2 -2
  49. package/dist/index.es18.js +1 -1
  50. package/dist/index.es19.js +1 -1
  51. package/dist/index.es2.js +1 -1
  52. package/dist/index.es20.js +1 -1
  53. package/dist/index.es21.js +14 -23
  54. package/dist/index.es21.js.map +1 -1
  55. package/dist/index.es22.js +36 -173
  56. package/dist/index.es22.js.map +1 -1
  57. package/dist/index.es23.js +31 -46
  58. package/dist/index.es23.js.map +1 -1
  59. package/dist/index.es24.js +48 -52
  60. package/dist/index.es24.js.map +1 -1
  61. package/dist/index.es25.js +14 -61
  62. package/dist/index.es25.js.map +1 -1
  63. package/dist/index.es26.js +6 -20
  64. package/dist/index.es26.js.map +1 -1
  65. package/dist/index.es27.js +52 -18
  66. package/dist/index.es27.js.map +1 -1
  67. package/dist/index.es28.js +27 -91
  68. package/dist/index.es28.js.map +1 -1
  69. package/dist/index.es29.js +88 -81
  70. package/dist/index.es29.js.map +1 -1
  71. package/dist/index.es3.js +2 -2
  72. package/dist/index.es30.js +54 -31
  73. package/dist/index.es30.js.map +1 -1
  74. package/dist/index.es31.js +92 -6
  75. package/dist/index.es31.js.map +1 -1
  76. package/dist/index.es32.js +97 -21
  77. package/dist/index.es32.js.map +1 -1
  78. package/dist/index.es33.js +12 -19
  79. package/dist/index.es33.js.map +1 -1
  80. package/dist/index.es34.js +43 -18
  81. package/dist/index.es34.js.map +1 -1
  82. package/dist/index.es35.js +23 -10
  83. package/dist/index.es35.js.map +1 -1
  84. package/dist/index.es36.js +26 -83
  85. package/dist/index.es36.js.map +1 -1
  86. package/dist/index.es37.js +207 -16
  87. package/dist/index.es37.js.map +1 -1
  88. package/dist/index.es38.js +47 -41
  89. package/dist/index.es38.js.map +1 -1
  90. package/dist/index.es39.js +53 -40
  91. package/dist/index.es39.js.map +1 -1
  92. package/dist/index.es4.js +1 -1
  93. package/dist/index.es40.js +59 -35
  94. package/dist/index.es40.js.map +1 -1
  95. package/dist/index.es41.js +18 -54
  96. package/dist/index.es41.js.map +1 -1
  97. package/dist/index.es42.js +17 -90
  98. package/dist/index.es42.js.map +1 -1
  99. package/dist/index.es43.js +88 -95
  100. package/dist/index.es43.js.map +1 -1
  101. package/dist/index.es44.js +88 -25
  102. package/dist/index.es44.js.map +1 -1
  103. package/dist/index.es45.js +33 -45
  104. package/dist/index.es45.js.map +1 -1
  105. package/dist/index.es46.js +75 -14
  106. package/dist/index.es46.js.map +1 -1
  107. package/dist/index.es47.js +39 -212
  108. package/dist/index.es47.js.map +1 -1
  109. package/dist/index.es48.js +10 -3
  110. package/dist/index.es48.js.map +1 -1
  111. package/dist/index.es49.js +9 -0
  112. package/dist/index.es49.js.map +1 -0
  113. package/dist/index.es5.js +1 -1
  114. package/dist/index.es50.js +25 -0
  115. package/dist/index.es50.js.map +1 -0
  116. package/dist/index.es51.js +23 -0
  117. package/dist/index.es51.js.map +1 -0
  118. package/dist/index.es52.js +23 -0
  119. package/dist/index.es52.js.map +1 -0
  120. package/dist/index.es53.js +88 -0
  121. package/dist/index.es53.js.map +1 -0
  122. package/dist/index.es54.js +42 -0
  123. package/dist/index.es54.js.map +1 -0
  124. package/dist/index.es55.js +30 -0
  125. package/dist/index.es55.js.map +1 -0
  126. package/dist/index.es56.js +19 -0
  127. package/dist/index.es56.js.map +1 -0
  128. package/dist/index.es57.js +50 -0
  129. package/dist/index.es57.js.map +1 -0
  130. package/dist/index.es58.js +7 -0
  131. package/dist/index.es58.js.map +1 -0
  132. package/dist/index.es59.js +245 -0
  133. package/dist/index.es59.js.map +1 -0
  134. package/dist/index.es6.js +36 -31
  135. package/dist/index.es6.js.map +1 -1
  136. package/dist/index.es7.js +1 -1
  137. package/dist/index.es8.js +11 -10
  138. package/dist/index.es8.js.map +1 -1
  139. package/dist/index.es9.js.map +1 -1
  140. package/dist/sections/CardsGridSection.d.ts +2 -2
  141. package/dist/sections/Hero.d.ts +2 -0
  142. package/dist/sections/Hero.d.ts.map +1 -1
  143. package/dist/styles.css +336 -15
  144. package/package.json +5 -3
@@ -1,9 +1,95 @@
1
- import { clsx as o } from "clsx";
2
- import { twMerge as t } from "tailwind-merge";
3
- function n(...r) {
4
- return t(o(r));
5
- }
1
+ import { cva as d } from "class-variance-authority";
2
+ import s from "./index.es6.js";
3
+ import y from "./index.es41.js";
4
+ import e from "react";
5
+ import g from "./index.es42.js";
6
+ import { cn as o } from "./index.es49.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("", {
28
+ variants: {
29
+ variant: {
30
+ default: "text-navy-opacity-60",
31
+ navy: "text-whitish-opacity-60"
32
+ }
33
+ },
34
+ defaultVariants: {
35
+ variant: "default"
36
+ }
37
+ }), w = ({
38
+ title: n,
39
+ desc: p,
40
+ icon: f,
41
+ link: i,
42
+ variant: t,
43
+ size: c,
44
+ buttons: r
45
+ }) => {
46
+ const v = m("LinkWrapper"), h = m("ImageWrapper");
47
+ let l = /* @__PURE__ */ e.createElement("div", { className: o(x({ variant: t, size: c }), "h-full") }, /* @__PURE__ */ e.createElement("div", { className: "rounded-lg p-4 bg-turquoise-opacity-20" }, /* @__PURE__ */ e.createElement(
48
+ h,
49
+ {
50
+ src: f,
51
+ alt: `Изображение для ${n}`,
52
+ width: 32,
53
+ height: 32,
54
+ className: "object-contain"
55
+ }
56
+ )), /* @__PURE__ */ e.createElement("div", { className: "space-y-2" }, /* @__PURE__ */ e.createElement(y, { level: 5, className: "mt-4 mb-2" }, n), /* @__PURE__ */ e.createElement(g, { variant: "small-body", className: o(E({ variant: t })) }, p)), !(r && r.length) && /* @__PURE__ */ e.createElement(
57
+ s,
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, u) => /* @__PURE__ */ e.createElement("div", { key: u }, /* @__PURE__ */ e.createElement(
64
+ s,
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 i && (l = /* @__PURE__ */ e.createElement(
81
+ v,
82
+ {
83
+ href: i,
84
+ className: o(
85
+ "block h-full relative transition-all bottom-0 hover:bottom-2 transform duration-300 border border-transparent rounded-lg hover1:border-navy-opacity-16",
86
+ c === 2 ? "sm:col-span-2" : "sm:col-span-1"
87
+ )
88
+ },
89
+ l
90
+ )), l;
91
+ }, j = w;
6
92
  export {
7
- n as cn
93
+ j as default
8
94
  };
9
95
  //# sourceMappingURL=index.es31.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es31.js","sources":["../src/lib/utils/cn.ts"],"sourcesContent":["import { type ClassValue, clsx } from 'clsx'\r\nimport { twMerge } from 'tailwind-merge'\r\n\r\nexport function cn(...inputs: ClassValue[]) {\r\n return twMerge(clsx(inputs))\r\n}\r\n"],"names":["cn","inputs","twMerge","clsx"],"mappings":";;AAGO,SAASA,KAAMC,GAAsB;AACnC,SAAAC,EAAQC,EAAKF,CAAM,CAAC;AAC7B;"}
1
+ {"version":3,"file":"index.es31.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 }), 'h-full')}>\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 'block h-full 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","Product"],"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,IACDC,gBAAAA,EAAA,cAAA,OAAA,EAAI,WAAWC,EAAGhB,EAAoB,EAAE,SAAAQ,GAAS,MAAAC,EAAM,CAAA,GAAG,QAAQ,KAChEM,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,GAEAQ,IAAenB;"}
@@ -1,25 +1,101 @@
1
- import { ArrowSliderPrev16X16 as s, ArrowSliderNext16X16 as m, MoreLink16X16 as l, LessLink16X16 as u } from "@iit/precision-ui-icons";
2
- import { ThumbsUp as f, ThumbsDown as p } from "lucide-react";
3
- import o from "react";
4
- const i = "1em", a = (e) => Object.keys(e).reduce((r, t) => (r[t] = ({
5
- width: n = i,
6
- height: c = i
7
- }) => o.createElement(e[t], { width: n, height: c }), r), {}), d = {
8
- chevronLeft: s,
9
- chevronRight: m,
10
- plus: l,
11
- minus: u,
12
- like: f,
13
- dislike: p
14
- }, h = a(d), I = (e, r, t) => {
15
- if (e) {
16
- const n = h[e];
17
- if (n)
18
- return n({ width: r, height: t });
1
+ import e from "react";
2
+ import { cva as o } from "class-variance-authority";
3
+ import { cn as s } from "./index.es49.js";
4
+ import f from "./index.es41.js";
5
+ import d from "./index.es42.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
+ }
20
+ },
21
+ defaultVariants: {
22
+ variant: "default"
23
+ }
19
24
  }
20
- return /* @__PURE__ */ o.createElement(o.Fragment, null);
21
- };
25
+ ), V = o("w-full h-[1px]", {
26
+ variants: {
27
+ variant: {
28
+ default: "bg-grey-3",
29
+ navy: "bg-whitish-opacity-16"
30
+ }
31
+ },
32
+ defaultVariants: {
33
+ variant: "default"
34
+ }
35
+ }), R = 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
+ }), B = ({
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
+ }, C = ({
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(R({ 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
+ B,
89
+ {
90
+ key: c,
91
+ variant: t.variant,
92
+ title: t.title,
93
+ link: t.link,
94
+ onClick: () => t.isBuyButton && u?.(r)
95
+ }
96
+ )))), F = C;
22
97
  export {
23
- I as iconDefiner
98
+ B as RateButton,
99
+ F as default
24
100
  };
25
101
  //# sourceMappingURL=index.es32.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es32.js","sources":["../src/components/ui/icon.tsx"],"sourcesContent":["import {\r\n ArrowSliderNext16X16,\r\n ArrowSliderPrev16X16,\r\n LessLink16X16,\r\n MoreLink16X16,\r\n} from '@iit/precision-ui-icons'\r\nimport { ThumbsDown, ThumbsUp } from 'lucide-react'\r\n\r\nimport React from 'react'\r\n\r\nconst DEFAULT_ICON_SIZE = '1em'\r\n\r\nexport type IconName =\r\n | 'chevronLeft'\r\n | 'chevronRight'\r\n | 'plus'\r\n | 'minus'\r\n | 'like'\r\n | 'dislike'\r\n\r\n// TODO: move to separate file\r\n// type IconMap = {\r\n// [key in IconName]: (props: {\r\n// width?: number | string\r\n// height?: number | string\r\n// }) => React.ReactElement\r\n// }\r\n\r\ninterface IconProps {\r\n width?: number | string\r\n height?: number | string\r\n}\r\n\r\nconst generateIconMap = (\r\n icons: Record<IconName, React.ComponentType<React.SVGProps<SVGSVGElement>>>\r\n) => {\r\n return Object.keys(icons).reduce<\r\n Record<IconName, (props: IconProps) => React.ReactElement>\r\n >((acc, key) => {\r\n acc[key as IconName] = ({\r\n width = DEFAULT_ICON_SIZE,\r\n height = DEFAULT_ICON_SIZE,\r\n }: IconProps) =>\r\n React.createElement(icons[key as IconName], { width, height })\r\n return acc\r\n }, {} as Record<IconName, (props: IconProps) => React.ReactElement>)\r\n}\r\n\r\nconst icons: Record<\r\n IconName,\r\n React.ComponentType<React.SVGProps<SVGSVGElement>>\r\n> = {\r\n chevronLeft: ArrowSliderPrev16X16,\r\n chevronRight: ArrowSliderNext16X16,\r\n plus: MoreLink16X16,\r\n minus: LessLink16X16,\r\n like: ThumbsUp,\r\n dislike: ThumbsDown,\r\n}\r\n\r\nconst iconMap = generateIconMap(icons)\r\nexport const iconDefiner = (\r\n icon?: IconName,\r\n width?: number | string,\r\n height?: number | string\r\n): React.ReactElement => {\r\n if (icon) {\r\n const selectedIcon = iconMap[icon]\r\n if (selectedIcon) {\r\n return selectedIcon({ width, height })\r\n }\r\n }\r\n return <></>\r\n}\r\n"],"names":["DEFAULT_ICON_SIZE","generateIconMap","icons","acc","key","width","height","React","ArrowSliderPrev16X16","ArrowSliderNext16X16","MoreLink16X16","LessLink16X16","ThumbsUp","ThumbsDown","iconMap","iconDefiner","icon","selectedIcon"],"mappings":";;;AAUA,MAAMA,IAAoB,OAuBpBC,IAAkB,CACtBC,MAEO,OAAO,KAAKA,CAAK,EAAE,OAExB,CAACC,GAAKC,OACFD,EAAAC,CAAe,IAAI,CAAC;AAAA,EACtB,OAAAC,IAAQL;AAAA,EACR,QAAAM,IAASN;AAAA,MAETO,EAAM,cAAcL,EAAME,CAAe,GAAG,EAAE,OAAAC,GAAO,QAAAC,EAAA,CAAQ,GACxDH,IACN,CAAgE,CAAA,GAG/DD,IAGF;AAAA,EACF,aAAaM;AAAA,EACb,cAAcC;AAAA,EACd,MAAMC;AAAA,EACN,OAAOC;AAAA,EACP,MAAMC;AAAA,EACN,SAASC;AACX,GAEMC,IAAUb,EAAgBC,CAAK,GACxBa,IAAc,CACzBC,GACAX,GACAC,MACuB;AACvB,MAAIU,GAAM;AACF,UAAAC,IAAeH,EAAQE,CAAI;AACjC,QAAIC;AACF,aAAOA,EAAa,EAAE,OAAAZ,GAAO,QAAAC,EAAQ,CAAA;AAAA,EAEzC;AACA,SAASC,gBAAAA,EAAA,cAAAA,EAAA,UAAA,IAAA;AACX;"}
1
+ {"version":3,"file":"index.es32.js","sources":["../src/components/cards/Rate.tsx"],"sourcesContent":["import React from 'react'\r\n\r\nimport { cva, type VariantProps } from 'class-variance-authority'\r\nimport { cn } from '@/lib/utils/cn'\r\nimport Heading from '../core/typography/Heading'\r\nimport Text from '../core/typography/Text'\r\nimport { ButtonSecondary } from '../ui/button'\r\nimport AppLink from '../ui/Link'\r\nimport { ButtonSecondaryProps } from '../ui/button/ButtonSecondary'\r\nimport { Tag, TagItemProps } from '../ui/Tag'\r\n\r\nimport SafeHtmlRenderer from '../SafeHtml'\r\nimport { getAdapter } from '@/Adapters'\r\nimport Informer from '../Informer'\r\n\r\nconst rateCardVariants = cva(\r\n 'group p-6 rounded-lg min-h-[360px] flex flex-col justify-between h-full',\r\n {\r\n variants: {\r\n variant: {\r\n default:\r\n 'text-navy bg-whitish hover1:bg-navy-opacity-4 hover1:text-navy',\r\n navy: 'text-whitish bg-gradient-to-b from-navy to-sapphire hover1:from-sapphire hover1:to-navy',\r\n },\r\n },\r\n defaultVariants: {\r\n variant: 'default',\r\n },\r\n }\r\n)\r\n\r\nconst dividerVariants = cva('w-full h-[1px]', {\r\n variants: {\r\n variant: {\r\n default: 'bg-grey-3',\r\n navy: 'bg-whitish-opacity-16',\r\n },\r\n },\r\n defaultVariants: {\r\n variant: 'default',\r\n },\r\n})\r\n\r\nconst descVariants = cva('', {\r\n variants: {\r\n variant: {\r\n default: 'text-navy-opacity-60',\r\n navy: 'text-whitish-opacity-60',\r\n },\r\n },\r\n defaultVariants: {\r\n variant: 'default',\r\n },\r\n})\r\n\r\nexport interface RateButtonProps {\r\n variant?: ButtonSecondaryProps['variant']\r\n title?: string\r\n link?: string\r\n isBuyButton?: boolean\r\n onClick?: () => void\r\n}\r\n\r\nexport const RateButton: React.FC<RateButtonProps> = ({\r\n variant,\r\n title,\r\n link,\r\n onClick,\r\n}) => {\r\n const LinkWrapper = getAdapter('LinkWrapper')\r\n\r\n const button = (\r\n <ButtonSecondary variant={variant} onClick={onClick}>\r\n {title || 'Подробнее'}\r\n </ButtonSecondary>\r\n )\r\n\r\n if (link) {\r\n return <LinkWrapper href={link}>{button}</LinkWrapper>\r\n }\r\n\r\n return button\r\n}\r\n\r\nexport interface RateCardProps\r\n extends React.HTMLAttributes<HTMLDivElement>,\r\n VariantProps<typeof rateCardVariants> {\r\n className?: string\r\n title: string\r\n oldPrice?: string\r\n price: string\r\n desc: string\r\n link: string\r\n onClickBuyButton?: (title: string) => void\r\n buttons?: RateButtonProps[]\r\n tags?: TagItemProps[]\r\n titleInformer?: string\r\n}\r\n\r\nexport interface RateCardPropsWithoutHTMLAttributes\r\n extends Omit<RateCardProps, keyof React.HTMLAttributes<HTMLDivElement>> {\r\n className?: string\r\n title: string\r\n}\r\n\r\nconst RateCard: React.FC<RateCardProps> = ({\r\n variant,\r\n className,\r\n title,\r\n oldPrice,\r\n price,\r\n desc,\r\n link,\r\n onClickBuyButton,\r\n buttons,\r\n tags,\r\n titleInformer,\r\n}) => {\r\n return (\r\n <div className={cn(rateCardVariants({ variant, className }))}>\r\n <div>\r\n {tags && (\r\n <div className=\"flex space-x-2 mb-6\">\r\n {tags.map((tag, index) => (\r\n <Tag key={index} variant={tag.color}>\r\n {tag.title}\r\n </Tag>\r\n ))}\r\n </div>\r\n )}\r\n <div className=\"space-y-12 mb-6\">\r\n <div className=\"space-y-4\">\r\n <div className=\"flex space-x-2 items-center relative\">\r\n <AppLink\r\n href={link}\r\n variant={variant === 'navy' ? 'white' : 'navy'}\r\n >\r\n <Heading level={4} as={'span'}>\r\n {title}\r\n </Heading>\r\n </AppLink>\r\n {titleInformer && <Informer content={titleInformer} />}\r\n </div>\r\n <div className=\"flex space-x-4 items-baseline\">\r\n {oldPrice && (\r\n <Text\r\n variant=\"caption\"\r\n className=\"text-navy-opacity-40 line-through\"\r\n >\r\n {oldPrice}\r\n </Text>\r\n )}\r\n <Heading level={5} as={'div'}>\r\n {price}\r\n </Heading>\r\n </div>\r\n </div>\r\n <div className=\"space-y-4\">\r\n <div className={cn(dividerVariants({ variant }))}></div>\r\n <Text\r\n variant=\"small-body\"\r\n as=\"div\"\r\n className={cn(descVariants({ variant }), 'content')}\r\n >\r\n <SafeHtmlRenderer html={desc} />\r\n </Text>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div className=\"w-full gap-2 flex\">\r\n {buttons?.map((button, index) => (\r\n <RateButton\r\n key={index}\r\n variant={button.variant}\r\n title={button.title}\r\n link={button.link}\r\n onClick={() => 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","Rate"],"mappings":"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"}
@@ -1,23 +1,16 @@
1
- import * as t from "@radix-ui/react-popover";
2
- import * as e from "react";
3
- import { cn as i } from "./index.es31.js";
4
- const p = t.Root, l = t.Trigger, s = e.forwardRef(({ className: o, align: a = "center", sideOffset: r = 4, ...d }, n) => /* @__PURE__ */ e.createElement(t.Portal, null, /* @__PURE__ */ e.createElement(
5
- t.Content,
1
+ import { AccordionTrigger as e } from "./index.es46.js";
2
+ import o from "react";
3
+ const a = ({
4
+ children: r
5
+ }) => /* @__PURE__ */ o.createElement(
6
+ e,
6
7
  {
7
- ref: n,
8
- align: a,
9
- sideOffset: r,
10
- className: i(
11
- "z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
12
- o
13
- ),
14
- ...d
15
- }
16
- )));
17
- s.displayName = t.Content.displayName;
8
+ icons: "arrows",
9
+ className: "border-none flex-initial flex-row-reverse1 gap-2 [&[data-state=open]]:bg-whitish1 [&>.icon-wrapper>svg]:hover:bg-whitish [&[data-state=open]>.icon-wrapper>svg]:hover:bg-navy-opacity-81 [&>.icon-wrapper>svg]:rounded-3xl 11 bg-whitish p-2 pr-2 pl-8 rounded-full hover:bg-navy-opacity-4"
10
+ },
11
+ r
12
+ ), n = a;
18
13
  export {
19
- p as Popover,
20
- s as PopoverContent,
21
- l as PopoverTrigger
14
+ n as default
22
15
  };
23
16
  //# sourceMappingURL=index.es33.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es33.js","sources":["../src/components/ui/popover.tsx"],"sourcesContent":["import * as PopoverPrimitive from '@radix-ui/react-popover'\r\nimport * as React from 'react'\r\n\r\nimport { cn } from '@/lib/utils/cn'\r\n\r\nconst Popover = PopoverPrimitive.Root\r\n\r\nconst PopoverTrigger = PopoverPrimitive.Trigger\r\n\r\nconst PopoverContent = React.forwardRef<\r\n React.ElementRef<typeof PopoverPrimitive.Content>,\r\n React.ComponentPropsWithoutRef<typeof PopoverPrimitive.Content>\r\n>(({ className, align = 'center', sideOffset = 4, ...props }, ref) => (\r\n <PopoverPrimitive.Portal>\r\n <PopoverPrimitive.Content\r\n ref={ref}\r\n align={align}\r\n sideOffset={sideOffset}\r\n className={cn(\r\n 'z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2',\r\n className\r\n )}\r\n {...props}\r\n />\r\n </PopoverPrimitive.Portal>\r\n))\r\nPopoverContent.displayName = PopoverPrimitive.Content.displayName\r\n\r\nexport { Popover, PopoverTrigger, PopoverContent }\r\n"],"names":["Popover","PopoverPrimitive","PopoverTrigger","PopoverContent","React","className","align","sideOffset","props","ref","cn"],"mappings":";;;AAKA,MAAMA,IAAUC,EAAiB,MAE3BC,IAAiBD,EAAiB,SAElCE,IAAiBC,EAAM,WAG3B,CAAC,EAAE,WAAAC,GAAW,OAAAC,IAAQ,UAAU,YAAAC,IAAa,GAAG,GAAGC,KAASC,MAC3D,gBAAAL,EAAA,cAAAH,EAAiB,QAAjB,MACC,gBAAAG,EAAA;AAAA,EAACH,EAAiB;AAAA,EAAjB;AAAA,IACC,KAAAQ;AAAA,IACA,OAAAH;AAAA,IACA,YAAAC;AAAA,IACA,WAAWG;AAAA,MACT;AAAA,MACAL;AAAA,IACF;AAAA,IACC,GAAGG;AAAA,EAAA;AACN,CACF,CACD;AACDL,EAAe,cAAcF,EAAiB,QAAQ;"}
1
+ {"version":3,"file":"index.es33.js","sources":["../src/components/pieces/ShowMoreAccordionTrigger.tsx"],"sourcesContent":["import { AccordionTrigger } from '../ui/accordion'\r\nimport React from 'react'\r\n\r\ninterface ShowMoreAccordionTriggerProps {\r\n children: React.ReactNode\r\n}\r\n\r\nconst ShowMoreAccordionTrigger: React.FC<ShowMoreAccordionTriggerProps> = ({\r\n children,\r\n}) => {\r\n return (\r\n <AccordionTrigger\r\n icons=\"arrows\"\r\n className=\"border-none flex-initial flex-row-reverse1 gap-2 [&[data-state=open]]:bg-whitish1 [&>.icon-wrapper>svg]:hover:bg-whitish [&[data-state=open]>.icon-wrapper>svg]:hover:bg-navy-opacity-81 [&>.icon-wrapper>svg]:rounded-3xl 11 bg-whitish p-2 pr-2 pl-8 rounded-full hover:bg-navy-opacity-4\"\r\n >\r\n {children}\r\n </AccordionTrigger>\r\n )\r\n}\r\n\r\nexport default ShowMoreAccordionTrigger\r\n"],"names":["ShowMoreAccordionTrigger","children","React","AccordionTrigger","ShowMoreAccordionTrigger$1"],"mappings":";;AAOA,MAAMA,IAAoE,CAAC;AAAA,EACzE,UAAAC;AACF,MAEIC,gBAAAA,EAAA;AAAA,EAACC;AAAA,EAAA;AAAA,IACC,OAAM;AAAA,IACN,WAAU;AAAA,EAAA;AAAA,EAETF;AAAA,GAKPG,IAAeJ;"}
@@ -1,23 +1,48 @@
1
- import * as t from "react";
2
- import * as o from "@radix-ui/react-tooltip";
3
- import { cn as r } from "./index.es31.js";
4
- const n = o.Provider, l = o.Root, p = o.Trigger, s = t.forwardRef(({ className: e, sideOffset: i = 4, ...a }, d) => /* @__PURE__ */ t.createElement(
5
- o.Content,
1
+ import t from "react";
2
+ import { cva as s } from "class-variance-authority";
3
+ import { cn as o } from "./index.es49.js";
4
+ import { getAdapter as u } from "./index.es9.js";
5
+ const n = s(
6
+ "inline-flex items-center rounded-sm pt-[9px] pb-[4px] px-[13px] typo_variant_caption cursor-pointer duration-200 backdrop-blur-[8px]",
6
7
  {
7
- ref: d,
8
- sideOffset: i,
9
- className: r(
10
- "z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
11
- e
12
- ),
13
- ...a
8
+ variants: {
9
+ variant: {
10
+ default: "bg-navy-opacity-4 text-navy hover:bg-navy hover:text-white",
11
+ turquoise: "bg-turquoise-opacity-16 text-turquoise hover:bg-turquoise hover:text-white",
12
+ white: "bg-white text-navy hover:bg-whitish-opacity-32 hover:text-white",
13
+ lightWhite: "bg-whitish-opacity-8 text-white hover:bg-whitish hover:text-navy"
14
+ }
15
+ },
16
+ defaultVariants: {
17
+ variant: "default"
18
+ }
14
19
  }
15
- ));
16
- s.displayName = o.Content.displayName;
20
+ ), m = ({
21
+ className: e,
22
+ variant: r,
23
+ href: a,
24
+ target: p,
25
+ ...i
26
+ }) => {
27
+ const h = u("LinkWrapper");
28
+ return p === "_blank" ? /* @__PURE__ */ t.createElement(
29
+ "a",
30
+ {
31
+ href: a,
32
+ target: "_blank",
33
+ rel: "noopener noreferrer",
34
+ className: o(n({ variant: r, className: e })),
35
+ ...i
36
+ }
37
+ ) : /* @__PURE__ */ t.createElement(h, { href: a, passHref: !0 }, /* @__PURE__ */ t.createElement(
38
+ "span",
39
+ {
40
+ className: o(n({ variant: r, className: e })),
41
+ ...i
42
+ }
43
+ ));
44
+ };
17
45
  export {
18
- l as Tooltip,
19
- s as TooltipContent,
20
- n as TooltipProvider,
21
- p as TooltipTrigger
46
+ m as TagLink
22
47
  };
23
48
  //# sourceMappingURL=index.es34.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es34.js","sources":["../src/components/ui/tooltip.tsx"],"sourcesContent":["import * as React from 'react'\r\nimport * as TooltipPrimitive from '@radix-ui/react-tooltip'\r\n\r\nimport { cn } from '@/lib/utils/cn'\r\n\r\nconst TooltipProvider = TooltipPrimitive.Provider\r\n\r\nconst Tooltip = TooltipPrimitive.Root\r\n\r\nconst TooltipTrigger = TooltipPrimitive.Trigger\r\n\r\nconst TooltipContent = React.forwardRef<\r\n React.ElementRef<typeof TooltipPrimitive.Content>,\r\n React.ComponentPropsWithoutRef<typeof TooltipPrimitive.Content>\r\n>(({ className, sideOffset = 4, ...props }, ref) => (\r\n <TooltipPrimitive.Content\r\n ref={ref}\r\n sideOffset={sideOffset}\r\n className={cn(\r\n 'z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2',\r\n className\r\n )}\r\n {...props}\r\n />\r\n))\r\nTooltipContent.displayName = TooltipPrimitive.Content.displayName\r\n\r\nexport { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider }\r\n"],"names":["TooltipProvider","TooltipPrimitive","Tooltip","TooltipTrigger","TooltipContent","React","className","sideOffset","props","ref","cn"],"mappings":";;;AAKA,MAAMA,IAAkBC,EAAiB,UAEnCC,IAAUD,EAAiB,MAE3BE,IAAiBF,EAAiB,SAElCG,IAAiBC,EAAM,WAG3B,CAAC,EAAE,WAAAC,GAAW,YAAAC,IAAa,GAAG,GAAGC,EAAM,GAAGC,MAC1C,gBAAAJ,EAAA;AAAA,EAACJ,EAAiB;AAAA,EAAjB;AAAA,IACC,KAAAQ;AAAA,IACA,YAAAF;AAAA,IACA,WAAWG;AAAA,MACT;AAAA,MACAJ;AAAA,IACF;AAAA,IACC,GAAGE;AAAA,EAAA;AACN,CACD;AACDJ,EAAe,cAAcH,EAAiB,QAAQ;"}
1
+ {"version":3,"file":"index.es34.js","sources":["../src/components/ui/TagLink.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 tagLinkVariants = cva(\r\n 'inline-flex items-center rounded-sm pt-[9px] pb-[4px] px-[13px] typo_variant_caption cursor-pointer duration-200 backdrop-blur-[8px]',\r\n {\r\n variants: {\r\n variant: {\r\n default: 'bg-navy-opacity-4 text-navy hover:bg-navy hover:text-white',\r\n turquoise:\r\n 'bg-turquoise-opacity-16 text-turquoise hover:bg-turquoise hover:text-white',\r\n white:\r\n 'bg-white text-navy hover:bg-whitish-opacity-32 hover:text-white',\r\n lightWhite:\r\n 'bg-whitish-opacity-8 text-white hover:bg-whitish hover:text-navy',\r\n },\r\n },\r\n defaultVariants: {\r\n variant: 'default',\r\n },\r\n }\r\n)\r\n\r\nexport interface TagLinkProps\r\n extends React.HTMLAttributes<HTMLAnchorElement>,\r\n VariantProps<typeof tagLinkVariants> {\r\n className?: string\r\n href: string\r\n target?: '_blank'\r\n}\r\n\r\nconst TagLink: React.FC<TagLinkProps> = ({\r\n className,\r\n variant,\r\n href,\r\n target,\r\n ...props\r\n}) => {\r\n const LinkWrapper = getAdapter('LinkWrapper')\r\n\r\n if (target === '_blank') {\r\n return (\r\n <a\r\n href={href}\r\n target=\"_blank\"\r\n rel=\"noopener noreferrer\"\r\n className={cn(tagLinkVariants({ variant, className }))}\r\n {...props}\r\n />\r\n )\r\n }\r\n\r\n return (\r\n <LinkWrapper href={href} passHref>\r\n <span\r\n className={cn(tagLinkVariants({ variant, className }))}\r\n {...props}\r\n />\r\n </LinkWrapper>\r\n )\r\n}\r\n\r\nexport { TagLink }\r\n"],"names":["tagLinkVariants","cva","TagLink","className","variant","href","target","props","LinkWrapper","getAdapter","React","cn"],"mappings":";;;;AAKA,MAAMA,IAAkBC;AAAA,EACtB;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,SAAS;AAAA,QACP,SAAS;AAAA,QACT,WACE;AAAA,QACF,OACE;AAAA,QACF,YACE;AAAA,MACJ;AAAA,IACF;AAAA,IACA,iBAAiB;AAAA,MACf,SAAS;AAAA,IACX;AAAA,EACF;AACF,GAUMC,IAAkC,CAAC;AAAA,EACvC,WAAAC;AAAA,EACA,SAAAC;AAAA,EACA,MAAAC;AAAA,EACA,QAAAC;AAAA,EACA,GAAGC;AACL,MAAM;AACE,QAAAC,IAAcC,EAAW,aAAa;AAE5C,SAAIH,MAAW,WAEXI,gBAAAA,EAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,MAAAL;AAAA,MACA,QAAO;AAAA,MACP,KAAI;AAAA,MACJ,WAAWM,EAAGX,EAAgB,EAAE,SAAAI,GAAS,WAAAD,EAAW,CAAA,CAAC;AAAA,MACpD,GAAGI;AAAA,IAAA;AAAA,EAAA,IAMPG,gBAAAA,EAAA,cAAAF,GAAA,EAAY,MAAAH,GAAY,UAAQ,MAC/BK,gBAAAA,EAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWC,EAAGX,EAAgB,EAAE,SAAAI,GAAS,WAAAD,EAAW,CAAA,CAAC;AAAA,MACpD,GAAGI;AAAA,IAAA;AAAA,EAAA,CAER;AAEJ;"}
@@ -1,14 +1,27 @@
1
- import m from "./index.es46.js";
1
+ import { Views20X20 as c, TimeToRead20X20 as o, Date20X20 as i } from "@iit/precision-ui-icons";
2
2
  import e from "react";
3
- const s = ({ list: t }) => /* @__PURE__ */ e.createElement("ul", { className: "breadcrumbs space-y-2" }, t.map((a, r) => /* @__PURE__ */ e.createElement(
4
- "li",
5
- {
6
- key: r,
7
- style: { "--counter": r + 1 }
8
- },
9
- /* @__PURE__ */ e.createElement(m, { ...a })
10
- )));
3
+ import m from "./index.es42.js";
4
+ const s = (t) => {
5
+ switch (t) {
6
+ case "date":
7
+ return /* @__PURE__ */ e.createElement(i, null);
8
+ case "timeToRead":
9
+ return /* @__PURE__ */ e.createElement(o, null);
10
+ case "views":
11
+ return /* @__PURE__ */ e.createElement(c, null);
12
+ default:
13
+ return null;
14
+ }
15
+ }, p = ({
16
+ icon: t,
17
+ label: a,
18
+ className: r,
19
+ iconClassName: n
20
+ }) => {
21
+ const l = s(t);
22
+ return /* @__PURE__ */ e.createElement("div", { className: `flex gap-1 text-navy-opacity-40 relative ${r}` }, /* @__PURE__ */ e.createElement("span", { className: `${n}` }, l), /* @__PURE__ */ e.createElement(m, { variant: "caption", as: "div", className: "relative top-[1px]" }, a));
23
+ }, f = p;
11
24
  export {
12
- s as default
25
+ f as default
13
26
  };
14
27
  //# sourceMappingURL=index.es35.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es35.js","sources":["../src/components/breadcrumbs/Breadcrumbs.tsx"],"sourcesContent":["import Breadcrumb, { BreadcrumbProps } from \"./Breadcrumb\";\r\n\r\nimport React from \"react\";\r\n\r\ninterface BreadcrumbsProps {\r\n list: BreadcrumbProps[];\r\n}\r\n\r\ninterface CustomInlineStyles extends React.CSSProperties {\r\n \"--counter\"?: number;\r\n}\r\n\r\nconst Breadcrumbs: React.FC<BreadcrumbsProps> = ({ list }) => {\r\n return (\r\n <ul className=\"breadcrumbs space-y-2\">\r\n {list.map((item, index) => (\r\n <li\r\n key={index}\r\n style={{ \"--counter\": index + 1 } as CustomInlineStyles}\r\n >\r\n <Breadcrumb {...item} />\r\n </li>\r\n ))}\r\n </ul>\r\n );\r\n};\r\n\r\nexport default Breadcrumbs;\r\n"],"names":["Breadcrumbs","list","React","item","index","Breadcrumb"],"mappings":";;AAYA,MAAMA,IAA0C,CAAC,EAAE,MAAAC,QAE/CC,gBAAAA,EAAA,cAAC,QAAG,WAAU,wBAAA,GACXD,EAAK,IAAI,CAACE,GAAMC,MACfF,gBAAAA,EAAA;AAAA,EAAC;AAAA,EAAA;AAAA,IACC,KAAKE;AAAA,IACL,OAAO,EAAE,aAAaA,IAAQ,EAAE;AAAA,EAAA;AAAA,EAEhCF,gBAAAA,EAAA,cAACG,GAAY,EAAA,GAAGF,EAAM,CAAA;AAEzB,CAAA,CACH;"}
1
+ {"version":3,"file":"index.es35.js","sources":["../src/components/ArticlePreviewTag.tsx"],"sourcesContent":["import { Date20X20, TimeToRead20X20, Views20X20 } from '@iit/precision-ui-icons'\r\n\r\nimport React from 'react'\r\nimport { ReactNode } from 'react'\r\nimport Text from './core/typography/Text'\r\n\r\ninterface ArticlePreviewTagProps {\r\n icon: string\r\n label: string\r\n className?: string\r\n iconClassName?: string\r\n}\r\n\r\nconst getIconComponent = (iconName: string): ReactNode => {\r\n switch (iconName) {\r\n case 'date':\r\n return <Date20X20 />\r\n case 'timeToRead':\r\n return <TimeToRead20X20 />\r\n case 'views':\r\n return <Views20X20 />\r\n default:\r\n return null\r\n }\r\n}\r\n\r\nconst ArticlePreviewTag: React.FC<ArticlePreviewTagProps> = ({\r\n icon,\r\n label,\r\n className,\r\n iconClassName,\r\n}) => {\r\n const IconComponent = getIconComponent(icon)\r\n\r\n return (\r\n <div className={`flex gap-1 text-navy-opacity-40 relative ${className}`}>\r\n <span className={`${iconClassName}`}>{IconComponent}</span>\r\n <Text variant=\"caption\" as=\"div\" className=\"relative top-[1px]\">\r\n {label}\r\n </Text>\r\n </div>\r\n )\r\n}\r\n\r\nexport default ArticlePreviewTag\r\n"],"names":["getIconComponent","iconName","Date20X20","TimeToRead20X20","Views20X20","ArticlePreviewTag","icon","label","className","iconClassName","IconComponent","React","Text","ArticlePreviewTag$1"],"mappings":";;;AAaA,MAAMA,IAAmB,CAACC,MAAgC;AACxD,UAAQA,GAAU;AAAA,IAChB,KAAK;AACH,6CAAQC,GAAU,IAAA;AAAA,IACpB,KAAK;AACH,6CAAQC,GAAgB,IAAA;AAAA,IAC1B,KAAK;AACH,6CAAQC,GAAW,IAAA;AAAA,IACrB;AACS,aAAA;AAAA,EACX;AACF,GAEMC,IAAsD,CAAC;AAAA,EAC3D,MAAAC;AAAA,EACA,OAAAC;AAAA,EACA,WAAAC;AAAA,EACA,eAAAC;AACF,MAAM;AACE,QAAAC,IAAgBV,EAAiBM,CAAI;AAGzC,SAAAK,gBAAAA,EAAA,cAAC,SAAI,WAAW,4CAA4CH,CAAS,GACnE,GAAAG,gBAAAA,EAAA,cAAC,QAAK,EAAA,WAAW,GAAGF,CAAa,MAAKC,CAAc,GACnDC,gBAAAA,EAAA,cAAAC,GAAA,EAAK,SAAQ,WAAU,IAAG,OAAM,WAAU,qBACxC,GAAAL,CACH,CACF;AAEJ,GAEAM,IAAeR;"}
@@ -1,88 +1,31 @@
1
- import e, { useState as p, useRef as N, useEffect as I } from "react";
2
- import { Button as m } from "./index.es2.js";
3
- import { Close16X16 as k } from "@iit/precision-ui-icons";
4
- import { Input as R } from "./index.es11.js";
5
- import { SearchIcon as S } from "lucide-react";
6
- import { cn as a } from "./index.es31.js";
7
- const B = ({
8
- id: f,
9
- placeholder: h,
10
- className: v,
11
- containerClassName: b,
12
- value: r = "",
13
- onChange: t,
14
- onKeyDown: d,
15
- onClickSubmitButton: g,
16
- onClickClearButton: n,
17
- withoutBottomBorder: y,
18
- ...w
19
- }) => {
20
- const [o, s] = p(r), [i, u] = p(!1), l = N(null);
21
- I(() => {
22
- s(r);
23
- }, [r]);
24
- const x = (c) => {
25
- s(c.target.value), t && t(c);
26
- }, E = () => {
27
- s(""), l.current && l.current.focus(), t && t({
28
- target: { value: "" }
29
- }), n && n();
30
- };
31
- return /* @__PURE__ */ e.createElement(
32
- "div",
1
+ import s from "./index.es41.js";
2
+ import { HeroButton as i } from "./index.es37.js";
3
+ import e from "react";
4
+ import n from "./index.es17.js";
5
+ import p from "./index.es42.js";
6
+ import { getAdapter as d } from "./index.es9.js";
7
+ const f = ({ title: t, desc: r, img: a, buttons: l }) => {
8
+ const m = d("ImageWrapper");
9
+ return /* @__PURE__ */ e.createElement("section", { className: "container" }, /* @__PURE__ */ e.createElement("div", { className: "mx-auto w-full h-[606px]1 bg-gradient-to-b from-navy to-sapphire text-white rounded-2xl px-6 relative xl:min-h-[500px]" }, /* @__PURE__ */ e.createElement("div", { className: "space-y-12 relative z-10" }, /* @__PURE__ */ e.createElement("div", { className: "w-full grid grid-cols-1 lg:grid-cols-2" }, /* @__PURE__ */ e.createElement("div", null), /* @__PURE__ */ e.createElement("div", { className: "space-y-12 mb-24 mt-[128px] pr-8 lg:pr-8 xl:pr-28" }, /* @__PURE__ */ e.createElement("div", { className: " space-y-6" }, /* @__PURE__ */ e.createElement(s, { level: 2 }, t), /* @__PURE__ */ e.createElement(
10
+ p,
33
11
  {
34
- className: a("relative w-full max-w-2xl", b),
35
- onMouseEnter: () => u(!0),
36
- onMouseLeave: () => u(!1)
12
+ variant: "body",
13
+ className: "text-whitish-opacity-60",
14
+ as: "div"
37
15
  },
38
- /* @__PURE__ */ e.createElement(
39
- R,
40
- {
41
- ref: l,
42
- id: f,
43
- placeholder: h,
44
- className: a(
45
- "w-full pl-8 pr-20 hover:bg-navy-opacity-4-absolute rounded-full bg-whitish h-14",
46
- v,
47
- y && "border-b border-transparent"
48
- ),
49
- value: o,
50
- onChange: x,
51
- onKeyDown: d,
52
- ...w
53
- }
54
- ),
55
- /* @__PURE__ */ e.createElement(
56
- m,
57
- {
58
- type: "button",
59
- variant: "ghost",
60
- size: "icon",
61
- className: a(
62
- "absolute right-14 top-1/2 -translate-y-1/2 h-5 w-5 text-muted-foreground p-0 hover:bg-navy group",
63
- i ? "bg-white" : "bg-navy-opacity-8"
64
- ),
65
- onClick: E,
66
- style: { display: o ? "block" : "none" }
67
- },
68
- /* @__PURE__ */ e.createElement(k, { className: "h-[10px] w-[10px] left-[5px] top-0 relative text-navy group-hover:text-whitish" }),
69
- /* @__PURE__ */ e.createElement("span", { className: "sr-only" }, "Очистить")
70
- ),
71
- /* @__PURE__ */ e.createElement(
72
- m,
73
- {
74
- className: a(
75
- "absolute right-2 top-1/2 -translate-y-1/2 text-navy h-10 w-10 hover:bg-navy group/submit disabled:pointer-events-auto active:transform active:scale-90",
76
- i ? "bg-white" : "bg-navy-opacity-8"
77
- ),
78
- disabled: !o,
79
- onClick: g || void 0
80
- },
81
- /* @__PURE__ */ e.createElement(S, { className: "h-4 w-4 group-hover/submit:text-whitish" })
82
- )
83
- );
84
- };
16
+ /* @__PURE__ */ e.createElement(n, { html: r })
17
+ )), /* @__PURE__ */ e.createElement("div", { className: "flex space-x-4" }, l.map((c, o) => /* @__PURE__ */ e.createElement(i, { key: o, ...c })))))), a && /* @__PURE__ */ e.createElement("div", { className: "absolute bottom-0 left-0 z-0" }, /* @__PURE__ */ e.createElement(
18
+ m,
19
+ {
20
+ src: a,
21
+ alt: t,
22
+ width: 654,
23
+ height: 570,
24
+ objectFit: "contain"
25
+ }
26
+ ))));
27
+ }, N = f;
85
28
  export {
86
- B as default
29
+ N as default
87
30
  };
88
31
  //# sourceMappingURL=index.es36.js.map