@lobehub/ui 5.23.5 → 5.25.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (375) hide show
  1. package/es/A/index.mjs +2 -1
  2. package/es/A/index.mjs.map +1 -1
  3. package/es/Accordion/Accordion.mjs.map +1 -1
  4. package/es/Accordion/AccordionItem.mjs +0 -1
  5. package/es/Accordion/AccordionItem.mjs.map +1 -1
  6. package/es/Accordion/ArrowIcon.mjs.map +1 -1
  7. package/es/ActionIcon/ActionIcon.mjs.map +1 -1
  8. package/es/ActionIcon/components/utils.mjs +7 -9
  9. package/es/ActionIcon/components/utils.mjs.map +1 -1
  10. package/es/ActionIconGroup/ActionIconGroup.mjs.map +1 -1
  11. package/es/Alert/Alert.mjs.map +1 -1
  12. package/es/Avatar/Avatar.mjs.map +1 -1
  13. package/es/Avatar/AvatarGroup/index.mjs.map +1 -1
  14. package/es/Burger/Burger.mjs.map +1 -1
  15. package/es/Checkbox/Checkbox.mjs.map +1 -1
  16. package/es/Checkbox/CheckboxGroup.mjs +4 -2
  17. package/es/Checkbox/CheckboxGroup.mjs.map +1 -1
  18. package/es/CodeDiff/CodeDiff.mjs +20 -18
  19. package/es/CodeDiff/CodeDiff.mjs.map +1 -1
  20. package/es/CodeDiff/DiffPanel.mjs.map +1 -1
  21. package/es/CodeDiff/PatchDiff.mjs +18 -16
  22. package/es/CodeDiff/PatchDiff.mjs.map +1 -1
  23. package/es/CodeEditor/CodeEditor.mjs.map +1 -1
  24. package/es/Collapse/Collapse.mjs.map +1 -1
  25. package/es/ColorSwatches/ColorSwatches.mjs.map +1 -1
  26. package/es/ConfigProvider/index.mjs.map +1 -1
  27. package/es/ContextMenu/index.d.mts +2 -2
  28. package/es/ContextMenu/index.mjs +2 -2
  29. package/es/CopyButton/CopyButton.mjs +2 -1
  30. package/es/CopyButton/CopyButton.mjs.map +1 -1
  31. package/es/DraggablePanel/DraggablePanel.mjs.map +1 -1
  32. package/es/DraggablePanel/components/DraggablePanelHeader.mjs.map +1 -1
  33. package/es/DraggableSideNav/DraggableSideNav.mjs.map +1 -1
  34. package/es/Drawer/Drawer.mjs.map +1 -1
  35. package/es/Dropdown/Dropdown.mjs.map +1 -1
  36. package/es/EditableText/ControlInput.mjs.map +1 -1
  37. package/es/EditableText/EditableText.mjs.map +1 -1
  38. package/es/EditorSlashMenu/EditorSlashMenu.mjs.map +1 -1
  39. package/es/EditorSlashMenu/MenuItemRenderer.mjs.map +1 -1
  40. package/es/EmojiPicker/AvatarUploader.mjs.map +1 -1
  41. package/es/EmojiPicker/EmojiPicker.mjs.map +1 -1
  42. package/es/Empty/Empty.mjs.map +1 -1
  43. package/es/FileTypeIcon/FileTypeIcon.mjs.map +1 -1
  44. package/es/FileTypeIcon/components/FileIcon.mjs.map +1 -1
  45. package/es/FileTypeIcon/components/FolderIcon.mjs.map +1 -1
  46. package/es/FluentEmoji/FluentEmoji.mjs.map +1 -1
  47. package/es/Footer/Footer.mjs.map +1 -1
  48. package/es/Form/Form.mjs.map +1 -1
  49. package/es/Form/components/FormGroup.mjs.map +1 -1
  50. package/es/Form/components/FormSubmitFooter.mjs.map +1 -1
  51. package/es/Form/components/FormTitle.mjs.map +1 -1
  52. package/es/FormModal/FormModal.mjs.map +1 -1
  53. package/es/Freeze/Freeze.mjs.map +1 -1
  54. package/es/GroupAvatar/GroupAvatar.mjs.map +1 -1
  55. package/es/GuideCard/GuideCard.mjs.map +1 -1
  56. package/es/Header/Header.mjs.map +1 -1
  57. package/es/Highlighter/FullFeatured.mjs.map +1 -1
  58. package/es/Highlighter/Highlighter.mjs.map +1 -1
  59. package/es/Highlighter/LangSelect.mjs +41 -40
  60. package/es/Highlighter/LangSelect.mjs.map +1 -1
  61. package/es/Highlighter/SyntaxHighlighter/StaticRenderer.mjs +2 -1
  62. package/es/Highlighter/SyntaxHighlighter/StaticRenderer.mjs.map +1 -1
  63. package/es/Highlighter/SyntaxHighlighter/StreamRenderer.mjs.map +1 -1
  64. package/es/Highlighter/SyntaxHighlighter/style.mjs +2 -2
  65. package/es/Highlighter/SyntaxHighlighter/style.mjs.map +1 -1
  66. package/es/Hotkey/Hotkey.mjs.map +1 -1
  67. package/es/HotkeyInput/HotkeyInput.mjs +3 -1
  68. package/es/HotkeyInput/HotkeyInput.mjs.map +1 -1
  69. package/es/HtmlPreview/HtmlPreview.mjs.map +1 -1
  70. package/es/HtmlPreview/Iframe.mjs.map +1 -1
  71. package/es/HtmlPreview/const.mjs +1 -1
  72. package/es/HtmlPreview/const.mjs.map +1 -1
  73. package/es/Icon/Icon.mjs.map +1 -1
  74. package/es/Icon/components/utils.mjs +7 -9
  75. package/es/Icon/components/utils.mjs.map +1 -1
  76. package/es/Image/Image.mjs.map +1 -1
  77. package/es/Image/components/Toolbar.mjs +2 -1
  78. package/es/Image/components/Toolbar.mjs.map +1 -1
  79. package/es/Image/components/usePreview.mjs.map +1 -1
  80. package/es/Image/components/usePreviewGroup.mjs.map +1 -1
  81. package/es/ImageSelect/ImageSelect.mjs.map +1 -1
  82. package/es/Img/index.mjs +2 -1
  83. package/es/Img/index.mjs.map +1 -1
  84. package/es/Layout/Layout.mjs.map +1 -1
  85. package/es/List/List.mjs.map +1 -1
  86. package/es/List/ListItem/index.mjs.map +1 -1
  87. package/es/Markdown/Markdown.mjs.map +1 -1
  88. package/es/Markdown/SyntaxMarkdown/MarkdownRender.mjs.map +1 -1
  89. package/es/Markdown/SyntaxMarkdown/StreamdownRender.mjs +2 -1
  90. package/es/Markdown/SyntaxMarkdown/StreamdownRender.mjs.map +1 -1
  91. package/es/Markdown/SyntaxMarkdown/style.mjs.map +1 -1
  92. package/es/Markdown/SyntaxMarkdown/useSmoothStreamContent.mjs +2 -2
  93. package/es/Markdown/SyntaxMarkdown/useSmoothStreamContent.mjs.map +1 -1
  94. package/es/Markdown/components/CodeBlock.mjs.map +1 -1
  95. package/es/Markdown/components/Footnotes.mjs.map +1 -1
  96. package/es/Markdown/components/MarkdownTable/index.mjs.map +1 -1
  97. package/es/Markdown/components/SearchResultCards/SearchResultCard.mjs.map +1 -1
  98. package/es/Markdown/components/SearchResultCards/index.mjs.map +1 -1
  99. package/es/MaterialFileTypeIcon/MaterialFileTypeIcon.mjs.map +1 -1
  100. package/es/Menu/Menu.mjs.map +1 -1
  101. package/es/Mermaid/FullFeatured.mjs.map +1 -1
  102. package/es/Mermaid/Mermaid.mjs.map +1 -1
  103. package/es/Mermaid/SyntaxMermaid/MermaidFallback.mjs +35 -0
  104. package/es/Mermaid/SyntaxMermaid/MermaidFallback.mjs.map +1 -0
  105. package/es/Mermaid/SyntaxMermaid/MermaidSvg.mjs +52 -0
  106. package/es/Mermaid/SyntaxMermaid/MermaidSvg.mjs.map +1 -0
  107. package/es/Mermaid/SyntaxMermaid/StaticMermaid.mjs +13 -42
  108. package/es/Mermaid/SyntaxMermaid/StaticMermaid.mjs.map +1 -1
  109. package/es/Mermaid/SyntaxMermaid/StreamMermaid.mjs +13 -43
  110. package/es/Mermaid/SyntaxMermaid/StreamMermaid.mjs.map +1 -1
  111. package/es/Mermaid/SyntaxMermaid/prepareInlineSvg.mjs +52 -0
  112. package/es/Mermaid/SyntaxMermaid/prepareInlineSvg.mjs.map +1 -0
  113. package/es/Mermaid/SyntaxMermaid/prepareMermaidSvg.mjs +20 -0
  114. package/es/Mermaid/SyntaxMermaid/prepareMermaidSvg.mjs.map +1 -0
  115. package/es/Mermaid/SyntaxMermaid/style.mjs +11 -0
  116. package/es/Mermaid/SyntaxMermaid/style.mjs.map +1 -1
  117. package/es/Mermaid/const.mjs +10 -31
  118. package/es/Mermaid/const.mjs.map +1 -1
  119. package/es/Mermaid/index.d.mts +2 -1
  120. package/es/Mermaid/index.mjs +2 -1
  121. package/es/Mermaid/type.d.mts +2 -2
  122. package/es/Modal/Modal.mjs.map +1 -1
  123. package/es/Modal/ModalStackItem.mjs.map +1 -1
  124. package/es/Modal/RawModalStackItem.mjs +6 -5
  125. package/es/Modal/RawModalStackItem.mjs.map +1 -1
  126. package/es/Modal/imperative.mjs +4 -2
  127. package/es/Modal/imperative.mjs.map +1 -1
  128. package/es/Modal/style.mjs.map +1 -1
  129. package/es/NeuralNetworkLoading/NeuralNetworkLoading.mjs +1 -1
  130. package/es/NeuralNetworkLoading/NeuralNetworkLoading.mjs.map +1 -1
  131. package/es/ScrollShadow/ScrollShadow.mjs +13 -12
  132. package/es/ScrollShadow/ScrollShadow.mjs.map +1 -1
  133. package/es/SearchBar/SearchBar.mjs.map +1 -1
  134. package/es/SideNav/SideNav.mjs.map +1 -1
  135. package/es/Skeleton/Skeleton.mjs.map +1 -1
  136. package/es/Skeleton/SkeletonButton.mjs +2 -1
  137. package/es/Skeleton/SkeletonButton.mjs.map +1 -1
  138. package/es/Skeleton/SkeletonParagraph.mjs.map +1 -1
  139. package/es/Skeleton/SkeletonTags.mjs.map +1 -1
  140. package/es/SliderWithInput/SliderWithInput.mjs.map +1 -1
  141. package/es/Snippet/Snippet.mjs.map +1 -1
  142. package/es/SortableList/SortableList.mjs +5 -1
  143. package/es/SortableList/SortableList.mjs.map +1 -1
  144. package/es/SortableList/components/SortableItem.mjs.map +1 -1
  145. package/es/Text/Text.mjs +22 -21
  146. package/es/Text/Text.mjs.map +1 -1
  147. package/es/ThemeProvider/ThemeProvider.mjs +4 -3
  148. package/es/ThemeProvider/ThemeProvider.mjs.map +1 -1
  149. package/es/ThemeSwitch/ThemeSwitch.mjs.map +1 -1
  150. package/es/Toc/Toc.mjs.map +1 -1
  151. package/es/Toc/TocMobile.mjs.map +1 -1
  152. package/es/Video/index.mjs.map +1 -1
  153. package/es/awesome/AuroraBackground/AuroraBackground.mjs.map +1 -1
  154. package/es/awesome/Features/FeatureItem.mjs.map +1 -1
  155. package/es/awesome/Giscus/Giscus.mjs.map +1 -1
  156. package/es/awesome/GradientButton/GradientButton.mjs +1 -3
  157. package/es/awesome/GradientButton/GradientButton.mjs.map +1 -1
  158. package/es/awesome/GridBackground/GridBackground.mjs.map +1 -1
  159. package/es/awesome/GridBackground/GridShowcase.mjs.map +1 -1
  160. package/es/awesome/GridBackground/components/Grid.mjs.map +1 -1
  161. package/es/awesome/Hero/Hero.mjs.map +1 -1
  162. package/es/awesome/Spline/ParentSize.mjs.map +1 -1
  163. package/es/awesome/Spline/Spine.mjs.map +1 -1
  164. package/es/awesome/Spotlight/Spotlight.mjs +2 -1
  165. package/es/awesome/Spotlight/Spotlight.mjs.map +1 -1
  166. package/es/awesome/SpotlightCard/SpotlightCard.mjs.map +1 -1
  167. package/es/awesome/SpotlightCard/SpotlightCardItem.mjs.map +1 -1
  168. package/es/awesome/TypewriterEffect/TypewriterEffect.mjs.map +1 -1
  169. package/es/base-ui/AutoComplete/AutoComplete.mjs.map +1 -1
  170. package/es/base-ui/Button/Button.mjs +13 -11
  171. package/es/base-ui/Button/Button.mjs.map +1 -1
  172. package/es/base-ui/Button/SplitButton.mjs +2 -1
  173. package/es/base-ui/Button/SplitButton.mjs.map +1 -1
  174. package/es/base-ui/Checkbox/Checkbox.mjs.map +1 -1
  175. package/es/base-ui/Checkbox/CheckboxGroup.mjs.map +1 -1
  176. package/es/base-ui/ContextMenu/ContextMenuHost.mjs.map +1 -1
  177. package/es/base-ui/ContextMenu/ContextMenuTrigger.mjs +2 -1
  178. package/es/base-ui/ContextMenu/ContextMenuTrigger.mjs.map +1 -1
  179. package/es/base-ui/ContextMenu/imperative.d.mts +2 -2
  180. package/es/base-ui/ContextMenu/index.d.mts +2 -2
  181. package/es/base-ui/ContextMenu/renderItems.mjs +2 -1
  182. package/es/base-ui/ContextMenu/renderItems.mjs.map +1 -1
  183. package/es/base-ui/ContextMenu/store.d.mts +13 -1
  184. package/es/base-ui/ContextMenu/store.mjs +29 -4
  185. package/es/base-ui/ContextMenu/store.mjs.map +1 -1
  186. package/es/base-ui/Drawer/Drawer.d.mts +6 -0
  187. package/es/base-ui/Drawer/Drawer.mjs +152 -0
  188. package/es/base-ui/Drawer/Drawer.mjs.map +1 -0
  189. package/es/base-ui/Drawer/DrawerLayerContext.mjs +10 -0
  190. package/es/base-ui/Drawer/DrawerLayerContext.mjs.map +1 -0
  191. package/es/base-ui/Drawer/DrawerPushContext.mjs +27 -0
  192. package/es/base-ui/Drawer/DrawerPushContext.mjs.map +1 -0
  193. package/es/base-ui/Drawer/atoms.d.mts +58 -0
  194. package/es/base-ui/Drawer/atoms.mjs +262 -0
  195. package/es/base-ui/Drawer/atoms.mjs.map +1 -0
  196. package/es/base-ui/Drawer/constants.d.mts +17 -0
  197. package/es/base-ui/Drawer/constants.mjs +72 -0
  198. package/es/base-ui/Drawer/constants.mjs.map +1 -0
  199. package/es/base-ui/Drawer/index.d.mts +5 -0
  200. package/es/base-ui/Drawer/style.mjs +295 -0
  201. package/es/base-ui/Drawer/style.mjs.map +1 -0
  202. package/es/base-ui/Drawer/type.d.mts +65 -0
  203. package/es/base-ui/DropdownMenu/DropdownMenu.mjs +2 -1
  204. package/es/base-ui/DropdownMenu/DropdownMenu.mjs.map +1 -1
  205. package/es/base-ui/DropdownMenu/atoms.mjs +2 -1
  206. package/es/base-ui/DropdownMenu/atoms.mjs.map +1 -1
  207. package/es/base-ui/DropdownMenu/renderItems.mjs +2 -1
  208. package/es/base-ui/DropdownMenu/renderItems.mjs.map +1 -1
  209. package/es/base-ui/DropdownMenu/sharedStyle.mjs +3 -0
  210. package/es/base-ui/DropdownMenu/sharedStyle.mjs.map +1 -1
  211. package/es/base-ui/FloatingPanel/FloatingPanel.mjs.map +1 -1
  212. package/es/base-ui/FloatingSheet/FloatingSheet.mjs +4 -1
  213. package/es/base-ui/FloatingSheet/FloatingSheet.mjs.map +1 -1
  214. package/es/base-ui/FloatingSheet/FloatingSheetHeader.mjs.map +1 -1
  215. package/es/base-ui/Form/Form.mjs.map +1 -1
  216. package/es/base-ui/Form/components/FormField.mjs.map +1 -1
  217. package/es/base-ui/Form/components/FormGroup.mjs.map +1 -1
  218. package/es/base-ui/Form/components/FormSubmitFooter.mjs.map +1 -1
  219. package/es/base-ui/Form/components/FormTitle.mjs.map +1 -1
  220. package/es/base-ui/Input/Input.mjs.map +1 -1
  221. package/es/base-ui/Input/InputNumber.mjs.map +1 -1
  222. package/es/base-ui/Input/InputOTP.mjs.map +1 -1
  223. package/es/base-ui/Input/InputPassword.mjs.map +1 -1
  224. package/es/base-ui/Input/TextArea.mjs.map +1 -1
  225. package/es/base-ui/Modal/Modal.mjs.map +1 -1
  226. package/es/base-ui/Modal/atoms.mjs +7 -5
  227. package/es/base-ui/Modal/atoms.mjs.map +1 -1
  228. package/es/base-ui/Modal/imperative.mjs +2 -1
  229. package/es/base-ui/Modal/imperative.mjs.map +1 -1
  230. package/es/base-ui/Popover/ArrowIcon.mjs.map +1 -1
  231. package/es/base-ui/Popover/PopoverGroup.mjs.map +1 -1
  232. package/es/base-ui/Popover/PopoverStandalone.mjs.map +1 -1
  233. package/es/base-ui/Popover/atoms.mjs +2 -1
  234. package/es/base-ui/Popover/atoms.mjs.map +1 -1
  235. package/es/base-ui/Popover/context.mjs +4 -2
  236. package/es/base-ui/Popover/context.mjs.map +1 -1
  237. package/es/base-ui/Radio/Radio.mjs.map +1 -1
  238. package/es/base-ui/Radio/RadioGroup.mjs.map +1 -1
  239. package/es/base-ui/ScrollArea/ScrollArea.mjs.map +1 -1
  240. package/es/base-ui/Segmented/Segmented.mjs.map +1 -1
  241. package/es/base-ui/Select/Select.mjs.map +1 -1
  242. package/es/base-ui/Select/atoms.mjs +2 -1
  243. package/es/base-ui/Select/atoms.mjs.map +1 -1
  244. package/es/base-ui/Select/parts.mjs.map +1 -1
  245. package/es/base-ui/Select/renderOptions.mjs.map +1 -1
  246. package/es/base-ui/Slider/Slider.mjs.map +1 -1
  247. package/es/base-ui/Slider/SliderWithInput.mjs.map +1 -1
  248. package/es/base-ui/SubmenuArrowIcon.mjs.map +1 -1
  249. package/es/base-ui/Switch/Switch.mjs.map +1 -1
  250. package/es/base-ui/Switch/atoms.d.mts +3 -3
  251. package/es/base-ui/Switch/atoms.mjs +99 -50
  252. package/es/base-ui/Switch/atoms.mjs.map +1 -1
  253. package/es/base-ui/Switch/style.mjs +44 -1
  254. package/es/base-ui/Switch/style.mjs.map +1 -1
  255. package/es/base-ui/Switch/type.d.mts +3 -7
  256. package/es/base-ui/Tabs/Tabs.mjs.map +1 -1
  257. package/es/base-ui/Tabs/atoms.mjs.map +1 -1
  258. package/es/base-ui/Toast/Toast.mjs.map +1 -1
  259. package/es/base-ui/Toast/imperative.mjs.map +1 -1
  260. package/es/base-ui/Tooltip/ArrowIcon.mjs.map +1 -1
  261. package/es/base-ui/Tooltip/TooltipGroup.mjs.map +1 -1
  262. package/es/base-ui/Tooltip/TooltipStandalone.mjs.map +1 -1
  263. package/es/base-ui/index.d.mts +7 -2
  264. package/es/base-ui/index.mjs +5 -2
  265. package/es/brand/LobeChat/index.mjs +0 -1
  266. package/es/brand/LobeChat/index.mjs.map +1 -1
  267. package/es/brand/LobeChatText/index.mjs.map +1 -1
  268. package/es/brand/LobeHub/index.mjs +0 -1
  269. package/es/brand/LobeHub/index.mjs.map +1 -1
  270. package/es/brand/LobeHubText/index.mjs.map +1 -1
  271. package/es/brand/Logo3d/index.mjs +2 -1
  272. package/es/brand/Logo3d/index.mjs.map +1 -1
  273. package/es/brand/LogoThree/Loading.mjs.map +1 -1
  274. package/es/brand/LogoThree/LogoSpline.mjs.map +1 -1
  275. package/es/brand/LogoThree/index.mjs.map +1 -1
  276. package/es/brand/components/Divider.mjs.map +1 -1
  277. package/es/chat/BackBottom/BackBottom.mjs.map +1 -1
  278. package/es/chat/ChatHeader/ChatHeader.mjs.map +1 -1
  279. package/es/chat/ChatHeader/ChatHeaderTitle.mjs.map +1 -1
  280. package/es/chat/ChatInputArea/ChatInputArea.mjs.map +1 -1
  281. package/es/chat/ChatInputArea/components/ChatInputActionBar.mjs.map +1 -1
  282. package/es/chat/ChatInputArea/components/ChatSendButton.mjs.map +1 -1
  283. package/es/chat/ChatItem/ChatItem.mjs.map +1 -1
  284. package/es/chat/ChatItem/components/Actions.mjs +5 -4
  285. package/es/chat/ChatItem/components/Actions.mjs.map +1 -1
  286. package/es/chat/ChatItem/components/Avatar.mjs.map +1 -1
  287. package/es/chat/ChatItem/components/ErrorContent.mjs.map +1 -1
  288. package/es/chat/ChatItem/components/Loading.mjs.map +1 -1
  289. package/es/chat/ChatItem/components/MessageContent.mjs.map +1 -1
  290. package/es/chat/ChatItem/components/Title.mjs.map +1 -1
  291. package/es/chat/ChatList/ChatList.mjs +2 -1
  292. package/es/chat/ChatList/ChatList.mjs.map +1 -1
  293. package/es/chat/ChatList/components/HistoryDivider.mjs.map +1 -1
  294. package/es/chat/EditableMessage/EditableMessage.mjs.map +1 -1
  295. package/es/chat/EditableMessageList/EditableMessageList.mjs.map +1 -1
  296. package/es/chat/LoadingDots/LoadingDots.mjs.map +1 -1
  297. package/es/chat/MessageInput/MessageInput.mjs.map +1 -1
  298. package/es/chat/MessageModal/MessageModal.mjs.map +1 -1
  299. package/es/color/ColorScales/ScaleRow.mjs +0 -2
  300. package/es/color/ColorScales/ScaleRow.mjs.map +1 -1
  301. package/es/color/ColorScales/index.mjs.map +1 -1
  302. package/es/color/CssVar/ScaleRow.mjs.map +1 -1
  303. package/es/color/CssVar/VarRow.mjs.map +1 -1
  304. package/es/color/CssVar/index.mjs.map +1 -1
  305. package/es/hooks/useMarkdown/latex.mjs.map +1 -1
  306. package/es/hooks/useMarkdown/useMarkdownContent.mjs.map +1 -1
  307. package/es/hooks/useMermaid.mjs +81 -116
  308. package/es/hooks/useMermaid.mjs.map +1 -1
  309. package/es/hooks/useMermaidCdn.d.mts +10 -0
  310. package/es/hooks/useMermaidCdn.mjs +97 -0
  311. package/es/hooks/useMermaidCdn.mjs.map +1 -0
  312. package/es/hooks/useStreamMermaid.mjs +19 -70
  313. package/es/hooks/useStreamMermaid.mjs.map +1 -1
  314. package/es/icons/Auth0/components/Mono.mjs.map +1 -1
  315. package/es/icons/Authelia/components/Color.mjs.map +1 -1
  316. package/es/icons/Authelia/components/Mono.mjs.map +1 -1
  317. package/es/icons/Authentik/components/Color.mjs.map +1 -1
  318. package/es/icons/Authentik/components/Mono.mjs.map +1 -1
  319. package/es/icons/Casdoor/components/Color.mjs.map +1 -1
  320. package/es/icons/Casdoor/components/Mono.mjs.map +1 -1
  321. package/es/icons/Clerk/components/Color.mjs.map +1 -1
  322. package/es/icons/Clerk/components/Mono.mjs.map +1 -1
  323. package/es/icons/DingTalk/components/Color.mjs.map +1 -1
  324. package/es/icons/DingTalk/components/Mono.mjs.map +1 -1
  325. package/es/icons/Discord/components/Color.mjs.map +1 -1
  326. package/es/icons/Discord/components/Mono.mjs.map +1 -1
  327. package/es/icons/GoogleChat/components/Color.mjs.map +1 -1
  328. package/es/icons/GoogleChat/components/Mono.mjs.map +1 -1
  329. package/es/icons/IMessage/components/Color.mjs.map +1 -1
  330. package/es/icons/IMessage/components/Inner.mjs.map +1 -1
  331. package/es/icons/IMessage/components/Mono.mjs.map +1 -1
  332. package/es/icons/Lark/components/Color.mjs.map +1 -1
  333. package/es/icons/Lark/components/Mono.mjs.map +1 -1
  334. package/es/icons/Line/components/Color.mjs.map +1 -1
  335. package/es/icons/Line/components/Mono.mjs.map +1 -1
  336. package/es/icons/Logto/components/Color.mjs.map +1 -1
  337. package/es/icons/Logto/components/Mono.mjs.map +1 -1
  338. package/es/icons/MicrosoftEntra/components/Color.mjs.map +1 -1
  339. package/es/icons/MicrosoftEntra/components/Mono.mjs.map +1 -1
  340. package/es/icons/MicrosoftTeams/components/Color.mjs.map +1 -1
  341. package/es/icons/MicrosoftTeams/components/Mono.mjs.map +1 -1
  342. package/es/icons/NextAuth/components/Color.mjs.map +1 -1
  343. package/es/icons/NextAuth/components/Mono.mjs.map +1 -1
  344. package/es/icons/QQ/components/Color.mjs.map +1 -1
  345. package/es/icons/QQ/components/Mono.mjs.map +1 -1
  346. package/es/icons/Slack/components/Color.mjs.map +1 -1
  347. package/es/icons/Slack/components/Mono.mjs.map +1 -1
  348. package/es/icons/Telegram/components/Color.mjs.map +1 -1
  349. package/es/icons/Telegram/components/Inner.mjs.map +1 -1
  350. package/es/icons/Telegram/components/Mono.mjs.map +1 -1
  351. package/es/icons/WeChat/components/Color.mjs.map +1 -1
  352. package/es/icons/WeChat/components/Mono.mjs.map +1 -1
  353. package/es/icons/WhatsApp/components/Color.mjs.map +1 -1
  354. package/es/icons/WhatsApp/components/Mono.mjs.map +1 -1
  355. package/es/icons/Zitadel/components/Color.mjs.map +1 -1
  356. package/es/icons/Zitadel/components/Mono.mjs.map +1 -1
  357. package/es/index.d.mts +2 -2
  358. package/es/index.mjs +2 -2
  359. package/es/mdx/Callout/index.mjs.map +1 -1
  360. package/es/mdx/Cards/Card.mjs.map +1 -1
  361. package/es/mdx/FileTree/File.mjs.map +1 -1
  362. package/es/mdx/FileTree/Folder.mjs.map +1 -1
  363. package/es/mdx/Mdx/index.mjs.map +1 -1
  364. package/es/mdx/Tabs/Tab.mjs.map +1 -1
  365. package/es/mdx/Tabs/index.mjs.map +1 -1
  366. package/es/mdx/mdxComponents/Citation/PopoverPanel.mjs.map +1 -1
  367. package/es/mdx/mdxComponents/Citation/index.mjs.map +1 -1
  368. package/es/mdx/mdxComponents/CodeBlock.mjs.map +1 -1
  369. package/es/mdx/mdxComponents/Link.mjs.map +1 -1
  370. package/es/mobile/ChatHeader/ChatHeader.mjs.map +1 -1
  371. package/es/mobile/ChatHeader/ChatHeaderTitle.mjs.map +1 -1
  372. package/es/mobile/ChatInputArea/ChatInputArea.mjs.map +1 -1
  373. package/es/mobile/TabBar/TabBar.mjs.map +1 -1
  374. package/es/storybook/StoryBook/index.mjs.map +1 -1
  375. package/package.json +3 -4
@@ -1 +1 @@
1
- {"version":3,"file":"SortableItem.mjs","names":["Flexbox"],"sources":["../../../src/SortableList/components/SortableItem.tsx"],"sourcesContent":["'use client';\n\nimport type { DraggableSyntheticListeners } from '@dnd-kit/core';\nimport { useSortable } from '@dnd-kit/sortable';\nimport { CSS } from '@dnd-kit/utilities';\nimport { cx } from 'antd-style';\nimport { createContext, memo, useMemo } from 'react';\n\nimport { type FlexboxProps } from '@/Flex';\nimport { Flexbox } from '@/Flex';\n\nimport { variants } from '../style';\n\ninterface Context {\n attributes: Record<string, any>;\n listeners: DraggableSyntheticListeners;\n ref: (node: HTMLElement | null) => void;\n}\n\nexport const SortableItemContext = createContext<Context>({\n attributes: {},\n listeners: undefined,\n ref() {},\n});\n\nexport interface SortableItemProps extends Omit<FlexboxProps, 'id'> {\n id: string | number;\n variant?: 'borderless' | 'filled' | 'outlined';\n}\n\nconst SortableItem = memo<SortableItemProps>(\n ({ variant = 'borderless', className, children, id, style, ...rest }) => {\n const {\n attributes,\n isDragging,\n listeners,\n setNodeRef,\n setActivatorNodeRef,\n transform,\n transition,\n } = useSortable({ id });\n const context = useMemo(\n () => ({\n attributes,\n listeners,\n ref: setActivatorNodeRef,\n }),\n [attributes, listeners, setActivatorNodeRef],\n );\n\n return (\n <SortableItemContext value={context}>\n <Flexbox\n horizontal\n align={'center'}\n as={'li'}\n className={cx(variants({ variant }), className)}\n gap={4}\n ref={setNodeRef}\n style={{\n opacity: isDragging ? 0.4 : undefined,\n transform: CSS.Translate.toString(transform),\n transition,\n ...style,\n }}\n {...rest}\n >\n {children}\n </Flexbox>\n </SortableItemContext>\n );\n },\n);\n\nSortableItem.displayName = 'SortableItem';\n\nexport default SortableItem;\n"],"mappings":";;;;;;;;;AAmBA,MAAa,sBAAsB,cAAuB;CACxD,YAAY,CAAC;CACb,WAAW,KAAA;CACX,MAAM,CAAC;AACT,CAAC;AAOD,MAAM,eAAe,MAClB,EAAE,UAAU,cAAc,WAAW,UAAU,IAAI,OAAO,GAAG,WAAW;CACvE,MAAM,EACJ,YACA,YACA,WACA,YACA,qBACA,WACA,eACE,YAAY,EAAE,GAAG,CAAC;CACtB,MAAM,UAAU,eACP;EACL;EACA;EACA,KAAK;CACP,IACA;EAAC;EAAY;EAAW;CAAmB,CAC7C;CAEA,OACE,oBAAC,qBAAD;EAAqB,OAAO;YAC1B,oBAACA,mBAAD;GACE,YAAA;GACA,OAAO;GACP,IAAI;GACJ,WAAW,GAAG,SAAS,EAAE,QAAQ,CAAC,GAAG,SAAS;GAC9C,KAAK;GACL,KAAK;GACL,OAAO;IACL,SAAS,aAAa,KAAM,KAAA;IAC5B,WAAW,IAAI,UAAU,SAAS,SAAS;IAC3C;IACA,GAAG;GACL;GACA,GAAI;GAEH;EACM,CAAA;CACU,CAAA;AAEzB,CACF;AAEA,aAAa,cAAc"}
1
+ {"version":3,"file":"SortableItem.mjs","names":["Flexbox"],"sources":["../../../src/SortableList/components/SortableItem.tsx"],"sourcesContent":["'use client';\n\nimport type { DraggableSyntheticListeners } from '@dnd-kit/core';\nimport { useSortable } from '@dnd-kit/sortable';\nimport { CSS } from '@dnd-kit/utilities';\nimport { cx } from 'antd-style';\nimport { createContext, memo, useMemo } from 'react';\n\nimport { type FlexboxProps } from '@/Flex';\nimport { Flexbox } from '@/Flex';\n\nimport { variants } from '../style';\n\ninterface Context {\n attributes: Record<string, any>;\n listeners: DraggableSyntheticListeners;\n ref: (node: HTMLElement | null) => void;\n}\n\nexport const SortableItemContext = createContext<Context>({\n attributes: {},\n listeners: undefined,\n ref() {},\n});\n\nexport interface SortableItemProps extends Omit<FlexboxProps, 'id'> {\n id: string | number;\n variant?: 'borderless' | 'filled' | 'outlined';\n}\n\nconst SortableItem = memo<SortableItemProps>(\n ({ variant = 'borderless', className, children, id, style, ...rest }) => {\n const {\n attributes,\n isDragging,\n listeners,\n setNodeRef,\n setActivatorNodeRef,\n transform,\n transition,\n } = useSortable({ id });\n const context = useMemo(\n () => ({\n attributes,\n listeners,\n ref: setActivatorNodeRef,\n }),\n [attributes, listeners, setActivatorNodeRef],\n );\n\n return (\n <SortableItemContext value={context}>\n <Flexbox\n horizontal\n align={'center'}\n as={'li'}\n className={cx(variants({ variant }), className)}\n gap={4}\n ref={setNodeRef}\n style={{\n opacity: isDragging ? 0.4 : undefined,\n transform: CSS.Translate.toString(transform),\n transition,\n ...style,\n }}\n {...rest}\n >\n {children}\n </Flexbox>\n </SortableItemContext>\n );\n },\n);\n\nSortableItem.displayName = 'SortableItem';\n\nexport default SortableItem;\n"],"mappings":";;;;;;;;;AAmBA,MAAa,sBAAsB,cAAuB;CACxD,YAAY,CAAC;CACb,WAAW,KAAA;CACX,MAAM,CAAC;AACT,CAAC;AAOD,MAAM,eAAe,MAClB,EAAE,UAAU,cAAc,WAAW,UAAU,IAAI,OAAO,GAAG,WAAW;CACvE,MAAM,EACJ,YACA,YACA,WACA,YACA,qBACA,WACA,eACE,YAAY,EAAE,GAAG,CAAC;CACtB,MAAM,UAAU,eACP;EACL;EACA;EACA,KAAK;CACP,IACA;EAAC;EAAY;EAAW;CAAmB,CAC7C;CAEA,OACE,oBAAC,qBAAD;EAAqB,OAAO;EAC1B,UAAA,oBAACA,mBAAD;GACE,YAAA;GACA,OAAO;GACP,IAAI;GACJ,WAAW,GAAG,SAAS,EAAE,QAAQ,CAAC,GAAG,SAAS;GAC9C,KAAK;GACL,KAAK;GACL,OAAO;IACL,SAAS,aAAa,KAAM,KAAA;IAC5B,WAAW,IAAI,UAAU,SAAS,SAAS;IAC3C;IACA,GAAG;GACL;GACA,GAAI;GAEH;EACM,CAAA;CACU,CAAA;AAEzB,CACF;AAEA,aAAa,cAAc"}
package/es/Text/Text.mjs CHANGED
@@ -11,29 +11,30 @@ const Text = ({ as: Container = "div", align, className, children, style, type,
11
11
  const isOverflow = useTextOverflow(textRef, ellipsis, children);
12
12
  const isMultiEllipsis = typeof ellipsis === "object" && !!ellipsis.rows && ellipsis.rows > 1;
13
13
  const tooltipWhenOverflow = typeof ellipsis === "object" && ellipsis.tooltipWhenOverflow;
14
+ const textStyle = {
15
+ ...color && { color },
16
+ ...weight && { fontWeight: weight },
17
+ ...lineHeight && { lineHeight },
18
+ ...textTransform && { textTransform },
19
+ ...textDecoration && { textDecoration },
20
+ ...wordBreak && { wordBreak },
21
+ ...typeof ellipsis === "object" && ellipsis.rows && { WebkitLineClamp: ellipsis.rows },
22
+ ...!ellipsis && !!lineClamp && {
23
+ WebkitBoxOrient: "vertical",
24
+ WebkitLineClamp: lineClamp,
25
+ display: "-webkit-box",
26
+ overflow: "hidden",
27
+ textOverflow: "ellipsis"
28
+ },
29
+ ...fontSize && { fontSize },
30
+ ...align && { textAlign: align },
31
+ ...!isMultiEllipsis && noWrap && { whiteSpace: "nowrap" },
32
+ ...whiteSpace && { whiteSpace },
33
+ ...style
34
+ };
14
35
  const content = /* @__PURE__ */ jsx(Container, {
15
36
  ref: textRef,
16
- style: {
17
- ...color && { color },
18
- ...weight && { fontWeight: weight },
19
- ...lineHeight && { lineHeight },
20
- ...textTransform && { textTransform },
21
- ...textDecoration && { textDecoration },
22
- ...wordBreak && { wordBreak },
23
- ...typeof ellipsis === "object" && ellipsis.rows && { WebkitLineClamp: ellipsis.rows },
24
- ...!ellipsis && !!lineClamp && {
25
- WebkitBoxOrient: "vertical",
26
- WebkitLineClamp: lineClamp,
27
- display: "-webkit-box",
28
- overflow: "hidden",
29
- textOverflow: "ellipsis"
30
- },
31
- ...fontSize && { fontSize },
32
- ...align && { textAlign: align },
33
- ...!isMultiEllipsis && noWrap && { whiteSpace: "nowrap" },
34
- ...whiteSpace && { whiteSpace },
35
- ...style
36
- },
37
+ style: textStyle,
37
38
  className: cx(variants({
38
39
  as: [
39
40
  "h1",
@@ -1 +1 @@
1
- {"version":3,"file":"Text.mjs","names":[],"sources":["../../src/Text/Text.tsx"],"sourcesContent":["'use client';\n\nimport { cx } from 'antd-style';\nimport { type FC, useRef } from 'react';\n\nimport { useTextOverflow } from '@/hooks/useTextOverflow';\nimport Tooltip from '@/Tooltip';\n\nimport { variants } from './styles';\nimport { type TextProps } from './type';\n\nconst Text: FC<TextProps> = ({\n as: Container = 'div',\n align,\n className,\n children,\n style,\n type,\n disabled,\n strong,\n italic,\n underline,\n delete: deleteStyle,\n fontSize,\n lineClamp,\n lineHeight,\n mark,\n code,\n color,\n weight,\n ellipsis,\n noWrap,\n textDecoration,\n textTransform,\n whiteSpace,\n wordBreak,\n ...rest\n}) => {\n const textRef = useRef<HTMLElement>(null);\n const isOverflow = useTextOverflow(textRef, ellipsis, children);\n\n const isMultiEllipsis = typeof ellipsis === 'object' && !!ellipsis.rows && ellipsis.rows > 1;\n const tooltipWhenOverflow = typeof ellipsis === 'object' && ellipsis.tooltipWhenOverflow;\n\n const textStyle = {\n ...(color && { color }),\n ...(weight && { fontWeight: weight }),\n ...(lineHeight && { lineHeight }),\n ...(textTransform && { textTransform }),\n ...(textDecoration && { textDecoration }),\n ...(wordBreak && { wordBreak }),\n ...(typeof ellipsis === 'object' &&\n ellipsis.rows && {\n WebkitLineClamp: ellipsis.rows,\n }),\n ...(!ellipsis &&\n !!lineClamp && {\n WebkitBoxOrient: 'vertical',\n WebkitLineClamp: lineClamp,\n display: '-webkit-box',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n }),\n ...(fontSize && { fontSize }),\n ...(align && { textAlign: align }),\n ...(!isMultiEllipsis && noWrap && { whiteSpace: 'nowrap' as const }),\n ...(whiteSpace && { whiteSpace }),\n ...style,\n };\n\n const content = (\n <Container\n ref={textRef}\n style={textStyle}\n className={cx(\n variants({\n as: ['h1', 'h2', 'h3', 'h4', 'h5', 'p'].includes(Container as string)\n ? (Container as any)\n : undefined,\n code,\n delete: deleteStyle,\n disabled,\n ellipsis: ellipsis\n ? typeof ellipsis === 'object' && ellipsis.rows\n ? 'multi'\n : true\n : undefined,\n italic,\n mark,\n strong,\n type,\n underline,\n }),\n className,\n )}\n {...rest}\n >\n {children}\n </Container>\n );\n\n // 处理带有 tooltip 的省略\n if (\n ellipsis &&\n typeof ellipsis === 'object' &&\n (ellipsis.tooltip || ellipsis.tooltipWhenOverflow)\n ) {\n // 如果设置了 tooltipWhenOverflow,只在溢出时显示 tooltip\n if (tooltipWhenOverflow && !isOverflow) {\n return content;\n }\n\n const title = typeof ellipsis.tooltip === 'string' ? ellipsis.tooltip : children;\n if (ellipsis.tooltip && typeof ellipsis.tooltip === 'object')\n return (\n <Tooltip {...ellipsis.tooltip} title={ellipsis.tooltip?.title || title}>\n {content}\n </Tooltip>\n );\n return <Tooltip title={title}>{content}</Tooltip>;\n }\n\n return content;\n};\n\nText.displayName = 'Text';\n\nexport default Text;\n"],"mappings":";;;;;;;;AAWA,MAAM,QAAuB,EAC3B,IAAI,YAAY,OAChB,OACA,WACA,UACA,OACA,MACA,UACA,QACA,QACA,WACA,QAAQ,aACR,UACA,WACA,YACA,MACA,MACA,OACA,QACA,UACA,QACA,gBACA,eACA,YACA,WACA,GAAG,WACC;CACJ,MAAM,UAAU,OAAoB,IAAI;CACxC,MAAM,aAAa,gBAAgB,SAAS,UAAU,QAAQ;CAE9D,MAAM,kBAAkB,OAAO,aAAa,YAAY,CAAC,CAAC,SAAS,QAAQ,SAAS,OAAO;CAC3F,MAAM,sBAAsB,OAAO,aAAa,YAAY,SAAS;CA4BrE,MAAM,UACJ,oBAAC,WAAD;EACE,KAAK;EACL,OAAO;GA5BT,GAAI,SAAS,EAAE,MAAM;GACrB,GAAI,UAAU,EAAE,YAAY,OAAO;GACnC,GAAI,cAAc,EAAE,WAAW;GAC/B,GAAI,iBAAiB,EAAE,cAAc;GACrC,GAAI,kBAAkB,EAAE,eAAe;GACvC,GAAI,aAAa,EAAE,UAAU;GAC7B,GAAI,OAAO,aAAa,YACtB,SAAS,QAAQ,EACf,iBAAiB,SAAS,KAC5B;GACF,GAAI,CAAC,YACH,CAAC,CAAC,aAAa;IACb,iBAAiB;IACjB,iBAAiB;IACjB,SAAS;IACT,UAAU;IACV,cAAc;GAChB;GACF,GAAI,YAAY,EAAE,SAAS;GAC3B,GAAI,SAAS,EAAE,WAAW,MAAM;GAChC,GAAI,CAAC,mBAAmB,UAAU,EAAE,YAAY,SAAkB;GAClE,GAAI,cAAc,EAAE,WAAW;GAC/B,GAAG;EAMc;EACf,WAAW,GACT,SAAS;GACP,IAAI;IAAC;IAAM;IAAM;IAAM;IAAM;IAAM;GAAG,CAAC,CAAC,SAAS,SAAmB,IAC/D,YACD,KAAA;GACJ;GACA,QAAQ;GACR;GACA,UAAU,WACN,OAAO,aAAa,YAAY,SAAS,OACvC,UACA,OACF,KAAA;GACJ;GACA;GACA;GACA;GACA;EACF,CAAC,GACD,SACF;EACA,GAAI;EAEH;CACQ,CAAA;CAIb,IACE,YACA,OAAO,aAAa,aACnB,SAAS,WAAW,SAAS,sBAC9B;EAEA,IAAI,uBAAuB,CAAC,YAC1B,OAAO;EAGT,MAAM,QAAQ,OAAO,SAAS,YAAY,WAAW,SAAS,UAAU;EACxE,IAAI,SAAS,WAAW,OAAO,SAAS,YAAY,UAClD,OACE,oBAAC,SAAD;GAAS,GAAI,SAAS;GAAS,OAAO,SAAS,SAAS,SAAS;aAC9D;EACM,CAAA;EAEb,OAAO,oBAAC,SAAD;GAAgB;aAAQ;EAAiB,CAAA;CAClD;CAEA,OAAO;AACT;AAEA,KAAK,cAAc"}
1
+ {"version":3,"file":"Text.mjs","names":[],"sources":["../../src/Text/Text.tsx"],"sourcesContent":["'use client';\n\nimport { cx } from 'antd-style';\nimport { type FC, useRef } from 'react';\n\nimport { useTextOverflow } from '@/hooks/useTextOverflow';\nimport Tooltip from '@/Tooltip';\n\nimport { variants } from './styles';\nimport { type TextProps } from './type';\n\nconst Text: FC<TextProps> = ({\n as: Container = 'div',\n align,\n className,\n children,\n style,\n type,\n disabled,\n strong,\n italic,\n underline,\n delete: deleteStyle,\n fontSize,\n lineClamp,\n lineHeight,\n mark,\n code,\n color,\n weight,\n ellipsis,\n noWrap,\n textDecoration,\n textTransform,\n whiteSpace,\n wordBreak,\n ...rest\n}) => {\n const textRef = useRef<HTMLElement>(null);\n const isOverflow = useTextOverflow(textRef, ellipsis, children);\n\n const isMultiEllipsis = typeof ellipsis === 'object' && !!ellipsis.rows && ellipsis.rows > 1;\n const tooltipWhenOverflow = typeof ellipsis === 'object' && ellipsis.tooltipWhenOverflow;\n\n const textStyle = {\n ...(color && { color }),\n ...(weight && { fontWeight: weight }),\n ...(lineHeight && { lineHeight }),\n ...(textTransform && { textTransform }),\n ...(textDecoration && { textDecoration }),\n ...(wordBreak && { wordBreak }),\n ...(typeof ellipsis === 'object' &&\n ellipsis.rows && {\n WebkitLineClamp: ellipsis.rows,\n }),\n ...(!ellipsis &&\n !!lineClamp && {\n WebkitBoxOrient: 'vertical',\n WebkitLineClamp: lineClamp,\n display: '-webkit-box',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n }),\n ...(fontSize && { fontSize }),\n ...(align && { textAlign: align }),\n ...(!isMultiEllipsis && noWrap && { whiteSpace: 'nowrap' as const }),\n ...(whiteSpace && { whiteSpace }),\n ...style,\n };\n\n const content = (\n <Container\n ref={textRef}\n style={textStyle}\n className={cx(\n variants({\n as: ['h1', 'h2', 'h3', 'h4', 'h5', 'p'].includes(Container as string)\n ? (Container as any)\n : undefined,\n code,\n delete: deleteStyle,\n disabled,\n ellipsis: ellipsis\n ? typeof ellipsis === 'object' && ellipsis.rows\n ? 'multi'\n : true\n : undefined,\n italic,\n mark,\n strong,\n type,\n underline,\n }),\n className,\n )}\n {...rest}\n >\n {children}\n </Container>\n );\n\n // 处理带有 tooltip 的省略\n if (\n ellipsis &&\n typeof ellipsis === 'object' &&\n (ellipsis.tooltip || ellipsis.tooltipWhenOverflow)\n ) {\n // 如果设置了 tooltipWhenOverflow,只在溢出时显示 tooltip\n if (tooltipWhenOverflow && !isOverflow) {\n return content;\n }\n\n const title = typeof ellipsis.tooltip === 'string' ? ellipsis.tooltip : children;\n if (ellipsis.tooltip && typeof ellipsis.tooltip === 'object')\n return (\n <Tooltip {...ellipsis.tooltip} title={ellipsis.tooltip?.title || title}>\n {content}\n </Tooltip>\n );\n return <Tooltip title={title}>{content}</Tooltip>;\n }\n\n return content;\n};\n\nText.displayName = 'Text';\n\nexport default Text;\n"],"mappings":";;;;;;;;AAWA,MAAM,QAAuB,EAC3B,IAAI,YAAY,OAChB,OACA,WACA,UACA,OACA,MACA,UACA,QACA,QACA,WACA,QAAQ,aACR,UACA,WACA,YACA,MACA,MACA,OACA,QACA,UACA,QACA,gBACA,eACA,YACA,WACA,GAAG,WACC;CACJ,MAAM,UAAU,OAAoB,IAAI;CACxC,MAAM,aAAa,gBAAgB,SAAS,UAAU,QAAQ;CAE9D,MAAM,kBAAkB,OAAO,aAAa,YAAY,CAAC,CAAC,SAAS,QAAQ,SAAS,OAAO;CAC3F,MAAM,sBAAsB,OAAO,aAAa,YAAY,SAAS;CAErE,MAAM,YAAY;EAChB,GAAI,SAAS,EAAE,MAAM;EACrB,GAAI,UAAU,EAAE,YAAY,OAAO;EACnC,GAAI,cAAc,EAAE,WAAW;EAC/B,GAAI,iBAAiB,EAAE,cAAc;EACrC,GAAI,kBAAkB,EAAE,eAAe;EACvC,GAAI,aAAa,EAAE,UAAU;EAC7B,GAAI,OAAO,aAAa,YACtB,SAAS,QAAQ,EACf,iBAAiB,SAAS,KAC5B;EACF,GAAI,CAAC,YACH,CAAC,CAAC,aAAa;GACb,iBAAiB;GACjB,iBAAiB;GACjB,SAAS;GACT,UAAU;GACV,cAAc;EAChB;EACF,GAAI,YAAY,EAAE,SAAS;EAC3B,GAAI,SAAS,EAAE,WAAW,MAAM;EAChC,GAAI,CAAC,mBAAmB,UAAU,EAAE,YAAY,SAAkB;EAClE,GAAI,cAAc,EAAE,WAAW;EAC/B,GAAG;CACL;CAEA,MAAM,UACJ,oBAAC,WAAD;EACE,KAAK;EACL,OAAO;EACP,WAAW,GACT,SAAS;GACP,IAAI;IAAC;IAAM;IAAM;IAAM;IAAM;IAAM;GAAG,CAAC,CAAC,SAAS,SAAmB,IAC/D,YACD,KAAA;GACJ;GACA,QAAQ;GACR;GACA,UAAU,WACN,OAAO,aAAa,YAAY,SAAS,OACvC,UACA,OACF,KAAA;GACJ;GACA;GACA;GACA;GACA;EACF,CAAC,GACD,SACF;EACA,GAAI;EAEH;CACQ,CAAA;CAIb,IACE,YACA,OAAO,aAAa,aACnB,SAAS,WAAW,SAAS,sBAC9B;EAEA,IAAI,uBAAuB,CAAC,YAC1B,OAAO;EAGT,MAAM,QAAQ,OAAO,SAAS,YAAY,WAAW,SAAS,UAAU;EACxE,IAAI,SAAS,WAAW,OAAO,SAAS,YAAY,UAClD,OACE,oBAAC,SAAD;GAAS,GAAI,SAAS;GAAS,OAAO,SAAS,SAAS,SAAS;GAC9D,UAAA;EACM,CAAA;EAEb,OAAO,oBAAC,SAAD;GAAgB;GAAQ,UAAA;EAAiB,CAAA;CAClD;CAEA,OAAO;AACT;AAEA,KAAK,cAAc"}
@@ -36,7 +36,7 @@ const ThemeProvider$1 = memo(({ appId = LOBE_THEME_APP_ID, children, customStyli
36
36
  genCdnUrl({
37
37
  path: "dist/katex.min.css",
38
38
  pkg: "katex",
39
- version: "0.17.0"
39
+ version: "0.18.1"
40
40
  })
41
41
  ], [customFonts, genCdnUrl]);
42
42
  const stylish = useCallback((theme) => ({
@@ -48,11 +48,12 @@ const ThemeProvider$1 = memo(({ appId = LOBE_THEME_APP_ID, children, customStyli
48
48
  ...customToken?.(theme)
49
49
  }), [customToken]);
50
50
  const theme = useCallback((appearance) => {
51
- return merge(createLobeAntdTheme({
51
+ const lobeTheme = createLobeAntdTheme({
52
52
  appearance,
53
53
  neutralColor: customTheme.neutralColor,
54
54
  primaryColor: customTheme.primaryColor
55
- }), antdTheme);
55
+ });
56
+ return merge(lobeTheme, antdTheme);
56
57
  }, [
57
58
  customTheme.primaryColor,
58
59
  customTheme.neutralColor,
@@ -1 +1 @@
1
- {"version":3,"file":"ThemeProvider.mjs","names":["ThemeProvider","lobeCustomStylish","lobeCustomToken","AntdThemeProvider","AntdConfigProvider"],"sources":["../../src/ThemeProvider/ThemeProvider.tsx"],"sourcesContent":["'use client';\n\nimport { App } from 'antd';\nimport {\n type CustomStylishParams,\n type CustomTokenParams,\n type GetAntdTheme,\n ThemeProvider as AntdThemeProvider,\n} from 'antd-style';\nimport { merge } from 'es-toolkit/compat';\nimport { memo, useCallback, useMemo, useState } from 'react';\n\nimport { useCdnFn } from '@/ConfigProvider';\nimport FontLoader from '@/FontLoader';\nimport { lobeCustomStylish, lobeCustomToken } from '@/styles';\nimport { createLobeAntdTheme } from '@/styles/theme/antdTheme';\nimport { type LobeCustomToken } from '@/types/customToken';\n\nimport AppElementContext from './AppElementContext';\nimport AntdConfigProvider from './ConfigProvider';\nimport { LOBE_THEME_APP_ID } from './constants';\nimport GlobalStyle, { EssentialStyle } from './GlobalStyle';\nimport { type ThemeProviderProps } from './type';\n\nconst ThemeProvider = memo<ThemeProviderProps>(\n ({\n appId = LOBE_THEME_APP_ID,\n children,\n customStylish,\n customToken,\n enableCustomFonts = true,\n enableGlobalStyle = true,\n customFonts,\n customTheme = {},\n className,\n style,\n theme: antdTheme,\n ...rest\n }) => {\n const genCdnUrl = useCdnFn();\n const [appRef, setAppRef] = useState<HTMLDivElement | null>(null);\n\n const webfontUrls = useMemo(\n () =>\n customFonts || [\n genCdnUrl({\n path: 'css/index.css',\n pkg: '@lobehub/webfont-geist-mono',\n version: '1.0.0',\n }),\n genCdnUrl({\n path: 'css/index-full.css',\n pkg: '@lobehub/webfont-geist',\n version: '1.0.0',\n }),\n genCdnUrl({\n path: 'css/index.css',\n pkg: '@lobehub/webfont-harmony-sans-sc',\n // pkg: '@lobehub/webfont-harmony-sans-sc-mini',\n version: '1.0.0',\n }),\n genCdnUrl({\n path: 'dist/katex.min.css',\n pkg: 'katex',\n version: '0.17.0',\n }),\n ],\n [customFonts, genCdnUrl],\n );\n\n const stylish = useCallback(\n (theme: CustomStylishParams) => ({ ...lobeCustomStylish(theme), ...customStylish?.(theme) }),\n [customStylish],\n );\n\n const token = useCallback(\n (theme: CustomTokenParams) => ({ ...lobeCustomToken(theme), ...customToken?.(theme) }),\n [customToken],\n );\n\n const theme = useCallback<GetAntdTheme>(\n (appearance) => {\n const lobeTheme = createLobeAntdTheme({\n appearance,\n neutralColor: customTheme.neutralColor,\n primaryColor: customTheme.primaryColor,\n });\n return merge(lobeTheme, antdTheme);\n },\n [customTheme.primaryColor, customTheme.neutralColor, antdTheme],\n );\n\n return (\n <>\n {enableCustomFonts &&\n webfontUrls?.length > 0 &&\n webfontUrls.map((webfont) => <FontLoader key={webfont} url={webfont} />)}\n <AntdThemeProvider<LobeCustomToken>\n customStylish={stylish}\n customToken={token}\n theme={theme}\n {...rest}\n >\n <AntdConfigProvider>\n <EssentialStyle />\n {enableGlobalStyle && <GlobalStyle />}\n\n <App\n className={className}\n style={{ isolation: 'isolate', minHeight: 'inherit', width: 'inherit', ...style }}\n >\n <div id={appId} style={contentsStyle}>\n <AppElementContext value={appRef}>\n {children}\n {/*\n In-tree portal host for Base UI floating components\n (Select, Combobox, etc.). Keeping it inside `<App>` keeps\n the antd-style / emotion theme cascade intact so popups\n render with the correct tokens, while the layout-bearing\n block lets Base UI's Portal actually mount — the outer\n wrapper uses `display: contents` and cannot host portals.\n */}\n <div data-lobe-portal-host=\"\" ref={setAppRef} style={hostPortalHostStyle} />\n </AppElementContext>\n </div>\n </App>\n </AntdConfigProvider>\n </AntdThemeProvider>\n </>\n );\n },\n);\n\nThemeProvider.displayName = 'LobeThemeProvider';\n\nexport default ThemeProvider;\n\nconst hostPortalHostStyle: React.CSSProperties = {\n // `height: 0` keeps the host invisible and gives it no hit region of\n // its own; absolute children (Base UI Positioner) have their own hit\n // region, so we must NOT set `pointer-events: none` here — it would\n // be inherited by popup descendants and break clicks/hover.\n height: 0,\n left: 0,\n // `position: fixed` keeps a stacking context so portaled popups can\n // win over sibling z-indexes. `right: 0` (instead of `width: 0`)\n // gives the host a full viewport-width containing block — without it,\n // Base UI Positioner uses `position: absolute` against a 0-width\n // containing block and collapses text to one character per line.\n position: 'fixed',\n right: 0,\n top: 0,\n zIndex: 1100,\n};\n\nconst contentsStyle: React.CSSProperties = {\n display: 'contents',\n};\n"],"mappings":";;;;;;;;;;;;;;;;AAwBA,MAAMA,kBAAgB,MACnB,EACC,QAAQ,mBACR,UACA,eACA,aACA,oBAAoB,MACpB,oBAAoB,MACpB,aACA,cAAc,CAAC,GACf,WACA,OACA,OAAO,WACP,GAAG,WACC;CACJ,MAAM,YAAY,SAAS;CAC3B,MAAM,CAAC,QAAQ,aAAa,SAAgC,IAAI;CAEhE,MAAM,cAAc,cAEhB,eAAe;EACb,UAAU;GACR,MAAM;GACN,KAAK;GACL,SAAS;EACX,CAAC;EACD,UAAU;GACR,MAAM;GACN,KAAK;GACL,SAAS;EACX,CAAC;EACD,UAAU;GACR,MAAM;GACN,KAAK;GAEL,SAAS;EACX,CAAC;EACD,UAAU;GACR,MAAM;GACN,KAAK;GACL,SAAS;EACX,CAAC;CACH,GACF,CAAC,aAAa,SAAS,CACzB;CAEA,MAAM,UAAU,aACb,WAAgC;EAAE,GAAGC,sBAAkB,KAAK;EAAG,GAAG,gBAAgB,KAAK;CAAE,IAC1F,CAAC,aAAa,CAChB;CAEA,MAAM,QAAQ,aACX,WAA8B;EAAE,GAAGC,oBAAgB,KAAK;EAAG,GAAG,cAAc,KAAK;CAAE,IACpF,CAAC,WAAW,CACd;CAEA,MAAM,QAAQ,aACX,eAAe;EAMd,OAAO,MALW,oBAAoB;GACpC;GACA,cAAc,YAAY;GAC1B,cAAc,YAAY;EAC5B,CACqB,GAAG,SAAS;CACnC,GACA;EAAC,YAAY;EAAc,YAAY;EAAc;CAAS,CAChE;CAEA,OACE,qBAAA,YAAA,EAAA,UAAA,CACG,qBACC,aAAa,SAAS,KACtB,YAAY,KAAK,YAAY,oBAAC,YAAD,EAA0B,KAAK,QAAU,GAAxB,OAAwB,CAAC,GACzE,oBAACC,eAAD;EACE,eAAe;EACf,aAAa;EACN;EACP,GAAI;YAEJ,qBAACC,kBAAD,EAAA,UAAA;GACE,oBAAC,gBAAD,CAAiB,CAAA;GAChB,qBAAqB,oBAAC,aAAD,CAAc,CAAA;GAEpC,oBAAC,KAAD;IACa;IACX,OAAO;KAAE,WAAW;KAAW,WAAW;KAAW,OAAO;KAAW,GAAG;IAAM;cAEhF,oBAAC,OAAD;KAAK,IAAI;KAAO,OAAO;eACrB,qBAAC,mBAAD;MAAmB,OAAO;gBAA1B,CACG,UASD,oBAAC,OAAD;OAAK,yBAAsB;OAAG,KAAK;OAAW,OAAO;MAAsB,CAAA,CAC1D;;IAChB,CAAA;GACF,CAAA;EACa,EAAA,CAAA;CACH,CAAA,CACnB,EAAA,CAAA;AAEN,CACF;AAEA,gBAAc,cAAc;AAI5B,MAAM,sBAA2C;CAK/C,QAAQ;CACR,MAAM;CAMN,UAAU;CACV,OAAO;CACP,KAAK;CACL,QAAQ;AACV;AAEA,MAAM,gBAAqC,EACzC,SAAS,WACX"}
1
+ {"version":3,"file":"ThemeProvider.mjs","names":["ThemeProvider","lobeCustomStylish","lobeCustomToken","AntdThemeProvider","AntdConfigProvider"],"sources":["../../src/ThemeProvider/ThemeProvider.tsx"],"sourcesContent":["'use client';\n\nimport { App } from 'antd';\nimport {\n type CustomStylishParams,\n type CustomTokenParams,\n type GetAntdTheme,\n ThemeProvider as AntdThemeProvider,\n} from 'antd-style';\nimport { merge } from 'es-toolkit/compat';\nimport { memo, useCallback, useMemo, useState } from 'react';\n\nimport { useCdnFn } from '@/ConfigProvider';\nimport FontLoader from '@/FontLoader';\nimport { lobeCustomStylish, lobeCustomToken } from '@/styles';\nimport { createLobeAntdTheme } from '@/styles/theme/antdTheme';\nimport { type LobeCustomToken } from '@/types/customToken';\n\nimport AppElementContext from './AppElementContext';\nimport AntdConfigProvider from './ConfigProvider';\nimport { LOBE_THEME_APP_ID } from './constants';\nimport GlobalStyle, { EssentialStyle } from './GlobalStyle';\nimport { type ThemeProviderProps } from './type';\n\nconst ThemeProvider = memo<ThemeProviderProps>(\n ({\n appId = LOBE_THEME_APP_ID,\n children,\n customStylish,\n customToken,\n enableCustomFonts = true,\n enableGlobalStyle = true,\n customFonts,\n customTheme = {},\n className,\n style,\n theme: antdTheme,\n ...rest\n }) => {\n const genCdnUrl = useCdnFn();\n const [appRef, setAppRef] = useState<HTMLDivElement | null>(null);\n\n const webfontUrls = useMemo(\n () =>\n customFonts || [\n genCdnUrl({\n path: 'css/index.css',\n pkg: '@lobehub/webfont-geist-mono',\n version: '1.0.0',\n }),\n genCdnUrl({\n path: 'css/index-full.css',\n pkg: '@lobehub/webfont-geist',\n version: '1.0.0',\n }),\n genCdnUrl({\n path: 'css/index.css',\n pkg: '@lobehub/webfont-harmony-sans-sc',\n // pkg: '@lobehub/webfont-harmony-sans-sc-mini',\n version: '1.0.0',\n }),\n genCdnUrl({\n path: 'dist/katex.min.css',\n pkg: 'katex',\n version: '0.18.1',\n }),\n ],\n [customFonts, genCdnUrl],\n );\n\n const stylish = useCallback(\n (theme: CustomStylishParams) => ({ ...lobeCustomStylish(theme), ...customStylish?.(theme) }),\n [customStylish],\n );\n\n const token = useCallback(\n (theme: CustomTokenParams) => ({ ...lobeCustomToken(theme), ...customToken?.(theme) }),\n [customToken],\n );\n\n const theme = useCallback<GetAntdTheme>(\n (appearance) => {\n const lobeTheme = createLobeAntdTheme({\n appearance,\n neutralColor: customTheme.neutralColor,\n primaryColor: customTheme.primaryColor,\n });\n return merge(lobeTheme, antdTheme);\n },\n [customTheme.primaryColor, customTheme.neutralColor, antdTheme],\n );\n\n return (\n <>\n {enableCustomFonts &&\n webfontUrls?.length > 0 &&\n webfontUrls.map((webfont) => <FontLoader key={webfont} url={webfont} />)}\n <AntdThemeProvider<LobeCustomToken>\n customStylish={stylish}\n customToken={token}\n theme={theme}\n {...rest}\n >\n <AntdConfigProvider>\n <EssentialStyle />\n {enableGlobalStyle && <GlobalStyle />}\n\n <App\n className={className}\n style={{ isolation: 'isolate', minHeight: 'inherit', width: 'inherit', ...style }}\n >\n <div id={appId} style={contentsStyle}>\n <AppElementContext value={appRef}>\n {children}\n {/*\n In-tree portal host for Base UI floating components\n (Select, Combobox, etc.). Keeping it inside `<App>` keeps\n the antd-style / emotion theme cascade intact so popups\n render with the correct tokens, while the layout-bearing\n block lets Base UI's Portal actually mount — the outer\n wrapper uses `display: contents` and cannot host portals.\n */}\n <div data-lobe-portal-host=\"\" ref={setAppRef} style={hostPortalHostStyle} />\n </AppElementContext>\n </div>\n </App>\n </AntdConfigProvider>\n </AntdThemeProvider>\n </>\n );\n },\n);\n\nThemeProvider.displayName = 'LobeThemeProvider';\n\nexport default ThemeProvider;\n\nconst hostPortalHostStyle: React.CSSProperties = {\n // `height: 0` keeps the host invisible and gives it no hit region of\n // its own; absolute children (Base UI Positioner) have their own hit\n // region, so we must NOT set `pointer-events: none` here — it would\n // be inherited by popup descendants and break clicks/hover.\n height: 0,\n left: 0,\n // `position: fixed` keeps a stacking context so portaled popups can\n // win over sibling z-indexes. `right: 0` (instead of `width: 0`)\n // gives the host a full viewport-width containing block — without it,\n // Base UI Positioner uses `position: absolute` against a 0-width\n // containing block and collapses text to one character per line.\n position: 'fixed',\n right: 0,\n top: 0,\n zIndex: 1100,\n};\n\nconst contentsStyle: React.CSSProperties = {\n display: 'contents',\n};\n"],"mappings":";;;;;;;;;;;;;;;;AAwBA,MAAMA,kBAAgB,MACnB,EACC,QAAQ,mBACR,UACA,eACA,aACA,oBAAoB,MACpB,oBAAoB,MACpB,aACA,cAAc,CAAC,GACf,WACA,OACA,OAAO,WACP,GAAG,WACC;CACJ,MAAM,YAAY,SAAS;CAC3B,MAAM,CAAC,QAAQ,aAAa,SAAgC,IAAI;CAEhE,MAAM,cAAc,cAEhB,eAAe;EACb,UAAU;GACR,MAAM;GACN,KAAK;GACL,SAAS;EACX,CAAC;EACD,UAAU;GACR,MAAM;GACN,KAAK;GACL,SAAS;EACX,CAAC;EACD,UAAU;GACR,MAAM;GACN,KAAK;GAEL,SAAS;EACX,CAAC;EACD,UAAU;GACR,MAAM;GACN,KAAK;GACL,SAAS;EACX,CAAC;CACH,GACF,CAAC,aAAa,SAAS,CACzB;CAEA,MAAM,UAAU,aACb,WAAgC;EAAE,GAAGC,sBAAkB,KAAK;EAAG,GAAG,gBAAgB,KAAK;CAAE,IAC1F,CAAC,aAAa,CAChB;CAEA,MAAM,QAAQ,aACX,WAA8B;EAAE,GAAGC,oBAAgB,KAAK;EAAG,GAAG,cAAc,KAAK;CAAE,IACpF,CAAC,WAAW,CACd;CAEA,MAAM,QAAQ,aACX,eAAe;EACd,MAAM,YAAY,oBAAoB;GACpC;GACA,cAAc,YAAY;GAC1B,cAAc,YAAY;EAC5B,CAAC;EACD,OAAO,MAAM,WAAW,SAAS;CACnC,GACA;EAAC,YAAY;EAAc,YAAY;EAAc;CAAS,CAChE;CAEA,OACE,qBAAA,YAAA,EAAA,UAAA,CACG,qBACC,aAAa,SAAS,KACtB,YAAY,KAAK,YAAY,oBAAC,YAAD,EAA0B,KAAK,QAAU,GAAxB,OAAwB,CAAC,GACzE,oBAACC,eAAD;EACE,eAAe;EACf,aAAa;EACN;EACP,GAAI;EAEJ,UAAA,qBAACC,kBAAD,EAAA,UAAA;GACE,oBAAC,gBAAD,CAAiB,CAAA;GAChB,qBAAqB,oBAAC,aAAD,CAAc,CAAA;GAEpC,oBAAC,KAAD;IACa;IACX,OAAO;KAAE,WAAW;KAAW,WAAW;KAAW,OAAO;KAAW,GAAG;IAAM;IAEhF,UAAA,oBAAC,OAAD;KAAK,IAAI;KAAO,OAAO;KACrB,UAAA,qBAAC,mBAAD;MAAmB,OAAO;MAA1B,UAAA,CACG,UASD,oBAAC,OAAD;OAAK,yBAAsB;OAAG,KAAK;OAAW,OAAO;MAAsB,CAAA,CAC1D;;IAChB,CAAA;GACF,CAAA;EACa,EAAA,CAAA;CACH,CAAA,CACnB,EAAA,CAAA;AAEN,CACF;AAEA,gBAAc,cAAc;AAI5B,MAAM,sBAA2C;CAK/C,QAAQ;CACR,MAAM;CAMN,UAAU;CACV,OAAO;CACP,KAAK;CACL,QAAQ;AACV;AAEA,MAAM,gBAAqC,EACzC,SAAS,WACX"}
@@ -1 +1 @@
1
- {"version":3,"file":"ThemeSwitch.mjs","names":["Flexbox"],"sources":["../../src/ThemeSwitch/ThemeSwitch.tsx"],"sourcesContent":["'use client';\n\nimport { Select } from 'antd';\nimport { Monitor, Moon, Sun } from 'lucide-react';\nimport { type FC, useMemo } from 'react';\n\nimport ActionIcon from '@/ActionIcon';\nimport { type DropdownItem } from '@/DropdownMenu';\nimport DropdownMenu from '@/DropdownMenu';\nimport { Flexbox } from '@/Flex';\nimport Icon from '@/Icon';\n\nimport { type ThemeSwitchProps } from './type';\n\nconst DEFAULT_ICON_SET = {\n auto: Monitor,\n dark: Moon,\n light: Sun,\n};\n\nconst ThemeSwitch: FC<ThemeSwitchProps> = ({\n size = 'middle',\n themeMode,\n onThemeSwitch,\n type = 'icon',\n labels = {\n auto: 'System',\n dark: 'Dark',\n light: 'Light',\n },\n className,\n variant,\n style,\n}) => {\n const items: DropdownItem[] = useMemo(\n () => [\n {\n icon: DEFAULT_ICON_SET.auto,\n key: 'auto',\n label: labels.auto,\n onClick: () => onThemeSwitch('auto'),\n },\n {\n icon: DEFAULT_ICON_SET.light,\n key: 'light',\n label: labels.light,\n onClick: () => onThemeSwitch('light'),\n },\n {\n icon: DEFAULT_ICON_SET.dark,\n key: 'dark',\n label: labels.dark,\n onClick: () => onThemeSwitch('dark'),\n },\n ],\n [labels, onThemeSwitch],\n );\n\n return type === 'select' ? (\n <Select\n className={className}\n defaultValue={themeMode}\n style={style}\n variant={variant}\n options={items.map((item: any) => ({\n label: (\n <Flexbox horizontal align={'center'} gap={8}>\n <Icon icon={item.icon} />\n {item.label}\n </Flexbox>\n ),\n value: item.key,\n }))}\n onChange={onThemeSwitch}\n />\n ) : (\n <DropdownMenu items={items} nativeButton={false}>\n <ActionIcon\n className={className}\n icon={DEFAULT_ICON_SET[themeMode]}\n size={size}\n style={style}\n variant={variant}\n />\n </DropdownMenu>\n );\n};\n\nThemeSwitch.displayName = 'ThemeSwitch';\n\nexport default ThemeSwitch;\n"],"mappings":";;;;;;;;;;AAcA,MAAM,mBAAmB;CACvB,MAAM;CACN,MAAM;CACN,OAAO;AACT;AAEA,MAAM,eAAqC,EACzC,OAAO,UACP,WACA,eACA,OAAO,QACP,SAAS;CACP,MAAM;CACN,MAAM;CACN,OAAO;AACT,GACA,WACA,SACA,YACI;CACJ,MAAM,QAAwB,cACtB;EACJ;GACE,MAAM,iBAAiB;GACvB,KAAK;GACL,OAAO,OAAO;GACd,eAAe,cAAc,MAAM;EACrC;EACA;GACE,MAAM,iBAAiB;GACvB,KAAK;GACL,OAAO,OAAO;GACd,eAAe,cAAc,OAAO;EACtC;EACA;GACE,MAAM,iBAAiB;GACvB,KAAK;GACL,OAAO,OAAO;GACd,eAAe,cAAc,MAAM;EACrC;CACF,GACA,CAAC,QAAQ,aAAa,CACxB;CAEA,OAAO,SAAS,WACd,oBAAC,QAAD;EACa;EACX,cAAc;EACP;EACE;EACT,SAAS,MAAM,KAAK,UAAe;GACjC,OACE,qBAACA,mBAAD;IAAS,YAAA;IAAW,OAAO;IAAU,KAAK;cAA1C,CACE,oBAAC,MAAD,EAAM,MAAM,KAAK,KAAO,CAAA,GACvB,KAAK,KACC;;GAEX,OAAO,KAAK;EACd,EAAE;EACF,UAAU;CACX,CAAA,IAED,oBAAC,cAAD;EAAqB;EAAO,cAAc;YACxC,oBAAC,YAAD;GACa;GACX,MAAM,iBAAiB;GACjB;GACC;GACE;EACV,CAAA;CACW,CAAA;AAElB;AAEA,YAAY,cAAc"}
1
+ {"version":3,"file":"ThemeSwitch.mjs","names":["Flexbox"],"sources":["../../src/ThemeSwitch/ThemeSwitch.tsx"],"sourcesContent":["'use client';\n\nimport { Select } from 'antd';\nimport { Monitor, Moon, Sun } from 'lucide-react';\nimport { type FC, useMemo } from 'react';\n\nimport ActionIcon from '@/ActionIcon';\nimport { type DropdownItem } from '@/DropdownMenu';\nimport DropdownMenu from '@/DropdownMenu';\nimport { Flexbox } from '@/Flex';\nimport Icon from '@/Icon';\n\nimport { type ThemeSwitchProps } from './type';\n\nconst DEFAULT_ICON_SET = {\n auto: Monitor,\n dark: Moon,\n light: Sun,\n};\n\nconst ThemeSwitch: FC<ThemeSwitchProps> = ({\n size = 'middle',\n themeMode,\n onThemeSwitch,\n type = 'icon',\n labels = {\n auto: 'System',\n dark: 'Dark',\n light: 'Light',\n },\n className,\n variant,\n style,\n}) => {\n const items: DropdownItem[] = useMemo(\n () => [\n {\n icon: DEFAULT_ICON_SET.auto,\n key: 'auto',\n label: labels.auto,\n onClick: () => onThemeSwitch('auto'),\n },\n {\n icon: DEFAULT_ICON_SET.light,\n key: 'light',\n label: labels.light,\n onClick: () => onThemeSwitch('light'),\n },\n {\n icon: DEFAULT_ICON_SET.dark,\n key: 'dark',\n label: labels.dark,\n onClick: () => onThemeSwitch('dark'),\n },\n ],\n [labels, onThemeSwitch],\n );\n\n return type === 'select' ? (\n <Select\n className={className}\n defaultValue={themeMode}\n style={style}\n variant={variant}\n options={items.map((item: any) => ({\n label: (\n <Flexbox horizontal align={'center'} gap={8}>\n <Icon icon={item.icon} />\n {item.label}\n </Flexbox>\n ),\n value: item.key,\n }))}\n onChange={onThemeSwitch}\n />\n ) : (\n <DropdownMenu items={items} nativeButton={false}>\n <ActionIcon\n className={className}\n icon={DEFAULT_ICON_SET[themeMode]}\n size={size}\n style={style}\n variant={variant}\n />\n </DropdownMenu>\n );\n};\n\nThemeSwitch.displayName = 'ThemeSwitch';\n\nexport default ThemeSwitch;\n"],"mappings":";;;;;;;;;;AAcA,MAAM,mBAAmB;CACvB,MAAM;CACN,MAAM;CACN,OAAO;AACT;AAEA,MAAM,eAAqC,EACzC,OAAO,UACP,WACA,eACA,OAAO,QACP,SAAS;CACP,MAAM;CACN,MAAM;CACN,OAAO;AACT,GACA,WACA,SACA,YACI;CACJ,MAAM,QAAwB,cACtB;EACJ;GACE,MAAM,iBAAiB;GACvB,KAAK;GACL,OAAO,OAAO;GACd,eAAe,cAAc,MAAM;EACrC;EACA;GACE,MAAM,iBAAiB;GACvB,KAAK;GACL,OAAO,OAAO;GACd,eAAe,cAAc,OAAO;EACtC;EACA;GACE,MAAM,iBAAiB;GACvB,KAAK;GACL,OAAO,OAAO;GACd,eAAe,cAAc,MAAM;EACrC;CACF,GACA,CAAC,QAAQ,aAAa,CACxB;CAEA,OAAO,SAAS,WACd,oBAAC,QAAD;EACa;EACX,cAAc;EACP;EACE;EACT,SAAS,MAAM,KAAK,UAAe;GACjC,OACE,qBAACA,mBAAD;IAAS,YAAA;IAAW,OAAO;IAAU,KAAK;IAA1C,UAAA,CACE,oBAAC,MAAD,EAAM,MAAM,KAAK,KAAO,CAAA,GACvB,KAAK,KACC;;GAEX,OAAO,KAAK;EACd,EAAE;EACF,UAAU;CACX,CAAA,IAED,oBAAC,cAAD;EAAqB;EAAO,cAAc;EACxC,UAAA,oBAAC,YAAD;GACa;GACX,MAAM,iBAAiB;GACjB;GACC;GACE;EACV,CAAA;CACW,CAAA;AAElB;AAEA,YAAY,cAAc"}
@@ -1 +1 @@
1
- {"version":3,"file":"Toc.mjs","names":[],"sources":["../../src/Toc/Toc.tsx"],"sourcesContent":["'use client';\n\nimport { Anchor } from 'antd';\nimport { cx } from 'antd-style';\nimport { memo, useMemo } from 'react';\n\nimport { styles } from './style';\nimport { default as TocMobile } from './TocMobile';\nimport { type TocProps } from './type';\nimport { mapItems } from './utils';\n\nconst Toc = memo<TocProps>(\n ({ activeKey, items, getContainer, isMobile, headerHeight = 64, tocWidth = 176 }) => {\n // Convert props to CSS variables\n const cssVariables = useMemo<Record<string, string>>(\n () => ({\n '--toc-header-height': `${headerHeight}px`,\n '--toc-width': `${tocWidth}px`,\n }),\n [headerHeight, tocWidth],\n );\n\n if (isMobile)\n return (\n <TocMobile\n activeKey={activeKey}\n getContainer={getContainer}\n headerHeight={headerHeight}\n items={items}\n />\n );\n\n return (\n <section className={cx(styles.container, styles.anchor)} style={cssVariables}>\n <h4>Table of Contents</h4>\n <Anchor\n getContainer={getContainer}\n items={mapItems(items)}\n targetOffset={headerHeight + 12}\n />\n </section>\n );\n },\n);\n\nToc.displayName = 'Toc';\n\nexport default Toc;\n"],"mappings":";;;;;;;;;AAWA,MAAM,MAAM,MACT,EAAE,WAAW,OAAO,cAAc,UAAU,eAAe,IAAI,WAAW,UAAU;CAEnF,MAAM,eAAe,eACZ;EACL,uBAAuB,GAAG,aAAa;EACvC,eAAe,GAAG,SAAS;CAC7B,IACA,CAAC,cAAc,QAAQ,CACzB;CAEA,IAAI,UACF,OACE,oBAAC,WAAD;EACa;EACG;EACA;EACP;CACR,CAAA;CAGL,OACE,qBAAC,WAAD;EAAS,WAAW,GAAG,OAAO,WAAW,OAAO,MAAM;EAAG,OAAO;YAAhE,CACE,oBAAC,MAAD,EAAA,UAAI,oBAAqB,CAAA,GACzB,oBAAC,QAAD;GACgB;GACd,OAAO,SAAS,KAAK;GACrB,cAAc,eAAe;EAC9B,CAAA,CACM;;AAEb,CACF;AAEA,IAAI,cAAc"}
1
+ {"version":3,"file":"Toc.mjs","names":[],"sources":["../../src/Toc/Toc.tsx"],"sourcesContent":["'use client';\n\nimport { Anchor } from 'antd';\nimport { cx } from 'antd-style';\nimport { memo, useMemo } from 'react';\n\nimport { styles } from './style';\nimport { default as TocMobile } from './TocMobile';\nimport { type TocProps } from './type';\nimport { mapItems } from './utils';\n\nconst Toc = memo<TocProps>(\n ({ activeKey, items, getContainer, isMobile, headerHeight = 64, tocWidth = 176 }) => {\n // Convert props to CSS variables\n const cssVariables = useMemo<Record<string, string>>(\n () => ({\n '--toc-header-height': `${headerHeight}px`,\n '--toc-width': `${tocWidth}px`,\n }),\n [headerHeight, tocWidth],\n );\n\n if (isMobile)\n return (\n <TocMobile\n activeKey={activeKey}\n getContainer={getContainer}\n headerHeight={headerHeight}\n items={items}\n />\n );\n\n return (\n <section className={cx(styles.container, styles.anchor)} style={cssVariables}>\n <h4>Table of Contents</h4>\n <Anchor\n getContainer={getContainer}\n items={mapItems(items)}\n targetOffset={headerHeight + 12}\n />\n </section>\n );\n },\n);\n\nToc.displayName = 'Toc';\n\nexport default Toc;\n"],"mappings":";;;;;;;;;AAWA,MAAM,MAAM,MACT,EAAE,WAAW,OAAO,cAAc,UAAU,eAAe,IAAI,WAAW,UAAU;CAEnF,MAAM,eAAe,eACZ;EACL,uBAAuB,GAAG,aAAa;EACvC,eAAe,GAAG,SAAS;CAC7B,IACA,CAAC,cAAc,QAAQ,CACzB;CAEA,IAAI,UACF,OACE,oBAAC,WAAD;EACa;EACG;EACA;EACP;CACR,CAAA;CAGL,OACE,qBAAC,WAAD;EAAS,WAAW,GAAG,OAAO,WAAW,OAAO,MAAM;EAAG,OAAO;EAAhE,UAAA,CACE,oBAAC,MAAD,EAAA,UAAI,oBAAqB,CAAA,GACzB,oBAAC,QAAD;GACgB;GACd,OAAO,SAAS,KAAK;GACrB,cAAc,eAAe;EAC9B,CAAA,CACM;;AAEb,CACF;AAEA,IAAI,cAAc"}
@@ -1 +1 @@
1
- {"version":3,"file":"TocMobile.mjs","names":["useControlledState"],"sources":["../../src/Toc/TocMobile.tsx"],"sourcesContent":["'use client';\n\nimport { Anchor, Collapse, ConfigProvider } from 'antd';\nimport { PanelTopClose, PanelTopOpen } from 'lucide-react';\nimport { memo, useMemo } from 'react';\nimport useControlledState from 'use-merge-value';\n\nimport ActionIcon from '@/ActionIcon';\n\nimport { styles } from './style';\nimport type { TocMobileProps } from './type';\nimport { mapItems } from './utils';\n\nconst TocMobile = memo<TocMobileProps>(\n ({ items, activeKey, onChange, getContainer, headerHeight = 64, tocWidth = 176 }) => {\n // tocWidth is part of the interface but not used in this component\n void tocWidth;\n const [activeLink, setActiveLink] = useControlledState<string>('', {\n onChange,\n value: activeKey,\n });\n\n const activeAnchor = items.find((item) => item.id === activeLink);\n\n const tocItems = useMemo(() => mapItems(items), [items]);\n\n return (\n <ConfigProvider theme={{ token: { fontSize: 12, sizeStep: 3 } }}>\n <section className={styles.mobileCtn}>\n <Collapse\n ghost\n className={styles.expand}\n expandIconPlacement={'end'}\n expandIcon={({ isActive }) => (\n <ActionIcon icon={isActive ? PanelTopClose : PanelTopOpen} size={'small'} />\n )}\n >\n <Collapse.Panel\n forceRender\n header={activeAnchor ? activeAnchor.title : 'TOC'}\n key={'toc'}\n >\n <ConfigProvider theme={{ token: { fontSize: 14, sizeStep: 4 } }}>\n <Anchor\n getContainer={getContainer}\n items={tocItems}\n targetOffset={headerHeight + 48}\n onChange={(currentLink) => {\n setActiveLink(currentLink.replace('#', ''));\n }}\n />\n </ConfigProvider>\n </Collapse.Panel>\n </Collapse>\n </section>\n </ConfigProvider>\n );\n },\n);\n\nTocMobile.displayName = 'TocMobile';\n\nexport default TocMobile;\n"],"mappings":";;;;;;;;;;AAaA,MAAM,YAAY,MACf,EAAE,OAAO,WAAW,UAAU,cAAc,eAAe,IAAI,WAAW,UAAU;CAGnF,MAAM,CAAC,YAAY,iBAAiBA,cAA2B,IAAI;EACjE;EACA,OAAO;CACT,CAAC;CAED,MAAM,eAAe,MAAM,MAAM,SAAS,KAAK,OAAO,UAAU;CAEhE,MAAM,WAAW,cAAc,SAAS,KAAK,GAAG,CAAC,KAAK,CAAC;CAEvD,OACE,oBAAC,gBAAD;EAAgB,OAAO,EAAE,OAAO;GAAE,UAAU;GAAI,UAAU;EAAE,EAAE;YAC5D,oBAAC,WAAD;GAAS,WAAW,OAAO;aACzB,oBAAC,UAAD;IACE,OAAA;IACA,WAAW,OAAO;IAClB,qBAAqB;IACrB,aAAa,EAAE,eACb,oBAAC,YAAD;KAAY,MAAM,WAAW,gBAAgB;KAAc,MAAM;IAAU,CAAA;cAG7E,oBAAC,SAAS,OAAV;KACE,aAAA;KACA,QAAQ,eAAe,aAAa,QAAQ;eAG5C,oBAAC,gBAAD;MAAgB,OAAO,EAAE,OAAO;OAAE,UAAU;OAAI,UAAU;MAAE,EAAE;gBAC5D,oBAAC,QAAD;OACgB;OACd,OAAO;OACP,cAAc,eAAe;OAC7B,WAAW,gBAAgB;QACzB,cAAc,YAAY,QAAQ,KAAK,EAAE,CAAC;OAC5C;MACD,CAAA;KACa,CAAA;IACF,GAZT,KAYS;GACR,CAAA;EACH,CAAA;CACK,CAAA;AAEpB,CACF;AAEA,UAAU,cAAc"}
1
+ {"version":3,"file":"TocMobile.mjs","names":["useControlledState"],"sources":["../../src/Toc/TocMobile.tsx"],"sourcesContent":["'use client';\n\nimport { Anchor, Collapse, ConfigProvider } from 'antd';\nimport { PanelTopClose, PanelTopOpen } from 'lucide-react';\nimport { memo, useMemo } from 'react';\nimport useControlledState from 'use-merge-value';\n\nimport ActionIcon from '@/ActionIcon';\n\nimport { styles } from './style';\nimport type { TocMobileProps } from './type';\nimport { mapItems } from './utils';\n\nconst TocMobile = memo<TocMobileProps>(\n ({ items, activeKey, onChange, getContainer, headerHeight = 64, tocWidth = 176 }) => {\n // tocWidth is part of the interface but not used in this component\n void tocWidth;\n const [activeLink, setActiveLink] = useControlledState<string>('', {\n onChange,\n value: activeKey,\n });\n\n const activeAnchor = items.find((item) => item.id === activeLink);\n\n const tocItems = useMemo(() => mapItems(items), [items]);\n\n return (\n <ConfigProvider theme={{ token: { fontSize: 12, sizeStep: 3 } }}>\n <section className={styles.mobileCtn}>\n <Collapse\n ghost\n className={styles.expand}\n expandIconPlacement={'end'}\n expandIcon={({ isActive }) => (\n <ActionIcon icon={isActive ? PanelTopClose : PanelTopOpen} size={'small'} />\n )}\n >\n <Collapse.Panel\n forceRender\n header={activeAnchor ? activeAnchor.title : 'TOC'}\n key={'toc'}\n >\n <ConfigProvider theme={{ token: { fontSize: 14, sizeStep: 4 } }}>\n <Anchor\n getContainer={getContainer}\n items={tocItems}\n targetOffset={headerHeight + 48}\n onChange={(currentLink) => {\n setActiveLink(currentLink.replace('#', ''));\n }}\n />\n </ConfigProvider>\n </Collapse.Panel>\n </Collapse>\n </section>\n </ConfigProvider>\n );\n },\n);\n\nTocMobile.displayName = 'TocMobile';\n\nexport default TocMobile;\n"],"mappings":";;;;;;;;;;AAaA,MAAM,YAAY,MACf,EAAE,OAAO,WAAW,UAAU,cAAc,eAAe,IAAI,WAAW,UAAU;CAGnF,MAAM,CAAC,YAAY,iBAAiBA,cAA2B,IAAI;EACjE;EACA,OAAO;CACT,CAAC;CAED,MAAM,eAAe,MAAM,MAAM,SAAS,KAAK,OAAO,UAAU;CAEhE,MAAM,WAAW,cAAc,SAAS,KAAK,GAAG,CAAC,KAAK,CAAC;CAEvD,OACE,oBAAC,gBAAD;EAAgB,OAAO,EAAE,OAAO;GAAE,UAAU;GAAI,UAAU;EAAE,EAAE;EAC5D,UAAA,oBAAC,WAAD;GAAS,WAAW,OAAO;GACzB,UAAA,oBAAC,UAAD;IACE,OAAA;IACA,WAAW,OAAO;IAClB,qBAAqB;IACrB,aAAa,EAAE,eACb,oBAAC,YAAD;KAAY,MAAM,WAAW,gBAAgB;KAAc,MAAM;IAAU,CAAA;IAG7E,UAAA,oBAAC,SAAS,OAAV;KACE,aAAA;KACA,QAAQ,eAAe,aAAa,QAAQ;KAG5C,UAAA,oBAAC,gBAAD;MAAgB,OAAO,EAAE,OAAO;OAAE,UAAU;OAAI,UAAU;MAAE,EAAE;MAC5D,UAAA,oBAAC,QAAD;OACgB;OACd,OAAO;OACP,cAAc,eAAe;OAC7B,WAAW,gBAAgB;QACzB,cAAc,YAAY,QAAQ,KAAK,EAAE,CAAC;OAC5C;MACD,CAAA;KACa,CAAA;IACF,GAZT,KAYS;GACR,CAAA;EACH,CAAA;CACK,CAAA;AAEpB,CACF;AAEA,UAAU,cAAc"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","names":["Flexbox"],"sources":["../../src/Video/index.tsx"],"sourcesContent":["'use client';\n\nimport { Skeleton } from 'antd';\nimport { cssVar, cx } from 'antd-style';\nimport { PlayIcon } from 'lucide-react';\nimport { type CSSProperties, memo, type Ref, useMemo, useState } from 'react';\n\nimport ActionIcon from '@/ActionIcon';\nimport { Flexbox, type FlexboxProps } from '@/Flex';\nimport { type VideoProps as VProps } from '@/types';\n\nimport { styles, variants } from './style';\n\nexport interface VideoProps extends VProps, Pick<FlexboxProps, 'width' | 'height'> {\n autoPlay?: boolean;\n classNames?: {\n mask?: string;\n video?: string;\n wrapper?: string;\n };\n isLoading?: boolean;\n loop?: boolean;\n maxHeight?: number | string;\n maxWidth?: number | string;\n minHeight?: number | string;\n minWidth?: number | string;\n muted?: HTMLVideoElement['muted'];\n onEnded?: VProps['onEnded'];\n onMouseEnter?: VProps['onMouseEnter'];\n onMouseLeave?: VProps['onMouseLeave'];\n onPause?: VProps['onPause'];\n onPlay?: VProps['onPlay'];\n onPlaying?: VProps['onPlaying'];\n onProgress?: VProps['onProgress'];\n poster?: string;\n preload?: HTMLVideoElement['preload'];\n preview?: boolean;\n ref?: Ref<HTMLDivElement>;\n size?: number | string;\n src: string;\n styles?: {\n mask?: CSSProperties;\n video?: CSSProperties;\n wrapper?: CSSProperties;\n };\n variant?: 'borderless' | 'filled' | 'outlined';\n}\n\nconst Video = memo<VideoProps>(\n ({\n ref,\n preload = 'auto',\n src,\n style,\n classNames,\n className,\n maxHeight = '100%',\n maxWidth = '100%',\n minHeight,\n minWidth,\n onEnded,\n onPause,\n onPlay,\n onPlaying,\n width,\n height,\n onMouseEnter,\n styles: customStyles,\n onMouseLeave,\n preview = true,\n isLoading,\n variant = 'filled',\n autoPlay,\n ...rest\n }) => {\n const [isPlaying, setIsPlaying] = useState(false);\n const [showControls, setShowControls] = useState(false);\n\n // Convert props to CSS variables\n const cssVariables = useMemo<Record<string, string>>(() => {\n const vars: Record<string, string> = {};\n if (maxHeight !== undefined) {\n vars['--video-max-height'] = typeof maxHeight === 'number' ? `${maxHeight}px` : maxHeight;\n }\n if (maxWidth !== undefined) {\n vars['--video-max-width'] = typeof maxWidth === 'number' ? `${maxWidth}px` : maxWidth;\n }\n if (minHeight !== undefined) {\n vars['--video-min-height'] = typeof minHeight === 'number' ? `${minHeight}px` : minHeight;\n }\n if (minWidth !== undefined) {\n vars['--video-min-width'] = typeof minWidth === 'number' ? `${minWidth}px` : minWidth;\n }\n return vars;\n }, [maxHeight, maxWidth, minHeight, minWidth]);\n\n if (isLoading)\n return (\n <Skeleton.Avatar\n active\n style={{\n borderRadius: cssVar.borderRadiusLG,\n height,\n maxHeight,\n maxWidth,\n minHeight,\n minWidth,\n width,\n }}\n />\n );\n\n return (\n <Flexbox\n className={cx(variants({ variant }), className, classNames?.wrapper)}\n height={height}\n ref={ref}\n width={width}\n style={{\n ...cssVariables,\n ...style,\n ...customStyles?.wrapper,\n }}\n >\n {preview && !isPlaying && (\n <Flexbox\n align={'center'}\n className={cx(styles.mask, classNames?.mask)}\n justify={'center'}\n style={customStyles?.mask}\n >\n <ActionIcon color={'#fff'} icon={PlayIcon} variant={'filled'} />\n </Flexbox>\n )}\n <video\n autoPlay={autoPlay}\n className={cx(styles.video, classNames?.video)}\n controls={showControls}\n height={height}\n preload={preload}\n width={width}\n style={{\n height: 'auto',\n maxWidth: '100%',\n ...customStyles?.video,\n }}\n onEnded={(e) => {\n setIsPlaying(false);\n onEnded?.(e);\n }}\n onMouseEnter={(e) => {\n setShowControls(true);\n onMouseEnter?.(e);\n }}\n onMouseLeave={(e) => {\n setShowControls(false);\n onMouseLeave?.(e);\n }}\n onPause={(e) => {\n setIsPlaying(false);\n onPause?.(e);\n }}\n onPlay={(e) => {\n setIsPlaying(true);\n onPlay?.(e);\n }}\n onPlaying={(e) => {\n setIsPlaying(true);\n onPlaying?.(e);\n }}\n {...rest}\n >\n <source src={src} />\n </video>\n </Flexbox>\n );\n },\n);\n\nVideo.displayName = 'Video';\n\nexport default Video;\n"],"mappings":";;;;;;;;;;AAgDA,MAAM,QAAQ,MACX,EACC,KACA,UAAU,QACV,KACA,OACA,YACA,WACA,YAAY,QACZ,WAAW,QACX,WACA,UACA,SACA,SACA,QACA,WACA,OACA,QACA,cACA,QAAQ,cACR,cACA,UAAU,MACV,WACA,UAAU,UACV,UACA,GAAG,WACC;CACJ,MAAM,CAAC,WAAW,gBAAgB,SAAS,KAAK;CAChD,MAAM,CAAC,cAAc,mBAAmB,SAAS,KAAK;CAGtD,MAAM,eAAe,cAAsC;EACzD,MAAM,OAA+B,CAAC;EACtC,IAAI,cAAc,KAAA,GAChB,KAAK,wBAAwB,OAAO,cAAc,WAAW,GAAG,UAAU,MAAM;EAElF,IAAI,aAAa,KAAA,GACf,KAAK,uBAAuB,OAAO,aAAa,WAAW,GAAG,SAAS,MAAM;EAE/E,IAAI,cAAc,KAAA,GAChB,KAAK,wBAAwB,OAAO,cAAc,WAAW,GAAG,UAAU,MAAM;EAElF,IAAI,aAAa,KAAA,GACf,KAAK,uBAAuB,OAAO,aAAa,WAAW,GAAG,SAAS,MAAM;EAE/E,OAAO;CACT,GAAG;EAAC;EAAW;EAAU;EAAW;CAAQ,CAAC;CAE7C,IAAI,WACF,OACE,oBAAC,SAAS,QAAV;EACE,QAAA;EACA,OAAO;GACL,cAAc,OAAO;GACrB;GACA;GACA;GACA;GACA;GACA;EACF;CACD,CAAA;CAGL,OACE,qBAACA,mBAAD;EACE,WAAW,GAAG,SAAS,EAAE,QAAQ,CAAC,GAAG,WAAW,YAAY,OAAO;EAC3D;EACH;EACE;EACP,OAAO;GACL,GAAG;GACH,GAAG;GACH,GAAG,cAAc;EACnB;YATF,CAWG,WAAW,CAAC,aACX,oBAACA,mBAAD;GACE,OAAO;GACP,WAAW,GAAG,OAAO,MAAM,YAAY,IAAI;GAC3C,SAAS;GACT,OAAO,cAAc;aAErB,oBAAC,YAAD;IAAY,OAAO;IAAQ,MAAM;IAAU,SAAS;GAAW,CAAA;EACxD,CAAA,GAEX,oBAAC,SAAD;GACY;GACV,WAAW,GAAG,OAAO,OAAO,YAAY,KAAK;GAC7C,UAAU;GACF;GACC;GACF;GACP,OAAO;IACL,QAAQ;IACR,UAAU;IACV,GAAG,cAAc;GACnB;GACA,UAAU,MAAM;IACd,aAAa,KAAK;IAClB,UAAU,CAAC;GACb;GACA,eAAe,MAAM;IACnB,gBAAgB,IAAI;IACpB,eAAe,CAAC;GAClB;GACA,eAAe,MAAM;IACnB,gBAAgB,KAAK;IACrB,eAAe,CAAC;GAClB;GACA,UAAU,MAAM;IACd,aAAa,KAAK;IAClB,UAAU,CAAC;GACb;GACA,SAAS,MAAM;IACb,aAAa,IAAI;IACjB,SAAS,CAAC;GACZ;GACA,YAAY,MAAM;IAChB,aAAa,IAAI;IACjB,YAAY,CAAC;GACf;GACA,GAAI;aAEJ,oBAAC,UAAD,EAAa,IAAM,CAAA;EACd,CAAA,CACA;;AAEb,CACF;AAEA,MAAM,cAAc"}
1
+ {"version":3,"file":"index.mjs","names":["Flexbox"],"sources":["../../src/Video/index.tsx"],"sourcesContent":["'use client';\n\nimport { Skeleton } from 'antd';\nimport { cssVar, cx } from 'antd-style';\nimport { PlayIcon } from 'lucide-react';\nimport { type CSSProperties, memo, type Ref, useMemo, useState } from 'react';\n\nimport ActionIcon from '@/ActionIcon';\nimport { Flexbox, type FlexboxProps } from '@/Flex';\nimport { type VideoProps as VProps } from '@/types';\n\nimport { styles, variants } from './style';\n\nexport interface VideoProps extends VProps, Pick<FlexboxProps, 'width' | 'height'> {\n autoPlay?: boolean;\n classNames?: {\n mask?: string;\n video?: string;\n wrapper?: string;\n };\n isLoading?: boolean;\n loop?: boolean;\n maxHeight?: number | string;\n maxWidth?: number | string;\n minHeight?: number | string;\n minWidth?: number | string;\n muted?: HTMLVideoElement['muted'];\n onEnded?: VProps['onEnded'];\n onMouseEnter?: VProps['onMouseEnter'];\n onMouseLeave?: VProps['onMouseLeave'];\n onPause?: VProps['onPause'];\n onPlay?: VProps['onPlay'];\n onPlaying?: VProps['onPlaying'];\n onProgress?: VProps['onProgress'];\n poster?: string;\n preload?: HTMLVideoElement['preload'];\n preview?: boolean;\n ref?: Ref<HTMLDivElement>;\n size?: number | string;\n src: string;\n styles?: {\n mask?: CSSProperties;\n video?: CSSProperties;\n wrapper?: CSSProperties;\n };\n variant?: 'borderless' | 'filled' | 'outlined';\n}\n\nconst Video = memo<VideoProps>(\n ({\n ref,\n preload = 'auto',\n src,\n style,\n classNames,\n className,\n maxHeight = '100%',\n maxWidth = '100%',\n minHeight,\n minWidth,\n onEnded,\n onPause,\n onPlay,\n onPlaying,\n width,\n height,\n onMouseEnter,\n styles: customStyles,\n onMouseLeave,\n preview = true,\n isLoading,\n variant = 'filled',\n autoPlay,\n ...rest\n }) => {\n const [isPlaying, setIsPlaying] = useState(false);\n const [showControls, setShowControls] = useState(false);\n\n // Convert props to CSS variables\n const cssVariables = useMemo<Record<string, string>>(() => {\n const vars: Record<string, string> = {};\n if (maxHeight !== undefined) {\n vars['--video-max-height'] = typeof maxHeight === 'number' ? `${maxHeight}px` : maxHeight;\n }\n if (maxWidth !== undefined) {\n vars['--video-max-width'] = typeof maxWidth === 'number' ? `${maxWidth}px` : maxWidth;\n }\n if (minHeight !== undefined) {\n vars['--video-min-height'] = typeof minHeight === 'number' ? `${minHeight}px` : minHeight;\n }\n if (minWidth !== undefined) {\n vars['--video-min-width'] = typeof minWidth === 'number' ? `${minWidth}px` : minWidth;\n }\n return vars;\n }, [maxHeight, maxWidth, minHeight, minWidth]);\n\n if (isLoading)\n return (\n <Skeleton.Avatar\n active\n style={{\n borderRadius: cssVar.borderRadiusLG,\n height,\n maxHeight,\n maxWidth,\n minHeight,\n minWidth,\n width,\n }}\n />\n );\n\n return (\n <Flexbox\n className={cx(variants({ variant }), className, classNames?.wrapper)}\n height={height}\n ref={ref}\n width={width}\n style={{\n ...cssVariables,\n ...style,\n ...customStyles?.wrapper,\n }}\n >\n {preview && !isPlaying && (\n <Flexbox\n align={'center'}\n className={cx(styles.mask, classNames?.mask)}\n justify={'center'}\n style={customStyles?.mask}\n >\n <ActionIcon color={'#fff'} icon={PlayIcon} variant={'filled'} />\n </Flexbox>\n )}\n <video\n autoPlay={autoPlay}\n className={cx(styles.video, classNames?.video)}\n controls={showControls}\n height={height}\n preload={preload}\n width={width}\n style={{\n height: 'auto',\n maxWidth: '100%',\n ...customStyles?.video,\n }}\n onEnded={(e) => {\n setIsPlaying(false);\n onEnded?.(e);\n }}\n onMouseEnter={(e) => {\n setShowControls(true);\n onMouseEnter?.(e);\n }}\n onMouseLeave={(e) => {\n setShowControls(false);\n onMouseLeave?.(e);\n }}\n onPause={(e) => {\n setIsPlaying(false);\n onPause?.(e);\n }}\n onPlay={(e) => {\n setIsPlaying(true);\n onPlay?.(e);\n }}\n onPlaying={(e) => {\n setIsPlaying(true);\n onPlaying?.(e);\n }}\n {...rest}\n >\n <source src={src} />\n </video>\n </Flexbox>\n );\n },\n);\n\nVideo.displayName = 'Video';\n\nexport default Video;\n"],"mappings":";;;;;;;;;;AAgDA,MAAM,QAAQ,MACX,EACC,KACA,UAAU,QACV,KACA,OACA,YACA,WACA,YAAY,QACZ,WAAW,QACX,WACA,UACA,SACA,SACA,QACA,WACA,OACA,QACA,cACA,QAAQ,cACR,cACA,UAAU,MACV,WACA,UAAU,UACV,UACA,GAAG,WACC;CACJ,MAAM,CAAC,WAAW,gBAAgB,SAAS,KAAK;CAChD,MAAM,CAAC,cAAc,mBAAmB,SAAS,KAAK;CAGtD,MAAM,eAAe,cAAsC;EACzD,MAAM,OAA+B,CAAC;EACtC,IAAI,cAAc,KAAA,GAChB,KAAK,wBAAwB,OAAO,cAAc,WAAW,GAAG,UAAU,MAAM;EAElF,IAAI,aAAa,KAAA,GACf,KAAK,uBAAuB,OAAO,aAAa,WAAW,GAAG,SAAS,MAAM;EAE/E,IAAI,cAAc,KAAA,GAChB,KAAK,wBAAwB,OAAO,cAAc,WAAW,GAAG,UAAU,MAAM;EAElF,IAAI,aAAa,KAAA,GACf,KAAK,uBAAuB,OAAO,aAAa,WAAW,GAAG,SAAS,MAAM;EAE/E,OAAO;CACT,GAAG;EAAC;EAAW;EAAU;EAAW;CAAQ,CAAC;CAE7C,IAAI,WACF,OACE,oBAAC,SAAS,QAAV;EACE,QAAA;EACA,OAAO;GACL,cAAc,OAAO;GACrB;GACA;GACA;GACA;GACA;GACA;EACF;CACD,CAAA;CAGL,OACE,qBAACA,mBAAD;EACE,WAAW,GAAG,SAAS,EAAE,QAAQ,CAAC,GAAG,WAAW,YAAY,OAAO;EAC3D;EACH;EACE;EACP,OAAO;GACL,GAAG;GACH,GAAG;GACH,GAAG,cAAc;EACnB;EATF,UAAA,CAWG,WAAW,CAAC,aACX,oBAACA,mBAAD;GACE,OAAO;GACP,WAAW,GAAG,OAAO,MAAM,YAAY,IAAI;GAC3C,SAAS;GACT,OAAO,cAAc;GAErB,UAAA,oBAAC,YAAD;IAAY,OAAO;IAAQ,MAAM;IAAU,SAAS;GAAW,CAAA;EACxD,CAAA,GAEX,oBAAC,SAAD;GACY;GACV,WAAW,GAAG,OAAO,OAAO,YAAY,KAAK;GAC7C,UAAU;GACF;GACC;GACF;GACP,OAAO;IACL,QAAQ;IACR,UAAU;IACV,GAAG,cAAc;GACnB;GACA,UAAU,MAAM;IACd,aAAa,KAAK;IAClB,UAAU,CAAC;GACb;GACA,eAAe,MAAM;IACnB,gBAAgB,IAAI;IACpB,eAAe,CAAC;GAClB;GACA,eAAe,MAAM;IACnB,gBAAgB,KAAK;IACrB,eAAe,CAAC;GAClB;GACA,UAAU,MAAM;IACd,aAAa,KAAK;IAClB,UAAU,CAAC;GACb;GACA,SAAS,MAAM;IACb,aAAa,IAAI;IACjB,SAAS,CAAC;GACZ;GACA,YAAY,MAAM;IAChB,aAAa,IAAI;IACjB,YAAY,CAAC;GACf;GACA,GAAI;GAEJ,UAAA,oBAAC,UAAD,EAAa,IAAM,CAAA;EACd,CAAA,CACA;;AAEb,CACF;AAEA,MAAM,cAAc"}
@@ -1 +1 @@
1
- {"version":3,"file":"AuroraBackground.mjs","names":["Flexbox"],"sources":["../../../src/awesome/AuroraBackground/AuroraBackground.tsx"],"sourcesContent":["'use client';\n\nimport { cx, useThemeMode } from 'antd-style';\nimport { memo } from 'react';\n\nimport { Flexbox } from '@/Flex';\n\nimport { styles } from './style';\nimport type { AuroraBackgroundProps } from './type';\n\nconst AuroraBackground = memo<AuroraBackgroundProps>(\n ({ ref, classNames, styles: customStyles, children, ...rest }) => {\n const { isDarkMode } = useThemeMode();\n return (\n <Flexbox ref={ref} {...rest}>\n <Flexbox className={cx(styles.wrapper, classNames?.wrapper)} style={customStyles?.wrapper}>\n <div className={isDarkMode ? styles.bgDark : styles.bgLight} />\n </Flexbox>\n <Flexbox\n className={classNames?.content}\n flex={1}\n style={{ zIndex: 1, ...customStyles?.content }}\n width={'100%'}\n >\n {children}\n </Flexbox>\n </Flexbox>\n );\n },\n);\n\nAuroraBackground.displayName = 'AuroraBackground';\n\nexport default AuroraBackground;\n"],"mappings":";;;;;;;AAUA,MAAM,mBAAmB,MACtB,EAAE,KAAK,YAAY,QAAQ,cAAc,UAAU,GAAG,WAAW;CAChE,MAAM,EAAE,eAAe,aAAa;CACpC,OACE,qBAACA,mBAAD;EAAc;EAAK,GAAI;YAAvB,CACE,oBAACA,mBAAD;GAAS,WAAW,GAAG,OAAO,SAAS,YAAY,OAAO;GAAG,OAAO,cAAc;aAChF,oBAAC,OAAD,EAAK,WAAW,aAAa,OAAO,SAAS,OAAO,QAAU,CAAA;EACvD,CAAA,GACT,oBAACA,mBAAD;GACE,WAAW,YAAY;GACvB,MAAM;GACN,OAAO;IAAE,QAAQ;IAAG,GAAG,cAAc;GAAQ;GAC7C,OAAO;GAEN;EACM,CAAA,CACF;;AAEb,CACF;AAEA,iBAAiB,cAAc"}
1
+ {"version":3,"file":"AuroraBackground.mjs","names":["Flexbox"],"sources":["../../../src/awesome/AuroraBackground/AuroraBackground.tsx"],"sourcesContent":["'use client';\n\nimport { cx, useThemeMode } from 'antd-style';\nimport { memo } from 'react';\n\nimport { Flexbox } from '@/Flex';\n\nimport { styles } from './style';\nimport type { AuroraBackgroundProps } from './type';\n\nconst AuroraBackground = memo<AuroraBackgroundProps>(\n ({ ref, classNames, styles: customStyles, children, ...rest }) => {\n const { isDarkMode } = useThemeMode();\n return (\n <Flexbox ref={ref} {...rest}>\n <Flexbox className={cx(styles.wrapper, classNames?.wrapper)} style={customStyles?.wrapper}>\n <div className={isDarkMode ? styles.bgDark : styles.bgLight} />\n </Flexbox>\n <Flexbox\n className={classNames?.content}\n flex={1}\n style={{ zIndex: 1, ...customStyles?.content }}\n width={'100%'}\n >\n {children}\n </Flexbox>\n </Flexbox>\n );\n },\n);\n\nAuroraBackground.displayName = 'AuroraBackground';\n\nexport default AuroraBackground;\n"],"mappings":";;;;;;;AAUA,MAAM,mBAAmB,MACtB,EAAE,KAAK,YAAY,QAAQ,cAAc,UAAU,GAAG,WAAW;CAChE,MAAM,EAAE,eAAe,aAAa;CACpC,OACE,qBAACA,mBAAD;EAAc;EAAK,GAAI;EAAvB,UAAA,CACE,oBAACA,mBAAD;GAAS,WAAW,GAAG,OAAO,SAAS,YAAY,OAAO;GAAG,OAAO,cAAc;GAChF,UAAA,oBAAC,OAAD,EAAK,WAAW,aAAa,OAAO,SAAS,OAAO,QAAU,CAAA;EACvD,CAAA,GACT,oBAACA,mBAAD;GACE,WAAW,YAAY;GACvB,MAAM;GACN,OAAO;IAAE,QAAQ;IAAG,GAAG,cAAc;GAAQ;GAC7C,OAAO;GAEN;EACM,CAAA,CACF;;AAEb,CACF;AAEA,iBAAiB,cAAc"}
@@ -1 +1 @@
1
- {"version":3,"file":"FeatureItem.mjs","names":["Flexbox"],"sources":["../../../src/awesome/Features/FeatureItem.tsx"],"sourcesContent":["'use client';\n\nimport { cx } from 'antd-style';\nimport { type CSSProperties, memo, useMemo } from 'react';\n\nimport A from '@/A';\nimport { Center, Flexbox } from '@/Flex';\nimport Icon from '@/Icon';\nimport Img from '@/Img';\nimport Text from '@/Text';\n\nimport { styles } from './style';\nimport type { FeatureItemProps } from './type';\n\nconst Image = memo<{ className?: string; image: string; style?: CSSProperties; title: string }>(\n ({ image, className, title, style }) => {\n return image.startsWith('http') ? (\n <Img alt={title} className={className} src={image} style={style} />\n ) : (\n <Center className={className} style={style}>\n {image}\n </Center>\n );\n },\n);\n\nconst Item = memo<FeatureItemProps>(\n ({\n style,\n className,\n row,\n column,\n description,\n image,\n title,\n link,\n icon,\n imageStyle,\n openExternal,\n ...rest\n }) => {\n const rowNumber = row || 7;\n const hasLink = Boolean(link);\n\n const cssVariables = useMemo<Record<string, string>>(\n () => ({\n '--features-row-num': String(rowNumber),\n '--features-title-hover-size': hasLink ? '14px' : '20px',\n }),\n [rowNumber, hasLink],\n );\n\n return (\n <div\n className={cx(hasLink ? styles.containerHasLink : styles.container, className)}\n style={{\n ...cssVariables,\n gridColumn: `span ${column || 1}`,\n gridRow: `span ${rowNumber}`,\n ...style,\n }}\n {...rest}\n >\n <div className={styles.cell}>\n {image ||\n (icon && (\n <Center className={styles.imgContainer} style={imageStyle}>\n {icon && <Icon className={styles.img} icon={icon} />}\n {image && <Image className={styles.img} image={image} title={title} />}\n </Center>\n ))}\n {title && (\n <Flexbox horizontal align={'center'} as={'h3'} className={styles.title} gap={8}>\n {title}\n </Flexbox>\n )}\n {description && (\n <Text\n className={styles.desc}\n ellipsis={{\n rows: 4,\n }}\n >\n {description}\n </Text>\n )}\n {link && (\n <div className={styles.link}>\n <A href={link} rel=\"noreferrer\" target={openExternal ? '_blank' : undefined}>\n Read More\n </A>\n </div>\n )}\n </div>\n </div>\n );\n },\n);\n\nItem.displayName = 'FeatureItem';\n\nexport default Item;\n"],"mappings":";;;;;;;;;;;;AAcA,MAAM,QAAQ,MACX,EAAE,OAAO,WAAW,OAAO,YAAY;CACtC,OAAO,MAAM,WAAW,MAAM,IAC5B,oBAAC,KAAD;EAAK,KAAK;EAAkB;EAAW,KAAK;EAAc;CAAQ,CAAA,IAElE,oBAAC,QAAD;EAAmB;EAAkB;YAClC;CACK,CAAA;AAEZ,CACF;AAEA,MAAM,OAAO,MACV,EACC,OACA,WACA,KACA,QACA,aACA,OACA,OACA,MACA,MACA,YACA,cACA,GAAG,WACC;CACJ,MAAM,YAAY,OAAO;CACzB,MAAM,UAAU,QAAQ,IAAI;CAE5B,MAAM,eAAe,eACZ;EACL,sBAAsB,OAAO,SAAS;EACtC,+BAA+B,UAAU,SAAS;CACpD,IACA,CAAC,WAAW,OAAO,CACrB;CAEA,OACE,oBAAC,OAAD;EACE,WAAW,GAAG,UAAU,OAAO,mBAAmB,OAAO,WAAW,SAAS;EAC7E,OAAO;GACL,GAAG;GACH,YAAY,QAAQ,UAAU;GAC9B,SAAS,QAAQ;GACjB,GAAG;EACL;EACA,GAAI;YAEJ,qBAAC,OAAD;GAAK,WAAW,OAAO;aAAvB;IACG,SACE,QACC,qBAAC,QAAD;KAAQ,WAAW,OAAO;KAAc,OAAO;eAA/C,CACG,QAAQ,oBAAC,MAAD;MAAM,WAAW,OAAO;MAAW;KAAO,CAAA,GAClD,SAAS,oBAAC,OAAD;MAAO,WAAW,OAAO;MAAY;MAAc;KAAQ,CAAA,CAC/D;;IAEX,SACC,oBAACA,mBAAD;KAAS,YAAA;KAAW,OAAO;KAAU,IAAI;KAAM,WAAW,OAAO;KAAO,KAAK;eAC1E;IACM,CAAA;IAEV,eACC,oBAAC,MAAD;KACE,WAAW,OAAO;KAClB,UAAU,EACR,MAAM,EACR;eAEC;IACG,CAAA;IAEP,QACC,oBAAC,OAAD;KAAK,WAAW,OAAO;eACrB,oBAAC,GAAD;MAAG,MAAM;MAAM,KAAI;MAAa,QAAQ,eAAe,WAAW,KAAA;gBAAW;KAE1E,CAAA;IACA,CAAA;GAEJ;;CACF,CAAA;AAET,CACF;AAEA,KAAK,cAAc"}
1
+ {"version":3,"file":"FeatureItem.mjs","names":["Flexbox"],"sources":["../../../src/awesome/Features/FeatureItem.tsx"],"sourcesContent":["'use client';\n\nimport { cx } from 'antd-style';\nimport { type CSSProperties, memo, useMemo } from 'react';\n\nimport A from '@/A';\nimport { Center, Flexbox } from '@/Flex';\nimport Icon from '@/Icon';\nimport Img from '@/Img';\nimport Text from '@/Text';\n\nimport { styles } from './style';\nimport type { FeatureItemProps } from './type';\n\nconst Image = memo<{ className?: string; image: string; style?: CSSProperties; title: string }>(\n ({ image, className, title, style }) => {\n return image.startsWith('http') ? (\n <Img alt={title} className={className} src={image} style={style} />\n ) : (\n <Center className={className} style={style}>\n {image}\n </Center>\n );\n },\n);\n\nconst Item = memo<FeatureItemProps>(\n ({\n style,\n className,\n row,\n column,\n description,\n image,\n title,\n link,\n icon,\n imageStyle,\n openExternal,\n ...rest\n }) => {\n const rowNumber = row || 7;\n const hasLink = Boolean(link);\n\n const cssVariables = useMemo<Record<string, string>>(\n () => ({\n '--features-row-num': String(rowNumber),\n '--features-title-hover-size': hasLink ? '14px' : '20px',\n }),\n [rowNumber, hasLink],\n );\n\n return (\n <div\n className={cx(hasLink ? styles.containerHasLink : styles.container, className)}\n style={{\n ...cssVariables,\n gridColumn: `span ${column || 1}`,\n gridRow: `span ${rowNumber}`,\n ...style,\n }}\n {...rest}\n >\n <div className={styles.cell}>\n {image ||\n (icon && (\n <Center className={styles.imgContainer} style={imageStyle}>\n {icon && <Icon className={styles.img} icon={icon} />}\n {image && <Image className={styles.img} image={image} title={title} />}\n </Center>\n ))}\n {title && (\n <Flexbox horizontal align={'center'} as={'h3'} className={styles.title} gap={8}>\n {title}\n </Flexbox>\n )}\n {description && (\n <Text\n className={styles.desc}\n ellipsis={{\n rows: 4,\n }}\n >\n {description}\n </Text>\n )}\n {link && (\n <div className={styles.link}>\n <A href={link} rel=\"noreferrer\" target={openExternal ? '_blank' : undefined}>\n Read More\n </A>\n </div>\n )}\n </div>\n </div>\n );\n },\n);\n\nItem.displayName = 'FeatureItem';\n\nexport default Item;\n"],"mappings":";;;;;;;;;;;;AAcA,MAAM,QAAQ,MACX,EAAE,OAAO,WAAW,OAAO,YAAY;CACtC,OAAO,MAAM,WAAW,MAAM,IAC5B,oBAAC,KAAD;EAAK,KAAK;EAAkB;EAAW,KAAK;EAAc;CAAQ,CAAA,IAElE,oBAAC,QAAD;EAAmB;EAAkB;EAClC,UAAA;CACK,CAAA;AAEZ,CACF;AAEA,MAAM,OAAO,MACV,EACC,OACA,WACA,KACA,QACA,aACA,OACA,OACA,MACA,MACA,YACA,cACA,GAAG,WACC;CACJ,MAAM,YAAY,OAAO;CACzB,MAAM,UAAU,QAAQ,IAAI;CAE5B,MAAM,eAAe,eACZ;EACL,sBAAsB,OAAO,SAAS;EACtC,+BAA+B,UAAU,SAAS;CACpD,IACA,CAAC,WAAW,OAAO,CACrB;CAEA,OACE,oBAAC,OAAD;EACE,WAAW,GAAG,UAAU,OAAO,mBAAmB,OAAO,WAAW,SAAS;EAC7E,OAAO;GACL,GAAG;GACH,YAAY,QAAQ,UAAU;GAC9B,SAAS,QAAQ;GACjB,GAAG;EACL;EACA,GAAI;EAEJ,UAAA,qBAAC,OAAD;GAAK,WAAW,OAAO;GAAvB,UAAA;IACG,SACE,QACC,qBAAC,QAAD;KAAQ,WAAW,OAAO;KAAc,OAAO;KAA/C,UAAA,CACG,QAAQ,oBAAC,MAAD;MAAM,WAAW,OAAO;MAAW;KAAO,CAAA,GAClD,SAAS,oBAAC,OAAD;MAAO,WAAW,OAAO;MAAY;MAAc;KAAQ,CAAA,CAC/D;;IAEX,SACC,oBAACA,mBAAD;KAAS,YAAA;KAAW,OAAO;KAAU,IAAI;KAAM,WAAW,OAAO;KAAO,KAAK;KAC1E,UAAA;IACM,CAAA;IAEV,eACC,oBAAC,MAAD;KACE,WAAW,OAAO;KAClB,UAAU,EACR,MAAM,EACR;KAEC,UAAA;IACG,CAAA;IAEP,QACC,oBAAC,OAAD;KAAK,WAAW,OAAO;KACrB,UAAA,oBAAC,GAAD;MAAG,MAAM;MAAM,KAAI;MAAa,QAAQ,eAAe,WAAW,KAAA;MAAW,UAAA;KAE1E,CAAA;IACA,CAAA;GAEJ;;CACF,CAAA;AAET,CACF;AAEA,KAAK,cAAc"}
@@ -1 +1 @@
1
- {"version":3,"file":"Giscus.mjs","names":[],"sources":["../../../src/awesome/Giscus/Giscus.tsx"],"sourcesContent":["'use client';\n\nimport GiscusComponent from '@giscus/react';\nimport { memo } from 'react';\n\nimport { formatLang, useStyles } from './style';\nimport type { GiscusProps } from './type';\n\nconst Giscus = memo<GiscusProps>(\n ({\n style,\n className,\n reactionsEnabled = '1',\n mapping = 'title',\n lang = 'en_US',\n inputPosition = 'top',\n id = 'giscus',\n loading = 'lazy',\n emitMetadata = '0',\n ...rest\n }) => {\n const theme = useStyles();\n\n return (\n <div className={className} style={style}>\n <GiscusComponent\n emitMetadata={emitMetadata}\n id={id}\n inputPosition={inputPosition}\n lang={formatLang(lang)}\n loading={loading}\n mapping={mapping}\n reactionsEnabled={reactionsEnabled}\n theme={theme}\n {...rest}\n />\n </div>\n );\n },\n);\n\nGiscus.displayName = 'Giscus';\n\nexport default Giscus;\n"],"mappings":";;;;;;AAQA,MAAM,SAAS,MACZ,EACC,OACA,WACA,mBAAmB,KACnB,UAAU,SACV,OAAO,SACP,gBAAgB,OAChB,KAAK,UACL,UAAU,QACV,eAAe,KACf,GAAG,WACC;CACJ,MAAM,QAAQ,UAAU;CAExB,OACE,oBAAC,OAAD;EAAgB;EAAkB;YAChC,oBAAC,iBAAD;GACgB;GACV;GACW;GACf,MAAM,WAAW,IAAI;GACZ;GACA;GACS;GACX;GACP,GAAI;EACL,CAAA;CACE,CAAA;AAET,CACF;AAEA,OAAO,cAAc"}
1
+ {"version":3,"file":"Giscus.mjs","names":[],"sources":["../../../src/awesome/Giscus/Giscus.tsx"],"sourcesContent":["'use client';\n\nimport GiscusComponent from '@giscus/react';\nimport { memo } from 'react';\n\nimport { formatLang, useStyles } from './style';\nimport type { GiscusProps } from './type';\n\nconst Giscus = memo<GiscusProps>(\n ({\n style,\n className,\n reactionsEnabled = '1',\n mapping = 'title',\n lang = 'en_US',\n inputPosition = 'top',\n id = 'giscus',\n loading = 'lazy',\n emitMetadata = '0',\n ...rest\n }) => {\n const theme = useStyles();\n\n return (\n <div className={className} style={style}>\n <GiscusComponent\n emitMetadata={emitMetadata}\n id={id}\n inputPosition={inputPosition}\n lang={formatLang(lang)}\n loading={loading}\n mapping={mapping}\n reactionsEnabled={reactionsEnabled}\n theme={theme}\n {...rest}\n />\n </div>\n );\n },\n);\n\nGiscus.displayName = 'Giscus';\n\nexport default Giscus;\n"],"mappings":";;;;;;AAQA,MAAM,SAAS,MACZ,EACC,OACA,WACA,mBAAmB,KACnB,UAAU,SACV,OAAO,SACP,gBAAgB,OAChB,KAAK,UACL,UAAU,QACV,eAAe,KACf,GAAG,WACC;CACJ,MAAM,QAAQ,UAAU;CAExB,OACE,oBAAC,OAAD;EAAgB;EAAkB;EAChC,UAAA,oBAAC,iBAAD;GACgB;GACV;GACW;GACf,MAAM,WAAW,IAAI;GACZ;GACA;GACS;GACX;GACP,GAAI;EACL,CAAA;CACE,CAAA;AAET,CACF;AAEA,OAAO,cAAc"}
@@ -17,9 +17,7 @@ const GradientButton = memo(({ glow = true, children, className, size, disabled,
17
17
  case "small":
18
18
  borderRadius = cssVar.borderRadiusSM;
19
19
  break;
20
- default:
21
- borderRadius = cssVar.borderRadius;
22
- break;
20
+ default: borderRadius = cssVar.borderRadius;
23
21
  }
24
22
  return { "--gradient-button-border-radius": borderRadius };
25
23
  }, [size, disabled]);
@@ -1 +1 @@
1
- {"version":3,"file":"GradientButton.mjs","names":[],"sources":["../../../src/awesome/GradientButton/GradientButton.tsx"],"sourcesContent":["'use client';\n\nimport { cssVar, cx, useThemeMode } from 'antd-style';\nimport { memo, useMemo } from 'react';\n\nimport Button from '@/Button';\n\nimport { styles } from './style';\nimport type { GradientButtonProps } from './type';\n\nconst GradientButton = memo<GradientButtonProps>(\n ({ glow = true, children, className, size, disabled, style, ...rest }) => {\n const { isDarkMode } = useThemeMode();\n\n // Convert size prop to CSS variable for borderRadius\n const cssVariables = useMemo<Record<string, string>>(() => {\n if (!size || disabled) return {} as Record<string, string>;\n let borderRadius: string;\n switch (size) {\n case 'large': {\n borderRadius = cssVar.borderRadiusLG;\n break;\n }\n case 'small': {\n borderRadius = cssVar.borderRadiusSM;\n break;\n }\n default: {\n borderRadius = cssVar.borderRadius;\n break;\n }\n }\n return {\n '--gradient-button-border-radius': borderRadius,\n };\n }, [size, disabled]);\n\n return (\n <Button\n disabled={disabled}\n size={size}\n variant={disabled ? undefined : 'text'}\n className={cx(\n !disabled && (isDarkMode ? styles.buttonDark : styles.buttonLight),\n className,\n )}\n style={{\n ...cssVariables,\n ...style,\n }}\n {...rest}\n >\n {glow && <div className={styles.glow} />}\n {children}\n </Button>\n );\n },\n);\n\nGradientButton.displayName = 'GradientButton';\n\nexport default GradientButton;\n"],"mappings":";;;;;;;AAUA,MAAM,iBAAiB,MACpB,EAAE,OAAO,MAAM,UAAU,WAAW,MAAM,UAAU,OAAO,GAAG,WAAW;CACxE,MAAM,EAAE,eAAe,aAAa;CAGpC,MAAM,eAAe,cAAsC;EACzD,IAAI,CAAC,QAAQ,UAAU,OAAO,CAAC;EAC/B,IAAI;EACJ,QAAQ,MAAR;GACE,KAAK;IACH,eAAe,OAAO;IACtB;GAEF,KAAK;IACH,eAAe,OAAO;IACtB;GAEF;IACE,eAAe,OAAO;IACtB;EAEJ;EACA,OAAO,EACL,mCAAmC,aACrC;CACF,GAAG,CAAC,MAAM,QAAQ,CAAC;CAEnB,OACE,qBAAC,QAAD;EACY;EACJ;EACN,SAAS,WAAW,KAAA,IAAY;EAChC,WAAW,GACT,CAAC,aAAa,aAAa,OAAO,aAAa,OAAO,cACtD,SACF;EACA,OAAO;GACL,GAAG;GACH,GAAG;EACL;EACA,GAAI;YAZN,CAcG,QAAQ,oBAAC,OAAD,EAAK,WAAW,OAAO,KAAO,CAAA,GACtC,QACK;;AAEZ,CACF;AAEA,eAAe,cAAc"}
1
+ {"version":3,"file":"GradientButton.mjs","names":[],"sources":["../../../src/awesome/GradientButton/GradientButton.tsx"],"sourcesContent":["'use client';\n\nimport { cssVar, cx, useThemeMode } from 'antd-style';\nimport { memo, useMemo } from 'react';\n\nimport Button from '@/Button';\n\nimport { styles } from './style';\nimport type { GradientButtonProps } from './type';\n\nconst GradientButton = memo<GradientButtonProps>(\n ({ glow = true, children, className, size, disabled, style, ...rest }) => {\n const { isDarkMode } = useThemeMode();\n\n // Convert size prop to CSS variable for borderRadius\n const cssVariables = useMemo<Record<string, string>>(() => {\n if (!size || disabled) return {} as Record<string, string>;\n let borderRadius: string;\n switch (size) {\n case 'large': {\n borderRadius = cssVar.borderRadiusLG;\n break;\n }\n case 'small': {\n borderRadius = cssVar.borderRadiusSM;\n break;\n }\n default: {\n borderRadius = cssVar.borderRadius;\n break;\n }\n }\n return {\n '--gradient-button-border-radius': borderRadius,\n };\n }, [size, disabled]);\n\n return (\n <Button\n disabled={disabled}\n size={size}\n variant={disabled ? undefined : 'text'}\n className={cx(\n !disabled && (isDarkMode ? styles.buttonDark : styles.buttonLight),\n className,\n )}\n style={{\n ...cssVariables,\n ...style,\n }}\n {...rest}\n >\n {glow && <div className={styles.glow} />}\n {children}\n </Button>\n );\n },\n);\n\nGradientButton.displayName = 'GradientButton';\n\nexport default GradientButton;\n"],"mappings":";;;;;;;AAUA,MAAM,iBAAiB,MACpB,EAAE,OAAO,MAAM,UAAU,WAAW,MAAM,UAAU,OAAO,GAAG,WAAW;CACxE,MAAM,EAAE,eAAe,aAAa;CAGpC,MAAM,eAAe,cAAsC;EACzD,IAAI,CAAC,QAAQ,UAAU,OAAO,CAAC;EAC/B,IAAI;EACJ,QAAQ,MAAR;GACE,KAAK;IACH,eAAe,OAAO;IACtB;GAEF,KAAK;IACH,eAAe,OAAO;IACtB;GAEF,SACE,eAAe,OAAO;EAG1B;EACA,OAAO,EACL,mCAAmC,aACrC;CACF,GAAG,CAAC,MAAM,QAAQ,CAAC;CAEnB,OACE,qBAAC,QAAD;EACY;EACJ;EACN,SAAS,WAAW,KAAA,IAAY;EAChC,WAAW,GACT,CAAC,aAAa,aAAa,OAAO,aAAa,OAAO,cACtD,SACF;EACA,OAAO;GACL,GAAG;GACH,GAAG;EACL;EACA,GAAI;EAZN,UAAA,CAcG,QAAQ,oBAAC,OAAD,EAAK,WAAW,OAAO,KAAO,CAAA,GACtC,QACK;;AAEZ,CACF;AAEA,eAAe,cAAc"}
@@ -1 +1 @@
1
- {"version":3,"file":"GridBackground.mjs","names":[],"sources":["../../../src/awesome/GridBackground/GridBackground.tsx"],"sourcesContent":["'use client';\n\nimport { useSize } from 'ahooks';\nimport { cssVar, cx, useTheme } from 'antd-style';\nimport chroma from 'chroma-js';\nimport { shuffle } from 'es-toolkit/compat';\nimport { memo, useCallback, useEffect, useMemo, useRef, useState } from 'react';\n\nimport Grid, { type GridProps } from './components/Grid';\nimport { styles } from './style';\nimport type { GridBackgroundProps } from './type';\n\nconst initialGroup = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14];\n\nconst GridBackground = memo<GridBackgroundProps>(\n ({\n flip,\n reverse,\n showBackground,\n backgroundColor,\n random,\n animationDuration = 8,\n className,\n colorFront,\n colorBack,\n strokeWidth,\n style,\n animation,\n ...rest\n }) => {\n const ref = useRef(null);\n const size = useSize(ref);\n const theme = useTheme();\n\n const backgroundCssVariables = useMemo<Record<string, string>>(() => {\n if (!showBackground) return {} as Record<string, string>;\n\n const scale = chroma\n .bezier([theme.colorText, backgroundColor || 'blue', theme.colorBgLayout])\n .scale()\n .mode('lch')\n .correctLightness()\n .colors(6);\n\n return {\n '--grid-background-color-1': scale[1],\n '--grid-background-color-2': scale[2],\n '--grid-background-color-3': scale[3],\n '--grid-background-color-4': scale[4],\n };\n }, [showBackground, backgroundColor, theme.colorText, theme.colorBgLayout]);\n\n const gridProps: GridProps = useMemo(\n () => ({\n className: reverse ? styles.highlightReverse : styles.highlight,\n color: colorFront || cssVar.colorText,\n strokeWidth,\n }),\n [reverse, colorFront, strokeWidth],\n );\n\n const [group, setGroup] = useState(random ? initialGroup : undefined);\n useEffect(() => {\n setGroup(random ? shuffle(initialGroup) : undefined);\n }, [random]);\n\n const HighlightGrid = useCallback(() => {\n if (!group)\n return <Grid style={{ '--duration': `${animationDuration}s` } as any} {...gridProps} />;\n\n return (\n <>\n {group.map((item, index) => {\n return (\n <Grid\n key={item}\n linePick={item}\n style={\n {\n '--delay': `${index + Math.random()}s`,\n '--duration': `${animationDuration}s`,\n } as any\n }\n {...gridProps}\n />\n );\n })}\n </>\n );\n }, [group, animationDuration, gridProps]);\n\n return (\n <div\n className={cx(styles.container, className)}\n ref={ref}\n style={flip ? { transform: 'scaleY(-1)', ...style } : style}\n {...rest}\n >\n <Grid\n color={colorBack || cssVar.colorBorder}\n strokeWidth={strokeWidth}\n style={{ zIndex: 2 }}\n />\n {animation && <HighlightGrid />}\n {showBackground && (\n <div\n className={styles.backgroundContainer}\n style={{\n ...(size ? { fontSize: size.width / 80 } : {}),\n ...backgroundCssVariables,\n }}\n >\n <div className={styles.background} />\n </div>\n )}\n </div>\n );\n },\n);\n\nGridBackground.displayName = 'GridBackground';\n\nexport default GridBackground;\n"],"mappings":";;;;;;;;;;AAYA,MAAM,eAAe;CAAC;CAAG;CAAG;CAAG;CAAG;CAAG;CAAG;CAAG;CAAG;CAAG;CAAG;CAAI;CAAI;CAAI;CAAI;AAAE;AAEtE,MAAM,iBAAiB,MACpB,EACC,MACA,SACA,gBACA,iBACA,QACA,oBAAoB,GACpB,WACA,YACA,WACA,aACA,OACA,WACA,GAAG,WACC;CACJ,MAAM,MAAM,OAAO,IAAI;CACvB,MAAM,OAAO,QAAQ,GAAG;CACxB,MAAM,QAAQ,SAAS;CAEvB,MAAM,yBAAyB,cAAsC;EACnE,IAAI,CAAC,gBAAgB,OAAO,CAAC;EAE7B,MAAM,QAAQ,OACX,OAAO;GAAC,MAAM;GAAW,mBAAmB;GAAQ,MAAM;EAAa,CAAC,CAAC,CACzE,MAAM,CAAC,CACP,KAAK,KAAK,CAAC,CACX,iBAAiB,CAAC,CAClB,OAAO,CAAC;EAEX,OAAO;GACL,6BAA6B,MAAM;GACnC,6BAA6B,MAAM;GACnC,6BAA6B,MAAM;GACnC,6BAA6B,MAAM;EACrC;CACF,GAAG;EAAC;EAAgB;EAAiB,MAAM;EAAW,MAAM;CAAa,CAAC;CAE1E,MAAM,YAAuB,eACpB;EACL,WAAW,UAAU,OAAO,mBAAmB,OAAO;EACtD,OAAO,cAAc,OAAO;EAC5B;CACF,IACA;EAAC;EAAS;EAAY;CAAW,CACnC;CAEA,MAAM,CAAC,OAAO,YAAY,SAAS,SAAS,eAAe,KAAA,CAAS;CACpE,gBAAgB;EACd,SAAS,SAAS,QAAQ,YAAY,IAAI,KAAA,CAAS;CACrD,GAAG,CAAC,MAAM,CAAC;CAEX,MAAM,gBAAgB,kBAAkB;EACtC,IAAI,CAAC,OACH,OAAO,oBAAC,MAAD;GAAM,OAAO,EAAE,cAAc,GAAG,kBAAkB,GAAG;GAAU,GAAI;EAAY,CAAA;EAExF,OACE,oBAAA,YAAA,EAAA,UACG,MAAM,KAAK,MAAM,UAAU;GAC1B,OACE,oBAAC,MAAD;IAEE,UAAU;IACV,OACE;KACE,WAAW,GAAG,QAAQ,KAAK,OAAO,EAAE;KACpC,cAAc,GAAG,kBAAkB;IACrC;IAEF,GAAI;GACL,GATM,IASN;EAEL,CAAC,EACD,CAAA;CAEN,GAAG;EAAC;EAAO;EAAmB;CAAS,CAAC;CAExC,OACE,qBAAC,OAAD;EACE,WAAW,GAAG,OAAO,WAAW,SAAS;EACpC;EACL,OAAO,OAAO;GAAE,WAAW;GAAc,GAAG;EAAM,IAAI;EACtD,GAAI;YAJN;GAME,oBAAC,MAAD;IACE,OAAO,aAAa,OAAO;IACd;IACb,OAAO,EAAE,QAAQ,EAAE;GACpB,CAAA;GACA,aAAa,oBAAC,eAAD,CAAgB,CAAA;GAC7B,kBACC,oBAAC,OAAD;IACE,WAAW,OAAO;IAClB,OAAO;KACL,GAAI,OAAO,EAAE,UAAU,KAAK,QAAQ,GAAG,IAAI,CAAC;KAC5C,GAAG;IACL;cAEA,oBAAC,OAAD,EAAK,WAAW,OAAO,WAAa,CAAA;GACjC,CAAA;EAEJ;;AAET,CACF;AAEA,eAAe,cAAc"}
1
+ {"version":3,"file":"GridBackground.mjs","names":[],"sources":["../../../src/awesome/GridBackground/GridBackground.tsx"],"sourcesContent":["'use client';\n\nimport { useSize } from 'ahooks';\nimport { cssVar, cx, useTheme } from 'antd-style';\nimport chroma from 'chroma-js';\nimport { shuffle } from 'es-toolkit/compat';\nimport { memo, useCallback, useEffect, useMemo, useRef, useState } from 'react';\n\nimport Grid, { type GridProps } from './components/Grid';\nimport { styles } from './style';\nimport type { GridBackgroundProps } from './type';\n\nconst initialGroup = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14];\n\nconst GridBackground = memo<GridBackgroundProps>(\n ({\n flip,\n reverse,\n showBackground,\n backgroundColor,\n random,\n animationDuration = 8,\n className,\n colorFront,\n colorBack,\n strokeWidth,\n style,\n animation,\n ...rest\n }) => {\n const ref = useRef(null);\n const size = useSize(ref);\n const theme = useTheme();\n\n const backgroundCssVariables = useMemo<Record<string, string>>(() => {\n if (!showBackground) return {} as Record<string, string>;\n\n const scale = chroma\n .bezier([theme.colorText, backgroundColor || 'blue', theme.colorBgLayout])\n .scale()\n .mode('lch')\n .correctLightness()\n .colors(6);\n\n return {\n '--grid-background-color-1': scale[1],\n '--grid-background-color-2': scale[2],\n '--grid-background-color-3': scale[3],\n '--grid-background-color-4': scale[4],\n };\n }, [showBackground, backgroundColor, theme.colorText, theme.colorBgLayout]);\n\n const gridProps: GridProps = useMemo(\n () => ({\n className: reverse ? styles.highlightReverse : styles.highlight,\n color: colorFront || cssVar.colorText,\n strokeWidth,\n }),\n [reverse, colorFront, strokeWidth],\n );\n\n const [group, setGroup] = useState(random ? initialGroup : undefined);\n useEffect(() => {\n setGroup(random ? shuffle(initialGroup) : undefined);\n }, [random]);\n\n const HighlightGrid = useCallback(() => {\n if (!group)\n return <Grid style={{ '--duration': `${animationDuration}s` } as any} {...gridProps} />;\n\n return (\n <>\n {group.map((item, index) => {\n return (\n <Grid\n key={item}\n linePick={item}\n style={\n {\n '--delay': `${index + Math.random()}s`,\n '--duration': `${animationDuration}s`,\n } as any\n }\n {...gridProps}\n />\n );\n })}\n </>\n );\n }, [group, animationDuration, gridProps]);\n\n return (\n <div\n className={cx(styles.container, className)}\n ref={ref}\n style={flip ? { transform: 'scaleY(-1)', ...style } : style}\n {...rest}\n >\n <Grid\n color={colorBack || cssVar.colorBorder}\n strokeWidth={strokeWidth}\n style={{ zIndex: 2 }}\n />\n {animation && <HighlightGrid />}\n {showBackground && (\n <div\n className={styles.backgroundContainer}\n style={{\n ...(size ? { fontSize: size.width / 80 } : {}),\n ...backgroundCssVariables,\n }}\n >\n <div className={styles.background} />\n </div>\n )}\n </div>\n );\n },\n);\n\nGridBackground.displayName = 'GridBackground';\n\nexport default GridBackground;\n"],"mappings":";;;;;;;;;;AAYA,MAAM,eAAe;CAAC;CAAG;CAAG;CAAG;CAAG;CAAG;CAAG;CAAG;CAAG;CAAG;CAAG;CAAI;CAAI;CAAI;CAAI;AAAE;AAEtE,MAAM,iBAAiB,MACpB,EACC,MACA,SACA,gBACA,iBACA,QACA,oBAAoB,GACpB,WACA,YACA,WACA,aACA,OACA,WACA,GAAG,WACC;CACJ,MAAM,MAAM,OAAO,IAAI;CACvB,MAAM,OAAO,QAAQ,GAAG;CACxB,MAAM,QAAQ,SAAS;CAEvB,MAAM,yBAAyB,cAAsC;EACnE,IAAI,CAAC,gBAAgB,OAAO,CAAC;EAE7B,MAAM,QAAQ,OACX,OAAO;GAAC,MAAM;GAAW,mBAAmB;GAAQ,MAAM;EAAa,CAAC,CAAC,CACzE,MAAM,CAAC,CACP,KAAK,KAAK,CAAC,CACX,iBAAiB,CAAC,CAClB,OAAO,CAAC;EAEX,OAAO;GACL,6BAA6B,MAAM;GACnC,6BAA6B,MAAM;GACnC,6BAA6B,MAAM;GACnC,6BAA6B,MAAM;EACrC;CACF,GAAG;EAAC;EAAgB;EAAiB,MAAM;EAAW,MAAM;CAAa,CAAC;CAE1E,MAAM,YAAuB,eACpB;EACL,WAAW,UAAU,OAAO,mBAAmB,OAAO;EACtD,OAAO,cAAc,OAAO;EAC5B;CACF,IACA;EAAC;EAAS;EAAY;CAAW,CACnC;CAEA,MAAM,CAAC,OAAO,YAAY,SAAS,SAAS,eAAe,KAAA,CAAS;CACpE,gBAAgB;EACd,SAAS,SAAS,QAAQ,YAAY,IAAI,KAAA,CAAS;CACrD,GAAG,CAAC,MAAM,CAAC;CAEX,MAAM,gBAAgB,kBAAkB;EACtC,IAAI,CAAC,OACH,OAAO,oBAAC,MAAD;GAAM,OAAO,EAAE,cAAc,GAAG,kBAAkB,GAAG;GAAU,GAAI;EAAY,CAAA;EAExF,OACE,oBAAA,YAAA,EAAA,UACG,MAAM,KAAK,MAAM,UAAU;GAC1B,OACE,oBAAC,MAAD;IAEE,UAAU;IACV,OACE;KACE,WAAW,GAAG,QAAQ,KAAK,OAAO,EAAE;KACpC,cAAc,GAAG,kBAAkB;IACrC;IAEF,GAAI;GACL,GATM,IASN;EAEL,CAAC,EACD,CAAA;CAEN,GAAG;EAAC;EAAO;EAAmB;CAAS,CAAC;CAExC,OACE,qBAAC,OAAD;EACE,WAAW,GAAG,OAAO,WAAW,SAAS;EACpC;EACL,OAAO,OAAO;GAAE,WAAW;GAAc,GAAG;EAAM,IAAI;EACtD,GAAI;EAJN,UAAA;GAME,oBAAC,MAAD;IACE,OAAO,aAAa,OAAO;IACd;IACb,OAAO,EAAE,QAAQ,EAAE;GACpB,CAAA;GACA,aAAa,oBAAC,eAAD,CAAgB,CAAA;GAC7B,kBACC,oBAAC,OAAD;IACE,WAAW,OAAO;IAClB,OAAO;KACL,GAAI,OAAO,EAAE,UAAU,KAAK,QAAQ,GAAG,IAAI,CAAC;KAC5C,GAAG;IACL;IAEA,UAAA,oBAAC,OAAD,EAAK,WAAW,OAAO,WAAa,CAAA;GACjC,CAAA;EAEJ;;AAET,CACF;AAEA,eAAe,cAAc"}
@@ -1 +1 @@
1
- {"version":3,"file":"GridShowcase.mjs","names":["Flexbox"],"sources":["../../../src/awesome/GridBackground/GridShowcase.tsx"],"sourcesContent":["'use client';\n\nimport { useTheme } from 'antd-style';\nimport { rgba } from 'polished';\nimport { memo } from 'react';\n\nimport { Flexbox } from '@/Flex';\n\nimport GridBackground from './GridBackground';\nimport type { GridShowcaseProps } from './type';\n\nconst GridShowcase = memo<GridShowcaseProps>(\n ({ style, children, backgroundColor = '#001dff', innerProps, ...rest }) => {\n const theme = useTheme();\n\n return (\n <Flexbox style={{ position: 'relative', ...style }} {...rest}>\n <GridBackground\n animation\n flip\n colorBack={rgba(theme.colorText, 0.12)}\n colorFront={rgba(theme.colorText, 0.6)}\n />\n <Flexbox align={'center'} {...innerProps} style={{ zIndex: 4, ...innerProps?.style }}>\n {children}\n </Flexbox>\n <GridBackground\n animation\n random\n reverse\n showBackground\n backgroundColor={backgroundColor}\n colorBack={rgba(theme.colorText, 0.24)}\n colorFront={theme.colorText}\n style={{ zIndex: 0 }}\n />\n </Flexbox>\n );\n },\n);\n\nGridShowcase.displayName = 'GridShowcase';\n\nexport default GridShowcase;\n"],"mappings":";;;;;;;;AAWA,MAAM,eAAe,MAClB,EAAE,OAAO,UAAU,kBAAkB,WAAW,YAAY,GAAG,WAAW;CACzE,MAAM,QAAQ,SAAS;CAEvB,OACE,qBAACA,mBAAD;EAAS,OAAO;GAAE,UAAU;GAAY,GAAG;EAAM;EAAG,GAAI;YAAxD;GACE,oBAAC,gBAAD;IACE,WAAA;IACA,MAAA;IACA,WAAW,KAAK,MAAM,WAAW,GAAI;IACrC,YAAY,KAAK,MAAM,WAAW,EAAG;GACtC,CAAA;GACD,oBAACA,mBAAD;IAAS,OAAO;IAAU,GAAI;IAAY,OAAO;KAAE,QAAQ;KAAG,GAAG,YAAY;IAAM;IAChF;GACM,CAAA;GACT,oBAAC,gBAAD;IACE,WAAA;IACA,QAAA;IACA,SAAA;IACA,gBAAA;IACiB;IACjB,WAAW,KAAK,MAAM,WAAW,GAAI;IACrC,YAAY,MAAM;IAClB,OAAO,EAAE,QAAQ,EAAE;GACpB,CAAA;EACM;;AAEb,CACF;AAEA,aAAa,cAAc"}
1
+ {"version":3,"file":"GridShowcase.mjs","names":["Flexbox"],"sources":["../../../src/awesome/GridBackground/GridShowcase.tsx"],"sourcesContent":["'use client';\n\nimport { useTheme } from 'antd-style';\nimport { rgba } from 'polished';\nimport { memo } from 'react';\n\nimport { Flexbox } from '@/Flex';\n\nimport GridBackground from './GridBackground';\nimport type { GridShowcaseProps } from './type';\n\nconst GridShowcase = memo<GridShowcaseProps>(\n ({ style, children, backgroundColor = '#001dff', innerProps, ...rest }) => {\n const theme = useTheme();\n\n return (\n <Flexbox style={{ position: 'relative', ...style }} {...rest}>\n <GridBackground\n animation\n flip\n colorBack={rgba(theme.colorText, 0.12)}\n colorFront={rgba(theme.colorText, 0.6)}\n />\n <Flexbox align={'center'} {...innerProps} style={{ zIndex: 4, ...innerProps?.style }}>\n {children}\n </Flexbox>\n <GridBackground\n animation\n random\n reverse\n showBackground\n backgroundColor={backgroundColor}\n colorBack={rgba(theme.colorText, 0.24)}\n colorFront={theme.colorText}\n style={{ zIndex: 0 }}\n />\n </Flexbox>\n );\n },\n);\n\nGridShowcase.displayName = 'GridShowcase';\n\nexport default GridShowcase;\n"],"mappings":";;;;;;;;AAWA,MAAM,eAAe,MAClB,EAAE,OAAO,UAAU,kBAAkB,WAAW,YAAY,GAAG,WAAW;CACzE,MAAM,QAAQ,SAAS;CAEvB,OACE,qBAACA,mBAAD;EAAS,OAAO;GAAE,UAAU;GAAY,GAAG;EAAM;EAAG,GAAI;EAAxD,UAAA;GACE,oBAAC,gBAAD;IACE,WAAA;IACA,MAAA;IACA,WAAW,KAAK,MAAM,WAAW,GAAI;IACrC,YAAY,KAAK,MAAM,WAAW,EAAG;GACtC,CAAA;GACD,oBAACA,mBAAD;IAAS,OAAO;IAAU,GAAI;IAAY,OAAO;KAAE,QAAQ;KAAG,GAAG,YAAY;IAAM;IAChF;GACM,CAAA;GACT,oBAAC,gBAAD;IACE,WAAA;IACA,QAAA;IACA,SAAA;IACA,gBAAA;IACiB;IACjB,WAAW,KAAK,MAAM,WAAW,GAAI;IACrC,YAAY,MAAM;IAClB,OAAO,EAAE,QAAQ,EAAE;GACpB,CAAA;EACM;;AAEb,CACF;AAEA,aAAa,cAAc"}
@@ -1 +1 @@
1
- {"version":3,"file":"Grid.mjs","names":[],"sources":["../../../../src/awesome/GridBackground/components/Grid.tsx"],"sourcesContent":["import { isUndefined } from 'es-toolkit/compat';\nimport { memo, useCallback } from 'react';\n\nimport type { SvgProps } from '@/types';\n\nenum Line {\n l7,\n l6,\n l5,\n l4,\n l3,\n l2,\n l1,\n center,\n r1,\n r2,\n r3,\n r4,\n r5,\n r6,\n r7,\n}\n\nexport interface GridProps extends SvgProps {\n color?: string;\n linePick?: Line;\n strokeWidth?: number;\n}\n\nconst Grid = memo<GridProps>(({ color = '#fff', strokeWidth = 3, linePick, ...rest }) => {\n const isUnpick = isUndefined(linePick);\n\n const showLine = useCallback((l: Line) => isUnpick || linePick === l, [linePick]);\n\n const vLine = (\n <>\n {showLine(Line.l7) && <path d=\"M2 420v-60.343c0-21.82 14.15-41.12 34.959-47.684L1026 0h0\" />}\n {showLine(Line.l6) && (\n <path d=\"M268 420v-62.077c0-20.977 13.094-39.724 32.789-46.944L1149 0h0\" />\n )}\n {showLine(Line.l5) && <path d=\"M534 420v-64.358a50 50 0 0129.884-45.775L1269 0h0\" />}\n {showLine(Line.l4) && <path d=\"M800 420v-67.395a50 50 0 0125.958-43.84L1389 0h0\" />}\n {showLine(Line.l3) && <path d=\"M1066 420v-71.645a50 50 0 0120.456-40.337L1507 0h0\" />}\n {showLine(Line.l2) && <path d=\"M1332 420v-77.506a50 50 0 0113.194-33.843L1629 0h0\" />}\n {showLine(Line.l1) && <path d=\"M1598 420v-86.225a50 50 0 014.438-20.594L1744 0h0\" />}\n {showLine(Line.center) && <path d=\"M1864 420V0h0\" />}\n {showLine(Line.r1) && <path d=\"M2130 420v-86.225a50 50 0 00-4.438-20.594L1984 0h0\" />}\n {showLine(Line.r2) && <path d=\"M2396 420v-77.506a50 50 0 00-13.194-33.843L2099 0h0\" />}\n {showLine(Line.r3) && <path d=\"M2662 420v-71.645a50 50 0 00-20.456-40.337L2221 0h0\" />}\n {showLine(Line.r4) && <path d=\"M2928 420v-67.395a50 50 0 00-25.958-43.84L2339 0h0\" />}\n {showLine(Line.r5) && <path d=\"M3194 420v-64.358a50 50 0 00-29.884-45.775L2459 0h0\" />}\n {showLine(Line.r6) && (\n <path d=\"M3460 420v-62.077c0-20.977-13.094-39.724-32.789-46.944L2579 0h0\" />\n )}\n {showLine(Line.r7) && (\n <path d=\"M3726 420v-60.343c0-21.82-14.15-41.12-34.959-47.684L2702 0h0\" />\n )}\n </>\n );\n\n const hLine = isUnpick && (\n <>\n <path d=\"M2835 42H892\" />\n <path d=\"M595 136h2538\" />\n <path d=\"M237 249h3254\" />\n </>\n );\n\n return (\n <svg\n style={{ width: '100%' }}\n viewBox=\"0 0 3728 422\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...rest}\n >\n <g fill=\"none\" fillRule=\"evenodd\" stroke={color} strokeWidth={strokeWidth}>\n {vLine}\n {hLine}\n </g>\n </svg>\n );\n});\n\nGrid.displayName = 'Grid';\n\nexport default Grid;\n"],"mappings":";;;;AA6BA,MAAM,OAAO,MAAiB,EAAE,QAAQ,QAAQ,cAAc,GAAG,UAAU,GAAG,WAAW;CACvF,MAAM,WAAW,YAAY,QAAQ;CAErC,MAAM,WAAW,aAAa,MAAY,YAAY,aAAa,GAAG,CAAC,QAAQ,CAAC;CAEhF,MAAM,QACJ,qBAAA,YAAA,EAAA,UAAA;EACG,SAAA,CAAgB,KAAK,oBAAC,QAAD,EAAM,GAAE,4DAA6D,CAAA;EAC1F,SAAA,CAAgB,KACf,oBAAC,QAAD,EAAM,GAAE,iEAAkE,CAAA;EAE3E,SAAA,CAAgB,KAAK,oBAAC,QAAD,EAAM,GAAE,oDAAqD,CAAA;EAClF,SAAA,CAAgB,KAAK,oBAAC,QAAD,EAAM,GAAE,mDAAoD,CAAA;EACjF,SAAA,CAAgB,KAAK,oBAAC,QAAD,EAAM,GAAE,qDAAsD,CAAA;EACnF,SAAA,CAAgB,KAAK,oBAAC,QAAD,EAAM,GAAE,qDAAsD,CAAA;EACnF,SAAA,CAAgB,KAAK,oBAAC,QAAD,EAAM,GAAE,oDAAqD,CAAA;EAClF,SAAA,CAAoB,KAAK,oBAAC,QAAD,EAAM,GAAE,gBAAiB,CAAA;EAClD,SAAA,CAAgB,KAAK,oBAAC,QAAD,EAAM,GAAE,qDAAsD,CAAA;EACnF,SAAA,CAAgB,KAAK,oBAAC,QAAD,EAAM,GAAE,sDAAuD,CAAA;EACpF,SAAA,EAAgB,KAAK,oBAAC,QAAD,EAAM,GAAE,sDAAuD,CAAA;EACpF,SAAA,EAAgB,KAAK,oBAAC,QAAD,EAAM,GAAE,qDAAsD,CAAA;EACnF,SAAA,EAAgB,KAAK,oBAAC,QAAD,EAAM,GAAE,sDAAuD,CAAA;EACpF,SAAA,EAAgB,KACf,oBAAC,QAAD,EAAM,GAAE,kEAAmE,CAAA;EAE5E,SAAA,EAAgB,KACf,oBAAC,QAAD,EAAM,GAAE,+DAAgE,CAAA;CAE1E,EAAA,CAAA;CAGJ,MAAM,QAAQ,YACZ,qBAAA,YAAA,EAAA,UAAA;EACE,oBAAC,QAAD,EAAM,GAAE,eAAgB,CAAA;EACxB,oBAAC,QAAD,EAAM,GAAE,gBAAiB,CAAA;EACzB,oBAAC,QAAD,EAAM,GAAE,gBAAiB,CAAA;CACzB,EAAA,CAAA;CAGJ,OACE,oBAAC,OAAD;EACE,OAAO,EAAE,OAAO,OAAO;EACvB,SAAQ;EACR,OAAM;EACN,GAAI;YAEJ,qBAAC,KAAD;GAAG,MAAK;GAAO,UAAS;GAAU,QAAQ;GAAoB;aAA9D,CACG,OACA,KACA;;CACA,CAAA;AAET,CAAC;AAED,KAAK,cAAc"}
1
+ {"version":3,"file":"Grid.mjs","names":[],"sources":["../../../../src/awesome/GridBackground/components/Grid.tsx"],"sourcesContent":["import { isUndefined } from 'es-toolkit/compat';\nimport { memo, useCallback } from 'react';\n\nimport type { SvgProps } from '@/types';\n\nenum Line {\n l7,\n l6,\n l5,\n l4,\n l3,\n l2,\n l1,\n center,\n r1,\n r2,\n r3,\n r4,\n r5,\n r6,\n r7,\n}\n\nexport interface GridProps extends SvgProps {\n color?: string;\n linePick?: Line;\n strokeWidth?: number;\n}\n\nconst Grid = memo<GridProps>(({ color = '#fff', strokeWidth = 3, linePick, ...rest }) => {\n const isUnpick = isUndefined(linePick);\n\n const showLine = useCallback((l: Line) => isUnpick || linePick === l, [linePick]);\n\n const vLine = (\n <>\n {showLine(Line.l7) && <path d=\"M2 420v-60.343c0-21.82 14.15-41.12 34.959-47.684L1026 0h0\" />}\n {showLine(Line.l6) && (\n <path d=\"M268 420v-62.077c0-20.977 13.094-39.724 32.789-46.944L1149 0h0\" />\n )}\n {showLine(Line.l5) && <path d=\"M534 420v-64.358a50 50 0 0129.884-45.775L1269 0h0\" />}\n {showLine(Line.l4) && <path d=\"M800 420v-67.395a50 50 0 0125.958-43.84L1389 0h0\" />}\n {showLine(Line.l3) && <path d=\"M1066 420v-71.645a50 50 0 0120.456-40.337L1507 0h0\" />}\n {showLine(Line.l2) && <path d=\"M1332 420v-77.506a50 50 0 0113.194-33.843L1629 0h0\" />}\n {showLine(Line.l1) && <path d=\"M1598 420v-86.225a50 50 0 014.438-20.594L1744 0h0\" />}\n {showLine(Line.center) && <path d=\"M1864 420V0h0\" />}\n {showLine(Line.r1) && <path d=\"M2130 420v-86.225a50 50 0 00-4.438-20.594L1984 0h0\" />}\n {showLine(Line.r2) && <path d=\"M2396 420v-77.506a50 50 0 00-13.194-33.843L2099 0h0\" />}\n {showLine(Line.r3) && <path d=\"M2662 420v-71.645a50 50 0 00-20.456-40.337L2221 0h0\" />}\n {showLine(Line.r4) && <path d=\"M2928 420v-67.395a50 50 0 00-25.958-43.84L2339 0h0\" />}\n {showLine(Line.r5) && <path d=\"M3194 420v-64.358a50 50 0 00-29.884-45.775L2459 0h0\" />}\n {showLine(Line.r6) && (\n <path d=\"M3460 420v-62.077c0-20.977-13.094-39.724-32.789-46.944L2579 0h0\" />\n )}\n {showLine(Line.r7) && (\n <path d=\"M3726 420v-60.343c0-21.82-14.15-41.12-34.959-47.684L2702 0h0\" />\n )}\n </>\n );\n\n const hLine = isUnpick && (\n <>\n <path d=\"M2835 42H892\" />\n <path d=\"M595 136h2538\" />\n <path d=\"M237 249h3254\" />\n </>\n );\n\n return (\n <svg\n style={{ width: '100%' }}\n viewBox=\"0 0 3728 422\"\n xmlns=\"http://www.w3.org/2000/svg\"\n {...rest}\n >\n <g fill=\"none\" fillRule=\"evenodd\" stroke={color} strokeWidth={strokeWidth}>\n {vLine}\n {hLine}\n </g>\n </svg>\n );\n});\n\nGrid.displayName = 'Grid';\n\nexport default Grid;\n"],"mappings":";;;;AA6BA,MAAM,OAAO,MAAiB,EAAE,QAAQ,QAAQ,cAAc,GAAG,UAAU,GAAG,WAAW;CACvF,MAAM,WAAW,YAAY,QAAQ;CAErC,MAAM,WAAW,aAAa,MAAY,YAAY,aAAa,GAAG,CAAC,QAAQ,CAAC;CAEhF,MAAM,QACJ,qBAAA,YAAA,EAAA,UAAA;EACG,SAAA,CAAgB,KAAK,oBAAC,QAAD,EAAM,GAAE,4DAA6D,CAAA;EAC1F,SAAA,CAAgB,KACf,oBAAC,QAAD,EAAM,GAAE,iEAAkE,CAAA;EAE3E,SAAA,CAAgB,KAAK,oBAAC,QAAD,EAAM,GAAE,oDAAqD,CAAA;EAClF,SAAA,CAAgB,KAAK,oBAAC,QAAD,EAAM,GAAE,mDAAoD,CAAA;EACjF,SAAA,CAAgB,KAAK,oBAAC,QAAD,EAAM,GAAE,qDAAsD,CAAA;EACnF,SAAA,CAAgB,KAAK,oBAAC,QAAD,EAAM,GAAE,qDAAsD,CAAA;EACnF,SAAA,CAAgB,KAAK,oBAAC,QAAD,EAAM,GAAE,oDAAqD,CAAA;EAClF,SAAA,CAAoB,KAAK,oBAAC,QAAD,EAAM,GAAE,gBAAiB,CAAA;EAClD,SAAA,CAAgB,KAAK,oBAAC,QAAD,EAAM,GAAE,qDAAsD,CAAA;EACnF,SAAA,CAAgB,KAAK,oBAAC,QAAD,EAAM,GAAE,sDAAuD,CAAA;EACpF,SAAA,EAAgB,KAAK,oBAAC,QAAD,EAAM,GAAE,sDAAuD,CAAA;EACpF,SAAA,EAAgB,KAAK,oBAAC,QAAD,EAAM,GAAE,qDAAsD,CAAA;EACnF,SAAA,EAAgB,KAAK,oBAAC,QAAD,EAAM,GAAE,sDAAuD,CAAA;EACpF,SAAA,EAAgB,KACf,oBAAC,QAAD,EAAM,GAAE,kEAAmE,CAAA;EAE5E,SAAA,EAAgB,KACf,oBAAC,QAAD,EAAM,GAAE,+DAAgE,CAAA;CAE1E,EAAA,CAAA;CAGJ,MAAM,QAAQ,YACZ,qBAAA,YAAA,EAAA,UAAA;EACE,oBAAC,QAAD,EAAM,GAAE,eAAgB,CAAA;EACxB,oBAAC,QAAD,EAAM,GAAE,gBAAiB,CAAA;EACzB,oBAAC,QAAD,EAAM,GAAE,gBAAiB,CAAA;CACzB,EAAA,CAAA;CAGJ,OACE,oBAAC,OAAD;EACE,OAAO,EAAE,OAAO,OAAO;EACvB,SAAQ;EACR,OAAM;EACN,GAAI;EAEJ,UAAA,qBAAC,KAAD;GAAG,MAAK;GAAO,UAAS;GAAU,QAAQ;GAAoB;GAA9D,UAAA,CACG,OACA,KACA;;CACA,CAAA;AAET,CAAC;AAED,KAAK,cAAc"}
@@ -1 +1 @@
1
- {"version":3,"file":"Hero.mjs","names":["Flexbox","Button"],"sources":["../../../src/awesome/Hero/Hero.tsx"],"sourcesContent":["'use client';\n\nimport { GithubIcon } from '@lobehub/ui/icons';\nimport { ConfigProvider } from 'antd';\nimport { useResponsive } from 'antd-style';\nimport { memo, useCallback } from 'react';\n\nimport A from '@/A';\nimport AuroraBackground from '@/awesome/AuroraBackground';\nimport GradientButton from '@/awesome/GradientButton';\nimport Button from '@/Button';\nimport { Center, Flexbox } from '@/Flex';\n\nimport { styles } from './style';\nimport { type HeroProps } from './type';\n\nconst Hero = memo<HeroProps>(({ title, description, actions, Link }) => {\n const { mobile } = useResponsive();\n\n const LinkRender = Link || A;\n\n const ButtonGroups = useCallback(\n () =>\n Boolean(actions?.length) && (\n <Flexbox horizontal className={styles.actions} gap={16} justify={'center'}>\n {actions!.map(({ text, link, openExternal, github, type }, index) => {\n const content =\n type === 'primary' ? (\n <GradientButton\n block={mobile}\n icon={github ? GithubIcon : undefined}\n key={index}\n size=\"large\"\n >\n {text}\n </GradientButton>\n ) : (\n <Button\n block={mobile}\n icon={github ? GithubIcon : undefined}\n key={index}\n size=\"large\"\n type=\"primary\"\n >\n {text}\n </Button>\n );\n\n return openExternal ? (\n <A href={link} key={text} target={openExternal ? '_blank' : undefined}>\n {content}\n </A>\n ) : (\n <LinkRender key={text} to={link}>\n {content}\n </LinkRender>\n );\n })}\n </Flexbox>\n ),\n [actions],\n );\n\n return (\n <>\n <AuroraBackground />\n <ConfigProvider theme={{ token: { fontSize: 16 } }}>\n <Flexbox align={'center'} style={{ zIndex: 1 }}>\n <Flexbox horizontal className={styles.container} distribution={'center'}>\n <Center>\n {title && (\n <Center\n horizontal\n as={'h1'}\n className={styles.title}\n dangerouslySetInnerHTML={{ __html: title }}\n gap={'0.25em'}\n wrap={'wrap'}\n />\n )}\n {description && (\n <p className={styles.desc} dangerouslySetInnerHTML={{ __html: description }} />\n )}\n <ButtonGroups />\n </Center>\n </Flexbox>\n </Flexbox>\n </ConfigProvider>\n </>\n );\n});\n\nHero.displayName = 'Hero';\n\nexport default Hero;\n"],"mappings":";;;;;;;;;;;;;;AAgBA,MAAM,OAAO,MAAiB,EAAE,OAAO,aAAa,SAAS,WAAW;CACtE,MAAM,EAAE,WAAW,cAAc;CAEjC,MAAM,aAAa,QAAQ;CAE3B,MAAM,eAAe,kBAEjB,QAAQ,SAAS,MAAM,KACrB,oBAACA,mBAAD;EAAS,YAAA;EAAW,WAAW,OAAO;EAAS,KAAK;EAAI,SAAS;YAC9D,QAAS,KAAK,EAAE,MAAM,MAAM,cAAc,QAAQ,QAAQ,UAAU;GACnE,MAAM,UACJ,SAAS,YACP,oBAAC,gBAAD;IACE,OAAO;IACP,MAAM,SAAS,aAAa,KAAA;IAE5B,MAAK;cAEJ;GACa,GAJT,KAIS,IAEhB,oBAACC,UAAD;IACE,OAAO;IACP,MAAM,SAAS,aAAa,KAAA;IAE5B,MAAK;IACL,MAAK;cAEJ;GACK,GALD,KAKC;GAGZ,OAAO,eACL,oBAAC,GAAD;IAAG,MAAM;IAAiB,QAAQ,eAAe,WAAW,KAAA;cACzD;GACA,GAFiB,IAEjB,IAEH,oBAAC,YAAD;IAAuB,IAAI;cACxB;GACS,GAFK,IAEL;EAEhB,CAAC;CACM,CAAA,GAEb,CAAC,OAAO,CACV;CAEA,OACE,qBAAA,YAAA,EAAA,UAAA,CACE,oBAAC,kBAAD,CAAmB,CAAA,GACnB,oBAAC,gBAAD;EAAgB,OAAO,EAAE,OAAO,EAAE,UAAU,GAAG,EAAE;YAC/C,oBAACD,mBAAD;GAAS,OAAO;GAAU,OAAO,EAAE,QAAQ,EAAE;aAC3C,oBAACA,mBAAD;IAAS,YAAA;IAAW,WAAW,OAAO;IAAW,cAAc;cAC7D,qBAAC,QAAD,EAAA,UAAA;KACG,SACC,oBAAC,QAAD;MACE,YAAA;MACA,IAAI;MACJ,WAAW,OAAO;MAClB,yBAAyB,EAAE,QAAQ,MAAM;MACzC,KAAK;MACL,MAAM;KACP,CAAA;KAEF,eACC,oBAAC,KAAD;MAAG,WAAW,OAAO;MAAM,yBAAyB,EAAE,QAAQ,YAAY;KAAI,CAAA;KAEhF,oBAAC,cAAD,CAAe,CAAA;IACT,EAAA,CAAA;GACD,CAAA;EACF,CAAA;CACK,CAAA,CAChB,EAAA,CAAA;AAEN,CAAC;AAED,KAAK,cAAc"}
1
+ {"version":3,"file":"Hero.mjs","names":["Flexbox","Button"],"sources":["../../../src/awesome/Hero/Hero.tsx"],"sourcesContent":["'use client';\n\nimport { GithubIcon } from '@lobehub/ui/icons';\nimport { ConfigProvider } from 'antd';\nimport { useResponsive } from 'antd-style';\nimport { memo, useCallback } from 'react';\n\nimport A from '@/A';\nimport AuroraBackground from '@/awesome/AuroraBackground';\nimport GradientButton from '@/awesome/GradientButton';\nimport Button from '@/Button';\nimport { Center, Flexbox } from '@/Flex';\n\nimport { styles } from './style';\nimport { type HeroProps } from './type';\n\nconst Hero = memo<HeroProps>(({ title, description, actions, Link }) => {\n const { mobile } = useResponsive();\n\n const LinkRender = Link || A;\n\n const ButtonGroups = useCallback(\n () =>\n Boolean(actions?.length) && (\n <Flexbox horizontal className={styles.actions} gap={16} justify={'center'}>\n {actions!.map(({ text, link, openExternal, github, type }, index) => {\n const content =\n type === 'primary' ? (\n <GradientButton\n block={mobile}\n icon={github ? GithubIcon : undefined}\n key={index}\n size=\"large\"\n >\n {text}\n </GradientButton>\n ) : (\n <Button\n block={mobile}\n icon={github ? GithubIcon : undefined}\n key={index}\n size=\"large\"\n type=\"primary\"\n >\n {text}\n </Button>\n );\n\n return openExternal ? (\n <A href={link} key={text} target={openExternal ? '_blank' : undefined}>\n {content}\n </A>\n ) : (\n <LinkRender key={text} to={link}>\n {content}\n </LinkRender>\n );\n })}\n </Flexbox>\n ),\n [actions],\n );\n\n return (\n <>\n <AuroraBackground />\n <ConfigProvider theme={{ token: { fontSize: 16 } }}>\n <Flexbox align={'center'} style={{ zIndex: 1 }}>\n <Flexbox horizontal className={styles.container} distribution={'center'}>\n <Center>\n {title && (\n <Center\n horizontal\n as={'h1'}\n className={styles.title}\n dangerouslySetInnerHTML={{ __html: title }}\n gap={'0.25em'}\n wrap={'wrap'}\n />\n )}\n {description && (\n <p className={styles.desc} dangerouslySetInnerHTML={{ __html: description }} />\n )}\n <ButtonGroups />\n </Center>\n </Flexbox>\n </Flexbox>\n </ConfigProvider>\n </>\n );\n});\n\nHero.displayName = 'Hero';\n\nexport default Hero;\n"],"mappings":";;;;;;;;;;;;;;AAgBA,MAAM,OAAO,MAAiB,EAAE,OAAO,aAAa,SAAS,WAAW;CACtE,MAAM,EAAE,WAAW,cAAc;CAEjC,MAAM,aAAa,QAAQ;CAE3B,MAAM,eAAe,kBAEjB,QAAQ,SAAS,MAAM,KACrB,oBAACA,mBAAD;EAAS,YAAA;EAAW,WAAW,OAAO;EAAS,KAAK;EAAI,SAAS;EAC9D,UAAA,QAAS,KAAK,EAAE,MAAM,MAAM,cAAc,QAAQ,QAAQ,UAAU;GACnE,MAAM,UACJ,SAAS,YACP,oBAAC,gBAAD;IACE,OAAO;IACP,MAAM,SAAS,aAAa,KAAA;IAE5B,MAAK;IAEJ,UAAA;GACa,GAJT,KAIS,IAEhB,oBAACC,UAAD;IACE,OAAO;IACP,MAAM,SAAS,aAAa,KAAA;IAE5B,MAAK;IACL,MAAK;IAEJ,UAAA;GACK,GALD,KAKC;GAGZ,OAAO,eACL,oBAAC,GAAD;IAAG,MAAM;IAAiB,QAAQ,eAAe,WAAW,KAAA;IACzD,UAAA;GACA,GAFiB,IAEjB,IAEH,oBAAC,YAAD;IAAuB,IAAI;IACxB,UAAA;GACS,GAFK,IAEL;EAEhB,CAAC;CACM,CAAA,GAEb,CAAC,OAAO,CACV;CAEA,OACE,qBAAA,YAAA,EAAA,UAAA,CACE,oBAAC,kBAAD,CAAmB,CAAA,GACnB,oBAAC,gBAAD;EAAgB,OAAO,EAAE,OAAO,EAAE,UAAU,GAAG,EAAE;EAC/C,UAAA,oBAACD,mBAAD;GAAS,OAAO;GAAU,OAAO,EAAE,QAAQ,EAAE;GAC3C,UAAA,oBAACA,mBAAD;IAAS,YAAA;IAAW,WAAW,OAAO;IAAW,cAAc;IAC7D,UAAA,qBAAC,QAAD,EAAA,UAAA;KACG,SACC,oBAAC,QAAD;MACE,YAAA;MACA,IAAI;MACJ,WAAW,OAAO;MAClB,yBAAyB,EAAE,QAAQ,MAAM;MACzC,KAAK;MACL,MAAM;KACP,CAAA;KAEF,eACC,oBAAC,KAAD;MAAG,WAAW,OAAO;MAAM,yBAAyB,EAAE,QAAQ,YAAY;KAAI,CAAA;KAEhF,oBAAC,cAAD,CAAe,CAAA;IACT,EAAA,CAAA;GACD,CAAA;EACF,CAAA;CACK,CAAA,CAChB,EAAA,CAAA;AAEN,CAAC;AAED,KAAK,cAAc"}
@@ -1 +1 @@
1
- {"version":3,"file":"ParentSize.mjs","names":[],"sources":["../../../src/awesome/Spline/ParentSize.tsx"],"sourcesContent":["import { debounce } from 'es-toolkit/compat';\nimport {\n type CSSProperties,\n memo,\n type ReactNode,\n type Ref,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { mergeRefs } from 'react-merge-refs';\n\ninterface ResizeObserverCallback {\n (entries: ResizeObserverEntry[], observer: ResizeObserver): void;\n}\n\ninterface ResizeObserverPolyfill {\n new (callback: ResizeObserverCallback): ResizeObserver;\n}\n\n// @TODO remove when upgraded to TS 4 which has its own declaration\ninterface PrivateWindow {\n ResizeObserver: ResizeObserverPolyfill;\n}\n\nexport interface ParentSizeProps {\n /** Child render function `({ width, height, top, left, ref, resize }) => ReactNode`. */\n children: (\n args: {\n ref: HTMLDivElement | null;\n resize: (state: ParentSizeState) => void;\n } & ParentSizeState,\n ) => ReactNode;\n /** Optional `className` to add to the parent `div` wrapper used for size measurement. */\n className?: string;\n /** Child render updates upon resize are delayed until `debounceTime` milliseconds _after_ the last resize event is observed. */\n debounceTime?: number;\n /** Optional flag to toggle leading debounce calls. When set to true this will ensure that the component always renders immediately. (defaults to true) */\n enableDebounceLeadingCall?: boolean;\n /** Optional dimensions provided won't trigger a state change when changed. */\n ignoreDimensions?: keyof ParentSizeState | (keyof ParentSizeState)[];\n /** Optional `style` object to apply to the parent `div` wrapper used for size measurement. */\n parentSizeStyles?: CSSProperties;\n ref?: Ref<HTMLDivElement>;\n /** Optionally inject a ResizeObserver polyfill, else this *must* be globally available. */\n resizeObserverPolyfill?: ResizeObserverPolyfill;\n}\n\ntype ParentSizeState = {\n height: number;\n left: number;\n top: number;\n width: number;\n};\n\nexport type ParentSizeProvidedProps = ParentSizeState;\n\nconst defaultIgnoreDimensions: ParentSizeProps['ignoreDimensions'] = [];\nconst defaultParentSizeStyles = { height: '100%', width: '100%' };\n\nconst ParentSize = memo<ParentSizeProps>(\n ({\n ref,\n className,\n children,\n debounceTime = 300,\n ignoreDimensions = defaultIgnoreDimensions,\n parentSizeStyles,\n enableDebounceLeadingCall = true,\n resizeObserverPolyfill,\n ...restProps\n }) => {\n const target = useRef<HTMLDivElement | null>(null);\n const animationFrameID = useRef(0);\n\n const [state, setState] = useState<ParentSizeState>({\n height: 0,\n left: 0,\n top: 0,\n width: 0,\n });\n\n const resize = useMemo(() => {\n const normalized = Array.isArray(ignoreDimensions) ? ignoreDimensions : [ignoreDimensions];\n\n return debounce(\n (incoming: ParentSizeState) => {\n setState((existing) => {\n const stateKeys = Object.keys(existing) as (keyof ParentSizeState)[];\n const keysWithChanges = stateKeys.filter((key) => existing[key] !== incoming[key]);\n const shouldBail = keysWithChanges.every((key) => normalized.includes(key));\n\n return shouldBail ? existing : incoming;\n });\n },\n debounceTime,\n { leading: enableDebounceLeadingCall },\n );\n }, [debounceTime, enableDebounceLeadingCall, ignoreDimensions]);\n\n useEffect(() => {\n const LocalResizeObserver =\n resizeObserverPolyfill || (window as unknown as PrivateWindow).ResizeObserver;\n\n const observer = new LocalResizeObserver((entries) => {\n for (const entry of entries) {\n const { left, top, width, height } = entry?.contentRect ?? {};\n animationFrameID.current = window.requestAnimationFrame(() => {\n resize({ height, left, top, width });\n });\n }\n });\n if (target.current) observer.observe(target.current);\n\n return () => {\n window.cancelAnimationFrame(animationFrameID.current);\n observer.disconnect();\n resize.cancel();\n };\n }, [resize, resizeObserverPolyfill]);\n\n return (\n <div\n className={className}\n ref={mergeRefs<HTMLDivElement>([ref, target])}\n style={{ ...defaultParentSizeStyles, ...parentSizeStyles }}\n {...restProps}\n >\n {children({\n ...state,\n ref: target.current,\n resize,\n })}\n </div>\n );\n },\n);\n\nexport default ParentSize;\n"],"mappings":";;;;;AA0DA,MAAM,0BAA+D,CAAC;AACtE,MAAM,0BAA0B;CAAE,QAAQ;CAAQ,OAAO;AAAO;AAEhE,MAAM,aAAa,MAChB,EACC,KACA,WACA,UACA,eAAe,KACf,mBAAmB,yBACnB,kBACA,4BAA4B,MAC5B,wBACA,GAAG,gBACC;CACJ,MAAM,SAAS,OAA8B,IAAI;CACjD,MAAM,mBAAmB,OAAO,CAAC;CAEjC,MAAM,CAAC,OAAO,YAAY,SAA0B;EAClD,QAAQ;EACR,MAAM;EACN,KAAK;EACL,OAAO;CACT,CAAC;CAED,MAAM,SAAS,cAAc;EAC3B,MAAM,aAAa,MAAM,QAAQ,gBAAgB,IAAI,mBAAmB,CAAC,gBAAgB;EAEzF,OAAO,UACJ,aAA8B;GAC7B,UAAU,aAAa;IAKrB,OAJkB,OAAO,KAAK,QACE,CAAC,CAAC,QAAQ,QAAQ,SAAS,SAAS,SAAS,IAC5C,CAAC,CAAC,OAAO,QAAQ,WAAW,SAAS,GAAG,CAEzD,IAAI,WAAW;GACjC,CAAC;EACH,GACA,cACA,EAAE,SAAS,0BAA0B,CACvC;CACF,GAAG;EAAC;EAAc;EAA2B;CAAgB,CAAC;CAE9D,gBAAgB;EAId,MAAM,WAAW,KAFf,0BAA2B,OAAoC,iBAEvB,YAAY;GACpD,KAAK,MAAM,SAAS,SAAS;IAC3B,MAAM,EAAE,MAAM,KAAK,OAAO,WAAW,OAAO,eAAe,CAAC;IAC5D,iBAAiB,UAAU,OAAO,4BAA4B;KAC5D,OAAO;MAAE;MAAQ;MAAM;MAAK;KAAM,CAAC;IACrC,CAAC;GACH;EACF,CAAC;EACD,IAAI,OAAO,SAAS,SAAS,QAAQ,OAAO,OAAO;EAEnD,aAAa;GACX,OAAO,qBAAqB,iBAAiB,OAAO;GACpD,SAAS,WAAW;GACpB,OAAO,OAAO;EAChB;CACF,GAAG,CAAC,QAAQ,sBAAsB,CAAC;CAEnC,OACE,oBAAC,OAAD;EACa;EACX,KAAK,UAA0B,CAAC,KAAK,MAAM,CAAC;EAC5C,OAAO;GAAE,GAAG;GAAyB,GAAG;EAAiB;EACzD,GAAI;YAEH,SAAS;GACR,GAAG;GACH,KAAK,OAAO;GACZ;EACF,CAAC;CACE,CAAA;AAET,CACF"}
1
+ {"version":3,"file":"ParentSize.mjs","names":[],"sources":["../../../src/awesome/Spline/ParentSize.tsx"],"sourcesContent":["import { debounce } from 'es-toolkit/compat';\nimport {\n type CSSProperties,\n memo,\n type ReactNode,\n type Ref,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { mergeRefs } from 'react-merge-refs';\n\ninterface ResizeObserverCallback {\n (entries: ResizeObserverEntry[], observer: ResizeObserver): void;\n}\n\ninterface ResizeObserverPolyfill {\n new (callback: ResizeObserverCallback): ResizeObserver;\n}\n\n// @TODO remove when upgraded to TS 4 which has its own declaration\ninterface PrivateWindow {\n ResizeObserver: ResizeObserverPolyfill;\n}\n\nexport interface ParentSizeProps {\n /** Child render function `({ width, height, top, left, ref, resize }) => ReactNode`. */\n children: (\n args: {\n ref: HTMLDivElement | null;\n resize: (state: ParentSizeState) => void;\n } & ParentSizeState,\n ) => ReactNode;\n /** Optional `className` to add to the parent `div` wrapper used for size measurement. */\n className?: string;\n /** Child render updates upon resize are delayed until `debounceTime` milliseconds _after_ the last resize event is observed. */\n debounceTime?: number;\n /** Optional flag to toggle leading debounce calls. When set to true this will ensure that the component always renders immediately. (defaults to true) */\n enableDebounceLeadingCall?: boolean;\n /** Optional dimensions provided won't trigger a state change when changed. */\n ignoreDimensions?: keyof ParentSizeState | (keyof ParentSizeState)[];\n /** Optional `style` object to apply to the parent `div` wrapper used for size measurement. */\n parentSizeStyles?: CSSProperties;\n ref?: Ref<HTMLDivElement>;\n /** Optionally inject a ResizeObserver polyfill, else this *must* be globally available. */\n resizeObserverPolyfill?: ResizeObserverPolyfill;\n}\n\ntype ParentSizeState = {\n height: number;\n left: number;\n top: number;\n width: number;\n};\n\nexport type ParentSizeProvidedProps = ParentSizeState;\n\nconst defaultIgnoreDimensions: ParentSizeProps['ignoreDimensions'] = [];\nconst defaultParentSizeStyles = { height: '100%', width: '100%' };\n\nconst ParentSize = memo<ParentSizeProps>(\n ({\n ref,\n className,\n children,\n debounceTime = 300,\n ignoreDimensions = defaultIgnoreDimensions,\n parentSizeStyles,\n enableDebounceLeadingCall = true,\n resizeObserverPolyfill,\n ...restProps\n }) => {\n const target = useRef<HTMLDivElement | null>(null);\n const animationFrameID = useRef(0);\n\n const [state, setState] = useState<ParentSizeState>({\n height: 0,\n left: 0,\n top: 0,\n width: 0,\n });\n\n const resize = useMemo(() => {\n const normalized = Array.isArray(ignoreDimensions) ? ignoreDimensions : [ignoreDimensions];\n\n return debounce(\n (incoming: ParentSizeState) => {\n setState((existing) => {\n const stateKeys = Object.keys(existing) as (keyof ParentSizeState)[];\n const keysWithChanges = stateKeys.filter((key) => existing[key] !== incoming[key]);\n const shouldBail = keysWithChanges.every((key) => normalized.includes(key));\n\n return shouldBail ? existing : incoming;\n });\n },\n debounceTime,\n { leading: enableDebounceLeadingCall },\n );\n }, [debounceTime, enableDebounceLeadingCall, ignoreDimensions]);\n\n useEffect(() => {\n const LocalResizeObserver =\n resizeObserverPolyfill || (window as unknown as PrivateWindow).ResizeObserver;\n\n const observer = new LocalResizeObserver((entries) => {\n for (const entry of entries) {\n const { left, top, width, height } = entry?.contentRect ?? {};\n animationFrameID.current = window.requestAnimationFrame(() => {\n resize({ height, left, top, width });\n });\n }\n });\n if (target.current) observer.observe(target.current);\n\n return () => {\n window.cancelAnimationFrame(animationFrameID.current);\n observer.disconnect();\n resize.cancel();\n };\n }, [resize, resizeObserverPolyfill]);\n\n return (\n <div\n className={className}\n ref={mergeRefs<HTMLDivElement>([ref, target])}\n style={{ ...defaultParentSizeStyles, ...parentSizeStyles }}\n {...restProps}\n >\n {children({\n ...state,\n ref: target.current,\n resize,\n })}\n </div>\n );\n },\n);\n\nexport default ParentSize;\n"],"mappings":";;;;;AA0DA,MAAM,0BAA+D,CAAC;AACtE,MAAM,0BAA0B;CAAE,QAAQ;CAAQ,OAAO;AAAO;AAEhE,MAAM,aAAa,MAChB,EACC,KACA,WACA,UACA,eAAe,KACf,mBAAmB,yBACnB,kBACA,4BAA4B,MAC5B,wBACA,GAAG,gBACC;CACJ,MAAM,SAAS,OAA8B,IAAI;CACjD,MAAM,mBAAmB,OAAO,CAAC;CAEjC,MAAM,CAAC,OAAO,YAAY,SAA0B;EAClD,QAAQ;EACR,MAAM;EACN,KAAK;EACL,OAAO;CACT,CAAC;CAED,MAAM,SAAS,cAAc;EAC3B,MAAM,aAAa,MAAM,QAAQ,gBAAgB,IAAI,mBAAmB,CAAC,gBAAgB;EAEzF,OAAO,UACJ,aAA8B;GAC7B,UAAU,aAAa;IAKrB,OAJkB,OAAO,KAAK,QACE,CAAC,CAAC,QAAQ,QAAQ,SAAS,SAAS,SAAS,IAC5C,CAAC,CAAC,OAAO,QAAQ,WAAW,SAAS,GAAG,CAEzD,IAAI,WAAW;GACjC,CAAC;EACH,GACA,cACA,EAAE,SAAS,0BAA0B,CACvC;CACF,GAAG;EAAC;EAAc;EAA2B;CAAgB,CAAC;CAE9D,gBAAgB;EAId,MAAM,WAAW,KAFf,0BAA2B,OAAoC,iBAEvB,YAAY;GACpD,KAAK,MAAM,SAAS,SAAS;IAC3B,MAAM,EAAE,MAAM,KAAK,OAAO,WAAW,OAAO,eAAe,CAAC;IAC5D,iBAAiB,UAAU,OAAO,4BAA4B;KAC5D,OAAO;MAAE;MAAQ;MAAM;MAAK;KAAM,CAAC;IACrC,CAAC;GACH;EACF,CAAC;EACD,IAAI,OAAO,SAAS,SAAS,QAAQ,OAAO,OAAO;EAEnD,aAAa;GACX,OAAO,qBAAqB,iBAAiB,OAAO;GACpD,SAAS,WAAW;GACpB,OAAO,OAAO;EAChB;CACF,GAAG,CAAC,QAAQ,sBAAsB,CAAC;CAEnC,OACE,oBAAC,OAAD;EACa;EACX,KAAK,UAA0B,CAAC,KAAK,MAAM,CAAC;EAC5C,OAAO;GAAE,GAAG;GAAyB,GAAG;EAAiB;EACzD,GAAI;EAEH,UAAA,SAAS;GACR,GAAG;GACH,KAAK,OAAO;GACZ;EACF,CAAC;CACE,CAAA;AAET,CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"Spine.mjs","names":[],"sources":["../../../src/awesome/Spline/Spine.tsx"],"sourcesContent":["'use client';\n\nimport { type SplineEvent, type SplineEventName } from '@splinetool/runtime';\nimport { Application } from '@splinetool/runtime';\nimport { memo, useEffect, useRef, useState } from 'react';\n\nimport ParentSize from './ParentSize';\nimport { type SplineProps } from './type';\n\nconst Spline = memo<SplineProps>(\n ({\n ref,\n scene,\n style,\n onMouseDown,\n onMouseUp,\n onMouseHover,\n onKeyDown,\n onKeyUp,\n onStart,\n onLookAt,\n onFollow,\n onWheel,\n onLoad,\n renderOnDemand = true,\n ...props\n }) => {\n const canvasRef = useRef<HTMLCanvasElement>(null);\n const [isLoading, setIsLoading] = useState(true);\n\n const init = async (\n speApp: Application,\n events: {\n cb?: (e: SplineEvent) => void;\n name: SplineEventName;\n }[],\n ) => {\n await speApp.load(scene);\n\n for (const event of events) {\n if (event.cb) {\n speApp.addEventListener(event.name, event.cb);\n }\n }\n\n setIsLoading(false);\n onLoad?.(speApp);\n };\n\n // Initialize runtime when component is mounted\n useEffect(() => {\n setIsLoading(true);\n\n let speApp: Application;\n const events: {\n cb?: (e: SplineEvent) => void;\n name: SplineEventName;\n }[] = [\n {\n cb: onMouseDown,\n name: 'mouseDown',\n },\n {\n cb: onMouseUp,\n name: 'mouseUp',\n },\n {\n cb: onMouseHover,\n name: 'mouseHover',\n },\n {\n cb: onKeyDown,\n name: 'keyDown',\n },\n {\n cb: onKeyUp,\n name: 'keyUp',\n },\n {\n cb: onStart,\n name: 'start',\n },\n {\n cb: onLookAt,\n name: 'lookAt',\n },\n {\n cb: onFollow,\n name: 'follow',\n },\n {\n cb: onWheel,\n name: 'scroll',\n },\n ];\n\n if (canvasRef.current) {\n speApp = new Application(canvasRef.current, { renderOnDemand });\n init(speApp, events);\n }\n\n return () => {\n for (const event of events) {\n if (event.cb) {\n speApp.removeEventListener(event.name, event.cb);\n }\n }\n speApp.dispose();\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [scene]);\n\n return (\n <ParentSize debounceTime={50} parentSizeStyles={style} ref={ref} {...props}>\n {() => {\n return (\n <canvas\n ref={canvasRef}\n style={{\n display: isLoading ? 'none' : 'block',\n }}\n />\n );\n }}\n </ParentSize>\n );\n },\n);\n\nSpline.displayName = 'Spline';\n\nexport default Spline;\n\nexport { type SPEObject, type SplineEvent, type SplineEventName } from '@splinetool/runtime';\n"],"mappings":";;;;;;AASA,MAAM,SAAS,MACZ,EACC,KACA,OACA,OACA,aACA,WACA,cACA,WACA,SACA,SACA,UACA,UACA,SACA,QACA,iBAAiB,MACjB,GAAG,YACC;CACJ,MAAM,YAAY,OAA0B,IAAI;CAChD,MAAM,CAAC,WAAW,gBAAgB,SAAS,IAAI;CAE/C,MAAM,OAAO,OACX,QACA,WAIG;EACH,MAAM,OAAO,KAAK,KAAK;EAEvB,KAAK,MAAM,SAAS,QAClB,IAAI,MAAM,IACR,OAAO,iBAAiB,MAAM,MAAM,MAAM,EAAE;EAIhD,aAAa,KAAK;EAClB,SAAS,MAAM;CACjB;CAGA,gBAAgB;EACd,aAAa,IAAI;EAEjB,IAAI;EACJ,MAAM,SAGA;GACJ;IACE,IAAI;IACJ,MAAM;GACR;GACA;IACE,IAAI;IACJ,MAAM;GACR;GACA;IACE,IAAI;IACJ,MAAM;GACR;GACA;IACE,IAAI;IACJ,MAAM;GACR;GACA;IACE,IAAI;IACJ,MAAM;GACR;GACA;IACE,IAAI;IACJ,MAAM;GACR;GACA;IACE,IAAI;IACJ,MAAM;GACR;GACA;IACE,IAAI;IACJ,MAAM;GACR;GACA;IACE,IAAI;IACJ,MAAM;GACR;EACF;EAEA,IAAI,UAAU,SAAS;GACrB,SAAS,IAAI,YAAY,UAAU,SAAS,EAAE,eAAe,CAAC;GAC9D,KAAK,QAAQ,MAAM;EACrB;EAEA,aAAa;GACX,KAAK,MAAM,SAAS,QAClB,IAAI,MAAM,IACR,OAAO,oBAAoB,MAAM,MAAM,MAAM,EAAE;GAGnD,OAAO,QAAQ;EACjB;CAEF,GAAG,CAAC,KAAK,CAAC;CAEV,OACE,oBAAC,YAAD;EAAY,cAAc;EAAI,kBAAkB;EAAY;EAAK,GAAI;kBAC5D;GACL,OACE,oBAAC,UAAD;IACE,KAAK;IACL,OAAO,EACL,SAAS,YAAY,SAAS,QAChC;GACD,CAAA;EAEL;CACU,CAAA;AAEhB,CACF;AAEA,OAAO,cAAc"}
1
+ {"version":3,"file":"Spine.mjs","names":[],"sources":["../../../src/awesome/Spline/Spine.tsx"],"sourcesContent":["'use client';\n\nimport { type SplineEvent, type SplineEventName } from '@splinetool/runtime';\nimport { Application } from '@splinetool/runtime';\nimport { memo, useEffect, useRef, useState } from 'react';\n\nimport ParentSize from './ParentSize';\nimport { type SplineProps } from './type';\n\nconst Spline = memo<SplineProps>(\n ({\n ref,\n scene,\n style,\n onMouseDown,\n onMouseUp,\n onMouseHover,\n onKeyDown,\n onKeyUp,\n onStart,\n onLookAt,\n onFollow,\n onWheel,\n onLoad,\n renderOnDemand = true,\n ...props\n }) => {\n const canvasRef = useRef<HTMLCanvasElement>(null);\n const [isLoading, setIsLoading] = useState(true);\n\n const init = async (\n speApp: Application,\n events: {\n cb?: (e: SplineEvent) => void;\n name: SplineEventName;\n }[],\n ) => {\n await speApp.load(scene);\n\n for (const event of events) {\n if (event.cb) {\n speApp.addEventListener(event.name, event.cb);\n }\n }\n\n setIsLoading(false);\n onLoad?.(speApp);\n };\n\n // Initialize runtime when component is mounted\n useEffect(() => {\n setIsLoading(true);\n\n let speApp: Application;\n const events: {\n cb?: (e: SplineEvent) => void;\n name: SplineEventName;\n }[] = [\n {\n cb: onMouseDown,\n name: 'mouseDown',\n },\n {\n cb: onMouseUp,\n name: 'mouseUp',\n },\n {\n cb: onMouseHover,\n name: 'mouseHover',\n },\n {\n cb: onKeyDown,\n name: 'keyDown',\n },\n {\n cb: onKeyUp,\n name: 'keyUp',\n },\n {\n cb: onStart,\n name: 'start',\n },\n {\n cb: onLookAt,\n name: 'lookAt',\n },\n {\n cb: onFollow,\n name: 'follow',\n },\n {\n cb: onWheel,\n name: 'scroll',\n },\n ];\n\n if (canvasRef.current) {\n speApp = new Application(canvasRef.current, { renderOnDemand });\n init(speApp, events);\n }\n\n return () => {\n for (const event of events) {\n if (event.cb) {\n speApp.removeEventListener(event.name, event.cb);\n }\n }\n speApp.dispose();\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [scene]);\n\n return (\n <ParentSize debounceTime={50} parentSizeStyles={style} ref={ref} {...props}>\n {() => {\n return (\n <canvas\n ref={canvasRef}\n style={{\n display: isLoading ? 'none' : 'block',\n }}\n />\n );\n }}\n </ParentSize>\n );\n },\n);\n\nSpline.displayName = 'Spline';\n\nexport default Spline;\n\nexport { type SPEObject, type SplineEvent, type SplineEventName } from '@splinetool/runtime';\n"],"mappings":";;;;;;AASA,MAAM,SAAS,MACZ,EACC,KACA,OACA,OACA,aACA,WACA,cACA,WACA,SACA,SACA,UACA,UACA,SACA,QACA,iBAAiB,MACjB,GAAG,YACC;CACJ,MAAM,YAAY,OAA0B,IAAI;CAChD,MAAM,CAAC,WAAW,gBAAgB,SAAS,IAAI;CAE/C,MAAM,OAAO,OACX,QACA,WAIG;EACH,MAAM,OAAO,KAAK,KAAK;EAEvB,KAAK,MAAM,SAAS,QAClB,IAAI,MAAM,IACR,OAAO,iBAAiB,MAAM,MAAM,MAAM,EAAE;EAIhD,aAAa,KAAK;EAClB,SAAS,MAAM;CACjB;CAGA,gBAAgB;EACd,aAAa,IAAI;EAEjB,IAAI;EACJ,MAAM,SAGA;GACJ;IACE,IAAI;IACJ,MAAM;GACR;GACA;IACE,IAAI;IACJ,MAAM;GACR;GACA;IACE,IAAI;IACJ,MAAM;GACR;GACA;IACE,IAAI;IACJ,MAAM;GACR;GACA;IACE,IAAI;IACJ,MAAM;GACR;GACA;IACE,IAAI;IACJ,MAAM;GACR;GACA;IACE,IAAI;IACJ,MAAM;GACR;GACA;IACE,IAAI;IACJ,MAAM;GACR;GACA;IACE,IAAI;IACJ,MAAM;GACR;EACF;EAEA,IAAI,UAAU,SAAS;GACrB,SAAS,IAAI,YAAY,UAAU,SAAS,EAAE,eAAe,CAAC;GAC9D,KAAK,QAAQ,MAAM;EACrB;EAEA,aAAa;GACX,KAAK,MAAM,SAAS,QAClB,IAAI,MAAM,IACR,OAAO,oBAAoB,MAAM,MAAM,MAAM,EAAE;GAGnD,OAAO,QAAQ;EACjB;CAEF,GAAG,CAAC,KAAK,CAAC;CAEV,OACE,oBAAC,YAAD;EAAY,cAAc;EAAI,kBAAkB;EAAY;EAAK,GAAI;EAC5D,gBAAA;GACL,OACE,oBAAC,UAAD;IACE,KAAK;IACL,OAAO,EACL,SAAS,YAAY,SAAS,QAChC;GACD,CAAA;EAEL;CACU,CAAA;AAEhB,CACF;AAEA,OAAO,cAAc"}
@@ -18,8 +18,9 @@ const Spotlight = memo(({ className, size = 64, ...properties }) => {
18
18
  size,
19
19
  outside
20
20
  ]);
21
+ const spotlightStyle = isDarkMode ? outside ? styles.spotlightDarkOutside : styles.spotlightDark : outside ? styles.spotlightLightOutside : styles.spotlightLight;
21
22
  return /* @__PURE__ */ jsx("div", {
22
- className: cx(isDarkMode ? outside ? styles.spotlightDarkOutside : styles.spotlightDark : outside ? styles.spotlightLightOutside : styles.spotlightLight, className),
23
+ className: cx(spotlightStyle, className),
23
24
  ref: reference,
24
25
  style: cssVariables,
25
26
  ...properties
@@ -1 +1 @@
1
- {"version":3,"file":"Spotlight.mjs","names":[],"sources":["../../../src/awesome/Spotlight/Spotlight.tsx"],"sourcesContent":["'use client';\n\nimport { cx, useThemeMode } from 'antd-style';\nimport { memo, useMemo } from 'react';\n\nimport { styles } from './style';\nimport type { SpotlightProps } from './type';\nimport { useMouseOffset } from './useMouseOffset';\n\nconst Spotlight = memo<SpotlightProps>(({ className, size = 64, ...properties }) => {\n const [offset, outside, reference] = useMouseOffset();\n const { isDarkMode } = useThemeMode();\n\n const cssVariables = useMemo<Record<string, string>>(\n () => ({\n '--spotlight-opacity': outside ? '0' : '0.1',\n '--spotlight-size': `${size}px`,\n '--spotlight-x': `${offset?.x ?? 0}px`,\n '--spotlight-y': `${offset?.y ?? 0}px`,\n }),\n [offset, size, outside],\n );\n\n const spotlightStyle = isDarkMode\n ? outside\n ? styles.spotlightDarkOutside\n : styles.spotlightDark\n : outside\n ? styles.spotlightLightOutside\n : styles.spotlightLight;\n\n return (\n <div\n className={cx(spotlightStyle, className)}\n ref={reference}\n style={cssVariables}\n {...properties}\n />\n );\n});\n\nSpotlight.displayName = 'Spotlight';\n\nexport default Spotlight;\n"],"mappings":";;;;;;;AASA,MAAM,YAAY,MAAsB,EAAE,WAAW,OAAO,IAAI,GAAG,iBAAiB;CAClF,MAAM,CAAC,QAAQ,SAAS,aAAa,eAAe;CACpD,MAAM,EAAE,eAAe,aAAa;CAEpC,MAAM,eAAe,eACZ;EACL,uBAAuB,UAAU,MAAM;EACvC,oBAAoB,GAAG,KAAK;EAC5B,iBAAiB,GAAG,QAAQ,KAAK,EAAE;EACnC,iBAAiB,GAAG,QAAQ,KAAK,EAAE;CACrC,IACA;EAAC;EAAQ;EAAM;CAAO,CACxB;CAUA,OACE,oBAAC,OAAD;EACE,WAAW,GAVQ,aACnB,UACE,OAAO,uBACP,OAAO,gBACT,UACE,OAAO,wBACP,OAAO,gBAIqB,SAAS;EACvC,KAAK;EACL,OAAO;EACP,GAAI;CACL,CAAA;AAEL,CAAC;AAED,UAAU,cAAc"}
1
+ {"version":3,"file":"Spotlight.mjs","names":[],"sources":["../../../src/awesome/Spotlight/Spotlight.tsx"],"sourcesContent":["'use client';\n\nimport { cx, useThemeMode } from 'antd-style';\nimport { memo, useMemo } from 'react';\n\nimport { styles } from './style';\nimport type { SpotlightProps } from './type';\nimport { useMouseOffset } from './useMouseOffset';\n\nconst Spotlight = memo<SpotlightProps>(({ className, size = 64, ...properties }) => {\n const [offset, outside, reference] = useMouseOffset();\n const { isDarkMode } = useThemeMode();\n\n const cssVariables = useMemo<Record<string, string>>(\n () => ({\n '--spotlight-opacity': outside ? '0' : '0.1',\n '--spotlight-size': `${size}px`,\n '--spotlight-x': `${offset?.x ?? 0}px`,\n '--spotlight-y': `${offset?.y ?? 0}px`,\n }),\n [offset, size, outside],\n );\n\n const spotlightStyle = isDarkMode\n ? outside\n ? styles.spotlightDarkOutside\n : styles.spotlightDark\n : outside\n ? styles.spotlightLightOutside\n : styles.spotlightLight;\n\n return (\n <div\n className={cx(spotlightStyle, className)}\n ref={reference}\n style={cssVariables}\n {...properties}\n />\n );\n});\n\nSpotlight.displayName = 'Spotlight';\n\nexport default Spotlight;\n"],"mappings":";;;;;;;AASA,MAAM,YAAY,MAAsB,EAAE,WAAW,OAAO,IAAI,GAAG,iBAAiB;CAClF,MAAM,CAAC,QAAQ,SAAS,aAAa,eAAe;CACpD,MAAM,EAAE,eAAe,aAAa;CAEpC,MAAM,eAAe,eACZ;EACL,uBAAuB,UAAU,MAAM;EACvC,oBAAoB,GAAG,KAAK;EAC5B,iBAAiB,GAAG,QAAQ,KAAK,EAAE;EACnC,iBAAiB,GAAG,QAAQ,KAAK,EAAE;CACrC,IACA;EAAC;EAAQ;EAAM;CAAO,CACxB;CAEA,MAAM,iBAAiB,aACnB,UACE,OAAO,uBACP,OAAO,gBACT,UACE,OAAO,wBACP,OAAO;CAEb,OACE,oBAAC,OAAD;EACE,WAAW,GAAG,gBAAgB,SAAS;EACvC,KAAK;EACL,OAAO;EACP,GAAI;CACL,CAAA;AAEL,CAAC;AAED,UAAU,cAAc"}
@@ -1 +1 @@
1
- {"version":3,"file":"SpotlightCard.mjs","names":[],"sources":["../../../src/awesome/SpotlightCard/SpotlightCard.tsx"],"sourcesContent":["'use client';\n\nimport { cx } from 'antd-style';\nimport { memo, useEffect, useMemo, useRef } from 'react';\n\nimport Grid from '@/Grid';\n\nimport SpotlightCardItem from './SpotlightCardItem';\nimport { CHILDREN_CLASSNAME, styles } from './style';\nimport type { SpotlightCardProps } from './type';\n\nconst SpotlightCard = memo<SpotlightCardProps>(\n ({\n items,\n renderItem: Content,\n maxItemWidth,\n className,\n columns = 3,\n gap = '1em',\n style,\n size = 800,\n borderRadius = 12,\n spotlight = true,\n ...rest\n }) => {\n const cssVariables = useMemo<Record<string, string>>(\n () => ({\n '--spotlight-card-border-radius': `${borderRadius}px`,\n '--spotlight-card-size': `${size}px`,\n }),\n [borderRadius, size],\n );\n const ref = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n if (!ref.current) return;\n if (!spotlight) return;\n const fn = (e: MouseEvent) => {\n for (const card of document.querySelectorAll(`.${CHILDREN_CLASSNAME}`)) {\n const rect = card.getBoundingClientRect(),\n x = e.clientX - rect.left,\n y = e.clientY - rect.top;\n\n (card as HTMLDivElement).style.setProperty('--mouse-x', `${x}px`);\n (card as HTMLDivElement).style.setProperty('--mouse-y', `${y}px`);\n }\n };\n ref.current.addEventListener('mousemove', fn);\n\n return () => {\n ref.current?.removeEventListener('mousemove', fn);\n };\n }, []);\n\n return (\n <Grid\n className={cx(styles.container, styles.grid, className)}\n gap={gap}\n maxItemWidth={maxItemWidth}\n ref={ref}\n rows={columns}\n style={{\n ...cssVariables,\n ...style,\n }}\n {...rest}\n >\n {items.map((item, index) => {\n return (\n <SpotlightCardItem\n borderRadius={borderRadius}\n className={CHILDREN_CLASSNAME}\n key={index}\n size={size}\n >\n <Content {...item} />\n </SpotlightCardItem>\n );\n })}\n </Grid>\n );\n },\n);\n\nSpotlightCard.displayName = 'SpotlightCard';\n\nexport default SpotlightCard;\n"],"mappings":";;;;;;;;AAWA,MAAM,gBAAgB,MACnB,EACC,OACA,YAAY,SACZ,cACA,WACA,UAAU,GACV,MAAM,OACN,OACA,OAAO,KACP,eAAe,IACf,YAAY,MACZ,GAAG,WACC;CACJ,MAAM,eAAe,eACZ;EACL,kCAAkC,GAAG,aAAa;EAClD,yBAAyB,GAAG,KAAK;CACnC,IACA,CAAC,cAAc,IAAI,CACrB;CACA,MAAM,MAAM,OAAuB,IAAI;CAEvC,gBAAgB;EACd,IAAI,CAAC,IAAI,SAAS;EAClB,IAAI,CAAC,WAAW;EAChB,MAAM,MAAM,MAAkB;GAC5B,KAAK,MAAM,QAAQ,SAAS,iBAAiB,IAAI,oBAAoB,GAAG;IACtE,MAAM,OAAO,KAAK,sBAAsB,GACtC,IAAI,EAAE,UAAU,KAAK,MACrB,IAAI,EAAE,UAAU,KAAK;IAEvB,KAAyB,MAAM,YAAY,aAAa,GAAG,EAAE,GAAG;IAChE,KAAyB,MAAM,YAAY,aAAa,GAAG,EAAE,GAAG;GAClE;EACF;EACA,IAAI,QAAQ,iBAAiB,aAAa,EAAE;EAE5C,aAAa;GACX,IAAI,SAAS,oBAAoB,aAAa,EAAE;EAClD;CACF,GAAG,CAAC,CAAC;CAEL,OACE,oBAAC,MAAD;EACE,WAAW,GAAG,OAAO,WAAW,OAAO,MAAM,SAAS;EACjD;EACS;EACT;EACL,MAAM;EACN,OAAO;GACL,GAAG;GACH,GAAG;EACL;EACA,GAAI;YAEH,MAAM,KAAK,MAAM,UAAU;GAC1B,OACE,oBAAC,mBAAD;IACgB;IACd,WAAW;IAEL;cAEN,oBAAC,SAAD,EAAS,GAAI,KAAO,CAAA;GACH,GAJZ,KAIY;EAEvB,CAAC;CACG,CAAA;AAEV,CACF;AAEA,cAAc,cAAc"}
1
+ {"version":3,"file":"SpotlightCard.mjs","names":[],"sources":["../../../src/awesome/SpotlightCard/SpotlightCard.tsx"],"sourcesContent":["'use client';\n\nimport { cx } from 'antd-style';\nimport { memo, useEffect, useMemo, useRef } from 'react';\n\nimport Grid from '@/Grid';\n\nimport SpotlightCardItem from './SpotlightCardItem';\nimport { CHILDREN_CLASSNAME, styles } from './style';\nimport type { SpotlightCardProps } from './type';\n\nconst SpotlightCard = memo<SpotlightCardProps>(\n ({\n items,\n renderItem: Content,\n maxItemWidth,\n className,\n columns = 3,\n gap = '1em',\n style,\n size = 800,\n borderRadius = 12,\n spotlight = true,\n ...rest\n }) => {\n const cssVariables = useMemo<Record<string, string>>(\n () => ({\n '--spotlight-card-border-radius': `${borderRadius}px`,\n '--spotlight-card-size': `${size}px`,\n }),\n [borderRadius, size],\n );\n const ref = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n if (!ref.current) return;\n if (!spotlight) return;\n const fn = (e: MouseEvent) => {\n for (const card of document.querySelectorAll(`.${CHILDREN_CLASSNAME}`)) {\n const rect = card.getBoundingClientRect(),\n x = e.clientX - rect.left,\n y = e.clientY - rect.top;\n\n (card as HTMLDivElement).style.setProperty('--mouse-x', `${x}px`);\n (card as HTMLDivElement).style.setProperty('--mouse-y', `${y}px`);\n }\n };\n ref.current.addEventListener('mousemove', fn);\n\n return () => {\n ref.current?.removeEventListener('mousemove', fn);\n };\n }, []);\n\n return (\n <Grid\n className={cx(styles.container, styles.grid, className)}\n gap={gap}\n maxItemWidth={maxItemWidth}\n ref={ref}\n rows={columns}\n style={{\n ...cssVariables,\n ...style,\n }}\n {...rest}\n >\n {items.map((item, index) => {\n return (\n <SpotlightCardItem\n borderRadius={borderRadius}\n className={CHILDREN_CLASSNAME}\n key={index}\n size={size}\n >\n <Content {...item} />\n </SpotlightCardItem>\n );\n })}\n </Grid>\n );\n },\n);\n\nSpotlightCard.displayName = 'SpotlightCard';\n\nexport default SpotlightCard;\n"],"mappings":";;;;;;;;AAWA,MAAM,gBAAgB,MACnB,EACC,OACA,YAAY,SACZ,cACA,WACA,UAAU,GACV,MAAM,OACN,OACA,OAAO,KACP,eAAe,IACf,YAAY,MACZ,GAAG,WACC;CACJ,MAAM,eAAe,eACZ;EACL,kCAAkC,GAAG,aAAa;EAClD,yBAAyB,GAAG,KAAK;CACnC,IACA,CAAC,cAAc,IAAI,CACrB;CACA,MAAM,MAAM,OAAuB,IAAI;CAEvC,gBAAgB;EACd,IAAI,CAAC,IAAI,SAAS;EAClB,IAAI,CAAC,WAAW;EAChB,MAAM,MAAM,MAAkB;GAC5B,KAAK,MAAM,QAAQ,SAAS,iBAAiB,IAAI,oBAAoB,GAAG;IACtE,MAAM,OAAO,KAAK,sBAAsB,GACtC,IAAI,EAAE,UAAU,KAAK,MACrB,IAAI,EAAE,UAAU,KAAK;IAEvB,KAAyB,MAAM,YAAY,aAAa,GAAG,EAAE,GAAG;IAChE,KAAyB,MAAM,YAAY,aAAa,GAAG,EAAE,GAAG;GAClE;EACF;EACA,IAAI,QAAQ,iBAAiB,aAAa,EAAE;EAE5C,aAAa;GACX,IAAI,SAAS,oBAAoB,aAAa,EAAE;EAClD;CACF,GAAG,CAAC,CAAC;CAEL,OACE,oBAAC,MAAD;EACE,WAAW,GAAG,OAAO,WAAW,OAAO,MAAM,SAAS;EACjD;EACS;EACT;EACL,MAAM;EACN,OAAO;GACL,GAAG;GACH,GAAG;EACL;EACA,GAAI;EAEH,UAAA,MAAM,KAAK,MAAM,UAAU;GAC1B,OACE,oBAAC,mBAAD;IACgB;IACd,WAAW;IAEL;IAEN,UAAA,oBAAC,SAAD,EAAS,GAAI,KAAO,CAAA;GACH,GAJZ,KAIY;EAEvB,CAAC;CACG,CAAA;AAEV,CACF;AAEA,cAAc,cAAc"}
@@ -1 +1 @@
1
- {"version":3,"file":"SpotlightCardItem.mjs","names":["Flexbox"],"sources":["../../../src/awesome/SpotlightCard/SpotlightCardItem.tsx"],"sourcesContent":["'use client';\n\nimport { cx, useThemeMode } from 'antd-style';\nimport { memo, useMemo } from 'react';\n\nimport { Flexbox } from '@/Flex';\n\nimport { styles } from './style';\nimport type { SpotlightCardItemProps } from './type';\n\nconst SpotlightCardItem = memo<SpotlightCardItemProps>(\n ({ children, className, style, borderRadius, size, ...rest }) => {\n const { isDarkMode } = useThemeMode();\n\n const cssVariables = useMemo<Record<string, string>>(\n () => ({\n '--spotlight-card-border-radius': `${borderRadius}px`,\n '--spotlight-card-size': `${size}px`,\n }),\n [borderRadius, size],\n );\n\n return (\n <Flexbox\n className={cx(isDarkMode ? styles.itemContainerDark : styles.itemContainerLight, className)}\n style={{\n ...cssVariables,\n borderRadius,\n ...style,\n }}\n {...rest}\n >\n <Flexbox className={styles.content}>{children}</Flexbox>\n </Flexbox>\n );\n },\n);\n\nSpotlightCardItem.displayName = 'SpotlightCardItem';\n\nexport default SpotlightCardItem;\n"],"mappings":";;;;;;;AAUA,MAAM,oBAAoB,MACvB,EAAE,UAAU,WAAW,OAAO,cAAc,MAAM,GAAG,WAAW;CAC/D,MAAM,EAAE,eAAe,aAAa;CAEpC,MAAM,eAAe,eACZ;EACL,kCAAkC,GAAG,aAAa;EAClD,yBAAyB,GAAG,KAAK;CACnC,IACA,CAAC,cAAc,IAAI,CACrB;CAEA,OACE,oBAACA,mBAAD;EACE,WAAW,GAAG,aAAa,OAAO,oBAAoB,OAAO,oBAAoB,SAAS;EAC1F,OAAO;GACL,GAAG;GACH;GACA,GAAG;EACL;EACA,GAAI;YAEJ,oBAACA,mBAAD;GAAS,WAAW,OAAO;GAAU;EAAkB,CAAA;CAChD,CAAA;AAEb,CACF;AAEA,kBAAkB,cAAc"}
1
+ {"version":3,"file":"SpotlightCardItem.mjs","names":["Flexbox"],"sources":["../../../src/awesome/SpotlightCard/SpotlightCardItem.tsx"],"sourcesContent":["'use client';\n\nimport { cx, useThemeMode } from 'antd-style';\nimport { memo, useMemo } from 'react';\n\nimport { Flexbox } from '@/Flex';\n\nimport { styles } from './style';\nimport type { SpotlightCardItemProps } from './type';\n\nconst SpotlightCardItem = memo<SpotlightCardItemProps>(\n ({ children, className, style, borderRadius, size, ...rest }) => {\n const { isDarkMode } = useThemeMode();\n\n const cssVariables = useMemo<Record<string, string>>(\n () => ({\n '--spotlight-card-border-radius': `${borderRadius}px`,\n '--spotlight-card-size': `${size}px`,\n }),\n [borderRadius, size],\n );\n\n return (\n <Flexbox\n className={cx(isDarkMode ? styles.itemContainerDark : styles.itemContainerLight, className)}\n style={{\n ...cssVariables,\n borderRadius,\n ...style,\n }}\n {...rest}\n >\n <Flexbox className={styles.content}>{children}</Flexbox>\n </Flexbox>\n );\n },\n);\n\nSpotlightCardItem.displayName = 'SpotlightCardItem';\n\nexport default SpotlightCardItem;\n"],"mappings":";;;;;;;AAUA,MAAM,oBAAoB,MACvB,EAAE,UAAU,WAAW,OAAO,cAAc,MAAM,GAAG,WAAW;CAC/D,MAAM,EAAE,eAAe,aAAa;CAEpC,MAAM,eAAe,eACZ;EACL,kCAAkC,GAAG,aAAa;EAClD,yBAAyB,GAAG,KAAK;CACnC,IACA,CAAC,cAAc,IAAI,CACrB;CAEA,OACE,oBAACA,mBAAD;EACE,WAAW,GAAG,aAAa,OAAO,oBAAoB,OAAO,oBAAoB,SAAS;EAC1F,OAAO;GACL,GAAG;GACH;GACA,GAAG;EACL;EACA,GAAI;EAEJ,UAAA,oBAACA,mBAAD;GAAS,WAAW,OAAO;GAAU;EAAkB,CAAA;CAChD,CAAA;AAEb,CACF;AAEA,kBAAkB,cAAc"}