@devalok/shilp-sutra 0.31.0 → 0.32.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_chunks/badge-group.js +123 -172
- package/dist/_chunks/document-preview.js +92 -0
- package/dist/_chunks/file-preview.js +511 -0
- package/dist/_chunks/image-preview.js +90 -0
- package/dist/_chunks/primitives.js +109 -109
- package/dist/_chunks/stat-row.js +144 -124
- package/dist/_chunks/use-calendar.js +558 -490
- package/dist/ai/block-renderer.d.ts +2 -1
- package/dist/ai/block-renderer.d.ts.map +1 -1
- package/dist/ai/block-renderer.js +30 -29
- package/dist/ai/blocks/block-table.d.ts.map +1 -1
- package/dist/ai/blocks/confirm.d.ts.map +1 -1
- package/dist/ai/blocks/divider.d.ts.map +1 -1
- package/dist/ai/blocks/error.d.ts.map +1 -1
- package/dist/ai/blocks/info.d.ts.map +1 -1
- package/dist/ai/blocks/loading.d.ts.map +1 -1
- package/dist/ai/blocks/stat-row.d.ts.map +1 -1
- package/dist/ai/blocks/success.d.ts.map +1 -1
- package/dist/ai/blocks/text.d.ts.map +1 -1
- package/dist/ai/command-bar.d.ts +18 -0
- package/dist/ai/command-bar.d.ts.map +1 -1
- package/dist/ai/command-bar.js +126 -125
- package/dist/ai/conversation.d.ts +13 -1
- package/dist/ai/conversation.d.ts.map +1 -1
- package/dist/ai/conversation.js +78 -78
- package/dist/ai/types.d.ts +0 -1
- package/dist/ai/types.d.ts.map +1 -1
- package/dist/ai/types.js +0 -1
- package/dist/composed/bulk-action-bar.d.ts +6 -4
- package/dist/composed/bulk-action-bar.d.ts.map +1 -1
- package/dist/composed/bulk-action-bar.js +102 -58
- package/dist/composed/command-palette.d.ts +9 -0
- package/dist/composed/command-palette.d.ts.map +1 -1
- package/dist/composed/command-palette.js +68 -68
- package/dist/composed/confirm-dialog.d.ts +1 -1
- package/dist/composed/confirm-dialog.d.ts.map +1 -1
- package/dist/composed/confirm-dialog.js +10 -10
- package/dist/composed/date-picker/date-picker.d.ts +11 -1
- package/dist/composed/date-picker/date-picker.d.ts.map +1 -1
- package/dist/composed/date-picker/month-picker.d.ts.map +1 -1
- package/dist/composed/date-picker/year-picker.d.ts.map +1 -1
- package/dist/composed/deadline-indicator.d.ts +1 -1
- package/dist/composed/deadline-indicator.d.ts.map +1 -1
- package/dist/composed/deadline-indicator.js +39 -36
- package/dist/composed/emoji-picker.d.ts +6 -0
- package/dist/composed/emoji-picker.d.ts.map +1 -1
- package/dist/composed/emoji-picker.js +22 -20
- package/dist/composed/error-boundary.d.ts +21 -1
- package/dist/composed/error-boundary.d.ts.map +1 -1
- package/dist/composed/error-boundary.js +47 -32
- package/dist/composed/file-preview/audio-preview.d.ts +7 -0
- package/dist/composed/file-preview/audio-preview.d.ts.map +1 -0
- package/dist/composed/file-preview/document-preview.d.ts +7 -0
- package/dist/composed/file-preview/document-preview.d.ts.map +1 -0
- package/dist/composed/file-preview/embed-preview.d.ts +7 -0
- package/dist/composed/file-preview/embed-preview.d.ts.map +1 -0
- package/dist/composed/file-preview/image-preview.d.ts +7 -0
- package/dist/composed/file-preview/image-preview.d.ts.map +1 -0
- package/dist/composed/file-preview/shared.d.ts +20 -0
- package/dist/composed/file-preview/shared.d.ts.map +1 -0
- package/dist/composed/file-preview/video-preview.d.ts +6 -0
- package/dist/composed/file-preview/video-preview.d.ts.map +1 -0
- package/dist/composed/file-preview.d.ts.map +1 -1
- package/dist/composed/file-preview.js +10 -662
- package/dist/composed/filter-bar.d.ts +10 -2
- package/dist/composed/filter-bar.d.ts.map +1 -1
- package/dist/composed/filter-bar.js +42 -43
- package/dist/composed/form-section.d.ts +1 -1
- package/dist/composed/form-section.d.ts.map +1 -1
- package/dist/composed/form-section.js +22 -21
- package/dist/composed/index.d.ts +2 -2
- package/dist/composed/index.d.ts.map +1 -1
- package/dist/composed/index.js +58 -57
- package/dist/composed/inline-edit.d.ts +1 -1
- package/dist/composed/inline-edit.d.ts.map +1 -1
- package/dist/composed/inline-edit.js +33 -32
- package/dist/composed/markdown-viewer.d.ts +1 -1
- package/dist/composed/markdown-viewer.d.ts.map +1 -1
- package/dist/composed/markdown-viewer.js +60 -59
- package/dist/composed/master-detail.d.ts +11 -7
- package/dist/composed/master-detail.d.ts.map +1 -1
- package/dist/composed/master-detail.js +123 -84
- package/dist/composed/responsive-overlay.d.ts +8 -0
- package/dist/composed/responsive-overlay.d.ts.map +1 -1
- package/dist/composed/rich-text-editor.d.ts +11 -3
- package/dist/composed/rich-text-editor.d.ts.map +1 -1
- package/dist/composed/rich-text-editor.js +21 -20
- package/dist/composed/schedule-view.d.ts +9 -1
- package/dist/composed/schedule-view.d.ts.map +1 -1
- package/dist/hooks/index.d.ts +2 -0
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/index.js +8 -4
- package/dist/hooks/use-touch-device.d.ts +12 -0
- package/dist/hooks/use-touch-device.d.ts.map +1 -0
- package/dist/hooks/use-touch-device.js +13 -0
- package/dist/hooks/use-viewport-height.d.ts +11 -0
- package/dist/hooks/use-viewport-height.d.ts.map +1 -0
- package/dist/hooks/use-viewport-height.js +16 -0
- package/dist/shell/bottom-navbar.d.ts.map +1 -1
- package/dist/shell/bottom-navbar.js +72 -63
- package/dist/shell/command-registry.d.ts.map +1 -1
- package/dist/shell/notification-center.d.ts.map +1 -1
- package/dist/shell/notification-center.js +77 -77
- package/dist/shell/top-bar.d.ts +2 -2
- package/dist/shell/top-bar.d.ts.map +1 -1
- package/dist/shell/top-bar.js +61 -60
- package/dist/tailwind/index.cjs +51 -7
- package/dist/tailwind/preset.d.ts.map +1 -1
- package/dist/tailwind/preset.js +51 -7
- package/dist/tokens/primitives.css +3 -1
- package/dist/tokens/semantic.css +16 -13
- package/dist/ui/autocomplete.d.ts.map +1 -1
- package/dist/ui/autocomplete.js +38 -39
- package/dist/ui/badge.d.ts +104 -2
- package/dist/ui/badge.d.ts.map +1 -1
- package/dist/ui/banner.d.ts.map +1 -1
- package/dist/ui/banner.js +8 -7
- package/dist/ui/button.d.ts +2 -2
- package/dist/ui/button.d.ts.map +1 -1
- package/dist/ui/button.js +54 -74
- package/dist/ui/card.js +24 -24
- package/dist/ui/charts/area-chart.d.ts +2 -0
- package/dist/ui/charts/area-chart.d.ts.map +1 -1
- package/dist/ui/charts/bar-chart.d.ts +2 -0
- package/dist/ui/charts/bar-chart.d.ts.map +1 -1
- package/dist/ui/charts/chart-container.d.ts +2 -0
- package/dist/ui/charts/chart-container.d.ts.map +1 -1
- package/dist/ui/charts/index.js +583 -577
- package/dist/ui/charts/line-chart.d.ts +2 -0
- package/dist/ui/charts/line-chart.d.ts.map +1 -1
- package/dist/ui/charts/pie-chart.d.ts +2 -0
- package/dist/ui/charts/pie-chart.d.ts.map +1 -1
- package/dist/ui/charts/radar-chart.d.ts +2 -0
- package/dist/ui/charts/radar-chart.d.ts.map +1 -1
- package/dist/ui/checkbox.d.ts +2 -0
- package/dist/ui/checkbox.d.ts.map +1 -1
- package/dist/ui/checkbox.js +36 -27
- package/dist/ui/color-input.js +5 -5
- package/dist/ui/combobox.d.ts +6 -1
- package/dist/ui/combobox.d.ts.map +1 -1
- package/dist/ui/combobox.js +1 -1
- package/dist/ui/context-menu.js +1 -1
- package/dist/ui/data-table-body.d.ts +12 -0
- package/dist/ui/data-table-body.d.ts.map +1 -0
- package/dist/ui/data-table-body.js +219 -0
- package/dist/ui/data-table-bulk-actions.d.ts +19 -0
- package/dist/ui/data-table-bulk-actions.d.ts.map +1 -0
- package/dist/ui/data-table-bulk-actions.js +61 -0
- package/dist/ui/data-table-card.d.ts +9 -0
- package/dist/ui/data-table-card.d.ts.map +1 -0
- package/dist/ui/data-table-card.js +73 -0
- package/dist/ui/data-table-context.d.ts +62 -0
- package/dist/ui/data-table-context.d.ts.map +1 -0
- package/dist/ui/data-table-context.js +48 -0
- package/dist/ui/data-table-header.d.ts +10 -0
- package/dist/ui/data-table-header.d.ts.map +1 -0
- package/dist/ui/data-table-header.js +141 -0
- package/dist/ui/data-table-pagination.d.ts +13 -0
- package/dist/ui/data-table-pagination.d.ts.map +1 -0
- package/dist/ui/data-table-pagination.js +84 -0
- package/dist/ui/data-table.d.ts +11 -9
- package/dist/ui/data-table.d.ts.map +1 -1
- package/dist/ui/data-table.js +258 -573
- package/dist/ui/dialog.d.ts +6 -2
- package/dist/ui/dialog.d.ts.map +1 -1
- package/dist/ui/dialog.js +84 -82
- package/dist/ui/dropdown-menu.js +1 -1
- package/dist/ui/hover-card.d.ts +7 -0
- package/dist/ui/hover-card.d.ts.map +1 -1
- package/dist/ui/hover-card.js +3 -3
- package/dist/ui/icon-group.d.ts +2 -4
- package/dist/ui/icon-group.d.ts.map +1 -1
- package/dist/ui/icon-group.js +22 -23
- package/dist/ui/index.d.ts +1 -2
- package/dist/ui/index.d.ts.map +1 -1
- package/dist/ui/index.js +94 -99
- package/dist/ui/label.js +1 -1
- package/dist/ui/lib/bottom-sheet.d.ts +16 -0
- package/dist/ui/lib/bottom-sheet.d.ts.map +1 -0
- package/dist/ui/menubar.d.ts.map +1 -1
- package/dist/ui/menubar.js +64 -73
- package/dist/ui/navigation-menu.d.ts.map +1 -1
- package/dist/ui/navigation-menu.js +40 -44
- package/dist/ui/number-input.d.ts.map +1 -1
- package/dist/ui/number-input.js +19 -17
- package/dist/ui/popover.d.ts.map +1 -1
- package/dist/ui/popover.js +107 -32
- package/dist/ui/progress-ring.d.ts.map +1 -1
- package/dist/ui/progress-ring.js +80 -80
- package/dist/ui/progress.js +4 -4
- package/dist/ui/radio.d.ts +5 -2
- package/dist/ui/radio.d.ts.map +1 -1
- package/dist/ui/radio.js +29 -20
- package/dist/ui/search-input.d.ts.map +1 -1
- package/dist/ui/search-input.js +13 -12
- package/dist/ui/segmented-control.d.ts +6 -108
- package/dist/ui/segmented-control.d.ts.map +1 -1
- package/dist/ui/segmented-control.js +86 -272
- package/dist/ui/select.js +5 -5
- package/dist/ui/separator.js +5 -5
- package/dist/ui/sheet.d.ts +2 -0
- package/dist/ui/sheet.d.ts.map +1 -1
- package/dist/ui/sheet.js +102 -84
- package/dist/ui/sidebar.d.ts.map +1 -1
- package/dist/ui/sidebar.js +200 -175
- package/dist/ui/slider.js +14 -14
- package/dist/ui/status-dot.js +8 -8
- package/dist/ui/stepper.d.ts.map +1 -1
- package/dist/ui/stepper.js +33 -31
- package/dist/ui/switch.js +3 -3
- package/dist/ui/tabs.js +6 -6
- package/dist/ui/toast-types.d.ts +0 -1
- package/dist/ui/toast-types.d.ts.map +1 -1
- package/dist/ui/toast-types.js +0 -1
- package/dist/ui/toast.d.ts.map +1 -1
- package/dist/ui/toast.js +156 -150
- package/dist/ui/toggle-group.js +1 -1
- package/dist/ui/toggle.js +1 -1
- package/dist/ui/tooltip.js +3 -3
- package/docs/components/ui/data-table-body.md +13 -0
- package/docs/components/ui/data-table-bulk-actions.md +13 -0
- package/docs/components/ui/data-table-card.md +13 -0
- package/docs/components/ui/data-table-context.md +13 -0
- package/docs/components/ui/data-table-header.md +13 -0
- package/docs/components/ui/data-table-pagination.md +13 -0
- package/llms-full.txt +79 -48
- package/llms.txt +32 -0
- package/package.json +1 -6
- package/dist/ui/chip.d.ts +0 -19
- package/dist/ui/chip.d.ts.map +0 -1
- package/dist/ui/chip.js +0 -14
- package/dist/ui/lib/use-ripple.d.ts +0 -14
- package/dist/ui/lib/use-ripple.d.ts.map +0 -1
|
@@ -1,18 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
variant?: "filled" | "tonal" | null | undefined;
|
|
6
|
-
selected?: boolean | null | undefined;
|
|
7
|
-
isHovered?: boolean | null | undefined;
|
|
8
|
-
isDisabled?: boolean | null | undefined;
|
|
9
|
-
} & import('class-variance-authority/types').ClassProp) | undefined) => string;
|
|
10
|
-
export type SegmentedControlSize = 'sm' | 'md' | 'lg' | 'small' | 'medium' | 'big';
|
|
11
|
-
export type SegmentedControlVariant = 'filled' | 'tonal';
|
|
12
|
-
/**
|
|
13
|
-
* A single option in a `<SegmentedControl>`. The `id` must be unique across all options in
|
|
14
|
-
* the same control — it is used as the selection key for `selectedId` and `onSelect`.
|
|
15
|
-
*/
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
export type SegmentedControlSize = 'sm' | 'md' | 'lg';
|
|
4
|
+
export type SegmentedControlVariant = 'default' | 'accent';
|
|
16
5
|
export interface SegmentedControlOption {
|
|
17
6
|
id: string;
|
|
18
7
|
text: string;
|
|
@@ -21,105 +10,14 @@ export interface SegmentedControlOption {
|
|
|
21
10
|
className?: string;
|
|
22
11
|
}>;
|
|
23
12
|
}
|
|
24
|
-
/**
|
|
25
|
-
* Props for SegmentedControl — a pill-shaped tab-row for mutually exclusive option selection,
|
|
26
|
-
* similar to a radio group but styled as a single connected control.
|
|
27
|
-
*
|
|
28
|
-
* **`size`:** `'sm'` | `'md'` (default) | `'lg'`. Legacy aliases `'small'` | `'medium'` | `'big'` are
|
|
29
|
-
* also accepted for backward compatibility but prefer the canonical form.
|
|
30
|
-
*
|
|
31
|
-
* **`variant`:** `'tonal'` (default, subdued) | `'filled'` (vibrant brand color when selected).
|
|
32
|
-
*
|
|
33
|
-
* **Options:** Each option needs a unique `id`, a display `text`, and an optional `icon` component.
|
|
34
|
-
*
|
|
35
|
-
* **Controlled only:** `selectedId` + `onSelect` are required. There is no uncontrolled mode.
|
|
36
|
-
*
|
|
37
|
-
* @example
|
|
38
|
-
* // View mode switcher (list vs grid vs board):
|
|
39
|
-
* <SegmentedControl
|
|
40
|
-
* size="md"
|
|
41
|
-
* variant="tonal"
|
|
42
|
-
* options={[
|
|
43
|
-
* { id: 'list', text: 'List' },
|
|
44
|
-
* { id: 'grid', text: 'Grid' },
|
|
45
|
-
* { id: 'board', text: 'Board' },
|
|
46
|
-
* ]}
|
|
47
|
-
* selectedId={viewMode}
|
|
48
|
-
* onSelect={setViewMode}
|
|
49
|
-
* />
|
|
50
|
-
*
|
|
51
|
-
* @example
|
|
52
|
-
* // Time range selector with filled variant (more prominent):
|
|
53
|
-
* <SegmentedControl
|
|
54
|
-
* size="sm"
|
|
55
|
-
* variant="filled"
|
|
56
|
-
* options={[
|
|
57
|
-
* { id: '7d', text: '7D' },
|
|
58
|
-
* { id: '30d', text: '30D' },
|
|
59
|
-
* { id: '90d', text: '90D' },
|
|
60
|
-
* ]}
|
|
61
|
-
* selectedId={range}
|
|
62
|
-
* onSelect={setRange}
|
|
63
|
-
* />
|
|
64
|
-
* // These are just a few ways — feel free to combine props creatively!
|
|
65
|
-
*/
|
|
66
13
|
export interface SegmentedControlProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'onSelect'> {
|
|
67
|
-
size
|
|
68
|
-
variant
|
|
14
|
+
size?: SegmentedControlSize;
|
|
15
|
+
variant?: SegmentedControlVariant;
|
|
69
16
|
options: SegmentedControlOption[];
|
|
70
17
|
selectedId: string;
|
|
71
18
|
onSelect: (id: string) => void;
|
|
72
19
|
disabled?: boolean;
|
|
73
|
-
className?: string;
|
|
74
20
|
}
|
|
75
21
|
declare const SegmentedControl: React.ForwardRefExoticComponent<SegmentedControlProps & React.RefAttributes<HTMLDivElement>>;
|
|
76
|
-
|
|
77
|
-
* Props for SegmentedControlItem — the individual button segment within a `<SegmentedControl>`.
|
|
78
|
-
* Normally you don't use this directly; compose via `<SegmentedControl options={...} />` instead.
|
|
79
|
-
* Use `SegmentedControlItem` directly only when building a fully custom segmented tab row.
|
|
80
|
-
*
|
|
81
|
-
* **Note:** `isFocused`, `onFocus`, and `onBlur` are managed by the parent `SegmentedControl`.
|
|
82
|
-
* You must wire them yourself when using the item standalone.
|
|
83
|
-
*
|
|
84
|
-
* @example
|
|
85
|
-
* // Standalone custom segmented row (without parent SegmentedControl):
|
|
86
|
-
* const [view, setView] = useState<'list' | 'grid'>('list')
|
|
87
|
-
* const [focused, setFocused] = useState<string | null>(null)
|
|
88
|
-
*
|
|
89
|
-
* <div role="tablist" className="inline-flex rounded-full border border-surface-border-strong bg-surface-raised">
|
|
90
|
-
* <SegmentedControlItem
|
|
91
|
-
* size="md" variant="tonal" text="List"
|
|
92
|
-
* isSelected={view === 'list'} isFocused={focused === 'list'}
|
|
93
|
-
* onClick={() => setView('list')}
|
|
94
|
-
* onFocus={() => setFocused('list')} onBlur={() => setFocused(null)}
|
|
95
|
-
* />
|
|
96
|
-
* <SegmentedControlItem
|
|
97
|
-
* size="md" variant="tonal" text="Grid" icon={IconLayoutGrid}
|
|
98
|
-
* isSelected={view === 'grid'} isFocused={focused === 'grid'}
|
|
99
|
-
* onClick={() => setView('grid')}
|
|
100
|
-
* onFocus={() => setFocused('grid')} onBlur={() => setFocused(null)}
|
|
101
|
-
* />
|
|
102
|
-
* </div>
|
|
103
|
-
*
|
|
104
|
-
* // These are just a few ways — feel free to combine props creatively!
|
|
105
|
-
*/
|
|
106
|
-
export interface SegmentedControlItemProps {
|
|
107
|
-
size: 'sm' | 'md' | 'lg';
|
|
108
|
-
variant: SegmentedControlVariant;
|
|
109
|
-
text: string;
|
|
110
|
-
/** Optional icon component rendered before the text label. */
|
|
111
|
-
icon?: React.ComponentType<{
|
|
112
|
-
className?: string;
|
|
113
|
-
}>;
|
|
114
|
-
isSelected: boolean;
|
|
115
|
-
onClick: () => void;
|
|
116
|
-
disabled?: boolean;
|
|
117
|
-
isFocused: boolean;
|
|
118
|
-
onFocus: () => void;
|
|
119
|
-
onBlur: () => void;
|
|
120
|
-
/** @internal Unique layout animation ID — provided by the parent SegmentedControl. */
|
|
121
|
-
layoutId?: string;
|
|
122
|
-
}
|
|
123
|
-
declare const SegmentedControlItem: React.ForwardRefExoticComponent<SegmentedControlItemProps & React.RefAttributes<HTMLButtonElement>>;
|
|
124
|
-
export { SegmentedControl, SegmentedControlItem, segmentedControlItemVariants };
|
|
22
|
+
export { SegmentedControl };
|
|
125
23
|
//# sourceMappingURL=segmented-control.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"segmented-control.d.ts","sourceRoot":"","sources":["../../src/ui/segmented-control.tsx"],"names":[],"mappings":"AAEA,OAAO,
|
|
1
|
+
{"version":3,"file":"segmented-control.d.ts","sourceRoot":"","sources":["../../src/ui/segmented-control.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAM9B,MAAM,MAAM,oBAAoB,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAA;AACrD,MAAM,MAAM,uBAAuB,GAAG,SAAS,GAAG,QAAQ,CAAA;AAE1D,MAAM,WAAW,sBAAsB;IACrC,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,8DAA8D;IAC9D,IAAI,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CACnD;AAED,MAAM,WAAW,qBAAsB,SAAQ,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,UAAU,CAAC;IACnG,IAAI,CAAC,EAAE,oBAAoB,CAAA;IAC3B,OAAO,CAAC,EAAE,uBAAuB,CAAA;IACjC,OAAO,EAAE,sBAAsB,EAAE,CAAA;IACjC,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;IAC9B,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AA4BD,QAAA,MAAM,gBAAgB,8FA+HrB,CAAA;AAKD,OAAO,EAAE,gBAAgB,EAAE,CAAA"}
|
|
@@ -1,301 +1,115 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { jsx as
|
|
3
|
-
import
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
l((i) => i.filter((f) => f.id !== x)), s.current.delete(g);
|
|
18
|
-
}, u);
|
|
19
|
-
s.current.add(g);
|
|
20
|
-
}, [u]);
|
|
21
|
-
return { ripples: v, createRipple: m };
|
|
22
|
-
}
|
|
23
|
-
const B = H(
|
|
24
|
-
[
|
|
25
|
-
"inline-flex items-center gap-ds-03 rounded-ds-full border-none outline-none cursor-pointer",
|
|
26
|
-
"transition-[color,background-color,border-color,box-shadow] duration-moderate-02 ease-productive-standard",
|
|
27
|
-
"relative overflow-hidden",
|
|
28
|
-
"font-accent font-semibold leading-none text-center",
|
|
29
|
-
"bg-surface-overlay",
|
|
30
|
-
"first:rounded-tr-none first:rounded-br-none",
|
|
31
|
-
"last:rounded-tl-none last:rounded-bl-none"
|
|
32
|
-
],
|
|
33
|
-
{
|
|
34
|
-
variants: {
|
|
35
|
-
size: {
|
|
36
|
-
sm: "h-ds-sm-plus px-ds-05 py-ds-03 text-ds-sm",
|
|
37
|
-
md: "px-ds-02b py-ds-03 pl-ds-04 text-ds-md",
|
|
38
|
-
lg: "h-[56px] px-ds-06 py-ds-05 text-ds-md"
|
|
39
|
-
},
|
|
40
|
-
variant: {
|
|
41
|
-
filled: "text-accent-fg [text-shadow:0px_1px_1px_var(--color-text-shadow)]",
|
|
42
|
-
tonal: "text-surface-fg-subtle"
|
|
43
|
-
},
|
|
44
|
-
selected: {
|
|
45
|
-
true: "",
|
|
46
|
-
false: ""
|
|
47
|
-
},
|
|
48
|
-
isHovered: {
|
|
49
|
-
true: "",
|
|
50
|
-
false: ""
|
|
51
|
-
},
|
|
52
|
-
isDisabled: {
|
|
53
|
-
true: "cursor-not-allowed pointer-events-none border-none shadow-none [text-shadow:none]",
|
|
54
|
-
false: ""
|
|
55
|
-
}
|
|
56
|
-
},
|
|
57
|
-
compoundVariants: [
|
|
58
|
-
// Selected + filled — bg/shadow handled by motion indicator
|
|
59
|
-
{
|
|
60
|
-
selected: !0,
|
|
61
|
-
variant: "filled",
|
|
62
|
-
className: ""
|
|
63
|
-
},
|
|
64
|
-
// Selected + tonal — bg handled by motion indicator
|
|
65
|
-
{
|
|
66
|
-
selected: !0,
|
|
67
|
-
variant: "tonal",
|
|
68
|
-
className: "text-surface-fg"
|
|
69
|
-
},
|
|
70
|
-
// Hover + filled
|
|
71
|
-
{
|
|
72
|
-
isHovered: !0,
|
|
73
|
-
variant: "filled",
|
|
74
|
-
className: [
|
|
75
|
-
"bg-accent-9",
|
|
76
|
-
"shadow-[0px_4px_8px_0px_var(--color-accent-10),0px_1px_3px_0.05px_var(--color-surface-raised),inset_0px_8px_16px_0px_var(--color-inset-glow-strong),inset_0px_2px_0px_0px_var(--color-inset-glow-subtle)]"
|
|
77
|
-
].join(" ")
|
|
78
|
-
},
|
|
79
|
-
// Hover + tonal
|
|
80
|
-
{
|
|
81
|
-
isHovered: !0,
|
|
82
|
-
variant: "tonal",
|
|
83
|
-
className: "text-surface-fg"
|
|
84
|
-
},
|
|
85
|
-
// Disabled + filled
|
|
86
|
-
{
|
|
87
|
-
isDisabled: !0,
|
|
88
|
-
variant: "filled",
|
|
89
|
-
className: "text-surface-fg-subtle"
|
|
90
|
-
},
|
|
91
|
-
// Disabled + tonal
|
|
92
|
-
{
|
|
93
|
-
isDisabled: !0,
|
|
94
|
-
variant: "tonal",
|
|
95
|
-
className: "text-surface-fg-subtle"
|
|
96
|
-
},
|
|
97
|
-
// Filled + SVG icon fill
|
|
98
|
-
{
|
|
99
|
-
variant: "filled",
|
|
100
|
-
className: "[&_svg_path]:fill-accent-fg"
|
|
101
|
-
},
|
|
102
|
-
// Filled + disabled SVG icon fill
|
|
103
|
-
{
|
|
104
|
-
variant: "filled",
|
|
105
|
-
isDisabled: !0,
|
|
106
|
-
className: "[&_svg_path]:fill-disabled"
|
|
107
|
-
},
|
|
108
|
-
// Medium size last-child padding flip
|
|
109
|
-
{
|
|
110
|
-
size: "md",
|
|
111
|
-
className: "last:pl-ds-02b last:pr-ds-04"
|
|
112
|
-
}
|
|
113
|
-
],
|
|
114
|
-
defaultVariants: {
|
|
115
|
-
size: "md",
|
|
116
|
-
variant: "tonal",
|
|
117
|
-
selected: !1,
|
|
118
|
-
isHovered: !1,
|
|
119
|
-
isDisabled: !1
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
), F = {
|
|
123
|
-
filled: "bg-surface-overlay-light",
|
|
124
|
-
tonal: "bg-surface-overlay-dark"
|
|
125
|
-
}, V = {
|
|
126
|
-
small: "sm",
|
|
127
|
-
medium: "md",
|
|
128
|
-
big: "lg"
|
|
129
|
-
};
|
|
130
|
-
function K(u) {
|
|
131
|
-
return V[u] ?? u;
|
|
132
|
-
}
|
|
133
|
-
const U = D.forwardRef(
|
|
2
|
+
import { jsx as a, jsxs as S } from "react/jsx-runtime";
|
|
3
|
+
import * as o from "react";
|
|
4
|
+
import { cn as i } from "./lib/utils.js";
|
|
5
|
+
import { L as k, m as I } from "../_chunks/framer.js";
|
|
6
|
+
const C = {
|
|
7
|
+
sm: { button: "h-7 px-ds-04 text-ds-sm", icon: "h-3.5 w-3.5" },
|
|
8
|
+
md: { button: "h-8 px-ds-05 text-ds-md", icon: "h-4 w-4" },
|
|
9
|
+
lg: { button: "h-10 px-ds-06 text-ds-md", icon: "h-4 w-4" }
|
|
10
|
+
}, D = {
|
|
11
|
+
default: "bg-surface-overlay shadow-sm",
|
|
12
|
+
accent: "bg-accent-9"
|
|
13
|
+
}, N = {
|
|
14
|
+
default: "text-surface-fg",
|
|
15
|
+
accent: "text-accent-fg"
|
|
16
|
+
}, R = { type: "spring", stiffness: 400, damping: 30 }, z = o.forwardRef(
|
|
134
17
|
function({
|
|
135
|
-
size:
|
|
136
|
-
variant: l,
|
|
18
|
+
size: g = "md",
|
|
19
|
+
variant: l = "default",
|
|
137
20
|
options: s,
|
|
138
|
-
selectedId:
|
|
139
|
-
onSelect:
|
|
140
|
-
disabled:
|
|
141
|
-
className:
|
|
142
|
-
...
|
|
143
|
-
},
|
|
144
|
-
const
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
21
|
+
selectedId: d,
|
|
22
|
+
onSelect: u,
|
|
23
|
+
disabled: c = !1,
|
|
24
|
+
className: x,
|
|
25
|
+
...f
|
|
26
|
+
}, r) {
|
|
27
|
+
const p = o.useId(), m = o.useRef(null), h = o.useCallback(
|
|
28
|
+
(e) => {
|
|
29
|
+
m.current = e, typeof r == "function" ? r(e) : r && (r.current = e);
|
|
30
|
+
},
|
|
31
|
+
[r]
|
|
32
|
+
), v = (e) => {
|
|
33
|
+
if (c) return;
|
|
34
|
+
const t = s.findIndex((b) => b.id === d);
|
|
35
|
+
let n = t;
|
|
150
36
|
switch (e.key) {
|
|
151
37
|
case "ArrowLeft":
|
|
152
|
-
e.preventDefault(),
|
|
38
|
+
e.preventDefault(), n = t > 0 ? t - 1 : s.length - 1;
|
|
153
39
|
break;
|
|
154
40
|
case "ArrowRight":
|
|
155
|
-
e.preventDefault(),
|
|
41
|
+
e.preventDefault(), n = t < s.length - 1 ? t + 1 : 0;
|
|
156
42
|
break;
|
|
157
43
|
case "Home":
|
|
158
|
-
e.preventDefault(),
|
|
44
|
+
e.preventDefault(), n = 0;
|
|
159
45
|
break;
|
|
160
46
|
case "End":
|
|
161
|
-
e.preventDefault(),
|
|
47
|
+
e.preventDefault(), n = s.length - 1;
|
|
162
48
|
break;
|
|
163
49
|
default:
|
|
164
50
|
return;
|
|
165
51
|
}
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
52
|
+
u(s[n].id), requestAnimationFrame(() => {
|
|
53
|
+
m.current?.querySelectorAll('[role="tab"]')?.[n]?.focus();
|
|
54
|
+
});
|
|
55
|
+
}, { button: y, icon: w } = C[g];
|
|
56
|
+
return /* @__PURE__ */ a(
|
|
170
57
|
"div",
|
|
171
58
|
{
|
|
172
|
-
ref:
|
|
173
|
-
className: w(
|
|
174
|
-
"inline-flex gap-0 p-0 rounded-ds-full",
|
|
175
|
-
"bg-surface-raised shadow-inset",
|
|
176
|
-
"border border-solid border-surface-border-strong",
|
|
177
|
-
t
|
|
178
|
-
),
|
|
59
|
+
ref: h,
|
|
179
60
|
role: "tablist",
|
|
180
|
-
onKeyDown: N,
|
|
181
61
|
tabIndex: -1,
|
|
182
|
-
"aria-label": "Segmented control
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
text: e.text,
|
|
190
|
-
icon: e.icon,
|
|
191
|
-
isSelected: e.id === m,
|
|
192
|
-
onClick: () => n(e.id),
|
|
193
|
-
disabled: a,
|
|
194
|
-
isFocused: e.id === i,
|
|
195
|
-
onFocus: () => f(e.id),
|
|
196
|
-
onBlur: () => f(null),
|
|
197
|
-
layoutId: `${g}-segment-indicator`
|
|
198
|
-
},
|
|
199
|
-
e.id
|
|
200
|
-
)) })
|
|
201
|
-
}
|
|
202
|
-
);
|
|
203
|
-
}
|
|
204
|
-
);
|
|
205
|
-
U.displayName = "SegmentedControl";
|
|
206
|
-
const M = D.forwardRef(
|
|
207
|
-
function({
|
|
208
|
-
size: v,
|
|
209
|
-
variant: l,
|
|
210
|
-
text: s,
|
|
211
|
-
icon: m,
|
|
212
|
-
isSelected: n,
|
|
213
|
-
onClick: a,
|
|
214
|
-
disabled: t = !1,
|
|
215
|
-
isFocused: b,
|
|
216
|
-
onFocus: o,
|
|
217
|
-
onBlur: x,
|
|
218
|
-
layoutId: g = "segment-indicator"
|
|
219
|
-
}, i) {
|
|
220
|
-
const [f, h] = k("default"), { ripples: y, createRipple: N } = j(), e = () => {
|
|
221
|
-
!t && !b && h("hover");
|
|
222
|
-
}, p = () => {
|
|
223
|
-
t || h("default");
|
|
224
|
-
}, c = () => {
|
|
225
|
-
t || h("pressed");
|
|
226
|
-
}, _ = () => {
|
|
227
|
-
t || h("hover");
|
|
228
|
-
};
|
|
229
|
-
return /* @__PURE__ */ z(
|
|
230
|
-
"button",
|
|
231
|
-
{
|
|
232
|
-
ref: i,
|
|
233
|
-
className: w(
|
|
234
|
-
B({
|
|
235
|
-
size: v,
|
|
236
|
-
variant: l,
|
|
237
|
-
selected: n,
|
|
238
|
-
isHovered: f === "hover",
|
|
239
|
-
isDisabled: t
|
|
240
|
-
})
|
|
62
|
+
"aria-label": f["aria-label"] ?? "Segmented control",
|
|
63
|
+
onKeyDown: v,
|
|
64
|
+
className: i(
|
|
65
|
+
"inline-flex p-[3px] rounded-ds-lg",
|
|
66
|
+
"bg-surface-raised-hover border border-surface-border-subtle shadow-inset",
|
|
67
|
+
c && "opacity-action-disabled pointer-events-none",
|
|
68
|
+
x
|
|
241
69
|
),
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
role: "tab",
|
|
248
|
-
"aria-selected": n,
|
|
249
|
-
"aria-disabled": t,
|
|
250
|
-
onMouseEnter: e,
|
|
251
|
-
onMouseLeave: p,
|
|
252
|
-
onMouseDown: c,
|
|
253
|
-
onMouseUp: _,
|
|
254
|
-
onTouchStart: c,
|
|
255
|
-
onTouchEnd: _,
|
|
256
|
-
onFocus: o,
|
|
257
|
-
onBlur: x,
|
|
258
|
-
children: [
|
|
259
|
-
n && /* @__PURE__ */ d(
|
|
260
|
-
C.span,
|
|
261
|
-
{
|
|
262
|
-
layoutId: g,
|
|
263
|
-
className: w(
|
|
264
|
-
"absolute inset-0 rounded-ds-full pointer-events-none",
|
|
265
|
-
l === "filled" ? "bg-accent-9 shadow-[0px_1px_3px_0.05px_var(--color-accent-10),inset_0px_8px_16px_0px_var(--color-inset-glow-strong),inset_0px_2px_0px_0px_var(--color-inset-glow-subtle)]" : "bg-surface-raised-hover"
|
|
266
|
-
),
|
|
267
|
-
transition: L.smooth
|
|
268
|
-
}
|
|
269
|
-
),
|
|
270
|
-
/* @__PURE__ */ d(A, { children: y.map((r) => /* @__PURE__ */ d(
|
|
271
|
-
C.span,
|
|
70
|
+
...f,
|
|
71
|
+
children: /* @__PURE__ */ a(k, { id: p, children: s.map((e) => {
|
|
72
|
+
const t = e.id === d, n = e.icon;
|
|
73
|
+
return /* @__PURE__ */ S(
|
|
74
|
+
"button",
|
|
272
75
|
{
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
76
|
+
type: "button",
|
|
77
|
+
role: "tab",
|
|
78
|
+
"aria-selected": t,
|
|
79
|
+
tabIndex: t ? 0 : -1,
|
|
80
|
+
disabled: c,
|
|
81
|
+
onClick: () => u(e.id),
|
|
82
|
+
className: i(
|
|
83
|
+
"relative inline-flex items-center justify-center gap-ds-02 rounded-ds-md",
|
|
84
|
+
"font-medium transition-colors duration-fast-02 ease-productive-standard",
|
|
85
|
+
"outline-none focus-visible:ring-2 focus-visible:ring-accent-9 focus-visible:ring-offset-2",
|
|
86
|
+
y,
|
|
87
|
+
t ? N[l] : "text-surface-fg-muted hover:text-surface-fg"
|
|
276
88
|
),
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
89
|
+
children: [
|
|
90
|
+
t && /* @__PURE__ */ a(
|
|
91
|
+
I.span,
|
|
92
|
+
{
|
|
93
|
+
layoutId: "segment-pill",
|
|
94
|
+
className: i(
|
|
95
|
+
"absolute inset-0 rounded-ds-md pointer-events-none",
|
|
96
|
+
D[l]
|
|
97
|
+
),
|
|
98
|
+
transition: R
|
|
99
|
+
}
|
|
100
|
+
),
|
|
101
|
+
n && /* @__PURE__ */ a(n, { className: i("relative z-[1] shrink-0", w) }),
|
|
102
|
+
/* @__PURE__ */ a("span", { className: "relative z-[1]", children: e.text })
|
|
103
|
+
]
|
|
286
104
|
},
|
|
287
|
-
|
|
288
|
-
)
|
|
289
|
-
|
|
290
|
-
/* @__PURE__ */ d("span", { className: "relative z-[1] font-accent leading-none", children: s })
|
|
291
|
-
]
|
|
105
|
+
e.id
|
|
106
|
+
);
|
|
107
|
+
}) })
|
|
292
108
|
}
|
|
293
109
|
);
|
|
294
110
|
}
|
|
295
111
|
);
|
|
296
|
-
|
|
112
|
+
z.displayName = "SegmentedControl";
|
|
297
113
|
export {
|
|
298
|
-
|
|
299
|
-
M as SegmentedControlItem,
|
|
300
|
-
B as segmentedControlItemVariants
|
|
114
|
+
z as SegmentedControl
|
|
301
115
|
};
|
package/dist/ui/select.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsxs as c, jsx as e } from "react/jsx-runtime";
|
|
3
3
|
import * as o from "react";
|
|
4
|
-
import {
|
|
5
|
-
import { IconChevronDown as h, IconChevronUp as V, IconCheck as
|
|
6
|
-
import { a as
|
|
4
|
+
import { ao as n, ap as N, aq as m, ar as p, as as S, at as f, au as I, av as u, aw as b, ax as R, ay as z, az as g, aA as C, aB as j, aC as B } from "../_chunks/primitives.js";
|
|
5
|
+
import { IconChevronDown as h, IconChevronUp as V, IconCheck as T } from "@tabler/icons-react";
|
|
6
|
+
import { a as D } from "../_chunks/vendor-utils.js";
|
|
7
7
|
import { cn as t } from "./lib/utils.js";
|
|
8
8
|
import { tweens as U, springs as G } from "./lib/motion.js";
|
|
9
9
|
import { Icon as i } from "./icon.js";
|
|
10
10
|
import { m as L } from "../_chunks/framer.js";
|
|
11
|
-
const X = C, Y = B, Z = j, k =
|
|
11
|
+
const X = C, Y = B, Z = j, k = D(
|
|
12
12
|
"flex w-full items-center justify-between whitespace-nowrap rounded-ds-md placeholder:text-surface-fg-subtle focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent-9 focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-action-disabled [&>span]:line-clamp-1",
|
|
13
13
|
{
|
|
14
14
|
variants: {
|
|
@@ -128,7 +128,7 @@ const $ = o.forwardRef(({ className: s, children: r, ...a }, d) => /* @__PURE__
|
|
|
128
128
|
),
|
|
129
129
|
...a,
|
|
130
130
|
children: [
|
|
131
|
-
/* @__PURE__ */ e("span", { className: "absolute right-ds-03 flex h-ico-sm w-ico-sm items-center justify-center", children: /* @__PURE__ */ e(R, { children: /* @__PURE__ */ e(i, { icon:
|
|
131
|
+
/* @__PURE__ */ e("span", { className: "absolute right-ds-03 flex h-ico-sm w-ico-sm items-center justify-center", children: /* @__PURE__ */ e(R, { children: /* @__PURE__ */ e(i, { icon: T, size: "sm" }) }) }),
|
|
132
132
|
/* @__PURE__ */ e(z, { children: r })
|
|
133
133
|
]
|
|
134
134
|
}
|
package/dist/ui/separator.js
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx as g } from "react/jsx-runtime";
|
|
3
|
-
import * as
|
|
4
|
-
import {
|
|
5
|
-
import { cn as
|
|
6
|
-
const l =
|
|
3
|
+
import * as i from "react";
|
|
4
|
+
import { ai as e } from "../_chunks/primitives.js";
|
|
5
|
+
import { cn as d } from "./lib/utils.js";
|
|
6
|
+
const l = i.forwardRef(
|
|
7
7
|
({ className: t, orientation: a = "horizontal", decorative: o = !0, variant: r = "default", ...n }, s) => /* @__PURE__ */ g(
|
|
8
8
|
e,
|
|
9
9
|
{
|
|
10
10
|
ref: s,
|
|
11
11
|
decorative: o,
|
|
12
12
|
orientation: a,
|
|
13
|
-
className:
|
|
13
|
+
className: d(
|
|
14
14
|
"shrink-0",
|
|
15
15
|
r === "gradient" ? "bg-transparent bg-[image:linear-gradient(90deg,transparent,var(--color-surface-border)_15%,var(--color-surface-border)_85%,transparent)]" : r === "gradient-left" ? "bg-transparent bg-[image:linear-gradient(90deg,transparent,var(--color-surface-border)_30%)]" : r === "gradient-right" ? "bg-transparent bg-[image:linear-gradient(90deg,var(--color-surface-border)_70%,transparent)]" : "bg-surface-border",
|
|
16
16
|
a === "horizontal" ? "h-[1px] w-full" : "h-full w-[1px]",
|
package/dist/ui/sheet.d.ts
CHANGED
|
@@ -93,6 +93,8 @@ declare const sheetVariants: (props?: ({
|
|
|
93
93
|
* // These are just a few ways — feel free to combine props creatively!
|
|
94
94
|
*/
|
|
95
95
|
export interface SheetContentProps extends React.ComponentPropsWithoutRef<typeof SheetPrimitive.Content>, VariantProps<typeof sheetVariants> {
|
|
96
|
+
/** When true (default), Sheet slides from bottom on mobile with swipe-to-dismiss. */
|
|
97
|
+
responsive?: boolean;
|
|
96
98
|
}
|
|
97
99
|
declare const SheetContent: React.ForwardRefExoticComponent<SheetContentProps & React.RefAttributes<HTMLDivElement>>;
|
|
98
100
|
declare const SheetHeader: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
|
package/dist/ui/sheet.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sheet.d.ts","sourceRoot":"","sources":["../../src/ui/sheet.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,cAAc,MAAM,0BAA0B,CAAA;AAC1D,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;
|
|
1
|
+
{"version":3,"file":"sheet.d.ts","sourceRoot":"","sources":["../../src/ui/sheet.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,cAAc,MAAM,0BAA0B,CAAA;AAC1D,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAajE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,QAAA,MAAM,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,wBAAwB,CAAC,OAAO,cAAc,CAAC,IAAI,CAAC,CA+B/E,CAAA;AAGD,QAAA,MAAM,YAAY,6GAAyB,CAAA;AAE3C,QAAA,MAAM,UAAU,2GAAuB,CAAA;AAEvC,QAAA,MAAM,WAAW,4CAAwB,CAAA;AAEzC,QAAA,MAAM,YAAY,6JAehB,CAAA;AAmBF,QAAA,MAAM,aAAa;;8EAelB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,MAAM,WAAW,iBACf,SAAQ,KAAK,CAAC,wBAAwB,CAAC,OAAO,cAAc,CAAC,OAAO,CAAC,EACnE,YAAY,CAAC,OAAO,aAAa,CAAC;IACpC,qFAAqF;IACrF,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB;AAED,QAAA,MAAM,YAAY,0FAmEhB,CAAA;AAGF,QAAA,MAAM,WAAW,6GAWhB,CAAA;AAGD,QAAA,MAAM,WAAW,6GAWhB,CAAA;AAGD,QAAA,MAAM,UAAU,mKASd,CAAA;AAGF,QAAA,MAAM,gBAAgB,6KASpB,CAAA;AAGF,OAAO,EACL,KAAK,EACL,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,WAAW,EACX,WAAW,EACX,UAAU,EACV,gBAAgB,GACjB,CAAA"}
|