@bubblelab/bubble-core 0.1.19 → 0.1.21
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/bubble-bundle.d.ts +70 -70
- package/dist/bubbles/service-bubble/agi-inc.d.ts +140 -140
- package/dist/bubbles/service-bubble/ai-agent.d.ts +58 -58
- package/dist/bubbles/service-bubble/airtable.d.ts +106 -106
- package/dist/bubbles/service-bubble/apify/apify.d.ts +8 -8
- package/dist/bubbles/service-bubble/browserbase/browserbase.d.ts +47 -47
- package/dist/bubbles/service-bubble/eleven-labs.d.ts +52 -52
- package/dist/bubbles/service-bubble/firecrawl.d.ts +730 -730
- package/dist/bubbles/service-bubble/followupboss.d.ts +282 -282
- package/dist/bubbles/service-bubble/github.d.ts +196 -196
- package/dist/bubbles/service-bubble/gmail.d.ts +632 -632
- package/dist/bubbles/service-bubble/google-calendar.d.ts +960 -158
- package/dist/bubbles/service-bubble/google-calendar.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/google-calendar.js +51 -9
- package/dist/bubbles/service-bubble/google-calendar.js.map +1 -1
- package/dist/bubbles/service-bubble/google-drive.d.ts +310 -92
- package/dist/bubbles/service-bubble/google-drive.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/google-drive.js +438 -0
- package/dist/bubbles/service-bubble/google-drive.js.map +1 -1
- package/dist/bubbles/service-bubble/google-sheets/google-sheets.d.ts +52 -52
- package/dist/bubbles/service-bubble/hello-world.d.ts +8 -8
- package/dist/bubbles/service-bubble/http.d.ts +16 -16
- package/dist/bubbles/service-bubble/insforge-db.d.ts +8 -8
- package/dist/bubbles/service-bubble/notion/notion.d.ts +987 -987
- package/dist/bubbles/service-bubble/postgresql.d.ts +8 -8
- package/dist/bubbles/service-bubble/resend.d.ts +40 -40
- package/dist/bubbles/service-bubble/slack/slack.d.ts +314 -314
- package/dist/bubbles/service-bubble/storage.d.ts +40 -40
- package/dist/bubbles/service-bubble/telegram.d.ts +1591 -1591
- package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.d.ts +30 -30
- package/dist/bubbles/tool-bubble/bubbleflow-validation-tool.d.ts +16 -16
- package/dist/bubbles/tool-bubble/chart-js-tool.d.ts +20 -20
- package/dist/bubbles/tool-bubble/code-edit-tool.d.ts +8 -8
- package/dist/bubbles/tool-bubble/get-bubble-details-tool.d.ts +4 -4
- package/dist/bubbles/tool-bubble/get-trigger-detail-tool.d.ts +4 -4
- package/dist/bubbles/tool-bubble/google-maps-tool.d.ts +20 -20
- package/dist/bubbles/tool-bubble/instagram-tool.d.ts +18 -18
- package/dist/bubbles/tool-bubble/linkedin-tool.d.ts +70 -70
- package/dist/bubbles/tool-bubble/list-bubbles-tool.d.ts +4 -4
- package/dist/bubbles/tool-bubble/reddit-scrape-tool.d.ts +24 -24
- package/dist/bubbles/tool-bubble/research-agent-tool.d.ts +4 -4
- package/dist/bubbles/tool-bubble/sql-query-tool.d.ts +12 -12
- package/dist/bubbles/tool-bubble/tiktok-tool.d.ts +20 -20
- package/dist/bubbles/tool-bubble/tool-template.d.ts +4 -4
- package/dist/bubbles/tool-bubble/twitter-tool.d.ts +68 -68
- package/dist/bubbles/tool-bubble/web-crawl-tool.d.ts +18 -18
- package/dist/bubbles/tool-bubble/web-extract-tool.d.ts +4 -4
- package/dist/bubbles/tool-bubble/web-scrape-tool.d.ts +4 -4
- package/dist/bubbles/tool-bubble/web-search-tool.d.ts +10 -10
- package/dist/bubbles/tool-bubble/youtube-tool.d.ts +32 -32
- package/dist/bubbles/workflow-bubble/database-analyzer.workflow.d.ts +4 -4
- package/dist/bubbles/workflow-bubble/generate-document.workflow.d.ts +28 -28
- package/dist/bubbles/workflow-bubble/parse-document.workflow.d.ts +8 -8
- package/dist/bubbles/workflow-bubble/pdf-form-operations.workflow.d.ts +106 -106
- package/dist/bubbles/workflow-bubble/pdf-ocr.workflow.d.ts +16 -16
- package/dist/bubbles/workflow-bubble/slack-data-assistant.workflow.d.ts +32 -32
- package/dist/bubbles/workflow-bubble/slack-formatter-agent.d.ts +92 -92
- package/dist/bubbles/workflow-bubble/slack-notifier.workflow.d.ts +8 -8
- package/dist/bubbles.json +3 -3
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"google-drive.d.ts","sourceRoot":"","sources":["../../../src/bubbles/service-bubble/google-drive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACpE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"google-drive.d.ts","sourceRoot":"","sources":["../../../src/bubbles/service-bubble/google-drive.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,212 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { ServiceBubble } from '../../types/service-bubble-class.js';
|
|
3
3
|
import { CredentialType } from '@bubblelab/shared-schemas';
|
|
4
|
+
/**
|
|
5
|
+
* Parses markdown content and converts it to Google Docs API formatting requests.
|
|
6
|
+
* Supports: headers, bold, italic, links, bullet lists, numbered lists.
|
|
7
|
+
*
|
|
8
|
+
* @param content - The markdown content to parse
|
|
9
|
+
* @param insertIndex - The starting index in the Google Doc where text will be inserted
|
|
10
|
+
* @returns Object containing plain text and formatting requests
|
|
11
|
+
*/
|
|
12
|
+
function parseMarkdownToGoogleDocs(content, insertIndex) {
|
|
13
|
+
const requests = [];
|
|
14
|
+
const lines = content.split('\n');
|
|
15
|
+
const processedLines = [];
|
|
16
|
+
// Track formatting to apply after text insertion
|
|
17
|
+
const boldRanges = [];
|
|
18
|
+
const italicRanges = [];
|
|
19
|
+
const linkRanges = [];
|
|
20
|
+
const headerLines = [];
|
|
21
|
+
const bulletLines = [];
|
|
22
|
+
const numberedLines = [];
|
|
23
|
+
let currentOffset = 0;
|
|
24
|
+
for (let lineIdx = 0; lineIdx < lines.length; lineIdx++) {
|
|
25
|
+
let line = lines[lineIdx];
|
|
26
|
+
const lineStartOffset = currentOffset;
|
|
27
|
+
// Check for headers (# ## ### etc.)
|
|
28
|
+
const headerMatch = line.match(/^(#{1,6})\s+(.*)$/);
|
|
29
|
+
if (headerMatch) {
|
|
30
|
+
const level = headerMatch[1].length;
|
|
31
|
+
line = headerMatch[2];
|
|
32
|
+
headerLines.push({ lineIndex: processedLines.length, level });
|
|
33
|
+
}
|
|
34
|
+
// Check for bullet lists (- or *)
|
|
35
|
+
const bulletMatch = line.match(/^[\-\*]\s+(.*)$/);
|
|
36
|
+
if (bulletMatch) {
|
|
37
|
+
line = bulletMatch[1];
|
|
38
|
+
bulletLines.push(processedLines.length);
|
|
39
|
+
}
|
|
40
|
+
// Check for numbered lists (1. 2. etc.)
|
|
41
|
+
const numberedMatch = line.match(/^\d+\.\s+(.*)$/);
|
|
42
|
+
if (numberedMatch) {
|
|
43
|
+
line = numberedMatch[1];
|
|
44
|
+
numberedLines.push(processedLines.length);
|
|
45
|
+
}
|
|
46
|
+
// Process inline formatting (bold, italic, links)
|
|
47
|
+
let processedLine = '';
|
|
48
|
+
let i = 0;
|
|
49
|
+
while (i < line.length) {
|
|
50
|
+
// Check for links [text](url)
|
|
51
|
+
const linkMatch = line.slice(i).match(/^\[([^\]]+)\]\(([^)]+)\)/);
|
|
52
|
+
if (linkMatch) {
|
|
53
|
+
const linkText = linkMatch[1];
|
|
54
|
+
const linkUrl = linkMatch[2];
|
|
55
|
+
const startPos = lineStartOffset + processedLine.length;
|
|
56
|
+
linkRanges.push({
|
|
57
|
+
start: startPos,
|
|
58
|
+
end: startPos + linkText.length,
|
|
59
|
+
url: linkUrl,
|
|
60
|
+
});
|
|
61
|
+
processedLine += linkText;
|
|
62
|
+
i += linkMatch[0].length;
|
|
63
|
+
continue;
|
|
64
|
+
}
|
|
65
|
+
// Check for bold **text** or __text__
|
|
66
|
+
const boldMatch = line.slice(i).match(/^(\*\*|__)([^*_]+)\1/);
|
|
67
|
+
if (boldMatch) {
|
|
68
|
+
const boldText = boldMatch[2];
|
|
69
|
+
const startPos = lineStartOffset + processedLine.length;
|
|
70
|
+
boldRanges.push({
|
|
71
|
+
start: startPos,
|
|
72
|
+
end: startPos + boldText.length,
|
|
73
|
+
});
|
|
74
|
+
processedLine += boldText;
|
|
75
|
+
i += boldMatch[0].length;
|
|
76
|
+
continue;
|
|
77
|
+
}
|
|
78
|
+
// Check for italic *text* or _text_ (but not ** or __)
|
|
79
|
+
const italicMatch = line.slice(i).match(/^(\*|_)([^*_]+)\1/);
|
|
80
|
+
if (italicMatch &&
|
|
81
|
+
!line.slice(i).startsWith('**') &&
|
|
82
|
+
!line.slice(i).startsWith('__')) {
|
|
83
|
+
const italicText = italicMatch[2];
|
|
84
|
+
const startPos = lineStartOffset + processedLine.length;
|
|
85
|
+
italicRanges.push({
|
|
86
|
+
start: startPos,
|
|
87
|
+
end: startPos + italicText.length,
|
|
88
|
+
});
|
|
89
|
+
processedLine += italicText;
|
|
90
|
+
i += italicMatch[0].length;
|
|
91
|
+
continue;
|
|
92
|
+
}
|
|
93
|
+
processedLine += line[i];
|
|
94
|
+
i++;
|
|
95
|
+
}
|
|
96
|
+
processedLines.push(processedLine);
|
|
97
|
+
currentOffset += processedLine.length + 1; // +1 for newline
|
|
98
|
+
}
|
|
99
|
+
const plainText = processedLines.join('\n');
|
|
100
|
+
// Build formatting requests (applied in reverse order for correct indexing)
|
|
101
|
+
// Apply header styles
|
|
102
|
+
let lineStart = insertIndex;
|
|
103
|
+
for (let i = 0; i < processedLines.length; i++) {
|
|
104
|
+
const lineEnd = lineStart + processedLines[i].length + 1;
|
|
105
|
+
const header = headerLines.find((h) => h.lineIndex === i);
|
|
106
|
+
if (header) {
|
|
107
|
+
const namedStyle = `HEADING_${Math.min(header.level, 6)}`;
|
|
108
|
+
requests.push({
|
|
109
|
+
updateParagraphStyle: {
|
|
110
|
+
range: { startIndex: lineStart, endIndex: lineEnd },
|
|
111
|
+
paragraphStyle: { namedStyleType: namedStyle },
|
|
112
|
+
fields: 'namedStyleType',
|
|
113
|
+
},
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
lineStart = lineEnd;
|
|
117
|
+
}
|
|
118
|
+
// Apply bullet lists
|
|
119
|
+
if (bulletLines.length > 0) {
|
|
120
|
+
lineStart = insertIndex;
|
|
121
|
+
for (let i = 0; i < processedLines.length; i++) {
|
|
122
|
+
const lineEnd = lineStart + processedLines[i].length + 1;
|
|
123
|
+
if (bulletLines.includes(i)) {
|
|
124
|
+
requests.push({
|
|
125
|
+
createParagraphBullets: {
|
|
126
|
+
range: { startIndex: lineStart, endIndex: lineEnd },
|
|
127
|
+
bulletPreset: 'BULLET_DISC_CIRCLE_SQUARE',
|
|
128
|
+
},
|
|
129
|
+
});
|
|
130
|
+
}
|
|
131
|
+
lineStart = lineEnd;
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
// Apply numbered lists
|
|
135
|
+
if (numberedLines.length > 0) {
|
|
136
|
+
lineStart = insertIndex;
|
|
137
|
+
for (let i = 0; i < processedLines.length; i++) {
|
|
138
|
+
const lineEnd = lineStart + processedLines[i].length + 1;
|
|
139
|
+
if (numberedLines.includes(i)) {
|
|
140
|
+
requests.push({
|
|
141
|
+
createParagraphBullets: {
|
|
142
|
+
range: { startIndex: lineStart, endIndex: lineEnd },
|
|
143
|
+
bulletPreset: 'NUMBERED_DECIMAL_NESTED',
|
|
144
|
+
},
|
|
145
|
+
});
|
|
146
|
+
}
|
|
147
|
+
lineStart = lineEnd;
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
// Apply bold formatting
|
|
151
|
+
for (const range of boldRanges) {
|
|
152
|
+
requests.push({
|
|
153
|
+
updateTextStyle: {
|
|
154
|
+
range: {
|
|
155
|
+
startIndex: insertIndex + range.start,
|
|
156
|
+
endIndex: insertIndex + range.end,
|
|
157
|
+
},
|
|
158
|
+
textStyle: { bold: true },
|
|
159
|
+
fields: 'bold',
|
|
160
|
+
},
|
|
161
|
+
});
|
|
162
|
+
}
|
|
163
|
+
// Apply italic formatting
|
|
164
|
+
for (const range of italicRanges) {
|
|
165
|
+
requests.push({
|
|
166
|
+
updateTextStyle: {
|
|
167
|
+
range: {
|
|
168
|
+
startIndex: insertIndex + range.start,
|
|
169
|
+
endIndex: insertIndex + range.end,
|
|
170
|
+
},
|
|
171
|
+
textStyle: { italic: true },
|
|
172
|
+
fields: 'italic',
|
|
173
|
+
},
|
|
174
|
+
});
|
|
175
|
+
}
|
|
176
|
+
// Apply link formatting
|
|
177
|
+
for (const range of linkRanges) {
|
|
178
|
+
requests.push({
|
|
179
|
+
updateTextStyle: {
|
|
180
|
+
range: {
|
|
181
|
+
startIndex: insertIndex + range.start,
|
|
182
|
+
endIndex: insertIndex + range.end,
|
|
183
|
+
},
|
|
184
|
+
textStyle: {
|
|
185
|
+
link: { url: range.url },
|
|
186
|
+
},
|
|
187
|
+
fields: 'link',
|
|
188
|
+
},
|
|
189
|
+
});
|
|
190
|
+
}
|
|
191
|
+
return { plainText, requests };
|
|
192
|
+
}
|
|
193
|
+
/**
|
|
194
|
+
* Detects if content contains markdown formatting.
|
|
195
|
+
*/
|
|
196
|
+
function isMarkdown(content) {
|
|
197
|
+
const markdownPatterns = [
|
|
198
|
+
/^#{1,6}\s+/m, // Headers
|
|
199
|
+
/\*\*[^*]+\*\*/, // Bold
|
|
200
|
+
/\*[^*]+\*/, // Italic
|
|
201
|
+
/__[^_]+__/, // Bold alt
|
|
202
|
+
/_[^_]+_/, // Italic alt
|
|
203
|
+
/\[[^\]]+\]\([^)]+\)/, // Links
|
|
204
|
+
/^[\-\*]\s+/m, // Bullet lists
|
|
205
|
+
/^\d+\.\s+/m, // Numbered lists
|
|
206
|
+
];
|
|
207
|
+
return markdownPatterns.some((pattern) => pattern.test(content));
|
|
208
|
+
}
|
|
209
|
+
// ============================================================================
|
|
4
210
|
// Define file metadata schema
|
|
5
211
|
const DriveFileSchema = z
|
|
6
212
|
.object({
|
|
@@ -44,6 +250,34 @@ const DriveFolderSchema = z
|
|
|
44
250
|
parents: z.array(z.string()).optional().describe('Parent folder IDs'),
|
|
45
251
|
})
|
|
46
252
|
.describe('Google Drive folder metadata');
|
|
253
|
+
// Define Google Docs Document schema (simplified structure focusing on essential fields)
|
|
254
|
+
const GoogleDocsDocumentSchema = z
|
|
255
|
+
.object({
|
|
256
|
+
documentId: z.string().describe('The ID of the document'),
|
|
257
|
+
title: z.string().describe('The title of the document'),
|
|
258
|
+
revisionId: z
|
|
259
|
+
.string()
|
|
260
|
+
.optional()
|
|
261
|
+
.describe('The revision ID of the document'),
|
|
262
|
+
body: z
|
|
263
|
+
.record(z.unknown())
|
|
264
|
+
.optional()
|
|
265
|
+
.describe('The main body of the document containing content array'),
|
|
266
|
+
suggestionsViewMode: z
|
|
267
|
+
.string()
|
|
268
|
+
.optional()
|
|
269
|
+
.describe('The suggestions view mode applied to the document'),
|
|
270
|
+
inlineObjects: z
|
|
271
|
+
.record(z.unknown())
|
|
272
|
+
.optional()
|
|
273
|
+
.describe('The inline objects (images, etc.) in the document'),
|
|
274
|
+
lists: z
|
|
275
|
+
.record(z.unknown())
|
|
276
|
+
.optional()
|
|
277
|
+
.describe('The lists in the document, keyed by list ID'),
|
|
278
|
+
})
|
|
279
|
+
.passthrough()
|
|
280
|
+
.describe('Google Docs document structure');
|
|
47
281
|
// Define the parameters schema for Google Drive operations
|
|
48
282
|
const GoogleDriveParamsSchema = z.discriminatedUnion('operation', [
|
|
49
283
|
// Upload file operation
|
|
@@ -241,6 +475,43 @@ const GoogleDriveParamsSchema = z.discriminatedUnion('operation', [
|
|
|
241
475
|
.optional()
|
|
242
476
|
.describe('Object mapping credential types to values (injected at runtime)'),
|
|
243
477
|
}),
|
|
478
|
+
// Get Google Doc content operation (uses Google Docs API)
|
|
479
|
+
z.object({
|
|
480
|
+
operation: z
|
|
481
|
+
.literal('get_doc')
|
|
482
|
+
.describe('Get the content and metadata of a Google Doc using the Google Docs API, use this over download_file for Google Docs'),
|
|
483
|
+
document_id: z
|
|
484
|
+
.string()
|
|
485
|
+
.min(1, 'Document ID is required')
|
|
486
|
+
.describe('The ID of the Google Doc to retrieve'),
|
|
487
|
+
credentials: z
|
|
488
|
+
.record(z.nativeEnum(CredentialType), z.string())
|
|
489
|
+
.optional()
|
|
490
|
+
.describe('Object mapping credential types to values (injected at runtime)'),
|
|
491
|
+
}),
|
|
492
|
+
// Update Google Doc content operation (uses Google Docs API)
|
|
493
|
+
z.object({
|
|
494
|
+
operation: z
|
|
495
|
+
.literal('update_doc')
|
|
496
|
+
.describe('Update a Google Doc with new content using the Google Docs API batchUpdate'),
|
|
497
|
+
document_id: z
|
|
498
|
+
.string()
|
|
499
|
+
.min(1, 'Document ID is required')
|
|
500
|
+
.describe('The ID of the Google Doc to update'),
|
|
501
|
+
content: z
|
|
502
|
+
.string()
|
|
503
|
+
.min(1, 'Content is required')
|
|
504
|
+
.describe('The text or markdown content to write to the document (auto-detected)'),
|
|
505
|
+
mode: z
|
|
506
|
+
.enum(['replace', 'append'])
|
|
507
|
+
.optional()
|
|
508
|
+
.default('replace')
|
|
509
|
+
.describe('Update mode: "replace" clears existing content first, "append" adds to the end'),
|
|
510
|
+
credentials: z
|
|
511
|
+
.record(z.nativeEnum(CredentialType), z.string())
|
|
512
|
+
.optional()
|
|
513
|
+
.describe('Object mapping credential types to values (injected at runtime)'),
|
|
514
|
+
}),
|
|
244
515
|
]);
|
|
245
516
|
// Define result schemas for different operations
|
|
246
517
|
const GoogleDriveResultSchema = z.discriminatedUnion('operation', [
|
|
@@ -352,6 +623,37 @@ const GoogleDriveResultSchema = z.discriminatedUnion('operation', [
|
|
|
352
623
|
file: DriveFileSchema.optional().describe('Updated file metadata after move'),
|
|
353
624
|
error: z.string().describe('Error message if operation failed'),
|
|
354
625
|
}),
|
|
626
|
+
z.object({
|
|
627
|
+
operation: z
|
|
628
|
+
.literal('get_doc')
|
|
629
|
+
.describe('Get the content and metadata of a Google Doc using the Google Docs API'),
|
|
630
|
+
success: z
|
|
631
|
+
.boolean()
|
|
632
|
+
.describe('Whether the document was retrieved successfully'),
|
|
633
|
+
document: GoogleDocsDocumentSchema.optional().describe('The Google Docs document content and metadata'),
|
|
634
|
+
plainText: z
|
|
635
|
+
.string()
|
|
636
|
+
.optional()
|
|
637
|
+
.describe('Extracted plain text content from the document'),
|
|
638
|
+
error: z.string().describe('Error message if operation failed'),
|
|
639
|
+
}),
|
|
640
|
+
z.object({
|
|
641
|
+
operation: z
|
|
642
|
+
.literal('update_doc')
|
|
643
|
+
.describe('Update a Google Doc with new content using the Google Docs API batchUpdate'),
|
|
644
|
+
success: z
|
|
645
|
+
.boolean()
|
|
646
|
+
.describe('Whether the document was updated successfully'),
|
|
647
|
+
documentId: z
|
|
648
|
+
.string()
|
|
649
|
+
.optional()
|
|
650
|
+
.describe('The ID of the updated document'),
|
|
651
|
+
revisionId: z
|
|
652
|
+
.string()
|
|
653
|
+
.optional()
|
|
654
|
+
.describe('The new revision ID after the update'),
|
|
655
|
+
error: z.string().describe('Error message if operation failed'),
|
|
656
|
+
}),
|
|
355
657
|
]);
|
|
356
658
|
export class GoogleDriveBubble extends ServiceBubble {
|
|
357
659
|
static type = 'service';
|
|
@@ -479,6 +781,10 @@ export class GoogleDriveBubble extends ServiceBubble {
|
|
|
479
781
|
return await this.shareFile(this.params);
|
|
480
782
|
case 'move_file':
|
|
481
783
|
return await this.moveFile(this.params);
|
|
784
|
+
case 'get_doc':
|
|
785
|
+
return await this.getDoc(this.params);
|
|
786
|
+
case 'update_doc':
|
|
787
|
+
return await this.updateDoc(this.params);
|
|
482
788
|
default:
|
|
483
789
|
throw new Error(`Unsupported operation: ${operation}`);
|
|
484
790
|
}
|
|
@@ -818,6 +1124,138 @@ export class GoogleDriveBubble extends ServiceBubble {
|
|
|
818
1124
|
error: '',
|
|
819
1125
|
};
|
|
820
1126
|
}
|
|
1127
|
+
async getDoc(params) {
|
|
1128
|
+
const { document_id } = params;
|
|
1129
|
+
const url = `https://docs.googleapis.com/v1/documents/${document_id}`;
|
|
1130
|
+
// Make the request to Google Docs API
|
|
1131
|
+
const response = await this.makeGoogleApiRequest(url, 'GET');
|
|
1132
|
+
// Extract plain text from the document body
|
|
1133
|
+
const plainText = this.extractPlainTextFromDoc(response);
|
|
1134
|
+
return {
|
|
1135
|
+
operation: 'get_doc',
|
|
1136
|
+
success: true,
|
|
1137
|
+
document: response,
|
|
1138
|
+
plainText,
|
|
1139
|
+
error: '',
|
|
1140
|
+
};
|
|
1141
|
+
}
|
|
1142
|
+
async updateDoc(params) {
|
|
1143
|
+
const { document_id, content, mode } = params;
|
|
1144
|
+
const url = `https://docs.googleapis.com/v1/documents/${document_id}:batchUpdate`;
|
|
1145
|
+
// Build the requests array based on mode
|
|
1146
|
+
const requests = [];
|
|
1147
|
+
// Auto-detect markdown and parse if needed
|
|
1148
|
+
const useMarkdown = isMarkdown(content);
|
|
1149
|
+
if (mode === 'replace') {
|
|
1150
|
+
// For replace mode, first get the document to find content length
|
|
1151
|
+
const docUrl = `https://docs.googleapis.com/v1/documents/${document_id}`;
|
|
1152
|
+
const document = await this.makeGoogleApiRequest(docUrl, 'GET');
|
|
1153
|
+
// Get the end index of the document body content
|
|
1154
|
+
const body = document.body;
|
|
1155
|
+
const contentElements = body?.content || [];
|
|
1156
|
+
const lastElement = contentElements[contentElements.length - 1];
|
|
1157
|
+
const endIndex = lastElement?.endIndex || 1;
|
|
1158
|
+
// Only delete if there's content to delete (endIndex > 1)
|
|
1159
|
+
if (endIndex > 1) {
|
|
1160
|
+
requests.push({
|
|
1161
|
+
deleteContentRange: {
|
|
1162
|
+
range: {
|
|
1163
|
+
startIndex: 1,
|
|
1164
|
+
endIndex: endIndex - 1,
|
|
1165
|
+
},
|
|
1166
|
+
},
|
|
1167
|
+
});
|
|
1168
|
+
}
|
|
1169
|
+
if (useMarkdown) {
|
|
1170
|
+
// Parse markdown and get plain text + formatting requests
|
|
1171
|
+
const parsed = parseMarkdownToGoogleDocs(content, 1);
|
|
1172
|
+
// Insert plain text first
|
|
1173
|
+
requests.push({
|
|
1174
|
+
insertText: {
|
|
1175
|
+
location: { index: 1 },
|
|
1176
|
+
text: parsed.plainText,
|
|
1177
|
+
},
|
|
1178
|
+
});
|
|
1179
|
+
// Add formatting requests
|
|
1180
|
+
requests.push(...parsed.requests);
|
|
1181
|
+
}
|
|
1182
|
+
else {
|
|
1183
|
+
// Plain text - just insert
|
|
1184
|
+
requests.push({
|
|
1185
|
+
insertText: {
|
|
1186
|
+
location: { index: 1 },
|
|
1187
|
+
text: content,
|
|
1188
|
+
},
|
|
1189
|
+
});
|
|
1190
|
+
}
|
|
1191
|
+
}
|
|
1192
|
+
else {
|
|
1193
|
+
// For append mode, get document to find the end position
|
|
1194
|
+
const docUrl = `https://docs.googleapis.com/v1/documents/${document_id}`;
|
|
1195
|
+
const document = await this.makeGoogleApiRequest(docUrl, 'GET');
|
|
1196
|
+
// Get the end index of the document body content
|
|
1197
|
+
const body = document.body;
|
|
1198
|
+
const contentElements = body?.content || [];
|
|
1199
|
+
const lastElement = contentElements[contentElements.length - 1];
|
|
1200
|
+
const endIndex = lastElement?.endIndex || 1;
|
|
1201
|
+
const insertIndex = endIndex - 1;
|
|
1202
|
+
if (useMarkdown) {
|
|
1203
|
+
// Parse markdown and get plain text + formatting requests
|
|
1204
|
+
const parsed = parseMarkdownToGoogleDocs(content, insertIndex);
|
|
1205
|
+
// Insert plain text first
|
|
1206
|
+
requests.push({
|
|
1207
|
+
insertText: {
|
|
1208
|
+
location: { index: insertIndex },
|
|
1209
|
+
text: parsed.plainText,
|
|
1210
|
+
},
|
|
1211
|
+
});
|
|
1212
|
+
// Add formatting requests
|
|
1213
|
+
requests.push(...parsed.requests);
|
|
1214
|
+
}
|
|
1215
|
+
else {
|
|
1216
|
+
// Plain text - just insert
|
|
1217
|
+
requests.push({
|
|
1218
|
+
insertText: {
|
|
1219
|
+
location: { index: insertIndex },
|
|
1220
|
+
text: content,
|
|
1221
|
+
},
|
|
1222
|
+
});
|
|
1223
|
+
}
|
|
1224
|
+
}
|
|
1225
|
+
// Make the batchUpdate request
|
|
1226
|
+
const response = await this.makeGoogleApiRequest(url, 'POST', {
|
|
1227
|
+
requests,
|
|
1228
|
+
});
|
|
1229
|
+
return {
|
|
1230
|
+
operation: 'update_doc',
|
|
1231
|
+
success: true,
|
|
1232
|
+
documentId: response.documentId,
|
|
1233
|
+
revisionId: response.writeControl?.requiredRevisionId,
|
|
1234
|
+
error: '',
|
|
1235
|
+
};
|
|
1236
|
+
}
|
|
1237
|
+
/**
|
|
1238
|
+
* Extracts plain text content from a Google Docs document body
|
|
1239
|
+
*/
|
|
1240
|
+
extractPlainTextFromDoc(document) {
|
|
1241
|
+
const body = document.body;
|
|
1242
|
+
if (!body?.content) {
|
|
1243
|
+
return '';
|
|
1244
|
+
}
|
|
1245
|
+
const textParts = [];
|
|
1246
|
+
for (const element of body.content) {
|
|
1247
|
+
const paragraph = element.paragraph;
|
|
1248
|
+
if (paragraph?.elements) {
|
|
1249
|
+
for (const elem of paragraph.elements) {
|
|
1250
|
+
const textRun = elem.textRun;
|
|
1251
|
+
if (textRun?.content) {
|
|
1252
|
+
textParts.push(textRun.content);
|
|
1253
|
+
}
|
|
1254
|
+
}
|
|
1255
|
+
}
|
|
1256
|
+
}
|
|
1257
|
+
return textParts.join('');
|
|
1258
|
+
}
|
|
821
1259
|
isBase64(str) {
|
|
822
1260
|
try {
|
|
823
1261
|
// First check if it's a direct base64 string
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"google-drive.js","sourceRoot":"","sources":["../../../src/bubbles/service-bubble/google-drive.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"google-drive.js","sourceRoot":"","sources":["../../../src/bubbles/service-bubble/google-drive.ts"],"names":[],"mappings":"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"}
|