idea-manager 2.3.0 → 2.3.1
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/.next/build-manifest.json +2 -2
- package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_global-error.html +2 -2
- package/.next/server/app/_global-error.rsc +1 -1
- package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_not-found.html +2 -2
- package/.next/server/app/_not-found.rsc +1 -1
- package/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/api/advisor-actions/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/archive/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/filesystem/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/filesystem/tree/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/global-advisor/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/global-memo/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/health/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/maintenance/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/projects/[id]/advisor/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/projects/[id]/apply-distribute/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/projects/[id]/auto-distribute/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/projects/[id]/brainstorm/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/projects/[id]/git-sync/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/projects/[id]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/projects/[id]/sub-projects/[subId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/chat/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/prompt/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/refine/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/[taskId]/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/reorder/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/projects/[id]/sub-projects/[subId]/tasks/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/projects/[id]/sub-projects/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/projects/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/search/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/sync/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/tasks/[taskId]/move/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/update/route_client-reference-manifest.js +1 -1
- package/.next/server/app/api/version/route_client-reference-manifest.js +1 -1
- package/.next/server/app/index.html +2 -2
- package/.next/server/app/index.rsc +2 -2
- package/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/index.segments/_full.segment.rsc +2 -2
- package/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/.next/server/app/index.segments/_index.segment.rsc +1 -1
- package/.next/server/app/index.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/page.js +2 -2
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/projects/[id]/page_client-reference-manifest.js +1 -1
- package/.next/server/app-paths-manifest.json +9 -9
- package/.next/server/pages/404.html +2 -2
- package/.next/server/pages/500.html +2 -2
- package/.next/static/chunks/app/{page-16b10bcc10c22811.js → page-a0491c7ecdd773ca.js} +9 -9
- package/package.json +1 -1
- package/src/cli.ts +3 -3
- package/src/components/dashboard/DashboardPanel.tsx +13 -0
- package/src/components/memo/GlobalMemoLayer.tsx +15 -0
- /package/.next/static/{E6_zErdSfG_2YXZzHtQ34 → cNwwQZS0Jhwz2yyh3ks6E}/_buildManifest.js +0 -0
- /package/.next/static/{E6_zErdSfG_2YXZzHtQ34 → cNwwQZS0Jhwz2yyh3ks6E}/_ssgManifest.js +0 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "idea-manager",
|
|
3
|
-
"version": "2.3.
|
|
3
|
+
"version": "2.3.1",
|
|
4
4
|
"description": "AI-powered idea & task manager for developers. Brainstorm → structured tasks → AI agent execution. CodeMirror editor with slash commands, MCP Server, Claude/Gemini/Codex support. Local-first SQLite, cross-PC Git sync.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"idea-manager",
|
package/src/cli.ts
CHANGED
|
@@ -136,9 +136,9 @@ program
|
|
|
136
136
|
nextCli = path.join(PKG_ROOT, 'node_modules', 'next', 'dist', 'bin', 'next');
|
|
137
137
|
}
|
|
138
138
|
|
|
139
|
-
// Build if not already built
|
|
140
|
-
const
|
|
141
|
-
if (!fs.existsSync(
|
|
139
|
+
// Build if not already built (check BUILD_ID, not just .next dir existence)
|
|
140
|
+
const buildMarker = path.join(PKG_ROOT, '.next', 'BUILD_ID');
|
|
141
|
+
if (!fs.existsSync(buildMarker)) {
|
|
142
142
|
console.log('\n IM - First run: building... (this may take a minute)\n');
|
|
143
143
|
const buildResult = spawn(process.execPath, [nextCli, 'build'], {
|
|
144
144
|
cwd: PKG_ROOT,
|
|
@@ -96,6 +96,17 @@ export default function DashboardPanel() {
|
|
|
96
96
|
if (savedTab) setTab(savedTab);
|
|
97
97
|
}, [fetchData]);
|
|
98
98
|
|
|
99
|
+
// Sync memo when another instance (⌘M layer) saves
|
|
100
|
+
useEffect(() => {
|
|
101
|
+
const onSync = () => {
|
|
102
|
+
fetch('/api/global-memo').then(r => r.ok ? r.json() : null)
|
|
103
|
+
.then(d => { if (d?.content !== undefined) setMemoContent(d.content); })
|
|
104
|
+
.catch(() => {});
|
|
105
|
+
};
|
|
106
|
+
window.addEventListener('global-memo-updated', onSync);
|
|
107
|
+
return () => window.removeEventListener('global-memo-updated', onSync);
|
|
108
|
+
}, []);
|
|
109
|
+
|
|
99
110
|
const handleMemoChange = (value: string) => {
|
|
100
111
|
setMemoContent(value);
|
|
101
112
|
if (memoSaveTimer.current) clearTimeout(memoSaveTimer.current);
|
|
@@ -104,6 +115,8 @@ export default function DashboardPanel() {
|
|
|
104
115
|
method: 'PUT',
|
|
105
116
|
headers: { 'Content-Type': 'application/json' },
|
|
106
117
|
body: JSON.stringify({ content: value }),
|
|
118
|
+
}).then(() => {
|
|
119
|
+
window.dispatchEvent(new Event('global-memo-updated'));
|
|
107
120
|
});
|
|
108
121
|
}, 500);
|
|
109
122
|
};
|
|
@@ -34,10 +34,25 @@ export default function GlobalMemoLayer() {
|
|
|
34
34
|
method: 'PUT',
|
|
35
35
|
headers: { 'Content-Type': 'application/json' },
|
|
36
36
|
body: JSON.stringify({ content: value }),
|
|
37
|
+
}).then(() => {
|
|
38
|
+
window.dispatchEvent(new Event('global-memo-updated'));
|
|
37
39
|
}).catch(() => {});
|
|
38
40
|
}, 600);
|
|
39
41
|
}, []);
|
|
40
42
|
|
|
43
|
+
// Sync when other memo instance saves
|
|
44
|
+
useEffect(() => {
|
|
45
|
+
const onSync = () => {
|
|
46
|
+
if (!open) return;
|
|
47
|
+
fetch('/api/global-memo')
|
|
48
|
+
.then(r => r.ok ? r.json() : null)
|
|
49
|
+
.then(d => { if (d?.content !== undefined) setContent(d.content); })
|
|
50
|
+
.catch(() => {});
|
|
51
|
+
};
|
|
52
|
+
window.addEventListener('global-memo-updated', onSync);
|
|
53
|
+
return () => window.removeEventListener('global-memo-updated', onSync);
|
|
54
|
+
}, [open]);
|
|
55
|
+
|
|
41
56
|
const handleChange = (e: React.ChangeEvent<HTMLTextAreaElement>) => {
|
|
42
57
|
const v = e.target.value;
|
|
43
58
|
setContent(v);
|
|
File without changes
|
|
File without changes
|