z-biz-tool-shared 0.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 (186) hide show
  1. package/README.md +10 -0
  2. package/dist/agent/AgentManager.d.ts +15 -0
  3. package/dist/agent/AgentManager.d.ts.map +1 -0
  4. package/dist/agent/AgentManager.js +152 -0
  5. package/dist/agent/AgentManager.js.map +1 -0
  6. package/dist/agent/AgentPanel.d.ts +3 -0
  7. package/dist/agent/AgentPanel.d.ts.map +1 -0
  8. package/dist/agent/AgentPanel.js +98 -0
  9. package/dist/agent/AgentPanel.js.map +1 -0
  10. package/dist/agent/QueryHistoryViewer.d.ts +15 -0
  11. package/dist/agent/QueryHistoryViewer.d.ts.map +1 -0
  12. package/dist/agent/QueryHistoryViewer.js +78 -0
  13. package/dist/agent/QueryHistoryViewer.js.map +1 -0
  14. package/dist/agent/SQLEditor.d.ts +8 -0
  15. package/dist/agent/SQLEditor.d.ts.map +1 -0
  16. package/dist/agent/SQLEditor.js +40 -0
  17. package/dist/agent/SQLEditor.js.map +1 -0
  18. package/dist/agent/index.d.ts +6 -0
  19. package/dist/agent/index.d.ts.map +1 -0
  20. package/dist/agent/index.js +7 -0
  21. package/dist/agent/index.js.map +1 -0
  22. package/dist/agent/types.d.ts +35 -0
  23. package/dist/agent/types.d.ts.map +1 -0
  24. package/dist/agent/types.js +2 -0
  25. package/dist/agent/types.js.map +1 -0
  26. package/dist/ai/AIManager.d.ts +17 -0
  27. package/dist/ai/AIManager.d.ts.map +1 -0
  28. package/dist/ai/AIManager.js +191 -0
  29. package/dist/ai/AIManager.js.map +1 -0
  30. package/dist/ai/context.d.ts +17 -0
  31. package/dist/ai/context.d.ts.map +1 -0
  32. package/dist/ai/context.js +82 -0
  33. package/dist/ai/context.js.map +1 -0
  34. package/dist/ai/index.d.ts +4 -0
  35. package/dist/ai/index.d.ts.map +1 -0
  36. package/dist/ai/index.js +5 -0
  37. package/dist/ai/index.js.map +1 -0
  38. package/dist/ai/types.d.ts +43 -0
  39. package/dist/ai/types.d.ts.map +1 -0
  40. package/dist/ai/types.js +2 -0
  41. package/dist/ai/types.js.map +1 -0
  42. package/dist/components/GlobalShortcutHandler.d.ts +17 -0
  43. package/dist/components/GlobalShortcutHandler.d.ts.map +1 -0
  44. package/dist/components/GlobalShortcutHandler.js +74 -0
  45. package/dist/components/GlobalShortcutHandler.js.map +1 -0
  46. package/dist/components/Navbar.d.ts +16 -0
  47. package/dist/components/Navbar.d.ts.map +1 -0
  48. package/dist/components/Navbar.js +136 -0
  49. package/dist/components/Navbar.js.map +1 -0
  50. package/dist/components/ProgressIndicator.d.ts +12 -0
  51. package/dist/components/ProgressIndicator.d.ts.map +1 -0
  52. package/dist/components/ProgressIndicator.js +6 -0
  53. package/dist/components/ProgressIndicator.js.map +1 -0
  54. package/dist/components/ShortcutDisplay.d.ts +8 -0
  55. package/dist/components/ShortcutDisplay.d.ts.map +1 -0
  56. package/dist/components/ShortcutDisplay.js +5 -0
  57. package/dist/components/ShortcutDisplay.js.map +1 -0
  58. package/dist/components/Spotlight.d.ts +22 -0
  59. package/dist/components/Spotlight.d.ts.map +1 -0
  60. package/dist/components/Spotlight.js +208 -0
  61. package/dist/components/Spotlight.js.map +1 -0
  62. package/dist/components/SpotlightProvider.d.ts +5 -0
  63. package/dist/components/SpotlightProvider.d.ts.map +1 -0
  64. package/dist/components/SpotlightProvider.js +22 -0
  65. package/dist/components/SpotlightProvider.js.map +1 -0
  66. package/dist/components/StateIndicator.d.ts +11 -0
  67. package/dist/components/StateIndicator.d.ts.map +1 -0
  68. package/dist/components/StateIndicator.js +12 -0
  69. package/dist/components/StateIndicator.js.map +1 -0
  70. package/dist/components/UIDesignSystem.d.ts +124 -0
  71. package/dist/components/UIDesignSystem.d.ts.map +1 -0
  72. package/dist/components/UIDesignSystem.js +222 -0
  73. package/dist/components/UIDesignSystem.js.map +1 -0
  74. package/dist/components/index.d.ts +9 -0
  75. package/dist/components/index.d.ts.map +1 -0
  76. package/dist/components/index.js +10 -0
  77. package/dist/components/index.js.map +1 -0
  78. package/dist/index.d.ts +10 -0
  79. package/dist/index.d.ts.map +1 -0
  80. package/dist/index.js +13 -0
  81. package/dist/index.js.map +1 -0
  82. package/dist/interactions/index.d.ts +2 -0
  83. package/dist/interactions/index.d.ts.map +1 -0
  84. package/dist/interactions/index.js +3 -0
  85. package/dist/interactions/index.js.map +1 -0
  86. package/dist/interactions/interactionPatterns.d.ts +155 -0
  87. package/dist/interactions/interactionPatterns.d.ts.map +1 -0
  88. package/dist/interactions/interactionPatterns.js +180 -0
  89. package/dist/interactions/interactionPatterns.js.map +1 -0
  90. package/dist/notifications/ToastContainer.d.ts +3 -0
  91. package/dist/notifications/ToastContainer.d.ts.map +1 -0
  92. package/dist/notifications/ToastContainer.js +14 -0
  93. package/dist/notifications/ToastContainer.js.map +1 -0
  94. package/dist/notifications/index.d.ts +3 -0
  95. package/dist/notifications/index.d.ts.map +1 -0
  96. package/dist/notifications/index.js +4 -0
  97. package/dist/notifications/index.js.map +1 -0
  98. package/dist/notifications/notificationManager.d.ts +18 -0
  99. package/dist/notifications/notificationManager.d.ts.map +1 -0
  100. package/dist/notifications/notificationManager.js +68 -0
  101. package/dist/notifications/notificationManager.js.map +1 -0
  102. package/dist/notifications/types.d.ts +9 -0
  103. package/dist/notifications/types.d.ts.map +1 -0
  104. package/dist/notifications/types.js +2 -0
  105. package/dist/notifications/types.js.map +1 -0
  106. package/dist/shared/AppShell.d.ts +14 -0
  107. package/dist/shared/AppShell.d.ts.map +1 -0
  108. package/dist/shared/AppShell.js +94 -0
  109. package/dist/shared/AppShell.js.map +1 -0
  110. package/dist/shared/CollapsiblePanel.d.ts +31 -0
  111. package/dist/shared/CollapsiblePanel.d.ts.map +1 -0
  112. package/dist/shared/CollapsiblePanel.js +140 -0
  113. package/dist/shared/CollapsiblePanel.js.map +1 -0
  114. package/dist/shared/DragHandle.d.ts +37 -0
  115. package/dist/shared/DragHandle.d.ts.map +1 -0
  116. package/dist/shared/DragHandle.js +85 -0
  117. package/dist/shared/DragHandle.js.map +1 -0
  118. package/dist/shared/Omnibar.d.ts +19 -0
  119. package/dist/shared/Omnibar.d.ts.map +1 -0
  120. package/dist/shared/Omnibar.js +258 -0
  121. package/dist/shared/Omnibar.js.map +1 -0
  122. package/dist/shared/States.d.ts +22 -0
  123. package/dist/shared/States.d.ts.map +1 -0
  124. package/dist/shared/States.js +190 -0
  125. package/dist/shared/States.js.map +1 -0
  126. package/dist/shared/TabsBar.d.ts +7 -0
  127. package/dist/shared/TabsBar.d.ts.map +1 -0
  128. package/dist/shared/TabsBar.js +186 -0
  129. package/dist/shared/TabsBar.js.map +1 -0
  130. package/dist/shared/ThemeContext.d.ts +17 -0
  131. package/dist/shared/ThemeContext.d.ts.map +1 -0
  132. package/dist/shared/ThemeContext.js +134 -0
  133. package/dist/shared/ThemeContext.js.map +1 -0
  134. package/dist/shared/designTokens.d.ts +54 -0
  135. package/dist/shared/designTokens.d.ts.map +1 -0
  136. package/dist/shared/designTokens.js +58 -0
  137. package/dist/shared/designTokens.js.map +1 -0
  138. package/dist/shared/index.d.ts +10 -0
  139. package/dist/shared/index.d.ts.map +1 -0
  140. package/dist/shared/index.js +10 -0
  141. package/dist/shared/index.js.map +1 -0
  142. package/dist/shared/useKeyboardShortcuts.d.ts +37 -0
  143. package/dist/shared/useKeyboardShortcuts.d.ts.map +1 -0
  144. package/dist/shared/useKeyboardShortcuts.js +161 -0
  145. package/dist/shared/useKeyboardShortcuts.js.map +1 -0
  146. package/dist/shortcuts/index.d.ts +3 -0
  147. package/dist/shortcuts/index.d.ts.map +1 -0
  148. package/dist/shortcuts/index.js +4 -0
  149. package/dist/shortcuts/index.js.map +1 -0
  150. package/dist/shortcuts/shortcutManager.d.ts +26 -0
  151. package/dist/shortcuts/shortcutManager.d.ts.map +1 -0
  152. package/dist/shortcuts/shortcutManager.js +90 -0
  153. package/dist/shortcuts/shortcutManager.js.map +1 -0
  154. package/dist/shortcuts/types.d.ts +8 -0
  155. package/dist/shortcuts/types.d.ts.map +1 -0
  156. package/dist/shortcuts/types.js +2 -0
  157. package/dist/shortcuts/types.js.map +1 -0
  158. package/dist/styles/designTokens.d.ts +181 -0
  159. package/dist/styles/designTokens.d.ts.map +1 -0
  160. package/dist/styles/designTokens.js +199 -0
  161. package/dist/styles/designTokens.js.map +1 -0
  162. package/dist/styles/globalStyles.d.ts +8 -0
  163. package/dist/styles/globalStyles.d.ts.map +1 -0
  164. package/dist/styles/globalStyles.js +216 -0
  165. package/dist/styles/globalStyles.js.map +1 -0
  166. package/dist/styles/index.d.ts +3 -0
  167. package/dist/styles/index.d.ts.map +1 -0
  168. package/dist/styles/index.js +4 -0
  169. package/dist/styles/index.js.map +1 -0
  170. package/dist/theme/ThemeContext.d.ts +17 -0
  171. package/dist/theme/ThemeContext.d.ts.map +1 -0
  172. package/dist/theme/ThemeContext.js +60 -0
  173. package/dist/theme/ThemeContext.js.map +1 -0
  174. package/dist/theme/index.d.ts +4 -0
  175. package/dist/theme/index.d.ts.map +1 -0
  176. package/dist/theme/index.js +5 -0
  177. package/dist/theme/index.js.map +1 -0
  178. package/dist/theme/themeManager.d.ts +12 -0
  179. package/dist/theme/themeManager.d.ts.map +1 -0
  180. package/dist/theme/themeManager.js +160 -0
  181. package/dist/theme/themeManager.js.map +1 -0
  182. package/dist/theme/types.d.ts +16 -0
  183. package/dist/theme/types.d.ts.map +1 -0
  184. package/dist/theme/types.js +3 -0
  185. package/dist/theme/types.js.map +1 -0
  186. package/package.json +88 -0
@@ -0,0 +1,199 @@
1
+ /**
2
+ * 设计系统规范
3
+ * z-biz-tool UI/UX 设计指南
4
+ */
5
+ /**
6
+ * 设计原则
7
+ * 1. 统一 - 保持一致的视觉语言和交互模式
8
+ * 2. 简洁 - 清晰直观,减少认知负担
9
+ * 3. 反馈 - 及时的状态反馈和交互提示
10
+ * 4. 灵活 - 支持主题切换和自定义
11
+ */
12
+ // 颜色系统
13
+ export const COLORS = {
14
+ // 主色
15
+ primary: '#FFC131',
16
+ primaryLight: '#FFD54F',
17
+ primaryDark: '#FFA000',
18
+ // 辅助色
19
+ accent: '#61DAFB',
20
+ accentLight: '#88E0FC',
21
+ accentDark: '#3DB8E9',
22
+ // 状态色
23
+ success: '#4caf50',
24
+ successLight: '#81c784',
25
+ successDark: '#388e3c',
26
+ warning: '#ff9800',
27
+ warningLight: '#ffb74d',
28
+ warningDark: '#f57c00',
29
+ error: '#f44336',
30
+ errorLight: '#e57373',
31
+ errorDark: '#d32f2f',
32
+ info: '#2196f3',
33
+ infoLight: '#64b5f6',
34
+ infoDark: '#1976d2',
35
+ // 中性色
36
+ white: '#ffffff',
37
+ black: '#1e1e1e',
38
+ // 背景色
39
+ backgroundLight: '#ffffff',
40
+ backgroundDark: '#1e1e1e',
41
+ surfaceLight: '#f5f5f5',
42
+ surfaceDark: '#2d2d2d',
43
+ // 文本色
44
+ textLight: '#1e1e1e',
45
+ textDark: '#ffffff',
46
+ textSecondaryLight: '#666666',
47
+ textSecondaryDark: '#b0b0b0',
48
+ // 边框色
49
+ borderLight: '#e0e0e0',
50
+ borderDark: '#3d3d3d'
51
+ };
52
+ // 间距系统
53
+ export const SPACING = {
54
+ xs: 4,
55
+ sm: 8,
56
+ md: 16,
57
+ lg: 24,
58
+ xl: 32,
59
+ '2xl': 48,
60
+ '3xl': 64
61
+ };
62
+ // 圆角系统
63
+ export const BORDER_RADIUS = {
64
+ sm: 4,
65
+ md: 8,
66
+ lg: 12,
67
+ xl: 16,
68
+ '2xl': 24,
69
+ full: 9999
70
+ };
71
+ // 字体系统
72
+ export const FONT_FAMILY = {
73
+ sans: 'Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif',
74
+ mono: 'Fira Code, "JetBrains Mono", "Consolas", "Monaco", monospace'
75
+ };
76
+ export const FONT_SIZE = {
77
+ xs: 12,
78
+ sm: 14,
79
+ base: 16,
80
+ lg: 18,
81
+ xl: 20,
82
+ '2xl': 24,
83
+ '3xl': 30,
84
+ '4xl': 36
85
+ };
86
+ export const FONT_WEIGHT = {
87
+ light: 300,
88
+ normal: 400,
89
+ medium: 500,
90
+ semibold: 600,
91
+ bold: 700
92
+ };
93
+ // 阴影系统
94
+ export const SHADOW = {
95
+ sm: '0 1px 2px 0 rgba(0, 0, 0, 0.05)',
96
+ md: '0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06)',
97
+ lg: '0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05)',
98
+ xl: '0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04)',
99
+ '2xl': '0 25px 50px -12px rgba(0, 0, 0, 0.25)'
100
+ };
101
+ // 过渡系统
102
+ export const TRANSITION = {
103
+ fast: '150ms ease-in-out',
104
+ normal: '200ms ease-in-out',
105
+ slow: '300ms ease-in-out',
106
+ all: 'all 200ms ease-in-out'
107
+ };
108
+ // 断点系统
109
+ export const BREAKPOINTS = {
110
+ sm: 640,
111
+ md: 768,
112
+ lg: 1024,
113
+ xl: 1280
114
+ };
115
+ // 按钮样式
116
+ export const BUTTON_STYLES = {
117
+ primary: {
118
+ backgroundColor: COLORS.primary,
119
+ color: COLORS.black,
120
+ hover: {
121
+ backgroundColor: COLORS.primaryDark
122
+ },
123
+ active: {
124
+ transform: 'scale(0.98)'
125
+ }
126
+ },
127
+ secondary: {
128
+ backgroundColor: COLORS.surfaceDark,
129
+ color: COLORS.textDark,
130
+ border: `1px solid ${COLORS.borderDark}`,
131
+ hover: {
132
+ backgroundColor: '#3d3d3d'
133
+ }
134
+ },
135
+ ghost: {
136
+ backgroundColor: 'transparent',
137
+ color: COLORS.textDark,
138
+ hover: {
139
+ backgroundColor: COLORS.backgroundDark
140
+ }
141
+ },
142
+ danger: {
143
+ backgroundColor: COLORS.error,
144
+ color: COLORS.white,
145
+ hover: {
146
+ backgroundColor: COLORS.errorDark
147
+ }
148
+ }
149
+ };
150
+ // 卡片样式
151
+ export const CARD_STYLES = {
152
+ base: {
153
+ backgroundColor: COLORS.surfaceDark,
154
+ borderRadius: BORDER_RADIUS.lg,
155
+ border: `1px solid ${COLORS.borderDark}`
156
+ },
157
+ padding: {
158
+ sm: 16,
159
+ md: 24,
160
+ lg: 32
161
+ }
162
+ };
163
+ // 表单样式
164
+ export const FORM_STYLES = {
165
+ input: {
166
+ backgroundColor: COLORS.surfaceDark,
167
+ color: COLORS.textDark,
168
+ border: `1px solid ${COLORS.borderDark}`,
169
+ borderRadius: BORDER_RADIUS.md,
170
+ padding: {
171
+ sm: '8px 12px',
172
+ md: '12px 16px',
173
+ lg: '16px 20px'
174
+ }
175
+ },
176
+ label: {
177
+ color: COLORS.textSecondaryDark,
178
+ fontSize: FONT_SIZE.sm,
179
+ fontWeight: FONT_WEIGHT.medium
180
+ }
181
+ };
182
+ // 状态指示器样式
183
+ export const STATUS_INDICATOR = {
184
+ online: {
185
+ backgroundColor: COLORS.success,
186
+ animation: 'pulse'
187
+ },
188
+ busy: {
189
+ backgroundColor: COLORS.warning,
190
+ animation: 'pulse'
191
+ },
192
+ error: {
193
+ backgroundColor: COLORS.error
194
+ },
195
+ offline: {
196
+ backgroundColor: COLORS.textSecondaryDark
197
+ }
198
+ };
199
+ //# sourceMappingURL=designTokens.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"designTokens.js","sourceRoot":"","sources":["../../src/styles/designTokens.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * 全局样式
3
+ * z-biz-tool 的全局 CSS
4
+ */
5
+ export declare const globalStyles = "\n :root {\n /* \u989C\u8272\u53D8\u91CF */\n --color-primary: #FFC131;\n --color-primary-light: #FFD54F;\n --color-primary-dark: #FFA000;\n --color-accent: #61DAFB;\n --color-success: #4caf50;\n --color-warning: #ff9800;\n --color-error: #f44336;\n --color-info: #2196f3;\n \n /* \u80CC\u666F\u53D8\u91CF */\n --color-background: #1e1e1e;\n --color-surface: #2d2d2d;\n --color-text: #ffffff;\n --color-text-secondary: #b0b0b0;\n --color-border: #3d3d3d;\n \n /* \u95F4\u8DDD\u53D8\u91CF */\n --spacing-xs: 4px;\n --spacing-sm: 8px;\n --spacing-md: 16px;\n --spacing-lg: 24px;\n --spacing-xl: 32px;\n \n /* \u5706\u89D2\u53D8\u91CF */\n --radius-sm: 4px;\n --radius-md: 8px;\n --radius-lg: 12px;\n --radius-xl: 16px;\n \n /* \u5B57\u4F53\u53D8\u91CF */\n --font-sans: Inter, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif;\n --font-mono: \"Fira Code\", \"JetBrains Mono\", Consolas, Monaco, monospace;\n \n /* \u9634\u5F71\u53D8\u91CF */\n --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);\n --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1);\n --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1);\n \n /* \u8FC7\u6E21\u53D8\u91CF */\n --transition-fast: 150ms ease-in-out;\n --transition-normal: 200ms ease-in-out;\n }\n \n * {\n box-sizing: border-box;\n margin: 0;\n padding: 0;\n }\n \n body {\n font-family: var(--font-sans);\n font-size: 16px;\n line-height: 1.5;\n color: var(--color-text);\n background-color: var(--color-background);\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n }\n \n /* \u6EDA\u52A8\u6761\u6837\u5F0F */\n ::-webkit-scrollbar {\n width: 8px;\n height: 8px;\n }\n \n ::-webkit-scrollbar-track {\n background: var(--color-surface);\n border-radius: var(--radius-md);\n }\n \n ::-webkit-scrollbar-thumb {\n background: var(--color-border);\n border-radius: var(--radius-md);\n }\n \n ::-webkit-scrollbar-thumb:hover {\n background: #555;\n }\n \n /* \u9009\u62E9\u5668\u6837\u5F0F */\n ::selection {\n background: var(--color-primary);\n color: var(--color-text);\n }\n \n /* \u6309\u94AE\u6837\u5F0F */\n button {\n cursor: pointer;\n font-family: inherit;\n font-size: inherit;\n }\n \n button:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n }\n \n /* \u8F93\u5165\u6846\u6837\u5F0F */\n input,\n textarea,\n select {\n font-family: inherit;\n font-size: inherit;\n }\n \n input:focus,\n textarea:focus,\n select:focus {\n outline: none;\n }\n \n /* \u94FE\u63A5\u6837\u5F0F */\n a {\n color: var(--color-primary);\n text-decoration: none;\n }\n \n a:hover {\n text-decoration: underline;\n }\n \n /* \u52A8\u753B */\n @keyframes slide-in {\n from {\n opacity: 0;\n transform: translateY(10px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n }\n \n @keyframes fade-in {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n }\n \n @keyframes pulse {\n 0%, 100% {\n opacity: 1;\n }\n 50% {\n opacity: 0.5;\n }\n }\n \n .animate-slide-in {\n animation: slide-in var(--transition-normal);\n }\n \n .animate-fade-in {\n animation: fade-in var(--transition-normal);\n }\n \n .animate-pulse {\n animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;\n }\n \n /* \u6697\u8272\u6A21\u5F0F\u9002\u914D */\n @media (prefers-color-scheme: dark) {\n :root {\n --color-background: #1e1e1e;\n --color-surface: #2d2d2d;\n --color-text: #ffffff;\n --color-text-secondary: #b0b0b0;\n --color-border: #3d3d3d;\n }\n }\n \n /* \u6D45\u8272\u6A21\u5F0F\u9002\u914D */\n @media (prefers-color-scheme: light) {\n :root {\n --color-background: #ffffff;\n --color-surface: #f5f5f5;\n --color-text: #1e1e1e;\n --color-text-secondary: #666666;\n --color-border: #e0e0e0;\n }\n }\n";
6
+ export declare const loadGlobalStyles: () => void;
7
+ export declare const unloadGlobalStyles: () => void;
8
+ //# sourceMappingURL=globalStyles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"globalStyles.d.ts","sourceRoot":"","sources":["../../src/styles/globalStyles.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,eAAO,MAAM,YAAY,shIA2LxB,CAAC;AAGF,eAAO,MAAM,gBAAgB,YAW5B,CAAC;AAGF,eAAO,MAAM,kBAAkB,YAO9B,CAAC"}
@@ -0,0 +1,216 @@
1
+ /**
2
+ * 全局样式
3
+ * z-biz-tool 的全局 CSS
4
+ */
5
+ // CSS 变量注入
6
+ export const globalStyles = `
7
+ :root {
8
+ /* 颜色变量 */
9
+ --color-primary: #FFC131;
10
+ --color-primary-light: #FFD54F;
11
+ --color-primary-dark: #FFA000;
12
+ --color-accent: #61DAFB;
13
+ --color-success: #4caf50;
14
+ --color-warning: #ff9800;
15
+ --color-error: #f44336;
16
+ --color-info: #2196f3;
17
+
18
+ /* 背景变量 */
19
+ --color-background: #1e1e1e;
20
+ --color-surface: #2d2d2d;
21
+ --color-text: #ffffff;
22
+ --color-text-secondary: #b0b0b0;
23
+ --color-border: #3d3d3d;
24
+
25
+ /* 间距变量 */
26
+ --spacing-xs: 4px;
27
+ --spacing-sm: 8px;
28
+ --spacing-md: 16px;
29
+ --spacing-lg: 24px;
30
+ --spacing-xl: 32px;
31
+
32
+ /* 圆角变量 */
33
+ --radius-sm: 4px;
34
+ --radius-md: 8px;
35
+ --radius-lg: 12px;
36
+ --radius-xl: 16px;
37
+
38
+ /* 字体变量 */
39
+ --font-sans: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
40
+ --font-mono: "Fira Code", "JetBrains Mono", Consolas, Monaco, monospace;
41
+
42
+ /* 阴影变量 */
43
+ --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
44
+ --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
45
+ --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
46
+
47
+ /* 过渡变量 */
48
+ --transition-fast: 150ms ease-in-out;
49
+ --transition-normal: 200ms ease-in-out;
50
+ }
51
+
52
+ * {
53
+ box-sizing: border-box;
54
+ margin: 0;
55
+ padding: 0;
56
+ }
57
+
58
+ body {
59
+ font-family: var(--font-sans);
60
+ font-size: 16px;
61
+ line-height: 1.5;
62
+ color: var(--color-text);
63
+ background-color: var(--color-background);
64
+ -webkit-font-smoothing: antialiased;
65
+ -moz-osx-font-smoothing: grayscale;
66
+ }
67
+
68
+ /* 滚动条样式 */
69
+ ::-webkit-scrollbar {
70
+ width: 8px;
71
+ height: 8px;
72
+ }
73
+
74
+ ::-webkit-scrollbar-track {
75
+ background: var(--color-surface);
76
+ border-radius: var(--radius-md);
77
+ }
78
+
79
+ ::-webkit-scrollbar-thumb {
80
+ background: var(--color-border);
81
+ border-radius: var(--radius-md);
82
+ }
83
+
84
+ ::-webkit-scrollbar-thumb:hover {
85
+ background: #555;
86
+ }
87
+
88
+ /* 选择器样式 */
89
+ ::selection {
90
+ background: var(--color-primary);
91
+ color: var(--color-text);
92
+ }
93
+
94
+ /* 按钮样式 */
95
+ button {
96
+ cursor: pointer;
97
+ font-family: inherit;
98
+ font-size: inherit;
99
+ }
100
+
101
+ button:disabled {
102
+ cursor: not-allowed;
103
+ opacity: 0.5;
104
+ }
105
+
106
+ /* 输入框样式 */
107
+ input,
108
+ textarea,
109
+ select {
110
+ font-family: inherit;
111
+ font-size: inherit;
112
+ }
113
+
114
+ input:focus,
115
+ textarea:focus,
116
+ select:focus {
117
+ outline: none;
118
+ }
119
+
120
+ /* 链接样式 */
121
+ a {
122
+ color: var(--color-primary);
123
+ text-decoration: none;
124
+ }
125
+
126
+ a:hover {
127
+ text-decoration: underline;
128
+ }
129
+
130
+ /* 动画 */
131
+ @keyframes slide-in {
132
+ from {
133
+ opacity: 0;
134
+ transform: translateY(10px);
135
+ }
136
+ to {
137
+ opacity: 1;
138
+ transform: translateY(0);
139
+ }
140
+ }
141
+
142
+ @keyframes fade-in {
143
+ from {
144
+ opacity: 0;
145
+ }
146
+ to {
147
+ opacity: 1;
148
+ }
149
+ }
150
+
151
+ @keyframes pulse {
152
+ 0%, 100% {
153
+ opacity: 1;
154
+ }
155
+ 50% {
156
+ opacity: 0.5;
157
+ }
158
+ }
159
+
160
+ .animate-slide-in {
161
+ animation: slide-in var(--transition-normal);
162
+ }
163
+
164
+ .animate-fade-in {
165
+ animation: fade-in var(--transition-normal);
166
+ }
167
+
168
+ .animate-pulse {
169
+ animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
170
+ }
171
+
172
+ /* 暗色模式适配 */
173
+ @media (prefers-color-scheme: dark) {
174
+ :root {
175
+ --color-background: #1e1e1e;
176
+ --color-surface: #2d2d2d;
177
+ --color-text: #ffffff;
178
+ --color-text-secondary: #b0b0b0;
179
+ --color-border: #3d3d3d;
180
+ }
181
+ }
182
+
183
+ /* 浅色模式适配 */
184
+ @media (prefers-color-scheme: light) {
185
+ :root {
186
+ --color-background: #ffffff;
187
+ --color-surface: #f5f5f5;
188
+ --color-text: #1e1e1e;
189
+ --color-text-secondary: #666666;
190
+ --color-border: #e0e0e0;
191
+ }
192
+ }
193
+ `;
194
+ // 加载全局样式
195
+ export const loadGlobalStyles = () => {
196
+ if (typeof document === 'undefined')
197
+ return;
198
+ // 检查是否已加载
199
+ const styleId = 'z-biz-tool-global-styles';
200
+ if (document.getElementById(styleId))
201
+ return;
202
+ const styleElement = document.createElement('style');
203
+ styleElement.id = styleId;
204
+ styleElement.textContent = globalStyles;
205
+ document.head.appendChild(styleElement);
206
+ };
207
+ // 卸载全局样式
208
+ export const unloadGlobalStyles = () => {
209
+ if (typeof document === 'undefined')
210
+ return;
211
+ const styleElement = document.getElementById('z-biz-tool-global-styles');
212
+ if (styleElement) {
213
+ styleElement.remove();
214
+ }
215
+ };
216
+ //# sourceMappingURL=globalStyles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"globalStyles.js","sourceRoot":"","sources":["../../src/styles/globalStyles.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,WAAW;AACX,MAAM,CAAC,MAAM,YAAY,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2L3B,CAAC;AAEF,SAAS;AACT,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,EAAE;IACnC,IAAI,OAAO,QAAQ,KAAK,WAAW;QAAE,OAAO;IAE5C,UAAU;IACV,MAAM,OAAO,GAAG,0BAA0B,CAAC;IAC3C,IAAI,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC;QAAE,OAAO;IAE7C,MAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IACrD,YAAY,CAAC,EAAE,GAAG,OAAO,CAAC;IAC1B,YAAY,CAAC,WAAW,GAAG,YAAY,CAAC;IACxC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;AAC1C,CAAC,CAAC;AAEF,SAAS;AACT,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,EAAE;IACrC,IAAI,OAAO,QAAQ,KAAK,WAAW;QAAE,OAAO;IAE5C,MAAM,YAAY,GAAG,QAAQ,CAAC,cAAc,CAAC,0BAA0B,CAAC,CAAC;IACzE,IAAI,YAAY,EAAE,CAAC;QACjB,YAAY,CAAC,MAAM,EAAE,CAAC;IACxB,CAAC;AACH,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from './designTokens';
2
+ export * from './globalStyles';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/styles/index.ts"],"names":[],"mappings":"AACA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC"}
@@ -0,0 +1,4 @@
1
+ // 样式模块导出
2
+ export * from './designTokens';
3
+ export * from './globalStyles';
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/styles/index.ts"],"names":[],"mappings":"AAAA,SAAS;AACT,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * 主题 Context - 提供给组件使用
3
+ */
4
+ import React from 'react';
5
+ import type { ThemeColors, ThemeName } from './types';
6
+ interface ThemeContextType {
7
+ currentTheme: ThemeName;
8
+ themeColors: ThemeColors;
9
+ setTheme: (theme: ThemeName) => void;
10
+ }
11
+ export declare const ThemeProvider: React.FC<{
12
+ children: React.ReactNode;
13
+ }>;
14
+ export declare const useTheme: () => ThemeContextType;
15
+ export declare const ThemeStyles: React.FC;
16
+ export {};
17
+ //# sourceMappingURL=ThemeContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ThemeContext.d.ts","sourceRoot":"","sources":["../../src/theme/ThemeContext.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAA+C,MAAM,OAAO,CAAC;AAEpE,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEtD,UAAU,gBAAgB;IACxB,YAAY,EAAE,SAAS,CAAC;IACxB,WAAW,EAAE,WAAW,CAAC;IACzB,QAAQ,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,CAAC;CACtC;AAID,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,CAmBjE,CAAC;AAEF,eAAO,MAAM,QAAQ,wBAMpB,CAAC;AAGF,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAiC/B,CAAC"}
@@ -0,0 +1,60 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ /**
3
+ * 主题 Context - 提供给组件使用
4
+ */
5
+ import { createContext, useContext, useEffect } from 'react';
6
+ import { useThemeStore, initTheme } from './themeManager';
7
+ const ThemeContext = createContext(undefined);
8
+ export const ThemeProvider = ({ children }) => {
9
+ useEffect(() => {
10
+ // 初始化主题
11
+ initTheme();
12
+ }, []);
13
+ const { currentTheme, themeConfig, setTheme } = useThemeStore();
14
+ const themeColors = themeConfig.colors;
15
+ return (_jsx(ThemeContext.Provider, { value: {
16
+ currentTheme: currentTheme,
17
+ themeColors,
18
+ setTheme
19
+ }, children: children }));
20
+ };
21
+ export const useTheme = () => {
22
+ const context = useContext(ThemeContext);
23
+ if (context === undefined) {
24
+ throw new Error('useTheme must be used within a ThemeProvider');
25
+ }
26
+ return context;
27
+ };
28
+ // 主题样式注入组件
29
+ export const ThemeStyles = () => {
30
+ const { themeColors } = useTheme();
31
+ return (_jsx("style", { children: `
32
+ :root {
33
+ --color-background: ${themeColors.background};
34
+ --color-surface: ${themeColors.surface};
35
+ --color-primary: ${themeColors.primary};
36
+ --color-text: ${themeColors.text};
37
+ --color-text-secondary: ${themeColors.textSecondary};
38
+ --color-border: ${themeColors.border};
39
+ --color-accent: ${themeColors.accent};
40
+ }
41
+
42
+ body {
43
+ background-color: var(--color-background);
44
+ color: var(--color-text);
45
+ }
46
+
47
+ .bg-primary {
48
+ background-color: var(--color-primary);
49
+ }
50
+
51
+ .text-primary {
52
+ color: var(--color-primary);
53
+ }
54
+
55
+ .border-primary {
56
+ border-color: var(--color-primary);
57
+ }
58
+ ` }));
59
+ };
60
+ //# sourceMappingURL=ThemeContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ThemeContext.js","sourceRoot":"","sources":["../../src/theme/ThemeContext.tsx"],"names":[],"mappings":";AAAA;;GAEG;AAEH,OAAc,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAS1D,MAAM,YAAY,GAAG,aAAa,CAA+B,SAAS,CAAC,CAAC;AAE5E,MAAM,CAAC,MAAM,aAAa,GAA4C,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;IACrF,SAAS,CAAC,GAAG,EAAE;QACb,QAAQ;QACR,SAAS,EAAE,CAAC;IACd,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,aAAa,EAAE,CAAC;IAEhE,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC;IAEvC,OAAO,CACL,KAAC,YAAY,CAAC,QAAQ,IAAC,KAAK,EAAE;YAC5B,YAAY,EAAE,YAAY;YAC1B,WAAW;YACX,QAAQ;SACT,YACE,QAAQ,GACa,CACzB,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAG,EAAE;IAC3B,MAAM,OAAO,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;IACzC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAEF,WAAW;AACX,MAAM,CAAC,MAAM,WAAW,GAAa,GAAG,EAAE;IACxC,MAAM,EAAE,WAAW,EAAE,GAAG,QAAQ,EAAE,CAAC;IAEnC,OAAO,CACL,0BAAQ;;8BAEkB,WAAW,CAAC,UAAU;2BACzB,WAAW,CAAC,OAAO;2BACnB,WAAW,CAAC,OAAO;wBACtB,WAAW,CAAC,IAAI;kCACN,WAAW,CAAC,aAAa;0BACjC,WAAW,CAAC,MAAM;0BAClB,WAAW,CAAC,MAAM;;;;;;;;;;;;;;;;;;;KAmBvC,GAAS,CACX,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,4 @@
1
+ export * from './themeManager';
2
+ export * from './ThemeContext';
3
+ export * from './types';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/theme/index.ts"],"names":[],"mappings":"AACA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC"}
@@ -0,0 +1,5 @@
1
+ // 主题系统导出
2
+ export * from './themeManager';
3
+ export * from './ThemeContext';
4
+ export * from './types';
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/theme/index.ts"],"names":[],"mappings":"AAAA,SAAS;AACT,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { ThemeName, ThemeConfig, type ThemeColors } from './types';
2
+ interface ThemeStore {
3
+ currentTheme: ThemeName;
4
+ themeConfig: ThemeConfig;
5
+ setTheme: (theme: ThemeName) => void;
6
+ updateTheme: (theme: Partial<ThemeConfig>) => void;
7
+ getThemeColors: () => ThemeColors;
8
+ }
9
+ export declare const useThemeStore: import("zustand").UseBoundStore<import("zustand").StoreApi<ThemeStore>>;
10
+ export declare const initTheme: () => void;
11
+ export {};
12
+ //# sourceMappingURL=themeManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"themeManager.d.ts","sourceRoot":"","sources":["../../src/theme/themeManager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,WAAW,EAAE,MAAM,SAAS,CAAC;AA+HnE,UAAU,UAAU;IAClB,YAAY,EAAE,SAAS,CAAC;IACxB,WAAW,EAAE,WAAW,CAAC;IACzB,QAAQ,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,CAAC;IACrC,WAAW,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IACnD,cAAc,EAAE,MAAM,WAAW,CAAC;CACnC;AAED,eAAO,MAAM,aAAa,yEAyBvB,CAAC;AAGJ,eAAO,MAAM,SAAS,QAAO,IAS5B,CAAC"}