sa2kit 1.6.69 → 1.6.70
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.
- package/dist/festivalCard/core/index.d.mts +1 -1
- package/dist/festivalCard/core/index.d.ts +1 -1
- package/dist/festivalCard/index.d.mts +3 -3
- package/dist/festivalCard/index.d.ts +3 -3
- package/dist/festivalCard/index.js +161 -0
- package/dist/festivalCard/index.js.map +1 -1
- package/dist/festivalCard/index.mjs +160 -1
- package/dist/festivalCard/index.mjs.map +1 -1
- package/dist/festivalCard/miniapp/index.d.mts +3 -3
- package/dist/festivalCard/miniapp/index.d.ts +3 -3
- package/dist/festivalCard/miniapp/index.js +30 -0
- package/dist/festivalCard/miniapp/index.js.map +1 -1
- package/dist/festivalCard/miniapp/index.mjs +30 -0
- package/dist/festivalCard/miniapp/index.mjs.map +1 -1
- package/dist/festivalCard/routes/index.d.mts +44 -0
- package/dist/festivalCard/routes/index.d.ts +44 -0
- package/dist/festivalCard/routes/index.js +266 -0
- package/dist/festivalCard/routes/index.js.map +1 -0
- package/dist/festivalCard/routes/index.mjs +261 -0
- package/dist/festivalCard/routes/index.mjs.map +1 -0
- package/dist/festivalCard/server/index.d.mts +1 -1
- package/dist/festivalCard/server/index.d.ts +1 -1
- package/dist/festivalCard/web/index.d.mts +18 -4
- package/dist/festivalCard/web/index.d.ts +18 -4
- package/dist/festivalCard/web/index.js +161 -0
- package/dist/festivalCard/web/index.js.map +1 -1
- package/dist/festivalCard/web/index.mjs +160 -1
- package/dist/festivalCard/web/index.mjs.map +1 -1
- package/dist/{festivalCardService-uSg0oNuD.d.mts → festivalCardService-CgNBOjjO.d.mts} +3 -1
- package/dist/{festivalCardService-C0fhTezx.d.ts → festivalCardService-ClJiAP6P.d.ts} +3 -1
- package/dist/index.d.mts +3 -3
- package/dist/index.d.ts +3 -3
- package/dist/index.js +161 -0
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +160 -1
- package/dist/index.mjs.map +1 -1
- package/dist/{types-B-tjQTGi.d.mts → types-COyg0XDw.d.mts} +7 -1
- package/dist/{types-B-tjQTGi.d.ts → types-COyg0XDw.d.ts} +7 -1
- package/package.json +6 -1
package/dist/index.mjs
CHANGED
|
@@ -7641,6 +7641,8 @@ var FestivalCardConfigEditor = ({ value, onChange }) => {
|
|
|
7641
7641
|
}
|
|
7642
7642
|
))))) : null);
|
|
7643
7643
|
};
|
|
7644
|
+
|
|
7645
|
+
// src/festivalCard/components/FestivalCardStudio.tsx
|
|
7644
7646
|
var FestivalCardStudio = ({ initialConfig, fetchConfig, onSave }) => {
|
|
7645
7647
|
const { config, setConfig, loading, save, saving } = useFestivalCardConfig({
|
|
7646
7648
|
initialConfig: normalizeFestivalCardConfig(initialConfig),
|
|
@@ -7660,6 +7662,133 @@ var FestivalCardStudio = ({ initialConfig, fetchConfig, onSave }) => {
|
|
|
7660
7662
|
) : null));
|
|
7661
7663
|
};
|
|
7662
7664
|
|
|
7665
|
+
// src/festivalCard/components/FestivalCardConfigPage.tsx
|
|
7666
|
+
var FestivalCardConfigPage = ({
|
|
7667
|
+
apiBase = "/api/festivalCard",
|
|
7668
|
+
cardId,
|
|
7669
|
+
mainPagePath = "/festivalCard"
|
|
7670
|
+
}) => {
|
|
7671
|
+
const [list, setList] = useState([]);
|
|
7672
|
+
const [selectedId, setSelectedId] = useState(cardId || "default-festival-card");
|
|
7673
|
+
const parseListResponse2 = (data) => {
|
|
7674
|
+
if (!data || typeof data !== "object") return [];
|
|
7675
|
+
const payload = data.data;
|
|
7676
|
+
if (!Array.isArray(payload)) return [];
|
|
7677
|
+
return payload.filter((item) => Boolean(item && typeof item === "object" && typeof item.id === "string")).map((item) => ({ id: item.id, name: item.name }));
|
|
7678
|
+
};
|
|
7679
|
+
const parseConfigResponse2 = (data) => {
|
|
7680
|
+
if (!data || typeof data !== "object") return normalizeFestivalCardConfig();
|
|
7681
|
+
const payload = data.data;
|
|
7682
|
+
if (!payload || typeof payload !== "object") return normalizeFestivalCardConfig();
|
|
7683
|
+
return normalizeFestivalCardConfig(payload);
|
|
7684
|
+
};
|
|
7685
|
+
const reloadList = useCallback(async () => {
|
|
7686
|
+
const response = await fetch(apiBase, { cache: "no-store" });
|
|
7687
|
+
const data = await response.json();
|
|
7688
|
+
setList(parseListResponse2(data));
|
|
7689
|
+
}, [apiBase]);
|
|
7690
|
+
useEffect(() => {
|
|
7691
|
+
void reloadList();
|
|
7692
|
+
}, [reloadList]);
|
|
7693
|
+
const fetchConfig = async () => {
|
|
7694
|
+
const response = await fetch(`${apiBase}/${encodeURIComponent(selectedId)}`, { cache: "no-store" });
|
|
7695
|
+
const data = await response.json();
|
|
7696
|
+
return parseConfigResponse2(data);
|
|
7697
|
+
};
|
|
7698
|
+
const saveConfig = async (config) => {
|
|
7699
|
+
await fetch(`${apiBase}/${encodeURIComponent(selectedId)}`, {
|
|
7700
|
+
method: "PUT",
|
|
7701
|
+
headers: { "Content-Type": "application/json" },
|
|
7702
|
+
body: JSON.stringify({ config })
|
|
7703
|
+
});
|
|
7704
|
+
await reloadList();
|
|
7705
|
+
};
|
|
7706
|
+
const createNew = async () => {
|
|
7707
|
+
const name = window.prompt("\u8BF7\u8F93\u5165\u65B0\u5361\u7247\u540D\u79F0");
|
|
7708
|
+
if (!name) return;
|
|
7709
|
+
const id = `festival-${Date.now()}`;
|
|
7710
|
+
const config = normalizeFestivalCardConfig({
|
|
7711
|
+
id,
|
|
7712
|
+
name
|
|
7713
|
+
});
|
|
7714
|
+
await fetch(`${apiBase}/${encodeURIComponent(id)}`, {
|
|
7715
|
+
method: "PUT",
|
|
7716
|
+
headers: { "Content-Type": "application/json" },
|
|
7717
|
+
body: JSON.stringify({ config })
|
|
7718
|
+
});
|
|
7719
|
+
setSelectedId(id);
|
|
7720
|
+
await reloadList();
|
|
7721
|
+
};
|
|
7722
|
+
const mainLink = useMemo(() => `${mainPagePath}?cardId=${encodeURIComponent(selectedId)}`, [mainPagePath, selectedId]);
|
|
7723
|
+
return /* @__PURE__ */ React42__default.createElement("div", { style: { display: "grid", gap: 12 } }, /* @__PURE__ */ React42__default.createElement("div", { style: { display: "flex", gap: 10, alignItems: "center" } }, /* @__PURE__ */ React42__default.createElement("select", { value: selectedId, onChange: (event) => setSelectedId(event.target.value) }, list.map((item) => /* @__PURE__ */ React42__default.createElement("option", { key: item.id, value: item.id }, item.name || item.id))), /* @__PURE__ */ React42__default.createElement("button", { type: "button", onClick: () => void createNew() }, "\u65B0\u5EFA\u5361\u7247"), /* @__PURE__ */ React42__default.createElement("a", { href: mainLink, style: { color: "#2563eb", fontSize: 14 } }, "\u6253\u5F00\u4E3B\u9875\u9762")), /* @__PURE__ */ React42__default.createElement(FestivalCardStudio, { fetchConfig, onSave: saveConfig }));
|
|
7724
|
+
};
|
|
7725
|
+
var isSummary = (value) => {
|
|
7726
|
+
if (!value || typeof value !== "object") return false;
|
|
7727
|
+
return typeof value.id === "string";
|
|
7728
|
+
};
|
|
7729
|
+
var parseListResponse = (data) => {
|
|
7730
|
+
if (!data || typeof data !== "object") return [];
|
|
7731
|
+
const payload = data.data;
|
|
7732
|
+
if (!Array.isArray(payload)) return [];
|
|
7733
|
+
return payload.filter(isSummary).map((item) => ({ id: item.id, name: item.name }));
|
|
7734
|
+
};
|
|
7735
|
+
var parseConfigResponse = (data) => {
|
|
7736
|
+
if (!data || typeof data !== "object") return null;
|
|
7737
|
+
const payload = data.data;
|
|
7738
|
+
if (!payload || typeof payload !== "object") return null;
|
|
7739
|
+
if (!Array.isArray(payload.pages)) return null;
|
|
7740
|
+
return payload;
|
|
7741
|
+
};
|
|
7742
|
+
var FestivalCardManagedPage = ({
|
|
7743
|
+
apiBase = "/api/festivalCard",
|
|
7744
|
+
cardId,
|
|
7745
|
+
configPagePath = "/festivalCard/config"
|
|
7746
|
+
}) => {
|
|
7747
|
+
const [list, setList] = useState([]);
|
|
7748
|
+
const [currentCardId, setCurrentCardId] = useState(cardId || "");
|
|
7749
|
+
const [config, setConfig] = useState(null);
|
|
7750
|
+
const [loading, setLoading] = useState(true);
|
|
7751
|
+
useEffect(() => {
|
|
7752
|
+
const fetchList = async () => {
|
|
7753
|
+
const response = await fetch(apiBase, { cache: "no-store" });
|
|
7754
|
+
const data = await response.json();
|
|
7755
|
+
const items = parseListResponse(data);
|
|
7756
|
+
setList(items);
|
|
7757
|
+
const first = items[0];
|
|
7758
|
+
if (!currentCardId && first) {
|
|
7759
|
+
setCurrentCardId(first.id);
|
|
7760
|
+
}
|
|
7761
|
+
};
|
|
7762
|
+
void fetchList();
|
|
7763
|
+
}, [apiBase, currentCardId]);
|
|
7764
|
+
useEffect(() => {
|
|
7765
|
+
if (!currentCardId) return;
|
|
7766
|
+
setLoading(true);
|
|
7767
|
+
void fetch(`${apiBase}/${encodeURIComponent(currentCardId)}`, { cache: "no-store" }).then((res) => res.json()).then((data) => setConfig(parseConfigResponse(data))).finally(() => setLoading(false));
|
|
7768
|
+
}, [apiBase, currentCardId]);
|
|
7769
|
+
const configLink = useMemo(() => {
|
|
7770
|
+
if (!currentCardId) return configPagePath;
|
|
7771
|
+
return `${configPagePath}?cardId=${encodeURIComponent(currentCardId)}`;
|
|
7772
|
+
}, [configPagePath, currentCardId]);
|
|
7773
|
+
return /* @__PURE__ */ React42__default.createElement("div", { style: { display: "grid", gridTemplateColumns: "240px 1fr", gap: 14 } }, /* @__PURE__ */ React42__default.createElement("aside", { style: { borderRadius: 16, padding: 12, background: "#0f172a", color: "#e2e8f0" } }, /* @__PURE__ */ React42__default.createElement("div", { style: { fontSize: 14, marginBottom: 8 } }, "\u5361\u7247\u5217\u8868"), /* @__PURE__ */ React42__default.createElement("div", { style: { display: "grid", gap: 8 } }, list.map((item) => /* @__PURE__ */ React42__default.createElement(
|
|
7774
|
+
"button",
|
|
7775
|
+
{
|
|
7776
|
+
key: item.id,
|
|
7777
|
+
type: "button",
|
|
7778
|
+
onClick: () => setCurrentCardId(item.id),
|
|
7779
|
+
style: {
|
|
7780
|
+
borderRadius: 8,
|
|
7781
|
+
border: "1px solid #334155",
|
|
7782
|
+
padding: "8px 10px",
|
|
7783
|
+
textAlign: "left",
|
|
7784
|
+
background: currentCardId === item.id ? "#1e293b" : "#0b1220",
|
|
7785
|
+
color: "#e2e8f0"
|
|
7786
|
+
}
|
|
7787
|
+
},
|
|
7788
|
+
item.name || item.id
|
|
7789
|
+
))), /* @__PURE__ */ React42__default.createElement("a", { href: configLink, style: { display: "inline-block", marginTop: 12, color: "#93c5fd", fontSize: 13 } }, "\u8FDB\u5165\u914D\u7F6E\u9875")), /* @__PURE__ */ React42__default.createElement("div", null, loading || !config ? /* @__PURE__ */ React42__default.createElement("div", null, "\u52A0\u8F7D\u4E2D...") : /* @__PURE__ */ React42__default.createElement(FestivalCardBook3D, { config })));
|
|
7790
|
+
};
|
|
7791
|
+
|
|
7663
7792
|
// src/festivalCard/server/db.ts
|
|
7664
7793
|
var dbAdapter = null;
|
|
7665
7794
|
var getFestivalCardDb = () => dbAdapter;
|
|
@@ -7669,6 +7798,16 @@ var FestivalCardService = class {
|
|
|
7669
7798
|
constructor(options) {
|
|
7670
7799
|
this.db = options?.db || getFestivalCardDb();
|
|
7671
7800
|
}
|
|
7801
|
+
async listConfigs() {
|
|
7802
|
+
if (!this.db) {
|
|
7803
|
+
return [{ id: DEFAULT_FESTIVAL_CARD_CONFIG.id || "default-festival-card", name: DEFAULT_FESTIVAL_CARD_CONFIG.name }];
|
|
7804
|
+
}
|
|
7805
|
+
if (this.db.listConfigs) {
|
|
7806
|
+
const list = await this.db.listConfigs();
|
|
7807
|
+
return list.length > 0 ? list : [{ id: DEFAULT_FESTIVAL_CARD_CONFIG.id || "default-festival-card", name: DEFAULT_FESTIVAL_CARD_CONFIG.name }];
|
|
7808
|
+
}
|
|
7809
|
+
return [{ id: DEFAULT_FESTIVAL_CARD_CONFIG.id || "default-festival-card", name: DEFAULT_FESTIVAL_CARD_CONFIG.name }];
|
|
7810
|
+
}
|
|
7672
7811
|
async getConfig(cardId = "default-festival-card") {
|
|
7673
7812
|
if (!this.db) return DEFAULT_FESTIVAL_CARD_CONFIG;
|
|
7674
7813
|
const config = await this.db.getConfig(cardId);
|
|
@@ -7680,15 +7819,35 @@ var FestivalCardService = class {
|
|
|
7680
7819
|
await this.db.saveConfig(cardId, normalized);
|
|
7681
7820
|
return normalized;
|
|
7682
7821
|
}
|
|
7822
|
+
async deleteConfig(cardId) {
|
|
7823
|
+
if (!this.db?.deleteConfig) return;
|
|
7824
|
+
await this.db.deleteConfig(cardId);
|
|
7825
|
+
}
|
|
7683
7826
|
};
|
|
7684
7827
|
var memoryStore = /* @__PURE__ */ new Map();
|
|
7828
|
+
var defaultId = DEFAULT_FESTIVAL_CARD_CONFIG.id || "default-festival-card";
|
|
7829
|
+
if (!memoryStore.has(defaultId)) {
|
|
7830
|
+
memoryStore.set(defaultId, DEFAULT_FESTIVAL_CARD_CONFIG);
|
|
7831
|
+
}
|
|
7685
7832
|
var createInMemoryFestivalCardDb = () => ({
|
|
7833
|
+
listConfigs() {
|
|
7834
|
+
return Promise.resolve(
|
|
7835
|
+
Array.from(memoryStore.entries()).map(([id, config]) => ({
|
|
7836
|
+
id,
|
|
7837
|
+
name: config.name || id
|
|
7838
|
+
}))
|
|
7839
|
+
);
|
|
7840
|
+
},
|
|
7686
7841
|
getConfig(id) {
|
|
7687
7842
|
return Promise.resolve(memoryStore.get(id) || null);
|
|
7688
7843
|
},
|
|
7689
7844
|
saveConfig(id, config) {
|
|
7690
7845
|
memoryStore.set(id, config);
|
|
7691
7846
|
return Promise.resolve();
|
|
7847
|
+
},
|
|
7848
|
+
deleteConfig(id) {
|
|
7849
|
+
memoryStore.delete(id);
|
|
7850
|
+
return Promise.resolve();
|
|
7692
7851
|
}
|
|
7693
7852
|
});
|
|
7694
7853
|
|
|
@@ -8045,6 +8204,6 @@ function useElectronStorage(key, defaultValue) {
|
|
|
8045
8204
|
return useStorage(electronStorage, key, defaultValue);
|
|
8046
8205
|
}
|
|
8047
8206
|
|
|
8048
|
-
export { About_default as About, Dialog as AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, DialogDescription as AlertDialogDescription, DialogFooter as AlertDialogFooter, DialogHeader as AlertDialogHeader, DialogOverlay as AlertDialogOverlay, DialogPortal as AlertDialogPortal, DialogTitle as AlertDialogTitle, DialogTrigger as AlertDialogTrigger, AutoOpenModal, Avatar, AvatarFallback, AvatarImage, BackButton, BackgroundRemover, Badge, Button, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, CategoryFilter, CollisionBalls, CompletionFilterComponent, ConfirmModal, ConsoleLoggerAdapter, Contact_default as Contact, DANMAKU_MAX_LENGTH, DANMAKU_TRACK_COUNT, DEFAULT_FESTIVAL_CARD_CONFIG, DEFAULT_MAX_ACTIVE_FIREWORKS, DEFAULT_MAX_PARTICLES, DEFAULT_OPENAI_BASE_URL, DEFAULT_OPENAI_MODEL, DanmakuPanel, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DraggableExperimentGrid, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmptyState, EnhancedAvatar, ExperimentCard, ExperimentGrid, ExperimentItemGrid, FIREWORK_KIND_LABELS, FestivalCardBook3D, FestivalCardConfigEditor, FestivalCardPageRenderer, FestivalCardService, FestivalCardStudio, FilterButtonGroup, FireworksCanvas, FireworksControlPanel, FloatingMenu_default as FloatingMenu, FloatingMenuExample_default as FloatingMenuExample, GenericOrderManager, Grid, Home_default as Home, ImageMappingPanel, InMemorySkillRegistry, Input, Label, LocalImageMappingPanel, LogLevel, Logger, MIKU_PALETTE, MikuFireworks3D, Modal, NORMAL_PALETTE, Navigation_default as Navigation, NavigationItem_default as NavigationItem, NavigationToggle_default as NavigationToggle, OCRScanner, PageHeader, PermissionGuard, Popover, PopoverAnchor, PopoverContent, PopoverTrigger, ProfileButton, ProfileModal, Progress, ProjectCarousel, ScreenReceiverPanel, ScrollArea, ScrollBar, SearchBox, SearchResultHint, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, SentimentAnalyzer, Separator, Dialog as Sheet, DialogClose as SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, DialogOverlay as SheetOverlay, DialogPortal as SheetPortal, SheetTitle, DialogTrigger as SheetTrigger, SmartAssistant, SortControl, SortModeToggle, SortableExperimentItem, Tabs, TabsContent, TabsList, TabsTrigger, Textarea, Timeline, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, UserInfoBar, WebSocketTransport, applyPromptTemplate, arrayUtils, badgeVariants, buttonVariants, cn, createAiClient, createChatSession, createInMemoryFestivalCardDb, createLogger, createOpenAICompatibleProvider, createSkillRegistry, debugUtils, errorUtils, fileUtils, filterExperiments, formatTime, getAllTags, getCategoryColor, getCategoryDisplayName, getCompletionFilterDisplayName, getCompletionStatusColor, getCompletionStatusText, getExperimentCounts, japaneseUtils, logger, normalizeFestivalCardConfig, normalizePromptVariables, resizeFestivalCardPages, resolveScreenReceiverSignalUrl, skillToToolDefinition, sortExperiments, stringUtils, useAiChat, useAsyncStorage, useBackgroundRemoval, useDanmakuController, useElectronStorage, useFestivalCardConfig, useFireworksEngine, useFireworksRealtime, useLocalStorage, useOCR, useScreenReceiver, useSentimentAnalysis, useStorage, useTaroStorage, useTextGeneration, validateExperiment, validators };
|
|
8207
|
+
export { About_default as About, Dialog as AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, DialogDescription as AlertDialogDescription, DialogFooter as AlertDialogFooter, DialogHeader as AlertDialogHeader, DialogOverlay as AlertDialogOverlay, DialogPortal as AlertDialogPortal, DialogTitle as AlertDialogTitle, DialogTrigger as AlertDialogTrigger, AutoOpenModal, Avatar, AvatarFallback, AvatarImage, BackButton, BackgroundRemover, Badge, Button, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, CategoryFilter, CollisionBalls, CompletionFilterComponent, ConfirmModal, ConsoleLoggerAdapter, Contact_default as Contact, DANMAKU_MAX_LENGTH, DANMAKU_TRACK_COUNT, DEFAULT_FESTIVAL_CARD_CONFIG, DEFAULT_MAX_ACTIVE_FIREWORKS, DEFAULT_MAX_PARTICLES, DEFAULT_OPENAI_BASE_URL, DEFAULT_OPENAI_MODEL, DanmakuPanel, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DraggableExperimentGrid, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EmptyState, EnhancedAvatar, ExperimentCard, ExperimentGrid, ExperimentItemGrid, FIREWORK_KIND_LABELS, FestivalCardBook3D, FestivalCardConfigEditor, FestivalCardConfigPage, FestivalCardManagedPage, FestivalCardPageRenderer, FestivalCardService, FestivalCardStudio, FilterButtonGroup, FireworksCanvas, FireworksControlPanel, FloatingMenu_default as FloatingMenu, FloatingMenuExample_default as FloatingMenuExample, GenericOrderManager, Grid, Home_default as Home, ImageMappingPanel, InMemorySkillRegistry, Input, Label, LocalImageMappingPanel, LogLevel, Logger, MIKU_PALETTE, MikuFireworks3D, Modal, NORMAL_PALETTE, Navigation_default as Navigation, NavigationItem_default as NavigationItem, NavigationToggle_default as NavigationToggle, OCRScanner, PageHeader, PermissionGuard, Popover, PopoverAnchor, PopoverContent, PopoverTrigger, ProfileButton, ProfileModal, Progress, ProjectCarousel, ScreenReceiverPanel, ScrollArea, ScrollBar, SearchBox, SearchResultHint, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, SentimentAnalyzer, Separator, Dialog as Sheet, DialogClose as SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, DialogOverlay as SheetOverlay, DialogPortal as SheetPortal, SheetTitle, DialogTrigger as SheetTrigger, SmartAssistant, SortControl, SortModeToggle, SortableExperimentItem, Tabs, TabsContent, TabsList, TabsTrigger, Textarea, Timeline, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, UserInfoBar, WebSocketTransport, applyPromptTemplate, arrayUtils, badgeVariants, buttonVariants, cn, createAiClient, createChatSession, createInMemoryFestivalCardDb, createLogger, createOpenAICompatibleProvider, createSkillRegistry, debugUtils, errorUtils, fileUtils, filterExperiments, formatTime, getAllTags, getCategoryColor, getCategoryDisplayName, getCompletionFilterDisplayName, getCompletionStatusColor, getCompletionStatusText, getExperimentCounts, japaneseUtils, logger, normalizeFestivalCardConfig, normalizePromptVariables, resizeFestivalCardPages, resolveScreenReceiverSignalUrl, skillToToolDefinition, sortExperiments, stringUtils, useAiChat, useAsyncStorage, useBackgroundRemoval, useDanmakuController, useElectronStorage, useFestivalCardConfig, useFireworksEngine, useFireworksRealtime, useLocalStorage, useOCR, useScreenReceiver, useSentimentAnalysis, useStorage, useTaroStorage, useTextGeneration, validateExperiment, validators };
|
|
8049
8208
|
//# sourceMappingURL=index.mjs.map
|
|
8050
8209
|
//# sourceMappingURL=index.mjs.map
|