docxodus 3.5.0 → 3.6.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/index.d.ts +176 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +353 -3
- package/dist/index.js.map +1 -1
- package/dist/pagination.bundle.js +272 -0
- package/dist/pagination.d.ts +5 -1
- package/dist/pagination.d.ts.map +1 -1
- package/dist/pagination.js +36 -6
- package/dist/pagination.js.map +1 -1
- package/dist/react.d.ts +207 -2
- package/dist/react.d.ts.map +1 -1
- package/dist/react.js +448 -1
- package/dist/react.js.map +1 -1
- package/dist/types.d.ts +328 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +205 -0
- package/dist/types.js.map +1 -1
- package/dist/wasm/_framework/Docxodus.wasm +0 -0
- package/dist/wasm/_framework/DocxodusWasm.wasm +0 -0
- package/dist/wasm/_framework/System.Collections.wasm +0 -0
- package/dist/wasm/_framework/System.Linq.wasm +0 -0
- package/dist/wasm/_framework/System.Memory.wasm +0 -0
- package/dist/wasm/_framework/System.Net.Http.wasm +0 -0
- package/dist/wasm/_framework/System.Private.CoreLib.wasm +0 -0
- package/dist/wasm/_framework/System.Private.Xml.Linq.wasm +0 -0
- package/dist/wasm/_framework/System.Runtime.wasm +0 -0
- package/dist/wasm/_framework/System.Text.Json.wasm +0 -0
- package/dist/wasm/_framework/System.Text.RegularExpressions.wasm +0 -0
- package/dist/wasm/_framework/blazor.boot.json +13 -13
- package/dist/wasm/_framework/dotnet.native.wasm +0 -0
- package/package.json +5 -3
package/dist/index.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import type { ConversionOptions, CompareOptions, Revision, VersionInfo, ErrorResponse, CompareResult, GetRevisionsOptions, FormatChangeDetails } from "./types.js";
|
|
2
|
-
import { CommentRenderMode, PaginationMode, RevisionType, isInsertion, isDeletion, isMove, isMoveSource, isMoveDestination, findMovePair, isFormatChange } from "./types.js";
|
|
1
|
+
import type { ConversionOptions, CompareOptions, Revision, VersionInfo, ErrorResponse, CompareResult, GetRevisionsOptions, FormatChangeDetails, Annotation, AddAnnotationRequest, AddAnnotationResponse, RemoveAnnotationResponse, AnnotationOptions, DocumentStructure, DocumentElement, TableColumnInfo, AnnotationTarget, AddAnnotationWithTargetRequest } from "./types.js";
|
|
2
|
+
import { CommentRenderMode, PaginationMode, AnnotationLabelMode, RevisionType, DocumentElementType, isInsertion, isDeletion, isMove, isMoveSource, isMoveDestination, findMovePair, isFormatChange, findElementById, findElementsByType, getParagraphs, getTables, getTableColumns, targetElement, targetParagraph, targetParagraphRange, targetRun, targetTable, targetTableRow, targetTableCell, targetTableColumn, targetSearch, targetSearchInElement } from "./types.js";
|
|
3
3
|
export type { PageDimensions, MeasuredBlock, PageInfo, PaginationResult, PaginationOptions, } from "./pagination.js";
|
|
4
4
|
export { PaginationEngine, paginateHtml } from "./pagination.js";
|
|
5
|
-
export type { ConversionOptions, CompareOptions, Revision, VersionInfo, ErrorResponse, CompareResult, GetRevisionsOptions, FormatChangeDetails, };
|
|
6
|
-
export { CommentRenderMode, PaginationMode, RevisionType, isInsertion, isDeletion, isMove, isMoveSource, isMoveDestination, findMovePair, isFormatChange, };
|
|
5
|
+
export type { ConversionOptions, CompareOptions, Revision, VersionInfo, ErrorResponse, CompareResult, GetRevisionsOptions, FormatChangeDetails, Annotation, AddAnnotationRequest, AddAnnotationResponse, RemoveAnnotationResponse, AnnotationOptions, DocumentStructure, DocumentElement, TableColumnInfo, AnnotationTarget, AddAnnotationWithTargetRequest, };
|
|
6
|
+
export { CommentRenderMode, PaginationMode, AnnotationLabelMode, RevisionType, DocumentElementType, isInsertion, isDeletion, isMove, isMoveSource, isMoveDestination, findMovePair, isFormatChange, findElementById, findElementsByType, getParagraphs, getTables, getTableColumns, targetElement, targetParagraph, targetParagraphRange, targetRun, targetTable, targetTableRow, targetTableCell, targetTableColumn, targetSearch, targetSearchInElement, };
|
|
7
7
|
/**
|
|
8
8
|
* Current base path for WASM files.
|
|
9
9
|
* Empty string means auto-detect from module URL.
|
|
@@ -46,6 +46,12 @@ export declare function initialize(basePath?: string): Promise<void>;
|
|
|
46
46
|
* paginationMode: PaginationMode.Paginated,
|
|
47
47
|
* paginationScale: 0.8
|
|
48
48
|
* });
|
|
49
|
+
*
|
|
50
|
+
* // With annotations rendered
|
|
51
|
+
* const html = await convertDocxToHtml(docxFile, {
|
|
52
|
+
* renderAnnotations: true,
|
|
53
|
+
* annotationLabelMode: AnnotationLabelMode.Above
|
|
54
|
+
* });
|
|
49
55
|
* ```
|
|
50
56
|
*/
|
|
51
57
|
export declare function convertDocxToHtml(document: File | Uint8Array, options?: ConversionOptions): Promise<string>;
|
|
@@ -103,4 +109,170 @@ export declare function getVersion(): VersionInfo;
|
|
|
103
109
|
* Check if the WASM runtime is initialized.
|
|
104
110
|
*/
|
|
105
111
|
export declare function isInitialized(): boolean;
|
|
112
|
+
/**
|
|
113
|
+
* Get all annotations from a document.
|
|
114
|
+
*
|
|
115
|
+
* @param document - DOCX file as File object or Uint8Array
|
|
116
|
+
* @returns Array of annotations
|
|
117
|
+
* @throws Error if operation fails
|
|
118
|
+
*
|
|
119
|
+
* @example
|
|
120
|
+
* ```typescript
|
|
121
|
+
* const annotations = await getAnnotations(docxFile);
|
|
122
|
+
* for (const annot of annotations) {
|
|
123
|
+
* console.log(`${annot.label}: "${annot.annotatedText}"`);
|
|
124
|
+
* }
|
|
125
|
+
* ```
|
|
126
|
+
*/
|
|
127
|
+
export declare function getAnnotations(document: File | Uint8Array): Promise<Annotation[]>;
|
|
128
|
+
/**
|
|
129
|
+
* Add an annotation to a document.
|
|
130
|
+
*
|
|
131
|
+
* @param document - DOCX file as File object or Uint8Array
|
|
132
|
+
* @param request - Annotation details including search text or paragraph indices
|
|
133
|
+
* @returns Response with modified document bytes and annotation info
|
|
134
|
+
* @throws Error if operation fails
|
|
135
|
+
*
|
|
136
|
+
* @example
|
|
137
|
+
* ```typescript
|
|
138
|
+
* // Annotate by searching for text
|
|
139
|
+
* const result = await addAnnotation(docxFile, {
|
|
140
|
+
* id: "annot-1",
|
|
141
|
+
* labelId: "CLAUSE_A",
|
|
142
|
+
* label: "Important Clause",
|
|
143
|
+
* color: "#FFEB3B",
|
|
144
|
+
* searchText: "shall not be liable",
|
|
145
|
+
* occurrence: 1
|
|
146
|
+
* });
|
|
147
|
+
*
|
|
148
|
+
* // Annotate by paragraph range
|
|
149
|
+
* const result = await addAnnotation(docxFile, {
|
|
150
|
+
* id: "annot-2",
|
|
151
|
+
* labelId: "SECTION_1",
|
|
152
|
+
* label: "Introduction",
|
|
153
|
+
* color: "#4CAF50",
|
|
154
|
+
* startParagraphIndex: 0,
|
|
155
|
+
* endParagraphIndex: 2
|
|
156
|
+
* });
|
|
157
|
+
*
|
|
158
|
+
* // Get modified document
|
|
159
|
+
* const modifiedDocBytes = base64ToBytes(result.documentBytes);
|
|
160
|
+
* ```
|
|
161
|
+
*/
|
|
162
|
+
export declare function addAnnotation(document: File | Uint8Array, request: AddAnnotationRequest): Promise<AddAnnotationResponse>;
|
|
163
|
+
/**
|
|
164
|
+
* Remove an annotation from a document.
|
|
165
|
+
*
|
|
166
|
+
* @param document - DOCX file as File object or Uint8Array
|
|
167
|
+
* @param annotationId - The ID of the annotation to remove
|
|
168
|
+
* @returns Response with modified document bytes
|
|
169
|
+
* @throws Error if operation fails
|
|
170
|
+
*
|
|
171
|
+
* @example
|
|
172
|
+
* ```typescript
|
|
173
|
+
* const result = await removeAnnotation(docxFile, "annot-1");
|
|
174
|
+
* const modifiedDocBytes = base64ToBytes(result.documentBytes);
|
|
175
|
+
* ```
|
|
176
|
+
*/
|
|
177
|
+
export declare function removeAnnotation(document: File | Uint8Array, annotationId: string): Promise<RemoveAnnotationResponse>;
|
|
178
|
+
/**
|
|
179
|
+
* Check if a document has any annotations.
|
|
180
|
+
*
|
|
181
|
+
* @param document - DOCX file as File object or Uint8Array
|
|
182
|
+
* @returns true if the document has annotations
|
|
183
|
+
* @throws Error if operation fails
|
|
184
|
+
*
|
|
185
|
+
* @example
|
|
186
|
+
* ```typescript
|
|
187
|
+
* if (await hasAnnotations(docxFile)) {
|
|
188
|
+
* const annotations = await getAnnotations(docxFile);
|
|
189
|
+
* console.log(`Document has ${annotations.length} annotations`);
|
|
190
|
+
* }
|
|
191
|
+
* ```
|
|
192
|
+
*/
|
|
193
|
+
export declare function hasAnnotations(document: File | Uint8Array): Promise<boolean>;
|
|
194
|
+
/**
|
|
195
|
+
* Get the document structure for element-based annotation targeting.
|
|
196
|
+
*
|
|
197
|
+
* @param document - DOCX file as File object or Uint8Array
|
|
198
|
+
* @returns Document structure with element tree
|
|
199
|
+
* @throws Error if operation fails
|
|
200
|
+
*
|
|
201
|
+
* @example
|
|
202
|
+
* ```typescript
|
|
203
|
+
* const structure = await getDocumentStructure(docxFile);
|
|
204
|
+
*
|
|
205
|
+
* // Navigate the structure tree
|
|
206
|
+
* console.log(`Document has ${structure.root.children.length} top-level elements`);
|
|
207
|
+
*
|
|
208
|
+
* // Find all paragraphs
|
|
209
|
+
* const paragraphs = getParagraphs(structure);
|
|
210
|
+
* console.log(`Found ${paragraphs.length} paragraphs`);
|
|
211
|
+
*
|
|
212
|
+
* // Find all tables
|
|
213
|
+
* const tables = getTables(structure);
|
|
214
|
+
* for (const table of tables) {
|
|
215
|
+
* const columns = getTableColumns(structure, table.id);
|
|
216
|
+
* console.log(`Table ${table.id} has ${columns.length} columns`);
|
|
217
|
+
* }
|
|
218
|
+
*
|
|
219
|
+
* // Look up element by ID
|
|
220
|
+
* const element = findElementById(structure, "doc/p-0");
|
|
221
|
+
* if (element) {
|
|
222
|
+
* console.log(`First paragraph: "${element.textPreview}"`);
|
|
223
|
+
* }
|
|
224
|
+
* ```
|
|
225
|
+
*/
|
|
226
|
+
export declare function getDocumentStructure(document: File | Uint8Array): Promise<DocumentStructure>;
|
|
227
|
+
/**
|
|
228
|
+
* Add an annotation using flexible targeting (element ID, indices, or text search).
|
|
229
|
+
*
|
|
230
|
+
* @param document - DOCX file as File object or Uint8Array
|
|
231
|
+
* @param request - Annotation details with target specification
|
|
232
|
+
* @returns Response with modified document bytes and annotation info
|
|
233
|
+
* @throws Error if operation fails
|
|
234
|
+
*
|
|
235
|
+
* @example
|
|
236
|
+
* ```typescript
|
|
237
|
+
* // First get the document structure to find target elements
|
|
238
|
+
* const structure = await getDocumentStructure(docxFile);
|
|
239
|
+
*
|
|
240
|
+
* // Annotate a specific paragraph by element ID
|
|
241
|
+
* const result1 = await addAnnotationWithTarget(docxFile, {
|
|
242
|
+
* id: "annot-1",
|
|
243
|
+
* labelId: "INTRO",
|
|
244
|
+
* label: "Introduction",
|
|
245
|
+
* color: "#4CAF50",
|
|
246
|
+
* target: targetElement("doc/p-0")
|
|
247
|
+
* });
|
|
248
|
+
*
|
|
249
|
+
* // Annotate a table cell
|
|
250
|
+
* const result2 = await addAnnotationWithTarget(docxFile, {
|
|
251
|
+
* id: "annot-2",
|
|
252
|
+
* labelId: "CELL_HIGHLIGHT",
|
|
253
|
+
* label: "Important Cell",
|
|
254
|
+
* color: "#FFEB3B",
|
|
255
|
+
* target: targetTableCell(0, 1, 2) // Table 0, Row 1, Cell 2
|
|
256
|
+
* });
|
|
257
|
+
*
|
|
258
|
+
* // Annotate a table column
|
|
259
|
+
* const result3 = await addAnnotationWithTarget(docxFile, {
|
|
260
|
+
* id: "annot-3",
|
|
261
|
+
* labelId: "COLUMN_DATA",
|
|
262
|
+
* label: "Values Column",
|
|
263
|
+
* color: "#2196F3",
|
|
264
|
+
* target: targetTableColumn(0, 1) // Table 0, Column 1
|
|
265
|
+
* });
|
|
266
|
+
*
|
|
267
|
+
* // Search for text within a specific element
|
|
268
|
+
* const result4 = await addAnnotationWithTarget(docxFile, {
|
|
269
|
+
* id: "annot-4",
|
|
270
|
+
* labelId: "KEYWORD",
|
|
271
|
+
* label: "Keyword",
|
|
272
|
+
* color: "#FF5722",
|
|
273
|
+
* target: targetSearchInElement("doc/p-2", "important", 1)
|
|
274
|
+
* });
|
|
275
|
+
* ```
|
|
276
|
+
*/
|
|
277
|
+
export declare function addAnnotationWithTarget(document: File | Uint8Array, request: AddAnnotationWithTargetRequest): Promise<AddAnnotationResponse>;
|
|
106
278
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,cAAc,EACd,QAAQ,EACR,WAAW,EACX,aAAa,EACb,aAAa,EAEb,mBAAmB,EACnB,mBAAmB,EACpB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,iBAAiB,EACjB,cAAc,EACd,YAAY,EACZ,WAAW,EACX,UAAU,EACV,MAAM,EACN,YAAY,EACZ,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACf,MAAM,YAAY,CAAC;AAGpB,YAAY,EACV,cAAc,EACd,aAAa,EACb,QAAQ,EACR,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEjE,YAAY,EACV,iBAAiB,EACjB,cAAc,EACd,QAAQ,EACR,WAAW,EACX,aAAa,EACb,aAAa,EACb,mBAAmB,EACnB,mBAAmB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,10 @@
|
|
|
1
|
-
import { CommentRenderMode, PaginationMode, RevisionType, isInsertion, isDeletion, isMove, isMoveSource, isMoveDestination, findMovePair, isFormatChange, } from "./types.js";
|
|
1
|
+
import { CommentRenderMode, PaginationMode, AnnotationLabelMode, RevisionType, DocumentElementType, isInsertion, isDeletion, isMove, isMoveSource, isMoveDestination, findMovePair, isFormatChange, findElementById, findElementsByType, getParagraphs, getTables, getTableColumns, targetElement, targetParagraph, targetParagraphRange, targetRun, targetTable, targetTableRow, targetTableCell, targetTableColumn, targetSearch, targetSearchInElement, } from "./types.js";
|
|
2
2
|
export { PaginationEngine, paginateHtml } from "./pagination.js";
|
|
3
|
-
export { CommentRenderMode, PaginationMode, RevisionType, isInsertion, isDeletion, isMove, isMoveSource, isMoveDestination, findMovePair, isFormatChange,
|
|
3
|
+
export { CommentRenderMode, PaginationMode, AnnotationLabelMode, RevisionType, DocumentElementType, isInsertion, isDeletion, isMove, isMoveSource, isMoveDestination, findMovePair, isFormatChange,
|
|
4
|
+
// Document structure helpers
|
|
5
|
+
findElementById, findElementsByType, getParagraphs, getTables, getTableColumns,
|
|
6
|
+
// Annotation target factory functions
|
|
7
|
+
targetElement, targetParagraph, targetParagraphRange, targetRun, targetTable, targetTableRow, targetTableCell, targetTableColumn, targetSearch, targetSearchInElement, };
|
|
4
8
|
let wasmExports = null;
|
|
5
9
|
let initPromise = null;
|
|
6
10
|
/**
|
|
@@ -156,14 +160,24 @@ async function toBytes(input) {
|
|
|
156
160
|
* paginationMode: PaginationMode.Paginated,
|
|
157
161
|
* paginationScale: 0.8
|
|
158
162
|
* });
|
|
163
|
+
*
|
|
164
|
+
* // With annotations rendered
|
|
165
|
+
* const html = await convertDocxToHtml(docxFile, {
|
|
166
|
+
* renderAnnotations: true,
|
|
167
|
+
* annotationLabelMode: AnnotationLabelMode.Above
|
|
168
|
+
* });
|
|
159
169
|
* ```
|
|
160
170
|
*/
|
|
161
171
|
export async function convertDocxToHtml(document, options) {
|
|
162
172
|
const exports = ensureInitialized();
|
|
163
173
|
const bytes = await toBytes(document);
|
|
164
174
|
let result;
|
|
175
|
+
// Use full method when annotations are requested
|
|
176
|
+
if (options?.renderAnnotations) {
|
|
177
|
+
result = exports.DocumentConverter.ConvertDocxToHtmlFull(bytes, options.pageTitle ?? "Document", options.cssPrefix ?? "docx-", options.fabricateClasses ?? true, options.additionalCss ?? "", options.commentRenderMode ?? CommentRenderMode.Disabled, options.commentCssClassPrefix ?? "comment-", options.paginationMode ?? PaginationMode.None, options.paginationScale ?? 1.0, options.paginationCssClassPrefix ?? "page-", options.renderAnnotations, options.annotationLabelMode ?? AnnotationLabelMode.Above, options.annotationCssClassPrefix ?? "annot-");
|
|
178
|
+
}
|
|
165
179
|
// Use pagination-aware method when pagination is requested
|
|
166
|
-
if (options?.paginationMode !== undefined && options.paginationMode !== PaginationMode.None) {
|
|
180
|
+
else if (options?.paginationMode !== undefined && options.paginationMode !== PaginationMode.None) {
|
|
167
181
|
result = exports.DocumentConverter.ConvertDocxToHtmlWithPagination(bytes, options.pageTitle ?? "Document", options.cssPrefix ?? "docx-", options.fabricateClasses ?? true, options.additionalCss ?? "", options.commentRenderMode ?? CommentRenderMode.Disabled, options.commentCssClassPrefix ?? "comment-", options.paginationMode, options.paginationScale ?? 1.0, options.paginationCssClassPrefix ?? "page-");
|
|
168
182
|
}
|
|
169
183
|
else if (options) {
|
|
@@ -297,4 +311,340 @@ export function getVersion() {
|
|
|
297
311
|
export function isInitialized() {
|
|
298
312
|
return wasmExports !== null;
|
|
299
313
|
}
|
|
314
|
+
/**
|
|
315
|
+
* Get all annotations from a document.
|
|
316
|
+
*
|
|
317
|
+
* @param document - DOCX file as File object or Uint8Array
|
|
318
|
+
* @returns Array of annotations
|
|
319
|
+
* @throws Error if operation fails
|
|
320
|
+
*
|
|
321
|
+
* @example
|
|
322
|
+
* ```typescript
|
|
323
|
+
* const annotations = await getAnnotations(docxFile);
|
|
324
|
+
* for (const annot of annotations) {
|
|
325
|
+
* console.log(`${annot.label}: "${annot.annotatedText}"`);
|
|
326
|
+
* }
|
|
327
|
+
* ```
|
|
328
|
+
*/
|
|
329
|
+
export async function getAnnotations(document) {
|
|
330
|
+
const exports = ensureInitialized();
|
|
331
|
+
const bytes = await toBytes(document);
|
|
332
|
+
const result = exports.DocumentConverter.GetAnnotations(bytes);
|
|
333
|
+
if (isErrorResponse(result)) {
|
|
334
|
+
const error = parseError(result);
|
|
335
|
+
throw new Error(`Failed to get annotations: ${error.error}`);
|
|
336
|
+
}
|
|
337
|
+
const parsed = JSON.parse(result);
|
|
338
|
+
return (parsed.Annotations || parsed.annotations || []).map((a) => ({
|
|
339
|
+
id: a.Id || a.id,
|
|
340
|
+
labelId: a.LabelId || a.labelId,
|
|
341
|
+
label: a.Label || a.label,
|
|
342
|
+
color: a.Color || a.color,
|
|
343
|
+
author: a.Author || a.author,
|
|
344
|
+
created: a.Created || a.created,
|
|
345
|
+
bookmarkName: a.BookmarkName || a.bookmarkName,
|
|
346
|
+
startPage: a.StartPage ?? a.startPage,
|
|
347
|
+
endPage: a.EndPage ?? a.endPage,
|
|
348
|
+
annotatedText: a.AnnotatedText || a.annotatedText,
|
|
349
|
+
metadata: a.Metadata || a.metadata,
|
|
350
|
+
}));
|
|
351
|
+
}
|
|
352
|
+
/**
|
|
353
|
+
* Add an annotation to a document.
|
|
354
|
+
*
|
|
355
|
+
* @param document - DOCX file as File object or Uint8Array
|
|
356
|
+
* @param request - Annotation details including search text or paragraph indices
|
|
357
|
+
* @returns Response with modified document bytes and annotation info
|
|
358
|
+
* @throws Error if operation fails
|
|
359
|
+
*
|
|
360
|
+
* @example
|
|
361
|
+
* ```typescript
|
|
362
|
+
* // Annotate by searching for text
|
|
363
|
+
* const result = await addAnnotation(docxFile, {
|
|
364
|
+
* id: "annot-1",
|
|
365
|
+
* labelId: "CLAUSE_A",
|
|
366
|
+
* label: "Important Clause",
|
|
367
|
+
* color: "#FFEB3B",
|
|
368
|
+
* searchText: "shall not be liable",
|
|
369
|
+
* occurrence: 1
|
|
370
|
+
* });
|
|
371
|
+
*
|
|
372
|
+
* // Annotate by paragraph range
|
|
373
|
+
* const result = await addAnnotation(docxFile, {
|
|
374
|
+
* id: "annot-2",
|
|
375
|
+
* labelId: "SECTION_1",
|
|
376
|
+
* label: "Introduction",
|
|
377
|
+
* color: "#4CAF50",
|
|
378
|
+
* startParagraphIndex: 0,
|
|
379
|
+
* endParagraphIndex: 2
|
|
380
|
+
* });
|
|
381
|
+
*
|
|
382
|
+
* // Get modified document
|
|
383
|
+
* const modifiedDocBytes = base64ToBytes(result.documentBytes);
|
|
384
|
+
* ```
|
|
385
|
+
*/
|
|
386
|
+
export async function addAnnotation(document, request) {
|
|
387
|
+
const exports = ensureInitialized();
|
|
388
|
+
const bytes = await toBytes(document);
|
|
389
|
+
const requestJson = JSON.stringify({
|
|
390
|
+
Id: request.id,
|
|
391
|
+
LabelId: request.labelId,
|
|
392
|
+
Label: request.label,
|
|
393
|
+
Color: request.color ?? "#FFEB3B",
|
|
394
|
+
Author: request.author,
|
|
395
|
+
SearchText: request.searchText,
|
|
396
|
+
Occurrence: request.occurrence ?? 1,
|
|
397
|
+
StartParagraphIndex: request.startParagraphIndex,
|
|
398
|
+
EndParagraphIndex: request.endParagraphIndex,
|
|
399
|
+
Metadata: request.metadata,
|
|
400
|
+
});
|
|
401
|
+
const result = exports.DocumentConverter.AddAnnotation(bytes, requestJson);
|
|
402
|
+
if (isErrorResponse(result)) {
|
|
403
|
+
const error = parseError(result);
|
|
404
|
+
throw new Error(`Failed to add annotation: ${error.error}`);
|
|
405
|
+
}
|
|
406
|
+
const parsed = JSON.parse(result);
|
|
407
|
+
const annotation = parsed.Annotation || parsed.annotation;
|
|
408
|
+
return {
|
|
409
|
+
success: parsed.Success ?? parsed.success ?? true,
|
|
410
|
+
documentBytes: parsed.DocumentBytes || parsed.documentBytes,
|
|
411
|
+
annotation: annotation ? {
|
|
412
|
+
id: annotation.Id || annotation.id,
|
|
413
|
+
labelId: annotation.LabelId || annotation.labelId,
|
|
414
|
+
label: annotation.Label || annotation.label,
|
|
415
|
+
color: annotation.Color || annotation.color,
|
|
416
|
+
author: annotation.Author || annotation.author,
|
|
417
|
+
created: annotation.Created || annotation.created,
|
|
418
|
+
bookmarkName: annotation.BookmarkName || annotation.bookmarkName,
|
|
419
|
+
annotatedText: annotation.AnnotatedText || annotation.annotatedText,
|
|
420
|
+
} : undefined,
|
|
421
|
+
};
|
|
422
|
+
}
|
|
423
|
+
/**
|
|
424
|
+
* Remove an annotation from a document.
|
|
425
|
+
*
|
|
426
|
+
* @param document - DOCX file as File object or Uint8Array
|
|
427
|
+
* @param annotationId - The ID of the annotation to remove
|
|
428
|
+
* @returns Response with modified document bytes
|
|
429
|
+
* @throws Error if operation fails
|
|
430
|
+
*
|
|
431
|
+
* @example
|
|
432
|
+
* ```typescript
|
|
433
|
+
* const result = await removeAnnotation(docxFile, "annot-1");
|
|
434
|
+
* const modifiedDocBytes = base64ToBytes(result.documentBytes);
|
|
435
|
+
* ```
|
|
436
|
+
*/
|
|
437
|
+
export async function removeAnnotation(document, annotationId) {
|
|
438
|
+
const exports = ensureInitialized();
|
|
439
|
+
const bytes = await toBytes(document);
|
|
440
|
+
const result = exports.DocumentConverter.RemoveAnnotation(bytes, annotationId);
|
|
441
|
+
if (isErrorResponse(result)) {
|
|
442
|
+
const error = parseError(result);
|
|
443
|
+
throw new Error(`Failed to remove annotation: ${error.error}`);
|
|
444
|
+
}
|
|
445
|
+
const parsed = JSON.parse(result);
|
|
446
|
+
return {
|
|
447
|
+
success: parsed.Success ?? parsed.success ?? true,
|
|
448
|
+
documentBytes: parsed.DocumentBytes || parsed.documentBytes,
|
|
449
|
+
};
|
|
450
|
+
}
|
|
451
|
+
/**
|
|
452
|
+
* Check if a document has any annotations.
|
|
453
|
+
*
|
|
454
|
+
* @param document - DOCX file as File object or Uint8Array
|
|
455
|
+
* @returns true if the document has annotations
|
|
456
|
+
* @throws Error if operation fails
|
|
457
|
+
*
|
|
458
|
+
* @example
|
|
459
|
+
* ```typescript
|
|
460
|
+
* if (await hasAnnotations(docxFile)) {
|
|
461
|
+
* const annotations = await getAnnotations(docxFile);
|
|
462
|
+
* console.log(`Document has ${annotations.length} annotations`);
|
|
463
|
+
* }
|
|
464
|
+
* ```
|
|
465
|
+
*/
|
|
466
|
+
export async function hasAnnotations(document) {
|
|
467
|
+
const exports = ensureInitialized();
|
|
468
|
+
const bytes = await toBytes(document);
|
|
469
|
+
const result = exports.DocumentConverter.HasAnnotations(bytes);
|
|
470
|
+
if (isErrorResponse(result)) {
|
|
471
|
+
const error = parseError(result);
|
|
472
|
+
throw new Error(`Failed to check annotations: ${error.error}`);
|
|
473
|
+
}
|
|
474
|
+
const parsed = JSON.parse(result);
|
|
475
|
+
return parsed.HasAnnotations ?? parsed.hasAnnotations ?? false;
|
|
476
|
+
}
|
|
477
|
+
/**
|
|
478
|
+
* Get the document structure for element-based annotation targeting.
|
|
479
|
+
*
|
|
480
|
+
* @param document - DOCX file as File object or Uint8Array
|
|
481
|
+
* @returns Document structure with element tree
|
|
482
|
+
* @throws Error if operation fails
|
|
483
|
+
*
|
|
484
|
+
* @example
|
|
485
|
+
* ```typescript
|
|
486
|
+
* const structure = await getDocumentStructure(docxFile);
|
|
487
|
+
*
|
|
488
|
+
* // Navigate the structure tree
|
|
489
|
+
* console.log(`Document has ${structure.root.children.length} top-level elements`);
|
|
490
|
+
*
|
|
491
|
+
* // Find all paragraphs
|
|
492
|
+
* const paragraphs = getParagraphs(structure);
|
|
493
|
+
* console.log(`Found ${paragraphs.length} paragraphs`);
|
|
494
|
+
*
|
|
495
|
+
* // Find all tables
|
|
496
|
+
* const tables = getTables(structure);
|
|
497
|
+
* for (const table of tables) {
|
|
498
|
+
* const columns = getTableColumns(structure, table.id);
|
|
499
|
+
* console.log(`Table ${table.id} has ${columns.length} columns`);
|
|
500
|
+
* }
|
|
501
|
+
*
|
|
502
|
+
* // Look up element by ID
|
|
503
|
+
* const element = findElementById(structure, "doc/p-0");
|
|
504
|
+
* if (element) {
|
|
505
|
+
* console.log(`First paragraph: "${element.textPreview}"`);
|
|
506
|
+
* }
|
|
507
|
+
* ```
|
|
508
|
+
*/
|
|
509
|
+
export async function getDocumentStructure(document) {
|
|
510
|
+
const exports = ensureInitialized();
|
|
511
|
+
const bytes = await toBytes(document);
|
|
512
|
+
const result = exports.DocumentConverter.GetDocumentStructure(bytes);
|
|
513
|
+
if (isErrorResponse(result)) {
|
|
514
|
+
const error = parseError(result);
|
|
515
|
+
throw new Error(`Failed to get document structure: ${error.error}`);
|
|
516
|
+
}
|
|
517
|
+
const parsed = JSON.parse(result);
|
|
518
|
+
// Convert from PascalCase to camelCase
|
|
519
|
+
const convertElement = (el) => ({
|
|
520
|
+
id: el.Id || el.id,
|
|
521
|
+
type: el.Type || el.type,
|
|
522
|
+
textPreview: el.TextPreview || el.textPreview,
|
|
523
|
+
index: el.Index ?? el.index,
|
|
524
|
+
rowIndex: el.RowIndex ?? el.rowIndex,
|
|
525
|
+
columnIndex: el.ColumnIndex ?? el.columnIndex,
|
|
526
|
+
rowSpan: el.RowSpan ?? el.rowSpan,
|
|
527
|
+
columnSpan: el.ColumnSpan ?? el.columnSpan,
|
|
528
|
+
children: (el.Children || el.children || []).map(convertElement),
|
|
529
|
+
});
|
|
530
|
+
const convertTableColumn = (col) => ({
|
|
531
|
+
tableId: col.TableId || col.tableId,
|
|
532
|
+
columnIndex: col.ColumnIndex ?? col.columnIndex,
|
|
533
|
+
cellIds: col.CellIds || col.cellIds || [],
|
|
534
|
+
rowCount: col.RowCount ?? col.rowCount,
|
|
535
|
+
});
|
|
536
|
+
const root = convertElement(parsed.Root || parsed.root);
|
|
537
|
+
// Convert elementsById dictionary
|
|
538
|
+
const elementsById = {};
|
|
539
|
+
const rawElementsById = parsed.ElementsById || parsed.elementsById || {};
|
|
540
|
+
for (const [key, el] of Object.entries(rawElementsById)) {
|
|
541
|
+
elementsById[key] = convertElement(el);
|
|
542
|
+
}
|
|
543
|
+
// Convert tableColumns dictionary
|
|
544
|
+
const tableColumns = {};
|
|
545
|
+
const rawTableColumns = parsed.TableColumns || parsed.tableColumns || {};
|
|
546
|
+
for (const [key, col] of Object.entries(rawTableColumns)) {
|
|
547
|
+
tableColumns[key] = convertTableColumn(col);
|
|
548
|
+
}
|
|
549
|
+
return {
|
|
550
|
+
root,
|
|
551
|
+
elementsById,
|
|
552
|
+
tableColumns,
|
|
553
|
+
};
|
|
554
|
+
}
|
|
555
|
+
/**
|
|
556
|
+
* Add an annotation using flexible targeting (element ID, indices, or text search).
|
|
557
|
+
*
|
|
558
|
+
* @param document - DOCX file as File object or Uint8Array
|
|
559
|
+
* @param request - Annotation details with target specification
|
|
560
|
+
* @returns Response with modified document bytes and annotation info
|
|
561
|
+
* @throws Error if operation fails
|
|
562
|
+
*
|
|
563
|
+
* @example
|
|
564
|
+
* ```typescript
|
|
565
|
+
* // First get the document structure to find target elements
|
|
566
|
+
* const structure = await getDocumentStructure(docxFile);
|
|
567
|
+
*
|
|
568
|
+
* // Annotate a specific paragraph by element ID
|
|
569
|
+
* const result1 = await addAnnotationWithTarget(docxFile, {
|
|
570
|
+
* id: "annot-1",
|
|
571
|
+
* labelId: "INTRO",
|
|
572
|
+
* label: "Introduction",
|
|
573
|
+
* color: "#4CAF50",
|
|
574
|
+
* target: targetElement("doc/p-0")
|
|
575
|
+
* });
|
|
576
|
+
*
|
|
577
|
+
* // Annotate a table cell
|
|
578
|
+
* const result2 = await addAnnotationWithTarget(docxFile, {
|
|
579
|
+
* id: "annot-2",
|
|
580
|
+
* labelId: "CELL_HIGHLIGHT",
|
|
581
|
+
* label: "Important Cell",
|
|
582
|
+
* color: "#FFEB3B",
|
|
583
|
+
* target: targetTableCell(0, 1, 2) // Table 0, Row 1, Cell 2
|
|
584
|
+
* });
|
|
585
|
+
*
|
|
586
|
+
* // Annotate a table column
|
|
587
|
+
* const result3 = await addAnnotationWithTarget(docxFile, {
|
|
588
|
+
* id: "annot-3",
|
|
589
|
+
* labelId: "COLUMN_DATA",
|
|
590
|
+
* label: "Values Column",
|
|
591
|
+
* color: "#2196F3",
|
|
592
|
+
* target: targetTableColumn(0, 1) // Table 0, Column 1
|
|
593
|
+
* });
|
|
594
|
+
*
|
|
595
|
+
* // Search for text within a specific element
|
|
596
|
+
* const result4 = await addAnnotationWithTarget(docxFile, {
|
|
597
|
+
* id: "annot-4",
|
|
598
|
+
* labelId: "KEYWORD",
|
|
599
|
+
* label: "Keyword",
|
|
600
|
+
* color: "#FF5722",
|
|
601
|
+
* target: targetSearchInElement("doc/p-2", "important", 1)
|
|
602
|
+
* });
|
|
603
|
+
* ```
|
|
604
|
+
*/
|
|
605
|
+
export async function addAnnotationWithTarget(document, request) {
|
|
606
|
+
const exports = ensureInitialized();
|
|
607
|
+
const bytes = await toBytes(document);
|
|
608
|
+
const requestJson = JSON.stringify({
|
|
609
|
+
Id: request.id,
|
|
610
|
+
LabelId: request.labelId,
|
|
611
|
+
Label: request.label,
|
|
612
|
+
Color: request.color ?? "#FFEB3B",
|
|
613
|
+
Author: request.author,
|
|
614
|
+
Metadata: request.metadata,
|
|
615
|
+
ElementId: request.target.elementId,
|
|
616
|
+
ElementType: request.target.elementType,
|
|
617
|
+
ParagraphIndex: request.target.paragraphIndex,
|
|
618
|
+
RunIndex: request.target.runIndex,
|
|
619
|
+
TableIndex: request.target.tableIndex,
|
|
620
|
+
RowIndex: request.target.rowIndex,
|
|
621
|
+
CellIndex: request.target.cellIndex,
|
|
622
|
+
ColumnIndex: request.target.columnIndex,
|
|
623
|
+
SearchText: request.target.searchText,
|
|
624
|
+
Occurrence: request.target.occurrence ?? 1,
|
|
625
|
+
RangeEndParagraphIndex: request.target.rangeEndParagraphIndex,
|
|
626
|
+
});
|
|
627
|
+
const result = exports.DocumentConverter.AddAnnotationWithTarget(bytes, requestJson);
|
|
628
|
+
if (isErrorResponse(result)) {
|
|
629
|
+
const error = parseError(result);
|
|
630
|
+
throw new Error(`Failed to add annotation: ${error.error}`);
|
|
631
|
+
}
|
|
632
|
+
const parsed = JSON.parse(result);
|
|
633
|
+
const annotation = parsed.Annotation || parsed.annotation;
|
|
634
|
+
return {
|
|
635
|
+
success: parsed.Success ?? parsed.success ?? true,
|
|
636
|
+
documentBytes: parsed.DocumentBytes || parsed.documentBytes,
|
|
637
|
+
annotation: annotation ? {
|
|
638
|
+
id: annotation.Id || annotation.id,
|
|
639
|
+
labelId: annotation.LabelId || annotation.labelId,
|
|
640
|
+
label: annotation.Label || annotation.label,
|
|
641
|
+
color: annotation.Color || annotation.color,
|
|
642
|
+
author: annotation.Author || annotation.author,
|
|
643
|
+
created: annotation.Created || annotation.created,
|
|
644
|
+
bookmarkName: annotation.BookmarkName || annotation.bookmarkName,
|
|
645
|
+
annotatedText: annotation.AnnotatedText || annotation.annotatedText,
|
|
646
|
+
metadata: annotation.Metadata || annotation.metadata,
|
|
647
|
+
} : undefined,
|
|
648
|
+
};
|
|
649
|
+
}
|
|
300
650
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAYA,OAAO,EACL,iBAAiB,EACjB,cAAc,EACd,YAAY,EACZ,WAAW,EACX,UAAU,EACV,MAAM,EACN,YAAY,EACZ,iBAAiB,EACjB,YAAY,EACZ,cAAc,GACf,MAAM,YAAY,CAAC;AAWpB,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAajE,OAAO,EACL,iBAAiB,EACjB,cAAc,EACd,YAAY,EACZ,WAAW,EACX,UAAU,EACV,MAAM,EACN,YAAY,EACZ,iBAAiB,EACjB,YAAY,EACZ,cAAc,GACf,CAAC;AAEF,IAAI,WAAW,GAA+B,IAAI,CAAC;AACnD,IAAI,WAAW,GAAyB,IAAI,CAAC;AAE7C;;;GAGG;AACH,SAAS,sBAAsB;IAC7B,IAAI,CAAC;QACH,kDAAkD;QAClD,oEAAoE;QACpE,2DAA2D;QAC3D,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;QAElC,2CAA2C;QAC3C,MAAM,OAAO,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QAEvE,8CAA8C;QAC9C,OAAO,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,+CAA+C;QAC/C,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,IAAI,YAAY,GAAG,EAAE,CAAC;AAE7B;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,YAAY,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;AACjE,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,QAAiB;IAChD,IAAI,WAAW;QAAE,OAAO;IAExB,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,eAAe,CAAC,QAAQ,CAAC,CAAC;IAC5B,CAAC;IAED,WAAW,GAAG,QAAQ,EAAE,CAAC;IACzB,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,eAAe,CAAC,QAAgB;IAC7C,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,QAAQ,GAAG,sBAAsB,CAAC;QACrD,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAEzF,MAAM,EAAE,kBAAkB,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM;aACnD,qBAAqB,CAAC,KAAK,CAAC;aAC5B,MAAM,EAAE,CAAC;QAEZ,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAElE,WAAW,GAAG;YACZ,iBAAiB,EAAE,OAAO,CAAC,YAAY,CAAC,iBAAiB;YACzD,gBAAgB,EAAE,OAAO,CAAC,YAAY,CAAC,gBAAgB;SACxD,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,KAAK,UAAU,QAAQ;IACrB,2CAA2C;IAC3C,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,YAAY,CAAC,CAAC;QACpD,IAAI,OAAO;YAAE,OAAO;QACpB,MAAM,IAAI,KAAK,CACb,yCAAyC,YAAY,IAAI;YACzD,oDAAoD,CACrD,CAAC;IACJ,CAAC;IAED,uEAAuE;IACvE,MAAM,gBAAgB,GAAG,sBAAsB,EAAE,CAAC;IAClD,IAAI,gBAAgB,EAAE,CAAC;QACrB,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,gBAAgB,CAAC,CAAC;QACxD,IAAI,OAAO,EAAE,CAAC;YACZ,YAAY,GAAG,gBAAgB,CAAC;YAChC,OAAO;QACT,CAAC;IACH,CAAC;IAED,wBAAwB;IACxB,MAAM,IAAI,KAAK,CACb,6BAA6B;QAC7B,uBAAuB,gBAAgB,IAAI,QAAQ,IAAI;QACvD,wEAAwE,CACzE,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB;IACxB,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CACb,iEAAiE,CAClE,CAAC;IACJ,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,SAAS,eAAe,CAAC,MAAc;IACrC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAClC,OAAO,OAAO,MAAM,KAAK,QAAQ,IAAI,OAAO,IAAI,MAAM,CAAC;IACzD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,MAAc;IAChC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAClC,OAAO;QACL,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK;QACnC,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI;QAChC,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,UAAU;KACnD,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,OAAO,CAAC,KAAwB;IAC7C,IAAI,KAAK,YAAY,UAAU,EAAE,CAAC;QAChC,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,WAAW,EAAE,CAAC;IACzC,OAAO,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,QAA2B,EAC3B,OAA2B;IAE3B,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;IACpC,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEtC,IAAI,MAAc,CAAC;IAEnB,2DAA2D;IAC3D,IAAI,OAAO,EAAE,cAAc,KAAK,SAAS,IAAI,OAAO,CAAC,cAAc,KAAK,cAAc,CAAC,IAAI,EAAE,CAAC;QAC5F,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,+BAA+B,CAChE,KAAK,EACL,OAAO,CAAC,SAAS,IAAI,UAAU,EAC/B,OAAO,CAAC,SAAS,IAAI,OAAO,EAC5B,OAAO,CAAC,gBAAgB,IAAI,IAAI,EAChC,OAAO,CAAC,aAAa,IAAI,EAAE,EAC3B,OAAO,CAAC,iBAAiB,IAAI,iBAAiB,CAAC,QAAQ,EACvD,OAAO,CAAC,qBAAqB,IAAI,UAAU,EAC3C,OAAO,CAAC,cAAc,EACtB,OAAO,CAAC,eAAe,IAAI,GAAG,EAC9B,OAAO,CAAC,wBAAwB,IAAI,OAAO,CAC5C,CAAC;IACJ,CAAC;SAAM,IAAI,OAAO,EAAE,CAAC;QACnB,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,4BAA4B,CAC7D,KAAK,EACL,OAAO,CAAC,SAAS,IAAI,UAAU,EAC/B,OAAO,CAAC,SAAS,IAAI,OAAO,EAC5B,OAAO,CAAC,gBAAgB,IAAI,IAAI,EAChC,OAAO,CAAC,aAAa,IAAI,EAAE,EAC3B,OAAO,CAAC,iBAAiB,IAAI,iBAAiB,CAAC,QAAQ,EACvD,OAAO,CAAC,qBAAqB,IAAI,UAAU,CAC5C,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;IAC9D,CAAC;IAED,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,sBAAsB,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IACvD,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,QAA2B,EAC3B,QAA2B,EAC3B,OAAwB;IAExB,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;IACpC,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC9C,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC;IAE9C,IAAI,MAAkB,CAAC;IAEvB,IAAI,OAAO,EAAE,eAAe,KAAK,SAAS,IAAI,OAAO,EAAE,eAAe,EAAE,CAAC;QACvE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,2BAA2B,CAC3D,aAAa,EACb,aAAa,EACb,OAAO,EAAE,UAAU,IAAI,UAAU,EACjC,OAAO,EAAE,eAAe,IAAI,IAAI,EAChC,OAAO,EAAE,eAAe,IAAI,KAAK,CAClC,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAChD,aAAa,EACb,aAAa,EACb,OAAO,EAAE,UAAU,IAAI,UAAU,CAClC,CAAC;IACJ,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;IACtD,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,QAA2B,EAC3B,QAA2B,EAC3B,OAAwB;IAExB,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;IACpC,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC9C,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC;IAE9C,uEAAuE;IACvE,MAAM,oBAAoB,GAAG,OAAO,EAAE,oBAAoB,IAAI,IAAI,CAAC;IAEnE,MAAM,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,iCAAiC,CACvE,aAAa,EACb,aAAa,EACb,OAAO,EAAE,UAAU,IAAI,UAAU,EACjC,oBAAoB,CACrB,CAAC;IAEF,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,sBAAsB,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IACvD,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,QAA2B,EAC3B,OAA6B;IAE7B,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;IACpC,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEtC,4CAA4C;IAC5C,MAAM,WAAW,GAAG,OAAO,EAAE,WAAW,IAAI,IAAI,CAAC;IACjD,MAAM,uBAAuB,GAAG,OAAO,EAAE,uBAAuB,IAAI,GAAG,CAAC;IACxE,MAAM,oBAAoB,GAAG,OAAO,EAAE,oBAAoB,IAAI,CAAC,CAAC;IAChE,MAAM,eAAe,GAAG,OAAO,EAAE,eAAe,IAAI,KAAK,CAAC;IAE1D,MAAM,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,2BAA2B,CACjE,KAAK,EACL,WAAW,EACX,uBAAuB,EACvB,oBAAoB,EACpB,eAAe,CAChB,CAAC;IAEF,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,4BAA4B,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAClC,OAAO,CAAC,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;QACnE,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM;QAC5B,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI;QACtB,YAAY,EAAE,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,YAAY;QAC9C,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI;QACtB,WAAW,EAAE,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,WAAW;QAC3C,YAAY,EAAE,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,YAAY;QAC9C,YAAY,EAAE,CAAC,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACjD,aAAa,EAAE,CAAC,CAAC,YAAY,EAAE,aAAa,IAAI,CAAC,CAAC,YAAY,EAAE,aAAa;YAC7E,aAAa,EAAE,CAAC,CAAC,YAAY,EAAE,aAAa,IAAI,CAAC,CAAC,YAAY,EAAE,aAAa;YAC7E,oBAAoB,EAAE,CAAC,CAAC,YAAY,EAAE,oBAAoB,IAAI,CAAC,CAAC,YAAY,EAAE,oBAAoB;SACnG,CAAC,CAAC,CAAC,SAAS;KACd,CAAC,CAAC,CAAC;AACN,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,UAAU;IACxB,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;IACpC,MAAM,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,UAAU,EAAE,CAAC;IACtD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAClC,OAAO;QACL,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO;QACzC,aAAa,EAAE,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,aAAa;QAC3D,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ;KAC7C,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa;IAC3B,OAAO,WAAW,KAAK,IAAI,CAAC;AAC9B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAsBA,OAAO,EACL,iBAAiB,EACjB,cAAc,EACd,mBAAmB,EACnB,YAAY,EACZ,mBAAmB,EACnB,WAAW,EACX,UAAU,EACV,MAAM,EACN,YAAY,EACZ,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACd,eAAe,EACf,kBAAkB,EAClB,aAAa,EACb,SAAS,EACT,eAAe,EACf,aAAa,EACb,eAAe,EACf,oBAAoB,EACpB,SAAS,EACT,WAAW,EACX,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,YAAY,EACZ,qBAAqB,GACtB,MAAM,YAAY,CAAC;AAWpB,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAuBjE,OAAO,EACL,iBAAiB,EACjB,cAAc,EACd,mBAAmB,EACnB,YAAY,EACZ,mBAAmB,EACnB,WAAW,EACX,UAAU,EACV,MAAM,EACN,YAAY,EACZ,iBAAiB,EACjB,YAAY,EACZ,cAAc;AACd,6BAA6B;AAC7B,eAAe,EACf,kBAAkB,EAClB,aAAa,EACb,SAAS,EACT,eAAe;AACf,sCAAsC;AACtC,aAAa,EACb,eAAe,EACf,oBAAoB,EACpB,SAAS,EACT,WAAW,EACX,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,YAAY,EACZ,qBAAqB,GACtB,CAAC;AAEF,IAAI,WAAW,GAA+B,IAAI,CAAC;AACnD,IAAI,WAAW,GAAyB,IAAI,CAAC;AAE7C;;;GAGG;AACH,SAAS,sBAAsB;IAC7B,IAAI,CAAC;QACH,kDAAkD;QAClD,oEAAoE;QACpE,2DAA2D;QAC3D,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;QAElC,2CAA2C;QAC3C,MAAM,OAAO,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QAEvE,8CAA8C;QAC9C,OAAO,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,+CAA+C;QAC/C,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,IAAI,YAAY,GAAG,EAAE,CAAC;AAE7B;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,YAAY,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;AACjE,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,QAAiB;IAChD,IAAI,WAAW;QAAE,OAAO;IAExB,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,eAAe,CAAC,QAAQ,CAAC,CAAC;IAC5B,CAAC;IAED,WAAW,GAAG,QAAQ,EAAE,CAAC;IACzB,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,eAAe,CAAC,QAAgB;IAC7C,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,QAAQ,GAAG,sBAAsB,CAAC;QACrD,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAEzF,MAAM,EAAE,kBAAkB,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM;aACnD,qBAAqB,CAAC,KAAK,CAAC;aAC5B,MAAM,EAAE,CAAC;QAEZ,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAElE,WAAW,GAAG;YACZ,iBAAiB,EAAE,OAAO,CAAC,YAAY,CAAC,iBAAiB;YACzD,gBAAgB,EAAE,OAAO,CAAC,YAAY,CAAC,gBAAgB;SACxD,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,KAAK,UAAU,QAAQ;IACrB,2CAA2C;IAC3C,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,YAAY,CAAC,CAAC;QACpD,IAAI,OAAO;YAAE,OAAO;QACpB,MAAM,IAAI,KAAK,CACb,yCAAyC,YAAY,IAAI;YACzD,oDAAoD,CACrD,CAAC;IACJ,CAAC;IAED,uEAAuE;IACvE,MAAM,gBAAgB,GAAG,sBAAsB,EAAE,CAAC;IAClD,IAAI,gBAAgB,EAAE,CAAC;QACrB,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,gBAAgB,CAAC,CAAC;QACxD,IAAI,OAAO,EAAE,CAAC;YACZ,YAAY,GAAG,gBAAgB,CAAC;YAChC,OAAO;QACT,CAAC;IACH,CAAC;IAED,wBAAwB;IACxB,MAAM,IAAI,KAAK,CACb,6BAA6B;QAC7B,uBAAuB,gBAAgB,IAAI,QAAQ,IAAI;QACvD,wEAAwE,CACzE,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB;IACxB,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CACb,iEAAiE,CAClE,CAAC;IACJ,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,SAAS,eAAe,CAAC,MAAc;IACrC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAClC,OAAO,OAAO,MAAM,KAAK,QAAQ,IAAI,OAAO,IAAI,MAAM,CAAC;IACzD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,MAAc;IAChC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAClC,OAAO;QACL,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK;QACnC,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI;QAChC,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,UAAU;KACnD,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,OAAO,CAAC,KAAwB;IAC7C,IAAI,KAAK,YAAY,UAAU,EAAE,CAAC;QAChC,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,WAAW,EAAE,CAAC;IACzC,OAAO,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;AAChC,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,QAA2B,EAC3B,OAA2B;IAE3B,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;IACpC,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEtC,IAAI,MAAc,CAAC;IAEnB,iDAAiD;IACjD,IAAI,OAAO,EAAE,iBAAiB,EAAE,CAAC;QAC/B,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,qBAAqB,CACtD,KAAK,EACL,OAAO,CAAC,SAAS,IAAI,UAAU,EAC/B,OAAO,CAAC,SAAS,IAAI,OAAO,EAC5B,OAAO,CAAC,gBAAgB,IAAI,IAAI,EAChC,OAAO,CAAC,aAAa,IAAI,EAAE,EAC3B,OAAO,CAAC,iBAAiB,IAAI,iBAAiB,CAAC,QAAQ,EACvD,OAAO,CAAC,qBAAqB,IAAI,UAAU,EAC3C,OAAO,CAAC,cAAc,IAAI,cAAc,CAAC,IAAI,EAC7C,OAAO,CAAC,eAAe,IAAI,GAAG,EAC9B,OAAO,CAAC,wBAAwB,IAAI,OAAO,EAC3C,OAAO,CAAC,iBAAiB,EACzB,OAAO,CAAC,mBAAmB,IAAI,mBAAmB,CAAC,KAAK,EACxD,OAAO,CAAC,wBAAwB,IAAI,QAAQ,CAC7C,CAAC;IACJ,CAAC;IACD,2DAA2D;SACtD,IAAI,OAAO,EAAE,cAAc,KAAK,SAAS,IAAI,OAAO,CAAC,cAAc,KAAK,cAAc,CAAC,IAAI,EAAE,CAAC;QACjG,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,+BAA+B,CAChE,KAAK,EACL,OAAO,CAAC,SAAS,IAAI,UAAU,EAC/B,OAAO,CAAC,SAAS,IAAI,OAAO,EAC5B,OAAO,CAAC,gBAAgB,IAAI,IAAI,EAChC,OAAO,CAAC,aAAa,IAAI,EAAE,EAC3B,OAAO,CAAC,iBAAiB,IAAI,iBAAiB,CAAC,QAAQ,EACvD,OAAO,CAAC,qBAAqB,IAAI,UAAU,EAC3C,OAAO,CAAC,cAAc,EACtB,OAAO,CAAC,eAAe,IAAI,GAAG,EAC9B,OAAO,CAAC,wBAAwB,IAAI,OAAO,CAC5C,CAAC;IACJ,CAAC;SAAM,IAAI,OAAO,EAAE,CAAC;QACnB,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,4BAA4B,CAC7D,KAAK,EACL,OAAO,CAAC,SAAS,IAAI,UAAU,EAC/B,OAAO,CAAC,SAAS,IAAI,OAAO,EAC5B,OAAO,CAAC,gBAAgB,IAAI,IAAI,EAChC,OAAO,CAAC,aAAa,IAAI,EAAE,EAC3B,OAAO,CAAC,iBAAiB,IAAI,iBAAiB,CAAC,QAAQ,EACvD,OAAO,CAAC,qBAAqB,IAAI,UAAU,CAC5C,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;IAC9D,CAAC;IAED,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,sBAAsB,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IACvD,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,QAA2B,EAC3B,QAA2B,EAC3B,OAAwB;IAExB,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;IACpC,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC9C,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC;IAE9C,IAAI,MAAkB,CAAC;IAEvB,IAAI,OAAO,EAAE,eAAe,KAAK,SAAS,IAAI,OAAO,EAAE,eAAe,EAAE,CAAC;QACvE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,2BAA2B,CAC3D,aAAa,EACb,aAAa,EACb,OAAO,EAAE,UAAU,IAAI,UAAU,EACjC,OAAO,EAAE,eAAe,IAAI,IAAI,EAChC,OAAO,EAAE,eAAe,IAAI,KAAK,CAClC,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,gBAAgB,CAChD,aAAa,EACb,aAAa,EACb,OAAO,EAAE,UAAU,IAAI,UAAU,CAClC,CAAC;IACJ,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;IACtD,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,QAA2B,EAC3B,QAA2B,EAC3B,OAAwB;IAExB,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;IACpC,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC9C,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC;IAE9C,uEAAuE;IACvE,MAAM,oBAAoB,GAAG,OAAO,EAAE,oBAAoB,IAAI,IAAI,CAAC;IAEnE,MAAM,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,iCAAiC,CACvE,aAAa,EACb,aAAa,EACb,OAAO,EAAE,UAAU,IAAI,UAAU,EACjC,oBAAoB,CACrB,CAAC;IAEF,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,sBAAsB,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IACvD,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,QAA2B,EAC3B,OAA6B;IAE7B,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;IACpC,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEtC,4CAA4C;IAC5C,MAAM,WAAW,GAAG,OAAO,EAAE,WAAW,IAAI,IAAI,CAAC;IACjD,MAAM,uBAAuB,GAAG,OAAO,EAAE,uBAAuB,IAAI,GAAG,CAAC;IACxE,MAAM,oBAAoB,GAAG,OAAO,EAAE,oBAAoB,IAAI,CAAC,CAAC;IAChE,MAAM,eAAe,GAAG,OAAO,EAAE,eAAe,IAAI,KAAK,CAAC;IAE1D,MAAM,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,2BAA2B,CACjE,KAAK,EACL,WAAW,EACX,uBAAuB,EACvB,oBAAoB,EACpB,eAAe,CAChB,CAAC;IAEF,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,4BAA4B,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAClC,OAAO,CAAC,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;QACnE,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM;QAC5B,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI;QACtB,YAAY,EAAE,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,YAAY;QAC9C,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI;QACtB,WAAW,EAAE,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,WAAW;QAC3C,YAAY,EAAE,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,YAAY;QAC9C,YAAY,EAAE,CAAC,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACjD,aAAa,EAAE,CAAC,CAAC,YAAY,EAAE,aAAa,IAAI,CAAC,CAAC,YAAY,EAAE,aAAa;YAC7E,aAAa,EAAE,CAAC,CAAC,YAAY,EAAE,aAAa,IAAI,CAAC,CAAC,YAAY,EAAE,aAAa;YAC7E,oBAAoB,EAAE,CAAC,CAAC,YAAY,EAAE,oBAAoB,IAAI,CAAC,CAAC,YAAY,EAAE,oBAAoB;SACnG,CAAC,CAAC,CAAC,SAAS;KACd,CAAC,CAAC,CAAC;AACN,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,UAAU;IACxB,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;IACpC,MAAM,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,UAAU,EAAE,CAAC;IACtD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAClC,OAAO;QACL,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO;QACzC,aAAa,EAAE,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,aAAa;QAC3D,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,QAAQ;KAC7C,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa;IAC3B,OAAO,WAAW,KAAK,IAAI,CAAC;AAC9B,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,QAA2B;IAE3B,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;IACpC,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEtC,MAAM,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;IAE/D,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,8BAA8B,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAClC,OAAO,CAAC,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;QACvE,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE;QAChB,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO;QAC/B,KAAK,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK;QACzB,KAAK,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK;QACzB,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM;QAC5B,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO;QAC/B,YAAY,EAAE,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,YAAY;QAC9C,SAAS,EAAE,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,SAAS;QACrC,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO;QAC/B,aAAa,EAAE,CAAC,CAAC,aAAa,IAAI,CAAC,CAAC,aAAa;QACjD,QAAQ,EAAE,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ;KACnC,CAAC,CAAC,CAAC;AACN,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,QAA2B,EAC3B,OAA6B;IAE7B,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;IACpC,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEtC,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC;QACjC,EAAE,EAAE,OAAO,CAAC,EAAE;QACd,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,SAAS;QACjC,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,CAAC;QACnC,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;QAChD,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;QAC5C,QAAQ,EAAE,OAAO,CAAC,QAAQ;KAC3B,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,aAAa,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IAE3E,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,6BAA6B,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAClC,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,UAAU,CAAC;IAE1D,OAAO;QACL,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,IAAI,IAAI;QACjD,aAAa,EAAE,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,aAAa;QAC3D,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC;YACvB,EAAE,EAAE,UAAU,CAAC,EAAE,IAAI,UAAU,CAAC,EAAE;YAClC,OAAO,EAAE,UAAU,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO;YACjD,KAAK,EAAE,UAAU,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK;YAC3C,KAAK,EAAE,UAAU,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK;YAC3C,MAAM,EAAE,UAAU,CAAC,MAAM,IAAI,UAAU,CAAC,MAAM;YAC9C,OAAO,EAAE,UAAU,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO;YACjD,YAAY,EAAE,UAAU,CAAC,YAAY,IAAI,UAAU,CAAC,YAAY;YAChE,aAAa,EAAE,UAAU,CAAC,aAAa,IAAI,UAAU,CAAC,aAAa;SACpE,CAAC,CAAC,CAAC,SAAS;KACd,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,QAA2B,EAC3B,YAAoB;IAEpB,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;IACpC,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEtC,MAAM,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;IAE/E,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,gCAAgC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IACjE,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAClC,OAAO;QACL,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,IAAI,IAAI;QACjD,aAAa,EAAE,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,aAAa;KAC5D,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,QAA2B;IAE3B,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;IACpC,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEtC,MAAM,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;IAE/D,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,gCAAgC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IACjE,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAClC,OAAO,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC,cAAc,IAAI,KAAK,CAAC;AACjE,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,QAA2B;IAE3B,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;IACpC,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEtC,MAAM,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;IAErE,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,qCAAqC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IACtE,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAElC,uCAAuC;IACvC,MAAM,cAAc,GAAG,CAAC,EAAO,EAAmB,EAAE,CAAC,CAAC;QACpD,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE;QAClB,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI;QACxB,WAAW,EAAE,EAAE,CAAC,WAAW,IAAI,EAAE,CAAC,WAAW;QAC7C,KAAK,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,KAAK;QAC3B,QAAQ,EAAE,EAAE,CAAC,QAAQ,IAAI,EAAE,CAAC,QAAQ;QACpC,WAAW,EAAE,EAAE,CAAC,WAAW,IAAI,EAAE,CAAC,WAAW;QAC7C,OAAO,EAAE,EAAE,CAAC,OAAO,IAAI,EAAE,CAAC,OAAO;QACjC,UAAU,EAAE,EAAE,CAAC,UAAU,IAAI,EAAE,CAAC,UAAU;QAC1C,QAAQ,EAAE,CAAC,EAAE,CAAC,QAAQ,IAAI,EAAE,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC;KACjE,CAAC,CAAC;IAEH,MAAM,kBAAkB,GAAG,CAAC,GAAQ,EAAmB,EAAE,CAAC,CAAC;QACzD,OAAO,EAAE,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO;QACnC,WAAW,EAAE,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,WAAW;QAC/C,OAAO,EAAE,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO,IAAI,EAAE;QACzC,QAAQ,EAAE,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ;KACvC,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,cAAc,CAAC,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;IAExD,kCAAkC;IAClC,MAAM,YAAY,GAAoC,EAAE,CAAC;IACzD,MAAM,eAAe,GAAG,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,YAAY,IAAI,EAAE,CAAC;IACzE,KAAK,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;QACxD,YAAY,CAAC,GAAG,CAAC,GAAG,cAAc,CAAC,EAAE,CAAC,CAAC;IACzC,CAAC;IAED,kCAAkC;IAClC,MAAM,YAAY,GAAoC,EAAE,CAAC;IACzD,MAAM,eAAe,GAAG,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,YAAY,IAAI,EAAE,CAAC;IACzE,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;QACzD,YAAY,CAAC,GAAG,CAAC,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC;IAC9C,CAAC;IAED,OAAO;QACL,IAAI;QACJ,YAAY;QACZ,YAAY;KACb,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,QAA2B,EAC3B,OAAuC;IAEvC,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;IACpC,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEtC,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC;QACjC,EAAE,EAAE,OAAO,CAAC,EAAE;QACd,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,SAAS;QACjC,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,SAAS;QACnC,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,WAAW;QACvC,cAAc,EAAE,OAAO,CAAC,MAAM,CAAC,cAAc;QAC7C,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,QAAQ;QACjC,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,UAAU;QACrC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,QAAQ;QACjC,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,SAAS;QACnC,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,WAAW;QACvC,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,UAAU;QACrC,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,UAAU,IAAI,CAAC;QAC1C,sBAAsB,EAAE,OAAO,CAAC,MAAM,CAAC,sBAAsB;KAC9D,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,uBAAuB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IAErF,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,6BAA6B,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAClC,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,UAAU,CAAC;IAE1D,OAAO;QACL,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,IAAI,IAAI;QACjD,aAAa,EAAE,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,aAAa;QAC3D,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC;YACvB,EAAE,EAAE,UAAU,CAAC,EAAE,IAAI,UAAU,CAAC,EAAE;YAClC,OAAO,EAAE,UAAU,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO;YACjD,KAAK,EAAE,UAAU,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK;YAC3C,KAAK,EAAE,UAAU,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK;YAC3C,MAAM,EAAE,UAAU,CAAC,MAAM,IAAI,UAAU,CAAC,MAAM;YAC9C,OAAO,EAAE,UAAU,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO;YACjD,YAAY,EAAE,UAAU,CAAC,YAAY,IAAI,UAAU,CAAC,YAAY;YAChE,aAAa,EAAE,UAAU,CAAC,aAAa,IAAI,UAAU,CAAC,aAAa;YACnE,QAAQ,EAAE,UAAU,CAAC,QAAQ,IAAI,UAAU,CAAC,QAAQ;SACrD,CAAC,CAAC,CAAC,SAAS;KACd,CAAC;AACJ,CAAC"}
|