@selfdecode/sd-component-library 4.0.145 → 4.0.146

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 (171) hide show
  1. package/lib/sd-component-library100.js +2 -2
  2. package/lib/sd-component-library101.js +3 -3
  3. package/lib/sd-component-library102.js +2 -2
  4. package/lib/sd-component-library104.js +4 -4
  5. package/lib/sd-component-library106.js +4 -4
  6. package/lib/sd-component-library111.js +1 -1
  7. package/lib/sd-component-library117.js +1 -1
  8. package/lib/sd-component-library118.js +1 -1
  9. package/lib/sd-component-library120.js +1 -1
  10. package/lib/sd-component-library121.js +1 -1
  11. package/lib/sd-component-library126.js +1 -1
  12. package/lib/sd-component-library127.js +1 -1
  13. package/lib/sd-component-library133.js +3 -3
  14. package/lib/sd-component-library134.js +1 -1
  15. package/lib/sd-component-library136.js +2 -2
  16. package/lib/sd-component-library16.js +1 -1
  17. package/lib/sd-component-library168.js +1 -1
  18. package/lib/sd-component-library171.js +1 -1
  19. package/lib/sd-component-library172.js +4 -4
  20. package/lib/sd-component-library197.js +3 -3
  21. package/lib/sd-component-library200.js +60 -2
  22. package/lib/sd-component-library200.js.map +1 -1
  23. package/lib/sd-component-library201.js +2 -30
  24. package/lib/sd-component-library201.js.map +1 -1
  25. package/lib/sd-component-library202.js +21 -590
  26. package/lib/sd-component-library202.js.map +1 -1
  27. package/lib/sd-component-library203.js +595 -56
  28. package/lib/sd-component-library203.js.map +1 -1
  29. package/lib/sd-component-library205.js +24 -55
  30. package/lib/sd-component-library205.js.map +1 -1
  31. package/lib/sd-component-library206.js +55 -24
  32. package/lib/sd-component-library206.js.map +1 -1
  33. package/lib/sd-component-library208.js +19 -62
  34. package/lib/sd-component-library208.js.map +1 -1
  35. package/lib/sd-component-library209.js +3 -23
  36. package/lib/sd-component-library209.js.map +1 -1
  37. package/lib/sd-component-library210.js +3 -40
  38. package/lib/sd-component-library210.js.map +1 -1
  39. package/lib/sd-component-library211.js +62 -19
  40. package/lib/sd-component-library211.js.map +1 -1
  41. package/lib/sd-component-library212.js +23 -3
  42. package/lib/sd-component-library212.js.map +1 -1
  43. package/lib/sd-component-library213.js +40 -3
  44. package/lib/sd-component-library213.js.map +1 -1
  45. package/lib/sd-component-library221.js +64 -45
  46. package/lib/sd-component-library221.js.map +1 -1
  47. package/lib/sd-component-library222.js +3 -65
  48. package/lib/sd-component-library222.js.map +1 -1
  49. package/lib/sd-component-library223.js +46 -3
  50. package/lib/sd-component-library223.js.map +1 -1
  51. package/lib/sd-component-library233.js +129 -64
  52. package/lib/sd-component-library233.js.map +1 -1
  53. package/lib/sd-component-library235.js +40 -36
  54. package/lib/sd-component-library235.js.map +1 -1
  55. package/lib/sd-component-library236.js +7 -12
  56. package/lib/sd-component-library236.js.map +1 -1
  57. package/lib/sd-component-library237.js +64 -21
  58. package/lib/sd-component-library237.js.map +1 -1
  59. package/lib/sd-component-library238.js +41 -107
  60. package/lib/sd-component-library238.js.map +1 -1
  61. package/lib/sd-component-library239.js +12 -46
  62. package/lib/sd-component-library239.js.map +1 -1
  63. package/lib/sd-component-library24.js +1 -1
  64. package/lib/sd-component-library240.js +21 -24
  65. package/lib/sd-component-library240.js.map +1 -1
  66. package/lib/sd-component-library241.js +103 -47
  67. package/lib/sd-component-library241.js.map +1 -1
  68. package/lib/sd-component-library242.js +43 -17
  69. package/lib/sd-component-library242.js.map +1 -1
  70. package/lib/sd-component-library243.js +24 -20
  71. package/lib/sd-component-library243.js.map +1 -1
  72. package/lib/sd-component-library244.js +52 -47
  73. package/lib/sd-component-library244.js.map +1 -1
  74. package/lib/sd-component-library245.js +46 -39
  75. package/lib/sd-component-library245.js.map +1 -1
  76. package/lib/sd-component-library246.js +74 -26
  77. package/lib/sd-component-library246.js.map +1 -1
  78. package/lib/sd-component-library247.js +21 -2
  79. package/lib/sd-component-library247.js.map +1 -1
  80. package/lib/sd-component-library248.js +20 -75
  81. package/lib/sd-component-library248.js.map +1 -1
  82. package/lib/sd-component-library249.js +2 -29
  83. package/lib/sd-component-library249.js.map +1 -1
  84. package/lib/sd-component-library250.js +41 -3
  85. package/lib/sd-component-library250.js.map +1 -1
  86. package/lib/sd-component-library251.js +26 -23
  87. package/lib/sd-component-library251.js.map +1 -1
  88. package/lib/sd-component-library252.js +325 -3
  89. package/lib/sd-component-library252.js.map +1 -1
  90. package/lib/sd-component-library253.js +5 -325
  91. package/lib/sd-component-library253.js.map +1 -1
  92. package/lib/sd-component-library254.js +29 -5
  93. package/lib/sd-component-library254.js.map +1 -1
  94. package/lib/sd-component-library255.js +3 -2
  95. package/lib/sd-component-library255.js.map +1 -1
  96. package/lib/sd-component-library256.js +24 -2
  97. package/lib/sd-component-library256.js.map +1 -1
  98. package/lib/sd-component-library257.js +3 -129
  99. package/lib/sd-component-library257.js.map +1 -1
  100. package/lib/sd-component-library258.js +21 -43
  101. package/lib/sd-component-library258.js.map +1 -1
  102. package/lib/sd-component-library259.js +22 -8
  103. package/lib/sd-component-library259.js.map +1 -1
  104. package/lib/sd-component-library260.js +30 -25
  105. package/lib/sd-component-library260.js.map +1 -1
  106. package/lib/sd-component-library261.js +50 -21
  107. package/lib/sd-component-library261.js.map +1 -1
  108. package/lib/sd-component-library262.js +134 -30
  109. package/lib/sd-component-library262.js.map +1 -1
  110. package/lib/sd-component-library263.js +59 -119
  111. package/lib/sd-component-library263.js.map +1 -1
  112. package/lib/sd-component-library264.js +63 -38
  113. package/lib/sd-component-library264.js.map +1 -1
  114. package/lib/sd-component-library265.js +30 -74
  115. package/lib/sd-component-library265.js.map +1 -1
  116. package/lib/sd-component-library266.js +15 -70
  117. package/lib/sd-component-library266.js.map +1 -1
  118. package/lib/sd-component-library267.js +120 -25
  119. package/lib/sd-component-library267.js.map +1 -1
  120. package/lib/sd-component-library268.js +117 -16
  121. package/lib/sd-component-library268.js.map +1 -1
  122. package/lib/sd-component-library269.js +10 -125
  123. package/lib/sd-component-library269.js.map +1 -1
  124. package/lib/sd-component-library270.js +39 -111
  125. package/lib/sd-component-library270.js.map +1 -1
  126. package/lib/sd-component-library271.js +9 -10
  127. package/lib/sd-component-library271.js.map +1 -1
  128. package/lib/sd-component-library272.js +49 -48
  129. package/lib/sd-component-library272.js.map +1 -1
  130. package/lib/sd-component-library273.js +89 -8
  131. package/lib/sd-component-library273.js.map +1 -1
  132. package/lib/sd-component-library274.js +89 -48
  133. package/lib/sd-component-library274.js.map +1 -1
  134. package/lib/sd-component-library275.js +2 -90
  135. package/lib/sd-component-library275.js.map +1 -1
  136. package/lib/sd-component-library276.js +2 -92
  137. package/lib/sd-component-library276.js.map +1 -1
  138. package/lib/sd-component-library297.js +1 -1
  139. package/lib/sd-component-library298.js +24 -4
  140. package/lib/sd-component-library298.js.map +1 -1
  141. package/lib/sd-component-library299.js +33 -23
  142. package/lib/sd-component-library299.js.map +1 -1
  143. package/lib/sd-component-library300.js +9 -4
  144. package/lib/sd-component-library300.js.map +1 -1
  145. package/lib/sd-component-library301.js +5 -35
  146. package/lib/sd-component-library301.js.map +1 -1
  147. package/lib/sd-component-library302.js +3 -8
  148. package/lib/sd-component-library302.js.map +1 -1
  149. package/lib/sd-component-library303.js +19 -5
  150. package/lib/sd-component-library303.js.map +1 -1
  151. package/lib/sd-component-library304.js +3 -4
  152. package/lib/sd-component-library304.js.map +1 -1
  153. package/lib/sd-component-library305.js +5 -19
  154. package/lib/sd-component-library305.js.map +1 -1
  155. package/lib/sd-component-library306.js +4 -3
  156. package/lib/sd-component-library306.js.map +1 -1
  157. package/lib/sd-component-library51.js +3 -3
  158. package/lib/sd-component-library52.js +2 -2
  159. package/lib/sd-component-library53.js +2 -2
  160. package/lib/sd-component-library60.js +1 -1
  161. package/lib/sd-component-library75.js +2 -2
  162. package/lib/sd-component-library76.js +1 -1
  163. package/lib/sd-component-library77.js +1 -1
  164. package/lib/sd-component-library81.js +1 -1
  165. package/lib/sd-component-library81.js.map +1 -1
  166. package/lib/sd-component-library89.js +3 -3
  167. package/lib/sd-component-library92.js +3 -3
  168. package/lib/sd-component-library94.js +5 -5
  169. package/lib/sd-component-library98.js +2 -2
  170. package/lib/sd-component-library99.js +3 -3
  171. package/package.json +1 -1
@@ -1,79 +1,24 @@
1
- import { j as r } from "./sd-component-library197.js";
2
- import { createElement as u } from "react";
3
- import { Box as i } from "rebass";
4
- import { TriangularPointerIcon as g } from "./sd-component-library191.js";
5
- import { HorizontalDivider as f } from "./sd-component-library48.js";
6
- import { OptionRow as w } from "./sd-component-library307.js";
7
- const k = 8, e = 5, c = k + 2 * e, l = c / 2, n = "cl_header", s = "cl_lightGrey", C = "46px", S = 4, v = (a) => {
8
- const { isVisible: d, options: p, value: t, onChange: b } = a;
9
- if (!d)
10
- return null;
11
- const x = (o) => () => b(o), h = [
12
- t,
13
- ...p.filter(({ id: o }) => o !== t.id)
14
- ], m = `${c}px`;
15
- return /* @__PURE__ */ r.jsxs(
16
- i,
1
+ import { j as e } from "./sd-component-library197.js";
2
+ import { Box as n } from "rebass";
3
+ const g = ({ width: s, direction: t, offset: o }) => {
4
+ const r = "#000000AA", a = "#00000000";
5
+ return /* @__PURE__ */ e.jsx(
6
+ n,
17
7
  {
18
8
  sx: {
19
- minWidth: "100%",
20
9
  position: "absolute",
21
- top: "100%",
22
- right: 0,
23
- zIndex: 1,
24
- cursor: "default"
25
- },
26
- children: [
27
- /* @__PURE__ */ r.jsx(g, { direction: "top", mr: "15px", ml: "auto" }),
28
- /* @__PURE__ */ r.jsx(f, { color: "cl_purple", height: "2px" }),
29
- /* @__PURE__ */ r.jsx(
30
- i,
31
- {
32
- sx: {
33
- bg: "cl_white",
34
- borderRadius: "0 0 3px 3px",
35
- boxShadow: "0px 3px 10px #0000001A",
36
- borderWidth: "1px",
37
- borderColor: "cl_lightGrey",
38
- borderStyle: "solid",
39
- borderTopStyle: "none",
40
- overflow: "auto",
41
- maxHeight: `calc(${C} * ${S})`,
42
- scrollbarWidth: "thin",
43
- scrollbarColor: `${n} ${s}`,
44
- "::-webkit-scrollbar-track": {
45
- borderRadius: l,
46
- bg: n,
47
- border: `${e}px solid transparent`,
48
- backgroundClip: "content-box"
49
- },
50
- "::-webkit-scrollbar": {
51
- width: m,
52
- bg: "transparent"
53
- },
54
- "::-webkit-scrollbar-thumb": {
55
- borderRadius: l,
56
- bg: s,
57
- border: `${e}px solid transparent`,
58
- backgroundClip: "content-box"
59
- }
60
- },
61
- children: h.map((o) => /* @__PURE__ */ u(
62
- w,
63
- {
64
- onClick: x(o),
65
- ...o,
66
- key: o.id,
67
- currentSelection: t.id === o.id
68
- }
69
- ))
70
- }
71
- )
72
- ]
10
+ top: 0,
11
+ left: t === "left" ? o : void 0,
12
+ right: t === "right" ? o : void 0,
13
+ height: "100%",
14
+ width: s,
15
+ background: `transparent linear-gradient(-90deg, ${t === "left" ? a : r} 0%, ${t === "right" ? a : r} 100%) 0% 0% no-repeat padding-box`,
16
+ opacity: 0.05
17
+ }
73
18
  }
74
19
  );
75
20
  };
76
21
  export {
77
- v as CustomScrollableOptionsBox
22
+ g as Mask
78
23
  };
79
24
  //# sourceMappingURL=sd-component-library266.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sd-component-library266.js","sources":["../src/components/selectors/primary-custom-scrollable-selector/partials/custom-scrollable-options-box/custom-scrollable-options-box.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { Box } from \"rebass\";\n\nimport { HorizontalDivider } from \"../../../../dividers/horizontal-divider\";\nimport { TriangularPointerIcon } from \"../../../../icons\";\nimport { SelectorOptionV2 } from \"../../../selector-v2\";\nimport { OptionRow } from \"../option-row\";\nimport { CustomScrollableOptionsBoxProps as Props } from \"./interfaces\";\n\nconst scrollbarWidth = 8;\nconst offset = 5;\nconst totalWidth = scrollbarWidth + 2 * offset;\nconst borderRadius = totalWidth / 2;\n\nconst trackColor = \"cl_header\";\nconst thumbColor = \"cl_lightGrey\";\nconst rowHeight = \"46px\";\nconst maxRows = 4;\n\nexport const CustomScrollableOptionsBox = <T extends string = string>(\n props: Props<T>\n) => {\n const { isVisible, options, value, onChange } = props;\n\n if (!isVisible) return null;\n\n const onSelect = (option: SelectorOptionV2<T>) => () => onChange(option);\n const regroupedOptions = [\n value,\n ...options.filter(({ id }) => id !== value.id),\n ];\n\n const scrollbarWidthStr = `${totalWidth}px`;\n\n return (\n <Box\n sx={{\n minWidth: \"100%\",\n position: \"absolute\",\n top: \"100%\",\n right: 0,\n zIndex: 1,\n cursor: \"default\",\n }}\n >\n <TriangularPointerIcon direction=\"top\" mr=\"15px\" ml=\"auto\" />\n\n <HorizontalDivider color=\"cl_purple\" height=\"2px\" />\n\n <Box\n sx={{\n bg: \"cl_white\",\n borderRadius: \"0 0 3px 3px\",\n boxShadow: \"0px 3px 10px #0000001A\",\n borderWidth: \"1px\",\n borderColor: \"cl_lightGrey\",\n borderStyle: \"solid\",\n borderTopStyle: \"none\",\n overflow: \"auto\",\n maxHeight: `calc(${rowHeight} * ${maxRows})`,\n scrollbarWidth: \"thin\",\n scrollbarColor: `${trackColor} ${thumbColor}`,\n \"::-webkit-scrollbar-track\": {\n borderRadius,\n bg: trackColor,\n border: `${offset}px solid transparent`,\n backgroundClip: \"content-box\",\n },\n \"::-webkit-scrollbar\": {\n width: scrollbarWidthStr,\n bg: \"transparent\",\n },\n \"::-webkit-scrollbar-thumb\": {\n borderRadius,\n bg: thumbColor,\n border: `${offset}px solid transparent`,\n backgroundClip: \"content-box\",\n },\n }}\n >\n {(regroupedOptions as SelectorOptionV2<T>[]).map((option) => (\n <OptionRow\n onClick={onSelect(option)}\n {...option}\n key={option.id}\n currentSelection={value.id === option.id}\n />\n ))}\n </Box>\n </Box>\n );\n};\n"],"names":["scrollbarWidth","offset","totalWidth","borderRadius","trackColor","thumbColor","rowHeight","maxRows","CustomScrollableOptionsBox","props","isVisible","options","value","onChange","onSelect","option","regroupedOptions","id","scrollbarWidthStr","jsxs","Box","jsx","TriangularPointerIcon","HorizontalDivider","createElement","OptionRow"],"mappings":";;;;;;AAUA,MAAMA,IAAiB,GACjBC,IAAS,GACTC,IAAaF,IAAiB,IAAIC,GAClCE,IAAeD,IAAa,GAE5BE,IAAa,aACbC,IAAa,gBACbC,IAAY,QACZC,IAAU,GAEHC,IAA6B,CACxCC,MACG;AACH,QAAM,EAAE,WAAAC,GAAW,SAAAC,GAAS,OAAAC,GAAO,UAAAC,MAAaJ;AAEhD,MAAI,CAACC;AAAkB,WAAA;AAEvB,QAAMI,IAAW,CAACC,MAAgC,MAAMF,EAASE,CAAM,GACjEC,IAAmB;AAAA,IACvBJ;AAAA,IACA,GAAGD,EAAQ,OAAO,CAAC,EAAE,IAAAM,EAAG,MAAMA,MAAOL,EAAM,EAAE;AAAA,EAAA,GAGzCM,IAAoB,GAAGhB,CAAU;AAGrC,SAAAiB,gBAAAA,EAAA;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,IAAI;AAAA,QACF,UAAU;AAAA,QACV,UAAU;AAAA,QACV,KAAK;AAAA,QACL,OAAO;AAAA,QACP,QAAQ;AAAA,QACR,QAAQ;AAAA,MACV;AAAA,MAEA,UAAA;AAAA,QAAAC,gBAAAA,MAACC,KAAsB,WAAU,OAAM,IAAG,QAAO,IAAG,QAAO;AAAA,QAE1DD,gBAAAA,EAAA,IAAAE,GAAA,EAAkB,OAAM,aAAY,QAAO,OAAM;AAAA,QAElDF,gBAAAA,EAAA;AAAA,UAACD;AAAA,UAAA;AAAA,YACC,IAAI;AAAA,cACF,IAAI;AAAA,cACJ,cAAc;AAAA,cACd,WAAW;AAAA,cACX,aAAa;AAAA,cACb,aAAa;AAAA,cACb,aAAa;AAAA,cACb,gBAAgB;AAAA,cAChB,UAAU;AAAA,cACV,WAAW,QAAQd,CAAS,MAAMC,CAAO;AAAA,cACzC,gBAAgB;AAAA,cAChB,gBAAgB,GAAGH,CAAU,IAAIC,CAAU;AAAA,cAC3C,6BAA6B;AAAA,gBAC3B,cAAAF;AAAA,gBACA,IAAIC;AAAA,gBACJ,QAAQ,GAAGH,CAAM;AAAA,gBACjB,gBAAgB;AAAA,cAClB;AAAA,cACA,uBAAuB;AAAA,gBACrB,OAAOiB;AAAA,gBACP,IAAI;AAAA,cACN;AAAA,cACA,6BAA6B;AAAA,gBAC3B,cAAAf;AAAA,gBACA,IAAIE;AAAA,gBACJ,QAAQ,GAAGJ,CAAM;AAAA,gBACjB,gBAAgB;AAAA,cAClB;AAAA,YACF;AAAA,YAEE,UAAAe,EAA2C,IAAI,CAACD,MAChD,gBAAAS;AAAA,cAACC;AAAA,cAAA;AAAA,gBACC,SAASX,EAASC,CAAM;AAAA,gBACvB,GAAGA;AAAA,gBACJ,KAAKA,EAAO;AAAA,gBACZ,kBAAkBH,EAAM,OAAOG,EAAO;AAAA,cAAA;AAAA,YAAA,CAEzC;AAAA,UAAA;AAAA,QACH;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGN;"}
1
+ {"version":3,"file":"sd-component-library266.js","sources":["../src/components/tabs/tab-bar/partials/mask/mask.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { Box } from \"rebass\";\n\nimport { MaskProps as Props } from \"./interfaces\";\n\nexport const Mask: React.FC<Props> = ({ width, direction, offset }) => {\n const startColor = \"#000000AA\";\n const endColor = \"#00000000\";\n\n return (\n <Box\n sx={{\n position: \"absolute\",\n top: 0,\n left: direction === \"left\" ? offset : undefined,\n right: direction === \"right\" ? offset : undefined,\n height: \"100%\",\n width,\n background: `transparent linear-gradient(-90deg, ${\n direction === \"left\" ? endColor : startColor\n } 0%, ${\n direction === \"right\" ? endColor : startColor\n } 100%) 0% 0% no-repeat padding-box`,\n opacity: 0.05,\n }}\n />\n );\n};\n"],"names":["Mask","width","direction","offset","startColor","endColor","jsx","Box"],"mappings":";;AAMO,MAAMA,IAAwB,CAAC,EAAE,OAAAC,GAAO,WAAAC,GAAW,QAAAC,QAAa;AACrE,QAAMC,IAAa,aACbC,IAAW;AAGf,SAAAC,gBAAAA,EAAA;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,IAAI;AAAA,QACF,UAAU;AAAA,QACV,KAAK;AAAA,QACL,MAAML,MAAc,SAASC,IAAS;AAAA,QACtC,OAAOD,MAAc,UAAUC,IAAS;AAAA,QACxC,QAAQ;AAAA,QACR,OAAAF;AAAA,QACA,YAAY,uCACVC,MAAc,SAASG,IAAWD,CACpC,QACEF,MAAc,UAAUG,IAAWD,CACrC;AAAA,QACA,SAAS;AAAA,MACX;AAAA,IAAA;AAAA,EAAA;AAGN;"}
@@ -1,33 +1,128 @@
1
- import { j as r } from "./sd-component-library197.js";
2
- import { ReactComponent as s } from "./sd-component-library193.js";
3
- import { FlexItemsCenter as i } from "./sd-component-library34.js";
4
- const l = ({ width: e, direction: t, onClick: o }) => /* @__PURE__ */ r.jsx(
5
- i,
1
+ import { j as t } from "./sd-component-library197.js";
2
+ import { Flex as f, Box as W } from "rebass";
3
+ import { Button as y } from "./sd-component-library24.js";
4
+ import { ResponsiveTextV2 as m } from "./sd-component-library150.js";
5
+ const z = ({
6
+ active: n = !1,
7
+ activeColor: s = "cl_purple",
8
+ color: r = "transparent"
9
+ }) => /* @__PURE__ */ t.jsx(
10
+ W,
6
11
  {
7
- justifyContent: t === "right" ? "flex-end" : "flex-start",
12
+ height: 4,
13
+ width: "100%",
14
+ bg: n ? s : r,
8
15
  sx: {
9
- position: "absolute",
10
- ...t === "right" ? { right: 0 } : 0,
11
- top: 0,
12
- width: e,
13
- height: "100%",
14
- stroke: "cl_blue",
15
- cursor: "pointer",
16
- bg: "cl_white",
17
- ":hover": { stroke: "cl_purple" },
18
- zIndex: 1
16
+ mt: "auto",
17
+ transition: "all 175ms ease"
19
18
  },
20
- onClick: o,
21
- children: /* @__PURE__ */ r.jsx(
22
- s,
23
- {
24
- width: "18px",
25
- transform: `rotate(${t === "right" ? 180 : 0})`
26
- }
27
- )
19
+ "data-testid": "tab-ribbon"
28
20
  }
29
21
  );
22
+ function E({
23
+ width: n,
24
+ height: s,
25
+ label: r,
26
+ secondaryText: x,
27
+ icon: p,
28
+ id: d,
29
+ onClick: h,
30
+ selected: i = !1,
31
+ activeColor: e = "cl_purple",
32
+ color: l = "cl_darkGrey",
33
+ tabPadding: u,
34
+ bg: o = "cl_transparent",
35
+ activeBg: c = "cl_transparent",
36
+ activeRibbonColor: b,
37
+ borderRadius: j = "4px",
38
+ tabHeaderComponent: a,
39
+ elementId: g,
40
+ maxWidth: _,
41
+ labelSx: R,
42
+ secondaryTextSx: S,
43
+ containerSx: w
44
+ }) {
45
+ const T = a ? i ? c : o : b || e;
46
+ return /* @__PURE__ */ t.jsxs(
47
+ f,
48
+ {
49
+ flexDirection: "column",
50
+ sx: {
51
+ width: "fit-content",
52
+ maxWidth: _,
53
+ minWidth: "fit-content",
54
+ ...w
55
+ },
56
+ children: [
57
+ /* @__PURE__ */ t.jsxs(
58
+ y,
59
+ {
60
+ id: g,
61
+ width: n,
62
+ height: s,
63
+ bg: i ? c : o,
64
+ onClick: h,
65
+ borderRadius: j,
66
+ "data-testid": `tab-${d}`,
67
+ padding: u,
68
+ disabled: i,
69
+ display: "flex",
70
+ children: [
71
+ r && /* @__PURE__ */ t.jsx(
72
+ m,
73
+ {
74
+ fontSizeWeight: [[13, "bold"]],
75
+ sx: {
76
+ letterSpacing: "1.3px",
77
+ textTransform: "uppercase",
78
+ ...R
79
+ },
80
+ "data-testid": "tab-text",
81
+ color: i ? e : l,
82
+ children: r
83
+ }
84
+ ),
85
+ x && /* @__PURE__ */ t.jsx(
86
+ m,
87
+ {
88
+ fontSizeWeight: [[10, "semi-bold"]],
89
+ sx: {
90
+ letterSpacing: "1px",
91
+ textTransform: "uppercase",
92
+ ...S
93
+ },
94
+ color: i ? e : l,
95
+ children: x
96
+ }
97
+ ),
98
+ p && /* @__PURE__ */ t.jsx(
99
+ f,
100
+ {
101
+ height: "16px",
102
+ flexDirection: "column",
103
+ justifyContent: "space-between",
104
+ ml: "10px",
105
+ children: p
106
+ }
107
+ ),
108
+ a
109
+ ]
110
+ }
111
+ ),
112
+ /* @__PURE__ */ t.jsx(
113
+ z,
114
+ {
115
+ active: i || !!a,
116
+ activeColor: T,
117
+ color: o
118
+ }
119
+ )
120
+ ]
121
+ }
122
+ );
123
+ }
30
124
  export {
31
- l as ArrowButton
125
+ z as Ribbon,
126
+ E as Tab
32
127
  };
33
128
  //# sourceMappingURL=sd-component-library267.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sd-component-library267.js","sources":["../src/components/tabs/tab-bar/partials/arrow-button/arrow-button.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { FlexItemsCenter } from \"../../../../containers\";\nimport { ThinArrowLeftIcon } from \"../../../../icons\";\nimport { ArrowButtonProps as Props } from \"./interfaces\";\n\nexport const ArrowButton: React.FC<Props> = ({ width, direction, onClick }) => {\n return (\n <FlexItemsCenter\n justifyContent={direction === \"right\" ? \"flex-end\" : \"flex-start\"}\n sx={{\n position: \"absolute\",\n ...(direction === \"right\" ? { right: 0 } : { left: 0 } ? 0 : undefined),\n top: 0,\n width,\n height: \"100%\",\n stroke: \"cl_blue\",\n cursor: \"pointer\",\n bg: \"cl_white\",\n \":hover\": { stroke: \"cl_purple\" },\n zIndex: 1,\n }}\n onClick={onClick}\n >\n <ThinArrowLeftIcon\n width=\"18px\"\n transform={`rotate(${direction === \"right\" ? 180 : 0})`}\n />\n </FlexItemsCenter>\n );\n};\n"],"names":["ArrowButton","width","direction","onClick","jsx","FlexItemsCenter","ThinArrowLeftIcon"],"mappings":";;;AAMO,MAAMA,IAA+B,CAAC,EAAE,OAAAC,GAAO,WAAAC,GAAW,SAAAC,QAE7DC,gBAAAA,EAAA;AAAA,EAACC;AAAA,EAAA;AAAA,IACC,gBAAgBH,MAAc,UAAU,aAAa;AAAA,IACrD,IAAI;AAAA,MACF,UAAU;AAAA,MACV,GAAIA,MAAc,UAAU,EAAE,OAAO,EAAE,IAAkB;AAAA,MACzD,KAAK;AAAA,MACL,OAAAD;AAAA,MACA,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR,QAAQ;AAAA,MACR,IAAI;AAAA,MACJ,UAAU,EAAE,QAAQ,YAAY;AAAA,MAChC,QAAQ;AAAA,IACV;AAAA,IACA,SAAAE;AAAA,IAEA,UAAAC,gBAAAA,EAAA;AAAA,MAACE;AAAAA,MAAA;AAAA,QACC,OAAM;AAAA,QACN,WAAW,UAAUJ,MAAc,UAAU,MAAM,CAAC;AAAA,MAAA;AAAA,IACtD;AAAA,EAAA;AAAA;"}
1
+ {"version":3,"file":"sd-component-library267.js","sources":["../src/components/tabs/tab-bar/partials/tab/tab.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { Box, Flex } from \"rebass\";\n\nimport { Button } from \"../../../../buttons\";\nimport { ResponsiveTextV2 } from \"../../../../texts\";\nimport { TabProps } from \"./interfaces\";\n\nexport const Ribbon = ({\n active = false,\n activeColor = \"cl_purple\",\n color = \"transparent\",\n}) => (\n <Box\n height={4}\n width=\"100%\"\n bg={active ? activeColor : color}\n sx={{\n mt: \"auto\",\n transition: \"all 175ms ease\",\n }}\n data-testid=\"tab-ribbon\"\n />\n);\n\nexport function Tab<T>({\n width,\n height,\n label,\n secondaryText,\n icon,\n id,\n onClick,\n selected = false,\n activeColor = \"cl_purple\",\n color = \"cl_darkGrey\",\n tabPadding,\n bg = \"cl_transparent\",\n activeBg = \"cl_transparent\",\n activeRibbonColor,\n borderRadius = \"4px\",\n tabHeaderComponent,\n elementId,\n maxWidth,\n labelSx,\n secondaryTextSx,\n containerSx,\n}: TabProps<T>) {\n const activeColorOfRibbon = tabHeaderComponent\n ? selected\n ? activeBg\n : bg\n : activeRibbonColor || activeColor;\n\n return (\n <Flex\n flexDirection=\"column\"\n sx={{\n width: \"fit-content\",\n maxWidth,\n minWidth: \"fit-content\",\n ...containerSx,\n }}\n >\n <Button\n id={elementId}\n width={width}\n height={height}\n bg={selected ? activeBg : bg}\n onClick={onClick}\n borderRadius={borderRadius}\n data-testid={`tab-${id}`}\n padding={tabPadding}\n disabled={selected}\n display=\"flex\"\n >\n {label && (\n <ResponsiveTextV2\n fontSizeWeight={[[13, \"bold\"]]}\n sx={{\n letterSpacing: \"1.3px\",\n textTransform: \"uppercase\",\n ...labelSx,\n }}\n data-testid=\"tab-text\"\n color={selected ? activeColor : color}\n >\n {label}\n </ResponsiveTextV2>\n )}\n\n {secondaryText && (\n <ResponsiveTextV2\n fontSizeWeight={[[10, \"semi-bold\"]]}\n sx={{\n letterSpacing: \"1px\",\n textTransform: \"uppercase\",\n ...secondaryTextSx,\n }}\n color={selected ? activeColor : color}\n >\n {secondaryText}\n </ResponsiveTextV2>\n )}\n\n {icon && (\n <Flex\n height=\"16px\"\n flexDirection=\"column\"\n justifyContent=\"space-between\"\n ml=\"10px\"\n >\n {icon}\n </Flex>\n )}\n\n {/* Render custom component, if provided */}\n {tabHeaderComponent}\n </Button>\n\n <Ribbon\n active={selected || !!tabHeaderComponent} // in tabHeaderComponent mode, it should fill the gap.\n activeColor={activeColorOfRibbon}\n color={bg}\n />\n </Flex>\n );\n}\n"],"names":["Ribbon","active","activeColor","color","jsx","Box","Tab","width","height","label","secondaryText","icon","id","onClick","selected","tabPadding","bg","activeBg","activeRibbonColor","borderRadius","tabHeaderComponent","elementId","maxWidth","labelSx","secondaryTextSx","containerSx","activeColorOfRibbon","jsxs","Flex","Button","ResponsiveTextV2"],"mappings":";;;;AAQO,MAAMA,IAAS,CAAC;AAAA,EACrB,QAAAC,IAAS;AAAA,EACT,aAAAC,IAAc;AAAA,EACd,OAAAC,IAAQ;AACV,MACEC,gBAAAA,EAAA;AAAA,EAACC;AAAA,EAAA;AAAA,IACC,QAAQ;AAAA,IACR,OAAM;AAAA,IACN,IAAIJ,IAASC,IAAcC;AAAA,IAC3B,IAAI;AAAA,MACF,IAAI;AAAA,MACJ,YAAY;AAAA,IACd;AAAA,IACA,eAAY;AAAA,EAAA;AACd;AAGK,SAASG,EAAO;AAAA,EACrB,OAAAC;AAAA,EACA,QAAAC;AAAA,EACA,OAAAC;AAAA,EACA,eAAAC;AAAA,EACA,MAAAC;AAAA,EACA,IAAAC;AAAA,EACA,SAAAC;AAAA,EACA,UAAAC,IAAW;AAAA,EACX,aAAAZ,IAAc;AAAA,EACd,OAAAC,IAAQ;AAAA,EACR,YAAAY;AAAA,EACA,IAAAC,IAAK;AAAA,EACL,UAAAC,IAAW;AAAA,EACX,mBAAAC;AAAA,EACA,cAAAC,IAAe;AAAA,EACf,oBAAAC;AAAA,EACA,WAAAC;AAAA,EACA,UAAAC;AAAA,EACA,SAAAC;AAAA,EACA,iBAAAC;AAAA,EACA,aAAAC;AACF,GAAgB;AACd,QAAMC,IAAsBN,IACxBN,IACEG,IACAD,IACFE,KAAqBhB;AAGvB,SAAAyB,gBAAAA,EAAA;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,eAAc;AAAA,MACd,IAAI;AAAA,QACF,OAAO;AAAA,QACP,UAAAN;AAAA,QACA,UAAU;AAAA,QACV,GAAGG;AAAA,MACL;AAAA,MAEA,UAAA;AAAA,QAAAE,gBAAAA,EAAA;AAAA,UAACE;AAAA,UAAA;AAAA,YACC,IAAIR;AAAA,YACJ,OAAAd;AAAA,YACA,QAAAC;AAAA,YACA,IAAIM,IAAWG,IAAWD;AAAA,YAC1B,SAAAH;AAAA,YACA,cAAAM;AAAA,YACA,eAAa,OAAOP,CAAE;AAAA,YACtB,SAASG;AAAA,YACT,UAAUD;AAAA,YACV,SAAQ;AAAA,YAEP,UAAA;AAAA,cACCL,KAAAL,gBAAAA,EAAA;AAAA,gBAAC0B;AAAA,gBAAA;AAAA,kBACC,gBAAgB,CAAC,CAAC,IAAI,MAAM,CAAC;AAAA,kBAC7B,IAAI;AAAA,oBACF,eAAe;AAAA,oBACf,eAAe;AAAA,oBACf,GAAGP;AAAA,kBACL;AAAA,kBACA,eAAY;AAAA,kBACZ,OAAOT,IAAWZ,IAAcC;AAAA,kBAE/B,UAAAM;AAAA,gBAAA;AAAA,cACH;AAAA,cAGDC,KACCN,gBAAAA,EAAA;AAAA,gBAAC0B;AAAA,gBAAA;AAAA,kBACC,gBAAgB,CAAC,CAAC,IAAI,WAAW,CAAC;AAAA,kBAClC,IAAI;AAAA,oBACF,eAAe;AAAA,oBACf,eAAe;AAAA,oBACf,GAAGN;AAAA,kBACL;AAAA,kBACA,OAAOV,IAAWZ,IAAcC;AAAA,kBAE/B,UAAAO;AAAA,gBAAA;AAAA,cACH;AAAA,cAGDC,KACCP,gBAAAA,EAAA;AAAA,gBAACwB;AAAA,gBAAA;AAAA,kBACC,QAAO;AAAA,kBACP,eAAc;AAAA,kBACd,gBAAe;AAAA,kBACf,IAAG;AAAA,kBAEF,UAAAjB;AAAA,gBAAA;AAAA,cACH;AAAA,cAIDS;AAAA,YAAA;AAAA,UAAA;AAAA,QACH;AAAA,QAEAhB,gBAAAA,EAAA;AAAA,UAACJ;AAAA,UAAA;AAAA,YACC,QAAQc,KAAY,CAAC,CAACM;AAAA,YACtB,aAAaM;AAAA,YACb,OAAOV;AAAA,UAAA;AAAA,QACT;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGN;"}
@@ -1,24 +1,125 @@
1
- import { j as e } from "./sd-component-library197.js";
2
- import { Box as n } from "rebass";
3
- const g = ({ width: s, direction: t, offset: o }) => {
4
- const r = "#000000AA", a = "#00000000";
5
- return /* @__PURE__ */ e.jsx(
6
- n,
1
+ import { j as i } from "./sd-component-library197.js";
2
+ import { useRef as B, useEffect as L } from "react";
3
+ import { Box as s } from "rebass";
4
+ import { ResponsiveTextV2 as V } from "./sd-component-library150.js";
5
+ const R = ({
6
+ id: b,
7
+ label: g,
8
+ color: a,
9
+ activeColor: x,
10
+ borderColor: r,
11
+ borderWidth: p,
12
+ borderRadius: o,
13
+ selectedIndex: e,
14
+ idx: n,
15
+ onSelect: S,
16
+ dashWidth: $ = 20,
17
+ dashHeight: j = 3,
18
+ px: u,
19
+ fontSize: v,
20
+ totalTabs: y,
21
+ topAdditionalOffset: w = 8,
22
+ bottomAdditionalOffset: T = 4,
23
+ scrollOnChange: l = !0
24
+ }) => {
25
+ const c = B(null), t = e === n;
26
+ L(() => {
27
+ var h;
28
+ t && l && ((h = c.current) == null || h.scrollIntoView({
29
+ behavior: "smooth",
30
+ inline: "center",
31
+ block: "end"
32
+ }));
33
+ }, [t, l]);
34
+ const f = e === n + 1, m = e !== -1 && e === n - 1, z = n === y - 1;
35
+ return /* @__PURE__ */ i.jsxs(
36
+ s,
7
37
  {
38
+ onClick: () => S(b),
8
39
  sx: {
9
- position: "absolute",
10
- top: 0,
11
- left: t === "left" ? o : void 0,
12
- right: t === "right" ? o : void 0,
13
- height: "100%",
14
- width: s,
15
- background: `transparent linear-gradient(-90deg, ${t === "left" ? a : r} 0%, ${t === "right" ? a : r} 100%) 0% 0% no-repeat padding-box`,
16
- opacity: 0.05
17
- }
40
+ cursor: "pointer",
41
+ position: "relative",
42
+ left: `-${n > e ? 2 : n == e ? 1 : 0}px`,
43
+ zIndex: t ? 1 : 0
44
+ },
45
+ ref: c,
46
+ children: [
47
+ /* @__PURE__ */ i.jsx(
48
+ s,
49
+ {
50
+ sx: {
51
+ height: `${o + w}px`,
52
+ borderWidth: p,
53
+ borderColor: r,
54
+ borderStyle: t ? "solid" : "none",
55
+ borderBottomStyle: "none",
56
+ borderRadius: t ? `${o}px ${o}px 0 0` : z ? `0 ${o}px 0 0` : void 0,
57
+ bg: "cl_white"
58
+ }
59
+ }
60
+ ),
61
+ /* @__PURE__ */ i.jsx(
62
+ s,
63
+ {
64
+ sx: {
65
+ borderWidth: p,
66
+ borderColor: r,
67
+ borderStyle: t ? "none solid" : "none",
68
+ boxSizing: "content-box"
69
+ },
70
+ children: /* @__PURE__ */ i.jsx(
71
+ V,
72
+ {
73
+ fontSizeWeight: [v, "bold"],
74
+ textTransform: "uppercase",
75
+ color: t ? x : a,
76
+ sx: {
77
+ bg: "cl_white",
78
+ letterSpacing: "1px",
79
+ px: u
80
+ },
81
+ children: g
82
+ }
83
+ )
84
+ }
85
+ ),
86
+ /* @__PURE__ */ i.jsx(
87
+ s,
88
+ {
89
+ sx: {
90
+ height: `${o + T}px`,
91
+ borderWidth: p,
92
+ borderColor: r,
93
+ borderBottomStyle: t ? "none" : "solid",
94
+ borderLeftStyle: m ? "solid" : "none",
95
+ borderRightStyle: f ? "solid" : "none",
96
+ borderTopStyle: "none",
97
+ borderRadius: `0 0 ${f ? o : 0}px ${m ? o : 0}px`,
98
+ bg: "cl_white",
99
+ mx: t ? "1px" : void 0
100
+ }
101
+ }
102
+ ),
103
+ t && /* @__PURE__ */ i.jsx(
104
+ s,
105
+ {
106
+ sx: {
107
+ bg: x,
108
+ height: `${j}px`,
109
+ width: `${$}px`,
110
+ position: "absolute",
111
+ left: "50%",
112
+ bottom: 0,
113
+ transform: "translateX(-50%)",
114
+ borderRadius: "1px"
115
+ }
116
+ }
117
+ )
118
+ ]
18
119
  }
19
120
  );
20
121
  };
21
122
  export {
22
- g as Mask
123
+ R as TabV2
23
124
  };
24
125
  //# sourceMappingURL=sd-component-library268.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sd-component-library268.js","sources":["../src/components/tabs/tab-bar/partials/mask/mask.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { Box } from \"rebass\";\n\nimport { MaskProps as Props } from \"./interfaces\";\n\nexport const Mask: React.FC<Props> = ({ width, direction, offset }) => {\n const startColor = \"#000000AA\";\n const endColor = \"#00000000\";\n\n return (\n <Box\n sx={{\n position: \"absolute\",\n top: 0,\n left: direction === \"left\" ? offset : undefined,\n right: direction === \"right\" ? offset : undefined,\n height: \"100%\",\n width,\n background: `transparent linear-gradient(-90deg, ${\n direction === \"left\" ? endColor : startColor\n } 0%, ${\n direction === \"right\" ? endColor : startColor\n } 100%) 0% 0% no-repeat padding-box`,\n opacity: 0.05,\n }}\n />\n );\n};\n"],"names":["Mask","width","direction","offset","startColor","endColor","jsx","Box"],"mappings":";;AAMO,MAAMA,IAAwB,CAAC,EAAE,OAAAC,GAAO,WAAAC,GAAW,QAAAC,QAAa;AACrE,QAAMC,IAAa,aACbC,IAAW;AAGf,SAAAC,gBAAAA,EAAA;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,IAAI;AAAA,QACF,UAAU;AAAA,QACV,KAAK;AAAA,QACL,MAAML,MAAc,SAASC,IAAS;AAAA,QACtC,OAAOD,MAAc,UAAUC,IAAS;AAAA,QACxC,QAAQ;AAAA,QACR,OAAAF;AAAA,QACA,YAAY,uCACVC,MAAc,SAASG,IAAWD,CACpC,QACEF,MAAc,UAAUG,IAAWD,CACrC;AAAA,QACA,SAAS;AAAA,MACX;AAAA,IAAA;AAAA,EAAA;AAGN;"}
1
+ {"version":3,"file":"sd-component-library268.js","sources":["../src/components/tabs/tab-bar-v2/partials/tab-v2/tab-v2.tsx"],"sourcesContent":["import React, { useEffect, useRef } from \"react\";\n\nimport { Box } from \"rebass\";\n\nimport { ResponsiveTextV2 } from \"../../../../texts\";\nimport { TabV2Props as Props } from \"./interfaces\";\n\nexport const TabV2: React.FC<Props> = ({\n id,\n label,\n color,\n activeColor,\n borderColor,\n borderWidth,\n borderRadius,\n selectedIndex,\n idx,\n onSelect,\n dashWidth = 20,\n dashHeight = 3,\n px,\n fontSize,\n totalTabs,\n topAdditionalOffset = 8,\n bottomAdditionalOffset = 4,\n scrollOnChange = true,\n}) => {\n const ref = useRef<HTMLDivElement>(null);\n const active = selectedIndex === idx;\n\n useEffect(() => {\n if (active && scrollOnChange)\n ref.current?.scrollIntoView({\n behavior: \"smooth\",\n inline: \"center\",\n block: \"end\",\n });\n }, [active, scrollOnChange]);\n\n const atLeftOfActive = selectedIndex === idx + 1;\n const atRightOfActive = selectedIndex !== -1 && selectedIndex === idx - 1;\n const isLast = idx === totalTabs - 1;\n\n return (\n <Box\n onClick={() => onSelect(id)}\n sx={{\n cursor: \"pointer\",\n position: \"relative\",\n left: `-${idx > selectedIndex ? 2 : idx == selectedIndex ? 1 : 0}px`,\n zIndex: active ? 1 : 0,\n }}\n ref={ref}\n >\n <Box\n sx={{\n height: `${borderRadius + topAdditionalOffset}px`,\n borderWidth,\n borderColor,\n borderStyle: active ? \"solid\" : \"none\",\n borderBottomStyle: \"none\",\n borderRadius: active\n ? `${borderRadius}px ${borderRadius}px 0 0`\n : isLast\n ? `0 ${borderRadius}px 0 0`\n : undefined,\n bg: \"cl_white\",\n }}\n />\n\n <Box\n sx={{\n borderWidth,\n borderColor,\n borderStyle: active ? \"none solid\" : \"none\",\n boxSizing: \"content-box\",\n }}\n >\n <ResponsiveTextV2\n fontSizeWeight={[fontSize, \"bold\"]}\n textTransform=\"uppercase\"\n color={active ? activeColor : color}\n sx={{\n bg: \"cl_white\",\n letterSpacing: \"1px\",\n px,\n }}\n >\n {label}\n </ResponsiveTextV2>\n </Box>\n\n <Box\n sx={{\n height: `${borderRadius + bottomAdditionalOffset}px`,\n borderWidth,\n borderColor,\n borderBottomStyle: active ? \"none\" : \"solid\",\n borderLeftStyle: atRightOfActive ? \"solid\" : \"none\",\n borderRightStyle: atLeftOfActive ? \"solid\" : \"none\",\n borderTopStyle: \"none\",\n borderRadius: `0 0 ${atLeftOfActive ? borderRadius : 0}px ${\n atRightOfActive ? borderRadius : 0\n }px`,\n bg: \"cl_white\",\n mx: active ? \"1px\" : undefined,\n }}\n />\n\n {active && (\n <Box\n sx={{\n bg: activeColor,\n height: `${dashHeight}px`,\n width: `${dashWidth}px`,\n position: \"absolute\",\n left: \"50%\",\n bottom: 0,\n transform: \"translateX(-50%)\",\n borderRadius: \"1px\",\n }}\n />\n )}\n </Box>\n );\n};\n"],"names":["TabV2","id","label","color","activeColor","borderColor","borderWidth","borderRadius","selectedIndex","idx","onSelect","dashWidth","dashHeight","px","fontSize","totalTabs","topAdditionalOffset","bottomAdditionalOffset","scrollOnChange","ref","useRef","active","useEffect","_a","atLeftOfActive","atRightOfActive","isLast","jsxs","Box","jsx","ResponsiveTextV2"],"mappings":"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"}
@@ -1,128 +1,13 @@
1
- import { j as t } from "./sd-component-library197.js";
2
- import { Flex as f, Box as W } from "rebass";
3
- import { Button as y } from "./sd-component-library24.js";
4
- import { ResponsiveTextV2 as m } from "./sd-component-library150.js";
5
- const z = ({
6
- active: n = !1,
7
- activeColor: s = "cl_purple",
8
- color: r = "transparent"
9
- }) => /* @__PURE__ */ t.jsx(
10
- W,
11
- {
12
- height: 4,
13
- width: "100%",
14
- bg: n ? s : r,
15
- sx: {
16
- mt: "auto",
17
- transition: "all 175ms ease"
18
- },
19
- "data-testid": "tab-ribbon"
20
- }
21
- );
22
- function E({
23
- width: n,
24
- height: s,
25
- label: r,
26
- secondaryText: x,
27
- icon: p,
28
- id: d,
29
- onClick: h,
30
- selected: i = !1,
31
- activeColor: e = "cl_purple",
32
- color: l = "cl_darkGrey",
33
- tabPadding: u,
34
- bg: o = "cl_transparent",
35
- activeBg: c = "cl_transparent",
36
- activeRibbonColor: b,
37
- borderRadius: j = "4px",
38
- tabHeaderComponent: a,
39
- elementId: g,
40
- maxWidth: _,
41
- labelSx: R,
42
- secondaryTextSx: S,
43
- containerSx: w
44
- }) {
45
- const T = a ? i ? c : o : b || e;
46
- return /* @__PURE__ */ t.jsxs(
47
- f,
48
- {
49
- flexDirection: "column",
50
- sx: {
51
- width: "fit-content",
52
- maxWidth: _,
53
- minWidth: "fit-content",
54
- ...w
55
- },
56
- children: [
57
- /* @__PURE__ */ t.jsxs(
58
- y,
59
- {
60
- id: g,
61
- width: n,
62
- height: s,
63
- bg: i ? c : o,
64
- onClick: h,
65
- borderRadius: j,
66
- "data-testid": `tab-${d}`,
67
- padding: u,
68
- disabled: i,
69
- display: "flex",
70
- children: [
71
- r && /* @__PURE__ */ t.jsx(
72
- m,
73
- {
74
- fontSizeWeight: [[13, "bold"]],
75
- sx: {
76
- letterSpacing: "1.3px",
77
- textTransform: "uppercase",
78
- ...R
79
- },
80
- "data-testid": "tab-text",
81
- color: i ? e : l,
82
- children: r
83
- }
84
- ),
85
- x && /* @__PURE__ */ t.jsx(
86
- m,
87
- {
88
- fontSizeWeight: [[10, "semi-bold"]],
89
- sx: {
90
- letterSpacing: "1px",
91
- textTransform: "uppercase",
92
- ...S
93
- },
94
- color: i ? e : l,
95
- children: x
96
- }
97
- ),
98
- p && /* @__PURE__ */ t.jsx(
99
- f,
100
- {
101
- height: "16px",
102
- flexDirection: "column",
103
- justifyContent: "space-between",
104
- ml: "10px",
105
- children: p
106
- }
107
- ),
108
- a
109
- ]
110
- }
111
- ),
112
- /* @__PURE__ */ t.jsx(
113
- z,
114
- {
115
- active: i || !!a,
116
- activeColor: T,
117
- color: o
118
- }
119
- )
120
- ]
121
- }
122
- );
123
- }
1
+ import { j as c } from "./sd-component-library197.js";
2
+ import { useRef as f, useEffect as n } from "react";
3
+ import { Box as p } from "rebass";
4
+ const m = (l) => {
5
+ const { hash: e, selectedTab: t, autoScrollTabs: o, scrollTabOnSelect: a, children: s } = l, r = f(null);
6
+ return n(() => {
7
+ o && t === e && r.current && a(r);
8
+ }, [t, e, o, r, a]), /* @__PURE__ */ c.jsx(p, { "data-test": "scrollable-tab-wrapper", ref: r, children: s });
9
+ };
124
10
  export {
125
- z as Ribbon,
126
- E as Tab
11
+ m as ScrollableTabWrapper
127
12
  };
128
13
  //# sourceMappingURL=sd-component-library269.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sd-component-library269.js","sources":["../src/components/tabs/tab-bar/partials/tab/tab.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { Box, Flex } from \"rebass\";\n\nimport { Button } from \"../../../../buttons\";\nimport { ResponsiveTextV2 } from \"../../../../texts\";\nimport { TabProps } from \"./interfaces\";\n\nexport const Ribbon = ({\n active = false,\n activeColor = \"cl_purple\",\n color = \"transparent\",\n}) => (\n <Box\n height={4}\n width=\"100%\"\n bg={active ? activeColor : color}\n sx={{\n mt: \"auto\",\n transition: \"all 175ms ease\",\n }}\n data-testid=\"tab-ribbon\"\n />\n);\n\nexport function Tab<T>({\n width,\n height,\n label,\n secondaryText,\n icon,\n id,\n onClick,\n selected = false,\n activeColor = \"cl_purple\",\n color = \"cl_darkGrey\",\n tabPadding,\n bg = \"cl_transparent\",\n activeBg = \"cl_transparent\",\n activeRibbonColor,\n borderRadius = \"4px\",\n tabHeaderComponent,\n elementId,\n maxWidth,\n labelSx,\n secondaryTextSx,\n containerSx,\n}: TabProps<T>) {\n const activeColorOfRibbon = tabHeaderComponent\n ? selected\n ? activeBg\n : bg\n : activeRibbonColor || activeColor;\n\n return (\n <Flex\n flexDirection=\"column\"\n sx={{\n width: \"fit-content\",\n maxWidth,\n minWidth: \"fit-content\",\n ...containerSx,\n }}\n >\n <Button\n id={elementId}\n width={width}\n height={height}\n bg={selected ? activeBg : bg}\n onClick={onClick}\n borderRadius={borderRadius}\n data-testid={`tab-${id}`}\n padding={tabPadding}\n disabled={selected}\n display=\"flex\"\n >\n {label && (\n <ResponsiveTextV2\n fontSizeWeight={[[13, \"bold\"]]}\n sx={{\n letterSpacing: \"1.3px\",\n textTransform: \"uppercase\",\n ...labelSx,\n }}\n data-testid=\"tab-text\"\n color={selected ? activeColor : color}\n >\n {label}\n </ResponsiveTextV2>\n )}\n\n {secondaryText && (\n <ResponsiveTextV2\n fontSizeWeight={[[10, \"semi-bold\"]]}\n sx={{\n letterSpacing: \"1px\",\n textTransform: \"uppercase\",\n ...secondaryTextSx,\n }}\n color={selected ? activeColor : color}\n >\n {secondaryText}\n </ResponsiveTextV2>\n )}\n\n {icon && (\n <Flex\n height=\"16px\"\n flexDirection=\"column\"\n justifyContent=\"space-between\"\n ml=\"10px\"\n >\n {icon}\n </Flex>\n )}\n\n {/* Render custom component, if provided */}\n {tabHeaderComponent}\n </Button>\n\n <Ribbon\n active={selected || !!tabHeaderComponent} // in tabHeaderComponent mode, it should fill the gap.\n activeColor={activeColorOfRibbon}\n color={bg}\n />\n </Flex>\n );\n}\n"],"names":["Ribbon","active","activeColor","color","jsx","Box","Tab","width","height","label","secondaryText","icon","id","onClick","selected","tabPadding","bg","activeBg","activeRibbonColor","borderRadius","tabHeaderComponent","elementId","maxWidth","labelSx","secondaryTextSx","containerSx","activeColorOfRibbon","jsxs","Flex","Button","ResponsiveTextV2"],"mappings":";;;;AAQO,MAAMA,IAAS,CAAC;AAAA,EACrB,QAAAC,IAAS;AAAA,EACT,aAAAC,IAAc;AAAA,EACd,OAAAC,IAAQ;AACV,MACEC,gBAAAA,EAAA;AAAA,EAACC;AAAA,EAAA;AAAA,IACC,QAAQ;AAAA,IACR,OAAM;AAAA,IACN,IAAIJ,IAASC,IAAcC;AAAA,IAC3B,IAAI;AAAA,MACF,IAAI;AAAA,MACJ,YAAY;AAAA,IACd;AAAA,IACA,eAAY;AAAA,EAAA;AACd;AAGK,SAASG,EAAO;AAAA,EACrB,OAAAC;AAAA,EACA,QAAAC;AAAA,EACA,OAAAC;AAAA,EACA,eAAAC;AAAA,EACA,MAAAC;AAAA,EACA,IAAAC;AAAA,EACA,SAAAC;AAAA,EACA,UAAAC,IAAW;AAAA,EACX,aAAAZ,IAAc;AAAA,EACd,OAAAC,IAAQ;AAAA,EACR,YAAAY;AAAA,EACA,IAAAC,IAAK;AAAA,EACL,UAAAC,IAAW;AAAA,EACX,mBAAAC;AAAA,EACA,cAAAC,IAAe;AAAA,EACf,oBAAAC;AAAA,EACA,WAAAC;AAAA,EACA,UAAAC;AAAA,EACA,SAAAC;AAAA,EACA,iBAAAC;AAAA,EACA,aAAAC;AACF,GAAgB;AACd,QAAMC,IAAsBN,IACxBN,IACEG,IACAD,IACFE,KAAqBhB;AAGvB,SAAAyB,gBAAAA,EAAA;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,eAAc;AAAA,MACd,IAAI;AAAA,QACF,OAAO;AAAA,QACP,UAAAN;AAAA,QACA,UAAU;AAAA,QACV,GAAGG;AAAA,MACL;AAAA,MAEA,UAAA;AAAA,QAAAE,gBAAAA,EAAA;AAAA,UAACE;AAAA,UAAA;AAAA,YACC,IAAIR;AAAA,YACJ,OAAAd;AAAA,YACA,QAAAC;AAAA,YACA,IAAIM,IAAWG,IAAWD;AAAA,YAC1B,SAAAH;AAAA,YACA,cAAAM;AAAA,YACA,eAAa,OAAOP,CAAE;AAAA,YACtB,SAASG;AAAA,YACT,UAAUD;AAAA,YACV,SAAQ;AAAA,YAEP,UAAA;AAAA,cACCL,KAAAL,gBAAAA,EAAA;AAAA,gBAAC0B;AAAA,gBAAA;AAAA,kBACC,gBAAgB,CAAC,CAAC,IAAI,MAAM,CAAC;AAAA,kBAC7B,IAAI;AAAA,oBACF,eAAe;AAAA,oBACf,eAAe;AAAA,oBACf,GAAGP;AAAA,kBACL;AAAA,kBACA,eAAY;AAAA,kBACZ,OAAOT,IAAWZ,IAAcC;AAAA,kBAE/B,UAAAM;AAAA,gBAAA;AAAA,cACH;AAAA,cAGDC,KACCN,gBAAAA,EAAA;AAAA,gBAAC0B;AAAA,gBAAA;AAAA,kBACC,gBAAgB,CAAC,CAAC,IAAI,WAAW,CAAC;AAAA,kBAClC,IAAI;AAAA,oBACF,eAAe;AAAA,oBACf,eAAe;AAAA,oBACf,GAAGN;AAAA,kBACL;AAAA,kBACA,OAAOV,IAAWZ,IAAcC;AAAA,kBAE/B,UAAAO;AAAA,gBAAA;AAAA,cACH;AAAA,cAGDC,KACCP,gBAAAA,EAAA;AAAA,gBAACwB;AAAA,gBAAA;AAAA,kBACC,QAAO;AAAA,kBACP,eAAc;AAAA,kBACd,gBAAe;AAAA,kBACf,IAAG;AAAA,kBAEF,UAAAjB;AAAA,gBAAA;AAAA,cACH;AAAA,cAIDS;AAAA,YAAA;AAAA,UAAA;AAAA,QACH;AAAA,QAEAhB,gBAAAA,EAAA;AAAA,UAACJ;AAAA,UAAA;AAAA,YACC,QAAQc,KAAY,CAAC,CAACM;AAAA,YACtB,aAAaM;AAAA,YACb,OAAOV;AAAA,UAAA;AAAA,QACT;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGN;"}
1
+ {"version":3,"file":"sd-component-library269.js","sources":["../src/components/tabs/tabs-menu/partials/scrollable-tab-wrapper/scrollable-tab-wrapper.tsx"],"sourcesContent":["import React, { useEffect, useRef } from \"react\";\n\nimport { Box } from \"rebass\";\n\nimport { ScrollableTabWrapperProps as Props } from \"./interfaces\";\n\nexport const ScrollableTabWrapper: React.FC<Props> = (props) => {\n const { hash, selectedTab, autoScrollTabs, scrollTabOnSelect, children } =\n props;\n\n const tabRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n if (!autoScrollTabs) return;\n\n /**\n * If current tab is the selected one, call the callback to scroll the tab.\n */\n if (selectedTab === hash && tabRef.current) {\n scrollTabOnSelect(tabRef);\n }\n }, [selectedTab, hash, autoScrollTabs, tabRef, scrollTabOnSelect]);\n\n return (\n <Box data-test=\"scrollable-tab-wrapper\" ref={tabRef}>\n {children}\n </Box>\n );\n};\n"],"names":["ScrollableTabWrapper","props","hash","selectedTab","autoScrollTabs","scrollTabOnSelect","children","tabRef","useRef","useEffect","Box"],"mappings":";;;AAMa,MAAAA,IAAwC,CAACC,MAAU;AAC9D,QAAM,EAAE,MAAAC,GAAM,aAAAC,GAAa,gBAAAC,GAAgB,mBAAAC,GAAmB,UAAAC,EAC5D,IAAAL,GAEIM,IAASC,EAAuB,IAAI;AAE1C,SAAAC,EAAU,MAAM;AACd,IAAKL,KAKDD,MAAgBD,KAAQK,EAAO,WACjCF,EAAkBE,CAAM;AAAA,EAC1B,GACC,CAACJ,GAAaD,GAAME,GAAgBG,GAAQF,CAAiB,CAAC,yBAG9DK,GAAI,EAAA,aAAU,0BAAyB,KAAKH,GAC1C,UAAAD,EACH,CAAA;AAEJ;"}