@windrun-huaiin/base-ui 3.1.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 (123) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +190 -0
  3. package/dist/base-ui.css +3 -0
  4. package/dist/components/index.d.mts +144 -0
  5. package/dist/components/index.d.ts +144 -0
  6. package/dist/components/index.js +1699 -0
  7. package/dist/components/index.js.map +1 -0
  8. package/dist/components/index.mjs +1741 -0
  9. package/dist/components/index.mjs.map +1 -0
  10. package/dist/index.d.mts +47 -0
  11. package/dist/index.d.ts +47 -0
  12. package/dist/index.js +6055 -0
  13. package/dist/index.js.map +1 -0
  14. package/dist/index.mjs +5842 -0
  15. package/dist/index.mjs.map +1 -0
  16. package/dist/lib/index.d.mts +24 -0
  17. package/dist/lib/index.d.ts +24 -0
  18. package/dist/lib/index.js +1324 -0
  19. package/dist/lib/index.js.map +1 -0
  20. package/dist/lib/index.mjs +1372 -0
  21. package/dist/lib/index.mjs.map +1 -0
  22. package/dist/ui/index.d.mts +754 -0
  23. package/dist/ui/index.d.ts +754 -0
  24. package/dist/ui/index.js +5796 -0
  25. package/dist/ui/index.js.map +1 -0
  26. package/dist/ui/index.mjs +5593 -0
  27. package/dist/ui/index.mjs.map +1 -0
  28. package/package.json +120 -0
  29. package/src/assets/bitcoin.tsx +23 -0
  30. package/src/assets/clerk.tsx +23 -0
  31. package/src/assets/css.tsx +21 -0
  32. package/src/assets/csv.tsx +35 -0
  33. package/src/assets/d8.tsx +25 -0
  34. package/src/assets/diff.tsx +23 -0
  35. package/src/assets/dpa.tsx +22 -0
  36. package/src/assets/github.tsx +23 -0
  37. package/src/assets/html.tsx +22 -0
  38. package/src/assets/http.tsx +23 -0
  39. package/src/assets/index.ts +61 -0
  40. package/src/assets/iterm.tsx +23 -0
  41. package/src/assets/java.tsx +23 -0
  42. package/src/assets/json.tsx +23 -0
  43. package/src/assets/last-updated.tsx +23 -0
  44. package/src/assets/log.tsx +28 -0
  45. package/src/assets/mac.tsx +23 -0
  46. package/src/assets/markdown.tsx +24 -0
  47. package/src/assets/mdx.tsx +98 -0
  48. package/src/assets/mermaid.tsx +24 -0
  49. package/src/assets/scheme.tsx +22 -0
  50. package/src/assets/snippets.tsx +23 -0
  51. package/src/assets/sql.tsx +31 -0
  52. package/src/assets/subp.tsx +22 -0
  53. package/src/assets/t3p.tsx +23 -0
  54. package/src/assets/test.tsx +23 -0
  55. package/src/assets/txt.tsx +23 -0
  56. package/src/assets/xml.tsx +23 -0
  57. package/src/assets/yaml.tsx +23 -0
  58. package/src/components/404-page.tsx +106 -0
  59. package/src/components/global-icon.tsx +193 -0
  60. package/src/components/go-to-top.tsx +43 -0
  61. package/src/components/index.ts +10 -0
  62. package/src/components/language-detector.tsx +175 -0
  63. package/src/components/language-switcher.tsx +77 -0
  64. package/src/components/script/google-analytics-script.tsx +56 -0
  65. package/src/components/script/microsoft-clarity-script.tsx +24 -0
  66. package/src/index.ts +4 -0
  67. package/src/lib/icon-context.tsx +57 -0
  68. package/src/lib/index.ts +3 -0
  69. package/src/lib/site-icon.tsx +46 -0
  70. package/src/lib/theme-util.ts +7 -0
  71. package/src/styles/base-ui.css +2 -0
  72. package/src/ui/accordion.tsx +58 -0
  73. package/src/ui/alert-dialog.tsx +141 -0
  74. package/src/ui/alert.tsx +59 -0
  75. package/src/ui/aspect-ratio.tsx +7 -0
  76. package/src/ui/avatar.tsx +50 -0
  77. package/src/ui/badge.tsx +36 -0
  78. package/src/ui/breadcrumb.tsx +115 -0
  79. package/src/ui/button.tsx +76 -0
  80. package/src/ui/calendar.tsx +66 -0
  81. package/src/ui/card.tsx +79 -0
  82. package/src/ui/carousel.tsx +262 -0
  83. package/src/ui/chart.tsx +365 -0
  84. package/src/ui/checkbox.tsx +30 -0
  85. package/src/ui/collapsible.tsx +11 -0
  86. package/src/ui/command.tsx +153 -0
  87. package/src/ui/context-menu.tsx +200 -0
  88. package/src/ui/dialog.tsx +122 -0
  89. package/src/ui/drawer.tsx +118 -0
  90. package/src/ui/dropdown-menu.tsx +200 -0
  91. package/src/ui/form.tsx +178 -0
  92. package/src/ui/hover-card.tsx +29 -0
  93. package/src/ui/index.ts +52 -0
  94. package/src/ui/input-otp.tsx +71 -0
  95. package/src/ui/input.tsx +22 -0
  96. package/src/ui/label.tsx +26 -0
  97. package/src/ui/language-button.tsx +43 -0
  98. package/src/ui/menubar.tsx +236 -0
  99. package/src/ui/navigation-menu.tsx +128 -0
  100. package/src/ui/pagination.tsx +117 -0
  101. package/src/ui/popover.tsx +31 -0
  102. package/src/ui/progress.tsx +28 -0
  103. package/src/ui/radio-group.tsx +44 -0
  104. package/src/ui/resizable.tsx +45 -0
  105. package/src/ui/scroll-area.tsx +48 -0
  106. package/src/ui/select.tsx +160 -0
  107. package/src/ui/separator.tsx +31 -0
  108. package/src/ui/sheet.tsx +140 -0
  109. package/src/ui/sidebar.tsx +763 -0
  110. package/src/ui/skeleton.tsx +15 -0
  111. package/src/ui/slider.tsx +28 -0
  112. package/src/ui/sonner.tsx +31 -0
  113. package/src/ui/switch.tsx +29 -0
  114. package/src/ui/table.tsx +117 -0
  115. package/src/ui/tabs.tsx +55 -0
  116. package/src/ui/textarea.tsx +22 -0
  117. package/src/ui/toast.tsx +129 -0
  118. package/src/ui/toaster.tsx +35 -0
  119. package/src/ui/toggle-group.tsx +61 -0
  120. package/src/ui/toggle.tsx +45 -0
  121. package/src/ui/tooltip.tsx +30 -0
  122. package/src/ui/use-mobile.tsx +19 -0
  123. package/src/ui/use-toast.ts +194 -0
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 D8ger
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,190 @@
1
+ # Base UI Components
2
+
3
+ A comprehensive set of UI components built with React, TypeScript, and Tailwind CSS.
4
+
5
+ ## 🚀 Features
6
+
7
+ - **Built-in Icon System**: 28 commonly used icons are built-in as React components
8
+ - **TypeScript Support**: Full type safety and IntelliSense
9
+ - **Tailwind CSS**: Utility-first CSS framework integration
10
+ - **Radix UI**: Accessible and unstyled UI primitives
11
+ - **Tree Shaking**: Only import what you need
12
+
13
+ ## 📦 Installation
14
+
15
+ ```bash
16
+ pnpm add @windrun-huaiin/base-ui
17
+ ```
18
+
19
+ ## TailwindCSS 4.x Config
20
+
21
+ - Assume you have a project structure like this:
22
+
23
+ ```txt
24
+ Your-project/
25
+ ├── src/
26
+ │ └── app/
27
+ │ └── globals.css
28
+ ├── node_modules/
29
+ │ ├── @windrun-huaiin/
30
+ │ │ ├── third-ui/
31
+ │ │ │ └── src/ # This is third-ui src
32
+ │ │ └── base-ui/
33
+ │ │ └── src/ # This is base-ui src
34
+ └── package.json
35
+ ```
36
+
37
+ - Then, in your `globals.css` file, you have to configure Tailwind CSS 4.x like this:
38
+
39
+ ```css
40
+ @import 'tailwindcss';
41
+
42
+ @source "../node_modules/@windrun-huaiin/third-ui/src/**/*.{js,ts,jsx,tsx}";
43
+ @source "../node_modules/@windrun-huaiin/base-ui/src/**/*.{js,ts,jsx,tsx}";
44
+ @source "./src/**/*.{js,ts,jsx,tsx}";
45
+
46
+ /* Import styles */
47
+ @import '@windrun-huaiin/third-ui/styles/base-ui.css';
48
+ ```
49
+
50
+ ## 🎨 Built-in Icons
51
+
52
+ This package includes 28 built-in icons as React components. All icons are accessible through the `globalLucideIcons` object.
53
+
54
+ ### Available Icons
55
+
56
+ **Development Tools:**
57
+ - GitHub, D8, Clerk, Iterm
58
+
59
+ **File Types:**
60
+ - Markdown, MDX, Html, Json, XML, Yaml, CSV, Txt, Java, SQL, Log
61
+
62
+ **Technologies:**
63
+ - MAC, BTC, CSS, Mermaid
64
+
65
+ **Documentation:**
66
+ - LastUpdated, Snippets, Test, Diff
67
+
68
+ **Business/Legal:**
69
+ - DPA, SubP, T3P
70
+
71
+ **Network:**
72
+ - Http, Scheme
73
+
74
+ ## Usage
75
+
76
+ ### 1. Direct Icon Usage
77
+ ```tsx
78
+ import { globalLucideIcons } from '@windrun-huaiin/base-ui';
79
+
80
+ // Use any built-in icon
81
+ <globalLucideIcons.GitHub className="h-6 w-6" />
82
+ <globalLucideIcons.BTC className="h-4 w-4" />
83
+ <globalLucideIcons.Mmd className="h-4 w-4" /> // Auto 16x16 size for Mermaid
84
+ ```
85
+
86
+ ### 2. Dynamic Icon Loading
87
+ ```tsx
88
+ import { getGlobalIcon } from '@windrun-huaiin/base-ui';
89
+
90
+ // Get icon component
91
+ const GitHubIcon = getGlobalIcon('GitHub');
92
+ <GitHubIcon className="h-6 w-6" />
93
+
94
+ // Get icon element (for fumadocs)
95
+ const iconElement = getGlobalIcon('GitHub', true);
96
+ ```
97
+
98
+ ### 3. Utility Components
99
+ ```tsx
100
+ import { SiteIcon, NotFoundIcon } from '@windrun-huaiin/base-ui';
101
+
102
+ // Pre-configured site icon
103
+ <SiteIcon />
104
+
105
+ // Pre-configured 404 icon
106
+ <NotFoundIcon />
107
+ ```
108
+
109
+ ## Benefits
110
+
111
+ - ✅ **Zero Configuration**: No need to copy SVG files to your project
112
+ - ✅ **Self-contained**: All icons are bundled as React components
113
+ - ✅ **Consistent Styling**: Global icon color configuration
114
+ - ✅ **Type Safety**: Full TypeScript support with auto-completion
115
+ - ✅ **Performance**: No network requests for icon files
116
+ - ✅ **Special Sizing**: Mermaid icon has optimized 16x16 default size
117
+
118
+ ## Environment Variables
119
+
120
+ ```bash
121
+ # Optional: Set global icon color (defaults to text-purple-500)
122
+ NEXT_PUBLIC_STYLE_ICON_COLOR=text-blue-600
123
+ ```
124
+
125
+ ## License
126
+
127
+ MIT
128
+
129
+ ## Included Components
130
+
131
+ ### UI Components (ui/)
132
+ - Radix UI base components
133
+ - Unified styles and themes
134
+ - Full TypeScript support
135
+
136
+ ### Base Components (components/)
137
+ - 404-page: 404 error page component
138
+ - cta: Call-to-Action component
139
+ - features: Feature showcase component
140
+ - footer: Footer component
141
+ - gallery: Image gallery component
142
+ - global-icon: Global icon management
143
+ - go-to-top: Go to top button
144
+ - LanguageDetector: Language detection component
145
+ - LanguageSwitcher: Language switcher component
146
+ - seo-content: SEO content component
147
+ - tips: Tip component
148
+
149
+ ### Script Components (script/)
150
+ - GoogleAnalyticsScript: Google Analytics script
151
+ - MicrosoftClarityScript: Microsoft Clarity script
152
+
153
+ ## Usage Example
154
+
155
+ ```tsx
156
+ import { Button, NotFoundPage, LanguageSwitcher } from '@windrun-huaiin/base-ui';
157
+
158
+ // Use UI components
159
+ <Button variant="default" size="lg">
160
+ Click me
161
+ </Button>
162
+
163
+ // Use base components
164
+ <NotFoundPage />
165
+
166
+ // Use language switcher component (need to pass in configuration)
167
+ <LanguageSwitcher
168
+ locales={['en', 'zh']}
169
+ localeLabels={{ en: 'English', zh: '中文' }}
170
+ />
171
+ ```
172
+
173
+ ## Dependencies
174
+
175
+ - React 18+
176
+ - Next.js 15+
177
+ - TypeScript
178
+
179
+ ## Development
180
+
181
+ ```bash
182
+ # Build
183
+ pnpm build
184
+
185
+ # Development mode
186
+ pnpm dev
187
+
188
+ # Type check
189
+ pnpm type-check
190
+ ```
@@ -0,0 +1,3 @@
1
+
2
+
3
+ /*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9zdHlsZXMvYmFzZS11aS5jc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEiLCJmaWxlIjoiYmFzZS11aS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJcbiAiXX0= */
@@ -0,0 +1,144 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { LucideProps } from 'lucide-react';
3
+ import React__default from 'react';
4
+
5
+ declare function NotFoundPage(): react_jsx_runtime.JSX.Element;
6
+
7
+ type StyledLucideIconComponent = (props: LucideProps) => React__default.ReactElement;
8
+ type IconComponent = StyledLucideIconComponent | React__default.ComponentType<LucideProps>;
9
+ declare const globalLucideIcons: {
10
+ GitHub: StyledLucideIconComponent;
11
+ D8: StyledLucideIconComponent;
12
+ Clerk: StyledLucideIconComponent;
13
+ Iterm: StyledLucideIconComponent;
14
+ Markdown: StyledLucideIconComponent;
15
+ MDX: StyledLucideIconComponent;
16
+ Html: StyledLucideIconComponent;
17
+ Json: StyledLucideIconComponent;
18
+ XML: StyledLucideIconComponent;
19
+ Yaml: StyledLucideIconComponent;
20
+ CSV: StyledLucideIconComponent;
21
+ Txt: StyledLucideIconComponent;
22
+ Java: StyledLucideIconComponent;
23
+ SQL: StyledLucideIconComponent;
24
+ Log: StyledLucideIconComponent;
25
+ MAC: StyledLucideIconComponent;
26
+ BTC: StyledLucideIconComponent;
27
+ CSS: StyledLucideIconComponent;
28
+ Mmd: StyledLucideIconComponent;
29
+ LastUpdated: StyledLucideIconComponent;
30
+ Snippets: StyledLucideIconComponent;
31
+ Test: StyledLucideIconComponent;
32
+ Diff: StyledLucideIconComponent;
33
+ DPA: StyledLucideIconComponent;
34
+ SubP: StyledLucideIconComponent;
35
+ T3P: StyledLucideIconComponent;
36
+ Http: StyledLucideIconComponent;
37
+ Scheme: StyledLucideIconComponent;
38
+ AlbumIcon: StyledLucideIconComponent;
39
+ AlignHorizontalJustifyEnd: StyledLucideIconComponent;
40
+ ArrowLeft: StyledLucideIconComponent;
41
+ ArrowRight: StyledLucideIconComponent;
42
+ ArrowUp: StyledLucideIconComponent;
43
+ Binary: StyledLucideIconComponent;
44
+ Blocks: StyledLucideIconComponent;
45
+ BookX: StyledLucideIconComponent;
46
+ BringToFront: StyledLucideIconComponent;
47
+ Building2: StyledLucideIconComponent;
48
+ Bug: StyledLucideIconComponent;
49
+ Car: StyledLucideIconComponent;
50
+ Circle: StyledLucideIconComponent;
51
+ CircleAlert: StyledLucideIconComponent;
52
+ CircleSmall: StyledLucideIconComponent;
53
+ Check: StyledLucideIconComponent;
54
+ ChevronDown: StyledLucideIconComponent;
55
+ ChevronLeft: StyledLucideIconComponent;
56
+ ChevronRight: StyledLucideIconComponent;
57
+ ChevronUp: StyledLucideIconComponent;
58
+ Cpu: StyledLucideIconComponent;
59
+ ComponentIcon: StyledLucideIconComponent;
60
+ DatabaseZap: StyledLucideIconComponent;
61
+ Dot: StyledLucideIconComponent;
62
+ Download: StyledLucideIconComponent;
63
+ Eye: StyledLucideIconComponent;
64
+ ExternalLink: StyledLucideIconComponent;
65
+ Facebook: StyledLucideIconComponent;
66
+ FileLock2: StyledLucideIconComponent;
67
+ Fingerprint: StyledLucideIconComponent;
68
+ Gift: StyledLucideIconComponent;
69
+ GitPullRequestArrow: StyledLucideIconComponent;
70
+ Globe: StyledLucideIconComponent;
71
+ GlobeLock: StyledLucideIconComponent;
72
+ GripVertical: StyledLucideIconComponent;
73
+ HandHeart: StyledLucideIconComponent;
74
+ Handshake: StyledLucideIconComponent;
75
+ Highlighter: StyledLucideIconComponent;
76
+ HousePlus: StyledLucideIconComponent;
77
+ Info: StyledLucideIconComponent;
78
+ ImageDown: StyledLucideIconComponent;
79
+ ImageOff: StyledLucideIconComponent;
80
+ ImageUp: StyledLucideIconComponent;
81
+ Keyboard: StyledLucideIconComponent;
82
+ LandPlot: StyledLucideIconComponent;
83
+ Layout: StyledLucideIconComponent;
84
+ LayoutTemplate: StyledLucideIconComponent;
85
+ LibraryIcon: StyledLucideIconComponent;
86
+ Link: StyledLucideIconComponent;
87
+ Loader2: StyledLucideIconComponent;
88
+ LogIn: StyledLucideIconComponent;
89
+ LogOut: StyledLucideIconComponent;
90
+ MoreHorizontal: StyledLucideIconComponent;
91
+ MousePointerClick: StyledLucideIconComponent;
92
+ PanelLeft: StyledLucideIconComponent;
93
+ PanelsTopLeft: StyledLucideIconComponent;
94
+ Pencil: StyledLucideIconComponent;
95
+ Pi: StyledLucideIconComponent;
96
+ Palette: StyledLucideIconComponent;
97
+ ReceiptText: StyledLucideIconComponent;
98
+ Regex: StyledLucideIconComponent;
99
+ Replace: StyledLucideIconComponent;
100
+ Rss: StyledLucideIconComponent;
101
+ Scale: StyledLucideIconComponent;
102
+ Search: StyledLucideIconComponent;
103
+ Share: StyledLucideIconComponent;
104
+ ShieldUser: StyledLucideIconComponent;
105
+ SquareDashedBottomCode: StyledLucideIconComponent;
106
+ SquareTerminal: StyledLucideIconComponent;
107
+ Server: StyledLucideIconComponent;
108
+ SplinePointer: StyledLucideIconComponent;
109
+ Sparkles: StyledLucideIconComponent;
110
+ Star: StyledLucideIconComponent;
111
+ Tablets: StyledLucideIconComponent;
112
+ Terminal: StyledLucideIconComponent;
113
+ Twitter: StyledLucideIconComponent;
114
+ X: StyledLucideIconComponent;
115
+ Zap: StyledLucideIconComponent;
116
+ };
117
+ /**
118
+ * use iconKey to load icon safely
119
+ * @param iconKey translation or configuration
120
+ * @param createElement whether to return a React element instead of component
121
+ */
122
+ declare function getGlobalIcon(iconKey: string | undefined): IconComponent;
123
+ declare function getGlobalIcon(iconKey: string | undefined, createElement: true): React__default.ReactElement | undefined;
124
+ /**
125
+ * Get icon element (for fumadocs source compatibility)
126
+ * This is a wrapper around getGlobalIcon for backwards compatibility
127
+ * @param icon icon key from frontmatter
128
+ */
129
+ declare function getIconElement(icon: string | undefined): React__default.ReactElement | undefined;
130
+ declare const DefaultSiteIcon: () => react_jsx_runtime.JSX.Element;
131
+ declare const NotFoundIcon: () => react_jsx_runtime.JSX.Element;
132
+
133
+ declare function GoogleAnalyticsScript(): react_jsx_runtime.JSX.Element | null;
134
+ declare function useGoogleAnalytics(): {
135
+ trackEvent: (event: string, data?: Record<string, unknown>) => void;
136
+ };
137
+ declare global {
138
+ interface Window {
139
+ dataLayer: any[];
140
+ gtag: (...args: any[]) => void;
141
+ }
142
+ }
143
+
144
+ export { DefaultSiteIcon, GoogleAnalyticsScript, NotFoundIcon, NotFoundPage, getGlobalIcon, getIconElement, globalLucideIcons, useGoogleAnalytics };
@@ -0,0 +1,144 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { LucideProps } from 'lucide-react';
3
+ import React__default from 'react';
4
+
5
+ declare function NotFoundPage(): react_jsx_runtime.JSX.Element;
6
+
7
+ type StyledLucideIconComponent = (props: LucideProps) => React__default.ReactElement;
8
+ type IconComponent = StyledLucideIconComponent | React__default.ComponentType<LucideProps>;
9
+ declare const globalLucideIcons: {
10
+ GitHub: StyledLucideIconComponent;
11
+ D8: StyledLucideIconComponent;
12
+ Clerk: StyledLucideIconComponent;
13
+ Iterm: StyledLucideIconComponent;
14
+ Markdown: StyledLucideIconComponent;
15
+ MDX: StyledLucideIconComponent;
16
+ Html: StyledLucideIconComponent;
17
+ Json: StyledLucideIconComponent;
18
+ XML: StyledLucideIconComponent;
19
+ Yaml: StyledLucideIconComponent;
20
+ CSV: StyledLucideIconComponent;
21
+ Txt: StyledLucideIconComponent;
22
+ Java: StyledLucideIconComponent;
23
+ SQL: StyledLucideIconComponent;
24
+ Log: StyledLucideIconComponent;
25
+ MAC: StyledLucideIconComponent;
26
+ BTC: StyledLucideIconComponent;
27
+ CSS: StyledLucideIconComponent;
28
+ Mmd: StyledLucideIconComponent;
29
+ LastUpdated: StyledLucideIconComponent;
30
+ Snippets: StyledLucideIconComponent;
31
+ Test: StyledLucideIconComponent;
32
+ Diff: StyledLucideIconComponent;
33
+ DPA: StyledLucideIconComponent;
34
+ SubP: StyledLucideIconComponent;
35
+ T3P: StyledLucideIconComponent;
36
+ Http: StyledLucideIconComponent;
37
+ Scheme: StyledLucideIconComponent;
38
+ AlbumIcon: StyledLucideIconComponent;
39
+ AlignHorizontalJustifyEnd: StyledLucideIconComponent;
40
+ ArrowLeft: StyledLucideIconComponent;
41
+ ArrowRight: StyledLucideIconComponent;
42
+ ArrowUp: StyledLucideIconComponent;
43
+ Binary: StyledLucideIconComponent;
44
+ Blocks: StyledLucideIconComponent;
45
+ BookX: StyledLucideIconComponent;
46
+ BringToFront: StyledLucideIconComponent;
47
+ Building2: StyledLucideIconComponent;
48
+ Bug: StyledLucideIconComponent;
49
+ Car: StyledLucideIconComponent;
50
+ Circle: StyledLucideIconComponent;
51
+ CircleAlert: StyledLucideIconComponent;
52
+ CircleSmall: StyledLucideIconComponent;
53
+ Check: StyledLucideIconComponent;
54
+ ChevronDown: StyledLucideIconComponent;
55
+ ChevronLeft: StyledLucideIconComponent;
56
+ ChevronRight: StyledLucideIconComponent;
57
+ ChevronUp: StyledLucideIconComponent;
58
+ Cpu: StyledLucideIconComponent;
59
+ ComponentIcon: StyledLucideIconComponent;
60
+ DatabaseZap: StyledLucideIconComponent;
61
+ Dot: StyledLucideIconComponent;
62
+ Download: StyledLucideIconComponent;
63
+ Eye: StyledLucideIconComponent;
64
+ ExternalLink: StyledLucideIconComponent;
65
+ Facebook: StyledLucideIconComponent;
66
+ FileLock2: StyledLucideIconComponent;
67
+ Fingerprint: StyledLucideIconComponent;
68
+ Gift: StyledLucideIconComponent;
69
+ GitPullRequestArrow: StyledLucideIconComponent;
70
+ Globe: StyledLucideIconComponent;
71
+ GlobeLock: StyledLucideIconComponent;
72
+ GripVertical: StyledLucideIconComponent;
73
+ HandHeart: StyledLucideIconComponent;
74
+ Handshake: StyledLucideIconComponent;
75
+ Highlighter: StyledLucideIconComponent;
76
+ HousePlus: StyledLucideIconComponent;
77
+ Info: StyledLucideIconComponent;
78
+ ImageDown: StyledLucideIconComponent;
79
+ ImageOff: StyledLucideIconComponent;
80
+ ImageUp: StyledLucideIconComponent;
81
+ Keyboard: StyledLucideIconComponent;
82
+ LandPlot: StyledLucideIconComponent;
83
+ Layout: StyledLucideIconComponent;
84
+ LayoutTemplate: StyledLucideIconComponent;
85
+ LibraryIcon: StyledLucideIconComponent;
86
+ Link: StyledLucideIconComponent;
87
+ Loader2: StyledLucideIconComponent;
88
+ LogIn: StyledLucideIconComponent;
89
+ LogOut: StyledLucideIconComponent;
90
+ MoreHorizontal: StyledLucideIconComponent;
91
+ MousePointerClick: StyledLucideIconComponent;
92
+ PanelLeft: StyledLucideIconComponent;
93
+ PanelsTopLeft: StyledLucideIconComponent;
94
+ Pencil: StyledLucideIconComponent;
95
+ Pi: StyledLucideIconComponent;
96
+ Palette: StyledLucideIconComponent;
97
+ ReceiptText: StyledLucideIconComponent;
98
+ Regex: StyledLucideIconComponent;
99
+ Replace: StyledLucideIconComponent;
100
+ Rss: StyledLucideIconComponent;
101
+ Scale: StyledLucideIconComponent;
102
+ Search: StyledLucideIconComponent;
103
+ Share: StyledLucideIconComponent;
104
+ ShieldUser: StyledLucideIconComponent;
105
+ SquareDashedBottomCode: StyledLucideIconComponent;
106
+ SquareTerminal: StyledLucideIconComponent;
107
+ Server: StyledLucideIconComponent;
108
+ SplinePointer: StyledLucideIconComponent;
109
+ Sparkles: StyledLucideIconComponent;
110
+ Star: StyledLucideIconComponent;
111
+ Tablets: StyledLucideIconComponent;
112
+ Terminal: StyledLucideIconComponent;
113
+ Twitter: StyledLucideIconComponent;
114
+ X: StyledLucideIconComponent;
115
+ Zap: StyledLucideIconComponent;
116
+ };
117
+ /**
118
+ * use iconKey to load icon safely
119
+ * @param iconKey translation or configuration
120
+ * @param createElement whether to return a React element instead of component
121
+ */
122
+ declare function getGlobalIcon(iconKey: string | undefined): IconComponent;
123
+ declare function getGlobalIcon(iconKey: string | undefined, createElement: true): React__default.ReactElement | undefined;
124
+ /**
125
+ * Get icon element (for fumadocs source compatibility)
126
+ * This is a wrapper around getGlobalIcon for backwards compatibility
127
+ * @param icon icon key from frontmatter
128
+ */
129
+ declare function getIconElement(icon: string | undefined): React__default.ReactElement | undefined;
130
+ declare const DefaultSiteIcon: () => react_jsx_runtime.JSX.Element;
131
+ declare const NotFoundIcon: () => react_jsx_runtime.JSX.Element;
132
+
133
+ declare function GoogleAnalyticsScript(): react_jsx_runtime.JSX.Element | null;
134
+ declare function useGoogleAnalytics(): {
135
+ trackEvent: (event: string, data?: Record<string, unknown>) => void;
136
+ };
137
+ declare global {
138
+ interface Window {
139
+ dataLayer: any[];
140
+ gtag: (...args: any[]) => void;
141
+ }
142
+ }
143
+
144
+ export { DefaultSiteIcon, GoogleAnalyticsScript, NotFoundIcon, NotFoundPage, getGlobalIcon, getIconElement, globalLucideIcons, useGoogleAnalytics };