@iit/precision-ui 0.6.0 → 0.7.1

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 (135) hide show
  1. package/dist/components/ArticlePreviewTag.d.ts +11 -0
  2. package/dist/components/ArticlePreviewTag.d.ts.map +1 -0
  3. package/dist/components/cards/AdvantageWithAccordion.d.ts +12 -0
  4. package/dist/components/cards/AdvantageWithAccordion.d.ts.map +1 -0
  5. package/dist/components/cards/Connect.d.ts +19 -0
  6. package/dist/components/cards/Connect.d.ts.map +1 -0
  7. package/dist/components/cards/Doc.d.ts +11 -0
  8. package/dist/components/cards/Doc.d.ts.map +1 -0
  9. package/dist/components/cards/FAQ.d.ts +14 -0
  10. package/dist/components/cards/FAQ.d.ts.map +1 -0
  11. package/dist/components/cards/License.d.ts +10 -0
  12. package/dist/components/cards/License.d.ts.map +1 -0
  13. package/dist/components/cards/Package.d.ts +28 -0
  14. package/dist/components/cards/Package.d.ts.map +1 -0
  15. package/dist/components/pieces/ShowMoreAccordionTrigger.d.ts +8 -0
  16. package/dist/components/pieces/ShowMoreAccordionTrigger.d.ts.map +1 -0
  17. package/dist/components/ui/TagLink.d.ts +14 -0
  18. package/dist/components/ui/TagLink.d.ts.map +1 -0
  19. package/dist/components/ui/accordion.d.ts +15 -0
  20. package/dist/components/ui/accordion.d.ts.map +1 -0
  21. package/dist/components/ui/tabs.d.ts +8 -0
  22. package/dist/components/ui/tabs.d.ts.map +1 -0
  23. package/dist/icons/comet.svg +5 -0
  24. package/dist/index.d.ts +38 -11
  25. package/dist/index.d.ts.map +1 -1
  26. package/dist/index.es.js +112 -63
  27. package/dist/index.es.js.map +1 -1
  28. package/dist/index.es10.js +1 -1
  29. package/dist/index.es11.js +1 -1
  30. package/dist/index.es12.js +1 -1
  31. package/dist/index.es13.js +79 -24
  32. package/dist/index.es13.js.map +1 -1
  33. package/dist/index.es14.js +83 -26
  34. package/dist/index.es14.js.map +1 -1
  35. package/dist/index.es15.js +19 -19
  36. package/dist/index.es15.js.map +1 -1
  37. package/dist/index.es16.js +28 -25
  38. package/dist/index.es16.js.map +1 -1
  39. package/dist/index.es17.js +24 -69
  40. package/dist/index.es17.js.map +1 -1
  41. package/dist/index.es18.js +22 -32
  42. package/dist/index.es18.js.map +1 -1
  43. package/dist/index.es19.js +72 -31
  44. package/dist/index.es19.js.map +1 -1
  45. package/dist/index.es2.js +1 -1
  46. package/dist/index.es20.js +24 -19
  47. package/dist/index.es20.js.map +1 -1
  48. package/dist/index.es21.js +30 -26
  49. package/dist/index.es21.js.map +1 -1
  50. package/dist/index.es22.js +25 -205
  51. package/dist/index.es22.js.map +1 -1
  52. package/dist/index.es23.js +17 -50
  53. package/dist/index.es23.js.map +1 -1
  54. package/dist/index.es24.js +40 -52
  55. package/dist/index.es24.js.map +1 -1
  56. package/dist/index.es25.js +30 -54
  57. package/dist/index.es25.js.map +1 -1
  58. package/dist/index.es26.js +52 -18
  59. package/dist/index.es26.js.map +1 -1
  60. package/dist/index.es27.js +14 -19
  61. package/dist/index.es27.js.map +1 -1
  62. package/dist/index.es28.js +6 -91
  63. package/dist/index.es28.js.map +1 -1
  64. package/dist/index.es29.js +53 -90
  65. package/dist/index.es29.js.map +1 -1
  66. package/dist/index.es3.js +2 -2
  67. package/dist/index.es30.js +25 -31
  68. package/dist/index.es30.js.map +1 -1
  69. package/dist/index.es31.js +97 -6
  70. package/dist/index.es31.js.map +1 -1
  71. package/dist/index.es32.js +55 -21
  72. package/dist/index.es32.js.map +1 -1
  73. package/dist/index.es33.js +90 -18
  74. package/dist/index.es33.js.map +1 -1
  75. package/dist/index.es34.js +96 -18
  76. package/dist/index.es34.js.map +1 -1
  77. package/dist/index.es35.js +11 -9
  78. package/dist/index.es35.js.map +1 -1
  79. package/dist/index.es36.js +42 -82
  80. package/dist/index.es36.js.map +1 -1
  81. package/dist/index.es37.js +23 -18
  82. package/dist/index.es37.js.map +1 -1
  83. package/dist/index.es38.js +36 -43
  84. package/dist/index.es38.js.map +1 -1
  85. package/dist/index.es39.js +24 -49
  86. package/dist/index.es39.js.map +1 -1
  87. package/dist/index.es4.js +1 -1
  88. package/dist/index.es40.js +205 -34
  89. package/dist/index.es40.js.map +1 -1
  90. package/dist/index.es41.js +46 -50
  91. package/dist/index.es41.js.map +1 -1
  92. package/dist/index.es42.js +47 -81
  93. package/dist/index.es42.js.map +1 -1
  94. package/dist/index.es43.js +60 -97
  95. package/dist/index.es43.js.map +1 -1
  96. package/dist/index.es44.js +19 -26
  97. package/dist/index.es44.js.map +1 -1
  98. package/dist/index.es45.js +17 -45
  99. package/dist/index.es45.js.map +1 -1
  100. package/dist/index.es46.js +75 -226
  101. package/dist/index.es46.js.map +1 -1
  102. package/dist/index.es47.js +90 -16
  103. package/dist/index.es47.js.map +1 -1
  104. package/dist/index.es48.js +33 -4
  105. package/dist/index.es48.js.map +1 -1
  106. package/dist/index.es49.js +80 -0
  107. package/dist/index.es49.js.map +1 -0
  108. package/dist/index.es5.js +1 -1
  109. package/dist/index.es50.js +46 -0
  110. package/dist/index.es50.js.map +1 -0
  111. package/dist/index.es51.js +14 -0
  112. package/dist/index.es51.js.map +1 -0
  113. package/dist/index.es52.js +9 -0
  114. package/dist/index.es52.js.map +1 -0
  115. package/dist/index.es53.js +25 -0
  116. package/dist/index.es53.js.map +1 -0
  117. package/dist/index.es54.js +23 -0
  118. package/dist/index.es54.js.map +1 -0
  119. package/dist/index.es55.js +23 -0
  120. package/dist/index.es55.js.map +1 -0
  121. package/dist/index.es56.js +50 -0
  122. package/dist/index.es56.js.map +1 -0
  123. package/dist/index.es57.js +30 -0
  124. package/dist/index.es57.js.map +1 -0
  125. package/dist/index.es58.js +19 -0
  126. package/dist/index.es58.js.map +1 -0
  127. package/dist/index.es59.js +245 -0
  128. package/dist/index.es59.js.map +1 -0
  129. package/dist/index.es6.js +1 -1
  130. package/dist/index.es60.js +7 -0
  131. package/dist/index.es60.js.map +1 -0
  132. package/dist/index.es7.js +1 -1
  133. package/dist/index.es8.js +1 -1
  134. package/dist/styles.css +206 -0
  135. package/package.json +5 -3
@@ -1,88 +1,48 @@
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
1
+ import t from "react";
2
+ import { cva as s } from "class-variance-authority";
3
+ import { cn as o } from "./index.es52.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]",
7
+ {
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
+ }
19
+ }
20
+ ), m = ({
21
+ className: e,
22
+ variant: r,
23
+ href: a,
24
+ target: p,
25
+ ...i
19
26
  }) => {
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",
27
+ const h = u("LinkWrapper");
28
+ return p === "_blank" ? /* @__PURE__ */ t.createElement(
29
+ "a",
33
30
  {
34
- className: a("relative w-full max-w-2xl", b),
35
- onMouseEnter: () => u(!0),
36
- onMouseLeave: () => u(!1)
37
- },
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
- );
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
+ ));
84
44
  };
85
45
  export {
86
- B as default
46
+ m as TagLink
87
47
  };
88
48
  //# sourceMappingURL=index.es36.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es36.js","sources":["../src/components/ui/input/SearchInputWithButton.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from \"react\";\r\n\r\nimport { Button } from \"../button\";\r\nimport { Close16X16 } from \"@iit/precision-ui-icons\";\r\nimport { Input } from \"@/components/ui/input\";\r\nimport { SearchIcon } from \"lucide-react\";\r\nimport { cn } from \"@/lib/utils/cn\";\r\n\r\ninterface SearchInputWithButtonProps {\r\n id?: string;\r\n placeholder?: string;\r\n className?: string;\r\n containerClassName?: string;\r\n value?: string;\r\n onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;\r\n onKeyDown?: (event: React.KeyboardEvent<HTMLInputElement>) => void;\r\n onClickSubmitButton?: () => void;\r\n onClickClearButton?: () => void;\r\n withoutBottomBorder?: boolean;\r\n}\r\n\r\nconst SearchInputWithButton: React.FC<SearchInputWithButtonProps> = ({\r\n id,\r\n placeholder,\r\n className,\r\n containerClassName,\r\n value = \"\",\r\n onChange,\r\n onKeyDown,\r\n onClickSubmitButton,\r\n onClickClearButton,\r\n withoutBottomBorder,\r\n ...props\r\n}) => {\r\n const [inputValue, setInputValue] = useState(value);\r\n const [isHovered, setIsHovered] = useState(false); // Track hover state\r\n const inputRef = useRef<HTMLInputElement>(null);\r\n\r\n useEffect(() => {\r\n setInputValue(value);\r\n }, [value]);\r\n\r\n const handleInputChange = (event: React.ChangeEvent<HTMLInputElement>) => {\r\n setInputValue(event.target.value);\r\n if (onChange) {\r\n onChange(event);\r\n }\r\n };\r\n\r\n const handleClearClick = () => {\r\n setInputValue(\"\");\r\n if (inputRef.current) {\r\n inputRef.current.focus();\r\n }\r\n if (onChange) {\r\n onChange({\r\n target: { value: \"\" },\r\n } as React.ChangeEvent<HTMLInputElement>);\r\n }\r\n if (onClickClearButton) {\r\n onClickClearButton();\r\n }\r\n };\r\n\r\n return (\r\n <div\r\n className={cn(\"relative w-full max-w-2xl\", containerClassName)}\r\n onMouseEnter={() => setIsHovered(true)}\r\n onMouseLeave={() => setIsHovered(false)}\r\n >\r\n <Input\r\n ref={inputRef}\r\n id={id}\r\n placeholder={placeholder}\r\n className={cn(\r\n \"w-full pl-8 pr-20 hover:bg-navy-opacity-4-absolute rounded-full bg-whitish h-14\",\r\n className,\r\n withoutBottomBorder && \"border-b border-transparent\"\r\n )}\r\n value={inputValue}\r\n onChange={handleInputChange}\r\n onKeyDown={onKeyDown}\r\n {...props}\r\n />\r\n <Button\r\n type=\"button\"\r\n variant=\"ghost\"\r\n size=\"icon\"\r\n className={cn(\r\n \"absolute right-14 top-1/2 -translate-y-1/2 h-5 w-5 text-muted-foreground p-0 hover:bg-navy group\",\r\n isHovered ? \"bg-white\" : \"bg-navy-opacity-8\"\r\n )}\r\n onClick={handleClearClick}\r\n style={{ display: inputValue ? \"block\" : \"none\" }}\r\n >\r\n <Close16X16 className=\"h-[10px] w-[10px] left-[5px] top-0 relative text-navy group-hover:text-whitish\" />\r\n <span className=\"sr-only\">Очистить</span>\r\n </Button>\r\n\r\n <Button\r\n className={cn(\r\n \"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\",\r\n isHovered ? \"bg-white\" : \"bg-navy-opacity-8\"\r\n )}\r\n disabled={!inputValue}\r\n onClick={onClickSubmitButton || undefined}\r\n >\r\n <SearchIcon className=\"h-4 w-4 group-hover/submit:text-whitish\" />\r\n </Button>\r\n </div>\r\n );\r\n};\r\n\r\nexport default SearchInputWithButton;\r\n"],"names":["SearchInputWithButton","id","placeholder","className","containerClassName","value","onChange","onKeyDown","onClickSubmitButton","onClickClearButton","withoutBottomBorder","props","inputValue","setInputValue","useState","isHovered","setIsHovered","inputRef","useRef","useEffect","handleInputChange","event","handleClearClick","React","cn","Input","Button","Close16X16","SearchIcon"],"mappings":";;;;;;AAqBA,MAAMA,IAA8D,CAAC;AAAA,EACnE,IAAAC;AAAA,EACA,aAAAC;AAAA,EACA,WAAAC;AAAA,EACA,oBAAAC;AAAA,EACA,OAAAC,IAAQ;AAAA,EACR,UAAAC;AAAA,EACA,WAAAC;AAAA,EACA,qBAAAC;AAAA,EACA,oBAAAC;AAAA,EACA,qBAAAC;AAAA,EACA,GAAGC;AACL,MAAM;AACJ,QAAM,CAACC,GAAYC,CAAa,IAAIC,EAAST,CAAK,GAC5C,CAACU,GAAWC,CAAY,IAAIF,EAAS,EAAK,GAC1CG,IAAWC,EAAyB,IAAI;AAE9C,EAAAC,EAAU,MAAM;AACd,IAAAN,EAAcR,CAAK;AAAA,EAAA,GAClB,CAACA,CAAK,CAAC;AAEJ,QAAAe,IAAoB,CAACC,MAA+C;AAC1D,IAAAR,EAAAQ,EAAM,OAAO,KAAK,GAC5Bf,KACFA,EAASe,CAAK;AAAA,EAChB,GAGIC,IAAmB,MAAM;AAC7B,IAAAT,EAAc,EAAE,GACZI,EAAS,WACXA,EAAS,QAAQ,SAEfX,KACOA,EAAA;AAAA,MACP,QAAQ,EAAE,OAAO,GAAG;AAAA,IAAA,CACkB,GAEtCG,KACiBA;EACrB;AAIA,SAAAc,gBAAAA,EAAA;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWC,EAAG,6BAA6BpB,CAAkB;AAAA,MAC7D,cAAc,MAAMY,EAAa,EAAI;AAAA,MACrC,cAAc,MAAMA,EAAa,EAAK;AAAA,IAAA;AAAA,IAEtCO,gBAAAA,EAAA;AAAA,MAACE;AAAA,MAAA;AAAA,QACC,KAAKR;AAAA,QACL,IAAAhB;AAAA,QACA,aAAAC;AAAA,QACA,WAAWsB;AAAA,UACT;AAAA,UACArB;AAAA,UACAO,KAAuB;AAAA,QACzB;AAAA,QACA,OAAOE;AAAA,QACP,UAAUQ;AAAA,QACV,WAAAb;AAAA,QACC,GAAGI;AAAA,MAAA;AAAA,IACN;AAAA,IACAY,gBAAAA,EAAA;AAAA,MAACG;AAAA,MAAA;AAAA,QACC,MAAK;AAAA,QACL,SAAQ;AAAA,QACR,MAAK;AAAA,QACL,WAAWF;AAAA,UACT;AAAA,UACAT,IAAY,aAAa;AAAA,QAC3B;AAAA,QACA,SAASO;AAAA,QACT,OAAO,EAAE,SAASV,IAAa,UAAU,OAAO;AAAA,MAAA;AAAA,MAEhDW,gBAAAA,EAAA,cAACI,GAAW,EAAA,WAAU,iFAAiF,CAAA;AAAA,MACtGJ,gBAAAA,EAAA,cAAA,QAAA,EAAK,WAAU,UAAA,GAAU,UAAQ;AAAA,IACpC;AAAA,IAEAA,gBAAAA,EAAA;AAAA,MAACG;AAAA,MAAA;AAAA,QACC,WAAWF;AAAA,UACT;AAAA,UACAT,IAAY,aAAa;AAAA,QAC3B;AAAA,QACA,UAAU,CAACH;AAAA,QACX,SAASJ,KAAuB;AAAA,MAAA;AAAA,MAEhCe,gBAAAA,EAAA,cAACK,GAAW,EAAA,WAAU,0CAA0C,CAAA;AAAA,IAClE;AAAA,EAAA;AAGN;"}
1
+ {"version":3,"file":"index.es36.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,22 +1,27 @@
1
- import l from "./index.es26.js";
1
+ import { Views20X20 as c, TimeToRead20X20 as o, Date20X20 as i } from "@iit/precision-ui-icons";
2
2
  import e from "react";
3
- import o from "./index.es17.js";
4
- import n from "./index.es27.js";
5
- import { getAdapter as i } from "./index.es9.js";
6
- const g = ({ title: t, desc: a, icon: r }) => {
7
- const m = i("ImageWrapper");
8
- return /* @__PURE__ */ e.createElement("div", { className: "p-6 bg-whitish rounded-lg h-full" }, /* @__PURE__ */ e.createElement("div", { className: "p-4 bg-turquoise-opacity-20 rounded-lg mb-12 inline-flex" }, /* @__PURE__ */ e.createElement(
9
- m,
10
- {
11
- src: r,
12
- alt: `Изображение для ${t}`,
13
- width: 32,
14
- height: 32,
15
- className: "object-contain"
16
- }
17
- )), /* @__PURE__ */ e.createElement(l, { level: 5, className: "mb-2" }, t), a && /* @__PURE__ */ e.createElement(n, { variant: "small-body", className: "text-navy-opacity-60", as: "div" }, /* @__PURE__ */ e.createElement(o, { html: a })));
18
- };
3
+ import m from "./index.es45.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;
19
24
  export {
20
- g as default
25
+ f as default
21
26
  };
22
27
  //# sourceMappingURL=index.es37.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es37.js","sources":["../src/components/cards/Advantage.tsx"],"sourcesContent":["import Heading from '@/components/core/typography/Heading'\r\nimport React from 'react'\r\nimport SafeHtmlRenderer from '../SafeHtml'\r\nimport Text from '@/components/core/typography/Text'\r\nimport { getAdapter } from '@/Adapters'\r\n\r\nexport interface AdvantageProps {\r\n title: string\r\n desc?: string\r\n icon: string\r\n}\r\n\r\nconst Advantage: React.FC<AdvantageProps> = ({ title, desc, icon }) => {\r\n const ImageWrapper = getAdapter('ImageWrapper')\r\n\r\n return (\r\n <div className=\"p-6 bg-whitish rounded-lg h-full\">\r\n <div className=\"p-4 bg-turquoise-opacity-20 rounded-lg mb-12 inline-flex\">\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 <Heading level={5} className=\"mb-2\">\r\n {title}\r\n </Heading>\r\n {desc && (\r\n <Text variant=\"small-body\" className=\"text-navy-opacity-60\" as={'div'}>\r\n <SafeHtmlRenderer html={desc} />\r\n </Text>\r\n )}\r\n </div>\r\n )\r\n}\r\n\r\nexport default Advantage\r\n"],"names":["Advantage","title","desc","icon","ImageWrapper","getAdapter","React","Heading","Text","SafeHtmlRenderer"],"mappings":";;;;;AAYA,MAAMA,IAAsC,CAAC,EAAE,OAAAC,GAAO,MAAAC,GAAM,MAAAC,QAAW;AAC/D,QAAAC,IAAeC,EAAW,cAAc;AAE9C,yCACG,OAAI,EAAA,WAAU,sCACZC,gBAAAA,EAAA,cAAA,OAAA,EAAI,WAAU,2DACb,GAAAA,gBAAAA,EAAA;AAAA,IAACF;AAAA,IAAA;AAAA,MACC,KAAKD;AAAA,MACL,KAAK,mBAAmBF,CAAK;AAAA,MAC7B,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,WAAU;AAAA,IAAA;AAAA,EAEd,CAAA,GACAK,gBAAAA,EAAA,cAACC,GAAQ,EAAA,OAAO,GAAG,WAAU,OAAA,GAC1BN,CACH,GACCC,KACCI,gBAAAA,EAAA,cAACE,KAAK,SAAQ,cAAa,WAAU,wBAAuB,IAAI,MAAA,mCAC7DC,GAAiB,EAAA,MAAMP,EAAM,CAAA,CAChC,CAEJ;AAEJ;"}
1
+ {"version":3,"file":"index.es37.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,49 +1,42 @@
1
- import e, { Fragment as v } from "react";
2
- import { Tag as u } from "./index.es20.js";
3
- import E from "./index.es6.js";
4
- import h from "./index.es26.js";
5
- import g from "./index.es17.js";
6
- import x from "./index.es27.js";
7
- import { cn as N } from "./index.es31.js";
8
- import { getAdapter as o } from "./index.es9.js";
9
- const A = ({
10
- title: t,
11
- desc: a,
12
- icon: r,
13
- tags: c,
14
- link: m,
15
- size: i
1
+ import { CarouselWrapper as m } from "./index.es56.js";
2
+ import r from "react";
3
+ import n from "./index.es45.js";
4
+ const p = ({
5
+ items: t,
6
+ renderItem: s,
7
+ columns: l = 4,
8
+ hideControlsOnDesktop: d = !1,
9
+ withoutCarousel: i = !1,
10
+ // TODO: add to props chain
11
+ footnote: c,
12
+ variant: g
16
13
  }) => {
17
- const l = `${i === 2 ? "sm:col-span-2" : "sm:col-span-1"} p-6 bg-whitish rounded-lg h-full`, p = o("LinkWrapper"), f = o("ImageWrapper"), n = /* @__PURE__ */ e.createElement(v, null, /* @__PURE__ */ e.createElement("div", { className: "flex space-x-2" }, c.map((s, d) => /* @__PURE__ */ e.createElement(u, { key: d, variant: s.color }, s.title))), r && /* @__PURE__ */ e.createElement("div", { className: "flex justify-center mt-12" }, /* @__PURE__ */ e.createElement(
18
- f,
19
- {
20
- src: r,
21
- alt: `Изображение для ${t}`,
22
- width: 64,
23
- height: 64
14
+ const o = (e) => {
15
+ switch (e) {
16
+ case 1:
17
+ return "grid grid-cols-1 gap-3";
18
+ case 2:
19
+ return "grid grid-cols-1 sm:grid-cols-2 gap-3";
20
+ case 3:
21
+ return "grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-3";
22
+ case 4:
23
+ return "grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 gap-3";
24
+ default:
25
+ return "grid grid-cols-1 gap-3";
24
26
  }
25
- )), /* @__PURE__ */ e.createElement("div", { className: "space-y-2 mt-[88px]" }, /* @__PURE__ */ e.createElement(h, { level: 4, as: "div" }, t), a && /* @__PURE__ */ e.createElement(x, { variant: "small-body", className: "text-navy-opacity-60", as: "div" }, /* @__PURE__ */ e.createElement(g, { html: a, className: "inline" }))));
26
- return m ? /* @__PURE__ */ e.createElement(
27
- p,
27
+ };
28
+ return /* @__PURE__ */ r.createElement("div", null, i ? /* @__PURE__ */ r.createElement("div", { className: o(l) }, t.map((e, a) => /* @__PURE__ */ r.createElement(r.Fragment, { key: a }, s(e, a)))) : /* @__PURE__ */ r.createElement(
29
+ m,
28
30
  {
29
- href: m,
30
- className: N(
31
- l,
32
- "flex flex-col h-full justify-between items-start transition-all bottom-0 hover:bottom-1 transform duration-300 relative"
33
- )
34
- },
35
- /* @__PURE__ */ e.createElement("div", null, n),
36
- /* @__PURE__ */ e.createElement(
37
- E,
38
- {
39
- icon: "arrowRight",
40
- className: "mt-6"
41
- },
42
- "Подробнее"
43
- )
44
- ) : /* @__PURE__ */ e.createElement("div", { className: l }, n);
45
- };
31
+ items: t,
32
+ renderItem: (e, a) => s(e, a),
33
+ columns: l,
34
+ hideControlsOnDesktop: d,
35
+ variant: g
36
+ }
37
+ ), c && /* @__PURE__ */ r.createElement("div", { className: "mt-6" }, /* @__PURE__ */ r.createElement(n, { variant: "small-body", as: "div" }, c)));
38
+ }, v = p;
46
39
  export {
47
- A as default
40
+ v as default
48
41
  };
49
42
  //# sourceMappingURL=index.es38.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es38.js","sources":["../src/components/cards/Advantage2.tsx"],"sourcesContent":["import React, { Fragment } from 'react'\r\nimport { Tag, TagItemProps } from '../ui/Tag'\r\n\r\nimport { ButtonText } from '../ui/button'\r\nimport Heading from '../core/typography/Heading'\r\nimport SafeHtmlRenderer from '../SafeHtml'\r\nimport Text from '../core/typography/Text'\r\nimport { cn } from '@/lib/utils/cn'\r\nimport { getAdapter } from '@/Adapters'\r\n\r\nexport interface Advantage2Props {\r\n title: string\r\n desc?: string\r\n icon?: string\r\n tags: TagItemProps[]\r\n link?: string\r\n size?: 1 | 2\r\n}\r\n\r\nconst Advantage2: React.FC<Advantage2Props> = ({\r\n title,\r\n desc,\r\n icon,\r\n tags,\r\n link,\r\n size,\r\n}) => {\r\n const sizeCls = size === 2 ? 'sm:col-span-2' : 'sm:col-span-1'\r\n const classes = `${sizeCls} p-6 bg-whitish rounded-lg h-full`\r\n\r\n const LinkWrapper = getAdapter('LinkWrapper')\r\n const ImageWrapper = getAdapter('ImageWrapper')\r\n\r\n const component = (\r\n <Fragment>\r\n <div className=\"flex space-x-2\">\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 {icon && (\r\n <div className=\"flex justify-center mt-12\">\r\n <ImageWrapper\r\n src={icon}\r\n alt={`Изображение для ${title}`}\r\n width={64}\r\n height={64}\r\n // className=\"object-contain\"\r\n />\r\n </div>\r\n )}\r\n\r\n <div className=\"space-y-2 mt-[88px]\">\r\n <Heading level={4} as=\"div\">\r\n {title}\r\n </Heading>\r\n {desc && (\r\n <Text variant=\"small-body\" className=\"text-navy-opacity-60\" as=\"div\">\r\n <SafeHtmlRenderer html={desc} className=\"inline\" />\r\n </Text>\r\n )}\r\n </div>\r\n </Fragment>\r\n )\r\n\r\n if (link) {\r\n return (\r\n <LinkWrapper\r\n href={link}\r\n className={cn(\r\n classes,\r\n 'flex flex-col h-full justify-between items-start transition-all bottom-0 hover:bottom-1 transform duration-300 relative'\r\n )}\r\n >\r\n <div>{component}</div>\r\n {/* TODO: here is the button, should be a link */}\r\n <ButtonText\r\n icon=\"arrowRight\"\r\n className=\"mt-6\"\r\n // variant={variant === \"navy\" ? \"white\" : \"default\"}\r\n >\r\n Подробнее\r\n </ButtonText>\r\n </LinkWrapper>\r\n )\r\n }\r\n\r\n return <div className={classes}>{component}</div>\r\n}\r\n\r\nexport default Advantage2\r\n"],"names":["Advantage2","title","desc","icon","tags","link","size","classes","LinkWrapper","getAdapter","ImageWrapper","component","React","Fragment","tag","index","Tag","Heading","Text","SafeHtmlRenderer","cn","ButtonText"],"mappings":";;;;;;;;AAmBA,MAAMA,IAAwC,CAAC;AAAA,EAC7C,OAAAC;AAAA,EACA,MAAAC;AAAA,EACA,MAAAC;AAAA,EACA,MAAAC;AAAA,EACA,MAAAC;AAAA,EACA,MAAAC;AACF,MAAM;AAEE,QAAAC,IAAU,GADAD,MAAS,IAAI,kBAAkB,eACrB,qCAEpBE,IAAcC,EAAW,aAAa,GACtCC,IAAeD,EAAW,cAAc,GAExCE,IACJC,gBAAAA,EAAA,cAACC,GACC,MAAAD,gBAAAA,EAAA,cAAC,OAAI,EAAA,WAAU,iBACZ,GAAAR,EAAK,IAAI,CAACU,GAAKC,MACbH,gBAAAA,EAAA,cAAAI,GAAA,EAAI,KAAKD,GAAO,SAASD,EAAI,MAC3B,GAAAA,EAAI,KACP,CACD,CACH,GAECX,KACCS,gBAAAA,EAAA,cAAC,OAAI,EAAA,WAAU,4BACb,GAAAA,gBAAAA,EAAA;AAAA,IAACF;AAAA,IAAA;AAAA,MACC,KAAKP;AAAA,MACL,KAAK,mBAAmBF,CAAK;AAAA,MAC7B,OAAO;AAAA,MACP,QAAQ;AAAA,IAAA;AAAA,EAAA,CAGZ,GAGDW,gBAAAA,EAAA,cAAA,OAAA,EAAI,WAAU,sBAAA,GACZA,gBAAAA,EAAA,cAAAK,GAAA,EAAQ,OAAO,GAAG,IAAG,MAAA,GACnBhB,CACH,GACCC,KACEU,gBAAAA,EAAA,cAAAM,GAAA,EAAK,SAAQ,cAAa,WAAU,wBAAuB,IAAG,SAC7DN,gBAAAA,EAAA,cAACO,GAAiB,EAAA,MAAMjB,GAAM,WAAU,SAAS,CAAA,CACnD,CAEJ,CACF;AAGF,SAAIG,IAEAO,gBAAAA,EAAA;AAAA,IAACJ;AAAA,IAAA;AAAA,MACC,MAAMH;AAAA,MACN,WAAWe;AAAA,QACTb;AAAA,QACA;AAAA,MACF;AAAA,IAAA;AAAA,IAEAK,gBAAAA,EAAA,cAAC,aAAKD,CAAU;AAAA,IAEhBC,gBAAAA,EAAA;AAAA,MAACS;AAAA,MAAA;AAAA,QACC,MAAK;AAAA,QACL,WAAU;AAAA,MAAA;AAAA,MAEX;AAAA,IAED;AAAA,EAAA,IAKET,gBAAAA,EAAA,cAAA,OAAA,EAAI,WAAWL,EAAA,GAAUI,CAAU;AAC7C;"}
1
+ {"version":3,"file":"index.es38.js","sources":["../src/components/GridIterator.tsx"],"sourcesContent":["import { CarouselWrapper } from '@/decorators/CarouselWrapper'\r\nimport React from 'react'\r\nimport Text from './core/typography/Text'\r\n\r\n// import { getAdapter } from '@/Adapters'\r\n\r\ninterface GridIteratorProps<T> {\r\n items: T[]\r\n renderItem: (item: T, index: number) => React.ReactNode\r\n columns?: number\r\n hideControlsOnDesktop?: boolean\r\n withoutCarousel?: boolean\r\n footnote?: string\r\n variant?: 'default' | 'white'\r\n}\r\n\r\nconst GridIterator = <T,>({\r\n items,\r\n renderItem,\r\n columns = 4,\r\n hideControlsOnDesktop = false,\r\n withoutCarousel = false, // TODO: add to props chain\r\n footnote,\r\n variant,\r\n}: GridIteratorProps<T>) => {\r\n const getGridClasses = (columns: number) => {\r\n switch (columns) {\r\n case 1:\r\n return 'grid grid-cols-1 gap-3'\r\n case 2:\r\n return 'grid grid-cols-1 sm:grid-cols-2 gap-3'\r\n case 3:\r\n return 'grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-3'\r\n case 4:\r\n return 'grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 gap-3'\r\n default:\r\n return 'grid grid-cols-1 gap-3'\r\n }\r\n }\r\n // const CarouselWrapper = getAdapter('CarouselWrapper')\r\n\r\n return (\r\n <div>\r\n {withoutCarousel ? (\r\n <div className={getGridClasses(columns)}>\r\n {items.map((item, index) => (\r\n <React.Fragment key={index}>\r\n {renderItem(item, index)}\r\n </React.Fragment>\r\n ))}\r\n </div>\r\n ) : (\r\n <CarouselWrapper\r\n items={items}\r\n // renderItem={renderItem}\r\n renderItem={(item, index) => renderItem(item as T, index)}\r\n columns={columns}\r\n hideControlsOnDesktop={hideControlsOnDesktop}\r\n variant={variant}\r\n />\r\n )}\r\n\r\n {footnote && (\r\n <div className=\"mt-6\">\r\n <Text variant=\"small-body\" as=\"div\">\r\n {footnote}\r\n </Text>\r\n </div>\r\n )}\r\n </div>\r\n )\r\n}\r\n\r\nexport default GridIterator\r\n"],"names":["GridIterator","items","renderItem","columns","hideControlsOnDesktop","withoutCarousel","footnote","variant","getGridClasses","React","item","index","CarouselWrapper","Text","GridIterator$1"],"mappings":";;;AAgBA,MAAMA,IAAe,CAAK;AAAA,EACxB,OAAAC;AAAA,EACA,YAAAC;AAAA,EACA,SAAAC,IAAU;AAAA,EACV,uBAAAC,IAAwB;AAAA,EACxB,iBAAAC,IAAkB;AAAA;AAAA,EAClB,UAAAC;AAAA,EACA,SAAAC;AACF,MAA4B;AACpB,QAAAC,IAAiB,CAACL,MAAoB;AAC1C,YAAQA,GAAS;AAAA,MACf,KAAK;AACI,eAAA;AAAA,MACT,KAAK;AACI,eAAA;AAAA,MACT,KAAK;AACI,eAAA;AAAA,MACT,KAAK;AACI,eAAA;AAAA,MACT;AACS,eAAA;AAAA,IACX;AAAA,EAAA;AAKA,SAAAM,gBAAAA,EAAA,cAAC,OACE,MAAAJ,IACEI,gBAAAA,EAAA,cAAA,OAAA,EAAI,WAAWD,EAAeL,CAAO,EAAA,GACnCF,EAAM,IAAI,CAACS,GAAMC,MACfF,gBAAAA,EAAA,cAAAA,EAAM,UAAN,EAAe,KAAKE,EAAA,GAClBT,EAAWQ,GAAMC,CAAK,CACzB,CACD,CACH,IAEAF,gBAAAA,EAAA;AAAA,IAACG;AAAA,IAAA;AAAA,MACC,OAAAX;AAAA,MAEA,YAAY,CAACS,GAAMC,MAAUT,EAAWQ,GAAWC,CAAK;AAAA,MACxD,SAAAR;AAAA,MACA,uBAAAC;AAAA,MACA,SAAAG;AAAA,IAAA;AAAA,EAAA,GAIHD,KACEG,gBAAAA,EAAA,cAAA,OAAA,EAAI,WAAU,OACb,GAAAA,gBAAAA,EAAA,cAACI,GAAK,EAAA,SAAQ,cAAa,IAAG,SAC3BP,CACH,CACF,CAEJ;AAEJ,GAEAQ,IAAed;"}
@@ -1,56 +1,31 @@
1
- import { Tag as E } from "./index.es20.js";
2
- import b from "./index.es6.js";
3
- import m from "./index.es26.js";
1
+ import s from "./index.es44.js";
2
+ import { HeroButton as i } from "./index.es40.js";
4
3
  import e from "react";
5
- import s from "./index.es27.js";
6
- import { cn as h } from "./index.es31.js";
7
- import { cva as y } from "class-variance-authority";
8
- import { getAdapter as N } from "./index.es9.js";
9
- const _ = ({
10
- size: l,
11
- tags: o,
12
- link: n,
13
- title: i,
14
- desc: t,
15
- className: c,
16
- showDivider: p,
17
- price: d,
18
- oldPrice: a,
19
- detailsText: v
20
- }) => {
21
- const f = y(
22
- "p-6 pb-4 bg-whitish rounded-lg transition-all bottom-0 transform duration-300 hover:scale1-[1.015] border border-transparent hover:border-sapphire1 relative hover:bottom-1 cursor-pointer col-span-1 flex flex-col justify-between items-start sm:min-h-[264px] h-full",
4
+ import n from "./index.es19.js";
5
+ import p from "./index.es45.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,
23
11
  {
24
- variants: {
25
- size: {
26
- 1: "sm:col-span-1",
27
- 2: "sm:col-span-2",
28
- 3: "sm:col-span-3",
29
- 4: "sm:col-span-4"
30
- }
31
- },
32
- defaultVariants: {
33
- size: 1
34
- }
35
- }
36
- ), x = N("LinkWrapper");
37
- return /* @__PURE__ */ e.createElement(x, { href: n, className: h(f({ size: l, className: c })) }, /* @__PURE__ */ e.createElement("div", { "data-test-id": "content-container" }, /* @__PURE__ */ e.createElement("div", { className: "flex space-x-2" }, o.map((r, u) => /* @__PURE__ */ e.createElement(E, { key: u, variant: r.color }, r.title))), /* @__PURE__ */ e.createElement("div", { className: "space-y-2" }, /* @__PURE__ */ e.createElement(m, { level: 5, className: "mt-6 lg:max-w-sm", as: "div" }, i), t && /* @__PURE__ */ e.createElement(
38
- s,
39
- {
40
- variant: "small-body",
41
- className: "text-navy-opacity-60 lg:max-w-sm"
12
+ variant: "body",
13
+ className: "text-whitish-opacity-60",
14
+ as: "div"
42
15
  },
43
- t
44
- ))), /* @__PURE__ */ e.createElement("div", { className: "mt-2 sm:mt-6 space-y-6 w-full" }, p && /* @__PURE__ */ e.createElement("div", { className: "border-t border-navy-opacity-16" }), /* @__PURE__ */ e.createElement("div", { className: "flex space-x-4 items-baseline" }, a && /* @__PURE__ */ e.createElement(
45
- s,
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,
46
19
  {
47
- variant: "caption",
48
- className: "text-navy-opacity-40 line-through"
49
- },
50
- a
51
- ), /* @__PURE__ */ e.createElement(m, { level: 4, as: "div" }, d)), /* @__PURE__ */ e.createElement(b, { icon: "arrowRight" }, v || "Подробнее")));
52
- };
20
+ src: a,
21
+ alt: t,
22
+ width: 654,
23
+ height: 570,
24
+ objectFit: "contain"
25
+ }
26
+ ))));
27
+ }, N = f;
53
28
  export {
54
- _ as default
29
+ N as default
55
30
  };
56
31
  //# sourceMappingURL=index.es39.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es39.js","sources":["../src/components/cards/FeaturedCard.tsx"],"sourcesContent":["import { Tag, TagItemProps } from '../ui/Tag'\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 { cva } from 'class-variance-authority'\r\nimport { getAdapter } from '@/Adapters'\r\n\r\nexport interface FeaturedCardProps {\r\n size: 1 | 2 | 3 | 4\r\n tags: TagItemProps[]\r\n link: string\r\n title: string\r\n desc?: string\r\n className?: string\r\n showDivider?: boolean\r\n price?: string\r\n oldPrice?: string\r\n detailsText?: string\r\n}\r\n\r\nconst FeaturedCard: React.FC<FeaturedCardProps> = ({\r\n size,\r\n tags,\r\n link,\r\n title,\r\n desc,\r\n className,\r\n showDivider,\r\n price,\r\n oldPrice,\r\n detailsText,\r\n}) => {\r\n const cardStyles = cva(\r\n 'p-6 pb-4 bg-whitish rounded-lg transition-all bottom-0 transform duration-300 hover:scale1-[1.015] border border-transparent hover:border-sapphire1 relative hover:bottom-1 cursor-pointer col-span-1 flex flex-col justify-between items-start sm:min-h-[264px] h-full',\r\n {\r\n variants: {\r\n size: {\r\n 1: 'sm:col-span-1',\r\n 2: 'sm:col-span-2',\r\n 3: 'sm:col-span-3',\r\n 4: 'sm:col-span-4',\r\n },\r\n },\r\n defaultVariants: {\r\n size: 1,\r\n },\r\n }\r\n )\r\n\r\n const LinkWrapper = getAdapter('LinkWrapper')\r\n\r\n return (\r\n <LinkWrapper href={link} className={cn(cardStyles({ size, className }))}>\r\n <div data-test-id=\"content-container\">\r\n <div className=\"flex space-x-2\">\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 <div className=\"space-y-2\">\r\n <Heading level={5} className=\"mt-6 lg:max-w-sm\" as={'div'}>\r\n {title}\r\n </Heading>\r\n {desc && (\r\n <Text\r\n variant=\"small-body\"\r\n className=\"text-navy-opacity-60 lg:max-w-sm\"\r\n >\r\n {desc}\r\n </Text>\r\n )}\r\n </div>\r\n </div>\r\n {/* TODO: here is the button, should be a link */}\r\n <div className=\"mt-2 sm:mt-6 space-y-6 w-full\">\r\n {showDivider && <div className=\"border-t border-navy-opacity-16\"></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={4} as={'div'}>\r\n {price}\r\n </Heading>\r\n </div>\r\n <ButtonText icon=\"arrowRight\">{detailsText || 'Подробнее'}</ButtonText>\r\n </div>\r\n </LinkWrapper>\r\n )\r\n}\r\n\r\nexport default FeaturedCard\r\n"],"names":["FeaturedCard","size","tags","link","title","desc","className","showDivider","price","oldPrice","detailsText","cardStyles","cva","LinkWrapper","getAdapter","React","cn","tag","index","Tag","Heading","Text","ButtonText"],"mappings":";;;;;;;;AAuBA,MAAMA,IAA4C,CAAC;AAAA,EACjD,MAAAC;AAAA,EACA,MAAAC;AAAA,EACA,MAAAC;AAAA,EACA,OAAAC;AAAA,EACA,MAAAC;AAAA,EACA,WAAAC;AAAA,EACA,aAAAC;AAAA,EACA,OAAAC;AAAA,EACA,UAAAC;AAAA,EACA,aAAAC;AACF,MAAM;AACJ,QAAMC,IAAaC;AAAA,IACjB;AAAA,IACA;AAAA,MACE,UAAU;AAAA,QACR,MAAM;AAAA,UACJ,GAAG;AAAA,UACH,GAAG;AAAA,UACH,GAAG;AAAA,UACH,GAAG;AAAA,QACL;AAAA,MACF;AAAA,MACA,iBAAiB;AAAA,QACf,MAAM;AAAA,MACR;AAAA,IACF;AAAA,EAAA,GAGIC,IAAcC,EAAW,aAAa;AAG1C,SAAAC,gBAAAA,EAAA,cAACF,GAAY,EAAA,MAAMV,GAAM,WAAWa,EAAGL,EAAW,EAAE,MAAAV,GAAM,WAAAK,EAAW,CAAA,CAAC,KACnES,gBAAAA,EAAA,cAAA,OAAA,EAAI,gBAAa,oBAAA,GACfA,gBAAAA,EAAA,cAAA,OAAA,EAAI,WAAU,iBACZ,GAAAb,EAAK,IAAI,CAACe,GAAKC,sCACbC,GAAI,EAAA,KAAKD,GAAO,SAASD,EAAI,MAAA,GAC3BA,EAAI,KACP,CACD,CACH,GACCF,gBAAAA,EAAA,cAAA,OAAA,EAAI,WAAU,YACb,GAAAA,gBAAAA,EAAA,cAACK,GAAQ,EAAA,OAAO,GAAG,WAAU,oBAAmB,IAAI,MAAA,GACjDhB,CACH,GACCC,KACCU,gBAAAA,EAAA;AAAA,IAACM;AAAA,IAAA;AAAA,MACC,SAAQ;AAAA,MACR,WAAU;AAAA,IAAA;AAAA,IAEThB;AAAA,EAGP,CAAA,CACF,GAECU,gBAAAA,EAAA,cAAA,OAAA,EAAI,WAAU,mCACZR,KAAgBQ,gBAAAA,EAAA,cAAA,OAAA,EAAI,WAAU,kCAAkC,CAAA,mCAChE,OAAI,EAAA,WAAU,mCACZN,KACCM,gBAAAA,EAAA;AAAA,IAACM;AAAA,IAAA;AAAA,MACC,SAAQ;AAAA,MACR,WAAU;AAAA,IAAA;AAAA,IAETZ;AAAA,EAAA,GAGJM,gBAAAA,EAAA,cAAAK,GAAA,EAAQ,OAAO,GAAG,IAAI,MACpB,GAAAZ,CACH,CACF,mCACCc,GAAW,EAAA,MAAK,gBAAcZ,KAAe,WAAY,CAC5D,CACF;AAEJ;"}
1
+ {"version":3,"file":"index.es39.js","sources":["../src/sections/CTA.tsx"],"sourcesContent":["import { CommonButtonProps } from './common'\r\nimport Heading from '@/components/core/typography/Heading'\r\nimport { HeroButton } from './Hero'\r\nimport React from 'react'\r\nimport SafeHtmlRenderer from '@/components/SafeHtml'\r\nimport Text from '@/components/core/typography/Text'\r\nimport { getAdapter } from '@/Adapters'\r\n\r\nexport interface CTAProps {\r\n title: string\r\n desc: string\r\n img: string\r\n buttons: CommonButtonProps[]\r\n}\r\n\r\nconst CTA: React.FC<CTAProps> = ({ title, desc, img, buttons }) => {\r\n const ImageWrapper = getAdapter('ImageWrapper')\r\n\r\n return (\r\n <section className=\"container\">\r\n <div className=\"mx-auto w-full h-[606px]1 bg-gradient-to-b from-navy to-sapphire text-white rounded-2xl px-6 relative xl:min-h-[500px]\">\r\n <div className=\"space-y-12 relative z-10\">\r\n <div className=\"w-full grid grid-cols-1 lg:grid-cols-2\">\r\n <div></div>\r\n <div className=\"space-y-12 mb-24 mt-[128px] pr-8 lg:pr-8 xl:pr-28\">\r\n <div className=\" space-y-6\">\r\n <Heading level={2}>{title}</Heading>\r\n <Text\r\n variant=\"body\"\r\n className=\"text-whitish-opacity-60\"\r\n as=\"div\"\r\n >\r\n <SafeHtmlRenderer html={desc} />\r\n </Text>\r\n </div>\r\n\r\n <div className=\"flex space-x-4\">\r\n {buttons.map((button, index) => (\r\n <HeroButton key={index} {...button} />\r\n ))}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n {img && (\r\n <div className=\"absolute bottom-0 left-0 z-0\">\r\n <ImageWrapper\r\n src={img}\r\n alt={title}\r\n width={654}\r\n height={570}\r\n objectFit=\"contain\"\r\n />\r\n </div>\r\n )}\r\n </div>\r\n </section>\r\n )\r\n}\r\n\r\nexport default CTA\r\n"],"names":["CTA","title","desc","img","buttons","ImageWrapper","getAdapter","React","Heading","Text","SafeHtmlRenderer","button","index","HeroButton","CTA$1"],"mappings":";;;;;;AAeA,MAAMA,IAA0B,CAAC,EAAE,OAAAC,GAAO,MAAAC,GAAM,KAAAC,GAAK,SAAAC,QAAc;AAC3D,QAAAC,IAAeC,EAAW,cAAc;AAE9C,SACGC,gBAAAA,EAAA,cAAA,WAAA,EAAQ,WAAU,YAAA,mCAChB,OAAI,EAAA,WAAU,4HACbA,gBAAAA,EAAA,cAAC,OAAI,EAAA,WAAU,2BACb,GAAAA,gBAAAA,EAAA,cAAC,SAAI,WAAU,yCAAA,GACZA,gBAAAA,EAAA,cAAA,OAAA,IAAI,GACLA,gBAAAA,EAAA,cAAC,OAAI,EAAA,WAAU,uDACZA,gBAAAA,EAAA,cAAA,OAAA,EAAI,WAAU,aAAA,GACZA,gBAAAA,EAAA,cAAAC,GAAA,EAAQ,OAAO,EAAA,GAAIP,CAAM,GAC1BM,gBAAAA,EAAA;AAAA,IAACE;AAAA,IAAA;AAAA,MACC,SAAQ;AAAA,MACR,WAAU;AAAA,MACV,IAAG;AAAA,IAAA;AAAA,IAEHF,gBAAAA,EAAA,cAACG,GAAiB,EAAA,MAAMR,EAAM,CAAA;AAAA,EAAA,CAElC,GAEAK,gBAAAA,EAAA,cAAC,OAAI,EAAA,WAAU,iBACZ,GAAAH,EAAQ,IAAI,CAACO,GAAQC,MACnBL,gBAAAA,EAAA,cAAAM,GAAA,EAAW,KAAKD,GAAQ,GAAGD,EAAQ,CAAA,CACrC,CACH,CACF,CACF,CACF,GAECR,KACCI,gBAAAA,EAAA,cAAC,OAAI,EAAA,WAAU,+BACb,GAAAA,gBAAAA,EAAA;AAAA,IAACF;AAAA,IAAA;AAAA,MACC,KAAKF;AAAA,MACL,KAAKF;AAAA,MACL,OAAO;AAAA,MACP,QAAQ;AAAA,MACR,WAAU;AAAA,IAAA;AAAA,EAEd,CAAA,CAEJ,CACF;AAEJ,GAEAa,IAAed;"}
package/dist/index.es4.js CHANGED
@@ -2,7 +2,7 @@ import t from "react";
2
2
  import { Button as c } from "./index.es2.js";
3
3
  import { ArrowRight16X16 as u } from "@iit/precision-ui-icons";
4
4
  import { cva as h } from "class-variance-authority";
5
- import { cn as a } from "./index.es31.js";
5
+ import { cn as a } from "./index.es52.js";
6
6
  const p = h(
7
7
  "bg-white text-navy hover:bg-whitish-opacity-80 cursor-pointer",
8
8
  {