@amaster.ai/components-templates 1.5.0 → 1.8.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 (40) hide show
  1. package/README.md +12 -8
  2. package/components/ai-assistant/amaster.config.json +3 -0
  3. package/components/ai-assistant/package.json +3 -3
  4. package/components/ai-assistant/template/components/chat-assistant-message.tsx +1 -1
  5. package/components/ai-assistant/template/components/chat-banner.tsx +1 -1
  6. package/components/ai-assistant/template/components/chat-display-mode-switcher.tsx +6 -6
  7. package/components/ai-assistant/template/components/chat-floating-button.tsx +4 -5
  8. package/components/ai-assistant/template/components/chat-floating-card.tsx +3 -3
  9. package/components/ai-assistant/template/components/chat-header.tsx +5 -5
  10. package/components/ai-assistant/template/components/chat-input.tsx +36 -24
  11. package/components/ai-assistant/template/components/chat-messages.tsx +11 -3
  12. package/components/ai-assistant/template/components/chat-recommends.tsx +12 -14
  13. package/components/ai-assistant/template/components/chat-user-message.tsx +1 -1
  14. package/components/ai-assistant/template/components/ui-renderer.tsx +1 -1
  15. package/components/ai-assistant/template/components/voice-input.tsx +10 -2
  16. package/components/ai-assistant/template/hooks/useConversation.ts +0 -23
  17. package/components/ai-assistant/template/hooks/useVoiceInput.ts +18 -20
  18. package/components/ai-assistant/template/inline-ai-assistant.tsx +1 -1
  19. package/components/ai-assistant-taro/amaster.config.json +3 -0
  20. package/components/ai-assistant-taro/package.json +94 -0
  21. package/components/ai-assistant-taro/template/components/ChatAssistantMessage.tsx +176 -0
  22. package/components/ai-assistant-taro/template/components/ChatHeader.tsx +27 -0
  23. package/components/ai-assistant-taro/template/components/ChatInput.tsx +233 -0
  24. package/components/ai-assistant-taro/template/components/ChatMessages.tsx +126 -0
  25. package/components/ai-assistant-taro/template/components/ChatUserMessage.tsx +25 -0
  26. package/components/ai-assistant-taro/template/components/VoiceInput.tsx +169 -0
  27. package/components/ai-assistant-taro/template/components/markdown.tsx +362 -0
  28. package/components/ai-assistant-taro/template/hooks/useConversation.ts +905 -0
  29. package/components/ai-assistant-taro/template/hooks/useSafeArea.ts +20 -0
  30. package/components/ai-assistant-taro/template/hooks/useVoiceInput.ts +204 -0
  31. package/components/ai-assistant-taro/template/i18n.ts +157 -0
  32. package/components/ai-assistant-taro/template/index.config.ts +10 -0
  33. package/components/ai-assistant-taro/template/index.tsx +83 -0
  34. package/components/ai-assistant-taro/template/types.ts +74 -0
  35. package/package.json +5 -2
  36. package/packages/cli/dist/index.js +14 -3
  37. package/packages/cli/dist/index.js.map +1 -1
  38. package/packages/cli/package.json +1 -1
  39. package/components/ai-assistant/example.md +0 -34
  40. package/components/ai-assistant/others.md +0 -16
@@ -0,0 +1,20 @@
1
+ import Taro from "@tarojs/taro";
2
+ import { useEffect, useState } from "react";
3
+
4
+ export const useSafeArea = () => {
5
+ const [safeAreaInsets, setSafeAreaInsets] = useState({ top: 0, bottom: 0 });
6
+ useEffect(() => {
7
+ try {
8
+ const systemInfo = Taro.getWindowInfo();
9
+ setSafeAreaInsets({
10
+ top: systemInfo.safeArea?.top || 0,
11
+ bottom:
12
+ systemInfo.screenHeight -
13
+ (systemInfo.safeArea?.bottom || systemInfo.screenHeight),
14
+ });
15
+ } catch (error) {
16
+ console.warn("Failed to get system info:", error);
17
+ }
18
+ }, []);
19
+ return safeAreaInsets;
20
+ };
@@ -0,0 +1,204 @@
1
+ import type { ASRHttpClient } from "@amaster.ai/client/*";
2
+ import Taro from "@tarojs/taro";
3
+ import { useEffect, useRef, useState } from "react";
4
+ import { client } from "@/lib/client";
5
+
6
+ export type VoiceInputStatus = "idle" | "recording" | "recognizing";
7
+
8
+ const arrayBufferToBase64 = (buffer: ArrayBuffer): string => {
9
+ return Taro.arrayBufferToBase64(buffer);
10
+ };
11
+
12
+ interface RecorderOptions {
13
+ onStart?: () => void;
14
+ onStop?: (base64: string) => void;
15
+ onError?: (error: Error) => void;
16
+ }
17
+
18
+ interface Recorder {
19
+ start(): Promise<void>;
20
+ stop(): Promise<void>;
21
+ }
22
+
23
+ async function createTaroRecorder(props?: RecorderOptions): Promise<Recorder> {
24
+ let isClosing = false;
25
+ let closed = false;
26
+ let recorderManager: Taro.RecorderManager | null = null;
27
+ let status = "idle";
28
+
29
+ const cleanup = () => {
30
+ if (isClosing) return;
31
+ isClosing = true;
32
+ if (recorderManager) {
33
+ try {
34
+ recorderManager.stop();
35
+ } catch {}
36
+ recorderManager = null;
37
+ }
38
+
39
+ isClosing = false;
40
+ closed = true;
41
+ console.trace("[ASR-HTTP] Cleanup recorder, status:", status);
42
+ status = "idle";
43
+ };
44
+
45
+ const onError = (error: Error) => {
46
+ console.error("[ASR-HTTP] Recorder error:", error);
47
+ props?.onError?.(error);
48
+ cleanup();
49
+ };
50
+
51
+ const onStop = (res) => {
52
+ if (!res.tempFilePath) {
53
+ onError(new Error('NO_AVAILABLE_AUDIO'));
54
+ return;
55
+ }
56
+
57
+ try {
58
+ if (!closed) {
59
+ const fs = Taro.getFileSystemManager();
60
+ const fileData = fs.readFileSync(res.tempFilePath) as ArrayBuffer;
61
+ props?.onStop?.(arrayBufferToBase64(fileData));
62
+ }
63
+ } catch (err) {
64
+ onError(new Error('READ_FILE_ERROR'));
65
+ } finally {
66
+ cleanup();
67
+ }
68
+ };
69
+
70
+ const start = async (): Promise<void> => {
71
+ if (status !== "idle") {
72
+ console.warn("[ASR-HTTP] Already in progress, status:", status);
73
+ return;
74
+ }
75
+
76
+ console.log("[ASR-HTTP] Starting recording...", status);
77
+
78
+ try {
79
+ isClosing = false;
80
+ status = "recording";
81
+ recorderManager = Taro.getRecorderManager();
82
+
83
+ if (
84
+ !recorderManager ||
85
+ !recorderManager.onStart ||
86
+ !recorderManager.onStop
87
+ ) {
88
+ console.error("[ASR-HTTP] Recorder not available");
89
+ onError(new Error('ENV_NOT_SUPPORT'));
90
+ return;
91
+ }
92
+
93
+ recorderManager.onStart(() => {
94
+ props?.onStart?.();
95
+ });
96
+ recorderManager.onStop(onStop);
97
+ recorderManager.onInterruptionEnd(onStop);
98
+ recorderManager.onError((err) => {
99
+ console.error("[ASR-HTTP] Recorder error event:", err);
100
+ onError(new Error(err.errMsg || "RECORDING_ERROR"));
101
+ });
102
+
103
+
104
+ // Start recording - directly record as WAV
105
+ recorderManager.start({
106
+ duration: 60000,
107
+ sampleRate: 16000,
108
+ numberOfChannels: 1,
109
+ encodeBitRate: 64000,
110
+ format: "wav",
111
+ });
112
+ } catch (error) {
113
+ onError(error);
114
+ }
115
+ };
116
+
117
+ const stop = async () => {
118
+ if (status === "recording" && recorderManager) {
119
+ try {
120
+ recorderManager.stop();
121
+ } catch (err) {
122
+ onError(err);
123
+ }
124
+ }
125
+ };
126
+
127
+ return {
128
+ start,
129
+ stop,
130
+ };
131
+ }
132
+
133
+ const getLocale = () => {
134
+ try {
135
+ const systemInfo = Taro.getAppBaseInfo();
136
+ const lang = systemInfo.language || "zh-CN";
137
+ return lang.startsWith("zh") ? "zh" : "en";
138
+ } catch {
139
+ return "zh";
140
+ }
141
+ };
142
+
143
+ export const useVoiceInput = (
144
+ options: {
145
+ onResult?: (text: string) => void;
146
+ onError?: (error: string) => void;
147
+ onStatusChange?: (status: VoiceInputStatus) => void;
148
+ } = {},
149
+ ) => {
150
+ const [status, setStatus] = useState<VoiceInputStatus>("idle");
151
+ const asrClientRef = useRef<ASRHttpClient | null>(null);
152
+
153
+ const startRecording = async () => {
154
+ setStatus("recording");
155
+ if (!asrClientRef.current) {
156
+ asrClientRef.current = client.asrHttp({
157
+ language: getLocale(),
158
+ createRecorder: createTaroRecorder,
159
+ onStatusChange(newStatus) {
160
+ setStatus(newStatus);
161
+ options.onStatusChange?.(newStatus);
162
+ },
163
+ onResult(text) {
164
+ options.onResult?.(text);
165
+ },
166
+ onRecordingStop() {
167
+ setStatus("idle");
168
+ options.onStatusChange?.("idle");
169
+ },
170
+ onError(err) {
171
+ err.message && options.onError?.(err.message);
172
+ },
173
+ });
174
+ }
175
+ if (asrClientRef.current) {
176
+ asrClientRef.current.startRecording();
177
+ } else {
178
+ options.onError?.("CREATE_ASR_CLIENT_ERROR");
179
+ setStatus("idle");
180
+ }
181
+ };
182
+
183
+ const stopRecording = async () => {
184
+ if (asrClientRef.current) {
185
+ await asrClientRef.current.stopRecording();
186
+ }
187
+ };
188
+
189
+ useEffect(() => {
190
+ return () => {
191
+ if (asrClientRef.current) {
192
+ asrClientRef.current.stopRecording();
193
+ }
194
+ };
195
+ }, []);
196
+
197
+ return {
198
+ status,
199
+ startRecording,
200
+ stopRecording,
201
+ };
202
+ };
203
+
204
+ export default useVoiceInput;
@@ -0,0 +1,157 @@
1
+ import Taro from "@tarojs/taro";
2
+ import { useMemo } from "react";
3
+
4
+ type Locale = "zh-CN" | "en-US";
5
+
6
+ interface I18nStrings {
7
+ // Header
8
+ title: string;
9
+ online: string;
10
+ // Messages
11
+ greeting: string;
12
+ thinking: string;
13
+ thinkResult: string;
14
+ noResponse: string;
15
+ errorMessage: string;
16
+ // Tool status
17
+ toolCompleted: string;
18
+ toolFailed: string;
19
+ toolPending: string;
20
+ toolRunning: string;
21
+ // Input
22
+ inputPlaceholder: string;
23
+ sendHint: string;
24
+ // Toast
25
+ conversationReset: string;
26
+ conversationCancelled: string;
27
+ newConversation: string;
28
+ sendFailed: string;
29
+ unknownTool: string;
30
+ loading: string;
31
+ // History loading
32
+ loadingHistory: string;
33
+ loadMore: string;
34
+ noMoreHistory: string;
35
+ conversationDivider: string;
36
+ // Stop generating
37
+ stopGenerating: string;
38
+ cancelled: string;
39
+ // Default recommended questions
40
+ defaultRecommendedQuestions: string[];
41
+ VoiceInputStatus: Record<string, string>;
42
+ voiceInputError: Record<string, string>;
43
+ send: string;
44
+ }
45
+
46
+ const i18n: Record<Locale, I18nStrings> = {
47
+ "zh-CN": {
48
+ title: "AI 助手",
49
+ online: "在线",
50
+ greeting: "你好!我是智能助手,有什么可以帮助你的吗?",
51
+ thinking: "思考中...",
52
+ noResponse: "收到您的消息了,但我暂时无法生成回复。",
53
+ errorMessage: "抱歉,我遇到了一些问题,请稍后再试。",
54
+ toolCompleted: "已完成",
55
+ toolFailed: "失败",
56
+ toolPending: "等待中...",
57
+ toolRunning: "执行中...",
58
+ inputPlaceholder: "输入消息...",
59
+ sendHint: "以上内容均由AI生成,仅供参考",
60
+ conversationReset: "对话已重置",
61
+ conversationCancelled: "对话已取消",
62
+ newConversation: "新对话",
63
+ sendFailed: "发送消息失败,请重试",
64
+ loading: "加载中",
65
+ thinkResult: "思考过程",
66
+ unknownTool: "未知工具",
67
+ loadingHistory: "正在加载历史消息...",
68
+ loadMore: "下拉加载更多",
69
+ noMoreHistory: "没有更多历史消息了",
70
+ conversationDivider: "以下为新对话",
71
+ stopGenerating: "停止生成",
72
+ cancelled: "用户主动停止",
73
+ defaultRecommendedQuestions: [
74
+ "你都有哪些技能?",
75
+ "今天北京天气如何?",
76
+ "如何使用这个系统?",
77
+ ],
78
+ VoiceInputStatus: {
79
+ connecting: "连接中...",
80
+ recording: "录音中...\n松开识别",
81
+ recognizing: "识别中...",
82
+ },
83
+ voiceInputError: {
84
+ ENV_NOT_SUPPORT: "请在真机使用此功能",
85
+ CREATE_ASR_CLIENT_ERROR: "启动录音失败",
86
+ NO_AVAILABLE_AUDIO: "无可用录音文件",
87
+ RECORDING_ERROR: "录音发生错误",
88
+ READ_FILE_ERROR: "读取录音失败",
89
+ MIC_PERMISSION_DENIED: "请允许使用麦克风",
90
+ },
91
+ send: "发送",
92
+ },
93
+ "en-US": {
94
+ title: "AI Assistant",
95
+ online: "Online",
96
+ greeting: "Hello! I'm your AI assistant. How can I help you today?",
97
+ thinking: "Thinking...",
98
+ thinkResult: "Thought process",
99
+ noResponse:
100
+ "Message received, but I cannot generate a response at the moment.",
101
+ errorMessage: "Sorry, I encountered an issue. Please try again later.",
102
+ toolCompleted: "Completed",
103
+ toolFailed: "Failed",
104
+ toolPending: "Pending...",
105
+ toolRunning: "Running...",
106
+ inputPlaceholder: "Type a message...",
107
+ sendHint: "The above content is generated by AI and is for reference only",
108
+ conversationReset: "Conversation reset",
109
+ conversationCancelled: "Conversation cancelled",
110
+ newConversation: "New Chat",
111
+ sendFailed: "Failed to send message, please retry",
112
+ unknownTool: "Unknown tool",
113
+ loading: "Loading",
114
+ loadingHistory: "Loading history...",
115
+ loadMore: "Pull down to load more",
116
+ noMoreHistory: "No more history messages",
117
+ conversationDivider: "New conversation below",
118
+ stopGenerating: "Stop generating",
119
+ cancelled: "Cancelled by user",
120
+ defaultRecommendedQuestions: [
121
+ "What skills do you have?",
122
+ "What's the weather like in Beijing today?",
123
+ "How do I use this system?",
124
+ ],
125
+ VoiceInputStatus: {
126
+ connecting: "connecting...",
127
+ recording: "recording...",
128
+ recognizing: "recognizing...",
129
+ },
130
+ voiceInputError: {
131
+ ENV_NOT_SUPPORT: "Env not supported",
132
+ CREATE_ASR_CLIENT_ERROR: "Failed to create ASR client",
133
+ NO_AVAILABLE_AUDIO: "No available audio recording",
134
+ RECORDING_ERROR: "An error occurred during recording",
135
+ READ_FILE_ERROR: "Failed to read the audio file",
136
+ MIC_PERMISSION_DENIED: "Please allow microphone permissions",
137
+ },
138
+ send: "Send",
139
+ },
140
+ };
141
+
142
+ /** Get current locale from system or default to zh-CN */
143
+ const getLocale = (): Locale => {
144
+ try {
145
+ const systemInfo = Taro.getAppBaseInfo();
146
+ const lang = systemInfo.language || "zh-CN";
147
+ return lang.startsWith("en") ? "en-US" : "zh-CN";
148
+ } catch {
149
+ return "zh-CN";
150
+ }
151
+ };
152
+
153
+ export const useAiAssistantI18n = (localeProp?: Locale) => {
154
+ const locale = localeProp || getLocale();
155
+ const t = useMemo(() => i18n[locale], [locale]);
156
+ return { t, locale };
157
+ };
@@ -0,0 +1,10 @@
1
+ /// <reference types="@tarojs/taro" />
2
+
3
+ export default definePageConfig({
4
+ navigationBarTitleText: 'AI 助手',
5
+ navigationBarBackgroundColor: '#ffffff',
6
+ navigationBarTextStyle: 'black',
7
+ backgroundColor: '#F9FAFB',
8
+ // Hide default navigation bar to use custom header
9
+ navigationStyle: 'custom'
10
+ })
@@ -0,0 +1,83 @@
1
+ import { View } from "@tarojs/components";
2
+ import type React from "react";
3
+ import { useEffect, useState } from "react";
4
+ import { ChatHeader } from "./components/ChatHeader";
5
+ import { ChatInput } from "./components/ChatInput";
6
+ import { ChatMessages } from "./components/ChatMessages";
7
+ import { useConversation } from "./hooks/useConversation";
8
+ import { useAiAssistantI18n } from "./i18n";
9
+ import type { AIAssistantProps } from "./types";
10
+
11
+ const AIAssistantInner: React.FC<AIAssistantProps> = (props) => {
12
+ const [inputValue, setInputValue] = useState("");
13
+ const { t } = useAiAssistantI18n();
14
+ const greeting = props.welcome || t.greeting;
15
+ const recommendedQuestions =
16
+ props.recommendedQuestions || t.defaultRecommendedQuestions;
17
+
18
+ const {
19
+ starting,
20
+ conversations,
21
+ isLoading,
22
+ isLoadingHistory,
23
+ historyState,
24
+ sendMessage,
25
+ startNewConversation,
26
+ loadMoreHistory,
27
+ resetConversation,
28
+ cancelChat,
29
+ } = useConversation();
30
+
31
+ useEffect(() => {
32
+ !starting && conversations.length === 0 && resetConversation(greeting);
33
+ }, [starting, conversations.length, greeting, resetConversation]);
34
+
35
+ const handleSendMessage = async () => {
36
+ if (!inputValue.trim() || isLoading) {
37
+ return;
38
+ }
39
+ setInputValue("");
40
+ await sendMessage(inputValue.trim());
41
+ };
42
+
43
+ const handleQuestionClick = (question: string) => {
44
+ if (isLoading) {
45
+ return;
46
+ }
47
+ sendMessage(question);
48
+ };
49
+
50
+ return (
51
+ <View className="flex flex-col h-screen bg-primary/10">
52
+ <ChatHeader />
53
+
54
+ <ChatMessages
55
+ conversations={conversations}
56
+ isLoading={isLoading}
57
+ isLoadingHistory={isLoadingHistory}
58
+ hasMoreHistory={historyState.hasMore}
59
+ onLoadMore={!starting ? undefined : loadMoreHistory}
60
+ />
61
+
62
+ <ChatInput
63
+ conversations={conversations}
64
+ isLoading={isLoading}
65
+ starting={starting}
66
+ inputValue={inputValue}
67
+ onInputChange={setInputValue}
68
+ onInputAppend={(text) => setInputValue((prev) => prev + text)}
69
+ onSendMessage={handleSendMessage}
70
+ onNewConversation={startNewConversation}
71
+ onCancel={cancelChat}
72
+ recommendedQuestions={recommendedQuestions}
73
+ onQuestionClick={handleQuestionClick}
74
+ />
75
+ </View>
76
+ );
77
+ };
78
+
79
+ const AIAssistantPage: React.FC<AIAssistantProps> = (props) => {
80
+ return <AIAssistantInner {...props} />;
81
+ };
82
+
83
+ export default AIAssistantPage;
@@ -0,0 +1,74 @@
1
+ export type Role = "user" | "assistant" | "system";
2
+
3
+ interface BaseMessage {
4
+ messageId: string;
5
+ role?: Role;
6
+ kind: string; // 'message' | 'status-update' | 'text-content' 等
7
+ timestamp?: string;
8
+ }
9
+
10
+ export interface TextMessage extends BaseMessage {
11
+ kind: "text-content" | "message";
12
+ content: string; // 最终拼接后的文本
13
+ }
14
+
15
+ export interface ErrorMessage extends BaseMessage {
16
+ kind: "error";
17
+ content: string; // 错误信息文本
18
+ }
19
+
20
+ export interface ThoughtMessage extends BaseMessage {
21
+ kind: "thought";
22
+ thought: string; // 逐步累积的 thinking 内容
23
+ }
24
+
25
+ export interface ToolMessage extends BaseMessage {
26
+ kind: "tool";
27
+ toolName?: string;
28
+ toolStatus?: string;
29
+ toolDescription?: string;
30
+ }
31
+
32
+ export interface UIRenderMessage extends BaseMessage {
33
+ kind: "ui-render";
34
+ spec: {
35
+ root: string;
36
+ elements: Record<
37
+ string,
38
+ {
39
+ type: string;
40
+ props?: Record<string, unknown>;
41
+ children?: string[];
42
+ }
43
+ >;
44
+ };
45
+ }
46
+
47
+ export type MessagesItem =
48
+ | TextMessage
49
+ | ThoughtMessage
50
+ | ToolMessage
51
+ | UIRenderMessage
52
+ | BaseMessage;
53
+
54
+ export interface Conversation {
55
+ taskId: string;
56
+ status: "submitted" | "working" | "completed" | "error";
57
+ messages: MessagesItem[];
58
+ lastUpdated: string;
59
+ historyId?: string;
60
+ system?: {
61
+ level: "newConversation";
62
+ content?: string;
63
+ };
64
+ }
65
+
66
+ export interface Position {
67
+ x: number;
68
+ y: number;
69
+ }
70
+
71
+ export interface AIAssistantProps {
72
+ welcome?: string;
73
+ recommendedQuestions?: string[];
74
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@amaster.ai/components-templates",
3
- "version": "1.5.0",
3
+ "version": "1.8.0",
4
4
  "description": "Amaster component templates collection",
5
5
  "type": "module",
6
6
  "main": "index.js",
@@ -31,7 +31,10 @@
31
31
  "version:major": "npm version major",
32
32
  "sync:ai-assistant": "cp -rf ../template/src/components/ai-assistant/ ./components/ai-assistant/template/",
33
33
  "sync:package-json": "cp ../template/package.json ./components/ai-assistant/package.json",
34
- "sync": "npm run sync:ai-assistant && npm run sync:package-json"
34
+ "sync": "npm run sync:ai-assistant && npm run sync:package-json",
35
+ "sync:taro:ai-assistant": "cp -rf ../template-taro/src/pages/ai-assistant/ ./components/ai-assistant-taro/template/",
36
+ "sync:taro:package-json": "cp ../template-taro/package.json ./components/ai-assistant-taro/package.json",
37
+ "sync:taro": "npm run sync:taro:ai-assistant && npm run sync:taro:package-json"
35
38
  },
36
39
  "keywords": [
37
40
  "amaster",
@@ -37,6 +37,14 @@ async function getComponentConfig(componentName) {
37
37
  }
38
38
  return await fs.readJson(configPath);
39
39
  }
40
+ async function getAmasterConfig(componentName) {
41
+ const componentsDir = getComponentsDir();
42
+ const configPath = path.join(componentsDir, componentName, "amaster.config.json");
43
+ if (!fs.existsSync(configPath)) {
44
+ return null;
45
+ }
46
+ return await fs.readJson(configPath);
47
+ }
40
48
  function detectPackageManager(targetDir) {
41
49
  if (fs.existsSync(path.join(targetDir, "pnpm-lock.yaml"))) {
42
50
  return "pnpm";
@@ -283,9 +291,10 @@ cli
283
291
  }
284
292
  const { component, subPath } = parseComponentRef(selectedRef);
285
293
  const config = await getComponentConfig(component);
294
+ const amasterConfig = await getAmasterConfig(component);
286
295
  const defaultTargetDir = subPath
287
296
  ? "src/components"
288
- : config?.template?.targetDir || `src/components/${component}`;
297
+ : amasterConfig?.targetDir || config?.template?.targetDir || `src/components/${component}`;
289
298
  let targetDir;
290
299
  if (options.dir) {
291
300
  targetDir = options.dir;
@@ -324,6 +333,7 @@ cli
324
333
  .command("info <component>", "Show component template information")
325
334
  .action(async (component) => {
326
335
  const config = await getComponentConfig(component);
336
+ const amasterConfig = await getAmasterConfig(component);
327
337
  if (!config) {
328
338
  console.log(chalk.red(`Component '${component}' not found.`));
329
339
  process.exit(1);
@@ -332,8 +342,9 @@ cli
332
342
  console.log(chalk.gray("━".repeat(40)));
333
343
  console.log(chalk.white(`Version: ${config.version || "1.0.0"}`));
334
344
  console.log(chalk.white(`Description: ${config.description || "No description"}`));
335
- if (config.template?.targetDir) {
336
- console.log(chalk.white(`Default target: ${config.template.targetDir}`));
345
+ const targetDir = amasterConfig?.targetDir || config.template?.targetDir;
346
+ if (targetDir) {
347
+ console.log(chalk.white(`Default target: ${targetDir}`));
337
348
  }
338
349
  console.log(chalk.yellow("\nAvailable paths:"));
339
350
  const componentsDir = getComponentsDir();
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAE3C,MAAM,OAAO,GAAG,OAAO,CAAC;AAExB,SAAS,gBAAgB;IACvB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,qBAAqB,CAAC,CAAC;IAC/D,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAAC;IAE7D,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,KAAK,UAAU,sBAAsB;IACnC,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAC;IAEzC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QAClC,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IACzE,OAAO,OAAO;SACX,MAAM,CAAC,CAAC,KAAa,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;SAC9C,GAAG,CAAC,CAAC,KAAa,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AACxC,CAAC;AAED,KAAK,UAAU,kBAAkB,CAAC,aAAqB;IACrD,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAC;IACzC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,aAAa,EAAE,cAAc,CAAC,CAAC;IAE3E,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,MAAM,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;AACvC,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,aAAqB;IACnD,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAC;IACzC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,aAAa,EAAE,qBAAqB,CAAC,CAAC;IAElF,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,MAAM,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;AACvC,CAAC;AAED,SAAS,oBAAoB,CAAC,SAAiB;IAC7C,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC,EAAE,CAAC;QAC1D,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC;QACrD,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,mBAAmB,CAAC,CAAC,EAAE,CAAC;QAC7D,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,KAAK,UAAU,qBAAqB,CAAC,QAAgB;IACnD,IAAI,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAExC,OAAO,UAAU,KAAK,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/C,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;QAC9D,IAAI,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;YACnC,OAAO,eAAe,CAAC;QACzB,CAAC;QACD,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IACxC,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,KAAK,UAAU,iBAAiB,CAC9B,gBAAwB,EACxB,aAAqB;IAErB,MAAM,YAAY,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IACzD,MAAM,SAAS,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IAEnD,MAAM,QAAQ,GAAG;QACf,cAAc;QACd,iBAAiB;QACjB,kBAAkB;KACV,CAAC;IACX,IAAI,UAAU,GAAG,KAAK,CAAC;IAEvB,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,IAAI,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1B,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;gBACxB,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;YAC1B,CAAC;YAED,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;gBACpE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,OAAO,EAAE,CAAC;oBACtE,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;oBACnC,UAAU,GAAG,IAAI,CAAC;gBACpB,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,EAAE,CAAC,SAAS,CAAC,aAAa,EAAE,SAAS,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;AAChE,CAAC;AAED,KAAK,UAAU,mBAAmB,CAAC,SAAiB;IAClD,MAAM,cAAc,GAAG,oBAAoB,CAAC,SAAS,CAAC,CAAC;IAEvD,MAAM,OAAO,GAAG,GAAG,CACjB,gCAAgC,cAAc,KAAK,CACpD,CAAC,KAAK,EAAE,CAAC;IAEV,IAAI,CAAC;QACH,QAAQ,CAAC,GAAG,cAAc,UAAU,EAAE;YACpC,GAAG,EAAE,SAAS;YACd,KAAK,EAAE,MAAM;SACd,CAAC,CAAC;QACH,OAAO,CAAC,OAAO,CACb,KAAK,CAAC,KAAK,CAAC,+BAA+B,cAAc,EAAE,CAAC,CAC7D,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC,CAAC;QAC1D,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED,KAAK,UAAU,oBAAoB,CAAC,SAAiB;IACnD,MAAM,QAAQ,GAAG;QACf,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE;QAC3B,iCAAiC;KAClC,CAAC;IAEF,KAAK,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,QAAQ,EAAE,CAAC;QACrC,IAAI,CAAC;YACH,QAAQ,CAAC,GAAG,GAAG,UAAU,EAAE;gBACzB,GAAG,EAAE,SAAS;gBACd,KAAK,EAAE,MAAM;aACd,CAAC,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,IAAI,oBAAoB,CAAC,CAAC,CAAC;QAC1D,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IACZ,CAAC;AACH,CAAC;AAQD,KAAK,UAAU,YAAY,CACzB,UAAkB,EAClB,QAAgB,EAChB,UAAuB,EAAE;IAEzB,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAEvC,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;QACvB,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC7B,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAC7C,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,MAAM,YAAY,CAChB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,EAC5B,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,EAC1B,OAAO,CACR,CAAC;QACJ,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;QAC3D,IAAI,aAAa,GAAG,QAAQ,CAAC;QAE7B,IAAI,QAAQ,EAAE,WAAW,EAAE,EAAE,CAAC;YAC5B,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;QACjE,CAAC;aAAM,CAAC;YACN,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC7C,CAAC;QAED,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;YACvC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,qBAAqB,aAAa,EAAE,CAAC,CAAC,CAAC;QAC/D,CAAC;QACD,MAAM,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;IAC3C,CAAC;AACH,CAAC;AAED,KAAK,UAAU,mBAAmB,CAAC,aAAqB;IACtD,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAC;IACzC,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,aAAa,EAAE,YAAY,CAAC,CAAC;IAE1E,IAAI,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAC/B,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QACxD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC;QACjD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAClC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,KAAK,UAAU,aAAa,CAC1B,YAAoB,EACpB,SAAiB,EACjB,UAAuB,EAAE;IAEzB,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAC;IAEzC,MAAM,CAAC,aAAa,EAAE,GAAG,YAAY,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACjE,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAEvC,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;IACxE,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAChC,aAAa,EACb,aAAa,EACb,cAAc,CACf,CAAC;IAEF,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,qCAAqC,aAAa,EAAE,CAAC,CAAC;IACxE,CAAC;IAED,MAAM,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;IAE3E,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,mBAAmB,YAAY,EAAE,CAAC,CAAC;IACrD,CAAC;IAED,MAAM,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAElD,MAAM,OAAO,GAAG,GAAG,CACjB,OAAO;QACL,CAAC,CAAC,gBAAgB,YAAY,KAAK;QACnC,CAAC,CAAC,gBAAgB,aAAa,KAAK,CACvC,CAAC,KAAK,EAAE,CAAC;IAER,IAAI,CAAC;QACH,IAAI,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;YACtD,OAAO,CAAC,IAAI,GAAG,YAAY,iBAAiB,KAAK,CAAC;YAClD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,8BAA8B,iBAAiB,EAAE,CAAC,CAAC,CAAC;YAC7E,MAAM,EAAE,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;QACrC,CAAC;QAED,MAAM,YAAY,CAAC,UAAU,EAAE,iBAAiB,EAAE,OAAO,CAAC,CAAC;QAE7D,OAAO,CAAC,OAAO,CACb,KAAK,CAAC,KAAK,CACT,OAAO;YACL,CAAC,CAAC,GAAG,YAAY,4BAA4B;YAC7C,CAAC,CAAC,GAAG,aAAa,4BAA4B,CACjD,CACF,CAAC;QAEF,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAChD,MAAM,aAAa,GAAG,MAAM,qBAAqB,CAAC,iBAAiB,CAAC,CAAC;YAErE,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;gBAE9C,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,iBAAiB,CAC5C,gBAAgB,EAChB,aAAa,CACd,CAAC;gBAEF,IAAI,UAAU,EAAE,CAAC;oBACf,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC,CAAC;oBACpE,MAAM,oBAAoB,CAAC,SAAS,CAAC,CAAC;gBACxC,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,CAAC;gBACjE,CAAC;gBAED,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;oBACzB,MAAM,mBAAmB,CAAC,SAAS,CAAC,CAAC;gBACvC,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,MAAM,CAAC,6CAA6C,CAAC,CAC5D,CAAC;gBACF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC,CAAC;gBACnE,MAAM,YAAY,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;gBACzD,IAAI,YAAY,CAAC,YAAY,EAAE,CAAC;oBAC9B,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,OAAO,CAC/C,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,EAAE;wBAClB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,OAAO,EAAE,CAAC,CAAC,CAAC;oBAClD,CAAC,CACF,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QAED,4CAA4C;IAC9C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,wBAAwB,YAAY,EAAE,CAAC,CAAC,CAAC;QAChE,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAa;IAItC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC/B,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAC3B,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC;IACtD,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;AAChC,CAAC;AAED,MAAM,GAAG,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC;AAE3B,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;AAErB,GAAG;KACA,OAAO,CAAC,MAAM,EAAE,wCAAwC,CAAC;KACzD,KAAK,CAAC,IAAI,CAAC;KACX,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,MAAM,UAAU,GAAG,MAAM,sBAAsB,EAAE,CAAC;IAElD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,mCAAmC,CAAC,CAAC,CAAC;QAC/D,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC,CAAC;IAE9D,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,SAAS,CAAC,CAAC;QACnD,MAAM,WAAW,GAAG,MAAM,EAAE,WAAW,IAAI,gBAAgB,CAAC;QAC5D,MAAM,OAAO,GAAG,MAAM,EAAE,OAAO,IAAI,OAAO,CAAC;QAE3C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC;QACvE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,WAAW,IAAI,CAAC,CAAC,CAAC;IAClD,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,GAAG;KACA,OAAO,CAAC,kBAAkB,EAAE,gDAAgD,CAAC;KAC7E,MAAM,CAAC,iBAAiB,EAAE,kBAAkB,CAAC;KAC7C,MAAM,CAAC,gBAAgB,EAAE,8BAA8B,CAAC;KACxD,MAAM,CAAC,SAAS,EAAE,uCAAuC,CAAC;KAC1D,OAAO,CAAC,2BAA2B,CAAC;KACpC,OAAO,CAAC,yDAAyD,CAAC;KAClE,OAAO,CAAC,6DAA6D,CAAC;KACtE,OAAO,CAAC,0EAA0E,CAAC;KACjF,MAAM,CACP,KAAK,EACH,YAAoB,EACpB,OAAiE,EACjE,EAAE;IACF,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,MAAM,sBAAsB,EAAE,CAAC;QAElD,IAAI,WAAW,GAAG,YAAY,CAAC;QAE/B,IACE,CAAC,YAAY;YACb,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EACnD,CAAC;YACD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC5B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC,CAAC;gBAC5D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,MAAM,iBAAiB,GAAG,MAAM,OAAO,CAAC;gBACtC,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE,8BAA8B;gBACvC,OAAO,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBAC9B,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,CAAC;iBACT,CAAC,CAAC;aACJ,CAAC,CAAC;YAEH,IAAI,CAAC,iBAAiB,CAAC,SAAS,EAAE,CAAC;gBACjC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;gBACxC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,MAAM,eAAe,GAAG,MAAM,OAAO,CAAC;gBACpC,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,iDAAiD;gBAC1D,OAAO,EAAE,EAAE;aACZ,CAAC,CAAC;YAEH,WAAW,GAAG,eAAe,CAAC,OAAO;gBACnC,CAAC,CAAC,GAAG,iBAAiB,CAAC,SAAS,IAAI,eAAe,CAAC,OAAO,EAAE;gBAC7D,CAAC,CAAC,iBAAiB,CAAC,SAAS,CAAC;QAClC,CAAC;QAED,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;QAC9D,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,SAAS,CAAC,CAAC;QACnD,MAAM,aAAa,GAAG,MAAM,gBAAgB,CAAC,SAAS,CAAC,CAAC;QAExD,MAAM,gBAAgB,GAAG,OAAO;YAC9B,CAAC,CAAC,gBAAgB;YAClB,CAAC,CAAC,aAAa,EAAE,SAAS,IAAI,MAAM,EAAE,QAAQ,EAAE,SAAS,IAAI,kBAAkB,SAAS,EAAE,CAAC;QAE7F,IAAI,SAAiB,CAAC;QACtB,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;YAChB,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC;QAC1B,CAAC;aAAM,CAAC;YACN,SAAS,GAAG,OAAO;gBACjB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;gBACrD,CAAC,CAAC,gBAAgB,CAAC;QACvB,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACnC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC;gBAC7B,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,KAAK;gBACX,OAAO,EAAE,mBAAmB;gBAC5B,OAAO,EAAE,SAAS;aACnB,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;gBAClB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;gBACxC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC;QAC3B,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,kBAAkB,WAAW,OAAO,SAAS,OAAO,CAAC,CAAC,CAAC;QAE9E,MAAM,aAAa,CAAC,WAAW,EAAE,SAAS,EAAE;YAC1C,KAAK,EAAE,IAAI;YACX,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,IAAI;YACxC,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,KAAK;SAC9B,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CACX,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,EACnB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAC/C,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CACF,CAAC;AAEJ,GAAG;KACA,OAAO,CAAC,kBAAkB,EAAE,qCAAqC,CAAC;KAClE,MAAM,CAAC,KAAK,EAAE,SAAiB,EAAE,EAAE;IAClC,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,SAAS,CAAC,CAAC;IACnD,MAAM,aAAa,GAAG,MAAM,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAExD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,SAAS,cAAc,CAAC,CAAC,CAAC;QAC9D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC,CAAC,CAAC;IAC1C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACxC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,MAAM,CAAC,OAAO,IAAI,OAAO,EAAE,CAAC,CAAC,CAAC;IAClE,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,KAAK,CAAC,gBAAgB,MAAM,CAAC,WAAW,IAAI,gBAAgB,EAAE,CAAC,CACtE,CAAC;IAEF,MAAM,SAAS,GAAG,aAAa,EAAE,SAAS,IAAI,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC;IACzE,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,mBAAmB,SAAS,EAAE,CAAC,CAAC,CAAC;IAC3D,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC;IAChD,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAC;IACzC,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;IAEpE,IAAI,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAC/B,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1E,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACrC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;QACH,IAAI,OAAO,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;YACxB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,OAAO,CAAC,MAAM,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC;QACnE,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC;QAC7C,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,EAAE;YAC9D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,OAAO,EAAE,CAAC,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;IACL,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC;AAEL,GAAG,CAAC,IAAI,EAAE,CAAC;AACX,GAAG,CAAC,KAAK,EAAE,CAAC"}