@shznet/pdf-sign-control 0.2.2 → 0.2.3
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/README.md +75 -9
- package/dist/index.js +26 -0
- package/dist/lib/PdfSignControl.d.ts +4 -0
- package/dist/lib/PdfSignControl.d.ts.map +1 -1
- package/dist/lib/engine/PdfViewer.d.ts +9 -0
- package/dist/lib/engine/PdfViewer.d.ts.map +1 -1
- package/dist/lib/types.d.ts +7 -0
- package/dist/lib/types.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -42,24 +42,90 @@ pdfControl.on('fields:change', (fields) => {
|
|
|
42
42
|
|
|
43
43
|
## API
|
|
44
44
|
|
|
45
|
-
###
|
|
45
|
+
### Document Loading
|
|
46
|
+
|
|
47
|
+
#### `load(source: string | Uint8Array | ArrayBuffer): Promise<void>`
|
|
46
48
|
Loads and renders the PDF from the given URL or buffer.
|
|
47
49
|
|
|
48
|
-
###
|
|
49
|
-
Adds a new signature field to the document.
|
|
50
|
+
### View Mode
|
|
50
51
|
|
|
51
|
-
|
|
52
|
+
#### `setViewMode(mode: 'single' | 'scroll'): Promise<void>`
|
|
52
53
|
Switches between single page view and continuous scroll view.
|
|
53
54
|
|
|
54
|
-
|
|
55
|
+
#### `getViewMode(): ViewMode`
|
|
56
|
+
Returns the current view mode.
|
|
57
|
+
|
|
58
|
+
### Page Navigation
|
|
59
|
+
|
|
60
|
+
#### `goToPage(page: number): void`
|
|
61
|
+
Navigate to a specific page (1-based index).
|
|
62
|
+
|
|
63
|
+
#### `getCurrentPage(): number`
|
|
64
|
+
Get the current page number (1-based).
|
|
65
|
+
|
|
66
|
+
#### `getTotalPages(): number`
|
|
67
|
+
Get total number of pages in the document.
|
|
68
|
+
|
|
69
|
+
#### `nextPage(): void`
|
|
70
|
+
Navigate to the next page.
|
|
71
|
+
|
|
72
|
+
#### `previousPage(): void`
|
|
73
|
+
Navigate to the previous page.
|
|
74
|
+
|
|
75
|
+
#### `getPageDimensions(pageIndex: number): Promise<{ width: number; height: number } | null>`
|
|
76
|
+
Get dimensions of a specific page in PDF points (unscaled).
|
|
77
|
+
|
|
78
|
+
**Parameters:**
|
|
79
|
+
- `pageIndex`: Zero-based page index
|
|
80
|
+
|
|
81
|
+
**Returns:** Page dimensions `{ width, height }` in PDF points, or `null` if the page doesn't exist.
|
|
82
|
+
|
|
83
|
+
**Example:**
|
|
84
|
+
```typescript
|
|
85
|
+
const dims = await pdfControl.getPageDimensions(0); // First page
|
|
86
|
+
console.log(`Page dimensions: ${dims.width} x ${dims.height} points`);
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
### Zoom
|
|
90
|
+
|
|
91
|
+
#### `setScale(scale: number): void`
|
|
55
92
|
Controls the zoom level of the document.
|
|
56
93
|
|
|
57
|
-
|
|
94
|
+
#### `getScale(): number`
|
|
95
|
+
Get the current zoom scale.
|
|
96
|
+
|
|
97
|
+
### Field Management
|
|
98
|
+
|
|
99
|
+
#### `addField(field: SignatureField): Promise<void>`
|
|
100
|
+
Adds a new signature field to the document.
|
|
101
|
+
|
|
102
|
+
#### `removeField(fieldId: string): void`
|
|
103
|
+
Removes a field by its ID.
|
|
104
|
+
|
|
105
|
+
#### `updateField(fieldId: string, updates: Partial<SignatureField>): void`
|
|
106
|
+
Updates a field's properties.
|
|
107
|
+
|
|
108
|
+
#### `getFields(): SignatureField[]`
|
|
58
109
|
Returns the current list of fields.
|
|
59
110
|
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
111
|
+
#### `setFields(fields: SignatureField[]): void`
|
|
112
|
+
Replace all fields with a new set.
|
|
113
|
+
|
|
114
|
+
### Events
|
|
115
|
+
|
|
116
|
+
#### `on(event: string, handler: Function): void`
|
|
117
|
+
Subscribe to events:
|
|
118
|
+
- `page:change`: Fired when page changes - `(data: { page: number, total: number }) => void`
|
|
119
|
+
- `scale:change`: Fired when zoom changes - `(data: { scale: number }) => void`
|
|
120
|
+
- `field:add`: Fired when a field is added - `(field: SignatureField) => void`
|
|
121
|
+
- `field:remove`: Fired when a field is removed - `(data: { fieldId: string }) => void`
|
|
122
|
+
- `field:update`: Fired when a field is updated - `(data: { fieldId: string, updates: Partial<SignatureField> }) => void`
|
|
123
|
+
- `fields:change`: Fired when any field changes - `(fields: SignatureField[]) => void`
|
|
124
|
+
|
|
125
|
+
### Printing
|
|
126
|
+
|
|
127
|
+
#### `print(options?: { withSignatures?: boolean }): Promise<void>`
|
|
128
|
+
Prints the current document. Default is printing without signatures.
|
|
63
129
|
|
|
64
130
|
## License
|
|
65
131
|
|
package/dist/index.js
CHANGED
|
@@ -18305,6 +18305,29 @@ class ua {
|
|
|
18305
18305
|
getScale() {
|
|
18306
18306
|
return this.currentScale;
|
|
18307
18307
|
}
|
|
18308
|
+
/**
|
|
18309
|
+
* Get dimensions of a specific page in PDF points
|
|
18310
|
+
* @param pageIndex - Zero-based page index
|
|
18311
|
+
* @returns Page dimensions { width: number, height: number } or null if page doesn't exist
|
|
18312
|
+
*/
|
|
18313
|
+
async getPageDimensions(t) {
|
|
18314
|
+
if (!this.pdfDocument)
|
|
18315
|
+
throw new Error("PDF not loaded");
|
|
18316
|
+
if (t < 0 || t >= this.pdfDocument.numPages)
|
|
18317
|
+
return null;
|
|
18318
|
+
const e = this.pageInfo.get(t);
|
|
18319
|
+
if (e)
|
|
18320
|
+
return { width: e.width, height: e.height };
|
|
18321
|
+
try {
|
|
18322
|
+
const i = (await this.pdfDocument.getPage(t + 1)).getViewport({ scale: 1 }), n = {
|
|
18323
|
+
width: i.width,
|
|
18324
|
+
height: i.height
|
|
18325
|
+
};
|
|
18326
|
+
return this.pageInfo.set(t, n), n;
|
|
18327
|
+
} catch (s) {
|
|
18328
|
+
return console.error(`Failed to get dimensions for page ${t}:`, s), null;
|
|
18329
|
+
}
|
|
18330
|
+
}
|
|
18308
18331
|
// Field Management
|
|
18309
18332
|
fields = [];
|
|
18310
18333
|
setFields(t) {
|
|
@@ -18525,6 +18548,9 @@ class pa {
|
|
|
18525
18548
|
getScale() {
|
|
18526
18549
|
return this.viewer.getScale();
|
|
18527
18550
|
}
|
|
18551
|
+
async getPageDimensions(t) {
|
|
18552
|
+
return this.viewer.getPageDimensions(t);
|
|
18553
|
+
}
|
|
18528
18554
|
// Event handling
|
|
18529
18555
|
on(t, e) {
|
|
18530
18556
|
this.viewer.on(t, e);
|
|
@@ -12,6 +12,10 @@ export declare class PdfSignControl {
|
|
|
12
12
|
getTotalPages(): number;
|
|
13
13
|
setScale(scale: number): void;
|
|
14
14
|
getScale(): number;
|
|
15
|
+
getPageDimensions(pageIndex: number): Promise<{
|
|
16
|
+
width: number;
|
|
17
|
+
height: number;
|
|
18
|
+
} | null>;
|
|
15
19
|
on(event: string, handler: (data: any) => void): void;
|
|
16
20
|
off(event: string, handler: (data: any) => void): void;
|
|
17
21
|
setFields(fields: any[]): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PdfSignControl.d.ts","sourceRoot":"","sources":["../../src/lib/PdfSignControl.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE7D,qBAAa,cAAc;IACvB,OAAO,CAAC,MAAM,CAAY;gBAEd,OAAO,EAAE,qBAAqB;IAIpC,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,GAAG,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAK9D,WAAW,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhD,WAAW,IAAI,QAAQ;IAKvB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI5B,QAAQ,IAAI,IAAI;IAIhB,YAAY,IAAI,IAAI;IAIpB,cAAc,IAAI,MAAM;IAIxB,aAAa,IAAI,MAAM;IAKvB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAI7B,QAAQ,IAAI,MAAM;
|
|
1
|
+
{"version":3,"file":"PdfSignControl.d.ts","sourceRoot":"","sources":["../../src/lib/PdfSignControl.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE7D,qBAAa,cAAc;IACvB,OAAO,CAAC,MAAM,CAAY;gBAEd,OAAO,EAAE,qBAAqB;IAIpC,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,GAAG,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAK9D,WAAW,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAIhD,WAAW,IAAI,QAAQ;IAKvB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI5B,QAAQ,IAAI,IAAI;IAIhB,YAAY,IAAI,IAAI;IAIpB,cAAc,IAAI,MAAM;IAIxB,aAAa,IAAI,MAAM;IAKvB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAI7B,QAAQ,IAAI,MAAM;IAIZ,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAK7F,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI;IAI9C,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI;IAK/C,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI;IAI9B,SAAS,IAAI,GAAG,EAAE;IAIZ,QAAQ,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzC,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAIlC,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,IAAI;IAI1C,KAAK,CAAC,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAKlE,OAAO;CAGV"}
|
|
@@ -30,6 +30,15 @@ export declare class PdfViewer {
|
|
|
30
30
|
getTotalPages(): number;
|
|
31
31
|
setScale(scale: number): void;
|
|
32
32
|
getScale(): number;
|
|
33
|
+
/**
|
|
34
|
+
* Get dimensions of a specific page in PDF points
|
|
35
|
+
* @param pageIndex - Zero-based page index
|
|
36
|
+
* @returns Page dimensions { width: number, height: number } or null if page doesn't exist
|
|
37
|
+
*/
|
|
38
|
+
getPageDimensions(pageIndex: number): Promise<{
|
|
39
|
+
width: number;
|
|
40
|
+
height: number;
|
|
41
|
+
} | null>;
|
|
33
42
|
private fields;
|
|
34
43
|
setFields(fields: SignatureField[]): void;
|
|
35
44
|
getFields(): SignatureField[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PdfViewer.d.ts","sourceRoot":"","sources":["../../../src/lib/engine/PdfViewer.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAKzE,MAAM,WAAW,gBAAgB;IAC7B,SAAS,EAAE,WAAW,CAAC;IACvB,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,MAAM,CAAC,EAAE,cAAc,EAAE,CAAC;CAC7B;AAED,qBAAa,SAAS;IAClB,OAAO,CAAC,SAAS,CAAc;IAC/B,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,WAAW,CAAiC;IACpD,OAAO,CAAC,QAAQ,CAAkC;IAClD,OAAO,CAAC,eAAe,CAAW;IAClC,OAAO,CAAC,QAAQ,CAA6D;IAC7E,OAAO,CAAC,YAAY,CAA8B;IAClD,OAAO,CAAC,YAAY,CAAO;IAC3B,OAAO,CAAC,WAAW,CAAS;gBAEhB,OAAO,EAAE,gBAAgB;IAkC/B,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,GAAG,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;YA4BtD,YAAY;IAuB1B,OAAO,CAAC,cAAc;IAUhB,WAAW,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAShD,WAAW,IAAI,QAAQ;IAIvB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI5B,QAAQ,IAAI,IAAI;IAIhB,YAAY,IAAI,IAAI;IAIpB,cAAc,IAAI,MAAM;IAIxB,aAAa,IAAI,MAAM;IAIvB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAK7B,QAAQ,IAAI,MAAM;
|
|
1
|
+
{"version":3,"file":"PdfViewer.d.ts","sourceRoot":"","sources":["../../../src/lib/engine/PdfViewer.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAKzE,MAAM,WAAW,gBAAgB;IAC7B,SAAS,EAAE,WAAW,CAAC;IACvB,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,MAAM,CAAC,EAAE,cAAc,EAAE,CAAC;CAC7B;AAED,qBAAa,SAAS;IAClB,OAAO,CAAC,SAAS,CAAc;IAC/B,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,WAAW,CAAiC;IACpD,OAAO,CAAC,QAAQ,CAAkC;IAClD,OAAO,CAAC,eAAe,CAAW;IAClC,OAAO,CAAC,QAAQ,CAA6D;IAC7E,OAAO,CAAC,YAAY,CAA8B;IAClD,OAAO,CAAC,YAAY,CAAO;IAC3B,OAAO,CAAC,WAAW,CAAS;gBAEhB,OAAO,EAAE,gBAAgB;IAkC/B,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,GAAG,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;YA4BtD,YAAY;IAuB1B,OAAO,CAAC,cAAc;IAUhB,WAAW,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAShD,WAAW,IAAI,QAAQ;IAIvB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI5B,QAAQ,IAAI,IAAI;IAIhB,YAAY,IAAI,IAAI;IAIpB,cAAc,IAAI,MAAM;IAIxB,aAAa,IAAI,MAAM;IAIvB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAK7B,QAAQ,IAAI,MAAM;IAIlB;;;;OAIG;IACG,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAiC7F,OAAO,CAAC,MAAM,CAAwB;IAEtC,SAAS,CAAC,MAAM,EAAE,cAAc,EAAE,GAAG,IAAI;IAKzC,SAAS,IAAI,cAAc,EAAE;IAIvB,QAAQ,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAkEpD,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAOlC,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI;IAUpE,OAAO,CAAC,eAAe;IAyFvB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI;IAI9C,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI;IAIzC,KAAK,CAAC,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAgMlE,OAAO;CAQV"}
|
package/dist/lib/types.d.ts
CHANGED
|
@@ -18,6 +18,13 @@ export interface PageChangeEvent {
|
|
|
18
18
|
export interface ScaleChangeEvent {
|
|
19
19
|
scale: number;
|
|
20
20
|
}
|
|
21
|
+
/**
|
|
22
|
+
* Page dimensions in PDF points
|
|
23
|
+
*/
|
|
24
|
+
export interface PageDimensions {
|
|
25
|
+
width: number;
|
|
26
|
+
height: number;
|
|
27
|
+
}
|
|
21
28
|
/**
|
|
22
29
|
* Options for PdfLoader
|
|
23
30
|
*/
|
package/dist/lib/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/lib/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE3C;;GAEG;AACH,MAAM,WAAW,eAAe;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC7B,KAAK,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IAClC,SAAS,EAAE,WAAW,CAAC;IACvB,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,6BAA6B;IAC7B,MAAM,CAAC,EAAE,cAAc,EAAE,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,WAAW,CAAC;AAEzE,MAAM,WAAW,cAAc;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,sDAAsD;IACtD,IAAI,EAAE;QACF,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;QACV,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KAClB,CAAC;IAEF,IAAI,EAAE,kBAAkB,CAAC;IACzB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAEvB,kDAAkD;IAClD,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAE/B,oCAAoC;IACpC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB,QAAQ,CAAC,EAAE,GAAG,CAAC;CAClB"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/lib/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE3C;;GAEG;AACH,MAAM,WAAW,eAAe;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC7B,KAAK,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IAClC,SAAS,EAAE,WAAW,CAAC;IACvB,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,6BAA6B;IAC7B,MAAM,CAAC,EAAE,cAAc,EAAE,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,WAAW,CAAC;AAEzE,MAAM,WAAW,cAAc;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,sDAAsD;IACtD,IAAI,EAAE;QACF,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;QACV,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KAClB,CAAC;IAEF,IAAI,EAAE,kBAAkB,CAAC;IACzB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAEvB,kDAAkD;IAClD,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAE/B,oCAAoC;IACpC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB,QAAQ,CAAC,EAAE,GAAG,CAAC;CAClB"}
|