@pan-sec/notebooklm-mcp 1.6.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.
- package/dist/config.d.ts +4 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +10 -0
- package/dist/config.js.map +1 -1
- package/dist/events/event-emitter.d.ts +45 -0
- package/dist/events/event-emitter.d.ts.map +1 -0
- package/dist/events/event-emitter.js +100 -0
- package/dist/events/event-emitter.js.map +1 -0
- package/dist/events/event-types.d.ts +124 -0
- package/dist/events/event-types.d.ts.map +1 -0
- package/dist/events/event-types.js +18 -0
- package/dist/events/event-types.js.map +1 -0
- package/dist/gemini/gemini-client.d.ts +45 -0
- package/dist/gemini/gemini-client.d.ts.map +1 -0
- package/dist/gemini/gemini-client.js +211 -0
- package/dist/gemini/gemini-client.js.map +1 -0
- package/dist/gemini/index.d.ts +8 -0
- package/dist/gemini/index.d.ts.map +1 -0
- package/dist/gemini/index.js +8 -0
- package/dist/gemini/index.js.map +1 -0
- package/dist/gemini/types.d.ts +136 -0
- package/dist/gemini/types.d.ts.map +1 -0
- package/dist/gemini/types.js +10 -0
- package/dist/gemini/types.js.map +1 -0
- package/dist/index.js +76 -3
- package/dist/index.js.map +1 -1
- package/dist/library/notebook-library.d.ts +25 -2
- package/dist/library/notebook-library.d.ts.map +1 -1
- package/dist/library/notebook-library.js +142 -2
- package/dist/library/notebook-library.js.map +1 -1
- package/dist/library/types.d.ts +15 -0
- package/dist/library/types.d.ts.map +1 -1
- package/dist/notebook-creation/audio-manager.d.ts +56 -0
- package/dist/notebook-creation/audio-manager.d.ts.map +1 -0
- package/dist/notebook-creation/audio-manager.js +335 -0
- package/dist/notebook-creation/audio-manager.js.map +1 -0
- package/dist/notebook-creation/discover-creation-flow.d.ts +8 -0
- package/dist/notebook-creation/discover-creation-flow.d.ts.map +1 -0
- package/dist/notebook-creation/discover-creation-flow.js +177 -0
- package/dist/notebook-creation/discover-creation-flow.js.map +1 -0
- package/dist/notebook-creation/discover-quota.d.ts +8 -0
- package/dist/notebook-creation/discover-quota.d.ts.map +1 -0
- package/dist/notebook-creation/discover-quota.js +195 -0
- package/dist/notebook-creation/discover-quota.js.map +1 -0
- package/dist/notebook-creation/discover-source-dialog.d.ts +8 -0
- package/dist/notebook-creation/discover-source-dialog.d.ts.map +1 -0
- package/dist/notebook-creation/discover-source-dialog.js +134 -0
- package/dist/notebook-creation/discover-source-dialog.js.map +1 -0
- package/dist/notebook-creation/discover-sources.d.ts +8 -0
- package/dist/notebook-creation/discover-sources.d.ts.map +1 -0
- package/dist/notebook-creation/discover-sources.js +273 -0
- package/dist/notebook-creation/discover-sources.js.map +1 -0
- package/dist/notebook-creation/discover-text-input.d.ts +7 -0
- package/dist/notebook-creation/discover-text-input.d.ts.map +1 -0
- package/dist/notebook-creation/discover-text-input.js +135 -0
- package/dist/notebook-creation/discover-text-input.js.map +1 -0
- package/dist/notebook-creation/index.d.ts +12 -0
- package/dist/notebook-creation/index.d.ts.map +1 -0
- package/dist/notebook-creation/index.js +12 -0
- package/dist/notebook-creation/index.js.map +1 -0
- package/dist/notebook-creation/notebook-creator.d.ts +95 -0
- package/dist/notebook-creation/notebook-creator.d.ts.map +1 -0
- package/dist/notebook-creation/notebook-creator.js +689 -0
- package/dist/notebook-creation/notebook-creator.js.map +1 -0
- package/dist/notebook-creation/notebook-sync.d.ts +93 -0
- package/dist/notebook-creation/notebook-sync.d.ts.map +1 -0
- package/dist/notebook-creation/notebook-sync.js +370 -0
- package/dist/notebook-creation/notebook-sync.js.map +1 -0
- package/dist/notebook-creation/run-discovery.d.ts +11 -0
- package/dist/notebook-creation/run-discovery.d.ts.map +1 -0
- package/dist/notebook-creation/run-discovery.js +151 -0
- package/dist/notebook-creation/run-discovery.js.map +1 -0
- package/dist/notebook-creation/selector-discovery.d.ts +65 -0
- package/dist/notebook-creation/selector-discovery.d.ts.map +1 -0
- package/dist/notebook-creation/selector-discovery.js +421 -0
- package/dist/notebook-creation/selector-discovery.js.map +1 -0
- package/dist/notebook-creation/selectors.d.ts +150 -0
- package/dist/notebook-creation/selectors.d.ts.map +1 -0
- package/dist/notebook-creation/selectors.js +225 -0
- package/dist/notebook-creation/selectors.js.map +1 -0
- package/dist/notebook-creation/source-manager.d.ts +73 -0
- package/dist/notebook-creation/source-manager.d.ts.map +1 -0
- package/dist/notebook-creation/source-manager.js +486 -0
- package/dist/notebook-creation/source-manager.js.map +1 -0
- package/dist/notebook-creation/test-create.d.ts +8 -0
- package/dist/notebook-creation/test-create.d.ts.map +1 -0
- package/dist/notebook-creation/test-create.js +72 -0
- package/dist/notebook-creation/test-create.js.map +1 -0
- package/dist/notebook-creation/types.d.ts +173 -0
- package/dist/notebook-creation/types.d.ts.map +1 -0
- package/dist/notebook-creation/types.js +5 -0
- package/dist/notebook-creation/types.js.map +1 -0
- package/dist/quota/index.d.ts +8 -0
- package/dist/quota/index.d.ts.map +1 -0
- package/dist/quota/index.js +8 -0
- package/dist/quota/index.js.map +1 -0
- package/dist/quota/quota-manager.d.ts +125 -0
- package/dist/quota/quota-manager.d.ts.map +1 -0
- package/dist/quota/quota-manager.js +330 -0
- package/dist/quota/quota-manager.js.map +1 -0
- package/dist/session/session-manager.d.ts +5 -0
- package/dist/session/session-manager.d.ts.map +1 -1
- package/dist/session/session-manager.js +6 -0
- package/dist/session/session-manager.js.map +1 -1
- package/dist/tools/definitions/gemini.d.ts +12 -0
- package/dist/tools/definitions/gemini.d.ts.map +1 -0
- package/dist/tools/definitions/gemini.js +135 -0
- package/dist/tools/definitions/gemini.js.map +1 -0
- package/dist/tools/definitions/notebook-management.d.ts.map +1 -1
- package/dist/tools/definitions/notebook-management.js +525 -0
- package/dist/tools/definitions/notebook-management.js.map +1 -1
- package/dist/tools/definitions/system.d.ts.map +1 -1
- package/dist/tools/definitions/system.js +158 -0
- package/dist/tools/definitions/system.js.map +1 -1
- package/dist/tools/definitions.d.ts.map +1 -1
- package/dist/tools/definitions.js +2 -0
- package/dist/tools/definitions.js.map +1 -1
- package/dist/tools/handlers.d.ts +257 -0
- package/dist/tools/handlers.d.ts.map +1 -1
- package/dist/tools/handlers.js +1097 -0
- package/dist/tools/handlers.js.map +1 -1
- package/dist/webhooks/index.d.ts +8 -0
- package/dist/webhooks/index.d.ts.map +1 -0
- package/dist/webhooks/index.js +8 -0
- package/dist/webhooks/index.js.map +1 -0
- package/dist/webhooks/types.d.ts +57 -0
- package/dist/webhooks/types.d.ts.map +1 -0
- package/dist/webhooks/types.js +5 -0
- package/dist/webhooks/types.js.map +1 -0
- package/dist/webhooks/webhook-dispatcher.d.ts +120 -0
- package/dist/webhooks/webhook-dispatcher.d.ts.map +1 -0
- package/dist/webhooks/webhook-dispatcher.js +519 -0
- package/dist/webhooks/webhook-dispatcher.js.map +1 -0
- package/package.json +2 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"notebook-creator.js","sourceRoot":"","sources":["../../src/notebook-creation/notebook-creator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* NotebookLM Library Sync
|
|
3
|
+
*
|
|
4
|
+
* Syncs local library with actual NotebookLM notebooks.
|
|
5
|
+
* Detects stale entries, extracts real URLs, and offers cleanup.
|
|
6
|
+
*/
|
|
7
|
+
import { AuthManager } from "../auth/auth-manager.js";
|
|
8
|
+
import { SharedContextManager } from "../session/shared-context-manager.js";
|
|
9
|
+
import type { NotebookLibrary } from "../library/notebook-library.js";
|
|
10
|
+
export interface ActualNotebook {
|
|
11
|
+
title: string;
|
|
12
|
+
url: string;
|
|
13
|
+
sourceCount: number;
|
|
14
|
+
createdDate: string;
|
|
15
|
+
}
|
|
16
|
+
export interface SyncResult {
|
|
17
|
+
actualNotebooks: ActualNotebook[];
|
|
18
|
+
matched: Array<{
|
|
19
|
+
libraryId: string;
|
|
20
|
+
libraryName: string;
|
|
21
|
+
actualTitle: string;
|
|
22
|
+
actualUrl: string;
|
|
23
|
+
}>;
|
|
24
|
+
staleEntries: Array<{
|
|
25
|
+
libraryId: string;
|
|
26
|
+
libraryName: string;
|
|
27
|
+
libraryUrl: string;
|
|
28
|
+
reason: string;
|
|
29
|
+
}>;
|
|
30
|
+
missingNotebooks: ActualNotebook[];
|
|
31
|
+
suggestions: string[];
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Syncs library with actual NotebookLM notebooks
|
|
35
|
+
*/
|
|
36
|
+
export declare class NotebookSync {
|
|
37
|
+
private authManager;
|
|
38
|
+
private contextManager;
|
|
39
|
+
private library;
|
|
40
|
+
private page;
|
|
41
|
+
constructor(authManager: AuthManager, contextManager: SharedContextManager, library: NotebookLibrary);
|
|
42
|
+
/**
|
|
43
|
+
* Sync library with actual NotebookLM notebooks
|
|
44
|
+
*/
|
|
45
|
+
syncLibrary(options?: {
|
|
46
|
+
autoFix?: boolean;
|
|
47
|
+
showBrowser?: boolean;
|
|
48
|
+
}): Promise<SyncResult>;
|
|
49
|
+
/**
|
|
50
|
+
* Extract all notebooks from NotebookLM homepage
|
|
51
|
+
*/
|
|
52
|
+
extractNotebooks(): Promise<ActualNotebook[]>;
|
|
53
|
+
/**
|
|
54
|
+
* Compare library entries with actual notebooks
|
|
55
|
+
*/
|
|
56
|
+
private compareLibraryWithActual;
|
|
57
|
+
/**
|
|
58
|
+
* Normalize a title for comparison
|
|
59
|
+
*/
|
|
60
|
+
private normalizeTitle;
|
|
61
|
+
/**
|
|
62
|
+
* Check if two titles match (fuzzy)
|
|
63
|
+
*/
|
|
64
|
+
private titlesMatch;
|
|
65
|
+
/**
|
|
66
|
+
* Extract notebook ID from URL
|
|
67
|
+
*/
|
|
68
|
+
private extractNotebookId;
|
|
69
|
+
/**
|
|
70
|
+
* Auto-fix stale entries by removing them
|
|
71
|
+
*/
|
|
72
|
+
private autoFixStaleEntries;
|
|
73
|
+
/**
|
|
74
|
+
* Log sync summary
|
|
75
|
+
*/
|
|
76
|
+
private logSyncSummary;
|
|
77
|
+
/**
|
|
78
|
+
* Initialize browser and navigate to NotebookLM
|
|
79
|
+
*/
|
|
80
|
+
private initialize;
|
|
81
|
+
/**
|
|
82
|
+
* Cleanup resources
|
|
83
|
+
*/
|
|
84
|
+
private cleanup;
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Sync library with NotebookLM
|
|
88
|
+
*/
|
|
89
|
+
export declare function syncLibrary(authManager: AuthManager, contextManager: SharedContextManager, library: NotebookLibrary, options?: {
|
|
90
|
+
autoFix?: boolean;
|
|
91
|
+
showBrowser?: boolean;
|
|
92
|
+
}): Promise<SyncResult>;
|
|
93
|
+
//# sourceMappingURL=notebook-sync.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"notebook-sync.d.ts","sourceRoot":"","sources":["../../src/notebook-creation/notebook-sync.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAItE,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,UAAU;IACzB,eAAe,EAAE,cAAc,EAAE,CAAC;IAClC,OAAO,EAAE,KAAK,CAAC;QACb,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC,CAAC;IACH,YAAY,EAAE,KAAK,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;QACpB,UAAU,EAAE,MAAM,CAAC;QACnB,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC,CAAC;IACH,gBAAgB,EAAE,cAAc,EAAE,CAAC;IACnC,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED;;GAEG;AACH,qBAAa,YAAY;IAIrB,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,OAAO;IALjB,OAAO,CAAC,IAAI,CAAqB;gBAGvB,WAAW,EAAE,WAAW,EACxB,cAAc,EAAE,oBAAoB,EACpC,OAAO,EAAE,eAAe;IAGlC;;OAEG;IACG,WAAW,CAAC,OAAO,CAAC,EAAE;QAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,WAAW,CAAC,EAAE,OAAO,CAAC;KACvB,GAAG,OAAO,CAAC,UAAU,CAAC;IAgCvB;;OAEG;IACG,gBAAgB,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;IA6InD;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAmGhC;;OAEG;IACH,OAAO,CAAC,cAAc;IAUtB;;OAEG;IACH,OAAO,CAAC,WAAW;IAoBnB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAMzB;;OAEG;YACW,mBAAmB;IAejC;;OAEG;IACH,OAAO,CAAC,cAAc;IAgBtB;;OAEG;YACW,UAAU;IA+BxB;;OAEG;YACW,OAAO;CAUtB;AAED;;GAEG;AACH,wBAAsB,WAAW,CAC/B,WAAW,EAAE,WAAW,EACxB,cAAc,EAAE,oBAAoB,EACpC,OAAO,EAAE,eAAe,EACxB,OAAO,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,WAAW,CAAC,EAAE,OAAO,CAAA;CAAE,GACrD,OAAO,CAAC,UAAU,CAAC,CAGrB"}
|
|
@@ -0,0 +1,370 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* NotebookLM Library Sync
|
|
3
|
+
*
|
|
4
|
+
* Syncs local library with actual NotebookLM notebooks.
|
|
5
|
+
* Detects stale entries, extracts real URLs, and offers cleanup.
|
|
6
|
+
*/
|
|
7
|
+
import { log } from "../utils/logger.js";
|
|
8
|
+
import { randomDelay } from "../utils/stealth-utils.js";
|
|
9
|
+
import { CONFIG } from "../config.js";
|
|
10
|
+
const NOTEBOOKLM_URL = "https://notebooklm.google.com/";
|
|
11
|
+
/**
|
|
12
|
+
* Syncs library with actual NotebookLM notebooks
|
|
13
|
+
*/
|
|
14
|
+
export class NotebookSync {
|
|
15
|
+
authManager;
|
|
16
|
+
contextManager;
|
|
17
|
+
library;
|
|
18
|
+
page = null;
|
|
19
|
+
constructor(authManager, contextManager, library) {
|
|
20
|
+
this.authManager = authManager;
|
|
21
|
+
this.contextManager = contextManager;
|
|
22
|
+
this.library = library;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Sync library with actual NotebookLM notebooks
|
|
26
|
+
*/
|
|
27
|
+
async syncLibrary(options) {
|
|
28
|
+
try {
|
|
29
|
+
log.info("🔄 Starting library sync...");
|
|
30
|
+
// Initialize browser
|
|
31
|
+
await this.initialize(options?.showBrowser);
|
|
32
|
+
// Extract actual notebooks from NotebookLM
|
|
33
|
+
const actualNotebooks = await this.extractNotebooks();
|
|
34
|
+
log.info(`📚 Found ${actualNotebooks.length} notebooks in NotebookLM`);
|
|
35
|
+
// Get library entries
|
|
36
|
+
const libraryEntries = this.library.listNotebooks();
|
|
37
|
+
log.info(`📖 Library has ${libraryEntries.length} entries`);
|
|
38
|
+
// Compare and categorize
|
|
39
|
+
const result = this.compareLibraryWithActual(libraryEntries, actualNotebooks);
|
|
40
|
+
// Log summary
|
|
41
|
+
this.logSyncSummary(result);
|
|
42
|
+
// Auto-fix if requested
|
|
43
|
+
if (options?.autoFix && result.staleEntries.length > 0) {
|
|
44
|
+
await this.autoFixStaleEntries(result.staleEntries);
|
|
45
|
+
}
|
|
46
|
+
return result;
|
|
47
|
+
}
|
|
48
|
+
finally {
|
|
49
|
+
await this.cleanup();
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Extract all notebooks from NotebookLM homepage
|
|
54
|
+
*/
|
|
55
|
+
async extractNotebooks() {
|
|
56
|
+
if (!this.page)
|
|
57
|
+
throw new Error("Page not initialized");
|
|
58
|
+
log.info("📋 Extracting notebooks from NotebookLM...");
|
|
59
|
+
// Wait for page to fully load
|
|
60
|
+
await this.page.waitForLoadState("networkidle").catch(() => { });
|
|
61
|
+
await randomDelay(2000, 3000);
|
|
62
|
+
// Try to click on "My notebooks" tab if it exists
|
|
63
|
+
try {
|
|
64
|
+
// Find tab by evaluating text content
|
|
65
|
+
const clicked = await this.page.evaluate(() => {
|
|
66
|
+
// @ts-expect-error - DOM types
|
|
67
|
+
const tabs = document.querySelectorAll('button, [role="tab"]');
|
|
68
|
+
for (const tab of tabs) {
|
|
69
|
+
if (tab.textContent?.includes("My notebooks")) {
|
|
70
|
+
tab.click();
|
|
71
|
+
return true;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
return false;
|
|
75
|
+
});
|
|
76
|
+
if (clicked) {
|
|
77
|
+
log.info(" 📂 Clicked 'My notebooks' tab");
|
|
78
|
+
await randomDelay(1500, 2000);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
catch {
|
|
82
|
+
// Tab might already be selected or doesn't exist
|
|
83
|
+
}
|
|
84
|
+
// Wait for notebook list to load - try multiple selectors
|
|
85
|
+
await Promise.race([
|
|
86
|
+
this.page.waitForSelector('a[href*="/notebook/"]', { timeout: 15000 }),
|
|
87
|
+
this.page.waitForSelector('[data-notebook-id]', { timeout: 15000 }),
|
|
88
|
+
this.page.waitForSelector('table', { timeout: 15000 }),
|
|
89
|
+
]).catch(() => { });
|
|
90
|
+
await randomDelay(2000, 3000);
|
|
91
|
+
// Debug: Log what we can see on the page
|
|
92
|
+
const pageContent = await this.page.evaluate(() => {
|
|
93
|
+
// @ts-expect-error - DOM types
|
|
94
|
+
return document.body.innerText.substring(0, 500);
|
|
95
|
+
});
|
|
96
|
+
log.dim(` Page preview: ${pageContent.replace(/\n/g, " ").substring(0, 200)}...`);
|
|
97
|
+
// Extract notebook data from the page - notebooks may not be <a> tags
|
|
98
|
+
const notebooks = await this.page.evaluate(() => {
|
|
99
|
+
const results = [];
|
|
100
|
+
// Strategy 1: Find table rows that look like notebook entries
|
|
101
|
+
// @ts-expect-error - DOM types available in browser context
|
|
102
|
+
const rows = document.querySelectorAll('tr');
|
|
103
|
+
for (const row of rows) {
|
|
104
|
+
const rowText = row.textContent || "";
|
|
105
|
+
// Skip header rows or rows without source count
|
|
106
|
+
if (!rowText.match(/\d+\s*Source/i))
|
|
107
|
+
continue;
|
|
108
|
+
// Get the title - first cell with substantial text
|
|
109
|
+
let title = "";
|
|
110
|
+
const cells = row.querySelectorAll('td, th');
|
|
111
|
+
for (const cell of cells) {
|
|
112
|
+
const cellText = cell.textContent?.trim() || "";
|
|
113
|
+
// Skip cells that are just icons, numbers, dates, or role
|
|
114
|
+
if (cellText.length > 3 &&
|
|
115
|
+
!cellText.match(/^[\d\s]+$/) &&
|
|
116
|
+
!cellText.match(/^\d+\s*Source/i) &&
|
|
117
|
+
!cellText.match(/^\d{1,2}\s+\w{3}\s+\d{4}$/) &&
|
|
118
|
+
!cellText.match(/^(Owner|Viewer|Editor)$/i)) {
|
|
119
|
+
title = cellText;
|
|
120
|
+
break;
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
if (!title || title.length < 3)
|
|
124
|
+
continue;
|
|
125
|
+
// Clean up title - remove emoji prefixes
|
|
126
|
+
title = title.replace(/^[🔓🔒📁📄🔐]\s*/, "").trim();
|
|
127
|
+
// Extract source count
|
|
128
|
+
let sourceCount = 0;
|
|
129
|
+
const sourceMatch = rowText.match(/(\d+)\s*Source/i);
|
|
130
|
+
if (sourceMatch)
|
|
131
|
+
sourceCount = parseInt(sourceMatch[1], 10);
|
|
132
|
+
// Extract date
|
|
133
|
+
let createdDate = "";
|
|
134
|
+
const dateMatch = rowText.match(/(\d{1,2}\s+\w{3}\s+\d{4})/);
|
|
135
|
+
if (dateMatch)
|
|
136
|
+
createdDate = dateMatch[1];
|
|
137
|
+
// Try to find notebook URL - look for any link in the row
|
|
138
|
+
let url = "";
|
|
139
|
+
const links = row.querySelectorAll('a');
|
|
140
|
+
for (const link of links) {
|
|
141
|
+
const href = link.href || "";
|
|
142
|
+
if (href.includes('/notebook/')) {
|
|
143
|
+
url = href;
|
|
144
|
+
break;
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
// If no direct link, try data attributes
|
|
148
|
+
if (!url) {
|
|
149
|
+
const dataId = row.getAttribute('data-notebook-id') ||
|
|
150
|
+
row.getAttribute('data-id') ||
|
|
151
|
+
row.querySelector('[data-notebook-id]')?.getAttribute('data-notebook-id');
|
|
152
|
+
if (dataId) {
|
|
153
|
+
url = `https://notebooklm.google.com/notebook/${dataId}`;
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
// If still no URL, we'll construct it from the row index (placeholder)
|
|
157
|
+
if (!url) {
|
|
158
|
+
// Note: This is a placeholder - we'll need to click to get the real URL
|
|
159
|
+
url = `pending-${results.length}`;
|
|
160
|
+
}
|
|
161
|
+
results.push({ title, url, sourceCount, createdDate });
|
|
162
|
+
}
|
|
163
|
+
return results;
|
|
164
|
+
});
|
|
165
|
+
// Debug: Log what we found
|
|
166
|
+
log.dim(` Extracted ${notebooks.length} notebooks from page`);
|
|
167
|
+
// Deduplicate by URL
|
|
168
|
+
const uniqueNotebooks = notebooks.filter((notebook, index, self) => index === self.findIndex(n => n.url === notebook.url));
|
|
169
|
+
log.success(`✅ Extracted ${uniqueNotebooks.length} notebooks`);
|
|
170
|
+
return uniqueNotebooks;
|
|
171
|
+
}
|
|
172
|
+
/**
|
|
173
|
+
* Compare library entries with actual notebooks
|
|
174
|
+
*/
|
|
175
|
+
compareLibraryWithActual(libraryEntries, actualNotebooks) {
|
|
176
|
+
const matched = [];
|
|
177
|
+
const staleEntries = [];
|
|
178
|
+
const suggestions = [];
|
|
179
|
+
// Track which actual notebooks are matched
|
|
180
|
+
const matchedActualIndices = new Set();
|
|
181
|
+
// Check each library entry
|
|
182
|
+
for (const entry of libraryEntries) {
|
|
183
|
+
// Extract notebook ID from URL
|
|
184
|
+
const libraryNotebookId = this.extractNotebookId(entry.url);
|
|
185
|
+
// Try to find matching actual notebook
|
|
186
|
+
let matchingActualIndex = -1;
|
|
187
|
+
// First try: match by URL/ID
|
|
188
|
+
for (let i = 0; i < actualNotebooks.length; i++) {
|
|
189
|
+
const actual = actualNotebooks[i];
|
|
190
|
+
const actualNotebookId = this.extractNotebookId(actual.url);
|
|
191
|
+
if (actualNotebookId === libraryNotebookId && !actual.url.startsWith("pending-")) {
|
|
192
|
+
matchingActualIndex = i;
|
|
193
|
+
break;
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
// Second try: match by title similarity (fuzzy match)
|
|
197
|
+
if (matchingActualIndex < 0) {
|
|
198
|
+
const normalizedEntryName = this.normalizeTitle(entry.name);
|
|
199
|
+
for (let i = 0; i < actualNotebooks.length; i++) {
|
|
200
|
+
if (matchedActualIndices.has(i))
|
|
201
|
+
continue; // Already matched
|
|
202
|
+
const actual = actualNotebooks[i];
|
|
203
|
+
const normalizedActualTitle = this.normalizeTitle(actual.title);
|
|
204
|
+
// Check for significant overlap
|
|
205
|
+
if (this.titlesMatch(normalizedEntryName, normalizedActualTitle)) {
|
|
206
|
+
matchingActualIndex = i;
|
|
207
|
+
break;
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
if (matchingActualIndex >= 0) {
|
|
212
|
+
const matchingActual = actualNotebooks[matchingActualIndex];
|
|
213
|
+
matched.push({
|
|
214
|
+
libraryId: entry.id,
|
|
215
|
+
libraryName: entry.name,
|
|
216
|
+
actualTitle: matchingActual.title,
|
|
217
|
+
actualUrl: matchingActual.url,
|
|
218
|
+
});
|
|
219
|
+
matchedActualIndices.add(matchingActualIndex);
|
|
220
|
+
// Check if name differs significantly
|
|
221
|
+
const cleanActualTitle = this.normalizeTitle(matchingActual.title);
|
|
222
|
+
const cleanEntryName = this.normalizeTitle(entry.name);
|
|
223
|
+
if (cleanEntryName !== cleanActualTitle) {
|
|
224
|
+
suggestions.push(`📝 "${entry.name}" matches "${matchingActual.title}" (consider updating library entry)`);
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
else {
|
|
228
|
+
staleEntries.push({
|
|
229
|
+
libraryId: entry.id,
|
|
230
|
+
libraryName: entry.name,
|
|
231
|
+
libraryUrl: entry.url,
|
|
232
|
+
reason: "Notebook not found in NotebookLM (may be deleted or URL changed)",
|
|
233
|
+
});
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
// Find notebooks not in library
|
|
237
|
+
const missingNotebooks = actualNotebooks.filter((_, index) => !matchedActualIndices.has(index));
|
|
238
|
+
// Generate suggestions
|
|
239
|
+
if (staleEntries.length > 0) {
|
|
240
|
+
suggestions.unshift(`🗑️ ${staleEntries.length} stale library entries should be removed`);
|
|
241
|
+
}
|
|
242
|
+
if (missingNotebooks.length > 0) {
|
|
243
|
+
suggestions.push(`➕ ${missingNotebooks.length} notebooks could be added to library`);
|
|
244
|
+
}
|
|
245
|
+
return {
|
|
246
|
+
actualNotebooks,
|
|
247
|
+
matched,
|
|
248
|
+
staleEntries,
|
|
249
|
+
missingNotebooks,
|
|
250
|
+
suggestions,
|
|
251
|
+
};
|
|
252
|
+
}
|
|
253
|
+
/**
|
|
254
|
+
* Normalize a title for comparison
|
|
255
|
+
*/
|
|
256
|
+
normalizeTitle(title) {
|
|
257
|
+
return title
|
|
258
|
+
.toLowerCase()
|
|
259
|
+
.replace(/[🔓🔒📁📄🔐⚛️🧠🛡️💻📋]/g, "") // Remove emojis
|
|
260
|
+
.replace(/[\u{1F300}-\u{1F9FF}]/gu, "") // Remove other emojis
|
|
261
|
+
.replace(/[^\w\s]/g, " ") // Remove punctuation
|
|
262
|
+
.replace(/\s+/g, " ") // Normalize whitespace
|
|
263
|
+
.trim();
|
|
264
|
+
}
|
|
265
|
+
/**
|
|
266
|
+
* Check if two titles match (fuzzy)
|
|
267
|
+
*/
|
|
268
|
+
titlesMatch(title1, title2) {
|
|
269
|
+
// Exact match
|
|
270
|
+
if (title1 === title2)
|
|
271
|
+
return true;
|
|
272
|
+
// One contains the other
|
|
273
|
+
if (title1.includes(title2) || title2.includes(title1))
|
|
274
|
+
return true;
|
|
275
|
+
// Split into words and check overlap
|
|
276
|
+
const words1 = new Set(title1.split(" ").filter(w => w.length > 3));
|
|
277
|
+
const words2 = new Set(title2.split(" ").filter(w => w.length > 3));
|
|
278
|
+
if (words1.size === 0 || words2.size === 0)
|
|
279
|
+
return false;
|
|
280
|
+
const intersection = [...words1].filter(w => words2.has(w));
|
|
281
|
+
const overlapRatio = intersection.length / Math.min(words1.size, words2.size);
|
|
282
|
+
// If 60%+ of significant words match, consider it a match
|
|
283
|
+
return overlapRatio >= 0.6;
|
|
284
|
+
}
|
|
285
|
+
/**
|
|
286
|
+
* Extract notebook ID from URL
|
|
287
|
+
*/
|
|
288
|
+
extractNotebookId(url) {
|
|
289
|
+
// URL format: https://notebooklm.google.com/notebook/UUID?authuser=X
|
|
290
|
+
const match = url.match(/\/notebook\/([a-f0-9-]+)/i);
|
|
291
|
+
return match ? match[1] : url;
|
|
292
|
+
}
|
|
293
|
+
/**
|
|
294
|
+
* Auto-fix stale entries by removing them
|
|
295
|
+
*/
|
|
296
|
+
async autoFixStaleEntries(staleEntries) {
|
|
297
|
+
log.info("🔧 Auto-fixing stale entries...");
|
|
298
|
+
for (const entry of staleEntries) {
|
|
299
|
+
try {
|
|
300
|
+
this.library.removeNotebook(entry.libraryId);
|
|
301
|
+
log.success(`✅ Removed stale entry: ${entry.libraryName}`);
|
|
302
|
+
}
|
|
303
|
+
catch (error) {
|
|
304
|
+
log.warning(`⚠️ Could not remove ${entry.libraryName}: ${error}`);
|
|
305
|
+
}
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
/**
|
|
309
|
+
* Log sync summary
|
|
310
|
+
*/
|
|
311
|
+
logSyncSummary(result) {
|
|
312
|
+
log.info("");
|
|
313
|
+
log.info("📊 Sync Summary:");
|
|
314
|
+
log.info(` ✅ Matched: ${result.matched.length}`);
|
|
315
|
+
log.info(` ⚠️ Stale: ${result.staleEntries.length}`);
|
|
316
|
+
log.info(` ➕ Missing: ${result.missingNotebooks.length}`);
|
|
317
|
+
log.info("");
|
|
318
|
+
if (result.suggestions.length > 0) {
|
|
319
|
+
log.info("💡 Suggestions:");
|
|
320
|
+
for (const suggestion of result.suggestions) {
|
|
321
|
+
log.info(` ${suggestion}`);
|
|
322
|
+
}
|
|
323
|
+
}
|
|
324
|
+
}
|
|
325
|
+
/**
|
|
326
|
+
* Initialize browser and navigate to NotebookLM
|
|
327
|
+
*/
|
|
328
|
+
async initialize(showBrowser) {
|
|
329
|
+
log.info("🌐 Initializing browser for sync...");
|
|
330
|
+
// Get browser context
|
|
331
|
+
const context = await this.contextManager.getOrCreateContext(showBrowser === true ? true : undefined);
|
|
332
|
+
// Check authentication
|
|
333
|
+
const isAuthenticated = await this.authManager.validateCookiesExpiry(context);
|
|
334
|
+
if (!isAuthenticated) {
|
|
335
|
+
throw new Error("Not authenticated to NotebookLM. Please run setup_auth first.");
|
|
336
|
+
}
|
|
337
|
+
// Create new page
|
|
338
|
+
this.page = await context.newPage();
|
|
339
|
+
// Navigate to NotebookLM
|
|
340
|
+
await this.page.goto(NOTEBOOKLM_URL, {
|
|
341
|
+
waitUntil: "domcontentloaded",
|
|
342
|
+
timeout: CONFIG.browserTimeout,
|
|
343
|
+
});
|
|
344
|
+
await randomDelay(2000, 3000);
|
|
345
|
+
await this.page.waitForLoadState("networkidle").catch(() => { });
|
|
346
|
+
log.success("✅ Browser initialized");
|
|
347
|
+
}
|
|
348
|
+
/**
|
|
349
|
+
* Cleanup resources
|
|
350
|
+
*/
|
|
351
|
+
async cleanup() {
|
|
352
|
+
if (this.page) {
|
|
353
|
+
try {
|
|
354
|
+
await this.page.close();
|
|
355
|
+
}
|
|
356
|
+
catch {
|
|
357
|
+
// Ignore cleanup errors
|
|
358
|
+
}
|
|
359
|
+
this.page = null;
|
|
360
|
+
}
|
|
361
|
+
}
|
|
362
|
+
}
|
|
363
|
+
/**
|
|
364
|
+
* Sync library with NotebookLM
|
|
365
|
+
*/
|
|
366
|
+
export async function syncLibrary(authManager, contextManager, library, options) {
|
|
367
|
+
const sync = new NotebookSync(authManager, contextManager, library);
|
|
368
|
+
return await sync.syncLibrary(options);
|
|
369
|
+
}
|
|
370
|
+
//# sourceMappingURL=notebook-sync.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"notebook-sync.js","sourceRoot":"","sources":["../../src/notebook-creation/notebook-sync.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* Run NotebookLM UI Selector Discovery
|
|
4
|
+
*
|
|
5
|
+
* This script launches a browser, navigates NotebookLM's interface,
|
|
6
|
+
* and discovers CSS selectors for notebook creation elements.
|
|
7
|
+
*
|
|
8
|
+
* Usage: npx ts-node src/notebook-creation/run-discovery.ts
|
|
9
|
+
*/
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=run-discovery.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-discovery.d.ts","sourceRoot":"","sources":["../../src/notebook-creation/run-discovery.ts"],"names":[],"mappings":";AACA;;;;;;;GAOG"}
|