@bioturing/components 0.13.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 (209) hide show
  1. package/LICENSE +20 -0
  2. package/README.md +91 -0
  3. package/dist/Badge.js +41 -0
  4. package/dist/Breadcrumb.js +92 -0
  5. package/dist/Checkbox.js +13 -0
  6. package/dist/CodeBlock.js +497 -0
  7. package/dist/Collapse.js +50 -0
  8. package/dist/DSRoot.js +1024 -0
  9. package/dist/DropdownMenu.js +206 -0
  10. package/dist/Empty.js +53 -0
  11. package/dist/Field.js +69 -0
  12. package/dist/Form.js +126 -0
  13. package/dist/IconButton.js +83 -0
  14. package/dist/Input.js +49 -0
  15. package/dist/Modal.js +430 -0
  16. package/dist/Popover.js +10 -0
  17. package/dist/Radio.js +24 -0
  18. package/dist/ScrollArea.js +47 -0
  19. package/dist/Segmented.js +10 -0
  20. package/dist/Select.js +41 -0
  21. package/dist/Slider.js +39 -0
  22. package/dist/Spin.js +33 -0
  23. package/dist/Splitter.js +47 -0
  24. package/dist/Switch.js +10 -0
  25. package/dist/Table.js +125 -0
  26. package/dist/Tag.js +24 -0
  27. package/dist/ThemeProvider.js +261 -0
  28. package/dist/Toast.js +1009 -0
  29. package/dist/Tooltip.js +36 -0
  30. package/dist/Tour.js +54 -0
  31. package/dist/Tree.js +318 -0
  32. package/dist/Truncate.js +160 -0
  33. package/dist/Upload.js +419 -0
  34. package/dist/VerticalCollapsiblePanel.js +414 -0
  35. package/dist/assets/src/icons/ANOVAAnalysis.d.ts +7 -0
  36. package/dist/assets/src/icons/AUCell.d.ts +7 -0
  37. package/dist/assets/src/icons/Alphabet.d.ts +7 -0
  38. package/dist/assets/src/icons/BarChart.d.ts +7 -0
  39. package/dist/assets/src/icons/BoxPlot.d.ts +7 -0
  40. package/dist/assets/src/icons/BubbleHeatmap.d.ts +7 -0
  41. package/dist/assets/src/icons/CDR3Spectratyping.d.ts +7 -0
  42. package/dist/assets/src/icons/CancerPrediction.d.ts +7 -0
  43. package/dist/assets/src/icons/Cell.d.ts +7 -0
  44. package/dist/assets/src/icons/CellCellCommunication.d.ts +7 -0
  45. package/dist/assets/src/icons/CellSearch.d.ts +7 -0
  46. package/dist/assets/src/icons/CellTypePrediction.d.ts +7 -0
  47. package/dist/assets/src/icons/Cells.d.ts +7 -0
  48. package/dist/assets/src/icons/Circos.d.ts +7 -0
  49. package/dist/assets/src/icons/Clonotype.d.ts +7 -0
  50. package/dist/assets/src/icons/CoexpressionPlot.d.ts +7 -0
  51. package/dist/assets/src/icons/Composition.d.ts +7 -0
  52. package/dist/assets/src/icons/DEG.d.ts +7 -0
  53. package/dist/assets/src/icons/Digits.d.ts +7 -0
  54. package/dist/assets/src/icons/DiversityAnalysis.d.ts +7 -0
  55. package/dist/assets/src/icons/Embedding.d.ts +7 -0
  56. package/dist/assets/src/icons/EnrichmentTest.d.ts +7 -0
  57. package/dist/assets/src/icons/Eppendorf.d.ts +7 -0
  58. package/dist/assets/src/icons/FileArrowRight.d.ts +7 -0
  59. package/dist/assets/src/icons/FolderArrowRight.d.ts +7 -0
  60. package/dist/assets/src/icons/Heatmap.d.ts +7 -0
  61. package/dist/assets/src/icons/ImageSegmentation.d.ts +7 -0
  62. package/dist/assets/src/icons/IntersectionPlot.d.ts +7 -0
  63. package/dist/assets/src/icons/LouvainClustering.d.ts +7 -0
  64. package/dist/assets/src/icons/MarkerGenes.d.ts +7 -0
  65. package/dist/assets/src/icons/MixedView.d.ts +7 -0
  66. package/dist/assets/src/icons/NeighborhoodAnalysis.d.ts +7 -0
  67. package/dist/assets/src/icons/PenSize.d.ts +7 -0
  68. package/dist/assets/src/icons/Pertubation.d.ts +7 -0
  69. package/dist/assets/src/icons/Pseudotime.d.ts +7 -0
  70. package/dist/assets/src/icons/RegionSegmentation.d.ts +7 -0
  71. package/dist/assets/src/icons/ScatterPlotTissueImageView.d.ts +7 -0
  72. package/dist/assets/src/icons/ScatterPlotView.d.ts +7 -0
  73. package/dist/assets/src/icons/SegmentSelection.d.ts +7 -0
  74. package/dist/assets/src/icons/SpatialCellProportion.d.ts +7 -0
  75. package/dist/assets/src/icons/Species.d.ts +7 -0
  76. package/dist/assets/src/icons/SubClustering.d.ts +7 -0
  77. package/dist/assets/src/icons/TSNEUMAP.d.ts +7 -0
  78. package/dist/assets/src/icons/TissueImageScatterPlotView.d.ts +7 -0
  79. package/dist/assets/src/icons/TissueImageView.d.ts +7 -0
  80. package/dist/assets/src/icons/TwoD.d.ts +7 -0
  81. package/dist/assets/src/icons/VennDiagramAnalysis.d.ts +7 -0
  82. package/dist/assets/src/icons/ViolinPlot.d.ts +7 -0
  83. package/dist/assets/src/icons/custom.d.ts +48 -0
  84. package/dist/assets/src/icons/index.d.ts +2 -0
  85. package/dist/assets/src/icons/phosphor.d.ts +1 -0
  86. package/dist/assets/src/index.d.ts +2 -0
  87. package/dist/assets/src/logos/BBrowserX.d.ts +9 -0
  88. package/dist/assets/src/logos/BioStudio.d.ts +9 -0
  89. package/dist/assets/src/logos/BioTuring.d.ts +9 -0
  90. package/dist/assets/src/logos/BioTuringAlpha.d.ts +9 -0
  91. package/dist/assets/src/logos/Lens.d.ts +9 -0
  92. package/dist/assets/src/logos/Pixel.d.ts +9 -0
  93. package/dist/assets/src/logos/SmartBulk.d.ts +9 -0
  94. package/dist/assets/src/logos/SpatialX.d.ts +9 -0
  95. package/dist/assets/src/logos/Talk2Data.d.ts +9 -0
  96. package/dist/assets/src/logos/Vinci.d.ts +9 -0
  97. package/dist/assets/src/logos/index.d.ts +10 -0
  98. package/dist/components/src/components/Badge/component.d.ts +3 -0
  99. package/dist/components/src/components/Badge/index.d.ts +1 -0
  100. package/dist/components/src/components/Breadcrumb/component.d.ts +5 -0
  101. package/dist/components/src/components/Breadcrumb/index.d.ts +2 -0
  102. package/dist/components/src/components/Breadcrumb/types.d.ts +18 -0
  103. package/dist/components/src/components/Breadcrumb/useItemRender.d.ts +6 -0
  104. package/dist/components/src/components/Button/component.d.ts +7 -0
  105. package/dist/components/src/components/Button/index.d.ts +1 -0
  106. package/dist/components/src/components/Checkbox/component.d.ts +10 -0
  107. package/dist/components/src/components/Checkbox/index.d.ts +1 -0
  108. package/dist/components/src/components/CodeBlock/component.d.ts +2 -0
  109. package/dist/components/src/components/CodeBlock/index.d.ts +2 -0
  110. package/dist/components/src/components/CodeBlock/types.d.ts +47 -0
  111. package/dist/components/src/components/Collapse/component.d.ts +13 -0
  112. package/dist/components/src/components/Collapse/index.d.ts +1 -0
  113. package/dist/components/src/components/DSRoot/component.d.ts +13 -0
  114. package/dist/components/src/components/DSRoot/index.d.ts +1 -0
  115. package/dist/components/src/components/DropdownMenu/component.d.ts +25 -0
  116. package/dist/components/src/components/DropdownMenu/index.d.ts +2 -0
  117. package/dist/components/src/components/DropdownMenu/utils.d.ts +5 -0
  118. package/dist/components/src/components/Empty/component.d.ts +12 -0
  119. package/dist/components/src/components/Empty/index.d.ts +1 -0
  120. package/dist/components/src/components/Field/component.d.ts +41 -0
  121. package/dist/components/src/components/Field/index.d.ts +1 -0
  122. package/dist/components/src/components/Form/component.d.ts +18 -0
  123. package/dist/components/src/components/Form/index.d.ts +1 -0
  124. package/dist/components/src/components/Form/item.d.ts +5 -0
  125. package/dist/components/src/components/IconButton/component.d.ts +29 -0
  126. package/dist/components/src/components/IconButton/index.d.ts +1 -0
  127. package/dist/components/src/components/Input/component.d.ts +30 -0
  128. package/dist/components/src/components/Input/index.d.ts +1 -0
  129. package/dist/components/src/components/Modal/Modal.d.ts +69 -0
  130. package/dist/components/src/components/Modal/ModalProvider.d.ts +5 -0
  131. package/dist/components/src/components/Modal/ModalService.d.ts +33 -0
  132. package/dist/components/src/components/Modal/constants.d.ts +9 -0
  133. package/dist/components/src/components/Modal/functions.d.ts +27 -0
  134. package/dist/components/src/components/Modal/index.d.ts +14 -0
  135. package/dist/components/src/components/Popover/component.d.ts +9 -0
  136. package/dist/components/src/components/Popover/index.d.ts +1 -0
  137. package/dist/components/src/components/Radio/component.d.ts +7 -0
  138. package/dist/components/src/components/Radio/index.d.ts +2 -0
  139. package/dist/components/src/components/Radio/interface.d.ts +5 -0
  140. package/dist/components/src/components/ScrollArea/component.d.ts +10 -0
  141. package/dist/components/src/components/ScrollArea/index.d.ts +1 -0
  142. package/dist/components/src/components/Segmented/component.d.ts +9 -0
  143. package/dist/components/src/components/Segmented/index.d.ts +1 -0
  144. package/dist/components/src/components/Select/component.d.ts +11 -0
  145. package/dist/components/src/components/Select/index.d.ts +1 -0
  146. package/dist/components/src/components/Slider/component.d.ts +5 -0
  147. package/dist/components/src/components/Slider/index.d.ts +1 -0
  148. package/dist/components/src/components/Spin/component.d.ts +3 -0
  149. package/dist/components/src/components/Spin/index.d.ts +1 -0
  150. package/dist/components/src/components/Splitter/component.d.ts +12 -0
  151. package/dist/components/src/components/Splitter/index.d.ts +1 -0
  152. package/dist/components/src/components/Switch/component.d.ts +8 -0
  153. package/dist/components/src/components/Switch/index.d.ts +1 -0
  154. package/dist/components/src/components/Table/component.d.ts +19 -0
  155. package/dist/components/src/components/Table/index.d.ts +1 -0
  156. package/dist/components/src/components/Tag/component.d.ts +11 -0
  157. package/dist/components/src/components/Tag/index.d.ts +1 -0
  158. package/dist/components/src/components/ThemeProvider/component.d.ts +6 -0
  159. package/dist/components/src/components/ThemeProvider/index.d.ts +1 -0
  160. package/dist/components/src/components/Toast/component.d.ts +14 -0
  161. package/dist/components/src/components/Toast/function.d.ts +10 -0
  162. package/dist/components/src/components/Toast/index.d.ts +3 -0
  163. package/dist/components/src/components/Toast/types.d.ts +3 -0
  164. package/dist/components/src/components/Tooltip/component.d.ts +9 -0
  165. package/dist/components/src/components/Tooltip/index.d.ts +1 -0
  166. package/dist/components/src/components/Tour/component.d.ts +7 -0
  167. package/dist/components/src/components/Tour/index.d.ts +1 -0
  168. package/dist/components/src/components/Transition/component.d.ts +17 -0
  169. package/dist/components/src/components/Transition/index.d.ts +1 -0
  170. package/dist/components/src/components/Tree/components.d.ts +13 -0
  171. package/dist/components/src/components/Tree/helpers.d.ts +4 -0
  172. package/dist/components/src/components/Tree/index.d.ts +4 -0
  173. package/dist/components/src/components/Tree/types.d.ts +55 -0
  174. package/dist/components/src/components/Tree/useTreeCommon.d.ts +178 -0
  175. package/dist/components/src/components/Tree/useUniqueKeysTree.d.ts +33 -0
  176. package/dist/components/src/components/Truncate/component.d.ts +12 -0
  177. package/dist/components/src/components/Truncate/helpers.d.ts +5 -0
  178. package/dist/components/src/components/Truncate/index.d.ts +1 -0
  179. package/dist/components/src/components/Upload/component.d.ts +16 -0
  180. package/dist/components/src/components/Upload/dragger.d.ts +13 -0
  181. package/dist/components/src/components/Upload/hooks.d.ts +5 -0
  182. package/dist/components/src/components/Upload/index.d.ts +3 -0
  183. package/dist/components/src/components/Upload/item.d.ts +11 -0
  184. package/dist/components/src/components/Upload/utils.d.ts +1 -0
  185. package/dist/components/src/components/VerticalCollapsiblePanel/component.d.ts +64 -0
  186. package/dist/components/src/components/VerticalCollapsiblePanel/index.d.ts +1 -0
  187. package/dist/components/src/components/hooks/antd.d.ts +11 -0
  188. package/dist/components/src/components/hooks/base-ui.d.ts +7 -0
  189. package/dist/components/src/components/hooks/index.d.ts +3 -0
  190. package/dist/components/src/components/hooks/useControlledState.d.ts +1 -0
  191. package/dist/components/src/components/index.d.ts +39 -0
  192. package/dist/components/src/components/utils/WithAntdTokens.d.ts +7 -0
  193. package/dist/components/src/components/utils/antdUtils.d.ts +10 -0
  194. package/dist/components/src/components/utils/client.d.ts +2 -0
  195. package/dist/components/src/components/utils/cn.d.ts +4 -0
  196. package/dist/components/src/components/utils/index.d.ts +3 -0
  197. package/dist/components/src/components/utils/isTracebackError.d.ts +1 -0
  198. package/dist/components/src/components/utils/main.d.ts +3 -0
  199. package/dist/components/src/components/utils/reactToString.d.ts +2 -0
  200. package/dist/components/src/components/utils/types.d.ts +9 -0
  201. package/dist/components/src/index.d.ts +2 -0
  202. package/dist/components/src/tokens/index.d.ts +3 -0
  203. package/dist/index.js +2430 -0
  204. package/dist/style.css +1242 -0
  205. package/dist/style.js +0 -0
  206. package/dist/tailwind.css +4 -0
  207. package/dist/tailwind.js +0 -0
  208. package/dist/utils.js +78 -0
  209. package/package.json +153 -0
@@ -0,0 +1,497 @@
1
+ import * as __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__ from "react/jsx-runtime";
2
+ import * as __WEBPACK_EXTERNAL_MODULE_react__ from "react";
3
+ import * as __WEBPACK_EXTERNAL_MODULE__bioturing_assets_dd0c210d__ from "@bioturing/assets";
4
+ import "antd/es/tooltip/style/css";
5
+ import * as __WEBPACK_EXTERNAL_MODULE_antd_es_tooltip_1091cc47__ from "antd/es/tooltip";
6
+ import * as __WEBPACK_EXTERNAL_MODULE_antd_es_config_provider_6a57beb3__ from "antd/es/config-provider";
7
+ import * as __WEBPACK_EXTERNAL_MODULE_antd_es_theme_useToken_e8911485__ from "antd/es/theme/useToken";
8
+ import "tailwind-merge";
9
+ import * as __WEBPACK_EXTERNAL_MODULE__base_ui_components_react_5aaa6934__ from "@base-ui-components/react";
10
+ import * as __WEBPACK_EXTERNAL_MODULE_antd_es_segmented_6dbdbe23__ from "antd/es/segmented";
11
+ import * as __WEBPACK_EXTERNAL_MODULE__ant_design_cssinjs_c619260f__ from "@ant-design/cssinjs";
12
+ import * as __WEBPACK_EXTERNAL_MODULE_prism_react_renderer_be33806e__ from "prism-react-renderer";
13
+ function cx(...args) {
14
+ const classes = [];
15
+ for (const arg of args)if (arg) {
16
+ if ("string" == typeof arg || "number" == typeof arg) classes.push(String(arg));
17
+ else if (Array.isArray(arg)) classes.push(...cx(...arg));
18
+ else if ("object" == typeof arg) {
19
+ for (const [key, value] of Object.entries(arg))if (value) classes.push(key);
20
+ }
21
+ }
22
+ return classes;
23
+ }
24
+ function clsx(...args) {
25
+ return cx(...args).join(" ");
26
+ }
27
+ "use client";
28
+ const useAntdCssVarClassname = ()=>{
29
+ var _token_;
30
+ const token = (0, __WEBPACK_EXTERNAL_MODULE_antd_es_theme_useToken_e8911485__["default"])();
31
+ return null == (_token_ = token[4]) ? void 0 : _token_.key;
32
+ };
33
+ const useCls = ()=>{
34
+ const { getPrefixCls } = (0, __WEBPACK_EXTERNAL_MODULE_react__.useContext)(__WEBPACK_EXTERNAL_MODULE_antd_es_config_provider_6a57beb3__["default"].ConfigContext);
35
+ return (...args)=>cx(...args).map((cls)=>getPrefixCls(cls)).join(" ");
36
+ };
37
+ "use client";
38
+ const IconButtonImpl = (props, ref)=>{
39
+ const { label, size = "medium", negativeMargin = true, children, className, tooltipProps = {}, as, href, target, rel, download, hrefLang, referrerPolicy, ...rest } = props;
40
+ const cls = useCls();
41
+ const antdCssVarClassname = useAntdCssVarClassname();
42
+ const buttonClasses = [
43
+ cls("icon-button"),
44
+ cls(`icon-button-${size}`),
45
+ cls(negativeMargin ? "icon-button-negative-margin" : ""),
46
+ antdCssVarClassname,
47
+ className
48
+ ].filter(Boolean).join(" ");
49
+ const Component = as || (href ? "a" : "button");
50
+ const anchorProps = "a" === Component ? {
51
+ ...void 0 !== target && {
52
+ target
53
+ },
54
+ ...void 0 !== rel && {
55
+ rel
56
+ },
57
+ ...void 0 !== download && {
58
+ download
59
+ },
60
+ ...void 0 !== hrefLang && {
61
+ hrefLang
62
+ },
63
+ ...void 0 !== referrerPolicy && {
64
+ referrerPolicy
65
+ }
66
+ } : {};
67
+ const elementProps = {
68
+ ref,
69
+ className: buttonClasses,
70
+ ..."button" === Component && {
71
+ type: "button"
72
+ },
73
+ ...href && {
74
+ href
75
+ },
76
+ ...anchorProps,
77
+ ...rest
78
+ };
79
+ const element = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(Component, {
80
+ ...elementProps,
81
+ children: children
82
+ });
83
+ return label ? /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE_antd_es_tooltip_1091cc47__["default"], {
84
+ title: label,
85
+ arrow: false,
86
+ ...tooltipProps,
87
+ children: element
88
+ }) : element;
89
+ };
90
+ const IconButton = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react__.forwardRef)(IconButtonImpl);
91
+ "use client";
92
+ const ScrollArea = ({ children, className, viewportClassName, thumbClassName, scrollbarClassName, orientation = "vertical" })=>{
93
+ const cls = useCls();
94
+ return /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsxs)(__WEBPACK_EXTERNAL_MODULE__base_ui_components_react_5aaa6934__.ScrollArea.Root, {
95
+ className: clsx(cls("scroll-area"), className),
96
+ children: [
97
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__base_ui_components_react_5aaa6934__.ScrollArea.Viewport, {
98
+ className: clsx(cls("scroll-area-viewport"), viewportClassName),
99
+ children: children
100
+ }),
101
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__base_ui_components_react_5aaa6934__.ScrollArea.Scrollbar, {
102
+ className: clsx(cls("scroll-area-scrollbar"), scrollbarClassName),
103
+ orientation: orientation,
104
+ "data-orientation": orientation,
105
+ children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__base_ui_components_react_5aaa6934__.ScrollArea.Thumb, {
106
+ className: clsx(cls("scroll-area-thumb", thumbClassName))
107
+ })
108
+ })
109
+ ]
110
+ });
111
+ };
112
+ const MainSegmentedInner = ({ className, ...rest }, ref)=>/*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE_antd_es_segmented_6dbdbe23__["default"], {
113
+ ref: ref,
114
+ ...rest
115
+ });
116
+ const MainSegmented = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react__.forwardRef)(MainSegmentedInner);
117
+ const Segmented = MainSegmented;
118
+ const figmaToAntDesignTokens = {
119
+ lightMode: {
120
+ colorText: "rgba(0, 0, 0, 0.88)",
121
+ colorTextSecondary: "rgba(0, 0, 0, 0.65)",
122
+ colorTextTertiary: "rgba(0, 0, 0, 0.45)",
123
+ colorTextQuaternary: "rgba(0, 0, 0, 0.25)",
124
+ colorPrimary: "#175CD3",
125
+ colorPrimaryBg: "#E9F2FF",
126
+ colorPrimaryBgHover: "#D1E9FF",
127
+ colorPrimaryBorder: "#84CAFF",
128
+ colorPrimaryBorderHover: "#53B1FD",
129
+ colorPrimaryHover: "#1570EF",
130
+ colorPrimaryActive: "#175CD3",
131
+ colorPrimaryTextHover: "#1570EF",
132
+ colorPrimaryTextActive: "#175CD3",
133
+ colorInfo: "#175CD3",
134
+ colorInfoBg: "#E9F2FF",
135
+ colorInfoBgHover: "#D1E9FF",
136
+ colorInfoBorder: "#84CAFF",
137
+ colorInfoBorderHover: "#53B1FD",
138
+ colorInfoHover: "#1570EF",
139
+ colorInfoActive: "#175CD3",
140
+ colorInfoTextHover: "#1570EF",
141
+ colorInfoTextActive: "#175CD3",
142
+ colorSuccess: "#4CB200",
143
+ colorSuccessBg: "#F6FFF0",
144
+ colorSuccessBgHover: "#D9F7BE",
145
+ colorSuccessBorder: "#B7EB8F",
146
+ colorSuccessBorderHover: "#95DE64",
147
+ colorSuccessHover: "#73D13D",
148
+ colorSuccessActive: "#389E0D",
149
+ colorSuccessTextHover: "#237804",
150
+ colorSuccessTextActive: "#092B00",
151
+ colorWarning: "#FA8C16",
152
+ colorWarningBg: "#FFF7E6",
153
+ colorWarningBgHover: "#FFE7BA",
154
+ colorWarningBorder: "#FFD591",
155
+ colorWarningBorderHover: "#FFC069",
156
+ colorWarningHover: "#FFA940",
157
+ colorWarningActive: "#D46B08",
158
+ colorWarningTextHover: "#AD4E00",
159
+ colorWarningTextActive: "#873800",
160
+ colorError: "#D92D20",
161
+ colorErrorBg: "#FEF3F2",
162
+ colorErrorBgHover: "#FEE4E2",
163
+ colorErrorBorder: "#FDA29B",
164
+ colorErrorBorderHover: "#F97066",
165
+ colorErrorHover: "#F04438",
166
+ colorErrorActive: "#D92D20",
167
+ colorErrorTextHover: "#F04438",
168
+ colorErrorTextActive: "#D92D20",
169
+ colorFill: "rgba(0, 0, 0, 0.15)",
170
+ colorFillSecondary: "rgba(0, 0, 0, 0.06)",
171
+ colorFillTertiary: "rgba(0, 0, 0, 0.04)",
172
+ colorFillQuaternary: "rgba(0, 0, 0, 0.02)",
173
+ colorFillAlter: "rgba(0, 0, 0, 0.02)",
174
+ colorBorder: "rgba(0, 0, 0, 0.16)",
175
+ colorBorderSecondary: "rgba(0, 0, 0, 0.06)",
176
+ colorIcon: "rgba(0, 0, 0, 0.58)",
177
+ colorIconHover: "rgba(0, 0, 0, 0.88)",
178
+ controlOutline: "rgba(0, 0, 0, 0.12)"
179
+ },
180
+ darkMode: {
181
+ colorText: "rgba(255, 255, 255, 0.85)",
182
+ colorTextSecondary: "rgba(255, 255, 255, 0.65)",
183
+ colorTextTertiary: "rgba(255, 255, 255, 0.45)",
184
+ colorTextQuaternary: "rgba(255, 255, 255, 0.25)",
185
+ colorBgContainer: "#26262C",
186
+ colorBgElevated: "#2F2F37",
187
+ colorBgLayout: "#1A1A1E",
188
+ colorBgSpotlight: "#505D5D",
189
+ colorBgMask: "rgba(0, 0, 0, 0.45)",
190
+ colorBgBase: "#13131A",
191
+ colorFill: "rgba(255, 255, 255, 0.15)",
192
+ colorFillSecondary: "rgba(255, 255, 255, 0.06)",
193
+ colorFillTertiary: "rgba(255, 255, 255, 0.04)",
194
+ colorFillQuaternary: "rgba(255, 255, 255, 0.02)",
195
+ colorFillAlter: "rgba(255, 255, 255, 0.02)",
196
+ colorBorder: "rgba(255, 255, 255, 0.16)",
197
+ colorBorderSecondary: "rgba(255, 255, 255, 0.06)",
198
+ colorPrimary: "#2E90FA",
199
+ colorPrimaryBg: "#152137",
200
+ colorPrimaryBgHover: "#112545",
201
+ colorPrimaryBorder: "#1C3959",
202
+ colorPrimaryBorderHover: "#204C7C",
203
+ colorPrimaryHover: "#50A0E8",
204
+ colorPrimaryActive: "#2565AB",
205
+ colorPrimaryTextHover: "#50A0E8",
206
+ colorPrimaryTextActive: "#2565AB",
207
+ colorInfo: "#2E90FA",
208
+ colorInfoBg: "#152137",
209
+ colorInfoBgHover: "#112545",
210
+ colorInfoBorder: "#1C3959",
211
+ colorInfoBorderHover: "#204C7C",
212
+ colorInfoHover: "#50A0E8",
213
+ colorInfoActive: "#2565AB",
214
+ colorInfoTextHover: "#50A0E8",
215
+ colorInfoTextActive: "#2565AB",
216
+ colorSuccess: "#389E0D",
217
+ colorSuccessBg: "#162100",
218
+ colorSuccessBgHover: "#1D2B00",
219
+ colorSuccessBorder: "#274916",
220
+ colorSuccessBorderHover: "#306317",
221
+ colorSuccessHover: "#52C41A",
222
+ colorSuccessActive: "#237804",
223
+ colorSuccessTextHover: "#52C41A",
224
+ colorSuccessTextActive: "#237804",
225
+ colorWarning: "#D48806",
226
+ colorWarningBg: "#281800",
227
+ colorWarningBgHover: "#3D2200",
228
+ colorWarningBorder: "#443B16",
229
+ colorWarningBorderHover: "#594E1A",
230
+ colorWarningHover: "#E8B339",
231
+ colorWarningActive: "#AA7714",
232
+ colorWarningTextHover: "#E8B339",
233
+ colorWarningTextActive: "#AA7714",
234
+ colorError: "#CF3D33",
235
+ colorErrorBg: "#291414",
236
+ colorErrorBgHover: "#411A18",
237
+ colorErrorBorder: "#562222",
238
+ colorErrorBorderHover: "#772A24",
239
+ colorErrorHover: "#E5695A",
240
+ colorErrorActive: "#A3332B",
241
+ colorErrorTextHover: "#E5695A",
242
+ colorErrorTextActive: "#A3332B",
243
+ colorIcon: "rgba(255, 255, 255, 0.58)",
244
+ colorIconHover: "rgba(255, 255, 255, 0.88)",
245
+ controlOutline: "rgba(255, 255, 255, 0.12)"
246
+ }
247
+ };
248
+ const sharedTokens = {
249
+ fontFamily: "var(--ds-inter)",
250
+ fontFamilyCode: "var(--ds-roboto-mono)",
251
+ fontSizeHeading1: 36,
252
+ fontSizeHeading2: 30,
253
+ fontSizeHeading3: 24,
254
+ fontSizeHeading4: 20,
255
+ fontSizeHeading5: 16,
256
+ lineHeightHeading1: 40 / 36,
257
+ lineHeightHeading2: 1.2,
258
+ lineHeightHeading3: 32 / 24,
259
+ lineHeightHeading4: 1.4,
260
+ lineHeightHeading5: 1.5,
261
+ lineHeight: 20 / 14,
262
+ lineHeightLG: 1.5,
263
+ lineHeightSM: 16 / 12,
264
+ fontWeightStrong: 600,
265
+ boxShadow: "0px 1px 2px rgba(0, 0, 0, 0.06), 0px 1px 6px rgba(0, 0, 0, 0.04), 0px 2px 10px rgba(0, 0, 0, 0.04)",
266
+ boxShadowSecondary: "0px 0px 1px rgba(0, 0, 0, 0.24), 0px 3px 6px 1px rgba(0, 0, 0, 0.08), 0px 6px 26px 2px rgba(0, 0, 0, 0.08), 0px 4px 52px rgba(0, 0, 0, 0.05)",
267
+ colorBgSpotlight: "rgba(0, 0, 0, 0.85)"
268
+ };
269
+ const sharedThemeConfig = {
270
+ cssVar: true,
271
+ components: {
272
+ Input: {},
273
+ InputNumber: {},
274
+ Button: {
275
+ defaultShadow: void 0,
276
+ primaryShadow: void 0,
277
+ dangerShadow: void 0
278
+ },
279
+ Select: {},
280
+ Segmented: {
281
+ controlHeightLG: 36,
282
+ controlHeightSM: 24
283
+ },
284
+ Breadcrumb: {
285
+ separatorColor: "var(--ds-color-border)"
286
+ },
287
+ Slider: {
288
+ trackBg: "var(--ds-color-primary)",
289
+ trackHoverBg: "var(--ds-color-primary-hover)",
290
+ trackBgDisabled: "var(--ds-color-text-disabled)",
291
+ railBg: "var(--ds-control-outline)",
292
+ railHoverBg: "var(--ds-color-border)",
293
+ handleColor: "var(--ds-color-primary)",
294
+ handleActiveColor: "var(--ds-color-primary-active)",
295
+ handleColorDisabled: "var(--ds-color-text-disabled)",
296
+ dotBorderColor: "var(--ds-color-primary)",
297
+ dotActiveBorderColor: "var(--ds-color-primary-active)"
298
+ },
299
+ Form: {
300
+ itemMarginBottom: 16,
301
+ labelColor: "var(--ds-color-text)"
302
+ }
303
+ }
304
+ };
305
+ const lightTheme = {
306
+ token: {
307
+ ...figmaToAntDesignTokens.lightMode,
308
+ ...sharedTokens
309
+ },
310
+ ...sharedThemeConfig
311
+ };
312
+ const darkTheme = {
313
+ token: {
314
+ ...figmaToAntDesignTokens.darkMode,
315
+ ...sharedTokens
316
+ },
317
+ ...sharedThemeConfig
318
+ };
319
+ "use client";
320
+ const DSWrapper = ({ children, theme, appendClassesTo })=>{
321
+ const cls = useCls();
322
+ const className = clsx(cls("theme-provider"), theme.toString());
323
+ (0, __WEBPACK_EXTERNAL_MODULE_react__.useLayoutEffect)(()=>{
324
+ const classes = className.split(" ");
325
+ const el = "string" == typeof appendClassesTo ? document.querySelector(appendClassesTo) : appendClassesTo;
326
+ if (el) el.classList.add(...classes);
327
+ return ()=>{
328
+ if (el) el.classList.remove(...classes);
329
+ };
330
+ }, [
331
+ appendClassesTo,
332
+ className
333
+ ]);
334
+ return void 0 === appendClassesTo ? __WEBPACK_EXTERNAL_MODULE_react__.Children.map(children, (child)=>{
335
+ if (/*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react__.isValidElement)(child)) return /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react__.cloneElement)(child, {
336
+ className: clsx(child.props.className, className)
337
+ });
338
+ return child;
339
+ }) : children;
340
+ };
341
+ const ThemeProvider = ({ theme, appendClassesTo, children })=>/*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__ant_design_cssinjs_c619260f__.StyleProvider, {
342
+ layer: true,
343
+ children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE_antd_es_config_provider_6a57beb3__["default"], {
344
+ theme: "light" == theme ? lightTheme : darkTheme,
345
+ prefixCls: "ds",
346
+ children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(DSWrapper, {
347
+ theme: theme,
348
+ appendClassesTo: appendClassesTo,
349
+ children: children
350
+ })
351
+ })
352
+ });
353
+ "use client";
354
+ function useControlledState(value, onChange, defaultValue) {
355
+ const [internalState, setInternalState] = (0, __WEBPACK_EXTERNAL_MODULE_react__.useState)(defaultValue);
356
+ const isControlled = void 0 !== value;
357
+ const setState = (0, __WEBPACK_EXTERNAL_MODULE_react__.useCallback)((next)=>{
358
+ const nextValue = "function" == typeof next ? next(value) : next;
359
+ if ("function" == typeof onChange) onChange(nextValue);
360
+ if (!isControlled) setInternalState(next);
361
+ }, [
362
+ value,
363
+ onChange,
364
+ isControlled
365
+ ]);
366
+ const state = isControlled ? value : internalState;
367
+ return [
368
+ state,
369
+ setState
370
+ ];
371
+ }
372
+ "use client";
373
+ const WithAntdTokens = ({ as: Tag = "div", ref, className, ...rest })=>{
374
+ const Component = Tag;
375
+ const cssVar = useAntdCssVarClassname();
376
+ const { renderElement } = (0, __WEBPACK_EXTERNAL_MODULE__base_ui_components_react_5aaa6934__.useRender)({
377
+ render: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(Component, {}),
378
+ refs: [
379
+ ref
380
+ ],
381
+ props: {
382
+ ...rest,
383
+ className: clsx(className, cssVar)
384
+ }
385
+ });
386
+ return renderElement();
387
+ };
388
+ function reactNodeToString(node) {
389
+ if (null == node) return "";
390
+ if ("string" == typeof node) return node;
391
+ if ("number" == typeof node || "boolean" == typeof node) return node.toString();
392
+ if (Array.isArray(node)) return node.map(reactNodeToString).join("");
393
+ if ((0, __WEBPACK_EXTERNAL_MODULE_react__.isValidElement)(node) && "props" in node && node.props && "object" == typeof node.props && "children" in node.props && node.props.children) {
394
+ if ("br" === node.type) return "\n";
395
+ if (node.props.children) return reactNodeToString(node.props.children);
396
+ }
397
+ return "";
398
+ }
399
+ "use client";
400
+ const CodeBlock = ({ code, children, lang: defaultLang = "tsx", className, options, activeOption: controlledActiveOption, defaultActiveOption = 0, onActiveOptionChange, copyText = "Copy", copySuccessText = "Copied", ...rest })=>{
401
+ const [activeOption, setActiveOption] = useControlledState(controlledActiveOption, onActiveOptionChange, defaultActiveOption);
402
+ const [currentCode, setCurrentCode] = (0, __WEBPACK_EXTERNAL_MODULE_react__.useState)(code || "");
403
+ const [lang, setLang] = (0, __WEBPACK_EXTERNAL_MODULE_react__.useState)(defaultLang);
404
+ const hasOptions = options && options.length > 0;
405
+ (0, __WEBPACK_EXTERNAL_MODULE_react__.useEffect)(()=>{
406
+ if (hasOptions) {
407
+ var _options_activeOption, _options_activeOption1;
408
+ const newCode = (null == (_options_activeOption = options[activeOption]) ? void 0 : _options_activeOption.code) || "";
409
+ const newLang = (null == (_options_activeOption1 = options[activeOption]) ? void 0 : _options_activeOption1.lang) || defaultLang;
410
+ setCurrentCode(newCode);
411
+ setLang(newLang);
412
+ }
413
+ }, [
414
+ code,
415
+ activeOption,
416
+ defaultActiveOption,
417
+ options,
418
+ defaultLang,
419
+ hasOptions,
420
+ setActiveOption
421
+ ]);
422
+ const [tooltipContent, setTooltipContent] = (0, __WEBPACK_EXTERNAL_MODULE_react__.useState)(copyText);
423
+ const [copySuccess, setCopySuccess] = (0, __WEBPACK_EXTERNAL_MODULE_react__.useState)(false);
424
+ const handleCopy = ()=>{
425
+ const codeContent = currentCode ? currentCode : reactNodeToString(children);
426
+ try {
427
+ navigator.clipboard.writeText(codeContent).then(()=>{
428
+ setTooltipContent(copySuccessText);
429
+ setCopySuccess(true);
430
+ });
431
+ } catch (_) {
432
+ setTooltipContent("Failed to copy");
433
+ }
434
+ };
435
+ const handleMouseLeave = ()=>{
436
+ setTooltipContent(copyText);
437
+ setCopySuccess(false);
438
+ };
439
+ const cls = useCls();
440
+ return /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(ThemeProvider, {
441
+ theme: "dark",
442
+ children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsxs)(WithAntdTokens, {
443
+ className: clsx(cls("code-block"), className),
444
+ ...rest,
445
+ children: [
446
+ hasOptions && /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)("div", {
447
+ className: cls("code-block-header"),
448
+ children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(Segmented, {
449
+ value: activeOption,
450
+ onChange: setActiveOption,
451
+ options: options.map((opt, index)=>({
452
+ label: opt.label,
453
+ value: index
454
+ }))
455
+ })
456
+ }),
457
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)("div", {
458
+ className: cls("code-block-copy"),
459
+ children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(IconButton, {
460
+ onClick: handleCopy,
461
+ label: tooltipContent,
462
+ onMouseLeave: handleMouseLeave,
463
+ children: copySuccess ? /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__bioturing_assets_dd0c210d__.Check, {}) : /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE__bioturing_assets_dd0c210d__.Copy, {})
464
+ })
465
+ }),
466
+ /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)("div", {
467
+ className: cls("code-block-content"),
468
+ children: /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(ScrollArea, {
469
+ children: currentCode ? /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE_prism_react_renderer_be33806e__.Highlight, {
470
+ language: lang,
471
+ code: currentCode,
472
+ theme: __WEBPACK_EXTERNAL_MODULE_prism_react_renderer_be33806e__.themes.vsDark,
473
+ children: ({ className, style, tokens, getLineProps, getTokenProps })=>/*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)("pre", {
474
+ style: {
475
+ ...style,
476
+ backgroundColor: "transparent"
477
+ },
478
+ className: className,
479
+ children: tokens.map((line, i)=>/*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)("div", {
480
+ ...getLineProps({
481
+ line
482
+ }),
483
+ children: line.map((token, key)=>/*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)("span", {
484
+ ...getTokenProps({
485
+ token
486
+ })
487
+ }, key))
488
+ }, i))
489
+ })
490
+ }) : children
491
+ })
492
+ })
493
+ ]
494
+ })
495
+ });
496
+ };
497
+ export { CodeBlock };
@@ -0,0 +1,50 @@
1
+ import * as __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__ from "react/jsx-runtime";
2
+ import "antd/es/collapse/style/css";
3
+ import * as __WEBPACK_EXTERNAL_MODULE_antd_es_collapse_0c5cc8bb__ from "antd/es/collapse";
4
+ import * as __WEBPACK_EXTERNAL_MODULE_react__ from "react";
5
+ import * as __WEBPACK_EXTERNAL_MODULE_antd_es_config_provider_6a57beb3__ from "antd/es/config-provider";
6
+ import "antd/es/theme/useToken";
7
+ import "tailwind-merge";
8
+ function cx(...args) {
9
+ const classes = [];
10
+ for (const arg of args)if (arg) {
11
+ if ("string" == typeof arg || "number" == typeof arg) classes.push(String(arg));
12
+ else if (Array.isArray(arg)) classes.push(...cx(...arg));
13
+ else if ("object" == typeof arg) {
14
+ for (const [key, value] of Object.entries(arg))if (value) classes.push(key);
15
+ }
16
+ }
17
+ return classes;
18
+ }
19
+ function clsx(...args) {
20
+ return cx(...args).join(" ");
21
+ }
22
+ "use client";
23
+ const useCls = ()=>{
24
+ const { getPrefixCls } = (0, __WEBPACK_EXTERNAL_MODULE_react__.useContext)(__WEBPACK_EXTERNAL_MODULE_antd_es_config_provider_6a57beb3__["default"].ConfigContext);
25
+ return (...args)=>cx(...args).map((cls)=>getPrefixCls(cls)).join(" ");
26
+ };
27
+ "use client";
28
+ const CollapseInner = (props, ref)=>{
29
+ const { className, ...restProps } = props;
30
+ const cls = useCls();
31
+ return /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE_antd_es_collapse_0c5cc8bb__["default"], {
32
+ ref: ref,
33
+ className: cls("collapse", className),
34
+ ...restProps
35
+ });
36
+ };
37
+ const MainCollapse = /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react__.forwardRef)(CollapseInner);
38
+ const Panel = (props)=>{
39
+ const { className, ...restProps } = props;
40
+ const cls = useCls();
41
+ console.warn("[bioturing-ds] Collapse.Panel is deprecated. Please use items prop instead.");
42
+ return /*#__PURE__*/ (0, __WEBPACK_EXTERNAL_MODULE_react_jsx_runtime_225474f2__.jsx)(__WEBPACK_EXTERNAL_MODULE_antd_es_collapse_0c5cc8bb__["default"].Panel, {
43
+ className: clsx(cls("collapse-panel"), className),
44
+ ...restProps
45
+ });
46
+ };
47
+ const Collapse = Object.assign(MainCollapse, {
48
+ Panel: Panel
49
+ });
50
+ export { Collapse };