@almadar/ui 1.0.1 → 1.0.10
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/chunk-4FRUCUO5.js +14 -0
- package/dist/chunk-7NEWMNNU.js +147 -0
- package/dist/chunk-AQREMI4N.js +426 -0
- package/dist/chunk-BCERHHKU.js +2834 -0
- package/dist/chunk-I5RSZIOE.js +190 -0
- package/dist/chunk-KKCVDUK7.js +104 -0
- package/dist/chunk-N7MVUW4R.js +194 -0
- package/dist/chunk-S7EYY36U.js +13 -0
- package/dist/chunk-TTXKOHDO.js +270 -0
- package/dist/chunk-XSEDIUM6.js +93 -0
- package/dist/components/index.d.ts +44 -6170
- package/dist/components/index.js +210 -26068
- package/dist/context/index.js +6 -342
- package/dist/hooks/index.d.ts +65 -1
- package/dist/hooks/index.js +6 -2267
- package/dist/lib/index.d.ts +144 -1
- package/dist/lib/index.js +677 -189
- package/dist/providers/index.d.ts +1 -1
- package/dist/providers/index.js +8 -912
- package/dist/renderer/index.js +5 -430
- package/dist/stores/index.js +2 -196
- package/package.json +4 -4
- package/dist/components/index.js.map +0 -1
- package/dist/context/index.js.map +0 -1
- package/dist/hooks/index.js.map +0 -1
- package/dist/lib/index.js.map +0 -1
- package/dist/providers/index.js.map +0 -1
- package/dist/renderer/index.js.map +0 -1
- package/dist/stores/index.js.map +0 -1
package/dist/context/index.js
CHANGED
|
@@ -1,344 +1,10 @@
|
|
|
1
|
-
|
|
1
|
+
export { DesignThemeProvider, useDesignTheme } from '../chunk-4FRUCUO5.js';
|
|
2
|
+
export { BUILT_IN_THEMES, ThemeContext_default as ThemeContext, ThemeProvider, UISlotContext, UISlotProvider, useSlotContent, useSlotHasContent, useTheme, useUISlots } from '../chunk-I5RSZIOE.js';
|
|
3
|
+
import '../chunk-7NEWMNNU.js';
|
|
4
|
+
import '../chunk-S7EYY36U.js';
|
|
5
|
+
import { createContext, useCallback, useMemo, useContext } from 'react';
|
|
2
6
|
import { jsx } from 'react/jsx-runtime';
|
|
3
7
|
|
|
4
|
-
// context/UISlotContext.tsx
|
|
5
|
-
var DEFAULT_SLOTS = {
|
|
6
|
-
main: null,
|
|
7
|
-
sidebar: null,
|
|
8
|
-
modal: null,
|
|
9
|
-
drawer: null,
|
|
10
|
-
overlay: null,
|
|
11
|
-
center: null,
|
|
12
|
-
toast: null,
|
|
13
|
-
"hud-top": null,
|
|
14
|
-
"hud-bottom": null,
|
|
15
|
-
floating: null
|
|
16
|
-
};
|
|
17
|
-
var idCounter = 0;
|
|
18
|
-
function generateId() {
|
|
19
|
-
return `slot-content-${++idCounter}-${Date.now()}`;
|
|
20
|
-
}
|
|
21
|
-
function useUISlotManager() {
|
|
22
|
-
const [slots, setSlots] = useState(DEFAULT_SLOTS);
|
|
23
|
-
const subscribersRef = useRef(/* @__PURE__ */ new Set());
|
|
24
|
-
const timersRef = useRef(/* @__PURE__ */ new Map());
|
|
25
|
-
useEffect(() => {
|
|
26
|
-
return () => {
|
|
27
|
-
timersRef.current.forEach((timer) => clearTimeout(timer));
|
|
28
|
-
timersRef.current.clear();
|
|
29
|
-
};
|
|
30
|
-
}, []);
|
|
31
|
-
const notifySubscribers = useCallback((slot, content) => {
|
|
32
|
-
subscribersRef.current.forEach((callback) => {
|
|
33
|
-
try {
|
|
34
|
-
callback(slot, content);
|
|
35
|
-
} catch (error) {
|
|
36
|
-
console.error("[UISlots] Subscriber error:", error);
|
|
37
|
-
}
|
|
38
|
-
});
|
|
39
|
-
}, []);
|
|
40
|
-
const render = useCallback((config) => {
|
|
41
|
-
const id = generateId();
|
|
42
|
-
const content = {
|
|
43
|
-
id,
|
|
44
|
-
pattern: config.pattern,
|
|
45
|
-
props: config.props ?? {},
|
|
46
|
-
priority: config.priority ?? 0,
|
|
47
|
-
animation: config.animation ?? "fade",
|
|
48
|
-
onDismiss: config.onDismiss,
|
|
49
|
-
sourceTrait: config.sourceTrait
|
|
50
|
-
};
|
|
51
|
-
if (config.autoDismissMs && config.autoDismissMs > 0) {
|
|
52
|
-
content.autoDismissAt = Date.now() + config.autoDismissMs;
|
|
53
|
-
const timer = setTimeout(() => {
|
|
54
|
-
setSlots((prev) => {
|
|
55
|
-
if (prev[config.target]?.id === id) {
|
|
56
|
-
content.onDismiss?.();
|
|
57
|
-
notifySubscribers(config.target, null);
|
|
58
|
-
return { ...prev, [config.target]: null };
|
|
59
|
-
}
|
|
60
|
-
return prev;
|
|
61
|
-
});
|
|
62
|
-
timersRef.current.delete(id);
|
|
63
|
-
}, config.autoDismissMs);
|
|
64
|
-
timersRef.current.set(id, timer);
|
|
65
|
-
}
|
|
66
|
-
setSlots((prev) => {
|
|
67
|
-
const existing = prev[config.target];
|
|
68
|
-
if (existing && existing.priority > content.priority) {
|
|
69
|
-
console.warn(
|
|
70
|
-
`[UISlots] Slot "${config.target}" already has higher priority content (${existing.priority} > ${content.priority})`
|
|
71
|
-
);
|
|
72
|
-
return prev;
|
|
73
|
-
}
|
|
74
|
-
notifySubscribers(config.target, content);
|
|
75
|
-
return { ...prev, [config.target]: content };
|
|
76
|
-
});
|
|
77
|
-
return id;
|
|
78
|
-
}, [notifySubscribers]);
|
|
79
|
-
const clear = useCallback((slot) => {
|
|
80
|
-
setSlots((prev) => {
|
|
81
|
-
const content = prev[slot];
|
|
82
|
-
if (content) {
|
|
83
|
-
const timer = timersRef.current.get(content.id);
|
|
84
|
-
if (timer) {
|
|
85
|
-
clearTimeout(timer);
|
|
86
|
-
timersRef.current.delete(content.id);
|
|
87
|
-
}
|
|
88
|
-
content.onDismiss?.();
|
|
89
|
-
notifySubscribers(slot, null);
|
|
90
|
-
}
|
|
91
|
-
return { ...prev, [slot]: null };
|
|
92
|
-
});
|
|
93
|
-
}, [notifySubscribers]);
|
|
94
|
-
const clearById = useCallback((id) => {
|
|
95
|
-
setSlots((prev) => {
|
|
96
|
-
const entry = Object.entries(prev).find(([, content]) => content?.id === id);
|
|
97
|
-
if (entry) {
|
|
98
|
-
const [slot, content] = entry;
|
|
99
|
-
const timer = timersRef.current.get(id);
|
|
100
|
-
if (timer) {
|
|
101
|
-
clearTimeout(timer);
|
|
102
|
-
timersRef.current.delete(id);
|
|
103
|
-
}
|
|
104
|
-
content.onDismiss?.();
|
|
105
|
-
notifySubscribers(slot, null);
|
|
106
|
-
return { ...prev, [slot]: null };
|
|
107
|
-
}
|
|
108
|
-
return prev;
|
|
109
|
-
});
|
|
110
|
-
}, [notifySubscribers]);
|
|
111
|
-
const clearAll = useCallback(() => {
|
|
112
|
-
timersRef.current.forEach((timer) => clearTimeout(timer));
|
|
113
|
-
timersRef.current.clear();
|
|
114
|
-
setSlots((prev) => {
|
|
115
|
-
Object.entries(prev).forEach(([slot, content]) => {
|
|
116
|
-
if (content) {
|
|
117
|
-
content.onDismiss?.();
|
|
118
|
-
notifySubscribers(slot, null);
|
|
119
|
-
}
|
|
120
|
-
});
|
|
121
|
-
return DEFAULT_SLOTS;
|
|
122
|
-
});
|
|
123
|
-
}, [notifySubscribers]);
|
|
124
|
-
const subscribe = useCallback((callback) => {
|
|
125
|
-
subscribersRef.current.add(callback);
|
|
126
|
-
return () => {
|
|
127
|
-
subscribersRef.current.delete(callback);
|
|
128
|
-
};
|
|
129
|
-
}, []);
|
|
130
|
-
const hasContent = useCallback((slot) => {
|
|
131
|
-
return slots[slot] !== null;
|
|
132
|
-
}, [slots]);
|
|
133
|
-
const getContent = useCallback((slot) => {
|
|
134
|
-
return slots[slot];
|
|
135
|
-
}, [slots]);
|
|
136
|
-
return {
|
|
137
|
-
slots,
|
|
138
|
-
render,
|
|
139
|
-
clear,
|
|
140
|
-
clearById,
|
|
141
|
-
clearAll,
|
|
142
|
-
subscribe,
|
|
143
|
-
hasContent,
|
|
144
|
-
getContent
|
|
145
|
-
};
|
|
146
|
-
}
|
|
147
|
-
var UISlotContext = createContext(null);
|
|
148
|
-
function UISlotProvider({ children }) {
|
|
149
|
-
const slotManager = useUISlotManager();
|
|
150
|
-
const contextValue = useMemo(() => slotManager, [slotManager]);
|
|
151
|
-
return /* @__PURE__ */ jsx(UISlotContext.Provider, { value: contextValue, children });
|
|
152
|
-
}
|
|
153
|
-
function useUISlots() {
|
|
154
|
-
const context = useContext(UISlotContext);
|
|
155
|
-
if (!context) {
|
|
156
|
-
throw new Error(
|
|
157
|
-
"useUISlots must be used within a UISlotProvider. Make sure your component tree is wrapped with <UISlotProvider>."
|
|
158
|
-
);
|
|
159
|
-
}
|
|
160
|
-
return context;
|
|
161
|
-
}
|
|
162
|
-
function useSlotContent(slot) {
|
|
163
|
-
const { getContent } = useUISlots();
|
|
164
|
-
return getContent(slot);
|
|
165
|
-
}
|
|
166
|
-
function useSlotHasContent(slot) {
|
|
167
|
-
const { hasContent } = useUISlots();
|
|
168
|
-
return hasContent(slot);
|
|
169
|
-
}
|
|
170
|
-
var BUILT_IN_THEMES = [
|
|
171
|
-
{
|
|
172
|
-
name: "wireframe",
|
|
173
|
-
displayName: "Wireframe",
|
|
174
|
-
hasLightMode: true,
|
|
175
|
-
hasDarkMode: true
|
|
176
|
-
},
|
|
177
|
-
{
|
|
178
|
-
name: "minimalist",
|
|
179
|
-
displayName: "Minimalist",
|
|
180
|
-
hasLightMode: true,
|
|
181
|
-
hasDarkMode: true
|
|
182
|
-
},
|
|
183
|
-
{
|
|
184
|
-
name: "almadar",
|
|
185
|
-
displayName: "Almadar",
|
|
186
|
-
hasLightMode: true,
|
|
187
|
-
hasDarkMode: true
|
|
188
|
-
}
|
|
189
|
-
];
|
|
190
|
-
var ThemeContext = createContext(void 0);
|
|
191
|
-
var THEME_STORAGE_KEY = "theme";
|
|
192
|
-
var MODE_STORAGE_KEY = "theme-mode";
|
|
193
|
-
function getSystemMode() {
|
|
194
|
-
if (typeof window === "undefined") return "light";
|
|
195
|
-
return window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light";
|
|
196
|
-
}
|
|
197
|
-
function resolveMode(mode) {
|
|
198
|
-
if (mode === "system") {
|
|
199
|
-
return getSystemMode();
|
|
200
|
-
}
|
|
201
|
-
return mode;
|
|
202
|
-
}
|
|
203
|
-
var ThemeProvider = ({
|
|
204
|
-
children,
|
|
205
|
-
themes = [],
|
|
206
|
-
defaultTheme = "wireframe",
|
|
207
|
-
defaultMode = "system"
|
|
208
|
-
}) => {
|
|
209
|
-
const availableThemes = useMemo(() => {
|
|
210
|
-
const themeMap = /* @__PURE__ */ new Map();
|
|
211
|
-
BUILT_IN_THEMES.forEach((t) => themeMap.set(t.name, t));
|
|
212
|
-
themes.forEach((t) => themeMap.set(t.name, t));
|
|
213
|
-
return Array.from(themeMap.values());
|
|
214
|
-
}, [themes]);
|
|
215
|
-
const [theme, setThemeState] = useState(() => {
|
|
216
|
-
if (typeof window === "undefined") return defaultTheme;
|
|
217
|
-
const stored = localStorage.getItem(THEME_STORAGE_KEY);
|
|
218
|
-
const validThemes = [
|
|
219
|
-
...BUILT_IN_THEMES.map((t) => t.name),
|
|
220
|
-
...themes.map((t) => t.name)
|
|
221
|
-
];
|
|
222
|
-
if (stored && validThemes.includes(stored)) {
|
|
223
|
-
return stored;
|
|
224
|
-
}
|
|
225
|
-
return defaultTheme;
|
|
226
|
-
});
|
|
227
|
-
const [mode, setModeState] = useState(() => {
|
|
228
|
-
if (typeof window === "undefined") return defaultMode;
|
|
229
|
-
const stored = localStorage.getItem(MODE_STORAGE_KEY);
|
|
230
|
-
if (stored === "light" || stored === "dark" || stored === "system") {
|
|
231
|
-
return stored;
|
|
232
|
-
}
|
|
233
|
-
return defaultMode;
|
|
234
|
-
});
|
|
235
|
-
const [resolvedMode, setResolvedMode] = useState(
|
|
236
|
-
() => resolveMode(mode)
|
|
237
|
-
);
|
|
238
|
-
const appliedTheme = useMemo(
|
|
239
|
-
() => `${theme}-${resolvedMode}`,
|
|
240
|
-
[theme, resolvedMode]
|
|
241
|
-
);
|
|
242
|
-
useEffect(() => {
|
|
243
|
-
const updateResolved = () => {
|
|
244
|
-
setResolvedMode(resolveMode(mode));
|
|
245
|
-
};
|
|
246
|
-
updateResolved();
|
|
247
|
-
if (mode === "system") {
|
|
248
|
-
const mediaQuery = window.matchMedia("(prefers-color-scheme: dark)");
|
|
249
|
-
const handleChange = () => updateResolved();
|
|
250
|
-
mediaQuery.addEventListener("change", handleChange);
|
|
251
|
-
return () => mediaQuery.removeEventListener("change", handleChange);
|
|
252
|
-
}
|
|
253
|
-
return void 0;
|
|
254
|
-
}, [mode]);
|
|
255
|
-
useEffect(() => {
|
|
256
|
-
const root = document.documentElement;
|
|
257
|
-
root.setAttribute("data-theme", appliedTheme);
|
|
258
|
-
root.classList.remove("light", "dark");
|
|
259
|
-
root.classList.add(resolvedMode);
|
|
260
|
-
}, [appliedTheme, resolvedMode]);
|
|
261
|
-
const setTheme = useCallback(
|
|
262
|
-
(newTheme) => {
|
|
263
|
-
const validTheme = availableThemes.find((t) => t.name === newTheme);
|
|
264
|
-
if (validTheme) {
|
|
265
|
-
setThemeState(newTheme);
|
|
266
|
-
if (typeof window !== "undefined") {
|
|
267
|
-
localStorage.setItem(THEME_STORAGE_KEY, newTheme);
|
|
268
|
-
}
|
|
269
|
-
} else {
|
|
270
|
-
console.warn(
|
|
271
|
-
`Theme "${newTheme}" not found. Available: ${availableThemes.map((t) => t.name).join(", ")}`
|
|
272
|
-
);
|
|
273
|
-
}
|
|
274
|
-
},
|
|
275
|
-
[availableThemes]
|
|
276
|
-
);
|
|
277
|
-
const setMode = useCallback((newMode) => {
|
|
278
|
-
setModeState(newMode);
|
|
279
|
-
if (typeof window !== "undefined") {
|
|
280
|
-
localStorage.setItem(MODE_STORAGE_KEY, newMode);
|
|
281
|
-
}
|
|
282
|
-
}, []);
|
|
283
|
-
const toggleMode = useCallback(() => {
|
|
284
|
-
const newMode = resolvedMode === "dark" ? "light" : "dark";
|
|
285
|
-
setMode(newMode);
|
|
286
|
-
}, [resolvedMode, setMode]);
|
|
287
|
-
const contextValue = useMemo(
|
|
288
|
-
() => ({
|
|
289
|
-
theme,
|
|
290
|
-
mode,
|
|
291
|
-
resolvedMode,
|
|
292
|
-
setTheme,
|
|
293
|
-
setMode,
|
|
294
|
-
toggleMode,
|
|
295
|
-
availableThemes,
|
|
296
|
-
appliedTheme
|
|
297
|
-
}),
|
|
298
|
-
[
|
|
299
|
-
theme,
|
|
300
|
-
mode,
|
|
301
|
-
resolvedMode,
|
|
302
|
-
setTheme,
|
|
303
|
-
setMode,
|
|
304
|
-
toggleMode,
|
|
305
|
-
availableThemes,
|
|
306
|
-
appliedTheme
|
|
307
|
-
]
|
|
308
|
-
);
|
|
309
|
-
return /* @__PURE__ */ jsx(ThemeContext.Provider, { value: contextValue, children });
|
|
310
|
-
};
|
|
311
|
-
function useTheme() {
|
|
312
|
-
const context = useContext(ThemeContext);
|
|
313
|
-
if (context === void 0) {
|
|
314
|
-
return {
|
|
315
|
-
theme: "wireframe",
|
|
316
|
-
mode: "light",
|
|
317
|
-
resolvedMode: "light",
|
|
318
|
-
setTheme: () => {
|
|
319
|
-
},
|
|
320
|
-
setMode: () => {
|
|
321
|
-
},
|
|
322
|
-
toggleMode: () => {
|
|
323
|
-
},
|
|
324
|
-
availableThemes: BUILT_IN_THEMES,
|
|
325
|
-
appliedTheme: "wireframe-light"
|
|
326
|
-
};
|
|
327
|
-
}
|
|
328
|
-
return context;
|
|
329
|
-
}
|
|
330
|
-
var ThemeContext_default = ThemeContext;
|
|
331
|
-
|
|
332
|
-
// context/DesignThemeContext.tsx
|
|
333
|
-
var DesignThemeProvider = ThemeProvider;
|
|
334
|
-
function useDesignTheme() {
|
|
335
|
-
const { theme, setTheme, availableThemes } = useTheme();
|
|
336
|
-
return {
|
|
337
|
-
designTheme: theme,
|
|
338
|
-
setDesignTheme: setTheme,
|
|
339
|
-
availableThemes: availableThemes.map((t) => t.name)
|
|
340
|
-
};
|
|
341
|
-
}
|
|
342
8
|
var ANONYMOUS_USER = {
|
|
343
9
|
id: "anonymous",
|
|
344
10
|
role: "anonymous",
|
|
@@ -438,6 +104,4 @@ function useUserForEvaluation() {
|
|
|
438
104
|
return isLoggedIn && user ? user : void 0;
|
|
439
105
|
}
|
|
440
106
|
|
|
441
|
-
export { ANONYMOUS_USER,
|
|
442
|
-
//# sourceMappingURL=index.js.map
|
|
443
|
-
//# sourceMappingURL=index.js.map
|
|
107
|
+
export { ANONYMOUS_USER, UserContext, UserProvider, useHasPermission, useHasRole, useUser, useUserForEvaluation };
|
package/dist/hooks/index.d.ts
CHANGED
|
@@ -1008,4 +1008,68 @@ interface AuthContextValue {
|
|
|
1008
1008
|
*/
|
|
1009
1009
|
declare function useAuthContext(): AuthContextValue;
|
|
1010
1010
|
|
|
1011
|
-
|
|
1011
|
+
/**
|
|
1012
|
+
* GitHub Integration Hooks
|
|
1013
|
+
*
|
|
1014
|
+
* React hooks for GitHub OAuth and repository management.
|
|
1015
|
+
*/
|
|
1016
|
+
/**
|
|
1017
|
+
* GitHub connection status
|
|
1018
|
+
*/
|
|
1019
|
+
interface GitHubStatus {
|
|
1020
|
+
connected: boolean;
|
|
1021
|
+
username?: string;
|
|
1022
|
+
avatarUrl?: string;
|
|
1023
|
+
scopes?: string[];
|
|
1024
|
+
connectedAt?: number;
|
|
1025
|
+
lastUsedAt?: number;
|
|
1026
|
+
}
|
|
1027
|
+
/**
|
|
1028
|
+
* GitHub repository
|
|
1029
|
+
*/
|
|
1030
|
+
interface GitHubRepo {
|
|
1031
|
+
id: number;
|
|
1032
|
+
name: string;
|
|
1033
|
+
fullName: string;
|
|
1034
|
+
owner: string;
|
|
1035
|
+
isPrivate: boolean;
|
|
1036
|
+
description: string | null;
|
|
1037
|
+
defaultBranch: string;
|
|
1038
|
+
url: string;
|
|
1039
|
+
}
|
|
1040
|
+
/**
|
|
1041
|
+
* Hook to get GitHub connection status
|
|
1042
|
+
*/
|
|
1043
|
+
declare function useGitHubStatus(): _tanstack_react_query.UseQueryResult<GitHubStatus, Error>;
|
|
1044
|
+
/**
|
|
1045
|
+
* Hook to connect GitHub (initiate OAuth flow)
|
|
1046
|
+
*/
|
|
1047
|
+
declare function useConnectGitHub(): {
|
|
1048
|
+
connectGitHub: () => void;
|
|
1049
|
+
};
|
|
1050
|
+
/**
|
|
1051
|
+
* Hook to disconnect GitHub
|
|
1052
|
+
*/
|
|
1053
|
+
declare function useDisconnectGitHub(): _tanstack_react_query.UseMutationResult<unknown, Error, void, unknown>;
|
|
1054
|
+
/**
|
|
1055
|
+
* Hook to list GitHub repositories
|
|
1056
|
+
*/
|
|
1057
|
+
declare function useGitHubRepos(page?: number, perPage?: number): _tanstack_react_query.UseQueryResult<{
|
|
1058
|
+
repos: GitHubRepo[];
|
|
1059
|
+
page: number;
|
|
1060
|
+
perPage: number;
|
|
1061
|
+
}, Error>;
|
|
1062
|
+
/**
|
|
1063
|
+
* Hook to get repository details
|
|
1064
|
+
*/
|
|
1065
|
+
declare function useGitHubRepo(owner: string, repo: string, enabled?: boolean): _tanstack_react_query.UseQueryResult<{
|
|
1066
|
+
repo: GitHubRepo;
|
|
1067
|
+
}, Error>;
|
|
1068
|
+
/**
|
|
1069
|
+
* Hook to list repository branches
|
|
1070
|
+
*/
|
|
1071
|
+
declare function useGitHubBranches(owner: string, repo: string, enabled?: boolean): _tanstack_react_query.UseQueryResult<{
|
|
1072
|
+
branches: string[];
|
|
1073
|
+
}, Error>;
|
|
1074
|
+
|
|
1075
|
+
export { type AuthContextValue, type AuthUser, type ChangeSummary, type CompileResult, type CompileStage, ENTITY_EVENTS, Entity, type EntityDataRecord, type EntityMutationResult, EventBusContextType, EventListener, type Extension, type ExtensionManifest, type FileSystemFile, type FileSystemStatus, type GitHubRepo, type GitHubStatus, type HistoryTimelineItem, type OpenFile, type OrbitalEventPayload, type OrbitalEventResponse, type QuerySingletonEntity, type QuerySingletonResult, type QuerySingletonState, type QueryState, type RevertResult, type SelectedFile, type UseCompileResult, type UseEntityDetailResult, type UseEntityListOptions, type UseEntityListResult, type UseEntityMutationsOptions, type UseExtensionsOptions, type UseExtensionsResult, type UseFileEditorOptions, type UseFileEditorResult, type UseFileSystemResult, type UseOrbitalHistoryOptions, type UseOrbitalHistoryResult, clearEntities, entityDataKeys, getAllEntities, getByType, getEntity, getSingleton, parseQueryBinding, removeEntity, spawnEntity, updateEntity, updateSingleton, useAgentChat, useAuthContext, useCompile, useConnectGitHub, useCreateEntity, useDeepAgentGeneration, useDeleteEntity, useDisconnectGitHub, useEmitEvent, useEntities, useEntitiesByType, useEntity$1 as useEntity, useEntity as useEntityById, useEntityDetail, useEntityList, useEntityMutations, useEventBus, useEventListener, useExtensions, useFileEditor, useFileSystem, useGitHubBranches, useGitHubRepo, useGitHubRepos, useGitHubStatus, useInput, useOrbitalHistory, useOrbitalMutations, usePhysics, usePlayer, usePreview, useQuerySingleton, useSelectedEntity, useSendOrbitalEvent, useSingletonEntity, useUIEvents, useUpdateEntity, useValidation };
|