@hunterchen/canvas 0.6.0 → 0.8.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/README.md +239 -9
- package/dist/components/canvas/backgrounds.d.ts +4 -4
- package/dist/components/canvas/backgrounds.d.ts.map +1 -1
- package/dist/components/canvas/backgrounds.js +7 -7
- package/dist/components/canvas/backgrounds.js.map +1 -1
- package/dist/components/canvas/canvas.d.ts +5 -1
- package/dist/components/canvas/canvas.d.ts.map +1 -1
- package/dist/components/canvas/canvas.js +16 -16
- package/dist/components/canvas/canvas.js.map +1 -1
- package/dist/components/canvas/navbar/index.d.ts +4 -2
- package/dist/components/canvas/navbar/index.d.ts.map +1 -1
- package/dist/components/canvas/navbar/index.js +56 -11
- package/dist/components/canvas/navbar/index.js.map +1 -1
- package/dist/components/canvas/navbar/single-button.d.ts +10 -1
- package/dist/components/canvas/navbar/single-button.d.ts.map +1 -1
- package/dist/components/canvas/navbar/single-button.js +95 -15
- package/dist/components/canvas/navbar/single-button.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/lib/canvas.d.ts.map +1 -1
- package/dist/lib/canvas.js +3 -3
- package/dist/lib/canvas.js.map +1 -1
- package/dist/lib/constants.d.ts +2 -2
- package/dist/lib/constants.d.ts.map +1 -1
- package/dist/lib/constants.js +2 -2
- package/dist/lib/constants.js.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/types/index.d.ts +69 -0
- package/dist/types/index.d.ts.map +1 -1
- package/package.json +4 -1
- package/src/components/canvas/backgrounds.tsx +7 -7
- package/src/components/canvas/canvas.tsx +30 -15
- package/src/components/canvas/navbar/index.tsx +91 -15
- package/src/components/canvas/navbar/single-button.tsx +210 -56
- package/src/index.ts +5 -0
- package/src/lib/canvas.ts +4 -4
- package/src/lib/constants.ts +2 -2
- package/src/styles.css +15 -13
- package/src/types/index.ts +91 -0
package/README.md
CHANGED
|
@@ -133,7 +133,59 @@ const navItems: NavItem[] = [
|
|
|
133
133
|
</Canvas>
|
|
134
134
|
```
|
|
135
135
|
|
|
136
|
-
When `navItems` is provided, the canvas will render a navbar with buttons to navigate between sections.
|
|
136
|
+
When `navItems` is provided, the canvas will render a navbar with buttons to navigate between sections.
|
|
137
|
+
|
|
138
|
+
#### Using Icons
|
|
139
|
+
|
|
140
|
+
The `icon` property accepts either a Lucide icon name (string) or a custom React component:
|
|
141
|
+
|
|
142
|
+
```tsx
|
|
143
|
+
import { Heart } from 'lucide-react';
|
|
144
|
+
|
|
145
|
+
// Using Lucide icon names (strings)
|
|
146
|
+
const navItems: NavItem[] = [
|
|
147
|
+
{ id: "home", label: "Home", icon: "Home", ...coordinates.home, isHome: true },
|
|
148
|
+
{ id: "about", label: "About", icon: "Info", ...coordinates.about },
|
|
149
|
+
];
|
|
150
|
+
|
|
151
|
+
// Using custom icon components
|
|
152
|
+
const CustomIcon = ({ className }: { className?: string }) => (
|
|
153
|
+
<svg className={className} viewBox="0 0 24 24" fill="currentColor">
|
|
154
|
+
<circle cx="12" cy="12" r="10" />
|
|
155
|
+
</svg>
|
|
156
|
+
);
|
|
157
|
+
|
|
158
|
+
const navItems: NavItem[] = [
|
|
159
|
+
{ id: "home", label: "Home", icon: Heart, ...coordinates.home, isHome: true },
|
|
160
|
+
{ id: "custom", label: "Custom", icon: CustomIcon, ...coordinates.custom },
|
|
161
|
+
];
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
For Lucide icons, use the PascalCase icon name as a string (e.g., `"Home"`, `"Settings"`, `"ChevronRight"`). See the [Lucide icons list](https://lucide.dev/icons) for available icons.
|
|
165
|
+
|
|
166
|
+
### Canvas Dimensions
|
|
167
|
+
|
|
168
|
+
By default, the canvas uses a size of 6000×4000 pixels. You can customize the canvas dimensions using the `canvasWidth` and `canvasHeight` props to create larger or smaller canvas spaces:
|
|
169
|
+
|
|
170
|
+
```tsx
|
|
171
|
+
<Canvas
|
|
172
|
+
homeCoordinates={homeCoordinates}
|
|
173
|
+
canvasWidth={8000} // Custom width (default: 6000)
|
|
174
|
+
canvasHeight={6000} // Custom height (default: 4000)
|
|
175
|
+
>
|
|
176
|
+
{/* ... */}
|
|
177
|
+
</Canvas>
|
|
178
|
+
```
|
|
179
|
+
|
|
180
|
+
**When to customize canvas dimensions:**
|
|
181
|
+
- **Larger canvases** (e.g., 10000×8000): When you have many sections spread across a wide area, or want more space for users to explore
|
|
182
|
+
- **Smaller canvases** (e.g., 4000×3000): For simpler layouts with fewer sections, reducing memory usage on lower-end devices
|
|
183
|
+
- **Custom aspect ratios**: Match your content layout needs (e.g., ultra-wide canvases for timeline-style layouts)
|
|
184
|
+
|
|
185
|
+
**Important considerations:**
|
|
186
|
+
- Canvas coordinates in `homeCoordinates`, `navItems`, and `CanvasComponent` offsets should be within your custom canvas bounds
|
|
187
|
+
- Larger canvases use more memory but provide more space for content
|
|
188
|
+
- The canvas automatically handles zoom limits based on your custom dimensions
|
|
137
189
|
|
|
138
190
|
## Customization
|
|
139
191
|
|
|
@@ -239,7 +291,7 @@ import { Canvas, DefaultIntroContent } from '@hunterchen/canvas';
|
|
|
239
291
|
|
|
240
292
|
#### Complete Theming Example (Hack Western Style)
|
|
241
293
|
|
|
242
|
-
Here's a complete example showing how to apply a custom theme:
|
|
294
|
+
Here's a complete example showing how to apply a custom theme with warm coral/lilac colors (used by [Hack Western](https://hackwestern.com)):
|
|
243
295
|
|
|
244
296
|
```tsx
|
|
245
297
|
import {
|
|
@@ -251,10 +303,10 @@ import {
|
|
|
251
303
|
canvasHeight,
|
|
252
304
|
} from '@hunterchen/canvas';
|
|
253
305
|
|
|
254
|
-
//
|
|
255
|
-
const CANVAS_GRADIENT = `radial-gradient(ellipse ${canvasWidth}px ${canvasHeight}px at ${canvasWidth / 2}px ${canvasHeight}px,
|
|
256
|
-
const INTRO_GRADIENT = "linear-gradient(to top, #
|
|
257
|
-
const BOX_GRADIENT = "radial-gradient(130.38% 95% at 50.03% 97.25%, #
|
|
306
|
+
// Hack Western theme colors (coral/lilac warm palette)
|
|
307
|
+
const CANVAS_GRADIENT = `radial-gradient(ellipse ${canvasWidth}px ${canvasHeight}px at ${canvasWidth / 2}px ${canvasHeight}px, #f7f1e5 0%, #d9c8e6 41%, #ffb5a7 59%, #f7f1e5 90%)`;
|
|
308
|
+
const INTRO_GRADIENT = "linear-gradient(to top, #ffb5a7 0%, #d9c8e6 50%, #f7f1e5 100%)";
|
|
309
|
+
const BOX_GRADIENT = "radial-gradient(130.38% 95% at 50.03% 97.25%, #ffb5a7 0%, #d9c8e6 48.09%, #f7f1e5 100%)";
|
|
258
310
|
|
|
259
311
|
function App() {
|
|
260
312
|
return (
|
|
@@ -267,19 +319,26 @@ function App() {
|
|
|
267
319
|
<DefaultIntroContent
|
|
268
320
|
logoSrc="/logo.svg"
|
|
269
321
|
logoAlt="Logo"
|
|
270
|
-
title="
|
|
322
|
+
title="HACK WESTERN"
|
|
323
|
+
titleClassName="text-[#513b7a]"
|
|
271
324
|
/>
|
|
272
325
|
}
|
|
273
326
|
loadingText="LOADING..."
|
|
274
327
|
canvasBackground={
|
|
275
328
|
<DefaultCanvasBackground
|
|
276
329
|
gradientStyle={CANVAS_GRADIENT}
|
|
277
|
-
dotColor="#
|
|
330
|
+
dotColor="#c9a7db"
|
|
278
331
|
/>
|
|
279
332
|
}
|
|
280
333
|
wrapperBackground={
|
|
281
334
|
<DefaultWrapperBackground gradient={INTRO_GRADIENT} />
|
|
282
335
|
}
|
|
336
|
+
navbarConfig={{
|
|
337
|
+
buttonConfig: {
|
|
338
|
+
activeClassName: "bg-[#f5f2f7]",
|
|
339
|
+
hoverClassName: "bg-[#f5f2f7]",
|
|
340
|
+
},
|
|
341
|
+
}}
|
|
283
342
|
>
|
|
284
343
|
{/* Your canvas content */}
|
|
285
344
|
</Canvas>
|
|
@@ -287,6 +346,31 @@ function App() {
|
|
|
287
346
|
}
|
|
288
347
|
```
|
|
289
348
|
|
|
349
|
+
#### Customizing CSS Variables
|
|
350
|
+
|
|
351
|
+
The library uses CSS variables for theming. You can override them in your CSS to customize colors globally:
|
|
352
|
+
|
|
353
|
+
```css
|
|
354
|
+
:root {
|
|
355
|
+
/* Text colors */
|
|
356
|
+
--canvas-heavy: #3c204c; /* Darkest text */
|
|
357
|
+
--canvas-emphasis: #513b7a; /* Emphasized text */
|
|
358
|
+
--canvas-active: #8f57ad; /* Active/selected state */
|
|
359
|
+
--canvas-medium: #776780; /* Medium text */
|
|
360
|
+
--canvas-light: #c3b8cb; /* Light text */
|
|
361
|
+
|
|
362
|
+
/* Background colors */
|
|
363
|
+
--canvas-beige: #f7f1e5; /* Warm beige */
|
|
364
|
+
--canvas-coral: #ffb5a7; /* Coral accent */
|
|
365
|
+
--canvas-lilac: #d9c8e6; /* Lilac accent */
|
|
366
|
+
--canvas-salmon: #ffa585; /* Salmon accent */
|
|
367
|
+
--canvas-tinted: #c9a7db; /* Tinted purple */
|
|
368
|
+
--canvas-faint-lilac: #f5f2f7; /* Very light lilac */
|
|
369
|
+
--canvas-offwhite: #fdfcfd; /* Off-white */
|
|
370
|
+
--canvas-highlight: #f5f2f7; /* Highlight/hover */
|
|
371
|
+
}
|
|
372
|
+
```
|
|
373
|
+
|
|
290
374
|
### Toolbar Customization
|
|
291
375
|
|
|
292
376
|
The toolbar displays the current canvas coordinates and zoom level. You can customize its position, appearance, and behavior using the `toolbarConfig` prop.
|
|
@@ -374,6 +458,113 @@ The toolbar displays the current canvas coordinates and zoom level. You can cust
|
|
|
374
458
|
<Canvas toolbarConfig={{ hidden: true }} />
|
|
375
459
|
```
|
|
376
460
|
|
|
461
|
+
### Navbar Customization
|
|
462
|
+
|
|
463
|
+
The navbar provides navigation buttons to jump between canvas sections. You can customize its position, display mode, button styling, and tooltips using the `navbarConfig` prop.
|
|
464
|
+
|
|
465
|
+
```tsx
|
|
466
|
+
<Canvas
|
|
467
|
+
homeCoordinates={homeCoordinates}
|
|
468
|
+
navItems={navItems}
|
|
469
|
+
navbarConfig={{
|
|
470
|
+
position: "top",
|
|
471
|
+
display: "icons-labels",
|
|
472
|
+
}}
|
|
473
|
+
>
|
|
474
|
+
{/* ... */}
|
|
475
|
+
</Canvas>
|
|
476
|
+
```
|
|
477
|
+
|
|
478
|
+
**NavbarConfig options:**
|
|
479
|
+
|
|
480
|
+
| Prop | Type | Default | Description |
|
|
481
|
+
|------|------|---------|-------------|
|
|
482
|
+
| `hidden` | `boolean` | `false` | Hide the navbar entirely |
|
|
483
|
+
| `display` | `'icons' \| 'labels' \| 'icons-labels' \| 'compact'` | `'icons'` | Display mode for items |
|
|
484
|
+
| `position` | `'top' \| 'bottom' \| 'left' \| 'right'` | `'bottom'` | Navbar position |
|
|
485
|
+
| `className` | `string` | - | Additional CSS classes for container |
|
|
486
|
+
| `style` | `CSSProperties` | - | Inline styles for container |
|
|
487
|
+
| `buttonConfig` | `NavbarButtonConfig` | - | Button styling options (see below) |
|
|
488
|
+
| `tooltipConfig` | `NavbarTooltipConfig` | - | Tooltip options (see below) |
|
|
489
|
+
| `gap` | `number` | `4` | Gap between buttons in pixels |
|
|
490
|
+
| `padding` | `number` | `4` | Padding inside navbar in pixels |
|
|
491
|
+
|
|
492
|
+
**NavbarButtonConfig options:**
|
|
493
|
+
|
|
494
|
+
| Prop | Type | Description |
|
|
495
|
+
|------|------|-------------|
|
|
496
|
+
| `className` | `string` | Additional classes for all buttons |
|
|
497
|
+
| `style` | `CSSProperties` | Inline styles for all buttons |
|
|
498
|
+
| `activeClassName` | `string` | Classes for active/pushed state |
|
|
499
|
+
| `activeStyle` | `CSSProperties` | Styles for active state |
|
|
500
|
+
| `hoverClassName` | `string` | Classes for hover state |
|
|
501
|
+
| `hoverStyle` | `CSSProperties` | Styles for hover state |
|
|
502
|
+
| `iconClassName` | `string` | Classes for icons |
|
|
503
|
+
| `iconSize` | `number` | Icon size in pixels (default: 20) |
|
|
504
|
+
| `labelClassName` | `string` | Classes for labels |
|
|
505
|
+
| `labelStyle` | `CSSProperties` | Styles for labels |
|
|
506
|
+
|
|
507
|
+
**NavbarTooltipConfig options:**
|
|
508
|
+
|
|
509
|
+
| Prop | Type | Default | Description |
|
|
510
|
+
|------|------|---------|-------------|
|
|
511
|
+
| `disabled` | `boolean` | `false` | Disable tooltips entirely |
|
|
512
|
+
| `className` | `string` | - | Additional classes for tooltip |
|
|
513
|
+
| `style` | `CSSProperties` | - | Inline styles for tooltip |
|
|
514
|
+
| `delay` | `number` | `100` | Delay before showing tooltip (ms) |
|
|
515
|
+
|
|
516
|
+
#### Display Modes
|
|
517
|
+
|
|
518
|
+
- **`icons`** (default): Shows icons only, expands to show label when active, tooltip on hover
|
|
519
|
+
- **`labels`**: Shows labels only, no icons
|
|
520
|
+
- **`icons-labels`**: Always shows both icon and label for all items
|
|
521
|
+
- **`compact`**: Icons only, no expansion on active, just highlights
|
|
522
|
+
|
|
523
|
+
#### Navbar Examples
|
|
524
|
+
|
|
525
|
+
```tsx
|
|
526
|
+
// Position at top
|
|
527
|
+
<Canvas navbarConfig={{ position: "top" }} />
|
|
528
|
+
|
|
529
|
+
// Labels only (no icons)
|
|
530
|
+
<Canvas navbarConfig={{ display: "labels" }} />
|
|
531
|
+
|
|
532
|
+
// Always show icons + labels
|
|
533
|
+
<Canvas navbarConfig={{ display: "icons-labels" }} />
|
|
534
|
+
|
|
535
|
+
// Compact mode (icons only, no expansion)
|
|
536
|
+
<Canvas navbarConfig={{ display: "compact" }} />
|
|
537
|
+
|
|
538
|
+
// Custom container styling
|
|
539
|
+
<Canvas
|
|
540
|
+
navbarConfig={{
|
|
541
|
+
className: "bg-black/80 backdrop-blur-md",
|
|
542
|
+
style: { borderRadius: "20px" },
|
|
543
|
+
}}
|
|
544
|
+
/>
|
|
545
|
+
|
|
546
|
+
// Custom button styling
|
|
547
|
+
<Canvas
|
|
548
|
+
navbarConfig={{
|
|
549
|
+
buttonConfig: {
|
|
550
|
+
activeClassName: "bg-blue-500",
|
|
551
|
+
activeStyle: { color: "white" },
|
|
552
|
+
hoverClassName: "bg-gray-100",
|
|
553
|
+
iconSize: 24,
|
|
554
|
+
},
|
|
555
|
+
}}
|
|
556
|
+
/>
|
|
557
|
+
|
|
558
|
+
// Disable tooltips
|
|
559
|
+
<Canvas navbarConfig={{ tooltipConfig: { disabled: true } }} />
|
|
560
|
+
|
|
561
|
+
// Vertical sidebar layout
|
|
562
|
+
<Canvas navbarConfig={{ position: "left" }} />
|
|
563
|
+
|
|
564
|
+
// Hide navbar entirely
|
|
565
|
+
<Canvas navbarConfig={{ hidden: true }} />
|
|
566
|
+
```
|
|
567
|
+
|
|
377
568
|
### Exported Constants
|
|
378
569
|
|
|
379
570
|
The library exports default gradient values you can use as a starting point:
|
|
@@ -475,6 +666,11 @@ npm run type-check
|
|
|
475
666
|
- `ToolbarConfig` - Toolbar customization options
|
|
476
667
|
- `ToolbarPosition` - Preset toolbar positions
|
|
477
668
|
- `ToolbarDisplayMode` - Toolbar display modes
|
|
669
|
+
- `NavbarConfig` - Navbar customization options
|
|
670
|
+
- `NavbarPosition` - Preset navbar positions
|
|
671
|
+
- `NavbarDisplayMode` - Navbar display modes
|
|
672
|
+
- `NavbarButtonConfig` - Navbar button styling options
|
|
673
|
+
- `NavbarTooltipConfig` - Navbar tooltip options
|
|
478
674
|
- `NavItem` - Navigation item configuration
|
|
479
675
|
- `SectionCoordinates` - Section coordinate definition
|
|
480
676
|
|
|
@@ -482,7 +678,41 @@ npm run type-check
|
|
|
482
678
|
|
|
483
679
|
### Canvas Props
|
|
484
680
|
|
|
485
|
-
The `Canvas` component accepts
|
|
681
|
+
The `Canvas` component accepts the following props:
|
|
682
|
+
|
|
683
|
+
| Prop | Type | Required | Default | Description |
|
|
684
|
+
|------|------|----------|---------|-------------|
|
|
685
|
+
| `homeCoordinates` | `SectionCoordinates` | Yes | - | Initial viewport position and home section |
|
|
686
|
+
| `children` | `ReactNode` | Yes | - | Canvas content (typically `CanvasComponent` elements) |
|
|
687
|
+
| `canvasWidth` | `number` | No | `6000` | Total canvas width in pixels |
|
|
688
|
+
| `canvasHeight` | `number` | No | `4000` | Total canvas height in pixels |
|
|
689
|
+
| `navItems` | `NavItem[]` | No | - | Navigation items for navbar |
|
|
690
|
+
| `skipIntro` | `boolean` | No | `false` | Skip intro animation |
|
|
691
|
+
| `introContent` | `ReactNode` | No | - | Custom intro content during loading |
|
|
692
|
+
| `loadingText` | `string` | No | - | Custom loading text |
|
|
693
|
+
| `introBackgroundGradient` | `string` | No | - | Background gradient for intro |
|
|
694
|
+
| `canvasBoxGradient` | `string` | No | - | Canvas box gradient during intro |
|
|
695
|
+
| `growTransition` | `Transition` | No | - | Custom grow transition (Framer Motion) |
|
|
696
|
+
| `blurTransition` | `Transition` | No | - | Custom blur transition (Framer Motion) |
|
|
697
|
+
| `canvasBackground` | `ReactNode` | No | `<DefaultCanvasBackground />` | Custom canvas background |
|
|
698
|
+
| `wrapperBackground` | `ReactNode` | No | - | Custom wrapper/intro background |
|
|
699
|
+
| `toolbarConfig` | `ToolbarConfig` | No | - | Toolbar customization options |
|
|
700
|
+
| `navbarConfig` | `NavbarConfig` | No | - | Navbar customization options |
|
|
701
|
+
|
|
702
|
+
### NavItem Props
|
|
703
|
+
|
|
704
|
+
Each item in the `navItems` array has the following properties:
|
|
705
|
+
|
|
706
|
+
| Prop | Type | Required | Description |
|
|
707
|
+
|------|------|----------|-------------|
|
|
708
|
+
| `id` | `string` | Yes | Unique identifier for this section |
|
|
709
|
+
| `label` | `string` | Yes | Display label shown in the navbar |
|
|
710
|
+
| `icon` | `string \| React.ComponentType` | Yes | Lucide icon name or custom component |
|
|
711
|
+
| `x` | `number` | Yes | X coordinate on the canvas |
|
|
712
|
+
| `y` | `number` | Yes | Y coordinate on the canvas |
|
|
713
|
+
| `width` | `number` | Yes | Section viewport width |
|
|
714
|
+
| `height` | `number` | Yes | Section viewport height |
|
|
715
|
+
| `isHome` | `boolean` | No | If true, clicking triggers reset/home behavior |
|
|
486
716
|
|
|
487
717
|
### Draggable Props
|
|
488
718
|
|
|
@@ -25,8 +25,8 @@ export interface DefaultCanvasBackgroundProps {
|
|
|
25
25
|
/** Additional children to render in the background */
|
|
26
26
|
children?: ReactNode;
|
|
27
27
|
}
|
|
28
|
-
/** The default canvas gradient (neutral gray) */
|
|
29
|
-
export declare const DEFAULT_CANVAS_GRADIENT = "radial-gradient(ellipse 6000px 4000px at 3000px 4000px, #
|
|
28
|
+
/** The default canvas gradient (neutral light gray) */
|
|
29
|
+
export declare const DEFAULT_CANVAS_GRADIENT = "radial-gradient(ellipse 6000px 4000px at 3000px 4000px, #fafafa 0%, #f5f5f5 41%, #e5e5e5 59%, #fafafa 90%)";
|
|
30
30
|
/**
|
|
31
31
|
* Default canvas background with gradient, dots, and noise filter.
|
|
32
32
|
* All aspects are customizable via props.
|
|
@@ -65,6 +65,6 @@ export interface DefaultIntroContentProps {
|
|
|
65
65
|
* Can be customized or replaced entirely.
|
|
66
66
|
*/
|
|
67
67
|
export declare const DefaultIntroContent: React.FC<DefaultIntroContentProps>;
|
|
68
|
-
export declare const DEFAULT_INTRO_GRADIENT = "linear-gradient(to top, #
|
|
69
|
-
export declare const DEFAULT_CANVAS_BOX_GRADIENT = "radial-gradient(130.38% 95% at 50.03% 97.25%, #
|
|
68
|
+
export declare const DEFAULT_INTRO_GRADIENT = "linear-gradient(to top, #f5f5f5 0%, #fafafa 50%, #ffffff 100%)";
|
|
69
|
+
export declare const DEFAULT_CANVAS_BOX_GRADIENT = "radial-gradient(130.38% 95% at 50.03% 97.25%, #f5f5f5 0%, #fafafa 48.09%, #ffffff 100%)";
|
|
70
70
|
//# sourceMappingURL=backgrounds.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backgrounds.d.ts","sourceRoot":"","sources":["../../../src/components/canvas/backgrounds.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAO9C,MAAM,WAAW,4BAA4B;IAC3C,qFAAqF;IACrF,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qDAAqD;IACrD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+CAA+C;IAC/C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iDAAiD;IACjD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,+CAA+C;IAC/C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,sDAAsD;IACtD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,yCAAyC;IACzC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kDAAkD;IAClD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,8CAA8C;IAC9C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gDAAgD;IAChD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,sDAAsD;IACtD,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED,
|
|
1
|
+
{"version":3,"file":"backgrounds.d.ts","sourceRoot":"","sources":["../../../src/components/canvas/backgrounds.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAO9C,MAAM,WAAW,4BAA4B;IAC3C,qFAAqF;IACrF,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qDAAqD;IACrD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+CAA+C;IAC/C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iDAAiD;IACjD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,+CAA+C;IAC/C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,sDAAsD;IACtD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,yCAAyC;IACzC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kDAAkD;IAClD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,8CAA8C;IAC9C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gDAAgD;IAChD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,sDAAsD;IACtD,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED,uDAAuD;AACvD,eAAO,MAAM,uBAAuB,+GAA6J,CAAC;AAElM;;;GAGG;AACH,eAAO,MAAM,uBAAuB,EAAE,KAAK,CAAC,EAAE,CAAC,4BAA4B,CA6D1E,CAAC;AAIF,MAAM,WAAW,6BAA6B;IAC5C,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,2BAA2B;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,+BAA+B;IAC/B,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CAC7B;AAED;;GAEG;AACH,eAAO,MAAM,wBAAwB,EAAE,KAAK,CAAC,EAAE,CAAC,6BAA6B,CAc5E,CAAC;AAEF,MAAM,WAAW,wBAAwB;IACvC,wBAAwB;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oBAAoB;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iBAAiB;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kBAAkB;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iBAAiB;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6CAA6C;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yCAAyC;IACzC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,wBAAwB,CA0ClE,CAAC;AAGF,eAAO,MAAM,sBAAsB,mEAC+B,CAAC;AAEnE,eAAO,MAAM,2BAA2B,4FACmD,CAAC"}
|
|
@@ -2,13 +2,13 @@ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-run
|
|
|
2
2
|
import { motion } from "framer-motion";
|
|
3
3
|
import { canvasWidth, canvasHeight } from "../../lib/canvas";
|
|
4
4
|
import { cn } from "../../lib/utils";
|
|
5
|
-
/** The default canvas gradient (neutral gray) */
|
|
6
|
-
export const DEFAULT_CANVAS_GRADIENT = `radial-gradient(ellipse ${canvasWidth}px ${canvasHeight}px at ${canvasWidth / 2}px ${canvasHeight}px, #
|
|
5
|
+
/** The default canvas gradient (neutral light gray) */
|
|
6
|
+
export const DEFAULT_CANVAS_GRADIENT = `radial-gradient(ellipse ${canvasWidth}px ${canvasHeight}px at ${canvasWidth / 2}px ${canvasHeight}px, #fafafa 0%, #f5f5f5 41%, #e5e5e5 59%, #fafafa 90%)`;
|
|
7
7
|
/**
|
|
8
8
|
* Default canvas background with gradient, dots, and noise filter.
|
|
9
9
|
* All aspects are customizable via props.
|
|
10
10
|
*/
|
|
11
|
-
export const DefaultCanvasBackground = ({ gradientStyle, showDots = true, dotColor = "#
|
|
11
|
+
export const DefaultCanvasBackground = ({ gradientStyle, showDots = true, dotColor = "#a3a3a3", dotSize = 1.5, dotSpacing = 22, dotOpacity = 0.35, showFilter = true, filterOpacity = 0.6, gradientClassName, dotsClassName, filterClassName, children, }) => {
|
|
12
12
|
const gradientImage = gradientStyle ?? DEFAULT_CANVAS_GRADIENT;
|
|
13
13
|
return (_jsxs(_Fragment, { children: [_jsx("div", { className: cn("pointer-events-none absolute inset-0 h-full w-full", gradientClassName), style: {
|
|
14
14
|
backgroundImage: gradientImage,
|
|
@@ -24,7 +24,7 @@ export const DefaultCanvasBackground = ({ gradientStyle, showDots = true, dotCol
|
|
|
24
24
|
/**
|
|
25
25
|
* Default wrapper/intro background gradient.
|
|
26
26
|
*/
|
|
27
|
-
export const DefaultWrapperBackground = ({ gradient = "linear-gradient(to top, #
|
|
27
|
+
export const DefaultWrapperBackground = ({ gradient = "linear-gradient(to top, #f5f5f5 0%, #fafafa 50%, #ffffff 100%)", className, style, }) => {
|
|
28
28
|
return (_jsx("div", { className: cn("absolute inset-0 h-full w-full", className), style: {
|
|
29
29
|
backgroundImage: gradient,
|
|
30
30
|
...style,
|
|
@@ -41,7 +41,7 @@ export const DefaultIntroContent = ({ logoSrc, logoAlt = "Logo", logoWidth = 64,
|
|
|
41
41
|
}
|
|
42
42
|
return (_jsxs("div", { className: cn("absolute left-1/2 top-24 flex -translate-x-1/2 flex-col items-center text-center", className), children: [logoSrc && (_jsx(motion.img, { src: logoSrc, alt: logoAlt, width: logoWidth, height: logoHeight, className: "mb-4" })), title && (_jsx("div", { className: cn("font-sans font-semibold text-neutral-600", titleClassName), children: title }))] }));
|
|
43
43
|
};
|
|
44
|
-
// Default gradient values for export (neutral grays)
|
|
45
|
-
export const DEFAULT_INTRO_GRADIENT = "linear-gradient(to top, #
|
|
46
|
-
export const DEFAULT_CANVAS_BOX_GRADIENT = "radial-gradient(130.38% 95% at 50.03% 97.25%, #
|
|
44
|
+
// Default gradient values for export (neutral light grays)
|
|
45
|
+
export const DEFAULT_INTRO_GRADIENT = "linear-gradient(to top, #f5f5f5 0%, #fafafa 50%, #ffffff 100%)";
|
|
46
|
+
export const DEFAULT_CANVAS_BOX_GRADIENT = "radial-gradient(130.38% 95% at 50.03% 97.25%, #f5f5f5 0%, #fafafa 48.09%, #ffffff 100%)";
|
|
47
47
|
//# sourceMappingURL=backgrounds.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backgrounds.js","sourceRoot":"","sources":["../../../src/components/canvas/backgrounds.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AA+BrC,
|
|
1
|
+
{"version":3,"file":"backgrounds.js","sourceRoot":"","sources":["../../../src/components/canvas/backgrounds.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import { type Transition } from "framer-motion";
|
|
2
2
|
import React, { type FC } from "react";
|
|
3
|
-
import type { NavItem, SectionCoordinates, ToolbarConfig } from "../../types";
|
|
3
|
+
import type { NavItem, NavbarConfig, SectionCoordinates, ToolbarConfig } from "../../types";
|
|
4
4
|
import type { ReactNode } from "react";
|
|
5
5
|
interface Props {
|
|
6
6
|
homeCoordinates: SectionCoordinates;
|
|
7
7
|
children: React.ReactNode;
|
|
8
|
+
canvasWidth?: number;
|
|
9
|
+
canvasHeight?: number;
|
|
8
10
|
/** Array of navigation items for the navbar. If omitted, navbar is hidden. */
|
|
9
11
|
navItems?: NavItem[];
|
|
10
12
|
/** Disable intro animation entirely */
|
|
@@ -27,6 +29,8 @@ interface Props {
|
|
|
27
29
|
wrapperBackground?: ReactNode;
|
|
28
30
|
/** Toolbar customization options */
|
|
29
31
|
toolbarConfig?: ToolbarConfig;
|
|
32
|
+
/** Navbar customization options */
|
|
33
|
+
navbarConfig?: NavbarConfig;
|
|
30
34
|
}
|
|
31
35
|
declare const Canvas: FC<Props>;
|
|
32
36
|
export default Canvas;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"canvas.d.ts","sourceRoot":"","sources":["../../../src/components/canvas/canvas.tsx"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,UAAU,EAChB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,EAIZ,KAAK,EAAE,EAIR,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"canvas.d.ts","sourceRoot":"","sources":["../../../src/components/canvas/canvas.tsx"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,UAAU,EAChB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,EAIZ,KAAK,EAAE,EAIR,MAAM,OAAO,CAAC;AA0Bf,OAAO,KAAK,EAEV,OAAO,EACP,YAAY,EACZ,kBAAkB,EAClB,aAAa,EACd,MAAM,aAAa,CAAC;AAGrB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC,UAAU,KAAK;IACb,eAAe,EAAE,kBAAkB,CAAC;IACpC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAG1B,WAAW,CAAC,EAAC,MAAM,CAAC;IACpB,YAAY,CAAC,EAAC,MAAM,CAAC;IAGrB,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;IAGrB,uCAAuC;IACvC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,0CAA0C;IAC1C,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,0BAA0B;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oCAAoC;IACpC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,0BAA0B;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,6BAA6B;IAC7B,cAAc,CAAC,EAAE,UAAU,CAAC;IAC5B,6BAA6B;IAC7B,cAAc,CAAC,EAAE,UAAU,CAAC;IAG5B,+EAA+E;IAC/E,gBAAgB,CAAC,EAAE,SAAS,CAAC;IAC7B,sFAAsF;IACtF,iBAAiB,CAAC,EAAE,SAAS,CAAC;IAG9B,oCAAoC;IACpC,aAAa,CAAC,EAAE,aAAa,CAAC;IAG9B,mCAAmC;IACnC,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B;AAYD,QAAA,MAAM,MAAM,EAAE,EAAE,CAAC,KAAK,CAkmBrB,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -2,8 +2,8 @@ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-run
|
|
|
2
2
|
import { motion, useMotionValue, animate, useTransform, } from "framer-motion";
|
|
3
3
|
import { useState, useRef, useEffect, useCallback, useMemo, } from "react";
|
|
4
4
|
import { CanvasProvider } from "../../contexts/CanvasContext";
|
|
5
|
-
import { calcInitialBoxWidth,
|
|
6
|
-
import { STAGE2_TRANSITION, MOUSE_WHEEL_ZOOM_SENSITIVITY, TRACKPAD_ZOOM_SENSITIVITY, } from "../../lib/constants";
|
|
5
|
+
import { calcInitialBoxWidth, getDistance, getMidpoint, getScreenSizeEnum, getSectionPanCoordinates, INTERACTIVE_SELECTOR, MAX_ZOOM, MIN_ZOOMS, panToOffsetScene, ZOOM_BOUND, } from "../../lib/canvas";
|
|
6
|
+
import { STAGE2_TRANSITION, MOUSE_WHEEL_ZOOM_SENSITIVITY, TRACKPAD_ZOOM_SENSITIVITY, DEFAULT_CANVAS_WIDTH, DEFAULT_CANVAS_HEIGHT, } from "../../lib/constants";
|
|
7
7
|
import useWindowDimensions from "../../hooks/useWindowDimensions";
|
|
8
8
|
import Navbar from "./navbar";
|
|
9
9
|
import Toolbar from "./toolbar";
|
|
@@ -15,12 +15,12 @@ const stopAllMotion = (x, y, scale) => {
|
|
|
15
15
|
y.stop();
|
|
16
16
|
scale.stop();
|
|
17
17
|
};
|
|
18
|
-
const Canvas = ({ children, homeCoordinates, navItems, skipIntro = false, introContent, loadingText, introBackgroundGradient, canvasBoxGradient, growTransition, blurTransition, canvasBackground, wrapperBackground, toolbarConfig, }) => {
|
|
18
|
+
const Canvas = ({ children, homeCoordinates, navItems, skipIntro = false, introContent, loadingText, introBackgroundGradient, canvasBoxGradient, growTransition, blurTransition, canvasBackground, wrapperBackground, toolbarConfig, navbarConfig, canvasHeight, canvasWidth, }) => {
|
|
19
19
|
const { height: windowHeight, width: windowWidth } = useWindowDimensions();
|
|
20
20
|
const { mode } = usePerformanceMode();
|
|
21
21
|
const hasNavbar = Boolean(navItems && navItems.length > 0);
|
|
22
|
-
const sceneWidth = canvasWidth;
|
|
23
|
-
const sceneHeight = canvasHeight;
|
|
22
|
+
const sceneWidth = canvasWidth ?? DEFAULT_CANVAS_WIDTH;
|
|
23
|
+
const sceneHeight = canvasHeight ?? DEFAULT_CANVAS_HEIGHT;
|
|
24
24
|
const MIN_ZOOM = MIN_ZOOMS[getScreenSizeEnum(windowWidth)];
|
|
25
25
|
// tracks if user is panning the screen
|
|
26
26
|
const [isPanning, setIsPanning] = useState(false);
|
|
@@ -59,11 +59,11 @@ const Canvas = ({ children, homeCoordinates, navItems, skipIntro = false, introC
|
|
|
59
59
|
const introProgress = useMotionValue(0);
|
|
60
60
|
// Precompute final stage1 scale and offsets (snapshot dimensions once on mount)
|
|
61
61
|
const stage1Targets = useMemo(() => {
|
|
62
|
-
const finalScale = Math.max((windowWidth || 0) /
|
|
63
|
-
const endX = (windowWidth -
|
|
64
|
-
const endY = (windowHeight -
|
|
62
|
+
const finalScale = Math.max((windowWidth || 0) / sceneWidth, (windowHeight || 0) / sceneHeight);
|
|
63
|
+
const endX = (windowWidth - sceneWidth * finalScale) / 2;
|
|
64
|
+
const endY = (windowHeight - sceneHeight * finalScale) / 2;
|
|
65
65
|
return { finalScale, endX, endY };
|
|
66
|
-
}, [windowWidth, windowHeight]);
|
|
66
|
+
}, [windowWidth, windowHeight, sceneWidth, sceneHeight]);
|
|
67
67
|
// Replace direct motion values with derived transforms during stage1
|
|
68
68
|
const derivedScale = useTransform(introProgress, [0, 1], [initialBoxWidth, stage1Targets.finalScale]);
|
|
69
69
|
const derivedX = useTransform(introProgress, [0, 1], [0, stage1Targets.endX]);
|
|
@@ -231,8 +231,8 @@ const Canvas = ({ children, homeCoordinates, navItems, skipIntro = false, introC
|
|
|
231
231
|
if (initialDistance === 0)
|
|
232
232
|
return;
|
|
233
233
|
let newZoom = initialZoom * (currentDistance / initialDistance);
|
|
234
|
-
newZoom = Math.max((window.innerWidth /
|
|
235
|
-
(window.innerHeight /
|
|
234
|
+
newZoom = Math.max((window.innerWidth / sceneWidth) * ZOOM_BOUND, // Ensure zoom is at least the width of the canvas
|
|
235
|
+
(window.innerHeight / sceneHeight) * ZOOM_BOUND, // Ensure zoom is at least the height of the canvas
|
|
236
236
|
Math.min(newZoom, 10), MIN_ZOOM // Ensure zoom is not less than MIN_ZOOM
|
|
237
237
|
);
|
|
238
238
|
const mx = currentMidpoint.x;
|
|
@@ -312,8 +312,8 @@ const Canvas = ({ children, homeCoordinates, navItems, skipIntro = false, introC
|
|
|
312
312
|
: TRACKPAD_ZOOM_SENSITIVITY;
|
|
313
313
|
if (isPinch) {
|
|
314
314
|
const currentZoom = scale.get();
|
|
315
|
-
const nextZoom = Math.max(Math.min(currentZoom * (1 - event.deltaY * ZOOM_SENSITIVITY), MAX_ZOOM), MIN_ZOOM, (window.innerWidth /
|
|
316
|
-
(window.innerHeight /
|
|
315
|
+
const nextZoom = Math.max(Math.min(currentZoom * (1 - event.deltaY * ZOOM_SENSITIVITY), MAX_ZOOM), MIN_ZOOM, (window.innerWidth / sceneWidth) * ZOOM_BOUND, // Ensure zoom is at least the width of the canvas
|
|
316
|
+
(window.innerHeight / sceneHeight) * ZOOM_BOUND // Ensure zoom is at least the height of the canvas
|
|
317
317
|
);
|
|
318
318
|
const rect = viewportRef.current?.getBoundingClientRect();
|
|
319
319
|
if (!rect)
|
|
@@ -372,13 +372,13 @@ const Canvas = ({ children, homeCoordinates, navItems, skipIntro = false, introC
|
|
|
372
372
|
y: -offset.y,
|
|
373
373
|
}, viewportRef, onComplete, zoom);
|
|
374
374
|
}, [panToOffset, viewportRef]);
|
|
375
|
-
return (_jsx(CanvasWrapper, { introProgress: introProgress, onIntroGrowComplete: startStage2, skipIntro: skipIntro, introContent: introContent, loadingText: loadingText, introBackgroundGradient: introBackgroundGradient, wrapperBackground: wrapperBackground, canvasBoxGradient: canvasBoxGradient, growTransition: growTransition, blurTransition: blurTransition, children: _jsxs(CanvasProvider, { x: x, y: y, scale: scale, isResetting: isResetting, maxZIndex: maxZIndex, setMaxZIndex: setMaxZIndex, animationStage: animationStage, nextTargetSection: nextTargetSection, setNextTargetSection: setNextTargetSection, children: [animationStage >= 2 && (_jsxs(_Fragment, { children: [!toolbarConfig?.hidden && (_jsx(Toolbar, { homeCoordinates: offsetHomeCoordinates, config: toolbarConfig })), hasNavbar && navItems
|
|
375
|
+
return (_jsx(CanvasWrapper, { introProgress: introProgress, onIntroGrowComplete: startStage2, skipIntro: skipIntro, introContent: introContent, loadingText: loadingText, introBackgroundGradient: introBackgroundGradient, wrapperBackground: wrapperBackground, canvasBoxGradient: canvasBoxGradient, growTransition: growTransition, blurTransition: blurTransition, children: _jsxs(CanvasProvider, { x: x, y: y, scale: scale, isResetting: isResetting, maxZIndex: maxZIndex, setMaxZIndex: setMaxZIndex, animationStage: animationStage, nextTargetSection: nextTargetSection, setNextTargetSection: setNextTargetSection, children: [animationStage >= 2 && (_jsxs(_Fragment, { children: [!toolbarConfig?.hidden && (_jsx(Toolbar, { homeCoordinates: offsetHomeCoordinates, config: toolbarConfig })), hasNavbar && navItems && !navbarConfig?.hidden && (_jsx(Navbar, { panToOffset: handlePanToOffset, onReset: onResetViewAndItems, items: navItems, config: navbarConfig }))] })), _jsx("div", { ref: setViewportRef, className: "relative h-full w-full touch-none select-none overflow-hidden", style: {
|
|
376
376
|
touchAction: "none",
|
|
377
377
|
pointerEvents: animationStage >= 2 ? "auto" : "none",
|
|
378
378
|
overscrollBehavior: "contain",
|
|
379
379
|
}, onPointerDown: handlePointerDown, onPointerMove: handlePointerMove, onPointerUp: handlePointerUpOrCancel, onPointerLeave: handlePointerUpOrCancel, onPointerCancel: handlePointerUpOrCancel, children: _jsxs(motion.div, { ref: sceneRef, className: "absolute z-20 origin-top-left", initial: { opacity: 0 }, animate: { opacity: 1 }, transition: { duration: 0.3, ease: "easeIn" }, style: {
|
|
380
|
-
width: `${
|
|
381
|
-
height: `${
|
|
380
|
+
width: `${sceneWidth}px`,
|
|
381
|
+
height: `${sceneHeight}px`,
|
|
382
382
|
x,
|
|
383
383
|
y,
|
|
384
384
|
scale,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"canvas.js","sourceRoot":"","sources":["../../../src/components/canvas/canvas.tsx"],"names":[],"mappings":";AAAA,OAAO,EACL,MAAM,EAGN,cAAc,EACd,OAAO,EACP,YAAY,GAEb,MAAM,eAAe,CAAC;AACvB,OAAc,EACZ,QAAQ,EACR,MAAM,EAGN,SAAS,EACT,WAAW,EACX,OAAO,GACR,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EACL,mBAAmB,EACnB,YAAY,EACZ,WAAW,EACX,WAAW,EACX,WAAW,EACX,iBAAiB,EACjB,wBAAwB,EACxB,oBAAoB,EACpB,QAAQ,EACR,SAAS,EACT,gBAAgB,EAChB,UAAU,GACX,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,iBAAiB,EACjB,4BAA4B,EAC5B,yBAAyB,GAC1B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,mBAAmB,MAAM,iCAAiC,CAAC;AAClE,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,OAAO,MAAM,WAAW,CAAC;AAOhC,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAEpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAqCxD,MAAM,aAAa,GAAG,CACpB,CAAsB,EACtB,CAAsB,EACtB,KAA0B,EAC1B,EAAE;IACF,CAAC,CAAC,IAAI,EAAE,CAAC;IACT,CAAC,CAAC,IAAI,EAAE,CAAC;IACT,KAAK,CAAC,IAAI,EAAE,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,MAAM,GAAc,CAAC,EACzB,QAAQ,EACR,eAAe,EACf,QAAQ,EACR,SAAS,GAAG,KAAK,EACjB,YAAY,EACZ,WAAW,EACX,uBAAuB,EACvB,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EACjB,aAAa,GACd,EAAE,EAAE;IACH,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,mBAAmB,EAAE,CAAC;IAE3E,MAAM,EAAE,IAAI,EAAE,GAAG,kBAAkB,EAAE,CAAC;IAEtC,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAE3D,MAAM,UAAU,GAAG,WAAW,CAAC;IAC/B,MAAM,WAAW,GAAG,YAAY,CAAC;IAEjC,MAAM,QAAQ,GAAG,SAAS,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC,CAAC;IAE3D,uCAAuC;IACvC,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAU,KAAK,CAAC,CAAC;IAC3D,uDAAuD;IACvD,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAU,KAAK,CAAC,CAAC;IACnE,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAQ,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAC1E,MAAM,CAAC,sBAAsB,EAAE,yBAAyB,CAAC,GAAG,QAAQ,CAAQ;QAC1E,CAAC,EAAE,CAAC;QACJ,CAAC,EAAE,CAAC;KACL,CAAC,CAAC;IACH,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAU,KAAK,CAAC,CAAC;IAC/D,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAS,EAAE,CAAC,CAAC;IACvD,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAS,CAAC,CAAC,CAAC,CAAC,6CAA6C;IAC9G,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAC7C,QAAQ,CAAuB,IAAI,CAAC,CAAC;IACvC,0FAA0F;IAC1F,MAAM,mBAAmB,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAEzC,MAAM,eAAe,GAAG,OAAO,CAC7B,GAAG,EAAE,CAAC,mBAAmB,CAAC,WAAW,EAAE,YAAY,CAAC,EACpD,CAAC,WAAW,EAAE,YAAY,CAAC,CAC5B,CAAC;IAEF,gCAAgC;IAChC,MAAM,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;IAC5B,MAAM,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;IAC5B,MAAM,KAAK,GAAG,cAAc,CAAC,eAAe,CAAC,CAAC;IAE9C,MAAM,qBAAqB,GAAG,OAAO,CACnC,GAAG,EAAE,CACH,wBAAwB,CAAC;QACvB,gBAAgB,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE;QAC9D,MAAM,EAAE,eAAe;QACvB,UAAU,EAAE,CAAC;KACd,CAAC,EACJ,CAAC,eAAe,EAAE,WAAW,EAAE,YAAY,CAAC,CAC7C,CAAC;IAEF,MAAM,mBAAmB,GAAG,WAAW,CACrC,CAAC,UAAuB,EAAQ,EAAE;QAChC,cAAc,CAAC,IAAI,CAAC,CAAC;QAErB,KAAK,gBAAgB,CAAC,qBAAqB,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;YACrE,cAAc,CAAC,KAAK,CAAC,CAAC;YACtB,IAAI,UAAU;gBAAE,UAAU,EAAE,CAAC;QAC/B,CAAC,CAAC,CAAC;IACL,CAAC,EACD,CAAC,qBAAqB,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CACrC,CAAC;IAEF,uDAAuD;IACvD,MAAM,aAAa,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;IAExC,gFAAgF;IAChF,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,EAAE;QACjC,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CACzB,CAAC,WAAW,IAAI,CAAC,CAAC,GAAG,WAAW,EAChC,CAAC,YAAY,IAAI,CAAC,CAAC,GAAG,YAAY,CACnC,CAAC;QACF,MAAM,IAAI,GAAG,CAAC,WAAW,GAAG,WAAW,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;QAC1D,MAAM,IAAI,GAAG,CAAC,YAAY,GAAG,YAAY,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;QAC5D,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACpC,CAAC,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC;IAEhC,qEAAqE;IACrE,MAAM,YAAY,GAAG,YAAY,CAC/B,aAAa,EACb,CAAC,CAAC,EAAE,CAAC,CAAC,EACN,CAAC,eAAe,EAAE,aAAa,CAAC,UAAU,CAAC,CAC5C,CAAC;IACF,MAAM,QAAQ,GAAG,YAAY,CAAC,aAAa,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9E,MAAM,QAAQ,GAAG,YAAY,CAAC,aAAa,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;IAE9E,uEAAuE;IACvE,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,gBAAgB,GAAG,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;YACvD,IAAI,cAAc,KAAK,CAAC;gBAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;QACH,MAAM,YAAY,GAAG,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;YAC/C,IAAI,cAAc,KAAK,CAAC;gBAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;QACH,MAAM,YAAY,GAAG,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;YAC/C,IAAI,cAAc,KAAK,CAAC;gBAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;QACH,OAAO,GAAG,EAAE;YACV,gBAAgB,EAAE,CAAC;YACnB,YAAY,EAAE,CAAC;YACf,YAAY,EAAE,CAAC;QACjB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAEpE,2EAA2E;IAC3E,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,EAAE;QACnC,iBAAiB,CAAC,CAAC,CAAC,CAAC;QAErB,OAAO,CAAC,GAAG,CAAC;YACV,OAAO,CAAC,CAAC,EAAE,qBAAqB,CAAC,CAAC,EAAE,iBAAiB,CAAC;YACtD,OAAO,CAAC,CAAC,EAAE,qBAAqB,CAAC,CAAC,EAAE,iBAAiB,CAAC;YACtD,OAAO,CAAC,KAAK,EAAE,CAAC,EAAE,iBAAiB,CAAC;SACrC,CAAC;aACC,IAAI,CAAC,GAAG,EAAE;YACT,iBAAiB,CAAC,CAAC,CAAC,CAAC;YACrB,mBAAmB,CAAC,OAAO,GAAG,KAAK,CAAC;QACtC,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,EAAE;YACV,mBAAmB,CAAC,OAAO,GAAG,KAAK,CAAC;QACtC,CAAC,CAAC,CAAC;IACP,CAAC,EAAE,CAAC,qBAAqB,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;IAEzC,MAAM,WAAW,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IACjD,MAAM,QAAQ,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAE9C,6EAA6E;IAC7E,MAAM,eAAe,GAAG,MAAM,CAAmC,IAAI,CAAC,CAAC;IACvE,MAAM,YAAY,GAAG,WAAW,CAAC,CAAC,CAAa,EAAE,EAAE;QACjD,eAAe,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;IAC/B,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,+FAA+F;IAC/F,MAAM,cAAc,GAAG,WAAW,CAChC,CAAC,IAA2B,EAAE,EAAE;QAC9B,gDAAgD;QAChD,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;YACxB,WAAW,CAAC,OAAO,CAAC,mBAAmB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;QACjE,CAAC;QACD,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC;QAC3B,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;QACnE,CAAC;IACH,CAAC,EACD,CAAC,YAAY,CAAC,CACf,CAAC;IAEF,MAAM,iBAAiB,GAAG,MAAM,CAC9B,IAAI,GAAG,EAAE,CACV,CAAC;IACF,MAAM,oBAAoB,GAAG,MAAM,CAKzB,IAAI,CAAC,CAAC;IAEhB,MAAM,WAAW,GAAG,WAAW,CAC7B,CACE,MAAa,EACb,WAAmD,EACnD,UAAuB,EACvB,IAAa,EACP,EAAE;QACR,IAAI,CAAC,WAAW,CAAC,OAAO;YAAE,OAAO;QACjC,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAEvB,0DAA0D;QAC1D,MAAM,aAAa,GAAG,WAAW,CAAC,OAAO,CAAC,WAAW,CAAC;QACtD,MAAM,cAAc,GAAG,WAAW,CAAC,OAAO,CAAC,YAAY,CAAC;QAExD,MAAM,OAAO,GAAG,aAAa,GAAG,UAAU,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC;QACzD,MAAM,OAAO,GAAG,CAAC,CAAC;QAClB,MAAM,OAAO,GAAG,cAAc,GAAG,WAAW,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC;QAC3D,MAAM,OAAO,GAAG,CAAC,CAAC;QAElB,8FAA8F;QAC9F,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC;QAChE,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC;QAEhE,KAAK,gBAAgB,CACnB,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,EAC5B,CAAC,EACD,CAAC,EACD,KAAK,EACL,IAAI,CACL,CAAC,IAAI,CAAC,GAAG,EAAE;YACV,gBAAgB,CAAC,KAAK,CAAC,CAAC;YACxB,IAAI,UAAU;gBAAE,UAAU,EAAE,CAAC;QAC/B,CAAC,CAAC,CAAC;IACL,CAAC,EACD,CAAC,UAAU,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CACvC,CAAC;IAEF,6DAA6D;IAC7D,MAAM,kBAAkB,GAAG,WAAW,CAAC,GAAG,EAAE;QAC1C,IAAI,mBAAmB,CAAC,OAAO;YAAE,OAAO,CAAC,gCAAgC;QACzE,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;IAC7B,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;IAElB,MAAM,iBAAiB,GAAG,WAAW,CACnC,CAAC,KAAmC,EAAQ,EAAE;QAC5C,IAAI,cAAc,GAAG,CAAC;YAAE,OAAO,CAAC,iCAAiC;QACjE,iBAAiB,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QACrD,KAAK,CAAC,MAAsB,CAAC,iBAAiB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACjE,IAAI,WAAW,IAAI,aAAa;YAAE,OAAO;QACzC,kBAAkB,EAAE,CAAC;QACrB,4CAA4C;QAC5C,IAAI,iBAAiB,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YACzC,uCAAuC;YACvC,MAAM,aAAa,GAAG,KAAK,CAAC,MAAqB,CAAC;YAClD,IAAI,aAAa,CAAC,OAAO,CAAC,oBAAoB,CAAC,EAAE,CAAC;gBAChD,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBACjD,KAAK,CAAC,MAAsB,CAAC,qBAAqB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBACrE,OAAO;YACT,CAAC;YAED,YAAY,CAAC,IAAI,CAAC,CAAC;YACnB,gBAAgB,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YACzD,yBAAyB,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACtD,IAAI,WAAW,CAAC,OAAO;gBAAE,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,UAAU,CAAC;QACzE,CAAC;aAAM,IAAI,iBAAiB,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YAChD,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;YAChE,oBAAoB,CAAC,OAAO,GAAG;gBAC7B,QAAQ,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAE,EAAE,QAAQ,CAAC,CAAC,CAAE,CAAC;gBACjD,QAAQ,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAE,EAAE,QAAQ,CAAC,CAAC,CAAE,CAAC;gBACjD,IAAI,EAAE,KAAK,CAAC,GAAG,EAAE;gBACjB,SAAS,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,EAAE;aACtC,CAAC;QACJ,CAAC;IACH,CAAC,EACD;QACE,WAAW;QACX,aAAa;QACb,YAAY;QACZ,gBAAgB;QAChB,yBAAyB;QACzB,CAAC;QACD,CAAC;QACD,KAAK;QACL,WAAW;QACX,cAAc;QACd,kBAAkB;KACnB,CACF,CAAC;IAEF,MAAM,iBAAiB,GAAG,WAAW,CACnC,CAAC,KAAmC,EAAQ,EAAE;QAC5C,IAAI,cAAc,GAAG,CAAC;YAAE,OAAO;QAC/B,IAAI,SAAS,IAAI,iBAAiB,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC;YACrD,kBAAkB,EAAE,CAAC;QACvB,CAAC;QACD,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,WAAW;YAChE,OAAO;QACT,iBAAiB,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAEtD,IAAI,SAAS,IAAI,iBAAiB,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YACtD,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,GAAG,aAAa,CAAC,CAAC,CAAC;YAC/C,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,GAAG,aAAa,CAAC,CAAC,CAAC;YAE/C,6BAA6B;YAC7B,MAAM,OAAO,GAAG,WAAW,GAAG,UAAU,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC;YACvD,MAAM,OAAO,GAAG,CAAC,CAAC;YAClB,MAAM,OAAO,GAAG,YAAY,GAAG,WAAW,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC;YACzD,MAAM,OAAO,GAAG,CAAC,CAAC;YAElB,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CACnB,IAAI,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC,GAAG,MAAM,EAAE,OAAO,CAAC,EACpD,OAAO,CACR,CAAC;YACF,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CACnB,IAAI,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC,GAAG,MAAM,EAAE,OAAO,CAAC,EACpD,OAAO,CACR,CAAC;YACF,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACZ,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACd,CAAC;aAAM,IACL,iBAAiB,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC;YACnC,oBAAoB,CAAC,OAAO,EAC5B,CAAC;YACD,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;YAChE,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAE,CAAC;YACxB,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAE,CAAC;YAExB,MAAM,eAAe,GAAG,WAAW,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YAC5C,MAAM,eAAe,GAAG,WAAW,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YAE5C,MAAM,EACJ,QAAQ,EAAE,eAAe,EACzB,IAAI,EAAE,WAAW,EACjB,SAAS,EAAE,qBAAqB,GACjC,GAAG,oBAAoB,CAAC,OAAO,CAAC;YAEjC,IAAI,eAAe,KAAK,CAAC;gBAAE,OAAO;YAElC,IAAI,OAAO,GAAG,WAAW,GAAG,CAAC,eAAe,GAAG,eAAe,CAAC,CAAC;YAChE,OAAO,GAAG,IAAI,CAAC,GAAG,CAChB,CAAC,MAAM,CAAC,UAAU,GAAG,WAAW,CAAC,GAAG,UAAU,EAAE,kDAAkD;YAClG,CAAC,MAAM,CAAC,WAAW,GAAG,YAAY,CAAC,GAAG,UAAU,EAAE,mDAAmD;YACrG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,EACrB,QAAQ,CAAC,wCAAwC;aAClD,CAAC;YAEF,MAAM,EAAE,GAAG,eAAe,CAAC,CAAC,CAAC;YAC7B,MAAM,EAAE,GAAG,eAAe,CAAC,CAAC,CAAC;YAE7B,MAAM,OAAO,GAAG,WAAW,GAAG,UAAU,GAAG,OAAO,CAAC;YACnD,MAAM,OAAO,GAAG,CAAC,CAAC;YAClB,MAAM,OAAO,GAAG,YAAY,GAAG,WAAW,GAAG,OAAO,CAAC;YACrD,MAAM,OAAO,GAAG,CAAC,CAAC;YAElB,IAAI,OAAO,GACT,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,qBAAqB,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,GAAG,OAAO,CAAC;YAChE,IAAI,OAAO,GACT,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,qBAAqB,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,GAAG,OAAO,CAAC;YAEhE,sCAAsC;YACtC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC;YACxD,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC;YAExD,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACnB,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACf,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACjB,CAAC;IACH,CAAC,EACD;QACE,SAAS;QACT,WAAW;QACX,CAAC;QACD,CAAC;QACD,KAAK;QACL,aAAa,CAAC,CAAC;QACf,aAAa,CAAC,CAAC;QACf,WAAW;QACX,UAAU;QACV,YAAY;QACZ,WAAW;QACX,sBAAsB,CAAC,CAAC;QACxB,sBAAsB,CAAC,CAAC;QACxB,QAAQ;QACR,cAAc;QACd,kBAAkB;KACnB,CACF,CAAC;IAEF,MAAM,uBAAuB,GAAG,WAAW,CACzC,CAAC,KAAmC,EAAQ,EAAE;QAC5C,IAAI,cAAc,GAAG,CAAC,EAAE,CAAC;YACvB,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,OAAO,CAAC,iCAAiC;QAC3C,CAAC;QACD,kBAAkB,EAAE,CAAC;QACrB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAK,KAAK,CAAC,MAAsB,CAAC,iBAAiB,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;YACpE,KAAK,CAAC,MAAsB,CAAC,qBAAqB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACvE,CAAC;QACD,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAElD,IAAI,SAAS,IAAI,iBAAiB,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YACpD,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,IAAI,WAAW,CAAC,OAAO;gBACrB,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,gCAAgC,CAAC;QACxE,CAAC;QAED,IAAI,oBAAoB,CAAC,OAAO,IAAI,iBAAiB,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YACvE,oBAAoB,CAAC,OAAO,GAAG,IAAI,CAAC;QACtC,CAAC;QAED,IACE,CAAC,SAAS;YACV,iBAAiB,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC;YACpC,CAAC,oBAAoB,CAAC,OAAO,EAC7B,CAAC;YACD,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC;YACvE,YAAY,CAAC,IAAI,CAAC,CAAC;YACnB,gBAAgB,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,OAAO,EAAE,CAAC,EAAE,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;YACrE,yBAAyB,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACxD,CAAC;IACH,CAAC,EACD,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,kBAAkB,CAAC,CACtD,CAAC;IAEF,MAAM,eAAe,GAAG,WAAW,CACjC,CAAC,KAAiB,EAAE,EAAE;QACpB,IAAI,cAAc,GAAG,CAAC,EAAE,CAAC;YACvB,KAAK,CAAC,cAAc,EAAE,CAAC;YACvB,OAAO,CAAC,kDAAkD;QAC5D,CAAC;QACD,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,yBAAyB;QACzB,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC;QAC/C,MAAM,gBAAgB,GACpB,KAAK,CAAC,SAAS,KAAK,UAAU,CAAC,cAAc;YAC7C,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC;QAEhC,mEAAmE;QACnE,MAAM,gBAAgB,GAAG,gBAAgB;YACvC,CAAC,CAAC,4BAA4B;YAC9B,CAAC,CAAC,yBAAyB,CAAC;QAE9B,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,WAAW,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC;YAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CACvB,IAAI,CAAC,GAAG,CACN,WAAW,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,gBAAgB,CAAC,EACnD,QAAQ,CACT,EACD,QAAQ,EACR,CAAC,MAAM,CAAC,UAAU,GAAG,WAAW,CAAC,GAAG,UAAU,EAAE,kDAAkD;YAClG,CAAC,MAAM,CAAC,WAAW,GAAG,YAAY,CAAC,GAAG,UAAU,CAAC,mDAAmD;aACrG,CAAC;YAEF,MAAM,IAAI,GAAG,WAAW,CAAC,OAAO,EAAE,qBAAqB,EAAE,CAAC;YAE1D,IAAI,CAAC,IAAI;gBAAE,OAAO;YAElB,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC;YACzB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC;YACvB,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC;YACjC,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC;YAEnC,MAAM,YAAY,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,WAAW,CAAC;YACtE,MAAM,YAAY,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,KAAK,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,WAAW,CAAC;YAErE,IAAI,OAAO,GAAG,KAAK,CAAC,OAAO,GAAG,MAAM,GAAG,YAAY,GAAG,QAAQ,CAAC;YAC/D,IAAI,OAAO,GAAG,KAAK,CAAC,OAAO,GAAG,KAAK,GAAG,YAAY,GAAG,QAAQ,CAAC;YAE9D,MAAM,OAAO,GAAG,aAAa,GAAG,UAAU,GAAG,QAAQ,CAAC;YACtD,MAAM,OAAO,GAAG,cAAc,GAAG,WAAW,GAAG,QAAQ,CAAC;YACxD,MAAM,OAAO,GAAG,CAAC,CAAC;YAClB,MAAM,OAAO,GAAG,CAAC,CAAC;YAElB,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;YACxD,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;YAExD,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACf,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACf,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACtB,CAAC;aAAM,CAAC;YACN,kBAAkB,EAAE,CAAC;YAErB,MAAM,WAAW,GAAG,CAAC,CAAC;YACtB,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,MAAM,GAAG,WAAW,CAAC;YACrD,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,MAAM,GAAG,WAAW,CAAC;YAErD,MAAM,OAAO,GAAG,WAAW,GAAG,UAAU,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC;YACvD,MAAM,OAAO,GAAG,CAAC,CAAC;YAClB,MAAM,OAAO,GAAG,YAAY,GAAG,WAAW,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC;YACzD,MAAM,OAAO,GAAG,CAAC,CAAC;YAElB,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC;YAClE,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC;YAElE,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YACnB,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACrB,CAAC;IACH,CAAC,EACD;QACE,KAAK;QACL,QAAQ;QACR,CAAC;QACD,CAAC;QACD,UAAU;QACV,WAAW;QACX,WAAW;QACX,YAAY;QACZ,cAAc;QACd,kBAAkB;KACnB,CACF,CAAC;IAEF,mEAAmE;IACnE,SAAS,CAAC,GAAG,EAAE;QACb,eAAe,CAAC,OAAO,GAAG,eAAe,CAAC;IAC5C,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC;IAEtB,MAAM,iBAAiB,GAAG,WAAW,CACnC,CACE,MAAgC,EAChC,UAAuB,EACvB,IAAa,EACb,EAAE;QACF,WAAW,CACT;YACE,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;YACZ,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;SACb,EACD,WAAW,EACX,UAAU,EACV,IAAI,CACL,CAAC;IACJ,CAAC,EACD,CAAC,WAAW,EAAE,WAAW,CAAC,CAC3B,CAAC;IAEF,OAAO,CACL,KAAC,aAAa,IACZ,aAAa,EAAE,aAAa,EAC5B,mBAAmB,EAAE,WAAW,EAChC,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,YAAY,EAC1B,WAAW,EAAE,WAAW,EACxB,uBAAuB,EAAE,uBAAuB,EAChD,iBAAiB,EAAE,iBAAiB,EACpC,iBAAiB,EAAE,iBAAiB,EACpC,cAAc,EAAE,cAAc,EAC9B,cAAc,EAAE,cAAc,YAE9B,MAAC,cAAc,IACb,CAAC,EAAE,CAAC,EACJ,CAAC,EAAE,CAAC,EACJ,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,YAAY,EAC1B,cAAc,EAAE,cAAc,EAC9B,iBAAiB,EAAE,iBAAiB,EACpC,oBAAoB,EAAE,oBAAoB,aAEzC,cAAc,IAAI,CAAC,IAAI,CACtB,8BACG,CAAC,aAAa,EAAE,MAAM,IAAI,CACzB,KAAC,OAAO,IACN,eAAe,EAAE,qBAAqB,EACtC,MAAM,EAAE,aAAa,GACrB,CACH,EACA,SAAS,IAAI,QAAQ,CAAC,CAAC,CAAC,CACvB,KAAC,MAAM,IACL,WAAW,EAAE,iBAAiB,EAC9B,OAAO,EAAE,mBAAmB,EAC5B,KAAK,EAAE,QAAQ,GACf,CACH,CAAC,CAAC,CAAC,IAAI,IACP,CACJ,EACD,cACE,GAAG,EAAE,cAAc,EACnB,SAAS,EAAC,+DAA+D,EACzE,KAAK,EAAE;wBACL,WAAW,EAAE,MAAM;wBACnB,aAAa,EAAE,cAAc,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;wBACpD,kBAAkB,EAAE,SAAS;qBAC9B,EACD,aAAa,EAAE,iBAAiB,EAChC,aAAa,EAAE,iBAAiB,EAChC,WAAW,EAAE,uBAAuB,EACpC,cAAc,EAAE,uBAAuB,EACvC,eAAe,EAAE,uBAAuB,YAExC,MAAC,MAAM,CAAC,GAAG,IACT,GAAG,EAAE,QAAQ,EACb,SAAS,EAAC,+BAA+B,EACzC,OAAO,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EACvB,OAAO,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EACvB,UAAU,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,EAC7C,KAAK,EAAE;4BACL,KAAK,EAAE,GAAG,WAAW,IAAI;4BACzB,MAAM,EAAE,GAAG,YAAY,IAAI;4BAC3B,CAAC;4BACD,CAAC;4BACD,KAAK;4BACL,UAAU,EACR,IAAI,KAAK,MAAM,IAAI,CAAC,cAAc,GAAG,CAAC,IAAI,SAAS,CAAC;gCAClD,CAAC,CAAC,WAAW;gCACb,CAAC,CAAC,MAAM;yBACb,aAGA,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,CAChC,gBAAgB,CACjB,CAAC,CAAC,CAAC,CACF,4BACG,cAAc,IAAI,CAAC,IAAI,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,CACxC,KAAC,MAAM,CAAC,GAAG,IACT,OAAO,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EACvB,OAAO,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EACvB,UAAU,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,YAE7C,KAAC,uBAAuB,KAAG,GAChB,CACd,CAAC,CAAC,CAAC,CACF,KAAC,uBAAuB,KAAG,CAC5B,GACA,CACJ,EACA,QAAQ,IACE,GACT,IACS,GACH,CACjB,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
1
|
+
{"version":3,"file":"canvas.js","sourceRoot":"","sources":["../../../src/components/canvas/canvas.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { NavItem } from "../../../types";
|
|
1
|
+
import type { NavItem, NavbarConfig } from "../../../types";
|
|
2
2
|
interface NavbarProps {
|
|
3
3
|
panToOffset: (offset: {
|
|
4
4
|
x: number;
|
|
@@ -7,7 +7,9 @@ interface NavbarProps {
|
|
|
7
7
|
onReset: () => void;
|
|
8
8
|
/** Array of navigation items defining sections, their icons, and coordinates */
|
|
9
9
|
items: NavItem[];
|
|
10
|
+
/** Navbar configuration options */
|
|
11
|
+
config?: NavbarConfig;
|
|
10
12
|
}
|
|
11
|
-
export default function Navbar({ panToOffset, onReset, items, }: NavbarProps): import("react/jsx-runtime").JSX.Element;
|
|
13
|
+
export default function Navbar({ panToOffset, onReset, items, config, }: NavbarProps): import("react/jsx-runtime").JSX.Element;
|
|
12
14
|
export {};
|
|
13
15
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/canvas/navbar/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/canvas/navbar/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAkB,MAAM,gBAAgB,CAAC;AAc5E,UAAU,WAAW;IACnB,WAAW,EAAE,CACX,MAAM,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,EAChC,UAAU,CAAC,EAAE,MAAM,IAAI,EACvB,IAAI,CAAC,EAAE,MAAM,KACV,IAAI,CAAC;IACV,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,gFAAgF;IAChF,KAAK,EAAE,OAAO,EAAE,CAAC;IACjB,mCAAmC;IACnC,MAAM,CAAC,EAAE,YAAY,CAAC;CACvB;AAqCD,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,EAC7B,WAAW,EACX,OAAO,EACP,KAAK,EACL,MAAW,GACZ,EAAE,WAAW,2CAsLb"}
|