@geminilight/mindos 0.6.52 → 0.6.53
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/_standalone/.mindos-build-version +1 -1
- package/_standalone/.next/BUILD_ID +1 -1
- package/_standalone/.next/app-path-routes-manifest.json +16 -16
- package/_standalone/.next/build-manifest.json +2 -2
- package/_standalone/.next/cache/.previewinfo +1 -1
- package/_standalone/.next/cache/.rscinfo +1 -1
- package/_standalone/.next/cache/config.json +3 -3
- package/_standalone/.next/prerender-manifest.json +3 -3
- package/_standalone/.next/server/app/.well-known/agent-card.json/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/_global-error.html +2 -2
- package/_standalone/.next/server/app/_global-error.rsc +1 -1
- package/_standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/_standalone/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/_standalone/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
- package/_standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/_standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/_standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/_standalone/.next/server/app/_not-found/page.js +1 -1
- package/_standalone/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/_standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/agents/[agentKey]/page.js +1 -1
- package/_standalone/.next/server/app/agents/[agentKey]/page.js.nft.json +1 -1
- package/_standalone/.next/server/app/agents/[agentKey]/page_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/agents/page.js +1 -1
- package/_standalone/.next/server/app/agents/page.js.nft.json +1 -1
- package/_standalone/.next/server/app/agents/page_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/a2a/agents/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/a2a/delegations/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/a2a/discover/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/a2a/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/acp/config/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/acp/detect/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/acp/install/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/acp/registry/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/acp/session/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/agent-activity/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/ask/route.js +44 -16
- package/_standalone/.next/server/app/api/ask/route.js.nft.json +1 -1
- package/_standalone/.next/server/app/api/ask/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/ask-sessions/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/auth/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/backlinks/route.js.nft.json +1 -1
- package/_standalone/.next/server/app/api/backlinks/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/bootstrap/route.js.nft.json +1 -1
- package/_standalone/.next/server/app/api/bootstrap/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/changes/route.js.nft.json +1 -1
- package/_standalone/.next/server/app/api/changes/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/export/route.js.nft.json +1 -1
- package/_standalone/.next/server/app/api/export/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/extract-pdf/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/file/import/route.js.nft.json +1 -1
- package/_standalone/.next/server/app/api/file/import/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/file/route.js.nft.json +1 -1
- package/_standalone/.next/server/app/api/file/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/files/route.js.nft.json +1 -1
- package/_standalone/.next/server/app/api/files/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/git/route.js.nft.json +1 -1
- package/_standalone/.next/server/app/api/git/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/graph/route.js.nft.json +1 -1
- package/_standalone/.next/server/app/api/graph/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/health/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/inbox/route.js.nft.json +1 -1
- package/_standalone/.next/server/app/api/inbox/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/init/route.js.nft.json +1 -1
- package/_standalone/.next/server/app/api/init/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/mcp/agents/route.js.nft.json +1 -1
- package/_standalone/.next/server/app/api/mcp/agents/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/mcp/install/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/mcp/install-skill/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/mcp/restart/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/mcp/status/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/mcp/uninstall/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/monitoring/route.js.nft.json +1 -1
- package/_standalone/.next/server/app/api/monitoring/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/recent-files/route.js.nft.json +1 -1
- package/_standalone/.next/server/app/api/recent-files/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/restart/route.js +1 -1
- package/_standalone/.next/server/app/api/restart/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/search/route.js.nft.json +1 -1
- package/_standalone/.next/server/app/api/search/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/settings/list-models/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/settings/reset-token/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/settings/route.js.nft.json +1 -1
- package/_standalone/.next/server/app/api/settings/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/settings/test-key/route.js +1 -1
- package/_standalone/.next/server/app/api/settings/test-key/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/setup/check-path/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/setup/check-port/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/setup/generate-token/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/setup/ls/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/setup/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/skills/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/sync/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/tree-version/route.js.nft.json +1 -1
- package/_standalone/.next/server/app/api/tree-version/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/uninstall/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/update/route.js +1 -1
- package/_standalone/.next/server/app/api/update/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/update-check/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/update-status/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/workflows/route.js.nft.json +1 -1
- package/_standalone/.next/server/app/api/workflows/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/changes/page.js +1 -1
- package/_standalone/.next/server/app/changes/page.js.nft.json +1 -1
- package/_standalone/.next/server/app/changes/page_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/echo/[segment]/page.js +1 -1
- package/_standalone/.next/server/app/echo/[segment]/page.js.nft.json +1 -1
- package/_standalone/.next/server/app/echo/[segment]/page_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/echo/page.js +1 -1
- package/_standalone/.next/server/app/echo/page.js.nft.json +1 -1
- package/_standalone/.next/server/app/echo/page_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/explore/page.js +1 -1
- package/_standalone/.next/server/app/explore/page.js.nft.json +1 -1
- package/_standalone/.next/server/app/explore/page_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/help/page.js +1 -1
- package/_standalone/.next/server/app/help/page.js.nft.json +1 -1
- package/_standalone/.next/server/app/help/page_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/login/page.js +1 -1
- package/_standalone/.next/server/app/login/page.js.nft.json +1 -1
- package/_standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/page.js +1 -1
- package/_standalone/.next/server/app/page.js.nft.json +1 -1
- package/_standalone/.next/server/app/page_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/setup/page.js +1 -1
- package/_standalone/.next/server/app/setup/page.js.nft.json +1 -1
- package/_standalone/.next/server/app/setup/page_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/trash/page.js +3 -3
- package/_standalone/.next/server/app/trash/page.js.nft.json +1 -1
- package/_standalone/.next/server/app/trash/page_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/view/[...path]/page.js +2 -2
- package/_standalone/.next/server/app/view/[...path]/page.js.nft.json +1 -1
- package/_standalone/.next/server/app/view/[...path]/page_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app-paths-manifest.json +16 -16
- package/_standalone/.next/server/chunks/3436.js +52 -0
- package/_standalone/.next/server/chunks/6539.js +1 -1
- package/_standalone/.next/server/chunks/8388.js +1 -1
- package/_standalone/.next/server/chunks/8408.js +28 -28
- package/_standalone/.next/server/pages/500.html +2 -2
- package/_standalone/.next/server/server-reference-manifest.js +1 -1
- package/_standalone/.next/server/server-reference-manifest.json +1 -1
- package/_standalone/.next/static/chunks/{1053-c519cb347faa75e2.js → 1053-17786066ecd6f216.js} +2 -2
- package/_standalone/.next/static/chunks/app/{layout-e706f9a963b177ba.js → layout-e5d2fb384207d821.js} +27 -27
- package/_standalone/.next/static/chunks/app/{page-2595175820acfd65.js → page-54edd045d3448df5.js} +2 -2
- package/_standalone/.next/static/chunks/app/trash/page-6372bb3f5463affa.js +1 -0
- package/_standalone/.next/static/chunks/app/view/[...path]/page-f3d1d87190dcfe28.js +12 -0
- package/_standalone/.next/trace +64 -64
- package/_standalone/components/walkthrough/WalkthroughOverlay.tsx +39 -10
- package/_standalone/lib/stores/walkthrough-store.ts +33 -1
- package/_standalone/tsconfig.tsbuildinfo +1 -1
- package/app/app/api/ask/route.ts +193 -3
- package/app/app/api/restart/route.ts +26 -21
- package/app/app/api/update/route.ts +24 -10
- package/app/components/walkthrough/WalkthroughOverlay.tsx +39 -10
- package/app/lib/agent/model.ts +2 -1
- package/app/lib/i18n/modules/ai-chat.ts +8 -0
- package/app/lib/settings.ts +32 -0
- package/app/lib/stores/walkthrough-store.ts +33 -1
- package/bin/commands/update.js +23 -11
- package/bin/lib/clean-env.js +38 -0
- package/bin/lib/gateway.js +41 -4
- package/bin/lib/stop.js +40 -4
- package/package.json +1 -1
- package/_standalone/.next/server/chunks/2673.js +0 -52
- package/_standalone/.next/static/chunks/app/trash/page-61c6210fac1e9710.js +0 -1
- package/_standalone/.next/static/chunks/app/view/[...path]/page-798359c36f10ef8d.js +0 -12
- package/_standalone/lib/i18n/generated/explore-i18n.generated.ts +0 -138
- package/_standalone/lib/i18n/index.ts +0 -38
- package/_standalone/lib/i18n/modules/ai-chat.ts +0 -237
- package/_standalone/lib/i18n/modules/common.ts +0 -71
- package/_standalone/lib/i18n/modules/features.ts +0 -153
- package/_standalone/lib/i18n/modules/knowledge.ts +0 -727
- package/_standalone/lib/i18n/modules/navigation.ts +0 -157
- package/_standalone/lib/i18n/modules/onboarding.ts +0 -445
- package/_standalone/lib/i18n/modules/panels.ts +0 -1255
- package/_standalone/lib/i18n/modules/settings.ts +0 -889
- package/_standalone/lib/i18n.ts +0 -3
- /package/_standalone/.next/static/{IiTZbEzZo8l5MSUxlDwKp → W-wLgvhPtPJ5Psq9V4i3M}/_buildManifest.js +0 -0
- /package/_standalone/.next/static/{IiTZbEzZo8l5MSUxlDwKp → W-wLgvhPtPJ5Psq9V4i3M}/_ssgManifest.js +0 -0
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import { useState, useEffect, useCallback, useId } from 'react';
|
|
4
4
|
import { useLocale } from '@/lib/stores/locale-store';
|
|
5
|
-
import { useWalkthrough } from '@/lib/stores/walkthrough-store';
|
|
5
|
+
import { useWalkthrough, useWalkthroughStore } from '@/lib/stores/walkthrough-store';
|
|
6
6
|
import { walkthroughSteps } from './steps';
|
|
7
7
|
import WalkthroughTooltip from './WalkthroughTooltip';
|
|
8
8
|
|
|
@@ -68,16 +68,31 @@ export default function WalkthroughOverlay() {
|
|
|
68
68
|
return () => window.removeEventListener('keydown', handler, true);
|
|
69
69
|
}, [skipFn]);
|
|
70
70
|
|
|
71
|
-
// If target element doesn't exist (e.g.
|
|
71
|
+
// If target element doesn't exist (e.g. panel not enabled), auto-skip
|
|
72
|
+
// after a grace period. Use stable store ref to avoid re-triggering on
|
|
73
|
+
// every store change (which caused spurious skips during step transitions).
|
|
74
|
+
const currentStep = wt?.currentStep ?? 0;
|
|
72
75
|
useEffect(() => {
|
|
73
76
|
if (!step) return;
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
77
|
+
// Wait 500ms for DOM to settle (sidebar animations, lazy rendering)
|
|
78
|
+
const timer = setTimeout(() => {
|
|
79
|
+
const el = document.querySelector(`[data-walkthrough="${step.anchor}"]`);
|
|
80
|
+
if (!el) {
|
|
81
|
+
useWalkthroughStore.getState().next();
|
|
82
|
+
}
|
|
83
|
+
}, 500);
|
|
84
|
+
return () => clearTimeout(timer);
|
|
85
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
86
|
+
}, [currentStep]); // Only re-run when step index changes, not on every store update
|
|
87
|
+
|
|
88
|
+
// Safety timeout: if overlay stays for 60s without user interaction, auto-dismiss.
|
|
89
|
+
// Prevents permanently stuck overlay from any unforeseen edge case.
|
|
90
|
+
useEffect(() => {
|
|
91
|
+
const timer = setTimeout(() => {
|
|
92
|
+
useWalkthroughStore.getState().skip();
|
|
93
|
+
}, 60_000);
|
|
94
|
+
return () => clearTimeout(timer);
|
|
95
|
+
}, [currentStep]); // Reset on each step change
|
|
81
96
|
|
|
82
97
|
if (!wt || !step) return null;
|
|
83
98
|
|
|
@@ -138,7 +153,7 @@ export default function WalkthroughOverlay() {
|
|
|
138
153
|
/>
|
|
139
154
|
</svg>
|
|
140
155
|
|
|
141
|
-
{/* Tooltip */}
|
|
156
|
+
{/* Tooltip — shown when target element found */}
|
|
142
157
|
{targetRect && (
|
|
143
158
|
<WalkthroughTooltip
|
|
144
159
|
stepIndex={wt.currentStep}
|
|
@@ -146,6 +161,20 @@ export default function WalkthroughOverlay() {
|
|
|
146
161
|
position={step.position}
|
|
147
162
|
/>
|
|
148
163
|
)}
|
|
164
|
+
|
|
165
|
+
{/* Fallback dismiss button — shown when target element NOT found.
|
|
166
|
+
Without this, user sees dark overlay but no visible UI to dismiss it. */}
|
|
167
|
+
{!targetRect && (
|
|
168
|
+
<div className="fixed inset-0 z-[101] flex items-center justify-center pointer-events-none">
|
|
169
|
+
<button
|
|
170
|
+
onClick={wt.skip}
|
|
171
|
+
className="pointer-events-auto px-4 py-2 text-sm rounded-lg font-medium transition-all hover:opacity-90"
|
|
172
|
+
style={{ background: 'var(--amber)', color: 'var(--amber-foreground)' }}
|
|
173
|
+
>
|
|
174
|
+
{wt.currentStep === wt.totalSteps - 1 ? '✓' : '→'}
|
|
175
|
+
</button>
|
|
176
|
+
</div>
|
|
177
|
+
)}
|
|
149
178
|
</>
|
|
150
179
|
);
|
|
151
180
|
}
|
|
@@ -21,7 +21,20 @@ export interface WalkthroughStoreState {
|
|
|
21
21
|
|
|
22
22
|
/* ── Helpers ── */
|
|
23
23
|
|
|
24
|
+
const LS_KEY = 'mindos_walkthrough_done';
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Persist walkthrough state to server AND localStorage.
|
|
28
|
+
* localStorage acts as a safety net: even if the server persist fails
|
|
29
|
+
* (e.g. during update restart, network blip), the completion state
|
|
30
|
+
* survives page reload and prevents the "stuck overlay" bug.
|
|
31
|
+
*/
|
|
24
32
|
function persistStep(step: number, dismissed: boolean) {
|
|
33
|
+
// Local safety net — instant, survives server outage
|
|
34
|
+
if (step >= walkthroughSteps.length || dismissed) {
|
|
35
|
+
try { localStorage.setItem(LS_KEY, '1'); } catch {}
|
|
36
|
+
}
|
|
37
|
+
// Server persist — fire-and-forget (localStorage is the safety net)
|
|
25
38
|
fetch('/api/setup', {
|
|
26
39
|
method: 'PATCH',
|
|
27
40
|
headers: { 'Content-Type': 'application/json' },
|
|
@@ -31,6 +44,11 @@ function persistStep(step: number, dismissed: boolean) {
|
|
|
31
44
|
}).catch((err) => { console.warn('[walkthrough-store] persist failed:', err); });
|
|
32
45
|
}
|
|
33
46
|
|
|
47
|
+
/** Check if walkthrough was completed/dismissed (fast, sync, local) */
|
|
48
|
+
function isLocallyDone(): boolean {
|
|
49
|
+
try { return localStorage.getItem(LS_KEY) === '1'; } catch { return false; }
|
|
50
|
+
}
|
|
51
|
+
|
|
34
52
|
/* ── Store ── */
|
|
35
53
|
|
|
36
54
|
export const useWalkthroughStore = create<WalkthroughStoreState>((set, get) => {
|
|
@@ -84,12 +102,26 @@ export const useWalkthroughStore = create<WalkthroughStoreState>((set, get) => {
|
|
|
84
102
|
// Only auto-start on desktop
|
|
85
103
|
if (window.innerWidth < 768) return () => {};
|
|
86
104
|
|
|
105
|
+
// Fast local check: if walkthrough was completed/dismissed, never reactivate.
|
|
106
|
+
// This prevents the "stuck overlay" bug where server persist failed during
|
|
107
|
+
// update restart but localStorage recorded the completion.
|
|
108
|
+
if (isLocallyDone()) return () => {};
|
|
109
|
+
|
|
87
110
|
fetch('/api/setup')
|
|
88
111
|
.then(r => r.json())
|
|
89
112
|
.then(data => {
|
|
90
113
|
const gs = data.guideState;
|
|
91
114
|
if (!gs) return;
|
|
92
|
-
if (gs.walkthroughDismissed)
|
|
115
|
+
if (gs.walkthroughDismissed) {
|
|
116
|
+
try { localStorage.setItem(LS_KEY, '1'); } catch {} // sync local
|
|
117
|
+
return;
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
// If server says completed (step >= totalSteps), mark locally done
|
|
121
|
+
if (typeof gs.walkthroughStep === 'number' && gs.walkthroughStep >= totalSteps) {
|
|
122
|
+
try { localStorage.setItem(LS_KEY, '1'); } catch {};
|
|
123
|
+
return;
|
|
124
|
+
}
|
|
93
125
|
|
|
94
126
|
if (gs.active && !gs.dismissed && gs.walkthroughStep === undefined) {
|
|
95
127
|
if (isWelcome) {
|