lcms-pdf-annotation 1.0.2 → 1.0.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 +95 -1
- package/dist/index.d.ts +15 -6
- package/dist/index.js +169 -39
- package/dist/index.js.map +1 -1
- package/dist/interface.d.ts +36 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -258,13 +258,107 @@ function Toolbar() {
|
|
|
258
258
|
| `color` | `string` | Current pen / shape color |
|
|
259
259
|
| `highlighterColor` | `string` | Current highlighter color |
|
|
260
260
|
| `lineWidths` | `{ PEN: number, HIGHLIGHTER: number, ERASER: number }` | Line widths per tool type |
|
|
261
|
-
| `boards` | `Array<{ id, shapes, page, rotation }>`
|
|
261
|
+
| `boards` | `Array<{ id, shapes, page, rotation, zoom }>` | All board data (zoom defaults to 1) |
|
|
262
262
|
| `currentBoardIndex` | `number` | Index of the currently active board |
|
|
263
263
|
| `history` | `historyItem[]` | Undo/redo history stack |
|
|
264
264
|
| `undoIndex` | `number` | Current position in the history stack |
|
|
265
265
|
|
|
266
266
|
---
|
|
267
267
|
|
|
268
|
+
### Zoom (Page Scale)
|
|
269
|
+
|
|
270
|
+
Each board has an independent zoom level (default `1.0`, range `0.1–5`).
|
|
271
|
+
|
|
272
|
+
```tsx
|
|
273
|
+
import {
|
|
274
|
+
zoomIn,
|
|
275
|
+
zoomOut,
|
|
276
|
+
setZoom,
|
|
277
|
+
resetZoom,
|
|
278
|
+
getZoom,
|
|
279
|
+
getBoardZoom,
|
|
280
|
+
} from 'crystal-draw';
|
|
281
|
+
|
|
282
|
+
// Zoom in/out by a step (default step = 0.1). Returns the new zoom level.
|
|
283
|
+
const z1 = zoomIn(); // 1.0 → 1.1
|
|
284
|
+
const z2 = zoomOut(0.25); // 1.1 → 0.85
|
|
285
|
+
|
|
286
|
+
// Set an exact zoom level (clamped to [0.1, 5])
|
|
287
|
+
setZoom(1.5); // 150 %
|
|
288
|
+
setZoom(0.5); // 50 %
|
|
289
|
+
|
|
290
|
+
// Reset zoom to 100 %
|
|
291
|
+
resetZoom();
|
|
292
|
+
|
|
293
|
+
// Read the current zoom level
|
|
294
|
+
const zoom = getZoom(); // e.g. 1.5
|
|
295
|
+
const zoom2 = getBoardZoom(2); // zoom of board at index 2
|
|
296
|
+
|
|
297
|
+
// All functions accept an optional boardIndex (defaults to currentBoardIndex)
|
|
298
|
+
zoomIn(0.1, 0); // zoom board 0 in by 0.1
|
|
299
|
+
zoomOut(0.2, 1); // zoom board 1 out by 0.2
|
|
300
|
+
setZoom(2, 0); // set board 0 to 200 %
|
|
301
|
+
resetZoom(1); // reset board 1
|
|
302
|
+
```
|
|
303
|
+
|
|
304
|
+
#### Via `ref` (imperative API)
|
|
305
|
+
|
|
306
|
+
```tsx
|
|
307
|
+
import CrystalDraw, { CrystalDrawRef } from 'crystal-draw';
|
|
308
|
+
import { useRef, useState } from 'react';
|
|
309
|
+
|
|
310
|
+
function App() {
|
|
311
|
+
const boardRef = useRef<CrystalDrawRef>(null);
|
|
312
|
+
const [zoom, setCurrentZoom] = useState(1);
|
|
313
|
+
|
|
314
|
+
return (
|
|
315
|
+
<>
|
|
316
|
+
<button onClick={() => { const z = boardRef.current?.zoomIn(); if (z != null) setCurrentZoom(z); }}>
|
|
317
|
+
Zoom In
|
|
318
|
+
</button>
|
|
319
|
+
<button onClick={() => { const z = boardRef.current?.zoomOut(); if (z != null) setCurrentZoom(z); }}>
|
|
320
|
+
Zoom Out
|
|
321
|
+
</button>
|
|
322
|
+
<button onClick={() => { boardRef.current?.resetZoom(); setCurrentZoom(1); }}>
|
|
323
|
+
Reset
|
|
324
|
+
</button>
|
|
325
|
+
<span>{Math.round(zoom * 100)}%</span>
|
|
326
|
+
|
|
327
|
+
<div style={{ width: '100vw', height: '100vh' }}>
|
|
328
|
+
<CrystalDraw ref={boardRef} onZoomChange={(z) => setCurrentZoom(z)} />
|
|
329
|
+
</div>
|
|
330
|
+
</>
|
|
331
|
+
);
|
|
332
|
+
}
|
|
333
|
+
```
|
|
334
|
+
|
|
335
|
+
#### Via `getZoomCallbacks` prop
|
|
336
|
+
|
|
337
|
+
```tsx
|
|
338
|
+
import CrystalDraw, { ZoomCallbacks } from 'crystal-draw';
|
|
339
|
+
|
|
340
|
+
function App() {
|
|
341
|
+
let controls: ZoomCallbacks | null = null;
|
|
342
|
+
|
|
343
|
+
return (
|
|
344
|
+
<>
|
|
345
|
+
<button onClick={() => controls?.zoomIn()}>+</button>
|
|
346
|
+
<button onClick={() => controls?.zoomOut()}>-</button>
|
|
347
|
+
<div style={{ width: '100vw', height: '100vh' }}>
|
|
348
|
+
<CrystalDraw
|
|
349
|
+
onZoomChange={(zoom, boardIndex) =>
|
|
350
|
+
console.log(`Board ${boardIndex} zoom: ${zoom}`)
|
|
351
|
+
}
|
|
352
|
+
getZoomCallbacks={(cb) => { controls = cb; }}
|
|
353
|
+
/>
|
|
354
|
+
</div>
|
|
355
|
+
</>
|
|
356
|
+
);
|
|
357
|
+
}
|
|
358
|
+
```
|
|
359
|
+
|
|
360
|
+
---
|
|
361
|
+
|
|
268
362
|
## Full Example — Custom Toolbar
|
|
269
363
|
|
|
270
364
|
```tsx
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { BoardItem, internalState, LineElement, Point, RotationDirection, ToolTypes } from './interface.js';
|
|
1
|
+
import { BoardItem, CrystalDrawProps, CrystalDrawRef, internalState, LineElement, Point, RotationDirection, ToolTypes, ZoomAction, ZoomCallbacks } from './interface.js';
|
|
2
2
|
import './index.css';
|
|
3
3
|
export declare const useBoundStore: import("zustand").UseBoundStore<import("zustand").StoreApi<internalState>>;
|
|
4
4
|
export declare const setTool: (tool: ToolTypes) => void;
|
|
@@ -20,9 +20,18 @@ export declare const rotateClockwise: (boardIndex?: number) => Promise<void>;
|
|
|
20
20
|
export declare const rotateAntiClockwise: (boardIndex?: number) => Promise<void>;
|
|
21
21
|
export declare const rotateCounterClockwise: (boardIndex?: number) => Promise<void>;
|
|
22
22
|
export declare const getBoardRotation: (boardIndex?: number) => number;
|
|
23
|
-
|
|
24
|
-
declare const
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
23
|
+
/** Zoom in the current (or specified) board by `step` (default 0.1). Returns the new zoom level. */
|
|
24
|
+
export declare const zoomIn: (step?: number, boardIndex?: number) => number;
|
|
25
|
+
/** Zoom out the current (or specified) board by `step` (default 0.1). Returns the new zoom level. */
|
|
26
|
+
export declare const zoomOut: (step?: number, boardIndex?: number) => number;
|
|
27
|
+
/** Set an exact zoom value (clamped to [0.1, 5]) for the current (or specified) board. Returns the clamped value. */
|
|
28
|
+
export declare const setZoom: (zoom: number, boardIndex?: number) => number;
|
|
29
|
+
/** Reset zoom to 1 for the current (or specified) board. Returns 1. */
|
|
30
|
+
export declare const resetZoom: (boardIndex?: number) => number;
|
|
31
|
+
/** Get the current zoom level for the current (or specified) board. */
|
|
32
|
+
export declare const getZoom: (boardIndex?: number) => number;
|
|
33
|
+
/** Alias for getZoom — returns the zoom level for the specified board. */
|
|
34
|
+
export declare const getBoardZoom: (boardIndex?: number) => number;
|
|
35
|
+
export type { BoardItem, CrystalDrawProps, CrystalDrawRef, internalState, LineElement, Point, RotationDirection, ToolTypes, ZoomAction, ZoomCallbacks, };
|
|
36
|
+
declare const CrystalDraw: import("react").ForwardRefExoticComponent<CrystalDrawProps & import("react").RefAttributes<CrystalDrawRef>>;
|
|
28
37
|
export default CrystalDraw;
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
-
import { memo, useCallback, useEffect, useMemo, useRef, useState } from 'react';
|
|
2
|
+
import { forwardRef, memo, useCallback, useEffect, useImperativeHandle, useMemo, useRef, useState } from 'react';
|
|
3
3
|
import { create } from 'zustand';
|
|
4
4
|
import debounce from 'lodash/debounce.js';
|
|
5
5
|
import { COLORS, LINEWIDTH, TOOLS, TOOLS_CLASSES } from './constants.js';
|
|
@@ -11,7 +11,8 @@ const initialBoardState = {
|
|
|
11
11
|
shapes: [],
|
|
12
12
|
page: null,
|
|
13
13
|
initialPage: null,
|
|
14
|
-
rotation: 0
|
|
14
|
+
rotation: 0,
|
|
15
|
+
zoom: 1
|
|
15
16
|
};
|
|
16
17
|
export const useBoundStore = create()((set, get) => ({
|
|
17
18
|
tool: TOOLS.PEN,
|
|
@@ -36,7 +37,8 @@ export const useBoundStore = create()((set, get) => ({
|
|
|
36
37
|
shapes: [],
|
|
37
38
|
page: null,
|
|
38
39
|
initialPage: null,
|
|
39
|
-
rotation: 0
|
|
40
|
+
rotation: 0,
|
|
41
|
+
zoom: 1
|
|
40
42
|
});
|
|
41
43
|
return { boards, currentBoardIndex: newBoardIndex };
|
|
42
44
|
});
|
|
@@ -128,6 +130,73 @@ export const useBoundStore = create()((set, get) => ({
|
|
|
128
130
|
rotateAntiClockwise: async (boardIndex) => {
|
|
129
131
|
await get().rotateBoard('anti-clockwise', boardIndex);
|
|
130
132
|
},
|
|
133
|
+
zoomIn: (step = 0.1, boardIndex) => {
|
|
134
|
+
const state = get();
|
|
135
|
+
const idx = typeof boardIndex !== 'undefined' ? boardIndex : state.currentBoardIndex;
|
|
136
|
+
const board = state.boards[idx];
|
|
137
|
+
if (!board)
|
|
138
|
+
return 1;
|
|
139
|
+
const newZoom = Math.min(5, +(((board.zoom ?? 1) + step)).toFixed(4));
|
|
140
|
+
set((s) => {
|
|
141
|
+
const boards = [...s.boards];
|
|
142
|
+
if (!boards[idx])
|
|
143
|
+
return {};
|
|
144
|
+
boards[idx] = { ...boards[idx], zoom: newZoom };
|
|
145
|
+
return { boards };
|
|
146
|
+
});
|
|
147
|
+
return newZoom;
|
|
148
|
+
},
|
|
149
|
+
zoomOut: (step = 0.1, boardIndex) => {
|
|
150
|
+
const state = get();
|
|
151
|
+
const idx = typeof boardIndex !== 'undefined' ? boardIndex : state.currentBoardIndex;
|
|
152
|
+
const board = state.boards[idx];
|
|
153
|
+
if (!board)
|
|
154
|
+
return 1;
|
|
155
|
+
const newZoom = Math.max(0.1, +(((board.zoom ?? 1) - step)).toFixed(4));
|
|
156
|
+
set((s) => {
|
|
157
|
+
const boards = [...s.boards];
|
|
158
|
+
if (!boards[idx])
|
|
159
|
+
return {};
|
|
160
|
+
boards[idx] = { ...boards[idx], zoom: newZoom };
|
|
161
|
+
return { boards };
|
|
162
|
+
});
|
|
163
|
+
return newZoom;
|
|
164
|
+
},
|
|
165
|
+
setZoom: (zoom, boardIndex) => {
|
|
166
|
+
const state = get();
|
|
167
|
+
const idx = typeof boardIndex !== 'undefined' ? boardIndex : state.currentBoardIndex;
|
|
168
|
+
const clamped = Math.min(5, Math.max(0.1, zoom));
|
|
169
|
+
set((s) => {
|
|
170
|
+
const boards = [...s.boards];
|
|
171
|
+
if (!boards[idx])
|
|
172
|
+
return {};
|
|
173
|
+
boards[idx] = { ...boards[idx], zoom: clamped };
|
|
174
|
+
return { boards };
|
|
175
|
+
});
|
|
176
|
+
return clamped;
|
|
177
|
+
},
|
|
178
|
+
resetZoom: (boardIndex) => {
|
|
179
|
+
const state = get();
|
|
180
|
+
const idx = typeof boardIndex !== 'undefined' ? boardIndex : state.currentBoardIndex;
|
|
181
|
+
set((s) => {
|
|
182
|
+
const boards = [...s.boards];
|
|
183
|
+
if (!boards[idx])
|
|
184
|
+
return {};
|
|
185
|
+
boards[idx] = { ...boards[idx], zoom: 1 };
|
|
186
|
+
return { boards };
|
|
187
|
+
});
|
|
188
|
+
return 1;
|
|
189
|
+
},
|
|
190
|
+
getZoom: (boardIndex) => {
|
|
191
|
+
const state = get();
|
|
192
|
+
const idx = typeof boardIndex !== 'undefined' ? boardIndex : state.currentBoardIndex;
|
|
193
|
+
return state.boards[idx]?.zoom ?? 1;
|
|
194
|
+
},
|
|
195
|
+
getBoardZoom: (boardIndex) => {
|
|
196
|
+
const state = get();
|
|
197
|
+
const idx = typeof boardIndex !== 'undefined' ? boardIndex : state.currentBoardIndex;
|
|
198
|
+
return state.boards[idx]?.zoom ?? 1;
|
|
199
|
+
},
|
|
131
200
|
setTool: (tool) => set({ tool }),
|
|
132
201
|
setColor: (color) => set({ color }),
|
|
133
202
|
setCurrentBoardIndex: (currentBoardIndex) => set({ currentBoardIndex }),
|
|
@@ -261,6 +330,7 @@ export const useBoundStore = create()((set, get) => ({
|
|
|
261
330
|
page: page.dataUrl, // base64 data URL — already in memory, no network needed
|
|
262
331
|
initialPage: page.dataUrl,
|
|
263
332
|
rotation: 0,
|
|
333
|
+
zoom: 1,
|
|
264
334
|
setCurrentBoardIndex: index
|
|
265
335
|
}));
|
|
266
336
|
let boards = [...state.boards];
|
|
@@ -352,6 +422,7 @@ const InternalBoard = ({ boardIndex }) => {
|
|
|
352
422
|
const updateShape = useBoundStore((state) => state.updateShape);
|
|
353
423
|
const shapes = useBoundStore((state) => state.boards?.[CurrentBoard]?.shapes);
|
|
354
424
|
const page = useBoundStore((state) => state.boards?.[CurrentBoard]?.page);
|
|
425
|
+
const zoom = useBoundStore((state) => state.boards?.[CurrentBoard]?.zoom ?? 1);
|
|
355
426
|
const setupCanvasRef = useRef(() => null);
|
|
356
427
|
const canvasRef = useRef(null);
|
|
357
428
|
const backgroundDivRef = useRef(null);
|
|
@@ -895,42 +966,48 @@ const InternalBoard = ({ boardIndex }) => {
|
|
|
895
966
|
};
|
|
896
967
|
}
|
|
897
968
|
}, [handleMouseDown, handleMouseMove, handleMouseUp, handleDoubleClick]);
|
|
898
|
-
return (
|
|
899
|
-
|
|
900
|
-
|
|
901
|
-
|
|
902
|
-
|
|
903
|
-
|
|
904
|
-
|
|
905
|
-
|
|
906
|
-
|
|
907
|
-
|
|
908
|
-
|
|
909
|
-
|
|
910
|
-
|
|
911
|
-
|
|
912
|
-
|
|
913
|
-
|
|
914
|
-
|
|
969
|
+
return (_jsx("div", { className: "relative overflow-hidden", id: `crystal-board-container-${CurrentBoard}`, style: { minHeight: "100%", width: "100%", backgroundColor: 'white' }, children: _jsxs("div", { style: {
|
|
970
|
+
width: '100%',
|
|
971
|
+
height: '100%',
|
|
972
|
+
transform: `scale(${zoom})`,
|
|
973
|
+
transformOrigin: 'top left',
|
|
974
|
+
position: 'relative',
|
|
975
|
+
}, children: [_jsx("div", { ref: backgroundDivRef, className: "flex w-full h-full flex-col z-0", style: page ? { backgroundImage: `url(${page})`, backgroundSize: 'contain', backgroundPosition: 'center', backgroundRepeat: 'no-repeat' } : {} }), _jsx("canvas", { ref: canvasRef, className: "absolute h-full w-full left-0 top-0 z-10 bg-transparent" }), _jsxs("div", { ref: textInputRef, className: 'absolute z-20 gap-1', style: { display: 'none' }, children: [_jsxs("div", { className: "flex bg-white text-black shadow-md rounded border border-gray-200 p-1 gap-2 items-center mb-1 w-max", children: [_jsx("div", { className: "cursor-move p-1 hover:bg-gray-100 rounded text-gray-500", onMouseDown: handleTextInputMouseDown, children: _jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [_jsx("circle", { cx: "9", cy: "12", r: "1" }), _jsx("circle", { cx: "9", cy: "5", r: "1" }), _jsx("circle", { cx: "9", cy: "19", r: "1" }), _jsx("circle", { cx: "15", cy: "12", r: "1" }), _jsx("circle", { cx: "15", cy: "5", r: "1" }), _jsx("circle", { cx: "15", cy: "19", r: "1" })] }) }), _jsxs("select", { value: fontFamily, onChange: (e) => {
|
|
976
|
+
setFontFamily(e.target.value);
|
|
977
|
+
if (textInputRef.current)
|
|
978
|
+
textInputRef.current.style.fontFamily = e.target.value;
|
|
979
|
+
}, className: "text-sm outline-none bg-transparent cursor-pointer", children: [_jsx("option", { value: "Arial", children: "Arial" }), _jsx("option", { value: "Times New Roman", children: "Times" }), _jsx("option", { value: "Courier New", children: "Courier" }), _jsx("option", { value: "Verdana", children: "Verdana" })] }), _jsx("select", { value: fontSize, onChange: (e) => {
|
|
980
|
+
setFontSize(e.target.value);
|
|
981
|
+
if (textInputRef.current)
|
|
982
|
+
textInputRef.current.style.fontSize = `${e.target.value}px`;
|
|
983
|
+
}, className: "text-sm outline-none bg-transparent cursor-pointer", children: [12, 16, 20, 24, 28, 32, 40, 48].map(size => (_jsxs("option", { value: size, children: [size, "px"] }, size))) }), _jsx("button", { className: "p-1 rounded cursor-pointer hover:bg-gray-100 flex items-center justify-center text-green-600 outline-none", onClick: submitText, onDoubleClick: submitText, onKeyDown: (e) => {
|
|
984
|
+
if (e.key === 'Enter') {
|
|
985
|
+
submitText();
|
|
986
|
+
}
|
|
987
|
+
}, children: _jsx("svg", { xmlns: "http://www.w3.org/2000/svg", width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "3", strokeLinecap: "round", strokeLinejoin: "round", children: _jsx("polyline", { points: "20 6 9 17 4 12" }) }) })] }), _jsx("div", { ref: editableDivRef, contentEditable: true, suppressContentEditableWarning: true, className: "outline-none max-w-[400px] whitespace-pre-wrap overflow-x-clip min-w-[50px] border border-dashed border-gray-400 bg-transparent px-1 py-0.5", onBeforeInput: (e) => {
|
|
988
|
+
const currentText = editableDivRef.current?.innerText || '';
|
|
989
|
+
const nativeEvent = e.nativeEvent;
|
|
990
|
+
const incomingText = nativeEvent.data || '';
|
|
991
|
+
if (currentText.length + incomingText.length > 200) {
|
|
992
|
+
e.preventDefault();
|
|
993
|
+
}
|
|
994
|
+
}, onPaste: (e) => {
|
|
915
995
|
e.preventDefault();
|
|
916
|
-
|
|
917
|
-
|
|
918
|
-
|
|
919
|
-
|
|
920
|
-
|
|
921
|
-
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
|
|
927
|
-
|
|
928
|
-
|
|
929
|
-
|
|
930
|
-
|
|
931
|
-
e.stopPropagation();
|
|
932
|
-
handleEditButtonClick();
|
|
933
|
-
}, children: [_jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "12", height: "12", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2.5", strokeLinecap: "round", strokeLinejoin: "round", children: [_jsx("path", { d: "M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7" }), _jsx("path", { d: "M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z" })] }), "Edit"] }))] }));
|
|
996
|
+
const pastedText = e.clipboardData.getData('text/plain');
|
|
997
|
+
const currentText = editableDivRef.current?.innerText || '';
|
|
998
|
+
const remaining = 200 - currentText.length;
|
|
999
|
+
if (remaining <= 0)
|
|
1000
|
+
return;
|
|
1001
|
+
const trimmedPaste = pastedText.slice(0, remaining);
|
|
1002
|
+
document.execCommand('insertText', false, trimmedPaste);
|
|
1003
|
+
}, onInput: (e) => setText(e.currentTarget.innerText || '') }), _jsxs("div", { className: "text-xs mt-0.5 px-1", style: { color: text.length >= 200 ? '#ef4444' : '#9ca3af' }, children: [text.length, "/200"] })] }), _jsx("div", { ref: laserRef, className: "pointer-events-none absolute z-20" }), selectedShape && editingIndex === null && (_jsxs("button", { className: "absolute z-30 bg-blue-500 text-white px-3 py-2 rounded-full text-xs font-semibold shadow-lg hover:bg-blue-600 flex items-center gap-1 cursor-pointer", style: {
|
|
1004
|
+
left: `${calculateBoundingBox(selectedShape, canvasRef.current).maxX * canvasRef.current.width}px`,
|
|
1005
|
+
top: `${calculateBoundingBox(selectedShape, canvasRef.current).minY * canvasRef.current.height - 10}px`,
|
|
1006
|
+
transform: 'translate(-100%, -100%)'
|
|
1007
|
+
}, id: 'text-edit', onClick: (e) => {
|
|
1008
|
+
e.stopPropagation();
|
|
1009
|
+
handleEditButtonClick();
|
|
1010
|
+
}, children: [_jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: "12", height: "12", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2.5", strokeLinecap: "round", strokeLinejoin: "round", children: [_jsx("path", { d: "M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7" }), _jsx("path", { d: "M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z" })] }), "Edit"] }))] }) }));
|
|
934
1011
|
};
|
|
935
1012
|
const Board = memo(InternalBoard);
|
|
936
1013
|
export const setTool = (tool) => useBoundStore.getState().setTool(tool);
|
|
@@ -956,14 +1033,67 @@ export const getBoardRotation = (boardIndex) => {
|
|
|
956
1033
|
const index = typeof boardIndex !== 'undefined' ? boardIndex : state.currentBoardIndex;
|
|
957
1034
|
return state.boards[index]?.rotation || 0;
|
|
958
1035
|
};
|
|
959
|
-
|
|
1036
|
+
// ─── Zoom exports ────────────────────────────────────────────────────────────
|
|
1037
|
+
/** Zoom in the current (or specified) board by `step` (default 0.1). Returns the new zoom level. */
|
|
1038
|
+
export const zoomIn = (step, boardIndex) => useBoundStore.getState().zoomIn(step, boardIndex);
|
|
1039
|
+
/** Zoom out the current (or specified) board by `step` (default 0.1). Returns the new zoom level. */
|
|
1040
|
+
export const zoomOut = (step, boardIndex) => useBoundStore.getState().zoomOut(step, boardIndex);
|
|
1041
|
+
/** Set an exact zoom value (clamped to [0.1, 5]) for the current (or specified) board. Returns the clamped value. */
|
|
1042
|
+
export const setZoom = (zoom, boardIndex) => useBoundStore.getState().setZoom(zoom, boardIndex);
|
|
1043
|
+
/** Reset zoom to 1 for the current (or specified) board. Returns 1. */
|
|
1044
|
+
export const resetZoom = (boardIndex) => useBoundStore.getState().resetZoom(boardIndex);
|
|
1045
|
+
/** Get the current zoom level for the current (or specified) board. */
|
|
1046
|
+
export const getZoom = (boardIndex) => useBoundStore.getState().getZoom(boardIndex);
|
|
1047
|
+
/** Alias for getZoom — returns the zoom level for the specified board. */
|
|
1048
|
+
export const getBoardZoom = (boardIndex) => useBoundStore.getState().getBoardZoom(boardIndex);
|
|
1049
|
+
// ─── CrystalDraw Component ───────────────────────────────────────────────────
|
|
1050
|
+
const CrystalDrawInner = ({ className, style, onZoomChange, getZoomCallbacks }, ref) => {
|
|
960
1051
|
const boards = useBoundStore((state) => state.boards);
|
|
961
1052
|
const tool = useBoundStore((state) => state.tool);
|
|
962
1053
|
const generatePDF = useBoundStore((state) => state.generatePdf);
|
|
1054
|
+
const currentBoardIndex = useBoundStore((state) => state.currentBoardIndex);
|
|
1055
|
+
const currentZoom = useBoundStore((state) => state.boards?.[state.currentBoardIndex]?.zoom ?? 1);
|
|
1056
|
+
// Notify consumer whenever current board's zoom changes
|
|
1057
|
+
useEffect(() => {
|
|
1058
|
+
onZoomChange?.(currentZoom, currentBoardIndex);
|
|
1059
|
+
}, [currentZoom, currentBoardIndex, onZoomChange]);
|
|
1060
|
+
// Build zoom (and full board control) callbacks once and hand them to the consumer
|
|
1061
|
+
const zoomCallbacks = useMemo(() => ({
|
|
1062
|
+
zoomIn: (step, boardIndex) => useBoundStore.getState().zoomIn(step, boardIndex),
|
|
1063
|
+
zoomOut: (step, boardIndex) => useBoundStore.getState().zoomOut(step, boardIndex),
|
|
1064
|
+
setZoom: (zoom, boardIndex) => useBoundStore.getState().setZoom(zoom, boardIndex),
|
|
1065
|
+
resetZoom: (boardIndex) => useBoundStore.getState().resetZoom(boardIndex),
|
|
1066
|
+
getZoom: (boardIndex) => useBoundStore.getState().getZoom(boardIndex),
|
|
1067
|
+
getBoardZoom: (boardIndex) => useBoundStore.getState().getBoardZoom(boardIndex),
|
|
1068
|
+
}), []);
|
|
1069
|
+
useEffect(() => {
|
|
1070
|
+
getZoomCallbacks?.(zoomCallbacks);
|
|
1071
|
+
}, [getZoomCallbacks, zoomCallbacks]);
|
|
1072
|
+
// Expose all controls via ref
|
|
1073
|
+
useImperativeHandle(ref, () => ({
|
|
1074
|
+
...zoomCallbacks,
|
|
1075
|
+
rotateClockwise: (boardIndex) => useBoundStore.getState().rotateClockwise(boardIndex),
|
|
1076
|
+
rotateAntiClockwise: (boardIndex) => useBoundStore.getState().rotateAntiClockwise(boardIndex),
|
|
1077
|
+
rotateBoard: (direction, boardIndex) => useBoundStore.getState().rotateBoard(direction, boardIndex),
|
|
1078
|
+
getBoardRotation: (boardIndex) => {
|
|
1079
|
+
const state = useBoundStore.getState();
|
|
1080
|
+
const idx = typeof boardIndex !== 'undefined' ? boardIndex : state.currentBoardIndex;
|
|
1081
|
+
return state.boards[idx]?.rotation || 0;
|
|
1082
|
+
},
|
|
1083
|
+
undo: () => useBoundStore.getState().undo(),
|
|
1084
|
+
redo: () => useBoundStore.getState().redo(),
|
|
1085
|
+
clearBoard: (boardId) => useBoundStore.getState().clearBoard(boardId),
|
|
1086
|
+
addBoard: () => useBoundStore.getState().addBoard(),
|
|
1087
|
+
removeBoard: (boardId) => useBoundStore.getState().removeBoard(boardId),
|
|
1088
|
+
setTool: (tool) => useBoundStore.getState().setTool(tool),
|
|
1089
|
+
setColor: (color) => useBoundStore.getState().setColor(color),
|
|
1090
|
+
setCurrentBoardIndex: (idx) => useBoundStore.getState().setCurrentBoardIndex(idx),
|
|
1091
|
+
}), [zoomCallbacks]);
|
|
963
1092
|
if (boards.length > 0) {
|
|
964
1093
|
return (_jsx(_Fragment, { children: _jsx("div", { className: `${TOOLS_CLASSES[tool]} ${className || ''}`, style: style, id: "crystal--draw-container", children: generatePDF ? (boards.map((board, index) => _jsx(Board, { boardIndex: index }, board.id))) : (_jsx(Board, {})) }) }));
|
|
965
1094
|
}
|
|
966
1095
|
return null;
|
|
967
1096
|
};
|
|
1097
|
+
const CrystalDraw = forwardRef(CrystalDrawInner);
|
|
968
1098
|
export default CrystalDraw;
|
|
969
1099
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAChF,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,QAAQ,MAAM,oBAAoB,CAAC;AAE1C,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACzE,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,QAAQ,EACR,UAAU,EACV,MAAM,EACN,kBAAkB,EAClB,aAAa,EACb,WAAW,EACZ,MAAM,YAAY,CAAC;AACpB,OAAO,aAAa,CAAC;AACrB,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAE9F,MAAM,iBAAiB,GAAc;IACnC,EAAE,EAAE,CAAC;IACL,MAAM,EAAE,EAAE;IACV,IAAI,EAAE,IAAI;IACV,WAAW,EAAE,IAAI;IACjB,QAAQ,EAAE,CAAC;CACZ,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,EAAiB,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;IAClE,IAAI,EAAE,KAAK,CAAC,GAAG;IACf,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,OAAO;IACzB,gBAAgB,EAAE,MAAM,CAAC,WAAW,CAAC,OAAO;IAC5C,iBAAiB,EAAE,CAAC;IACpB,UAAU,EAAE;QACV,GAAG,EAAE,SAAS,CAAC,GAAG,CAAC,KAAK;QACxB,WAAW,EAAE,SAAS,CAAC,WAAW,CAAC,KAAK;QACxC,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,KAAK;KAC/B;IACD,MAAM,EAAE,CAAC,iBAAiB,CAAC;IAC3B,OAAO,EAAE,EAAE;IACX,SAAS,EAAE,CAAC,CAAC;IACb,WAAW,EAAE,KAAK;IAClB,QAAQ,EAAE,GAAG,EAAE;QACb,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YACZ,MAAM,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;YACjC,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC;YACpC,MAAM,CAAC,IAAI,CAAC;gBACV,EAAE,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC;gBACrB,MAAM,EAAE,EAAE;gBACV,IAAI,EAAE,IAAI;gBACV,WAAW,EAAE,IAAI;gBACjB,QAAQ,EAAE,CAAC;aACZ,CAAC,CAAC;YACH,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,aAAa,EAAE,CAAC;QACtD,CAAC,CAAC,CAAC;IACL,CAAC;IACD,WAAW,EAAE,CAAC,OAAe,EAAE,EAAE;QAC/B,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YACZ,MAAM,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;YACjC,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YAC1B,OAAO,EAAE,MAAM,EAAE,CAAC;QACpB,CAAC,CAAC,CAAC;IACL,CAAC;IACD,WAAW,EAAE,KAAK,EAAE,YAA+B,WAAW,EAAE,UAAmB,EAAE,EAAE;QACrF,MAAM,KAAK,GAAG,GAAG,EAAE,CAAC;QACpB,MAAM,WAAW,GACf,OAAO,UAAU,KAAK,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC;QAC3E,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QACxC,IAAI,CAAC,KAAK;YAAE,OAAO;QAEnB,MAAM,MAAM,GACV,SAAS,KAAK,gBAAgB;YAC9B,SAAS,KAAK,eAAe;YAC7B,SAAS,KAAK,kBAAkB,CAAC;QACnC,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChC,MAAM,eAAe,GAAG,KAAK,CAAC,QAAQ,IAAI,CAAC,CAAC;QAC5C,MAAM,WAAW,GAAG,CAAC,eAAe,GAAG,KAAK,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;QAE1D,+CAA+C;QAC/C,2CAA2C;QAC3C,gDAAgD;QAChD,MAAM,aAAa,GAAkB,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACxE,GAAG,KAAK;YACR,MAAM,EAAE,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACvC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBACzB,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aAC1B,CAAC,CAAC;SACJ,CAAC,CAAC,CAAC;QAEJ,+BAA+B;QAC/B,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,IAAI,CAAC;QACpD,IAAI,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC;QAEzB,IAAI,WAAW,EAAE,CAAC;YAChB,IAAI,WAAW,KAAK,CAAC,EAAE,CAAC;gBACtB,OAAO,GAAG,WAAW,CAAC;YACxB,CAAC;iBAAM,CAAC;gBACN,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;gBACnD,OAAO,GAAG,MAAM,WAAW,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;YACxD,CAAC;QACH,CAAC;QAED,yEAAyE;QACzE,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACzC,IAAI,IAAI,CAAC,UAAU,KAAK,WAAW;gBAAE,OAAO,IAAI,CAAC;YACjD,OAAO;gBACL,GAAG,IAAI;gBACP,KAAK,EAAE,IAAI,CAAC,KAAK;oBACf,CAAC,CAAC;wBACE,GAAG,IAAI,CAAC,KAAK;wBACb,MAAM,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;4BAC5C,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;4BACzB,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;yBAC1B,CAAC,CAAC;qBACJ;oBACH,CAAC,CAAC,IAAI,CAAC,KAAK;gBACd,QAAQ,EAAE,IAAI,CAAC,QAAQ;oBACrB,CAAC,CAAC;wBACE,GAAG,IAAI,CAAC,QAAQ;wBAChB,MAAM,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;4BAC/C,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;4BACzB,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;yBAC1B,CAAC,CAAC;qBACJ;oBACH,CAAC,CAAC,IAAI,CAAC,QAAQ;aAClB,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,CAAC,YAAY,EAAE,EAAE;YACnB,MAAM,MAAM,GAAG,CAAC,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;YACxC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;gBAAE,OAAO,EAAE,CAAC;YACpC,MAAM,CAAC,WAAW,CAAC,GAAG;gBACpB,GAAG,MAAM,CAAC,WAAW,CAAC;gBACtB,QAAQ,EAAE,WAAW;gBACrB,MAAM,EAAE,aAAa;gBACrB,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,WAAW;aACzB,CAAC;YACF,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;QAC7B,CAAC,CAAC,CAAC;IACL,CAAC;IACD,eAAe,EAAE,KAAK,EAAE,UAAmB,EAAE,EAAE;QAC7C,MAAM,GAAG,EAAE,CAAC,WAAW,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;IACnD,CAAC;IACD,mBAAmB,EAAE,KAAK,EAAE,UAAmB,EAAE,EAAE;QACjD,MAAM,GAAG,EAAE,CAAC,WAAW,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC;IACxD,CAAC;IACD,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC;IAChC,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC;IACnC,oBAAoB,EAAE,CAAC,iBAAyB,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAC/E,mBAAmB,EAAE,CAAC,gBAAgB,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,gBAAgB,EAAE,CAAC;IACpE,YAAY,EAAE,CAAC,SAAS,EAAE,IAAI,EAAE,EAAE,CAChC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,GAAG,KAAK,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;IAC9E,WAAW,EAAE,CAAC,KAAa,EAAE,KAAkB,EAAE,UAAkB,EAAE,EAAE;QACrE,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YACZ,MAAM,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;YACjC,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;YACjC,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;gBACjC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;gBACtB,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,CAAC;YAC5C,CAAC;YACD,OAAO,EAAE,MAAM,EAAE,CAAC;QACpB,CAAC,CAAC,CAAC;IACL,CAAC;IACD,WAAW,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE;QACjC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YACZ,MAAM,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;YACjC,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;YACjC,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAClC,MAAM,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;gBACjC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBACxB,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,CAAC;gBAE1C,IAAI,OAAO,GAAG,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;gBACjC,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;gBAChD,OAAO,CAAC,IAAI,CAAC;oBACX,UAAU;oBACV,KAAK;oBACL,KAAK;oBACL,IAAI,EAAE,QAAQ;iBACf,CAAC,CAAC;gBAEH,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC;YAC7D,CAAC;YACD,OAAO,EAAE,MAAM,EAAE,CAAC;QACpB,CAAC,CAAC,CAAC;IACL,CAAC;IACD,YAAY,EAAE,CAAC,KAAa,EAAE,KAAkB,EAAE,UAAkB,EAAE,QAAqB,EAAE,EAAE;QAC7F,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YACZ,IAAI,OAAO,GAAG,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;YACjC,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;YAChD,OAAO,CAAC,IAAI,CAAC;gBACX,UAAU;gBACV,KAAK;gBACL,QAAQ;gBACR,KAAK;gBACL,IAAI,EAAE,QAAQ;aACf,CAAC,CAAC;YACH,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC;QACrD,CAAC,CAAC,CAAC;IACL,CAAC;IACD,QAAQ,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE;QAC9B,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC;QAEzB,MAAM,MAAM,GAAG,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QACtC,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;QAEjC,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;YACjC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnB,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;YAEtB,IAAI,OAAO,GAAG,CAAC,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;YACtC,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;YACrD,OAAO,CAAC,IAAI,CAAC;gBACX,UAAU;gBACV,KAAK;gBACL,IAAI,EAAE,KAAK;aACZ,CAAC,CAAC;YAEH,GAAG,CAAC;gBACF,MAAM;gBACN,OAAO;gBACP,SAAS,EAAE,UAAU,CAAC,SAAS,GAAG,CAAC;aACpC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,UAAU,EAAE,CAAC,OAAe,EAAE,EAAE;QAC9B,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YACZ,MAAM,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;YACjC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;YACrD,OAAO,EAAE,MAAM,EAAE,CAAC;QACpB,CAAC,CAAC,CAAC;IACL,CAAC;IACD,IAAI,EAAE,KAAK,IAAI,EAAE;QACf,MAAM,KAAK,GAAG,GAAG,EAAE,CAAC;QACpB,IAAI,KAAK,CAAC,SAAS,GAAG,CAAC;YAAE,OAAO;QAEhC,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACxC,MAAM,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;QAEjC,IAAI,MAAM,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;YAC1B,MAAM,CAAC,GAAG,EAAE,CAAC;QACf,CAAC;aAAM,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACpC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KAAM,EAAE,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QAChD,CAAC;aAAM,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACpC,MAAM,CAAC,MAAM,CAAC,KAAM,CAAC,GAAG,MAAM,CAAC,QAAS,CAAC;QAC3C,CAAC;QAED,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,CAAC;QACjD,GAAG,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC,CAAC;IAClD,CAAC;IACD,IAAI,EAAE,KAAK,IAAI,EAAE;QACf,MAAM,KAAK,GAAG,GAAG,EAAE,CAAC;QACpB,IAAI,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO;QAExD,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC;QACtC,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACxC,MAAM,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACxC,MAAM,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;QAEjC,IAAI,MAAM,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;YAC1B,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;aAAM,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACpC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KAAM,EAAE,CAAC,CAAC,CAAC;QAClC,CAAC;aAAM,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACpC,MAAM,CAAC,MAAM,CAAC,KAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;QACvC,CAAC;QAED,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,CAAC;QACjD,GAAG,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;IACxC,CAAC;IACD,SAAS,EAAE,KAAK,EAAE,GAAkB,EAAE,EAAE;QACtC,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;QACnD,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,CAAC;QAErC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YACZ,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;gBAC5C,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,KAAK,EAAE;gBAC5B,MAAM,EAAE,EAAE;gBACV,IAAI,EAAE,IAAI,CAAC,OAAO,EAAI,yDAAyD;gBAC/E,WAAW,EAAE,IAAI,CAAC,OAAO;gBACzB,QAAQ,EAAE,CAAC;gBACX,oBAAoB,EAAE,KAAK;aAC5B,CAAC,CAAC,CAAC;YACJ,IAAI,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;YAC/B,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;gBACpF,MAAM,GAAG,SAAS,CAAC;YACrB,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,CAAC,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC;YACrC,CAAC;YACD,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC;QACzE,CAAC,CAAC,CAAC;IACL,CAAC;IACD,SAAS,EAAE,KAAK,EAAE,eAA+B,EAAE,EAAE;QACnD,GAAG,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;QAE3B,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC;QACpC,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QAEhC,IAAI,CAAC;YACH,MAAM,aAAa,GAAG,CAAC,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;YACpD,MAAM,MAAM,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC;YAC5B,MAAM,WAAW,GAAG,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACrD,MAAM,YAAY,GAAG,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;YAEvD,IAAI,KAAK,GAAG,IAAI,CAAC;YAEjB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,aAAa,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;gBAC1D,MAAM,YAAY,GAAG,aAAa,CAAC,KAAK,CAAgB,CAAC;gBACzD,MAAM,IAAI,GAAG,YAAY,CAAC,qBAAqB,EAAE,CAAC;gBAElD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,gBAAgB,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;gBACxD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC;gBAC1D,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC;gBAE5D,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;gBACnD,SAAS,CAAC,KAAK,GAAG,KAAK,CAAC;gBACxB,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC;gBAC1B,MAAM,GAAG,GAAG,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;gBACvC,IAAI,CAAC,GAAG;oBAAE,SAAS;gBAEnB,GAAG,CAAC,SAAS,GAAG,OAAO,CAAC;gBACxB,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;gBAClC,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC;gBACxC,IAAI,WAAW,EAAE,CAAC;oBAChB,MAAM,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC;oBACxB,GAAG,CAAC,GAAG,GAAG,WAAW,CAAC;oBACtB,MAAM,GAAG,CAAC,MAAM,EAAE,CAAC;oBACnB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,YAAY,EAAE,MAAM,GAAG,GAAG,CAAC,aAAa,CAAC,CAAC;oBAC3E,MAAM,EAAE,GAAG,GAAG,CAAC,YAAY,GAAG,GAAG,CAAC;oBAClC,MAAM,EAAE,GAAG,GAAG,CAAC,aAAa,GAAG,GAAG,CAAC;oBACnC,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;gBAClE,CAAC;gBACD,MAAM,YAAY,GAAG,YAAY,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;gBAC1D,IAAI,YAAY,IAAI,YAAY,CAAC,KAAK,IAAI,YAAY,CAAC,MAAM,EAAE,CAAC;oBAC9D,GAAG,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;gBACnD,CAAC;gBAED,MAAM,KAAK,GAAG,SAAS,CAAC,SAAS,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;gBAErD,IAAI,KAAK,EAAE,CAAC;oBACV,KAAK,GAAG,KAAK,CAAC;gBAChB,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,OAAO,EAAE,CAAC;gBAChB,CAAC;gBAED,GAAG,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;YAC/D,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,OAAO;QACT,CAAC;gBAAS,CAAC;YACT,GAAG,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;QAC9B,CAAC;QAED,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAChC,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC,CAAC;QAE1C,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAC,CAAC,CAAC;AAEJ,MAAM,aAAa,GAAG,CAAC,EAAE,UAAU,EAA2B,EAAE,EAAE;IAChE,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAClD,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACrC,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;IACtD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAE/C,MAAM,OAAO,GAAG,aAAa,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IAElE,MAAM,YAAY,GAAG,OAAO,CAC1B,GAAG,EAAE,CAAC,CAAC,OAAO,UAAU,KAAK,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,EAChE,CAAC,UAAU,EAAE,OAAO,CAAC,CACtB,CAAC;IAEF,MAAM,IAAI,GAAG,aAAa,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAClD,MAAM,KAAK,GAAG,aAAa,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACpD,MAAM,gBAAgB,GAAG,aAAa,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;IAC1E,MAAM,UAAU,GAAG,aAAa,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAC9D,MAAM,IAAI,GAAG,aAAa,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAClD,MAAM,IAAI,GAAG,aAAa,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAClD,MAAM,QAAQ,GAAG,aAAa,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC1D,MAAM,WAAW,GAAG,aAAa,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAChE,MAAM,YAAY,GAAG,aAAa,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAClE,MAAM,WAAW,GAAG,aAAa,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAChE,MAAM,MAAM,GAAG,aAAa,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC,CAAC;IAC9E,MAAM,IAAI,GAAG,aAAa,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,YAAY,CAAC,EAAE,IAAI,CAAC,CAAC;IAE1E,MAAM,cAAc,GAAG,MAAM,CAA0B,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IACnE,MAAM,SAAS,GAAG,MAAM,CAAoB,IAAI,CAAC,CAAC;IAClD,MAAM,gBAAgB,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IACtD,MAAM,YAAY,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAClD,MAAM,QAAQ,GAAG,MAAM,CAAwB,IAAI,CAAC,CAAC;IACrD,MAAM,YAAY,GAAG,MAAM,CAAqB,IAAI,CAAC,CAAC;IAEtD,MAAM,eAAe,GAAG,MAAM,CAAe,IAAI,CAAC,CAAC;IACnD,MAAM,cAAc,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IACpD,MAAM,WAAW,GAAG,MAAM,CAAe,IAAI,CAAC,CAAC;IAC/C,MAAM,aAAa,GAAG,MAAM,CAAe,IAAI,CAAC,CAAC;IACjD,MAAM,eAAe,GAAG,MAAM,CAAmB,IAAI,CAAC,CAAC;IACvD,MAAM,iBAAiB,GAAG,MAAM,CAAgB,IAAI,CAAC,CAAC;IACtD,MAAM,cAAc,GAAG,MAAM,CAAU,EAAE,CAAC,CAAC;IAC3C,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAClF,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAqB,IAAI,CAAC,CAAC;IAC7E,MAAM,YAAY,GAAG,MAAM,CAAQ,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACnD,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAU,KAAK,CAAC,CAAC;IAC7D,MAAM,gBAAgB,GAAG,MAAM,CAAqB,IAAI,CAAC,CAAC;IAC1D,MAAM,gBAAgB,GAAG,MAAM,CAAgB,IAAI,CAAC,CAAC;IACrD,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IACtE,MAAM,SAAS,GAAG,aAAa,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAE5D,SAAS,CAAC,GAAG,EAAE;QACb,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACvB,qBAAqB,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhB,MAAM,SAAS,GAAG,OAAO,CACvB,GAAG,EAAE,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,EAC7D,CAAC,KAAK,EAAE,gBAAgB,EAAE,IAAI,CAAC,CAChC,CAAC;IAEF,MAAM,SAAS,GAAG,OAAO,CACvB,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,EAA6B,CAAC,EAC/D,CAAC,UAAU,EAAE,IAAI,CAAC,CACnB,CAAC;IAEF,MAAM,oBAAoB,GAAG,OAAO,CAClC,GAAG,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,EAC3F,EAAE,CACH,CAAC;IAEF,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,KAAY,EAAE,EAAE,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;IAEvF,MAAM,aAAa,GAAG,WAAW,CAC/B,CAAC,IAAW,EAAE,GAAG,GAAG,IAAI,EAAE,EAAE;QAC1B,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC;QACjC,IAAI,CAAC,MAAM;YAAE,OAAO,EAAE,CAAC;QACvB,KAAK,IAAI,KAAK,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC;YACxD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5B,IACE,CAAC,KAAK,CAAC,OAAO;gBACd,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI;gBACzB,eAAe,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,EACpC,CAAC;gBACD,IAAI,GAAG,EAAE,CAAC;oBACR,qBAAqB,CAAC,KAAK,CAAC,CAAC;oBAC7B,gBAAgB,CAAC,KAAK,CAAC,CAAC;oBACxB,YAAY,CAAC,KAAK,CAAC,CAAC;gBACtB,CAAC;gBACD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;YAC1B,CAAC;QACH,CAAC;QACD,IAAI,GAAG,EAAE,CAAC;YACR,gBAAgB,CAAC,IAAI,CAAC,CAAC;YACvB,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC;QACD,OAAO,EAAE,CAAC;IACZ,CAAC,EACD,CAAC,MAAM,CAAC,CACT,CAAC;IAEF,0BAA0B;IAC1B,MAAM,WAAW,GAAG,WAAW,CAAC,CAAC,MAAyB,EAAE,KAA8B,EAAE,EAAE;QAC5F,MAAM,IAAI,GAAG,MAAM,CAAC,qBAAqB,EAAE,CAAC;QAC5C,MAAM,QAAQ,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAE3C,OAAO;YACL,QAAQ,EAAE;gBACR,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK;gBAC9D,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM;aAC/D;SACF,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,YAAY,GAAG,WAAW,CAC9B,CAAC,QAAe,EAAE,MAAyB,EAAE,EAAE;QAC7C,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QACnC,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,YAAY,CAAC,IAAI,CAAC,CAAC;QACnB,cAAc,CAAC,OAAO,GAAG,CAAC,QAAQ,CAAC,CAAC;QACpC,WAAW,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE;YAC/B,iBAAiB,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;YACvD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;YACtE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;QACxE,CAAC,CAAC,CAAC;QACH,WAAW,CAAC,OAAO,GAAG,QAAQ,CAAC;IACjC,CAAC,EACD,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC,CAC7B,CAAC;IAEF,MAAM,IAAI,GAAG,WAAW,CACtB,CAAC,QAAe,EAAE,MAAyB,EAAE,EAAE;QAC7C,MAAM,YAAY,GAAG,GAAG,EAAE;YACxB,IAAI,CAAC,SAAS;gBAAE,OAAO;YACvB,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;YACnC,IAAI,CAAC,OAAO;gBAAE,OAAO;YAErB,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACnB,WAAW,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE;gBAC/B,iBAAiB,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;gBACvD,IAAI,QAAQ,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;oBACpC,OAAO,CAAC,MAAM,CACZ,WAAW,CAAC,OAAO,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,EACpC,WAAW,CAAC,OAAO,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CACtC,CAAC;oBACF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;gBACxE,CAAC;YACH,CAAC,CAAC,CAAC;YACH,WAAW,CAAC,OAAO,GAAG,QAAQ,CAAC;QACjC,CAAC,CAAC;QACF,IAAI,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,eAAe,KAAK,QAAQ,EAAE,CAAC;YAC7D,YAAY,EAAE,CAAC;QACjB,CAAC;aAAM,CAAC;YACN,iBAAiB,CAAC,OAAO,GAAG,qBAAqB,CAAC,YAAY,CAAC,CAAC;QAClE,CAAC;IACH,CAAC,EACD,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC,CAClD,CAAC;IAEF,MAAM,WAAW,GAAG,WAAW,CAC7B,CAAC,QAAe,EAAE,MAAyB,EAAE,EAAE;QAC7C,IAAI,CAAC,SAAS;YAAE,OAAO;QAEvB,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,cAAc,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7D,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACtC,MAAM,OAAO,GAAgB;gBAC3B,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;gBACzB,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,cAAc,CAAC,OAAO;gBAC9B,KAAK,EAAE,SAAS;gBAChB,SAAS,EAAE,SAAS,GAAG,MAAM,CAAC,KAAK;gBACnC,OAAO,EAAE,KAAK;aACf,CAAC;YACF,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC7B,CAAC;QAED,IAAI,iBAAiB,CAAC,OAAO,EAAE,CAAC;YAC9B,oBAAoB,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;YAChD,iBAAiB,CAAC,OAAO,GAAG,IAAI,CAAC;QACnC,CAAC;QAED,YAAY,CAAC,KAAK,CAAC,CAAC;QACpB,cAAc,CAAC,OAAO,GAAG,EAAE,CAAC;QAC5B,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC;QAC3B,aAAa,CAAC,OAAO,GAAG,IAAI,CAAC;QAC7B,eAAe,CAAC,OAAO,GAAG,IAAI,CAAC;IACjC,CAAC,EACD,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,CAAC,CAC3D,CAAC;IAEF,oCAAoC;IACpC,MAAM,eAAe,GAAG,WAAW,CAAC,CAAC,MAAqB,EAAE,EAAE;QAC5D,MAAM,cAAc,GAAG,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAErD,IAAI,CAAC,cAAc,IAAI,CAAC,SAAS,CAAC,OAAO;YAAE,OAAO;QAElD,sBAAsB;QACtB,cAAc,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAElF,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YAC9B,IAAI,KAAK,KAAK,YAAY;gBAAE,OAAO;YACnC,MAAM,OAAO,GAAG,cAAc,CAAC;YAE/B,WAAW,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,EAAE;gBAC/B,iBAAiB,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC5F,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;oBAC5C,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,IAAI,wBAAwB,EAAE,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;gBAC3G,CAAC;qBAAM,CAAC;oBACN,kBAAkB,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBACxD,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,aAAa,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;YAC3C,MAAM,OAAO,GAAG,cAAc,CAAC;YAC/B,MAAM,WAAW,GAAG,oBAAoB,CAAC,aAAa,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;YAE3E,MAAM,OAAO,GAAG,CAAC,CAAC;YAClB,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC;YAClE,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC;YAClE,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC;YACnE,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC;YAEnE,OAAO,CAAC,IAAI,EAAE,CAAC;YACf,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YAC5B,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;YAChC,OAAO,CAAC,SAAS,GAAG,CAAC,CAAC;YACtB,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC,CAAC;YAEzD,eAAe;YACf,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;YACxB,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC;YAC5B,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;YAChC,MAAM,UAAU,GAAG,CAAC,CAAC;YAErB,MAAM,OAAO,GAAG;gBACd,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE;gBACpB,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE;gBACpB,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE;gBACpB,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE;aACrB,CAAC;YAEF,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;gBACvB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,UAAU,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,UAAU,GAAG,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;gBAC/F,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,UAAU,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,UAAU,GAAG,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;YACnG,CAAC,CAAC,CAAC;YAEH,OAAO,CAAC,OAAO,EAAE,CAAC;QACpB,CAAC;IACH,CAAC,EAAE,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC,CAAC;IAElC,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE;QAClC,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC;QACjC,MAAM,WAAW,GAAG,cAAc,CAAC,OAAO,CAAC;QAC3C,IAAI,CAAC,MAAM,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;YAC5C,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;gBACzB,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;YAC9C,CAAC;YACD,IAAI,cAAc,CAAC,OAAO,EAAE,CAAC;gBAC3B,cAAc,CAAC,OAAO,CAAC,WAAW,GAAG,EAAE,CAAC;YAC1C,CAAC;YACD,eAAe,CAAC,IAAI,CAAC,CAAC;YACtB,OAAO,CAAC,EAAE,CAAC,CAAC;YACZ,OAAO;QACT,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,CAAC,qBAAqB,EAAE,CAAC;QAC5C,MAAM,YAAY,GAAG,WAAW,CAAC,qBAAqB,EAAE,CAAC;QACzD,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QAE/B,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,QAAQ,GAAG;gBACf,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,KAAK;gBACjD,CAAC,EAAE,CAAC,YAAY,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM;aACjD,CAAC;YAEF,MAAM,IAAI,GAAG,eAAe,QAAQ,MAAM,UAAU,EAAE,CAAC;YAEvD,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;gBAC1B,MAAM,QAAQ,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;gBACtC,MAAM,YAAY,GAAgB;oBAChC,GAAG,QAAQ;oBACX,IAAI,EAAE,IAAI;oBACV,IAAI,EAAE,IAAI;oBACV,KAAK,EAAE,SAAS;oBAChB,MAAM,EAAE,CAAC,QAAQ,CAAC;iBACnB,CAAC;gBACF,WAAW,CAAC,YAAY,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;gBACjD,YAAY,CAAC,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;gBAC5D,eAAe,CAAC,IAAI,CAAC,CAAC;YACxB,CAAC;iBAAM,CAAC;gBACN,MAAM,YAAY,GAAgB;oBAChC,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;oBACzB,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,MAAM,EAAE,CAAC,QAAQ,CAAC;oBAClB,KAAK,EAAE,SAAS;oBAChB,SAAS,EAAE,CAAC,GAAG,MAAM,CAAC,KAAK;oBAC3B,OAAO,EAAE,KAAK;oBACd,IAAI,EAAE,IAAI;oBACV,IAAI,EAAE,IAAI;iBACX,CAAC;gBACF,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;gBAChC,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;YACtD,CAAC;QACH,CAAC;QACD,kDAAkD;QAClD,OAAO,CAAC,EAAE,CAAC,CAAC;QACZ,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;YACzB,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;QAC9C,CAAC;QACD,IAAI,cAAc,CAAC,OAAO,EAAE,CAAC;YAC3B,cAAc,CAAC,OAAO,CAAC,WAAW,GAAG,EAAE,CAAC;QAC1C,CAAC;IACH,CAAC,EAAE,CAAC,YAAY,EAAE,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC;IAEhH,MAAM,eAAe,GAAG,WAAW,CACjC,CAAC,KAA8B,EAAE,EAAE;QACjC,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC;QACjC,IAAI,CAAC,MAAM;YAAE,OAAO;QACpB,MAAM,EAAE,QAAQ,EAAE,GAAG,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAEhD,IAAI,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;YACnD,UAAU,EAAE,CAAC;YACb,IAAI,IAAI,KAAK,KAAK,CAAC,MAAM;gBAAE,OAAO;QACpC,CAAC;QAED,IAAI,IAAI,KAAK,KAAK,CAAC,MAAM,EAAE,CAAC;YAC1B,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;YAEjD,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,MAAM,GAAG,oBAAoB,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;gBAC7D,IAAI,MAAM,EAAE,CAAC;gBACb,CAAC;qBAAM,CAAC;oBACN,gBAAgB,CAAC,OAAO,GAAG,KAAK,CAAC;oBACjC,gBAAgB,CAAC,OAAO,GAAG,KAAK,CAAC;oBACjC,YAAY,CAAC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAgB,CAAC;oBACxE,aAAa,CAAC,IAAI,CAAC,CAAC;oBACpB,YAAY,CAAC,OAAO,GAAG,QAAQ,CAAC;gBAClC,CAAC;YACH,CAAC;YACD,OAAO;QACT,CAAC;QAED,IAAI,IAAI,KAAK,KAAK,CAAC,IAAI,EAAE,CAAC;YACxB,eAAe,CAAC,OAAO,GAAG,QAAQ,CAAC;YACnC,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,WAAW,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YAC3D,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,WAAW,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;YACpE,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,IAAI,CAAC,CAAC;YAClF,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,WAAW,CAAC,KAAK,EAAE,GAAG,QAAQ,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC;YAClF,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,WAAW,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;YAC5D,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,WAAW,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;YACnE,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,WAAW,CAAC,WAAW,EAAE,GAAG,QAAQ,IAAI,CAAC,CAAC;YACtE,kEAAkE;YAClE,mEAAmE;YACnE,UAAU,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;YACrD,mEAAmE;YACnE,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,WAAW,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAC;YAC5E,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,WAAW,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;YAC9D,OAAO;QACT,CAAC;QAED,IAAI,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACjC,CAAC;IACH,CAAC,EACD,CAAC,gBAAgB,EAAE,gBAAgB,EAAE,YAAY,EAAE,UAAU,EAAE,QAAQ,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,CAAC,CAC9K,CAAC;IAEF,MAAM,eAAe,GAAG,WAAW,CACjC,CAAC,KAA8B,EAAE,EAAE;QACjC,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC;QACjC,IAAI,CAAC,MAAM;YAAE,OAAO;QAEpB,MAAM,EAAE,QAAQ,EAAE,GAAG,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAChD,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;YACrB,IAAI,IAAI,KAAK,KAAK,CAAC,MAAM,EAAE,CAAC;gBAC1B,IAAI,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC3C,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;oBAC1C,GAAG,CAAC,SAAS,GAAG,uCAAuC,CAAC;oBACxD,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM,IAAI,CAAC;oBAC5C,GAAG,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,UAAU,CAAC,MAAM,IAAI,CAAC;oBAC3C,QAAQ,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;oBACtC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,GAAG,uBAAuB,CAAC;gBAC7D,CAAC;gBACD,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,QAAQ,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,IAAI,CAAC,CAAC,IAAI,CAAC;gBAClF,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,QAAQ,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC,CAAC,IAAI,CAAC;YACpF,CAAC;iBAAM,CAAC;gBACN,QAAQ,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;YACrC,CAAC;QACH,CAAC;QAED,IAAI,UAAU,IAAI,gBAAgB,CAAC,OAAO,IAAI,gBAAgB,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;YAChF,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;YAC/C,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;YAE/C,MAAM,YAAY,GAAG;gBACnB,GAAG,gBAAgB,CAAC,OAAO;gBAC3B,MAAM,EAAE,gBAAgB,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBAClD,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE;oBACX,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE;iBACZ,CAAC,CAAC;aACJ,CAAC;YAEF,gBAAgB,CAAC,OAAO,GAAG,YAAY,CAAC;YACxC,WAAW,CAAC,gBAAgB,CAAC,OAAO,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;YAC7D,gBAAgB,CAAC,YAAY,CAAC,CAAC;YAC/B,YAAY,CAAC,OAAO,GAAG,QAAQ,CAAC;YAChC,OAAO;QACT,CAAC;QAED,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACzB,CAAC,EACD,CAAC,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,CAAC,MAAM,EAAE,gBAAgB,EAAE,IAAI,EAAE,WAAW,CAAC,CACjG,CAAC;IAEF,MAAM,aAAa,GAAG,WAAW,CAC/B,CAAC,KAA8B,EAAE,EAAE;QACjC,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC;QACjC,IAAI,CAAC,MAAM;YAAE,OAAO;QAEpB,MAAM,EAAE,QAAQ,EAAE,GAAG,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAEhD,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,IAAI,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5F,QAAQ,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;QACrC,CAAC;QAED,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,gBAAgB,CAAC,OAAO,KAAK,IAAI,IAAI,gBAAgB,CAAC,OAAO,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;gBAC1F,IAAI,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;oBACpG,YAAY,CAAC,gBAAgB,CAAC,OAAO,EAAE,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;gBAClG,CAAC;YACH,CAAC;YACD,aAAa,CAAC,KAAK,CAAC,CAAC;YACrB,gBAAgB,CAAC,OAAO,GAAG,IAAI,CAAC;YAChC,gBAAgB,CAAC,OAAO,GAAG,IAAI,CAAC;YAChC,YAAY,CAAC,OAAO,GAAG,IAAI,CAAC;YAC5B,OAAO;QACT,CAAC;QAED,WAAW,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAChC,CAAC,EACD,CAAC,WAAW,EAAE,UAAU,EAAE,WAAW,CAAC,CACvC,CAAC;IAEF,MAAM,iBAAiB,GAAG,WAAW,CAAC,CAAC,KAA8B,EAAE,EAAE;QACvE,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC;QACjC,IAAI,CAAC,MAAM;YAAE,OAAO;QACpB,MAAM,EAAE,QAAQ,EAAE,GAAG,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAEhD,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;QACjD,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YACpE,eAAe,CAAC,KAAK,CAAC,CAAC;YACvB,OAAO,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;YAC1B,aAAa,CAAC,KAAK,CAAC,CAAC;YACrB,gBAAgB,CAAC,OAAO,GAAG,IAAI,CAAC;YAChC,gBAAgB,CAAC,OAAO,GAAG,IAAI,CAAC;YAEhC,MAAM,SAAS,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAChD,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;YACvD,IAAI,QAAQ,EAAE,CAAC;gBACb,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;YAC1C,CAAC;YACD,MAAM,UAAU,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACnD,IAAI,UAAU,EAAE,CAAC;gBACf,aAAa,CAAC,UAAU,CAAC,CAAC;YAC5B,CAAC;YAED,eAAe,CAAC,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAC1C,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;gBACzB,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;gBAC5C,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,aAAa,GAAG,QAAQ,CAAC;gBACpD,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,IAAI,CAAC;gBAC1E,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,IAAI,CAAC;gBAC1E,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;gBAC/C,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,UAAU,IAAI,OAAO,CAAC;gBAC9D,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,GAAG,QAAQ,IAAI,MAAM,CAAC;YAC3D,CAAC;YAED,IAAI,cAAc,CAAC,OAAO,EAAE,CAAC;gBAC3B,cAAc,CAAC,OAAO,CAAC,WAAW,GAAG,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;gBACtD,UAAU,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;YACvD,CAAC;QACH,CAAC;IACH,CAAC,EAAE,CAAC,WAAW,EAAE,aAAa,EAAE,eAAe,EAAE,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,aAAa,EAAE,gBAAgB,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAEtJ,MAAM,qBAAqB,GAAG,WAAW,CAAC,GAAG,EAAE;QAC7C,IAAI,aAAa,IAAI,kBAAkB,KAAK,IAAI,EAAE,CAAC;YACjD,MAAM,KAAK,GAAG,aAAa,CAAC;YAC5B,MAAM,KAAK,GAAG,kBAAkB,CAAC;YACjC,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC;YACjC,IAAI,CAAC,MAAM;gBAAE,OAAO;YAEpB,eAAe,CAAC,KAAK,CAAC,CAAC;YACvB,OAAO,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;YAC1B,aAAa,CAAC,KAAK,CAAC,CAAC;YACrB,gBAAgB,CAAC,OAAO,GAAG,IAAI,CAAC;YAChC,gBAAgB,CAAC,OAAO,GAAG,IAAI,CAAC;YAEhC,MAAM,SAAS,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAChD,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;YACvD,IAAI,QAAQ,EAAE,CAAC;gBACb,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;YAC1C,CAAC;YACD,MAAM,UAAU,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACnD,IAAI,UAAU,EAAE,CAAC;gBACf,aAAa,CAAC,UAAU,CAAC,CAAC;YAC5B,CAAC;YAED,eAAe,CAAC,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAC1C,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;gBACzB,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;gBAC5C,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,aAAa,GAAG,QAAQ,CAAC;gBACpD,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,IAAI,CAAC;gBAC1E,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,IAAI,CAAC;gBAC1E,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;gBAC/C,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,UAAU,IAAI,OAAO,CAAC;gBAC9D,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,GAAG,QAAQ,IAAI,MAAM,CAAC;YAC3D,CAAC;YAED,IAAI,cAAc,CAAC,OAAO,EAAE,CAAC;gBAC3B,cAAc,CAAC,OAAO,CAAC,WAAW,GAAG,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;gBACtD,UAAU,CAAC,GAAG,EAAE,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;YACvD,CAAC;QACH,CAAC;IACH,CAAC,EAAE,CAAC,aAAa,EAAE,kBAAkB,EAAE,eAAe,EAAE,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,CAAC,CAAC,CAAC;IAE7G,MAAM,aAAa,GAAG,WAAW,CAC/B,CAAC,CAAgB,EAAE,EAAE;QACnB,MAAM,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC;QAE7C,IACE,aAAa,EAAE,OAAO,CAAC,mBAAmB,CAAC;YAC3C,aAAa,YAAY,gBAAgB;YACzC,aAAa,YAAY,mBAAmB;YAE5C,OAAO;QAET,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;YAClD,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,CAAC,CAAC,eAAe,EAAE,CAAC;YACpB,IAAI,CAAC,CAAC,QAAQ;gBAAE,IAAI,EAAE,CAAC;;gBAClB,IAAI,EAAE,CAAC;QACd,CAAC;QACD,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;YAClD,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,CAAC,CAAC,eAAe,EAAE,CAAC;YACpB,IAAI,EAAE,CAAC;QACT,CAAC;QAED,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,QAAQ,IAAI,CAAC,CAAC,GAAG,KAAK,WAAW,CAAC,IAAI,kBAAkB,KAAK,IAAI,EAAE,CAAC;YACjF,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,WAAW,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;YACzC,gBAAgB,CAAC,IAAI,CAAC,CAAC;YACvB,qBAAqB,CAAC,IAAI,CAAC,CAAC;YAC5B,gBAAgB,CAAC,OAAO,GAAG,IAAI,CAAC;YAChC,gBAAgB,CAAC,OAAO,GAAG,IAAI,CAAC;QAClC,CAAC;IACH,CAAC,EACD,CAAC,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,IAAI,EAAE,WAAW,EAAE,kBAAkB,EAAE,IAAI,CAAC,CAC3F,CAAC;IAEF,MAAM,cAAc,GAAG,WAAW,CAAC,CAAC,KAAa,EAAE,MAAc,EAAE,EAAE;QACnE,MAAM,MAAM,GAAG,SAAS,EAAE,OAAO,CAAC;QAElC,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;YACrB,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;YACvB,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;YAEnC,IAAI,OAAO,EAAE,CAAC;gBACZ,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC;gBAC1B,OAAO,CAAC,QAAQ,GAAG,OAAO,CAAC;gBAC3B,OAAO,CAAC,wBAAwB,GAAG,aAAa,CAAC;YACnD,CAAC;QACH,CAAC;IACH,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,EAAE;QACnC,MAAM,aAAa,GAAG,gBAAgB,CAAC,OAAO,CAAC;QAE/C,MAAM,KAAK,GAAG,QAAQ,CAAC,cAAc,CAAC,2BAA2B,YAAY,EAAE,CAAC,EAAE,WAAW,IAAI,MAAM,CAAC,UAAU,CAAC;QACnH,MAAM,MAAM,GAAG,QAAQ,CAAC,cAAc,CAAC,2BAA2B,YAAY,EAAE,CAAC,EAAE,YAAY,IAAI,MAAM,CAAC,WAAW,CAAC;QAEtH,IAAI,aAAa,EAAE,CAAC;YAClB,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YAE9B,eAAe,CAAC,MAAM,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC,EAAE,CAAC,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC;IAI5D,MAAM,wBAAwB,GAAG,CAAC,CAAmB,EAAE,EAAE;QACvD,CAAC,CAAC,cAAc,EAAE,CAAC;QACnB,MAAM,MAAM,GAAG,CAAC,CAAC,OAAO,CAAC;QACzB,MAAM,MAAM,GAAG,CAAC,CAAC,OAAO,CAAC;QACzB,MAAM,WAAW,GAAG,QAAQ,CAAC,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC;QACtE,MAAM,UAAU,GAAG,QAAQ,CAAC,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC;QAEpE,MAAM,WAAW,GAAG,CAAC,SAAqB,EAAE,EAAE;YAC5C,MAAM,EAAE,GAAG,SAAS,CAAC,OAAO,GAAG,MAAM,CAAC;YACtC,MAAM,EAAE,GAAG,SAAS,CAAC,OAAO,GAAG,MAAM,CAAC;YACtC,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;gBACzB,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,WAAW,GAAG,EAAE,IAAI,CAAC;gBAC1D,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,UAAU,GAAG,EAAE,IAAI,CAAC;YAC1D,CAAC;QACH,CAAC,CAAC;QAEF,MAAM,SAAS,GAAG,GAAG,EAAE;YACrB,MAAM,CAAC,mBAAmB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;YACrD,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACnD,CAAC,CAAC;QAEF,MAAM,CAAC,gBAAgB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QAClD,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAChD,CAAC,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,eAAe,CAAC,MAAM,CAAC,CAAC;IAC1B,CAAC,EAAE,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC;IAE9B,SAAS,CAAC,GAAG,EAAE;QACb,YAAY,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEX,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;QAClD,OAAO,GAAG,EAAE;YACV,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;QACvD,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;IAEpB,SAAS,CAAC,GAAG,EAAE;QACb,cAAc,CAAC,OAAO,GAAG,WAAW,CAAC;IACvC,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,SAAS,CAAC,GAAG,EAAE;QACb,WAAW,EAAE,CAAC;IAChB,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,SAAS,CAAC,GAAG,EAAE;QACb,oBAAoB,EAAE,CAAC;QACvB,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAC;QACxD,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAC;IAC1E,CAAC,EAAE,CAAC,oBAAoB,CAAC,CAAC,CAAC;IAE3B,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC;QACjC,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,CAAC,gBAAgB,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;YACtD,MAAM,CAAC,gBAAgB,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;YACvD,MAAM,CAAC,gBAAgB,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;YACtD,MAAM,CAAC,gBAAgB,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;YACtD,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;YAClD,MAAM,CAAC,gBAAgB,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;YACrD,MAAM,CAAC,gBAAgB,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;YACnD,MAAM,CAAC,gBAAgB,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;YACtD,MAAM,CAAC,gBAAgB,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC;YAEvD,OAAO,GAAG,EAAE;gBACV,MAAM,CAAC,mBAAmB,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;gBACzD,MAAM,CAAC,mBAAmB,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;gBAC1D,MAAM,CAAC,mBAAmB,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;gBACzD,MAAM,CAAC,mBAAmB,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;gBACzD,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;gBACrD,MAAM,CAAC,mBAAmB,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;gBACxD,MAAM,CAAC,mBAAmB,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;gBACtD,MAAM,CAAC,mBAAmB,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;gBACzD,MAAM,CAAC,mBAAmB,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC;YAC5D,CAAC,CAAC;QACJ,CAAC;IACH,CAAC,EAAE,CAAC,eAAe,EAAE,eAAe,EAAE,aAAa,EAAE,iBAAiB,CAAC,CAAC,CAAC;IAEzE,OAAO,CACL,eAAK,SAAS,EAAC,0BAA0B,EAAC,EAAE,EAAE,2BAA2B,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,OAAO,EAAE,aAC5J,cACE,GAAG,EAAE,gBAAgB,EACrB,SAAS,EAAC,iCAAiC,EAC3C,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,OAAO,IAAI,GAAG,EAAE,cAAc,EAAE,SAAS,EAAE,kBAAkB,EAAE,QAAQ,EAAE,gBAAgB,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,GAC9I,EACF,iBAAQ,GAAG,EAAE,SAAS,EAAE,SAAS,EAAC,yDAAyD,GAAG,EAC9F,eAAK,GAAG,EAAE,YAAY,EAAE,SAAS,EAAC,qBAAqB,EAAC,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,aAChF,eAAK,SAAS,EAAC,qGAAqG,aAClH,cAAK,SAAS,EAAC,yDAAyD,EAAC,WAAW,EAAE,wBAAwB,YAC5G,eAAK,KAAK,EAAC,4BAA4B,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,IAAI,EAAC,MAAM,EAAC,MAAM,EAAC,cAAc,EAAC,WAAW,EAAC,GAAG,EAAC,aAAa,EAAC,OAAO,EAAC,cAAc,EAAC,OAAO,aAAC,iBAAQ,EAAE,EAAC,GAAG,EAAC,EAAE,EAAC,IAAI,EAAC,CAAC,EAAC,GAAG,GAAU,EAAA,iBAAQ,EAAE,EAAC,GAAG,EAAC,EAAE,EAAC,GAAG,EAAC,CAAC,EAAC,GAAG,GAAU,EAAA,iBAAQ,EAAE,EAAC,GAAG,EAAC,EAAE,EAAC,IAAI,EAAC,CAAC,EAAC,GAAG,GAAU,EAAA,iBAAQ,EAAE,EAAC,IAAI,EAAC,EAAE,EAAC,IAAI,EAAC,CAAC,EAAC,GAAG,GAAU,EAAA,iBAAQ,EAAE,EAAC,IAAI,EAAC,EAAE,EAAC,GAAG,EAAC,CAAC,EAAC,GAAG,GAAU,EAAA,iBAAQ,EAAE,EAAC,IAAI,EAAC,EAAE,EAAC,IAAI,EAAC,CAAC,EAAC,GAAG,GAAU,IAAM,GACzZ,EACN,kBACE,KAAK,EAAE,UAAU,EACjB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;oCACd,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oCAC9B,IAAI,YAAY,CAAC,OAAO;wCAAE,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gCACnF,CAAC,EACD,SAAS,EAAC,oDAAoD,aAE9D,iBAAQ,KAAK,EAAC,OAAO,sBAAe,EACpC,iBAAQ,KAAK,EAAC,iBAAiB,sBAAe,EAC9C,iBAAQ,KAAK,EAAC,aAAa,wBAAiB,EAC5C,iBAAQ,KAAK,EAAC,SAAS,wBAAiB,IACjC,EACT,iBACE,KAAK,EAAE,QAAQ,EACf,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;oCACd,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oCAC5B,IAAI,YAAY,CAAC,OAAO;wCAAE,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC;gCACxF,CAAC,EACD,SAAS,EAAC,oDAAoD,YAE7D,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAC5C,kBAAmB,KAAK,EAAE,IAAI,aAAG,IAAI,WAAxB,IAAI,CAAgC,CAClD,CAAC,GACK,EACT,iBAAQ,SAAS,EAAC,2GAA2G,EAAC,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE;oCAC7L,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,EAAE,CAAC;wCACtB,UAAU,EAAE,CAAC;oCACf,CAAC;gCACH,CAAC,YACC,cAAK,KAAK,EAAC,4BAA4B,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,IAAI,EAAC,MAAM,EAAC,MAAM,EAAC,cAAc,EAAC,WAAW,EAAC,GAAG,EAAC,aAAa,EAAC,OAAO,EAAC,cAAc,EAAC,OAAO,YAAC,mBAAU,MAAM,EAAC,gBAAgB,GAAY,GAAM,GAC9N,IACL,EACN,cACE,GAAG,EAAE,cAAc,EACnB,eAAe,QACf,8BAA8B,QAC9B,SAAS,EAAC,6IAA6I,EACvJ,aAAa,EAAE,CAAC,CAAC,EAAE,EAAE;4BACnB,MAAM,WAAW,GAAG,cAAc,CAAC,OAAO,EAAE,SAAS,IAAI,EAAE,CAAC;4BAC5D,MAAM,WAAW,GAAG,CAAC,CAAC,WAAyB,CAAC;4BAChD,MAAM,YAAY,GAAG,WAAW,CAAC,IAAI,IAAI,EAAE,CAAC;4BAC5C,IAAI,WAAW,CAAC,MAAM,GAAG,YAAY,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;gCACnD,CAAC,CAAC,cAAc,EAAE,CAAC;4BACrB,CAAC;wBACH,CAAC,EACD,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;4BACb,CAAC,CAAC,cAAc,EAAE,CAAC;4BACnB,MAAM,UAAU,GAAG,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;4BACzD,MAAM,WAAW,GAAG,cAAc,CAAC,OAAO,EAAE,SAAS,IAAI,EAAE,CAAC;4BAC5D,MAAM,SAAS,GAAG,GAAG,GAAG,WAAW,CAAC,MAAM,CAAC;4BAC3C,IAAI,SAAS,IAAI,CAAC;gCAAE,OAAO;4BAC3B,MAAM,YAAY,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;4BACpD,QAAQ,CAAC,WAAW,CAAC,YAAY,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;wBAC1D,CAAC,EACD,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,SAAS,IAAI,EAAE,CAAC,GACxD,EACF,eAAK,SAAS,EAAC,qBAAqB,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EAAE,aAC9F,IAAI,CAAC,MAAM,YACR,IACF,EACN,cAAK,GAAG,EAAE,QAAQ,EAAE,SAAS,EAAC,mCAAmC,GAAG,EACnE,aAAa,IAAI,YAAY,KAAK,IAAI,IAAI,CACzC,kBACE,SAAS,EAAC,sJAAsJ,EAChK,KAAK,EAAE;oBACL,IAAI,EAAE,GAAG,oBAAoB,CAAC,aAAa,EAAE,SAAS,CAAC,OAAQ,CAAC,CAAC,IAAI,GAAG,SAAS,CAAC,OAAQ,CAAC,KAAK,IAAI;oBACpG,GAAG,EAAE,GAAG,oBAAoB,CAAC,aAAa,EAAE,SAAS,CAAC,OAAQ,CAAC,CAAC,IAAI,GAAG,SAAS,CAAC,OAAQ,CAAC,MAAM,GAAG,EAAE,IAAI;oBACzG,SAAS,EAAE,yBAAyB;iBACrC,EACD,EAAE,EAAC,WAAW,EACd,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;oBACb,CAAC,CAAC,eAAe,EAAE,CAAC;oBACpB,qBAAqB,EAAE,CAAC;gBAC1B,CAAC,aAED,eAAK,KAAK,EAAC,4BAA4B,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,IAAI,EAAC,MAAM,EAAC,MAAM,EAAC,cAAc,EAAC,WAAW,EAAC,KAAK,EAAC,aAAa,EAAC,OAAO,EAAC,cAAc,EAAC,OAAO,aAAC,eAAM,CAAC,EAAC,4DAA4D,GAAQ,EAAA,eAAM,CAAC,EAAC,yDAAyD,GAAQ,IAAM,YAExU,CACV,IACG,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC;AAElC,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,IAAe,EAAE,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AACnF,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACpF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,gBAAwB,EAAE,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;AAChI,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,SAAiB,EAAE,IAAsC,EAAE,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;AAClJ,MAAM,CAAC,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;AAC1D,MAAM,CAAC,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC;AAC1D,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;AAC5F,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC;AAClE,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;AAC9F,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,iBAAyB,EAAE,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,CAAC;AACpI,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,GAAkB,EAAE,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;AACzF,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,SAAyB,EAAE,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;AACtG,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;AACzE,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,iBAAiB,CAAC;AAC7E,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,SAA6B,EAC7B,UAAmB,EACnB,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,WAAW,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;AACjE,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,UAAmB,EAAE,EAAE,CACrD,aAAa,CAAC,QAAQ,EAAE,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;AACvD,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,UAAmB,EAAE,EAAE,CACzD,aAAa,CAAC,QAAQ,EAAE,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;AAC3D,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,UAAmB,EAAE,EAAE,CAC5D,aAAa,CAAC,QAAQ,EAAE,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;AAC3D,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,UAAmB,EAAE,EAAE;IACtD,MAAM,KAAK,GAAG,aAAa,CAAC,QAAQ,EAAE,CAAC;IACvC,MAAM,KAAK,GAAG,OAAO,UAAU,KAAK,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC;IACvF,OAAO,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,QAAQ,IAAI,CAAC,CAAC;AAC5C,CAAC,CAAC;AAIF,MAAM,WAAW,GAAG,CAAC,EAAE,SAAS,EAAE,KAAK,EAAuD,EAAE,EAAE;IAChG,MAAM,MAAM,GAAG,aAAa,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACtD,MAAM,IAAI,GAAG,aAAa,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAClD,MAAM,WAAW,GAAG,aAAa,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;IAE/D,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,OAAO,CACL,4BACE,cACE,SAAS,EAAE,GAAG,aAAa,CAAC,IAAkC,CAAC,IAAI,SAAS,IAAI,EAAE,EAAE,EACpF,KAAK,EAAE,KAAK,EACZ,EAAE,EAAC,yBAAyB,YAE3B,WAAW,CAAC,CAAC,CAAC,CACb,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,KAAC,KAAK,IAAgB,UAAU,EAAE,KAAK,IAA3B,KAAK,CAAC,EAAE,CAAuB,CAAC,CAC1E,CAAC,CAAC,CAAC,CACF,KAAC,KAAK,KAAG,CACV,GACG,GACL,CACJ,CAAC;IACJ,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,eAAe,WAAW,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"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"}
|
package/dist/interface.d.ts
CHANGED
|
@@ -6,8 +6,38 @@ export interface BoardItem {
|
|
|
6
6
|
page: any;
|
|
7
7
|
initialPage?: any;
|
|
8
8
|
rotation?: number;
|
|
9
|
+
zoom?: number;
|
|
9
10
|
setCurrentBoardIndex?: number;
|
|
10
11
|
}
|
|
12
|
+
export type ZoomAction = 'in' | 'out' | 'reset';
|
|
13
|
+
export interface ZoomCallbacks {
|
|
14
|
+
zoomIn: (step?: number, boardIndex?: number) => number;
|
|
15
|
+
zoomOut: (step?: number, boardIndex?: number) => number;
|
|
16
|
+
setZoom: (zoom: number, boardIndex?: number) => number;
|
|
17
|
+
resetZoom: (boardIndex?: number) => number;
|
|
18
|
+
getZoom: (boardIndex?: number) => number;
|
|
19
|
+
getBoardZoom: (boardIndex?: number) => number;
|
|
20
|
+
}
|
|
21
|
+
export interface CrystalDrawProps {
|
|
22
|
+
className?: string;
|
|
23
|
+
style?: React.CSSProperties;
|
|
24
|
+
onZoomChange?: (zoom: number, boardIndex: number) => void;
|
|
25
|
+
getZoomCallbacks?: (callbacks: ZoomCallbacks) => void;
|
|
26
|
+
}
|
|
27
|
+
export interface CrystalDrawRef extends ZoomCallbacks {
|
|
28
|
+
rotateClockwise: (boardIndex?: number) => Promise<void>;
|
|
29
|
+
rotateAntiClockwise: (boardIndex?: number) => Promise<void>;
|
|
30
|
+
rotateBoard: (direction?: RotationDirection, boardIndex?: number) => Promise<void>;
|
|
31
|
+
getBoardRotation: (boardIndex?: number) => number;
|
|
32
|
+
undo: VoidFunction;
|
|
33
|
+
redo: VoidFunction;
|
|
34
|
+
clearBoard: (boardId: number) => void;
|
|
35
|
+
addBoard: () => void;
|
|
36
|
+
removeBoard: (boardId: number) => void;
|
|
37
|
+
setTool: (tool: ToolTypes) => void;
|
|
38
|
+
setColor: (color: string) => void;
|
|
39
|
+
setCurrentBoardIndex: (currentBoardIndex: number) => void;
|
|
40
|
+
}
|
|
11
41
|
export interface internalState {
|
|
12
42
|
tool: ToolTypes;
|
|
13
43
|
color: string;
|
|
@@ -28,6 +58,12 @@ export interface internalState {
|
|
|
28
58
|
rotateBoard: (direction?: RotationDirection, boardIndex?: number) => Promise<void>;
|
|
29
59
|
rotateClockwise: (boardIndex?: number) => Promise<void>;
|
|
30
60
|
rotateAntiClockwise: (boardIndex?: number) => Promise<void>;
|
|
61
|
+
zoomIn: (step?: number, boardIndex?: number) => number;
|
|
62
|
+
zoomOut: (step?: number, boardIndex?: number) => number;
|
|
63
|
+
setZoom: (zoom: number, boardIndex?: number) => number;
|
|
64
|
+
resetZoom: (boardIndex?: number) => number;
|
|
65
|
+
getZoom: (boardIndex?: number) => number;
|
|
66
|
+
getBoardZoom: (boardIndex?: number) => number;
|
|
31
67
|
setTool: (tool: ToolTypes) => void;
|
|
32
68
|
setColor: (color: string) => void;
|
|
33
69
|
setCurrentBoardIndex: (currentBoardIndex: number) => void;
|