@pan-sec/notebooklm-mcp 1.4.0 → 1.7.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.
Files changed (230) hide show
  1. package/README.md +61 -7
  2. package/SECURITY.md +40 -6
  3. package/dist/auth/mcp-auth.d.ts.map +1 -1
  4. package/dist/auth/mcp-auth.js +3 -6
  5. package/dist/auth/mcp-auth.js.map +1 -1
  6. package/dist/compliance/alert-manager.d.ts +120 -0
  7. package/dist/compliance/alert-manager.d.ts.map +1 -0
  8. package/dist/compliance/alert-manager.js +420 -0
  9. package/dist/compliance/alert-manager.js.map +1 -0
  10. package/dist/compliance/breach-detection.d.ts +134 -0
  11. package/dist/compliance/breach-detection.d.ts.map +1 -0
  12. package/dist/compliance/breach-detection.js +456 -0
  13. package/dist/compliance/breach-detection.js.map +1 -0
  14. package/dist/compliance/change-log.d.ts +113 -0
  15. package/dist/compliance/change-log.d.ts.map +1 -0
  16. package/dist/compliance/change-log.js +275 -0
  17. package/dist/compliance/change-log.js.map +1 -0
  18. package/dist/compliance/compliance-logger.d.ts +136 -0
  19. package/dist/compliance/compliance-logger.d.ts.map +1 -0
  20. package/dist/compliance/compliance-logger.js +425 -0
  21. package/dist/compliance/compliance-logger.js.map +1 -0
  22. package/dist/compliance/compliance-tools.d.ts +18 -0
  23. package/dist/compliance/compliance-tools.d.ts.map +1 -0
  24. package/dist/compliance/compliance-tools.js +673 -0
  25. package/dist/compliance/compliance-tools.js.map +1 -0
  26. package/dist/compliance/consent-manager.d.ts +130 -0
  27. package/dist/compliance/consent-manager.d.ts.map +1 -0
  28. package/dist/compliance/consent-manager.js +386 -0
  29. package/dist/compliance/consent-manager.js.map +1 -0
  30. package/dist/compliance/dashboard.d.ts +243 -0
  31. package/dist/compliance/dashboard.d.ts.map +1 -0
  32. package/dist/compliance/dashboard.js +519 -0
  33. package/dist/compliance/dashboard.js.map +1 -0
  34. package/dist/compliance/data-classification.d.ts +117 -0
  35. package/dist/compliance/data-classification.d.ts.map +1 -0
  36. package/dist/compliance/data-classification.js +469 -0
  37. package/dist/compliance/data-classification.js.map +1 -0
  38. package/dist/compliance/data-erasure.d.ts +110 -0
  39. package/dist/compliance/data-erasure.d.ts.map +1 -0
  40. package/dist/compliance/data-erasure.js +501 -0
  41. package/dist/compliance/data-erasure.js.map +1 -0
  42. package/dist/compliance/data-export.d.ts +85 -0
  43. package/dist/compliance/data-export.d.ts.map +1 -0
  44. package/dist/compliance/data-export.js +394 -0
  45. package/dist/compliance/data-export.js.map +1 -0
  46. package/dist/compliance/data-inventory.d.ts +136 -0
  47. package/dist/compliance/data-inventory.d.ts.map +1 -0
  48. package/dist/compliance/data-inventory.js +335 -0
  49. package/dist/compliance/data-inventory.js.map +1 -0
  50. package/dist/compliance/dsar-handler.d.ts +123 -0
  51. package/dist/compliance/dsar-handler.d.ts.map +1 -0
  52. package/dist/compliance/dsar-handler.js +371 -0
  53. package/dist/compliance/dsar-handler.js.map +1 -0
  54. package/dist/compliance/evidence-collector.d.ts +187 -0
  55. package/dist/compliance/evidence-collector.d.ts.map +1 -0
  56. package/dist/compliance/evidence-collector.js +656 -0
  57. package/dist/compliance/evidence-collector.js.map +1 -0
  58. package/dist/compliance/health-monitor.d.ts +111 -0
  59. package/dist/compliance/health-monitor.d.ts.map +1 -0
  60. package/dist/compliance/health-monitor.js +509 -0
  61. package/dist/compliance/health-monitor.js.map +1 -0
  62. package/dist/compliance/incident-manager.d.ts +131 -0
  63. package/dist/compliance/incident-manager.d.ts.map +1 -0
  64. package/dist/compliance/incident-manager.js +418 -0
  65. package/dist/compliance/incident-manager.js.map +1 -0
  66. package/dist/compliance/index.d.ts +32 -0
  67. package/dist/compliance/index.d.ts.map +1 -0
  68. package/dist/compliance/index.js +35 -0
  69. package/dist/compliance/index.js.map +1 -0
  70. package/dist/compliance/policy-docs.d.ts +108 -0
  71. package/dist/compliance/policy-docs.d.ts.map +1 -0
  72. package/dist/compliance/policy-docs.js +464 -0
  73. package/dist/compliance/policy-docs.js.map +1 -0
  74. package/dist/compliance/privacy-notice-text.d.ts +58 -0
  75. package/dist/compliance/privacy-notice-text.d.ts.map +1 -0
  76. package/dist/compliance/privacy-notice-text.js +161 -0
  77. package/dist/compliance/privacy-notice-text.js.map +1 -0
  78. package/dist/compliance/privacy-notice.d.ts +128 -0
  79. package/dist/compliance/privacy-notice.d.ts.map +1 -0
  80. package/dist/compliance/privacy-notice.js +250 -0
  81. package/dist/compliance/privacy-notice.js.map +1 -0
  82. package/dist/compliance/report-generator.d.ts +168 -0
  83. package/dist/compliance/report-generator.d.ts.map +1 -0
  84. package/dist/compliance/report-generator.js +830 -0
  85. package/dist/compliance/report-generator.js.map +1 -0
  86. package/dist/compliance/retention-engine.d.ts +130 -0
  87. package/dist/compliance/retention-engine.d.ts.map +1 -0
  88. package/dist/compliance/retention-engine.js +510 -0
  89. package/dist/compliance/retention-engine.js.map +1 -0
  90. package/dist/compliance/siem-exporter.d.ts +150 -0
  91. package/dist/compliance/siem-exporter.d.ts.map +1 -0
  92. package/dist/compliance/siem-exporter.js +509 -0
  93. package/dist/compliance/siem-exporter.js.map +1 -0
  94. package/dist/compliance/types.d.ts +601 -0
  95. package/dist/compliance/types.d.ts.map +1 -0
  96. package/dist/compliance/types.js +22 -0
  97. package/dist/compliance/types.js.map +1 -0
  98. package/dist/config.d.ts +4 -0
  99. package/dist/config.d.ts.map +1 -1
  100. package/dist/config.js +8 -1
  101. package/dist/config.js.map +1 -1
  102. package/dist/events/event-emitter.d.ts +45 -0
  103. package/dist/events/event-emitter.d.ts.map +1 -0
  104. package/dist/events/event-emitter.js +100 -0
  105. package/dist/events/event-emitter.js.map +1 -0
  106. package/dist/events/event-types.d.ts +124 -0
  107. package/dist/events/event-types.d.ts.map +1 -0
  108. package/dist/events/event-types.js +18 -0
  109. package/dist/events/event-types.js.map +1 -0
  110. package/dist/index.js +59 -2
  111. package/dist/index.js.map +1 -1
  112. package/dist/library/notebook-library.d.ts +25 -2
  113. package/dist/library/notebook-library.d.ts.map +1 -1
  114. package/dist/library/notebook-library.js +144 -3
  115. package/dist/library/notebook-library.js.map +1 -1
  116. package/dist/library/types.d.ts +15 -0
  117. package/dist/library/types.d.ts.map +1 -1
  118. package/dist/notebook-creation/audio-manager.d.ts +56 -0
  119. package/dist/notebook-creation/audio-manager.d.ts.map +1 -0
  120. package/dist/notebook-creation/audio-manager.js +335 -0
  121. package/dist/notebook-creation/audio-manager.js.map +1 -0
  122. package/dist/notebook-creation/discover-creation-flow.d.ts +8 -0
  123. package/dist/notebook-creation/discover-creation-flow.d.ts.map +1 -0
  124. package/dist/notebook-creation/discover-creation-flow.js +177 -0
  125. package/dist/notebook-creation/discover-creation-flow.js.map +1 -0
  126. package/dist/notebook-creation/discover-quota.d.ts +8 -0
  127. package/dist/notebook-creation/discover-quota.d.ts.map +1 -0
  128. package/dist/notebook-creation/discover-quota.js +195 -0
  129. package/dist/notebook-creation/discover-quota.js.map +1 -0
  130. package/dist/notebook-creation/discover-source-dialog.d.ts +8 -0
  131. package/dist/notebook-creation/discover-source-dialog.d.ts.map +1 -0
  132. package/dist/notebook-creation/discover-source-dialog.js +134 -0
  133. package/dist/notebook-creation/discover-source-dialog.js.map +1 -0
  134. package/dist/notebook-creation/discover-sources.d.ts +8 -0
  135. package/dist/notebook-creation/discover-sources.d.ts.map +1 -0
  136. package/dist/notebook-creation/discover-sources.js +273 -0
  137. package/dist/notebook-creation/discover-sources.js.map +1 -0
  138. package/dist/notebook-creation/discover-text-input.d.ts +7 -0
  139. package/dist/notebook-creation/discover-text-input.d.ts.map +1 -0
  140. package/dist/notebook-creation/discover-text-input.js +135 -0
  141. package/dist/notebook-creation/discover-text-input.js.map +1 -0
  142. package/dist/notebook-creation/index.d.ts +12 -0
  143. package/dist/notebook-creation/index.d.ts.map +1 -0
  144. package/dist/notebook-creation/index.js +12 -0
  145. package/dist/notebook-creation/index.js.map +1 -0
  146. package/dist/notebook-creation/notebook-creator.d.ts +95 -0
  147. package/dist/notebook-creation/notebook-creator.d.ts.map +1 -0
  148. package/dist/notebook-creation/notebook-creator.js +689 -0
  149. package/dist/notebook-creation/notebook-creator.js.map +1 -0
  150. package/dist/notebook-creation/notebook-sync.d.ts +93 -0
  151. package/dist/notebook-creation/notebook-sync.d.ts.map +1 -0
  152. package/dist/notebook-creation/notebook-sync.js +370 -0
  153. package/dist/notebook-creation/notebook-sync.js.map +1 -0
  154. package/dist/notebook-creation/run-discovery.d.ts +11 -0
  155. package/dist/notebook-creation/run-discovery.d.ts.map +1 -0
  156. package/dist/notebook-creation/run-discovery.js +151 -0
  157. package/dist/notebook-creation/run-discovery.js.map +1 -0
  158. package/dist/notebook-creation/selector-discovery.d.ts +65 -0
  159. package/dist/notebook-creation/selector-discovery.d.ts.map +1 -0
  160. package/dist/notebook-creation/selector-discovery.js +421 -0
  161. package/dist/notebook-creation/selector-discovery.js.map +1 -0
  162. package/dist/notebook-creation/selectors.d.ts +150 -0
  163. package/dist/notebook-creation/selectors.d.ts.map +1 -0
  164. package/dist/notebook-creation/selectors.js +225 -0
  165. package/dist/notebook-creation/selectors.js.map +1 -0
  166. package/dist/notebook-creation/source-manager.d.ts +73 -0
  167. package/dist/notebook-creation/source-manager.d.ts.map +1 -0
  168. package/dist/notebook-creation/source-manager.js +486 -0
  169. package/dist/notebook-creation/source-manager.js.map +1 -0
  170. package/dist/notebook-creation/test-create.d.ts +8 -0
  171. package/dist/notebook-creation/test-create.d.ts.map +1 -0
  172. package/dist/notebook-creation/test-create.js +72 -0
  173. package/dist/notebook-creation/test-create.js.map +1 -0
  174. package/dist/notebook-creation/types.d.ts +173 -0
  175. package/dist/notebook-creation/types.d.ts.map +1 -0
  176. package/dist/notebook-creation/types.js +5 -0
  177. package/dist/notebook-creation/types.js.map +1 -0
  178. package/dist/quota/index.d.ts +8 -0
  179. package/dist/quota/index.d.ts.map +1 -0
  180. package/dist/quota/index.js +8 -0
  181. package/dist/quota/index.js.map +1 -0
  182. package/dist/quota/quota-manager.d.ts +125 -0
  183. package/dist/quota/quota-manager.d.ts.map +1 -0
  184. package/dist/quota/quota-manager.js +330 -0
  185. package/dist/quota/quota-manager.js.map +1 -0
  186. package/dist/session/session-manager.d.ts +5 -0
  187. package/dist/session/session-manager.d.ts.map +1 -1
  188. package/dist/session/session-manager.js +6 -0
  189. package/dist/session/session-manager.js.map +1 -1
  190. package/dist/session/shared-context-manager.d.ts.map +1 -1
  191. package/dist/session/shared-context-manager.js +2 -1
  192. package/dist/session/shared-context-manager.js.map +1 -1
  193. package/dist/tools/definitions/notebook-management.d.ts.map +1 -1
  194. package/dist/tools/definitions/notebook-management.js +525 -0
  195. package/dist/tools/definitions/notebook-management.js.map +1 -1
  196. package/dist/tools/definitions/system.d.ts.map +1 -1
  197. package/dist/tools/definitions/system.js +158 -0
  198. package/dist/tools/definitions/system.js.map +1 -1
  199. package/dist/tools/handlers.d.ts +225 -0
  200. package/dist/tools/handlers.d.ts.map +1 -1
  201. package/dist/tools/handlers.js +911 -0
  202. package/dist/tools/handlers.js.map +1 -1
  203. package/dist/utils/audit-logger.d.ts +21 -1
  204. package/dist/utils/audit-logger.d.ts.map +1 -1
  205. package/dist/utils/audit-logger.js +53 -4
  206. package/dist/utils/audit-logger.js.map +1 -1
  207. package/dist/utils/crypto.d.ts.map +1 -1
  208. package/dist/utils/crypto.js +8 -15
  209. package/dist/utils/crypto.js.map +1 -1
  210. package/dist/utils/file-permissions.d.ts +85 -0
  211. package/dist/utils/file-permissions.d.ts.map +1 -0
  212. package/dist/utils/file-permissions.js +180 -0
  213. package/dist/utils/file-permissions.js.map +1 -0
  214. package/dist/utils/settings-manager.d.ts.map +1 -1
  215. package/dist/utils/settings-manager.js +6 -11
  216. package/dist/utils/settings-manager.js.map +1 -1
  217. package/dist/webhooks/index.d.ts +8 -0
  218. package/dist/webhooks/index.d.ts.map +1 -0
  219. package/dist/webhooks/index.js +8 -0
  220. package/dist/webhooks/index.js.map +1 -0
  221. package/dist/webhooks/types.d.ts +57 -0
  222. package/dist/webhooks/types.d.ts.map +1 -0
  223. package/dist/webhooks/types.js +5 -0
  224. package/dist/webhooks/types.js.map +1 -0
  225. package/dist/webhooks/webhook-dispatcher.d.ts +120 -0
  226. package/dist/webhooks/webhook-dispatcher.d.ts.map +1 -0
  227. package/dist/webhooks/webhook-dispatcher.js +519 -0
  228. package/dist/webhooks/webhook-dispatcher.js.map +1 -0
  229. package/docs/COMPLIANCE-SPEC.md +1452 -0
  230. package/package.json +30 -4
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audio-manager.js","sourceRoot":"","sources":["../../src/notebook-creation/audio-manager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Discover Creation Flow
3
+ *
4
+ * Walks through the notebook creation flow step by step,
5
+ * dumping UI elements at each stage to find the correct selectors.
6
+ */
7
+ export {};
8
+ //# sourceMappingURL=discover-creation-flow.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"discover-creation-flow.d.ts","sourceRoot":"","sources":["../../src/notebook-creation/discover-creation-flow.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
@@ -0,0 +1,177 @@
1
+ /**
2
+ * Discover Creation Flow
3
+ *
4
+ * Walks through the notebook creation flow step by step,
5
+ * dumping UI elements at each stage to find the correct selectors.
6
+ */
7
+ import { AuthManager } from "../auth/auth-manager.js";
8
+ import { SharedContextManager } from "../session/shared-context-manager.js";
9
+ import { log } from "../utils/logger.js";
10
+ const NOTEBOOKLM_URL = "https://notebooklm.google.com/";
11
+ async function dumpElements(page, description) {
12
+ log.info(`\nšŸ“‹ ${description}:`);
13
+ const elements = await page.evaluate(() => {
14
+ const results = [];
15
+ // @ts-expect-error - DOM types
16
+ const els = document.querySelectorAll('button, input, textarea, [role="button"], [role="menuitem"], [role="option"], [role="tab"], a, [contenteditable="true"]');
17
+ for (const el of els) {
18
+ const text = el.textContent?.trim().substring(0, 50) || "";
19
+ // Skip empty or icon-only elements
20
+ if (!text && !el.getAttribute("aria-label"))
21
+ continue;
22
+ results.push({
23
+ tag: el.tagName,
24
+ text: text,
25
+ classes: el.className?.substring?.(0, 100) || "",
26
+ id: el.id || "",
27
+ ariaLabel: el.getAttribute("aria-label") || "",
28
+ role: el.getAttribute("role") || "",
29
+ type: el.getAttribute("type") || "",
30
+ placeholder: el.getAttribute("placeholder") || "",
31
+ dataAttrs: Object.fromEntries(Array.from(el.attributes || [])
32
+ .filter((a) => a.name.startsWith("data-"))
33
+ .map((a) => [a.name, a.value?.substring(0, 50)])),
34
+ });
35
+ }
36
+ return results;
37
+ });
38
+ // Log interesting elements
39
+ for (const el of elements) {
40
+ const info = [];
41
+ if (el.text)
42
+ info.push(`"${el.text}"`);
43
+ if (el.ariaLabel)
44
+ info.push(`aria="${el.ariaLabel}"`);
45
+ if (el.role)
46
+ info.push(`role=${el.role}`);
47
+ if (el.type)
48
+ info.push(`type=${el.type}`);
49
+ if (el.placeholder)
50
+ info.push(`placeholder="${el.placeholder}"`);
51
+ if (el.id)
52
+ info.push(`id=${el.id}`);
53
+ if (info.length > 0) {
54
+ log.dim(` ${el.tag}: ${info.join(", ")}`);
55
+ }
56
+ }
57
+ return elements;
58
+ }
59
+ async function findAndClick(page, textPatterns, description) {
60
+ log.info(`\nšŸ–±ļø Looking for: ${description}`);
61
+ for (const pattern of textPatterns) {
62
+ const clicked = await page.evaluate((p) => {
63
+ // @ts-expect-error - DOM types
64
+ const els = document.querySelectorAll('button, [role="button"], [role="menuitem"], [role="tab"], a');
65
+ for (const el of els) {
66
+ const text = el.textContent?.toLowerCase() || "";
67
+ const aria = el.getAttribute("aria-label")?.toLowerCase() || "";
68
+ if (text.includes(p.toLowerCase()) || aria.includes(p.toLowerCase())) {
69
+ el.click();
70
+ return true;
71
+ }
72
+ }
73
+ return false;
74
+ }, pattern);
75
+ if (clicked) {
76
+ log.success(` āœ… Clicked element with "${pattern}"`);
77
+ await page.waitForTimeout(2000);
78
+ return true;
79
+ }
80
+ }
81
+ log.warning(` āš ļø Could not find element matching: ${textPatterns.join(", ")}`);
82
+ return false;
83
+ }
84
+ async function main() {
85
+ log.info("šŸ” Starting Creation Flow Discovery...\n");
86
+ const authManager = new AuthManager();
87
+ const contextManager = new SharedContextManager(authManager);
88
+ try {
89
+ // Get browser context with visible window
90
+ const context = await contextManager.getOrCreateContext(true);
91
+ // Check auth
92
+ const isAuth = await authManager.validateCookiesExpiry(context);
93
+ if (!isAuth) {
94
+ log.error("āŒ Not authenticated. Run setup_auth first.");
95
+ return;
96
+ }
97
+ const page = await context.newPage();
98
+ // Step 1: Navigate to NotebookLM
99
+ log.info("šŸ“ Step 1: Navigate to NotebookLM homepage");
100
+ await page.goto(NOTEBOOKLM_URL, { waitUntil: "domcontentloaded" });
101
+ await page.waitForLoadState("networkidle").catch(() => { });
102
+ await page.waitForTimeout(3000);
103
+ await dumpElements(page, "Homepage elements");
104
+ // Step 2: Click "Create new" or "New notebook"
105
+ log.info("\nšŸ“ Step 2: Click to create new notebook");
106
+ const createClicked = await findAndClick(page, ["Create new", "New notebook", "Create", "New"], "Create new notebook button");
107
+ if (createClicked) {
108
+ await page.waitForTimeout(3000);
109
+ await dumpElements(page, "After clicking Create - looking for name input");
110
+ // Check current URL - might have navigated to notebook
111
+ log.info(` Current URL: ${page.url()}`);
112
+ }
113
+ // Step 3: Look for name input or skip if auto-created
114
+ log.info("\nšŸ“ Step 3: Look for notebook name input");
115
+ const inputs = await page.evaluate(() => {
116
+ // @ts-expect-error - DOM types
117
+ const els = document.querySelectorAll('input, textarea, [contenteditable="true"]');
118
+ return Array.from(els).map((el) => ({
119
+ tag: el.tagName,
120
+ type: el.type,
121
+ placeholder: el.placeholder,
122
+ ariaLabel: el.getAttribute("aria-label"),
123
+ value: el.value,
124
+ classes: el.className?.substring(0, 100),
125
+ }));
126
+ });
127
+ log.info(" Input elements found:");
128
+ for (const inp of inputs) {
129
+ log.dim(` ${inp.tag}: type=${inp.type}, placeholder="${inp.placeholder}", aria="${inp.ariaLabel}"`);
130
+ }
131
+ // Step 4: Find "Add source" button
132
+ log.info("\nšŸ“ Step 4: Look for Add source button");
133
+ await dumpElements(page, "Looking for Add source");
134
+ const addSourceClicked = await findAndClick(page, ["Add source", "Add", "+"], "Add source button");
135
+ if (addSourceClicked) {
136
+ await page.waitForTimeout(2000);
137
+ await dumpElements(page, "After clicking Add source - source type options");
138
+ }
139
+ // Step 5: Look for source type options (URL, File, Text)
140
+ log.info("\nšŸ“ Step 5: Look for URL/Website source option");
141
+ const urlClicked = await findAndClick(page, ["Website", "URL", "Link", "Web"], "URL source option");
142
+ if (urlClicked) {
143
+ await page.waitForTimeout(2000);
144
+ await dumpElements(page, "After selecting URL - looking for input field");
145
+ // Specifically look for input fields
146
+ const urlInputs = await page.evaluate(() => {
147
+ // @ts-expect-error - DOM types
148
+ const els = document.querySelectorAll('input[type="url"], input[type="text"], input:not([type]), textarea');
149
+ return Array.from(els).map((el) => ({
150
+ tag: el.tagName,
151
+ type: el.type,
152
+ placeholder: el.placeholder,
153
+ ariaLabel: el.getAttribute("aria-label"),
154
+ classes: el.className?.substring(0, 100),
155
+ visible: el.offsetParent !== null,
156
+ }));
157
+ });
158
+ log.info(" URL Input candidates:");
159
+ for (const inp of urlInputs) {
160
+ if (inp.visible) {
161
+ log.dim(` ${inp.tag}: type=${inp.type}, placeholder="${inp.placeholder}", aria="${inp.ariaLabel}"`);
162
+ }
163
+ }
164
+ }
165
+ // Keep browser open for manual inspection
166
+ log.info("\nāœ… Discovery complete. Browser will stay open for 60 seconds for manual inspection.");
167
+ await page.waitForTimeout(60000);
168
+ }
169
+ catch (error) {
170
+ log.error(`āŒ Error: ${error}`);
171
+ }
172
+ finally {
173
+ await contextManager.closeContext();
174
+ }
175
+ }
176
+ main().catch(console.error);
177
+ //# sourceMappingURL=discover-creation-flow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"discover-creation-flow.js","sourceRoot":"","sources":["../../src/notebook-creation/discover-creation-flow.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AAGzC,MAAM,cAAc,GAAG,gCAAgC,CAAC;AAcxD,KAAK,UAAU,YAAY,CAAC,IAAU,EAAE,WAAmB;IACzD,GAAG,CAAC,IAAI,CAAC,QAAQ,WAAW,GAAG,CAAC,CAAC;IAEjC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE;QACxC,MAAM,OAAO,GAAU,EAAE,CAAC;QAC1B,+BAA+B;QAC/B,MAAM,GAAG,GAAG,QAAQ,CAAC,gBAAgB,CAAC,yHAAyH,CAAC,CAAC;QAEjK,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;YACrB,MAAM,IAAI,GAAI,EAAU,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC;YACpE,mCAAmC;YACnC,IAAI,CAAC,IAAI,IAAI,CAAE,EAAU,CAAC,YAAY,CAAC,YAAY,CAAC;gBAAE,SAAS;YAE/D,OAAO,CAAC,IAAI,CAAC;gBACX,GAAG,EAAE,EAAE,CAAC,OAAO;gBACf,IAAI,EAAE,IAAI;gBACV,OAAO,EAAG,EAAU,CAAC,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,EAAE;gBACzD,EAAE,EAAG,EAAU,CAAC,EAAE,IAAI,EAAE;gBACxB,SAAS,EAAG,EAAU,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,EAAE;gBACvD,IAAI,EAAG,EAAU,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE;gBAC5C,IAAI,EAAG,EAAU,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE;gBAC5C,WAAW,EAAG,EAAU,CAAC,YAAY,CAAC,aAAa,CAAC,IAAI,EAAE;gBAC1D,SAAS,EAAE,MAAM,CAAC,WAAW,CAC3B,KAAK,CAAC,IAAI,CAAE,EAAU,CAAC,UAAU,IAAI,EAAE,CAAC;qBACrC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;qBAC9C,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CACxD;aACF,CAAC,CAAC;QACL,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC,CAAC;IAEH,2BAA2B;IAC3B,KAAK,MAAM,EAAE,IAAI,QAAQ,EAAE,CAAC;QAC1B,MAAM,IAAI,GAAG,EAAE,CAAC;QAChB,IAAI,EAAE,CAAC,IAAI;YAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC;QACvC,IAAI,EAAE,CAAC,SAAS;YAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,SAAS,GAAG,CAAC,CAAC;QACtD,IAAI,EAAE,CAAC,IAAI;YAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;QAC1C,IAAI,EAAE,CAAC,IAAI;YAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;QAC1C,IAAI,EAAE,CAAC,WAAW;YAAE,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,WAAW,GAAG,CAAC,CAAC;QACjE,IAAI,EAAE,CAAC,EAAE;YAAE,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QAEpC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpB,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,GAAG,KAAK,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,IAAU,EAAE,YAAsB,EAAE,WAAmB;IACjF,GAAG,CAAC,IAAI,CAAC,sBAAsB,WAAW,EAAE,CAAC,CAAC;IAE9C,KAAK,MAAM,OAAO,IAAI,YAAY,EAAE,CAAC;QACnC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE;YACxC,+BAA+B;YAC/B,MAAM,GAAG,GAAG,QAAQ,CAAC,gBAAgB,CAAC,6DAA6D,CAAC,CAAC;YACrG,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;gBACrB,MAAM,IAAI,GAAI,EAAU,CAAC,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;gBAC1D,MAAM,IAAI,GAAI,EAAU,CAAC,YAAY,CAAC,YAAY,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;gBACzE,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;oBACpE,EAAU,CAAC,KAAK,EAAE,CAAC;oBACpB,OAAO,IAAI,CAAC;gBACd,CAAC;YACH,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC,EAAE,OAAO,CAAC,CAAC;QAEZ,IAAI,OAAO,EAAE,CAAC;YACZ,GAAG,CAAC,OAAO,CAAC,6BAA6B,OAAO,GAAG,CAAC,CAAC;YACrD,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YAChC,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,GAAG,CAAC,OAAO,CAAC,yCAAyC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChF,OAAO,KAAK,CAAC;AACf,CAAC;AAED,KAAK,UAAU,IAAI;IACjB,GAAG,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;IAErD,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;IACtC,MAAM,cAAc,GAAG,IAAI,oBAAoB,CAAC,WAAW,CAAC,CAAC;IAE7D,IAAI,CAAC;QACH,0CAA0C;QAC1C,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAE9D,aAAa;QACb,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;QAChE,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,GAAG,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC;YACxD,OAAO;QACT,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;QAErC,iCAAiC;QACjC,GAAG,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC;QACvD,MAAM,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,SAAS,EAAE,kBAAkB,EAAE,CAAC,CAAC;QACnE,MAAM,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAC3D,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAEhC,MAAM,YAAY,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;QAE9C,+CAA+C;QAC/C,GAAG,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;QACtD,MAAM,aAAa,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,CAAC,YAAY,EAAE,cAAc,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,4BAA4B,CAAC,CAAC;QAE9H,IAAI,aAAa,EAAE,CAAC;YAClB,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YAChC,MAAM,YAAY,CAAC,IAAI,EAAE,gDAAgD,CAAC,CAAC;YAE3E,uDAAuD;YACvD,GAAG,CAAC,IAAI,CAAC,kBAAkB,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAC3C,CAAC;QAED,sDAAsD;QACtD,GAAG,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;QACtD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE;YACtC,+BAA+B;YAC/B,MAAM,GAAG,GAAG,QAAQ,CAAC,gBAAgB,CAAC,2CAA2C,CAAC,CAAC;YACnF,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAO,EAAE,EAAE,CAAC,CAAC;gBACvC,GAAG,EAAE,EAAE,CAAC,OAAO;gBACf,IAAI,EAAE,EAAE,CAAC,IAAI;gBACb,WAAW,EAAE,EAAE,CAAC,WAAW;gBAC3B,SAAS,EAAE,EAAE,CAAC,YAAY,CAAC,YAAY,CAAC;gBACxC,KAAK,EAAE,EAAE,CAAC,KAAK;gBACf,OAAO,EAAE,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC;aACzC,CAAC,CAAC,CAAC;QACN,CAAC,CAAC,CAAC;QACH,GAAG,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;QACpC,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;YACzB,GAAG,CAAC,GAAG,CAAC,OAAO,GAAG,CAAC,GAAG,UAAU,GAAG,CAAC,IAAI,kBAAkB,GAAG,CAAC,WAAW,YAAY,GAAG,CAAC,SAAS,GAAG,CAAC,CAAC;QACzG,CAAC;QAED,mCAAmC;QACnC,GAAG,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;QACpD,MAAM,YAAY,CAAC,IAAI,EAAE,wBAAwB,CAAC,CAAC;QAEnD,MAAM,gBAAgB,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,CAAC,YAAY,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,mBAAmB,CAAC,CAAC;QAEnG,IAAI,gBAAgB,EAAE,CAAC;YACrB,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YAChC,MAAM,YAAY,CAAC,IAAI,EAAE,iDAAiD,CAAC,CAAC;QAC9E,CAAC;QAED,yDAAyD;QACzD,GAAG,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAC;QAC5D,MAAM,UAAU,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,mBAAmB,CAAC,CAAC;QAEpG,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YAChC,MAAM,YAAY,CAAC,IAAI,EAAE,+CAA+C,CAAC,CAAC;YAE1E,qCAAqC;YACrC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE;gBACzC,+BAA+B;gBAC/B,MAAM,GAAG,GAAG,QAAQ,CAAC,gBAAgB,CAAC,oEAAoE,CAAC,CAAC;gBAC5G,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAO,EAAE,EAAE,CAAC,CAAC;oBACvC,GAAG,EAAE,EAAE,CAAC,OAAO;oBACf,IAAI,EAAE,EAAE,CAAC,IAAI;oBACb,WAAW,EAAE,EAAE,CAAC,WAAW;oBAC3B,SAAS,EAAE,EAAE,CAAC,YAAY,CAAC,YAAY,CAAC;oBACxC,OAAO,EAAE,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC;oBACxC,OAAO,EAAE,EAAE,CAAC,YAAY,KAAK,IAAI;iBAClC,CAAC,CAAC,CAAC;YACN,CAAC,CAAC,CAAC;YACH,GAAG,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;YACpC,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC;gBAC5B,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;oBAChB,GAAG,CAAC,GAAG,CAAC,OAAO,GAAG,CAAC,GAAG,UAAU,GAAG,CAAC,IAAI,kBAAkB,GAAG,CAAC,WAAW,YAAY,GAAG,CAAC,SAAS,GAAG,CAAC,CAAC;gBACzG,CAAC;YACH,CAAC;QACH,CAAC;QAED,0CAA0C;QAC1C,GAAG,CAAC,IAAI,CAAC,sFAAsF,CAAC,CAAC;QACjG,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;IAEnC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,GAAG,CAAC,KAAK,CAAC,YAAY,KAAK,EAAE,CAAC,CAAC;IACjC,CAAC;YAAS,CAAC;QACT,MAAM,cAAc,CAAC,YAAY,EAAE,CAAC;IACtC,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Discover Quota/License UI Elements
3
+ *
4
+ * Finds where license tier and usage limits are displayed in NotebookLM.
5
+ * Run: node dist/notebook-creation/discover-quota.js
6
+ */
7
+ export {};
8
+ //# sourceMappingURL=discover-quota.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"discover-quota.d.ts","sourceRoot":"","sources":["../../src/notebook-creation/discover-quota.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
@@ -0,0 +1,195 @@
1
+ /**
2
+ * Discover Quota/License UI Elements
3
+ *
4
+ * Finds where license tier and usage limits are displayed in NotebookLM.
5
+ * Run: node dist/notebook-creation/discover-quota.js
6
+ */
7
+ import { AuthManager } from "../auth/auth-manager.js";
8
+ import { SharedContextManager } from "../session/shared-context-manager.js";
9
+ import { log } from "../utils/logger.js";
10
+ const NOTEBOOKLM_URL = "https://notebooklm.google.com/";
11
+ async function findQuotaElements(page, description) {
12
+ log.info(`\nšŸ“‹ ${description}:`);
13
+ // Look for quota-related text patterns
14
+ const quotaInfo = await page.evaluate(() => {
15
+ const results = [];
16
+ // Get all text content and look for quota patterns
17
+ // @ts-expect-error - DOM types
18
+ const allElements = document.querySelectorAll('*');
19
+ for (const el of allElements) {
20
+ const text = el.textContent?.trim() || "";
21
+ // Skip very long text (likely containers)
22
+ if (text.length > 200)
23
+ continue;
24
+ // Look for quota-related patterns
25
+ const patterns = [
26
+ /pro/i,
27
+ /free/i,
28
+ /limit/i,
29
+ /\d+\s*\/\s*\d+/, // X/Y format
30
+ /source/i,
31
+ /notebook/i,
32
+ /quota/i,
33
+ /usage/i,
34
+ /upgrade/i,
35
+ /plan/i,
36
+ /subscription/i,
37
+ ];
38
+ for (const pattern of patterns) {
39
+ if (pattern.test(text) && text.length < 100) {
40
+ // Get more context
41
+ const tag = el.tagName;
42
+ const className = el.className?.substring?.(0, 50) || "";
43
+ const ariaLabel = el.getAttribute("aria-label") || "";
44
+ results.push(`[${tag}] "${text}" class="${className}" aria="${ariaLabel}"`);
45
+ break;
46
+ }
47
+ }
48
+ }
49
+ // Deduplicate
50
+ return [...new Set(results)];
51
+ });
52
+ for (const item of quotaInfo) {
53
+ log.dim(` ${item}`);
54
+ }
55
+ }
56
+ async function extractQuotaFromHomepage(page) {
57
+ log.info("\nšŸ” Extracting quota info from homepage...");
58
+ const info = await page.evaluate(() => {
59
+ const result = { rawTexts: [] };
60
+ // Look for PRO/FREE badge
61
+ // @ts-expect-error - DOM types
62
+ const allText = document.body.innerText;
63
+ if (allText.includes("PRO")) {
64
+ result.tier = "pro";
65
+ }
66
+ else if (allText.match(/free\s*(tier|plan|account)/i)) {
67
+ result.tier = "free";
68
+ }
69
+ // Count notebooks in the table
70
+ // @ts-expect-error - DOM types
71
+ const rows = document.querySelectorAll('tr');
72
+ let notebookCount = 0;
73
+ for (const row of rows) {
74
+ if (row.textContent?.includes("Source")) {
75
+ notebookCount++;
76
+ }
77
+ }
78
+ if (notebookCount > 0) {
79
+ result.notebookCount = notebookCount;
80
+ }
81
+ // Look for X/Y patterns (like "0/300")
82
+ const limitMatches = allText.match(/(\d+)\s*\/\s*(\d+)/g) || [];
83
+ result.rawTexts = limitMatches;
84
+ return result;
85
+ });
86
+ log.info(` Tier: ${info.tier || "unknown"}`);
87
+ log.info(` Notebook count: ${info.notebookCount || "unknown"}`);
88
+ log.info(` Limit patterns found: ${info.rawTexts?.join(", ") || "none"}`);
89
+ return info;
90
+ }
91
+ async function checkSettingsPage(page) {
92
+ log.info("\nšŸ“‹ Checking Settings for quota info...");
93
+ // Try to click Settings button
94
+ const settingsClicked = await page.evaluate(() => {
95
+ // @ts-expect-error - DOM types
96
+ const buttons = document.querySelectorAll('button');
97
+ for (const btn of buttons) {
98
+ const aria = btn.getAttribute("aria-label")?.toLowerCase() || "";
99
+ const text = btn.textContent?.toLowerCase() || "";
100
+ if (aria.includes("settings") || text.includes("settings")) {
101
+ btn.click();
102
+ return true;
103
+ }
104
+ }
105
+ return false;
106
+ });
107
+ if (settingsClicked) {
108
+ log.success(" āœ… Clicked Settings button");
109
+ await page.waitForTimeout(2000);
110
+ await findQuotaElements(page, "Settings dialog elements");
111
+ }
112
+ else {
113
+ log.warning(" āš ļø Could not find Settings button");
114
+ }
115
+ }
116
+ async function checkSourceDialog(page) {
117
+ log.info("\nšŸ“‹ Checking Source Dialog for limits...");
118
+ // Create a new notebook to see the source dialog
119
+ const createClicked = await page.evaluate(() => {
120
+ // @ts-expect-error - DOM types
121
+ const buttons = document.querySelectorAll('button');
122
+ for (const btn of buttons) {
123
+ const aria = btn.getAttribute("aria-label") || "";
124
+ if (aria.includes("Create new notebook")) {
125
+ btn.click();
126
+ return true;
127
+ }
128
+ }
129
+ return false;
130
+ });
131
+ if (createClicked) {
132
+ log.success(" āœ… Created new notebook");
133
+ await page.waitForTimeout(3000);
134
+ // Look for source limit indicator
135
+ const sourceLimitInfo = await page.evaluate(() => {
136
+ // @ts-expect-error - DOM types
137
+ const spans = document.querySelectorAll('span');
138
+ for (const span of spans) {
139
+ const text = span.textContent?.trim() || "";
140
+ // Look for "X/Y" pattern near "Source"
141
+ if (text.match(/\d+\s*\/\s*\d+/)) {
142
+ return text;
143
+ }
144
+ if (text.toLowerCase().includes("source limit")) {
145
+ return text;
146
+ }
147
+ }
148
+ return null;
149
+ });
150
+ if (sourceLimitInfo) {
151
+ log.success(` āœ… Source limit indicator: "${sourceLimitInfo}"`);
152
+ }
153
+ await findQuotaElements(page, "Source dialog quota elements");
154
+ }
155
+ }
156
+ async function main() {
157
+ log.info("šŸ” Discovering Quota/License UI Elements...\n");
158
+ const authManager = new AuthManager();
159
+ const contextManager = new SharedContextManager(authManager);
160
+ try {
161
+ const context = await contextManager.getOrCreateContext(true);
162
+ const isAuth = await authManager.validateCookiesExpiry(context);
163
+ if (!isAuth) {
164
+ log.error("āŒ Not authenticated. Run setup_auth first.");
165
+ return;
166
+ }
167
+ const page = await context.newPage();
168
+ // Navigate to NotebookLM homepage
169
+ log.info("šŸ“ Navigating to NotebookLM homepage...");
170
+ await page.goto(NOTEBOOKLM_URL, { waitUntil: "domcontentloaded" });
171
+ await page.waitForLoadState("networkidle").catch(() => { });
172
+ await page.waitForTimeout(3000);
173
+ // 1. Check homepage for quota info
174
+ await findQuotaElements(page, "Homepage quota-related elements");
175
+ await extractQuotaFromHomepage(page);
176
+ // 2. Check Settings dialog
177
+ await checkSettingsPage(page);
178
+ // Close any dialog
179
+ await page.keyboard.press("Escape");
180
+ await page.waitForTimeout(1000);
181
+ // 3. Check source dialog in new notebook
182
+ await checkSourceDialog(page);
183
+ // Keep browser open for inspection
184
+ log.info("\nāœ… Discovery complete. Browser open for 60 seconds...");
185
+ await page.waitForTimeout(60000);
186
+ }
187
+ catch (error) {
188
+ log.error(`āŒ Error: ${error}`);
189
+ }
190
+ finally {
191
+ await contextManager.closeContext();
192
+ }
193
+ }
194
+ main().catch(console.error);
195
+ //# sourceMappingURL=discover-quota.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"discover-quota.js","sourceRoot":"","sources":["../../src/notebook-creation/discover-quota.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Discover Source Dialog Options
3
+ *
4
+ * Dumps elements available after clicking "Add source" button.
5
+ * Run: node dist/notebook-creation/discover-source-dialog.js
6
+ */
7
+ export {};
8
+ //# sourceMappingURL=discover-source-dialog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"discover-source-dialog.d.ts","sourceRoot":"","sources":["../../src/notebook-creation/discover-source-dialog.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
@@ -0,0 +1,134 @@
1
+ /**
2
+ * Discover Source Dialog Options
3
+ *
4
+ * Dumps elements available after clicking "Add source" button.
5
+ * Run: node dist/notebook-creation/discover-source-dialog.js
6
+ */
7
+ import { AuthManager } from "../auth/auth-manager.js";
8
+ import { SharedContextManager } from "../session/shared-context-manager.js";
9
+ import { log } from "../utils/logger.js";
10
+ const NOTEBOOKLM_URL = "https://notebooklm.google.com/";
11
+ async function dumpElements(page, description) {
12
+ log.info(`\nšŸ“‹ ${description}:`);
13
+ const elements = await page.evaluate(() => {
14
+ const results = [];
15
+ // @ts-expect-error - DOM types
16
+ const els = document.querySelectorAll('button, input, textarea, [role="button"], [role="menuitem"], [role="option"], [role="tab"], a, [contenteditable="true"], span');
17
+ for (const el of els) {
18
+ const text = el.textContent?.trim().substring(0, 60) || "";
19
+ const ariaLabel = el.getAttribute("aria-label") || "";
20
+ const role = el.getAttribute("role") || "";
21
+ const visible = el.offsetParent !== null;
22
+ // Skip empty or hidden elements
23
+ if (!visible)
24
+ continue;
25
+ if (!text && !ariaLabel)
26
+ continue;
27
+ if (text.length > 200)
28
+ continue; // Skip large text blocks
29
+ results.push({
30
+ tag: el.tagName,
31
+ text: text.substring(0, 60),
32
+ ariaLabel: ariaLabel,
33
+ role: role,
34
+ type: el.getAttribute("type") || "",
35
+ });
36
+ }
37
+ return results;
38
+ });
39
+ // Log interesting elements
40
+ for (const el of elements) {
41
+ const info = [];
42
+ if (el.text)
43
+ info.push(`"${el.text}"`);
44
+ if (el.ariaLabel)
45
+ info.push(`aria="${el.ariaLabel}"`);
46
+ if (el.role)
47
+ info.push(`role=${el.role}`);
48
+ if (el.type)
49
+ info.push(`type=${el.type}`);
50
+ if (info.length > 0) {
51
+ log.dim(` ${el.tag}: ${info.join(", ")}`);
52
+ }
53
+ }
54
+ }
55
+ async function main() {
56
+ log.info("šŸ” Discovering Source Dialog Options...\n");
57
+ const authManager = new AuthManager();
58
+ const contextManager = new SharedContextManager(authManager);
59
+ try {
60
+ const context = await contextManager.getOrCreateContext(true);
61
+ const isAuth = await authManager.validateCookiesExpiry(context);
62
+ if (!isAuth) {
63
+ log.error("āŒ Not authenticated. Run setup_auth first.");
64
+ return;
65
+ }
66
+ const page = await context.newPage();
67
+ // Navigate to NotebookLM
68
+ log.info("šŸ“ Navigating to NotebookLM...");
69
+ await page.goto(NOTEBOOKLM_URL, { waitUntil: "domcontentloaded" });
70
+ await page.waitForLoadState("networkidle").catch(() => { });
71
+ await page.waitForTimeout(3000);
72
+ // Click create new notebook first
73
+ log.info("šŸ“ Creating new notebook...");
74
+ const createButton = await page.$('button[aria-label="Create new notebook"]');
75
+ if (createButton) {
76
+ await createButton.click();
77
+ await page.waitForTimeout(3000);
78
+ log.success("āœ… Clicked Create new notebook");
79
+ }
80
+ else {
81
+ log.error("āŒ Could not find Create new notebook button");
82
+ return;
83
+ }
84
+ // Check current URL
85
+ log.info(`šŸ“ Current URL: ${page.url()}`);
86
+ // Now click Add source
87
+ log.info("\nšŸ“ Looking for Add source button...");
88
+ await dumpElements(page, "Before Add source click - looking for add buttons");
89
+ const addSourceButton = await page.$('button[aria-label="Opens the upload source dialogue"]');
90
+ if (addSourceButton) {
91
+ await addSourceButton.click();
92
+ await page.waitForTimeout(2000);
93
+ log.success("āœ… Clicked Add source button");
94
+ }
95
+ else {
96
+ log.warning("āš ļø Primary selector failed, trying fallback...");
97
+ // Try text-based click
98
+ const clicked = await page.evaluate(() => {
99
+ // @ts-expect-error - DOM types
100
+ const buttons = document.querySelectorAll('button, [role="button"]');
101
+ for (const btn of buttons) {
102
+ const text = btn.textContent?.toLowerCase() || "";
103
+ const aria = btn.getAttribute("aria-label")?.toLowerCase() || "";
104
+ if (text.includes("add source") || aria.includes("upload") || aria.includes("source")) {
105
+ btn.click();
106
+ return true;
107
+ }
108
+ }
109
+ return false;
110
+ });
111
+ if (clicked) {
112
+ await page.waitForTimeout(2000);
113
+ log.success("āœ… Clicked Add source (fallback)");
114
+ }
115
+ else {
116
+ log.error("āŒ Could not find Add source button");
117
+ return;
118
+ }
119
+ }
120
+ // Dump source dialog options
121
+ await dumpElements(page, "SOURCE DIALOG OPTIONS (after clicking Add source)");
122
+ // Keep browser open for inspection
123
+ log.info("\nāœ… Discovery complete. Browser open for 60 seconds...");
124
+ await page.waitForTimeout(60000);
125
+ }
126
+ catch (error) {
127
+ log.error(`āŒ Error: ${error}`);
128
+ }
129
+ finally {
130
+ await contextManager.closeContext();
131
+ }
132
+ }
133
+ main().catch(console.error);
134
+ //# sourceMappingURL=discover-source-dialog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"discover-source-dialog.js","sourceRoot":"","sources":["../../src/notebook-creation/discover-source-dialog.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AAGzC,MAAM,cAAc,GAAG,gCAAgC,CAAC;AAExD,KAAK,UAAU,YAAY,CAAC,IAAU,EAAE,WAAmB;IACzD,GAAG,CAAC,IAAI,CAAC,QAAQ,WAAW,GAAG,CAAC,CAAC;IAEjC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE;QACxC,MAAM,OAAO,GAAU,EAAE,CAAC;QAC1B,+BAA+B;QAC/B,MAAM,GAAG,GAAG,QAAQ,CAAC,gBAAgB,CAAC,+HAA+H,CAAC,CAAC;QAEvK,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;YACrB,MAAM,IAAI,GAAI,EAAU,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC;YACpE,MAAM,SAAS,GAAI,EAAU,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;YAC/D,MAAM,IAAI,GAAI,EAAU,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACpD,MAAM,OAAO,GAAI,EAAU,CAAC,YAAY,KAAK,IAAI,CAAC;YAElD,gCAAgC;YAChC,IAAI,CAAC,OAAO;gBAAE,SAAS;YACvB,IAAI,CAAC,IAAI,IAAI,CAAC,SAAS;gBAAE,SAAS;YAClC,IAAI,IAAI,CAAC,MAAM,GAAG,GAAG;gBAAE,SAAS,CAAC,yBAAyB;YAE1D,OAAO,CAAC,IAAI,CAAC;gBACX,GAAG,EAAE,EAAE,CAAC,OAAO;gBACf,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC;gBAC3B,SAAS,EAAE,SAAS;gBACpB,IAAI,EAAE,IAAI;gBACV,IAAI,EAAG,EAAU,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE;aAC7C,CAAC,CAAC;QACL,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC,CAAC;IAEH,2BAA2B;IAC3B,KAAK,MAAM,EAAE,IAAI,QAAQ,EAAE,CAAC;QAC1B,MAAM,IAAI,GAAG,EAAE,CAAC;QAChB,IAAI,EAAE,CAAC,IAAI;YAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC;QACvC,IAAI,EAAE,CAAC,SAAS;YAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,SAAS,GAAG,CAAC,CAAC;QACtD,IAAI,EAAE,CAAC,IAAI;YAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;QAC1C,IAAI,EAAE,CAAC,IAAI;YAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;QAE1C,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpB,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,GAAG,KAAK,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;AACH,CAAC;AAED,KAAK,UAAU,IAAI;IACjB,GAAG,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;IAEtD,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;IACtC,MAAM,cAAc,GAAG,IAAI,oBAAoB,CAAC,WAAW,CAAC,CAAC;IAE7D,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAC9D,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;QAEhE,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,GAAG,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC;YACxD,OAAO;QACT,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;QAErC,yBAAyB;QACzB,GAAG,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;QAC3C,MAAM,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,SAAS,EAAE,kBAAkB,EAAE,CAAC,CAAC;QACnE,MAAM,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAC3D,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAEhC,kCAAkC;QAClC,GAAG,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;QACxC,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,CAAC,CAAC,0CAA0C,CAAC,CAAC;QAC9E,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,YAAY,CAAC,KAAK,EAAE,CAAC;YAC3B,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YAChC,GAAG,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC;QAC/C,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;YACzD,OAAO;QACT,CAAC;QAED,oBAAoB;QACpB,GAAG,CAAC,IAAI,CAAC,mBAAmB,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAE1C,uBAAuB;QACvB,GAAG,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;QAClD,MAAM,YAAY,CAAC,IAAI,EAAE,mDAAmD,CAAC,CAAC;QAE9E,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,CAAC,CAAC,uDAAuD,CAAC,CAAC;QAC9F,IAAI,eAAe,EAAE,CAAC;YACpB,MAAM,eAAe,CAAC,KAAK,EAAE,CAAC;YAC9B,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YAChC,GAAG,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC;QAC7C,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,OAAO,CAAC,gDAAgD,CAAC,CAAC;YAC9D,uBAAuB;YACvB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE;gBACvC,+BAA+B;gBAC/B,MAAM,OAAO,GAAG,QAAQ,CAAC,gBAAgB,CAAC,yBAAyB,CAAC,CAAC;gBACrE,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;oBAC1B,MAAM,IAAI,GAAI,GAAW,CAAC,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;oBAC3D,MAAM,IAAI,GAAI,GAAW,CAAC,YAAY,CAAC,YAAY,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;oBAC1E,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;wBACrF,GAAW,CAAC,KAAK,EAAE,CAAC;wBACrB,OAAO,IAAI,CAAC;oBACd,CAAC;gBACH,CAAC;gBACD,OAAO,KAAK,CAAC;YACf,CAAC,CAAC,CAAC;YACH,IAAI,OAAO,EAAE,CAAC;gBACZ,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;gBAChC,GAAG,CAAC,OAAO,CAAC,iCAAiC,CAAC,CAAC;YACjD,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;gBAChD,OAAO;YACT,CAAC;QACH,CAAC;QAED,6BAA6B;QAC7B,MAAM,YAAY,CAAC,IAAI,EAAE,mDAAmD,CAAC,CAAC;QAE9E,mCAAmC;QACnC,GAAG,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAC;QACnE,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;IAEnC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,GAAG,CAAC,KAAK,CAAC,YAAY,KAAK,EAAE,CAAC,CAAC;IACjC,CAAC;YAAS,CAAC;QACT,MAAM,cAAc,CAAC,YAAY,EAAE,CAAC;IACtC,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Discover Source Management UI Elements
3
+ *
4
+ * Finds selectors for listing, adding, and removing sources in NotebookLM.
5
+ * Run: node dist/notebook-creation/discover-sources.js
6
+ */
7
+ export {};
8
+ //# sourceMappingURL=discover-sources.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"discover-sources.d.ts","sourceRoot":"","sources":["../../src/notebook-creation/discover-sources.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}