@parto-system-design/ui 1.1.1 → 1.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -47,8 +47,21 @@ import { PieSvgProps } from '@nivo/pie';
47
47
  import { HeatMapSvgProps } from '@nivo/heatmap';
48
48
 
49
49
  declare function cn(...inputs: ClassValue[]): string;
50
+ type SupportedLocale = 'fa' | 'ar' | 'en';
50
51
  /**
51
- * Format number to Instagram-style short format
52
+ * Convert digits in a string to Persian/Arabic numerals based on locale.
53
+ * @example convertToLocalNumbers('123', 'fa') => '۱۲۳'
54
+ * @example convertToLocalNumbers('123', 'en') => '123'
55
+ */
56
+ declare function convertToLocalNumbers(text: string | number, locale: SupportedLocale): string;
57
+ /**
58
+ * Format large numbers with locale-aware suffixes (K/M/B).
59
+ * @example formatLargeNumber(1500, 'fa') => '۱.۵ه'
60
+ * @example formatLargeNumber(1500, 'en') => '1.5K'
61
+ */
62
+ declare function formatLargeNumber(num: number, locale: SupportedLocale): string;
63
+ /**
64
+ * Format number to Instagram-style short format (English only).
52
65
  * @example formatNumber(123456, 'short') => '123K'
53
66
  * @example formatNumber(123456, 'exact') => '123,456'
54
67
  */
@@ -139,6 +152,125 @@ declare function getPersianYearsForDropdown(fromYear: number, toYear: number): A
139
152
  label: string;
140
153
  }>;
141
154
 
155
+ type EngagementTier = 'excellent' | 'veryGood' | 'good' | 'average' | 'couldBeImproved' | 'low';
156
+ type FollowerGroup = 'nano' | 'micro' | 'mid' | 'macro' | 'mega';
157
+ interface EngagementRange {
158
+ label: string;
159
+ min: number;
160
+ max: number;
161
+ color: string;
162
+ colorFaded: string;
163
+ hoverColor: string;
164
+ }
165
+ interface EngagementRangeWithDisplay extends EngagementRange {
166
+ display: string;
167
+ }
168
+ interface GroupThresholds {
169
+ followers: [number, number];
170
+ excellent: number;
171
+ veryGood: [number, number];
172
+ good: [number, number];
173
+ average: [number, number];
174
+ couldBeImproved: [number, number];
175
+ low: number;
176
+ }
177
+ declare const ENGAGEMENT_RANGES: Record<FollowerGroup, GroupThresholds>;
178
+ declare const TIER_LABELS: Record<SupportedLocale, Record<EngagementTier, string>>;
179
+ declare const GROUP_LABELS: Record<SupportedLocale, Record<FollowerGroup, string>>;
180
+ declare function getFollowerGroup(followers: number): FollowerGroup;
181
+ declare function getEngagementRanges(followers: number, locale: SupportedLocale): EngagementRangeWithDisplay[];
182
+ declare function getCurrentRangeIndex(currentRate: number, ranges: EngagementRange[]): number;
183
+
184
+ /**
185
+ * Default UI strings for components that need localized text.
186
+ * Persian (fa) is the default locale for backward compatibility.
187
+ */
188
+ declare const UI_STRINGS: {
189
+ readonly fa: {
190
+ readonly noResults: "نتیجه‌ای یافت نشد";
191
+ readonly suggestions: "پیشنهادها";
192
+ readonly select: "انتخاب کنید";
193
+ readonly noOptionsFound: "موردی یافت نشد";
194
+ readonly search: "جستجو...";
195
+ readonly clearAll: "پاک کردن همه";
196
+ readonly selectDate: "انتخاب تاریخ";
197
+ readonly selectDateRange: "انتخاب بازه تاریخ";
198
+ readonly errorLoadingData: "خطا در بارگذاری داده‌ها";
199
+ readonly retry: "تلاش مجدد";
200
+ readonly remove: "حذف";
201
+ readonly noUsersFound: "کاربری یافت نشد";
202
+ readonly goToPreviousPage: "رفتن به صفحه قبلی";
203
+ readonly goToNextPage: "رفتن به صفحه بعدی";
204
+ readonly previous: "قبلی";
205
+ readonly next: "بعدی";
206
+ readonly actions: "عملیات";
207
+ };
208
+ readonly ar: {
209
+ readonly noResults: "لم يتم العثور على نتائج";
210
+ readonly suggestions: "اقتراحات";
211
+ readonly select: "اختر";
212
+ readonly noOptionsFound: "لم يتم العثور على خيارات";
213
+ readonly search: "بحث...";
214
+ readonly clearAll: "مسح الكل";
215
+ readonly selectDate: "اختر تاريخ";
216
+ readonly selectDateRange: "اختر نطاق التاريخ";
217
+ readonly errorLoadingData: "خطأ في تحميل البيانات";
218
+ readonly retry: "إعادة المحاولة";
219
+ readonly remove: "حذف";
220
+ readonly noUsersFound: "لم يتم العثور على مستخدمين";
221
+ readonly goToPreviousPage: "الانتقال إلى الصفحة السابقة";
222
+ readonly goToNextPage: "الانتقال إلى الصفحة التالية";
223
+ readonly previous: "السابق";
224
+ readonly next: "التالي";
225
+ readonly actions: "إجراءات";
226
+ };
227
+ readonly en: {
228
+ readonly noResults: "No results found";
229
+ readonly suggestions: "Suggestions";
230
+ readonly select: "Select";
231
+ readonly noOptionsFound: "No options found";
232
+ readonly search: "Search...";
233
+ readonly clearAll: "Clear all";
234
+ readonly selectDate: "Select date";
235
+ readonly selectDateRange: "Select date range";
236
+ readonly errorLoadingData: "Error loading data";
237
+ readonly retry: "Retry";
238
+ readonly remove: "Remove";
239
+ readonly noUsersFound: "No users found";
240
+ readonly goToPreviousPage: "Go to previous page";
241
+ readonly goToNextPage: "Go to next page";
242
+ readonly previous: "Previous";
243
+ readonly next: "Next";
244
+ readonly actions: "Actions";
245
+ };
246
+ };
247
+ type UIStringKeys = keyof (typeof UI_STRINGS)['fa'];
248
+ type UIStrings = Record<UIStringKeys, string>;
249
+ /**
250
+ * Get UI strings for a given locale.
251
+ * Falls back to 'fa' for unknown locales.
252
+ */
253
+ declare function getUIStrings(locale?: SupportedLocale): UIStrings;
254
+
255
+ /**
256
+ * Standard size scale used across the design system.
257
+ * Components should accept these values for their `size` prop.
258
+ *
259
+ * Primary: xs | sm | md | lg | xl
260
+ * Legacy: tiny | small | medium | large | xlarge (deprecated, kept for backward compat)
261
+ */
262
+ type StandardSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
263
+ /** @deprecated Use `StandardSize` instead */
264
+ type LegacySize = 'tiny' | 'small' | 'medium' | 'large' | 'xlarge';
265
+ /** Size type that accepts both standard and legacy names during migration */
266
+ type SizeWithLegacy = StandardSize | LegacySize;
267
+ /**
268
+ * Normalizes a size value to standard names (xs|sm|md|lg|xl).
269
+ * Accepts both legacy and standard names.
270
+ * Emits a console.warn in development for legacy names.
271
+ */
272
+ declare function normalizeSize(size: SizeWithLegacy): StandardSize;
273
+
142
274
  type Icon = LucideIcon;
143
275
  /**
144
276
  * Icon Collection for Parto Design System
@@ -158,9 +290,21 @@ type Icon = LucideIcon;
158
290
  declare const Icons: Record<string, React$1.FC<React$1.SVGProps<SVGSVGElement>> | LucideIcon>;
159
291
 
160
292
  declare function Accordion({ ...props }: React$1.ComponentProps<typeof AccordionPrimitive.Root>): react_jsx_runtime.JSX.Element;
293
+ declare namespace Accordion {
294
+ var displayName: string;
295
+ }
161
296
  declare function AccordionItem({ className, ...props }: React$1.ComponentProps<typeof AccordionPrimitive.Item>): react_jsx_runtime.JSX.Element;
297
+ declare namespace AccordionItem {
298
+ var displayName: string;
299
+ }
162
300
  declare function AccordionTrigger({ className, children, ...props }: React$1.ComponentProps<typeof AccordionPrimitive.Trigger>): react_jsx_runtime.JSX.Element;
301
+ declare namespace AccordionTrigger {
302
+ var displayName: string;
303
+ }
163
304
  declare function AccordionContent({ className, children, ...props }: React$1.ComponentProps<typeof AccordionPrimitive.Content>): react_jsx_runtime.JSX.Element;
305
+ declare namespace AccordionContent {
306
+ var displayName: string;
307
+ }
164
308
 
165
309
  declare const Alert: React$1.ForwardRefExoticComponent<React$1.HTMLAttributes<HTMLDivElement> & VariantProps<(props?: ({
166
310
  variant?: "info" | "default" | "success" | "warning" | "destructive" | null | undefined;
@@ -183,7 +327,7 @@ declare const AlertDialogCancel: React$1.ForwardRefExoticComponent<Omit<AlertDia
183
327
  interface AutocompleteItem {
184
328
  value: string;
185
329
  label: string;
186
- [key: string]: any;
330
+ [key: string]: unknown;
187
331
  }
188
332
  interface AutocompleteProps<T extends AutocompleteItem = AutocompleteItem> extends Omit<React$1.InputHTMLAttributes<HTMLInputElement>, "value" | "onChange" | "onSelect" | "size"> {
189
333
  /**
@@ -269,6 +413,11 @@ interface AutocompleteProps<T extends AutocompleteItem = AutocompleteItem> exten
269
413
  * Direction
270
414
  */
271
415
  dir?: "rtl" | "ltr";
416
+ /**
417
+ * Locale for default strings
418
+ * @default "fa"
419
+ */
420
+ locale?: SupportedLocale;
272
421
  }
273
422
  declare const Autocomplete: React$1.ForwardRefExoticComponent<AutocompleteProps<AutocompleteItem> & React$1.RefAttributes<HTMLInputElement>>;
274
423
 
@@ -278,7 +427,7 @@ interface UserItem {
278
427
  username: string;
279
428
  avatar?: string;
280
429
  followers: number;
281
- [key: string]: any;
430
+ [key: string]: unknown;
282
431
  }
283
432
  interface UserAutocompleteProps extends Omit<React$1.InputHTMLAttributes<HTMLInputElement>, "value" | "onChange" | "onSelect" | "size"> {
284
433
  /**
@@ -354,6 +503,11 @@ interface UserAutocompleteProps extends Omit<React$1.InputHTMLAttributes<HTMLInp
354
503
  * Direction
355
504
  */
356
505
  dir?: "rtl" | "ltr";
506
+ /**
507
+ * Locale for default strings
508
+ * @default "fa"
509
+ */
510
+ locale?: SupportedLocale;
357
511
  /**
358
512
  * فعال‌سازی infinite scroll
359
513
  * Enable infinite scroll
@@ -384,14 +538,26 @@ interface UserAutocompleteProps extends Omit<React$1.InputHTMLAttributes<HTMLInp
384
538
  declare const UserAutocomplete: React$1.ForwardRefExoticComponent<UserAutocompleteProps & React$1.RefAttributes<HTMLInputElement>>;
385
539
 
386
540
  declare function AspectRatio({ className, ...props }: React$1.ComponentProps<typeof AspectRatioPrimitive.Root>): react_jsx_runtime.JSX.Element;
541
+ declare namespace AspectRatio {
542
+ var displayName: string;
543
+ }
387
544
 
388
545
  declare function Avatar({ className, ...props }: React$1.ComponentProps<typeof AvatarPrimitive.Root>): react_jsx_runtime.JSX.Element;
546
+ declare namespace Avatar {
547
+ var displayName: string;
548
+ }
389
549
  declare function AvatarImage({ className, ...props }: React$1.ComponentProps<typeof AvatarPrimitive.Image>): react_jsx_runtime.JSX.Element;
550
+ declare namespace AvatarImage {
551
+ var displayName: string;
552
+ }
390
553
  declare function AvatarFallback({ className, ...props }: React$1.ComponentProps<typeof AvatarPrimitive.Fallback>): react_jsx_runtime.JSX.Element;
554
+ declare namespace AvatarFallback {
555
+ var displayName: string;
556
+ }
391
557
 
392
558
  declare const badgeVariants: (props?: ({
393
559
  variant?: "default" | "success" | "warning" | "destructive" | "secondary" | "outline" | "brand" | null | undefined;
394
- size?: "small" | "tiny" | "large" | null | undefined;
560
+ size?: "xs" | "sm" | "md" | "lg" | "tiny" | "small" | "large" | null | undefined;
395
561
  dot?: boolean | null | undefined;
396
562
  } & class_variance_authority_types.ClassProp) | undefined) => string;
397
563
  interface BadgeProps extends React$1.HTMLAttributes<HTMLDivElement>, VariantProps<typeof badgeVariants> {
@@ -399,22 +565,46 @@ interface BadgeProps extends React$1.HTMLAttributes<HTMLDivElement>, VariantProp
399
565
  dotPosition?: "start" | "end";
400
566
  }
401
567
  declare function Badge({ className, variant, size, dot, dotPosition, children, ...props }: BadgeProps): react_jsx_runtime.JSX.Element;
568
+ declare namespace Badge {
569
+ var displayName: string;
570
+ }
402
571
 
403
572
  declare function Breadcrumb({ ...props }: React$1.ComponentProps<"nav">): react_jsx_runtime.JSX.Element;
573
+ declare namespace Breadcrumb {
574
+ var displayName: string;
575
+ }
404
576
  declare function BreadcrumbList({ className, dir, ...props }: React$1.ComponentProps<"ol">): react_jsx_runtime.JSX.Element;
577
+ declare namespace BreadcrumbList {
578
+ var displayName: string;
579
+ }
405
580
  declare function BreadcrumbItem({ className, ...props }: React$1.ComponentProps<"li">): react_jsx_runtime.JSX.Element;
581
+ declare namespace BreadcrumbItem {
582
+ var displayName: string;
583
+ }
406
584
  declare function BreadcrumbLink({ asChild, className, ...props }: React$1.ComponentProps<"a"> & {
407
585
  asChild?: boolean;
408
586
  }): react_jsx_runtime.JSX.Element;
587
+ declare namespace BreadcrumbLink {
588
+ var displayName: string;
589
+ }
409
590
  declare function BreadcrumbPage({ className, ...props }: React$1.ComponentProps<"span">): react_jsx_runtime.JSX.Element;
591
+ declare namespace BreadcrumbPage {
592
+ var displayName: string;
593
+ }
410
594
  declare function BreadcrumbSeparator({ children, className, ...props }: React$1.ComponentProps<"li">): react_jsx_runtime.JSX.Element;
595
+ declare namespace BreadcrumbSeparator {
596
+ var displayName: string;
597
+ }
411
598
  declare function BreadcrumbEllipsis({ className, ...props }: React$1.ComponentProps<"span">): react_jsx_runtime.JSX.Element;
599
+ declare namespace BreadcrumbEllipsis {
600
+ var displayName: string;
601
+ }
412
602
 
413
603
  type ButtonVariantProps = VariantProps<typeof buttonVariants>;
414
604
  declare const buttonVariants: (props?: ({
415
605
  variant?: "link" | "text" | "default" | "warning" | "destructive" | "primary" | "secondary" | "outline" | "dashed" | "danger" | "ghost" | null | undefined;
416
606
  block?: boolean | null | undefined;
417
- size?: "small" | "default" | "tiny" | "medium" | "large" | "xlarge" | "sm" | "lg" | "icon" | null | undefined;
607
+ size?: "xs" | "sm" | "md" | "lg" | "xl" | "tiny" | "small" | "medium" | "large" | "xlarge" | "default" | "icon" | null | undefined;
418
608
  disabled?: boolean | null | undefined;
419
609
  rounded?: boolean | null | undefined;
420
610
  defaultVariants?: "size" | "variant" | null | undefined;
@@ -431,6 +621,8 @@ interface ButtonProps extends Omit<React.ButtonHTMLAttributes<HTMLButtonElement>
431
621
  icon?: React.ReactNode;
432
622
  iconLeft?: React.ReactNode;
433
623
  iconRight?: React.ReactNode;
624
+ isLoading?: boolean;
625
+ /** @deprecated Use `isLoading` instead */
434
626
  loading?: boolean;
435
627
  block?: boolean;
436
628
  rounded?: boolean;
@@ -446,15 +638,24 @@ declare const buttonGroupVariants: (props?: ({
446
638
  orientation?: "horizontal" | "vertical" | null | undefined;
447
639
  } & class_variance_authority_types.ClassProp) | undefined) => string;
448
640
  declare function ButtonGroup({ className, orientation, ...props }: React.ComponentProps<"div"> & VariantProps<typeof buttonGroupVariants>): react_jsx_runtime.JSX.Element;
641
+ declare namespace ButtonGroup {
642
+ var displayName: string;
643
+ }
449
644
  declare function ButtonGroupText({ className, asChild, ...props }: React.ComponentProps<"div"> & {
450
645
  asChild?: boolean;
451
646
  }): react_jsx_runtime.JSX.Element;
647
+ declare namespace ButtonGroupText {
648
+ var displayName: string;
649
+ }
452
650
  declare function ButtonGroupSeparator({ className, orientation, ...props }: React.ComponentProps<typeof Separator>): react_jsx_runtime.JSX.Element;
651
+ declare namespace ButtonGroupSeparator {
652
+ var displayName: string;
653
+ }
453
654
 
454
655
  type CalendarProps = {
455
656
  usePersianCalendar?: boolean;
456
657
  className?: string;
457
- classNames?: any;
658
+ classNames?: Partial<Record<string, string>>;
458
659
  showOutsideDays?: boolean;
459
660
  } & (React$1.ComponentProps<typeof DayPicker> | React$1.ComponentProps<typeof DayPicker$1>);
460
661
  declare function Calendar({ className, classNames, showOutsideDays, usePersianCalendar, ...props }: CalendarProps): react_jsx_runtime.JSX.Element;
@@ -462,7 +663,13 @@ declare namespace Calendar {
462
663
  var displayName: string;
463
664
  }
464
665
 
465
- declare const Card: React$1.ForwardRefExoticComponent<React$1.HTMLAttributes<HTMLDivElement> & React$1.RefAttributes<HTMLDivElement>>;
666
+ interface CardProps extends React$1.HTMLAttributes<HTMLDivElement> {
667
+ /** Visual variant */
668
+ variant?: "default" | "outlined" | "elevated" | "interactive";
669
+ /** Content density / padding size */
670
+ size?: "sm" | "md" | "lg";
671
+ }
672
+ declare const Card: React$1.ForwardRefExoticComponent<CardProps & React$1.RefAttributes<HTMLDivElement>>;
466
673
  declare const CardHeader: React$1.ForwardRefExoticComponent<React$1.HTMLAttributes<HTMLDivElement> & React$1.RefAttributes<HTMLDivElement>>;
467
674
  declare const CardTitle: React$1.ForwardRefExoticComponent<React$1.HTMLAttributes<HTMLHeadingElement> & React$1.RefAttributes<HTMLParagraphElement>>;
468
675
  declare const CardDescription: React$1.ForwardRefExoticComponent<React$1.HTMLAttributes<HTMLParagraphElement> & React$1.RefAttributes<HTMLParagraphElement>>;
@@ -480,16 +687,43 @@ type CarouselProps = {
480
687
  setApi?: (api: CarouselApi) => void;
481
688
  };
482
689
  declare function Carousel({ orientation, opts, setApi, plugins, className, children, dir, ...props }: React$1.ComponentProps<"div"> & CarouselProps): react_jsx_runtime.JSX.Element;
690
+ declare namespace Carousel {
691
+ var displayName: string;
692
+ }
483
693
  declare function CarouselContent({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
694
+ declare namespace CarouselContent {
695
+ var displayName: string;
696
+ }
484
697
  declare function CarouselItem({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
698
+ declare namespace CarouselItem {
699
+ var displayName: string;
700
+ }
485
701
  declare function CarouselPrevious({ className, variant, size, ...props }: React$1.ComponentProps<typeof Button>): react_jsx_runtime.JSX.Element;
702
+ declare namespace CarouselPrevious {
703
+ var displayName: string;
704
+ }
486
705
  declare function CarouselNext({ className, variant, size, ...props }: React$1.ComponentProps<typeof Button>): react_jsx_runtime.JSX.Element;
706
+ declare namespace CarouselNext {
707
+ var displayName: string;
708
+ }
487
709
 
488
710
  declare function Checkbox({ className, ...props }: React$1.ComponentProps<typeof CheckboxPrimitive.Root>): react_jsx_runtime.JSX.Element;
711
+ declare namespace Checkbox {
712
+ var displayName: string;
713
+ }
489
714
 
490
715
  declare function Collapsible({ ...props }: React.ComponentProps<typeof CollapsiblePrimitive.Root>): react_jsx_runtime.JSX.Element;
716
+ declare namespace Collapsible {
717
+ var displayName: string;
718
+ }
491
719
  declare function CollapsibleTrigger({ ...props }: React.ComponentProps<typeof CollapsiblePrimitive.CollapsibleTrigger>): react_jsx_runtime.JSX.Element;
720
+ declare namespace CollapsibleTrigger {
721
+ var displayName: string;
722
+ }
492
723
  declare function CollapsibleContent({ ...props }: React.ComponentProps<typeof CollapsiblePrimitive.CollapsibleContent>): react_jsx_runtime.JSX.Element;
724
+ declare namespace CollapsibleContent {
725
+ var displayName: string;
726
+ }
493
727
 
494
728
  declare const Dialog: React$1.FC<DialogPrimitive.DialogProps>;
495
729
  declare const DialogTrigger: React$1.ForwardRefExoticComponent<DialogPrimitive.DialogTriggerProps & React$1.RefAttributes<HTMLButtonElement>>;
@@ -509,18 +743,45 @@ declare const DialogTitle: React$1.ForwardRefExoticComponent<Omit<DialogPrimitiv
509
743
  declare const DialogDescription: React$1.ForwardRefExoticComponent<Omit<DialogPrimitive.DialogDescriptionProps & React$1.RefAttributes<HTMLParagraphElement>, "ref"> & React$1.RefAttributes<HTMLParagraphElement>>;
510
744
 
511
745
  declare function Command({ className, ...props }: React$1.ComponentProps<typeof Command$1>): react_jsx_runtime.JSX.Element;
746
+ declare namespace Command {
747
+ var displayName: string;
748
+ }
512
749
  declare function CommandDialog({ title, description, children, className, ...props }: React$1.ComponentProps<typeof Dialog> & {
513
750
  title?: string;
514
751
  description?: string;
515
752
  className?: string;
516
753
  }): react_jsx_runtime.JSX.Element;
754
+ declare namespace CommandDialog {
755
+ var displayName: string;
756
+ }
517
757
  declare function CommandInput({ className, ...props }: React$1.ComponentProps<typeof Command$1.Input>): react_jsx_runtime.JSX.Element;
758
+ declare namespace CommandInput {
759
+ var displayName: string;
760
+ }
518
761
  declare function CommandList({ className, ...props }: React$1.ComponentProps<typeof Command$1.List>): react_jsx_runtime.JSX.Element;
762
+ declare namespace CommandList {
763
+ var displayName: string;
764
+ }
519
765
  declare function CommandEmpty({ ...props }: React$1.ComponentProps<typeof Command$1.Empty>): react_jsx_runtime.JSX.Element;
766
+ declare namespace CommandEmpty {
767
+ var displayName: string;
768
+ }
520
769
  declare function CommandGroup({ className, ...props }: React$1.ComponentProps<typeof Command$1.Group>): react_jsx_runtime.JSX.Element;
770
+ declare namespace CommandGroup {
771
+ var displayName: string;
772
+ }
521
773
  declare function CommandSeparator({ className, ...props }: React$1.ComponentProps<typeof Command$1.Separator>): react_jsx_runtime.JSX.Element;
774
+ declare namespace CommandSeparator {
775
+ var displayName: string;
776
+ }
522
777
  declare function CommandItem({ className, ...props }: React$1.ComponentProps<typeof Command$1.Item>): react_jsx_runtime.JSX.Element;
778
+ declare namespace CommandItem {
779
+ var displayName: string;
780
+ }
523
781
  declare function CommandShortcut({ className, ...props }: React$1.ComponentProps<"span">): react_jsx_runtime.JSX.Element;
782
+ declare namespace CommandShortcut {
783
+ var displayName: string;
784
+ }
524
785
 
525
786
  interface CommentTag {
526
787
  title: string;
@@ -552,27 +813,72 @@ interface CommentCardProps extends Omit<React$1.HTMLAttributes<HTMLDivElement>,
552
813
  declare const CommentCard: React$1.ForwardRefExoticComponent<CommentCardProps & React$1.RefAttributes<HTMLDivElement>>;
553
814
 
554
815
  declare function ContextMenu({ ...props }: React$1.ComponentProps<typeof ContextMenuPrimitive.Root>): react_jsx_runtime.JSX.Element;
816
+ declare namespace ContextMenu {
817
+ var displayName: string;
818
+ }
555
819
  declare function ContextMenuTrigger({ ...props }: React$1.ComponentProps<typeof ContextMenuPrimitive.Trigger>): react_jsx_runtime.JSX.Element;
820
+ declare namespace ContextMenuTrigger {
821
+ var displayName: string;
822
+ }
556
823
  declare function ContextMenuGroup({ ...props }: React$1.ComponentProps<typeof ContextMenuPrimitive.Group>): react_jsx_runtime.JSX.Element;
824
+ declare namespace ContextMenuGroup {
825
+ var displayName: string;
826
+ }
557
827
  declare function ContextMenuPortal({ ...props }: React$1.ComponentProps<typeof ContextMenuPrimitive.Portal>): react_jsx_runtime.JSX.Element;
828
+ declare namespace ContextMenuPortal {
829
+ var displayName: string;
830
+ }
558
831
  declare function ContextMenuSub({ ...props }: React$1.ComponentProps<typeof ContextMenuPrimitive.Sub>): react_jsx_runtime.JSX.Element;
832
+ declare namespace ContextMenuSub {
833
+ var displayName: string;
834
+ }
559
835
  declare function ContextMenuRadioGroup({ ...props }: React$1.ComponentProps<typeof ContextMenuPrimitive.RadioGroup>): react_jsx_runtime.JSX.Element;
836
+ declare namespace ContextMenuRadioGroup {
837
+ var displayName: string;
838
+ }
560
839
  declare function ContextMenuSubTrigger({ className, inset, children, ...props }: React$1.ComponentProps<typeof ContextMenuPrimitive.SubTrigger> & {
561
840
  inset?: boolean;
562
841
  }): react_jsx_runtime.JSX.Element;
842
+ declare namespace ContextMenuSubTrigger {
843
+ var displayName: string;
844
+ }
563
845
  declare function ContextMenuSubContent({ className, ...props }: React$1.ComponentProps<typeof ContextMenuPrimitive.SubContent>): react_jsx_runtime.JSX.Element;
846
+ declare namespace ContextMenuSubContent {
847
+ var displayName: string;
848
+ }
564
849
  declare function ContextMenuContent({ className, ...props }: React$1.ComponentProps<typeof ContextMenuPrimitive.Content>): react_jsx_runtime.JSX.Element;
850
+ declare namespace ContextMenuContent {
851
+ var displayName: string;
852
+ }
565
853
  declare function ContextMenuItem({ className, inset, variant, ...props }: React$1.ComponentProps<typeof ContextMenuPrimitive.Item> & {
566
854
  inset?: boolean;
567
855
  variant?: "default" | "destructive";
568
856
  }): react_jsx_runtime.JSX.Element;
857
+ declare namespace ContextMenuItem {
858
+ var displayName: string;
859
+ }
569
860
  declare function ContextMenuCheckboxItem({ className, children, checked, ...props }: React$1.ComponentProps<typeof ContextMenuPrimitive.CheckboxItem>): react_jsx_runtime.JSX.Element;
861
+ declare namespace ContextMenuCheckboxItem {
862
+ var displayName: string;
863
+ }
570
864
  declare function ContextMenuRadioItem({ className, children, ...props }: React$1.ComponentProps<typeof ContextMenuPrimitive.RadioItem>): react_jsx_runtime.JSX.Element;
865
+ declare namespace ContextMenuRadioItem {
866
+ var displayName: string;
867
+ }
571
868
  declare function ContextMenuLabel({ className, inset, ...props }: React$1.ComponentProps<typeof ContextMenuPrimitive.Label> & {
572
869
  inset?: boolean;
573
870
  }): react_jsx_runtime.JSX.Element;
871
+ declare namespace ContextMenuLabel {
872
+ var displayName: string;
873
+ }
574
874
  declare function ContextMenuSeparator({ className, ...props }: React$1.ComponentProps<typeof ContextMenuPrimitive.Separator>): react_jsx_runtime.JSX.Element;
875
+ declare namespace ContextMenuSeparator {
876
+ var displayName: string;
877
+ }
575
878
  declare function ContextMenuShortcut({ className, ...props }: React$1.ComponentProps<"span">): react_jsx_runtime.JSX.Element;
879
+ declare namespace ContextMenuShortcut {
880
+ var displayName: string;
881
+ }
576
882
 
577
883
  interface DatePickerProps {
578
884
  /**
@@ -611,8 +917,16 @@ interface DatePickerProps {
611
917
  * Selection mode: 'single' for single date, 'range' for date range
612
918
  */
613
919
  mode?: 'single' | 'range';
920
+ /**
921
+ * Locale for default strings
922
+ * @default derived from usePersianCalendar
923
+ */
924
+ locale?: SupportedLocale;
925
+ }
926
+ declare function DatePicker({ value, onChange, usePersianCalendar, placeholder, className, disabled, numberOfMonths, showPresets, mode, locale, }: DatePickerProps): react_jsx_runtime.JSX.Element;
927
+ declare namespace DatePicker {
928
+ var displayName: string;
614
929
  }
615
- declare function DatePicker({ value, onChange, usePersianCalendar, placeholder, className, disabled, numberOfMonths, showPresets, mode, }: DatePickerProps): react_jsx_runtime.JSX.Element;
616
930
 
617
931
  interface DateRangePickerProps {
618
932
  /**
@@ -669,76 +983,201 @@ interface DateRangePickerProps {
669
983
  toYear?: number;
670
984
  }
671
985
  declare function DateRangePicker({ value, onChange, label, placeholder, usePersianCalendar, numberOfMonths, minDate, maxDate, className, disabled, captionLayout, fromYear, toYear, }: DateRangePickerProps): react_jsx_runtime.JSX.Element;
986
+ declare namespace DateRangePicker {
987
+ var displayName: string;
988
+ }
672
989
  /**
673
990
  * Simplified version without label (inline usage)
674
991
  */
675
992
  declare function DateRangePickerInline({ value, onChange, placeholder, usePersianCalendar, numberOfMonths, minDate, maxDate, className, disabled, captionLayout, fromYear, toYear, }: Omit<DateRangePickerProps, "label">): react_jsx_runtime.JSX.Element;
993
+ declare namespace DateRangePickerInline {
994
+ var displayName: string;
995
+ }
676
996
 
677
997
  declare function Drawer({ ...props }: React$1.ComponentProps<typeof Drawer$1.Root>): react_jsx_runtime.JSX.Element;
998
+ declare namespace Drawer {
999
+ var displayName: string;
1000
+ }
678
1001
  declare function DrawerTrigger({ ...props }: React$1.ComponentProps<typeof Drawer$1.Trigger>): react_jsx_runtime.JSX.Element;
1002
+ declare namespace DrawerTrigger {
1003
+ var displayName: string;
1004
+ }
679
1005
  declare function DrawerPortal({ ...props }: React$1.ComponentProps<typeof Drawer$1.Portal>): react_jsx_runtime.JSX.Element;
1006
+ declare namespace DrawerPortal {
1007
+ var displayName: string;
1008
+ }
680
1009
  declare function DrawerClose({ ...props }: React$1.ComponentProps<typeof Drawer$1.Close>): react_jsx_runtime.JSX.Element;
1010
+ declare namespace DrawerClose {
1011
+ var displayName: string;
1012
+ }
681
1013
  declare function DrawerOverlay({ className, ...props }: React$1.ComponentProps<typeof Drawer$1.Overlay>): react_jsx_runtime.JSX.Element;
1014
+ declare namespace DrawerOverlay {
1015
+ var displayName: string;
1016
+ }
682
1017
  declare function DrawerContent({ className, children, ...props }: React$1.ComponentProps<typeof Drawer$1.Content>): react_jsx_runtime.JSX.Element;
1018
+ declare namespace DrawerContent {
1019
+ var displayName: string;
1020
+ }
683
1021
  declare function DrawerHeader({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
1022
+ declare namespace DrawerHeader {
1023
+ var displayName: string;
1024
+ }
684
1025
  declare function DrawerFooter({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
1026
+ declare namespace DrawerFooter {
1027
+ var displayName: string;
1028
+ }
685
1029
  declare function DrawerTitle({ className, ...props }: React$1.ComponentProps<typeof Drawer$1.Title>): react_jsx_runtime.JSX.Element;
1030
+ declare namespace DrawerTitle {
1031
+ var displayName: string;
1032
+ }
686
1033
  declare function DrawerDescription({ className, ...props }: React$1.ComponentProps<typeof Drawer$1.Description>): react_jsx_runtime.JSX.Element;
1034
+ declare namespace DrawerDescription {
1035
+ var displayName: string;
1036
+ }
687
1037
 
688
1038
  declare function DropdownMenu({ ...props }: React$1.ComponentProps<typeof DropdownMenuPrimitive.Root>): react_jsx_runtime.JSX.Element;
1039
+ declare namespace DropdownMenu {
1040
+ var displayName: string;
1041
+ }
689
1042
  declare function DropdownMenuPortal({ ...props }: React$1.ComponentProps<typeof DropdownMenuPrimitive.Portal>): react_jsx_runtime.JSX.Element;
1043
+ declare namespace DropdownMenuPortal {
1044
+ var displayName: string;
1045
+ }
690
1046
  declare function DropdownMenuTrigger({ ...props }: React$1.ComponentProps<typeof DropdownMenuPrimitive.Trigger>): react_jsx_runtime.JSX.Element;
1047
+ declare namespace DropdownMenuTrigger {
1048
+ var displayName: string;
1049
+ }
691
1050
  declare function DropdownMenuContent({ className, sideOffset, ...props }: React$1.ComponentProps<typeof DropdownMenuPrimitive.Content>): react_jsx_runtime.JSX.Element;
1051
+ declare namespace DropdownMenuContent {
1052
+ var displayName: string;
1053
+ }
692
1054
  declare function DropdownMenuGroup({ ...props }: React$1.ComponentProps<typeof DropdownMenuPrimitive.Group>): react_jsx_runtime.JSX.Element;
1055
+ declare namespace DropdownMenuGroup {
1056
+ var displayName: string;
1057
+ }
693
1058
  declare function DropdownMenuItem({ className, inset, variant, ...props }: React$1.ComponentProps<typeof DropdownMenuPrimitive.Item> & {
694
1059
  inset?: boolean;
695
1060
  variant?: "default" | "destructive";
696
1061
  }): react_jsx_runtime.JSX.Element;
1062
+ declare namespace DropdownMenuItem {
1063
+ var displayName: string;
1064
+ }
697
1065
  declare function DropdownMenuCheckboxItem({ className, children, checked, ...props }: React$1.ComponentProps<typeof DropdownMenuPrimitive.CheckboxItem>): react_jsx_runtime.JSX.Element;
1066
+ declare namespace DropdownMenuCheckboxItem {
1067
+ var displayName: string;
1068
+ }
698
1069
  declare function DropdownMenuRadioGroup({ ...props }: React$1.ComponentProps<typeof DropdownMenuPrimitive.RadioGroup>): react_jsx_runtime.JSX.Element;
1070
+ declare namespace DropdownMenuRadioGroup {
1071
+ var displayName: string;
1072
+ }
699
1073
  declare function DropdownMenuRadioItem({ className, children, ...props }: React$1.ComponentProps<typeof DropdownMenuPrimitive.RadioItem>): react_jsx_runtime.JSX.Element;
1074
+ declare namespace DropdownMenuRadioItem {
1075
+ var displayName: string;
1076
+ }
700
1077
  declare function DropdownMenuLabel({ className, inset, ...props }: React$1.ComponentProps<typeof DropdownMenuPrimitive.Label> & {
701
1078
  inset?: boolean;
702
1079
  }): react_jsx_runtime.JSX.Element;
1080
+ declare namespace DropdownMenuLabel {
1081
+ var displayName: string;
1082
+ }
703
1083
  declare function DropdownMenuSeparator({ className, ...props }: React$1.ComponentProps<typeof DropdownMenuPrimitive.Separator>): react_jsx_runtime.JSX.Element;
1084
+ declare namespace DropdownMenuSeparator {
1085
+ var displayName: string;
1086
+ }
704
1087
  declare function DropdownMenuShortcut({ className, ...props }: React$1.ComponentProps<"span">): react_jsx_runtime.JSX.Element;
1088
+ declare namespace DropdownMenuShortcut {
1089
+ var displayName: string;
1090
+ }
705
1091
  declare function DropdownMenuSub({ ...props }: React$1.ComponentProps<typeof DropdownMenuPrimitive.Sub>): react_jsx_runtime.JSX.Element;
1092
+ declare namespace DropdownMenuSub {
1093
+ var displayName: string;
1094
+ }
706
1095
  declare function DropdownMenuSubTrigger({ className, inset, children, ...props }: React$1.ComponentProps<typeof DropdownMenuPrimitive.SubTrigger> & {
707
1096
  inset?: boolean;
708
1097
  }): react_jsx_runtime.JSX.Element;
1098
+ declare namespace DropdownMenuSubTrigger {
1099
+ var displayName: string;
1100
+ }
709
1101
  declare function DropdownMenuSubContent({ className, ...props }: React$1.ComponentProps<typeof DropdownMenuPrimitive.SubContent>): react_jsx_runtime.JSX.Element;
1102
+ declare namespace DropdownMenuSubContent {
1103
+ var displayName: string;
1104
+ }
710
1105
 
711
1106
  declare function Empty({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
712
- declare function EmptyIcon({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
713
- declare function EmptyTitle({ className, ...props }: React$1.ComponentProps<"h3">): react_jsx_runtime.JSX.Element;
714
- declare function EmptyDescription({ className, ...props }: React$1.ComponentProps<"p">): react_jsx_runtime.JSX.Element;
1107
+ declare namespace Empty {
1108
+ var displayName: string;
1109
+ }
1110
+ declare const EmptyIcon: React$1.ForwardRefExoticComponent<Omit<React$1.DetailedHTMLProps<React$1.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
1111
+ declare const EmptyTitle: React$1.ForwardRefExoticComponent<Omit<React$1.DetailedHTMLProps<React$1.HTMLAttributes<HTMLHeadingElement>, HTMLHeadingElement>, "ref"> & React$1.RefAttributes<HTMLHeadingElement>>;
1112
+ declare const EmptyDescription: React$1.ForwardRefExoticComponent<Omit<React$1.DetailedHTMLProps<React$1.HTMLAttributes<HTMLParagraphElement>, HTMLParagraphElement>, "ref"> & React$1.RefAttributes<HTMLParagraphElement>>;
1113
+
1114
+ interface ErrorStateProps extends React$1.HTMLAttributes<HTMLDivElement> {
1115
+ /** Error message displayed below the icon */
1116
+ message?: string;
1117
+ /** Callback to trigger a retry — when provided, shows a retry button */
1118
+ onRetry?: () => void;
1119
+ /** Retry button label */
1120
+ retryLabel?: string;
1121
+ /** Size variant controlling padding and icon/text scale */
1122
+ size?: "sm" | "md" | "lg";
1123
+ /** Locale for default strings @default "fa" */
1124
+ locale?: SupportedLocale;
1125
+ }
1126
+ declare const ErrorState: React$1.ForwardRefExoticComponent<ErrorStateProps & React$1.RefAttributes<HTMLDivElement>>;
715
1127
 
716
1128
  declare function Label({ className, ...props }: React$1.ComponentProps<typeof LabelPrimitive.Root>): react_jsx_runtime.JSX.Element;
1129
+ declare namespace Label {
1130
+ var displayName: string;
1131
+ }
717
1132
 
718
- declare function FieldSet({ className, ...props }: React.ComponentProps<"fieldset">): react_jsx_runtime.JSX.Element;
719
- declare function FieldLegend({ className, variant, ...props }: React.ComponentProps<"legend"> & {
1133
+ declare const FieldSet: React$1.ForwardRefExoticComponent<Omit<React$1.DetailedHTMLProps<React$1.FieldsetHTMLAttributes<HTMLFieldSetElement>, HTMLFieldSetElement>, "ref"> & React$1.RefAttributes<HTMLFieldSetElement>>;
1134
+ declare const FieldLegend: React$1.ForwardRefExoticComponent<Omit<React$1.ClassAttributes<HTMLLegendElement> & React$1.HTMLAttributes<HTMLLegendElement> & {
720
1135
  variant?: "legend" | "label";
721
- }): react_jsx_runtime.JSX.Element;
722
- declare function FieldGroup({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
1136
+ }, "ref"> & React$1.RefAttributes<HTMLLegendElement>>;
1137
+ declare const FieldGroup: React$1.ForwardRefExoticComponent<Omit<React$1.DetailedHTMLProps<React$1.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
723
1138
  declare const fieldVariants: (props?: ({
724
1139
  orientation?: "horizontal" | "vertical" | "responsive" | null | undefined;
725
1140
  } & class_variance_authority_types.ClassProp) | undefined) => string;
726
- declare function Field({ className, orientation, ...props }: React.ComponentProps<"div"> & VariantProps<typeof fieldVariants>): react_jsx_runtime.JSX.Element;
727
- declare function FieldContent({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
728
- declare function FieldLabel({ className, ...props }: React.ComponentProps<typeof Label>): react_jsx_runtime.JSX.Element;
729
- declare function FieldTitle({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
730
- declare function FieldDescription({ className, ...props }: React.ComponentProps<"p">): react_jsx_runtime.JSX.Element;
731
- declare function FieldSeparator({ children, className, ...props }: React.ComponentProps<"div"> & {
732
- children?: React.ReactNode;
1141
+ declare function Field({ className, orientation, ...props }: React$1.ComponentProps<"div"> & VariantProps<typeof fieldVariants>): react_jsx_runtime.JSX.Element;
1142
+ declare namespace Field {
1143
+ var displayName: string;
1144
+ }
1145
+ declare function FieldContent({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
1146
+ declare namespace FieldContent {
1147
+ var displayName: string;
1148
+ }
1149
+ declare function FieldLabel({ className, ...props }: React$1.ComponentProps<typeof Label>): react_jsx_runtime.JSX.Element;
1150
+ declare namespace FieldLabel {
1151
+ var displayName: string;
1152
+ }
1153
+ declare function FieldTitle({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
1154
+ declare namespace FieldTitle {
1155
+ var displayName: string;
1156
+ }
1157
+ declare function FieldDescription({ className, ...props }: React$1.ComponentProps<"p">): react_jsx_runtime.JSX.Element;
1158
+ declare namespace FieldDescription {
1159
+ var displayName: string;
1160
+ }
1161
+ declare function FieldSeparator({ children, className, ...props }: React$1.ComponentProps<"div"> & {
1162
+ children?: React$1.ReactNode;
733
1163
  }): react_jsx_runtime.JSX.Element;
734
- declare function FieldError({ className, children, errors, ...props }: React.ComponentProps<"div"> & {
1164
+ declare namespace FieldSeparator {
1165
+ var displayName: string;
1166
+ }
1167
+ declare function FieldError({ className, children, errors, ...props }: React$1.ComponentProps<"div"> & {
735
1168
  errors?: Array<{
736
1169
  message?: string;
737
1170
  } | undefined>;
738
1171
  }): react_jsx_runtime.JSX.Element | null;
1172
+ declare namespace FieldError {
1173
+ var displayName: string;
1174
+ }
739
1175
 
740
1176
  declare const Form: <TFieldValues extends FieldValues, TContext = any, TTransformedValues = TFieldValues>(props: react_hook_form.FormProviderProps<TFieldValues, TContext, TTransformedValues>) => React$1.JSX.Element;
741
- declare const FormField: <TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>>({ ...props }: ControllerProps<TFieldValues, TName>) => react_jsx_runtime.JSX.Element;
1177
+ declare const FormField: {
1178
+ <TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>>({ ...props }: ControllerProps<TFieldValues, TName>): react_jsx_runtime.JSX.Element;
1179
+ displayName: string;
1180
+ };
742
1181
  declare const useFormField: () => {
743
1182
  invalid: boolean;
744
1183
  isDirty: boolean;
@@ -752,19 +1191,43 @@ declare const useFormField: () => {
752
1191
  formMessageId: string;
753
1192
  };
754
1193
  declare function FormItem({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
1194
+ declare namespace FormItem {
1195
+ var displayName: string;
1196
+ }
755
1197
  declare function FormLabel({ className, ...props }: React$1.ComponentProps<typeof LabelPrimitive.Root>): react_jsx_runtime.JSX.Element;
1198
+ declare namespace FormLabel {
1199
+ var displayName: string;
1200
+ }
756
1201
  declare function FormControl({ ...props }: React$1.ComponentProps<typeof Slot>): react_jsx_runtime.JSX.Element;
1202
+ declare namespace FormControl {
1203
+ var displayName: string;
1204
+ }
757
1205
  declare function FormDescription({ className, ...props }: React$1.ComponentProps<"p">): react_jsx_runtime.JSX.Element;
1206
+ declare namespace FormDescription {
1207
+ var displayName: string;
1208
+ }
758
1209
  declare function FormMessage({ className, ...props }: React$1.ComponentProps<"p">): react_jsx_runtime.JSX.Element | null;
1210
+ declare namespace FormMessage {
1211
+ var displayName: string;
1212
+ }
759
1213
 
760
1214
  declare function HoverCard({ ...props }: React$1.ComponentProps<typeof HoverCardPrimitive.Root>): react_jsx_runtime.JSX.Element;
1215
+ declare namespace HoverCard {
1216
+ var displayName: string;
1217
+ }
761
1218
  declare function HoverCardTrigger({ ...props }: React$1.ComponentProps<typeof HoverCardPrimitive.Trigger>): react_jsx_runtime.JSX.Element;
1219
+ declare namespace HoverCardTrigger {
1220
+ var displayName: string;
1221
+ }
762
1222
  declare function HoverCardContent({ className, align, sideOffset, ...props }: React$1.ComponentProps<typeof HoverCardPrimitive.Content>): react_jsx_runtime.JSX.Element;
1223
+ declare namespace HoverCardContent {
1224
+ var displayName: string;
1225
+ }
763
1226
 
764
1227
  interface InputProps extends Omit<React$1.InputHTMLAttributes<HTMLInputElement>, 'size'>, VariantProps<typeof InputVariants> {
765
1228
  }
766
1229
  declare const InputVariants: (props?: ({
767
- size?: "small" | "tiny" | "medium" | "large" | "xlarge" | null | undefined;
1230
+ size?: "xs" | "sm" | "md" | "lg" | "xl" | "tiny" | "small" | "medium" | "large" | "xlarge" | null | undefined;
768
1231
  } & class_variance_authority_types.ClassProp) | undefined) => string;
769
1232
  declare const Input: React$1.ForwardRefExoticComponent<InputProps & React$1.RefAttributes<HTMLInputElement>>;
770
1233
 
@@ -803,26 +1266,56 @@ interface InputGroupProps extends React$1.ComponentProps<"div"> {
803
1266
  dir?: "ltr" | "rtl";
804
1267
  }
805
1268
  declare function InputGroup({ className, dir, ...props }: InputGroupProps): react_jsx_runtime.JSX.Element;
1269
+ declare namespace InputGroup {
1270
+ var displayName: string;
1271
+ }
806
1272
  declare const inputGroupAddonVariants: (props?: ({
807
1273
  align?: "inline-end" | "inline-start" | "block-end" | "block-start" | null | undefined;
808
1274
  } & class_variance_authority_types.ClassProp) | undefined) => string;
809
1275
  declare function InputGroupAddon({ className, align, ...props }: React$1.ComponentProps<"div"> & VariantProps<typeof inputGroupAddonVariants>): react_jsx_runtime.JSX.Element;
1276
+ declare namespace InputGroupAddon {
1277
+ var displayName: string;
1278
+ }
810
1279
  declare const inputGroupButtonVariants: (props?: ({
811
- size?: "sm" | "xs" | "icon-xs" | "icon-sm" | null | undefined;
1280
+ size?: "xs" | "sm" | "icon-xs" | "icon-sm" | null | undefined;
812
1281
  } & class_variance_authority_types.ClassProp) | undefined) => string;
813
1282
  declare function InputGroupButton({ className, type, variant, size, ...props }: Omit<React$1.ComponentProps<typeof Button>, "size"> & VariantProps<typeof inputGroupButtonVariants>): react_jsx_runtime.JSX.Element;
1283
+ declare namespace InputGroupButton {
1284
+ var displayName: string;
1285
+ }
814
1286
  declare function InputGroupText({ className, ...props }: React$1.ComponentProps<"span">): react_jsx_runtime.JSX.Element;
1287
+ declare namespace InputGroupText {
1288
+ var displayName: string;
1289
+ }
815
1290
  declare function InputGroupInput({ className, type, size, dir: dirProp, ...props }: InputProps): react_jsx_runtime.JSX.Element;
1291
+ declare namespace InputGroupInput {
1292
+ var displayName: string;
1293
+ }
816
1294
  declare function InputGroupTextarea({ className, ...props }: React$1.ComponentProps<"textarea">): react_jsx_runtime.JSX.Element;
1295
+ declare namespace InputGroupTextarea {
1296
+ var displayName: string;
1297
+ }
817
1298
 
818
1299
  declare function InputOTP({ className, containerClassName, dir, ...props }: React$1.ComponentProps<typeof OTPInput> & {
819
1300
  containerClassName?: string;
820
1301
  }): react_jsx_runtime.JSX.Element;
1302
+ declare namespace InputOTP {
1303
+ var displayName: string;
1304
+ }
821
1305
  declare function InputOTPGroup({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
1306
+ declare namespace InputOTPGroup {
1307
+ var displayName: string;
1308
+ }
822
1309
  declare function InputOTPSlot({ index, className, ...props }: React$1.ComponentProps<"div"> & {
823
1310
  index: number;
824
1311
  }): react_jsx_runtime.JSX.Element;
1312
+ declare namespace InputOTPSlot {
1313
+ var displayName: string;
1314
+ }
825
1315
  declare function InputOTPSeparator({ ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
1316
+ declare namespace InputOTPSeparator {
1317
+ var displayName: string;
1318
+ }
826
1319
 
827
1320
  type MediaType = "image" | "video" | "carousel";
828
1321
  type AspectRatioType = "16:9" | "9:16" | "1:1" | "4:5" | "5:4";
@@ -874,38 +1367,111 @@ interface InstagramPostProps extends React$1.HTMLAttributes<HTMLDivElement>, Var
874
1367
  disableAIAnalysis?: boolean;
875
1368
  disableOpenInstagram?: boolean;
876
1369
  placeholderText?: string;
1370
+ /** Text for "show more" button @default "بیشتر" */
1371
+ showMoreText?: string;
1372
+ /** Text for "show less" button @default "کمتر" */
1373
+ showLessText?: string;
877
1374
  }
878
1375
  declare const instagramPostVariants: (props?: ({
879
1376
  variant?: "horizontal" | "vertical" | null | undefined;
880
1377
  } & class_variance_authority_types.ClassProp) | undefined) => string;
881
1378
  declare const InstagramPost: React$1.ForwardRefExoticComponent<InstagramPostProps & React$1.RefAttributes<HTMLDivElement>>;
882
1379
 
1380
+ interface ItemProps extends React$1.HTMLAttributes<HTMLDivElement> {
1381
+ /** Render as child element */
1382
+ asChild?: boolean;
1383
+ }
1384
+ declare const Item: React$1.ForwardRefExoticComponent<ItemProps & React$1.RefAttributes<HTMLDivElement>>;
1385
+ declare const ItemMedia: React$1.ForwardRefExoticComponent<React$1.HTMLAttributes<HTMLDivElement> & React$1.RefAttributes<HTMLDivElement>>;
1386
+ declare const ItemContent: React$1.ForwardRefExoticComponent<React$1.HTMLAttributes<HTMLDivElement> & React$1.RefAttributes<HTMLDivElement>>;
1387
+ declare const ItemTitle: React$1.ForwardRefExoticComponent<React$1.HTMLAttributes<HTMLParagraphElement> & React$1.RefAttributes<HTMLParagraphElement>>;
1388
+ declare const ItemDescription: React$1.ForwardRefExoticComponent<React$1.HTMLAttributes<HTMLParagraphElement> & React$1.RefAttributes<HTMLParagraphElement>>;
1389
+ interface ItemGroupProps extends React$1.HTMLAttributes<HTMLDivElement> {
1390
+ /** Section label rendered above the group */
1391
+ label?: string;
1392
+ }
1393
+ declare const ItemGroup: React$1.ForwardRefExoticComponent<ItemGroupProps & React$1.RefAttributes<HTMLDivElement>>;
1394
+
883
1395
  declare function Kbd({ className, ...props }: React$1.ComponentProps<"kbd">): react_jsx_runtime.JSX.Element;
1396
+ declare namespace Kbd {
1397
+ var displayName: string;
1398
+ }
884
1399
  declare function KbdGroup({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
1400
+ declare namespace KbdGroup {
1401
+ var displayName: string;
1402
+ }
885
1403
 
886
1404
  declare function Menubar({ className, ...props }: React$1.ComponentProps<typeof MenubarPrimitive.Root>): react_jsx_runtime.JSX.Element;
1405
+ declare namespace Menubar {
1406
+ var displayName: string;
1407
+ }
887
1408
  declare function MenubarMenu({ ...props }: React$1.ComponentProps<typeof MenubarPrimitive.Menu>): react_jsx_runtime.JSX.Element;
1409
+ declare namespace MenubarMenu {
1410
+ var displayName: string;
1411
+ }
888
1412
  declare function MenubarGroup({ ...props }: React$1.ComponentProps<typeof MenubarPrimitive.Group>): react_jsx_runtime.JSX.Element;
1413
+ declare namespace MenubarGroup {
1414
+ var displayName: string;
1415
+ }
889
1416
  declare function MenubarPortal({ ...props }: React$1.ComponentProps<typeof MenubarPrimitive.Portal>): react_jsx_runtime.JSX.Element;
1417
+ declare namespace MenubarPortal {
1418
+ var displayName: string;
1419
+ }
890
1420
  declare function MenubarRadioGroup({ ...props }: React$1.ComponentProps<typeof MenubarPrimitive.RadioGroup>): react_jsx_runtime.JSX.Element;
1421
+ declare namespace MenubarRadioGroup {
1422
+ var displayName: string;
1423
+ }
891
1424
  declare function MenubarTrigger({ className, ...props }: React$1.ComponentProps<typeof MenubarPrimitive.Trigger>): react_jsx_runtime.JSX.Element;
1425
+ declare namespace MenubarTrigger {
1426
+ var displayName: string;
1427
+ }
892
1428
  declare function MenubarContent({ className, align, alignOffset, sideOffset, ...props }: React$1.ComponentProps<typeof MenubarPrimitive.Content>): react_jsx_runtime.JSX.Element;
1429
+ declare namespace MenubarContent {
1430
+ var displayName: string;
1431
+ }
893
1432
  declare function MenubarItem({ className, inset, variant, ...props }: React$1.ComponentProps<typeof MenubarPrimitive.Item> & {
894
1433
  inset?: boolean;
895
1434
  variant?: "default" | "destructive";
896
1435
  }): react_jsx_runtime.JSX.Element;
1436
+ declare namespace MenubarItem {
1437
+ var displayName: string;
1438
+ }
897
1439
  declare function MenubarCheckboxItem({ className, children, checked, ...props }: React$1.ComponentProps<typeof MenubarPrimitive.CheckboxItem>): react_jsx_runtime.JSX.Element;
1440
+ declare namespace MenubarCheckboxItem {
1441
+ var displayName: string;
1442
+ }
898
1443
  declare function MenubarRadioItem({ className, children, ...props }: React$1.ComponentProps<typeof MenubarPrimitive.RadioItem>): react_jsx_runtime.JSX.Element;
1444
+ declare namespace MenubarRadioItem {
1445
+ var displayName: string;
1446
+ }
899
1447
  declare function MenubarLabel({ className, inset, ...props }: React$1.ComponentProps<typeof MenubarPrimitive.Label> & {
900
1448
  inset?: boolean;
901
1449
  }): react_jsx_runtime.JSX.Element;
1450
+ declare namespace MenubarLabel {
1451
+ var displayName: string;
1452
+ }
902
1453
  declare function MenubarSeparator({ className, ...props }: React$1.ComponentProps<typeof MenubarPrimitive.Separator>): react_jsx_runtime.JSX.Element;
1454
+ declare namespace MenubarSeparator {
1455
+ var displayName: string;
1456
+ }
903
1457
  declare function MenubarShortcut({ className, ...props }: React$1.ComponentProps<"span">): react_jsx_runtime.JSX.Element;
1458
+ declare namespace MenubarShortcut {
1459
+ var displayName: string;
1460
+ }
904
1461
  declare function MenubarSub({ ...props }: React$1.ComponentProps<typeof MenubarPrimitive.Sub>): react_jsx_runtime.JSX.Element;
1462
+ declare namespace MenubarSub {
1463
+ var displayName: string;
1464
+ }
905
1465
  declare function MenubarSubTrigger({ className, inset, children, ...props }: React$1.ComponentProps<typeof MenubarPrimitive.SubTrigger> & {
906
1466
  inset?: boolean;
907
1467
  }): react_jsx_runtime.JSX.Element;
1468
+ declare namespace MenubarSubTrigger {
1469
+ var displayName: string;
1470
+ }
908
1471
  declare function MenubarSubContent({ className, ...props }: React$1.ComponentProps<typeof MenubarPrimitive.SubContent>): react_jsx_runtime.JSX.Element;
1472
+ declare namespace MenubarSubContent {
1473
+ var displayName: string;
1474
+ }
909
1475
 
910
1476
  interface MetricCardProps extends React$1.HTMLAttributes<HTMLDivElement> {
911
1477
  /**
@@ -948,7 +1514,13 @@ interface MetricCardSparklineProps {
948
1514
  */
949
1515
  dataKey: string;
950
1516
  /**
951
- * Use Persian calendar for date formatting
1517
+ * Locale for number and date formatting
1518
+ * نمایش به صورت فارسی/عربی یا انگلیسی
1519
+ * @default "fa"
1520
+ */
1521
+ locale?: SupportedLocale;
1522
+ /**
1523
+ * @deprecated Use `locale="fa"` instead
952
1524
  */
953
1525
  usePersianCalendar?: boolean;
954
1526
  /**
@@ -965,31 +1537,85 @@ declare const MetricCardDifferential: React$1.ForwardRefExoticComponent<MetricCa
965
1537
  declare const MetricCardSparkline: React$1.ForwardRefExoticComponent<MetricCardSparklineProps & React$1.RefAttributes<HTMLDivElement>>;
966
1538
 
967
1539
  declare function NativeSelect({ className, ...props }: React$1.ComponentProps<"select">): react_jsx_runtime.JSX.Element;
1540
+ declare namespace NativeSelect {
1541
+ var displayName: string;
1542
+ }
968
1543
  declare function NativeSelectOption({ ...props }: React$1.ComponentProps<"option">): react_jsx_runtime.JSX.Element;
1544
+ declare namespace NativeSelectOption {
1545
+ var displayName: string;
1546
+ }
969
1547
  declare function NativeSelectOptGroup({ className, ...props }: React$1.ComponentProps<"optgroup">): react_jsx_runtime.JSX.Element;
1548
+ declare namespace NativeSelectOptGroup {
1549
+ var displayName: string;
1550
+ }
970
1551
 
971
1552
  declare function NavigationMenu({ className, children, viewport, ...props }: React$1.ComponentProps<typeof NavigationMenuPrimitive.Root> & {
972
1553
  viewport?: boolean;
973
1554
  }): react_jsx_runtime.JSX.Element;
1555
+ declare namespace NavigationMenu {
1556
+ var displayName: string;
1557
+ }
974
1558
  declare function NavigationMenuList({ className, ...props }: React$1.ComponentProps<typeof NavigationMenuPrimitive.List>): react_jsx_runtime.JSX.Element;
1559
+ declare namespace NavigationMenuList {
1560
+ var displayName: string;
1561
+ }
975
1562
  declare function NavigationMenuItem({ className, ...props }: React$1.ComponentProps<typeof NavigationMenuPrimitive.Item>): react_jsx_runtime.JSX.Element;
1563
+ declare namespace NavigationMenuItem {
1564
+ var displayName: string;
1565
+ }
976
1566
  declare const navigationMenuTriggerStyle: (props?: class_variance_authority_types.ClassProp | undefined) => string;
977
1567
  declare function NavigationMenuTrigger({ className, children, ...props }: React$1.ComponentProps<typeof NavigationMenuPrimitive.Trigger>): react_jsx_runtime.JSX.Element;
1568
+ declare namespace NavigationMenuTrigger {
1569
+ var displayName: string;
1570
+ }
978
1571
  declare function NavigationMenuContent({ className, ...props }: React$1.ComponentProps<typeof NavigationMenuPrimitive.Content>): react_jsx_runtime.JSX.Element;
1572
+ declare namespace NavigationMenuContent {
1573
+ var displayName: string;
1574
+ }
979
1575
  declare function NavigationMenuViewport({ className, ...props }: React$1.ComponentProps<typeof NavigationMenuPrimitive.Viewport>): react_jsx_runtime.JSX.Element;
1576
+ declare namespace NavigationMenuViewport {
1577
+ var displayName: string;
1578
+ }
980
1579
  declare function NavigationMenuLink({ className, ...props }: React$1.ComponentProps<typeof NavigationMenuPrimitive.Link>): react_jsx_runtime.JSX.Element;
1580
+ declare namespace NavigationMenuLink {
1581
+ var displayName: string;
1582
+ }
981
1583
  declare function NavigationMenuIndicator({ className, ...props }: React$1.ComponentProps<typeof NavigationMenuPrimitive.Indicator>): react_jsx_runtime.JSX.Element;
1584
+ declare namespace NavigationMenuIndicator {
1585
+ var displayName: string;
1586
+ }
982
1587
 
983
1588
  declare function Pagination({ className, dir, children, ...props }: React$1.ComponentProps<"nav">): react_jsx_runtime.JSX.Element;
1589
+ declare namespace Pagination {
1590
+ var displayName: string;
1591
+ }
984
1592
  declare function PaginationContent({ className, ...props }: React$1.ComponentProps<"ul">): react_jsx_runtime.JSX.Element;
1593
+ declare namespace PaginationContent {
1594
+ var displayName: string;
1595
+ }
985
1596
  declare function PaginationItem({ ...props }: React$1.ComponentProps<"li">): react_jsx_runtime.JSX.Element;
1597
+ declare namespace PaginationItem {
1598
+ var displayName: string;
1599
+ }
986
1600
  type PaginationLinkProps = {
987
1601
  isActive?: boolean;
988
1602
  } & Pick<React$1.ComponentProps<typeof Button>, "size"> & React$1.ComponentProps<"a">;
989
1603
  declare function PaginationLink({ className, isActive, size, dir, ...props }: PaginationLinkProps): react_jsx_runtime.JSX.Element;
1604
+ declare namespace PaginationLink {
1605
+ var displayName: string;
1606
+ }
990
1607
  declare function PaginationPrevious({ className, ...props }: React$1.ComponentProps<typeof PaginationLink>): react_jsx_runtime.JSX.Element;
1608
+ declare namespace PaginationPrevious {
1609
+ var displayName: string;
1610
+ }
991
1611
  declare function PaginationNext({ className, ...props }: React$1.ComponentProps<typeof PaginationLink>): react_jsx_runtime.JSX.Element;
1612
+ declare namespace PaginationNext {
1613
+ var displayName: string;
1614
+ }
992
1615
  declare function PaginationEllipsis({ className, ...props }: React$1.ComponentProps<"span">): react_jsx_runtime.JSX.Element;
1616
+ declare namespace PaginationEllipsis {
1617
+ var displayName: string;
1618
+ }
993
1619
 
994
1620
  interface PaginationControlledProps {
995
1621
  /**
@@ -1046,6 +1672,9 @@ interface PaginationControlledProps {
1046
1672
  * ```
1047
1673
  */
1048
1674
  declare function PaginationControlled({ currentPage, totalPages, onPageChange, siblingCount, showFirstLast, showPrevNext, showEllipsis, className, dir, }: PaginationControlledProps): react_jsx_runtime.JSX.Element;
1675
+ declare namespace PaginationControlled {
1676
+ var displayName: string;
1677
+ }
1049
1678
 
1050
1679
  declare const Popover: React$1.FC<PopoverPrimitive.PopoverProps>;
1051
1680
  declare const PopoverTrigger: React$1.ForwardRefExoticComponent<PopoverPrimitive.PopoverTriggerProps & React$1.RefAttributes<HTMLButtonElement>>;
@@ -1097,6 +1726,11 @@ interface ProfileCardProps extends React$1.HTMLAttributes<HTMLDivElement> {
1097
1726
  * رنگ پس‌زمینه
1098
1727
  */
1099
1728
  variant?: "default" | "dark" | "transparent";
1729
+ /**
1730
+ * نمایش حالت بارگذاری
1731
+ * Show loading skeleton state
1732
+ */
1733
+ isLoading?: boolean;
1100
1734
  }
1101
1735
  declare const ProfileCard: React$1.ForwardRefExoticComponent<ProfileCardProps & React$1.RefAttributes<HTMLDivElement>>;
1102
1736
 
@@ -1153,6 +1787,11 @@ interface ProfileInfoProps extends React$1.HTMLAttributes<HTMLDivElement> {
1153
1787
  * رنگ پس‌زمینه
1154
1788
  */
1155
1789
  variant?: "default" | "dark" | "transparent";
1790
+ /**
1791
+ * Locale for default strings
1792
+ * @default "fa"
1793
+ */
1794
+ locale?: SupportedLocale;
1156
1795
  }
1157
1796
  declare const ProfileInfo: React$1.ForwardRefExoticComponent<ProfileInfoProps & React$1.RefAttributes<HTMLDivElement>>;
1158
1797
 
@@ -1172,13 +1811,18 @@ interface EngagementRateProps extends React$1.HTMLAttributes<HTMLDivElement> {
1172
1811
  * Display in Persian/Arabic or English
1173
1812
  * @default "fa"
1174
1813
  */
1175
- locale?: "fa" | "ar" | "en";
1814
+ locale?: SupportedLocale;
1176
1815
  /**
1177
1816
  * نمایش کارت اطلاعات دسته‌بندی
1178
1817
  * Show category information card
1179
1818
  * @default true
1180
1819
  */
1181
1820
  showCategoryCard?: boolean;
1821
+ /**
1822
+ * نمایش حالت بارگذاری
1823
+ * Show loading skeleton state
1824
+ */
1825
+ isLoading?: boolean;
1182
1826
  }
1183
1827
  declare const EngagementRate: React$1.ForwardRefExoticComponent<EngagementRateProps & React$1.RefAttributes<HTMLDivElement>>;
1184
1828
 
@@ -1198,18 +1842,24 @@ interface EngagementRateBarProps extends React$1.HTMLAttributes<HTMLDivElement>
1198
1842
  * Display in Persian/Arabic or English
1199
1843
  * @default "fa"
1200
1844
  */
1201
- locale?: "fa" | "ar" | "en";
1845
+ locale?: SupportedLocale;
1202
1846
  /**
1203
1847
  * نمایش متن راهنمای "عالی" و "پایین"
1204
1848
  * Show helper text "Excellent" and "Low"
1205
1849
  * @default true
1206
1850
  */
1207
1851
  showHelperText?: boolean;
1852
+ /**
1853
+ * نمایش حالت بارگذاری
1854
+ * Show loading skeleton state
1855
+ * @default false
1856
+ */
1857
+ isLoading?: boolean;
1208
1858
  }
1209
1859
  declare const EngagementRateBar: React$1.ForwardRefExoticComponent<EngagementRateBarProps & React$1.RefAttributes<HTMLDivElement>>;
1210
1860
 
1211
1861
  declare const progressVariants: (props?: ({
1212
- size?: "sm" | "lg" | "md" | null | undefined;
1862
+ size?: "sm" | "md" | "lg" | null | undefined;
1213
1863
  } & class_variance_authority_types.ClassProp) | undefined) => string;
1214
1864
  declare const progressIndicatorVariants: (props?: ({
1215
1865
  variant?: "success" | "warning" | "destructive" | "primary" | "secondary" | null | undefined;
@@ -1219,9 +1869,18 @@ interface ProgressProps extends React$1.ComponentProps<typeof ProgressPrimitive.
1219
1869
  showValue?: boolean;
1220
1870
  }
1221
1871
  declare function Progress({ className, value, size, variant, label, showValue, ...props }: ProgressProps): react_jsx_runtime.JSX.Element;
1872
+ declare namespace Progress {
1873
+ var displayName: string;
1874
+ }
1222
1875
 
1223
1876
  declare function RadioGroup({ className, ...props }: React$1.ComponentProps<typeof RadioGroupPrimitive.Root>): react_jsx_runtime.JSX.Element;
1877
+ declare namespace RadioGroup {
1878
+ var displayName: string;
1879
+ }
1224
1880
  declare function RadioGroupItem({ className, ...props }: React$1.ComponentProps<typeof RadioGroupPrimitive.Item>): react_jsx_runtime.JSX.Element;
1881
+ declare namespace RadioGroupItem {
1882
+ var displayName: string;
1883
+ }
1225
1884
 
1226
1885
  declare const RadioCards: React$1.ForwardRefExoticComponent<Omit<RadioGroupPrimitive.RadioGroupProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & {
1227
1886
  columns?: number | Record<string, number>;
@@ -1232,21 +1891,36 @@ declare const RadioCardTitle: React$1.ForwardRefExoticComponent<React$1.HTMLAttr
1232
1891
  declare const RadioCardDescription: React$1.ForwardRefExoticComponent<React$1.HTMLAttributes<HTMLParagraphElement> & React$1.RefAttributes<HTMLParagraphElement>>;
1233
1892
 
1234
1893
  declare function ResizablePanelGroup({ className, ...props }: React$1.ComponentProps<typeof ResizablePrimitive.PanelGroup>): react_jsx_runtime.JSX.Element;
1894
+ declare namespace ResizablePanelGroup {
1895
+ var displayName: string;
1896
+ }
1235
1897
  declare function ResizablePanel({ ...props }: React$1.ComponentProps<typeof ResizablePrimitive.Panel>): react_jsx_runtime.JSX.Element;
1898
+ declare namespace ResizablePanel {
1899
+ var displayName: string;
1900
+ }
1236
1901
  declare function ResizableHandle({ withHandle, className, ...props }: React$1.ComponentProps<typeof ResizablePrimitive.PanelResizeHandle> & {
1237
1902
  withHandle?: boolean;
1238
1903
  }): react_jsx_runtime.JSX.Element;
1904
+ declare namespace ResizableHandle {
1905
+ var displayName: string;
1906
+ }
1239
1907
 
1240
1908
  declare function ScrollArea({ className, children, ...props }: React$1.ComponentProps<typeof ScrollAreaPrimitive.Root>): react_jsx_runtime.JSX.Element;
1909
+ declare namespace ScrollArea {
1910
+ var displayName: string;
1911
+ }
1241
1912
  declare function ScrollBar({ className, orientation, ...props }: React$1.ComponentProps<typeof ScrollAreaPrimitive.ScrollAreaScrollbar>): react_jsx_runtime.JSX.Element;
1913
+ declare namespace ScrollBar {
1914
+ var displayName: string;
1915
+ }
1242
1916
 
1243
1917
  declare const Select: React$1.FC<SelectPrimitive.SelectProps>;
1244
1918
  declare const SelectGroup: React$1.ForwardRefExoticComponent<SelectPrimitive.SelectGroupProps & React$1.RefAttributes<HTMLDivElement>>;
1245
1919
  declare const SelectValue: React$1.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectValueProps & React$1.RefAttributes<HTMLSpanElement>, "ref"> & VariantProps<(props?: ({
1246
- size?: "small" | "tiny" | "medium" | "large" | "xlarge" | null | undefined;
1920
+ size?: "xs" | "sm" | "md" | "lg" | "xl" | "tiny" | "small" | "medium" | "large" | "xlarge" | null | undefined;
1247
1921
  } & class_variance_authority_types.ClassProp) | undefined) => string> & React$1.RefAttributes<HTMLSpanElement>>;
1248
1922
  declare const SelectTrigger: React$1.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectTriggerProps & React$1.RefAttributes<HTMLButtonElement>, "ref"> & VariantProps<(props?: ({
1249
- size?: "small" | "tiny" | "medium" | "large" | "xlarge" | null | undefined;
1923
+ size?: "xs" | "sm" | "md" | "lg" | "xl" | "tiny" | "small" | "medium" | "large" | "xlarge" | null | undefined;
1250
1924
  } & class_variance_authority_types.ClassProp) | undefined) => string> & React$1.RefAttributes<HTMLButtonElement>>;
1251
1925
  declare const SelectScrollUpButton: React$1.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectScrollUpButtonProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
1252
1926
  declare const SelectScrollDownButton: React$1.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectScrollDownButtonProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
@@ -1256,20 +1930,52 @@ declare const SelectItem: React$1.ForwardRefExoticComponent<Omit<SelectPrimitive
1256
1930
  declare const SelectSeparator: React$1.ForwardRefExoticComponent<Omit<SelectPrimitive.SelectSeparatorProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
1257
1931
 
1258
1932
  declare function Sheet({ ...props }: React$1.ComponentProps<typeof DialogPrimitive.Root>): react_jsx_runtime.JSX.Element;
1933
+ declare namespace Sheet {
1934
+ var displayName: string;
1935
+ }
1259
1936
  declare function SheetTrigger({ ...props }: React$1.ComponentProps<typeof DialogPrimitive.Trigger>): react_jsx_runtime.JSX.Element;
1937
+ declare namespace SheetTrigger {
1938
+ var displayName: string;
1939
+ }
1260
1940
  declare function SheetClose({ ...props }: React$1.ComponentProps<typeof DialogPrimitive.Close>): react_jsx_runtime.JSX.Element;
1941
+ declare namespace SheetClose {
1942
+ var displayName: string;
1943
+ }
1261
1944
  declare function SheetContent({ className, children, side, ...props }: React$1.ComponentProps<typeof DialogPrimitive.Content> & {
1262
1945
  side?: "top" | "right" | "bottom" | "left";
1263
1946
  }): react_jsx_runtime.JSX.Element;
1947
+ declare namespace SheetContent {
1948
+ var displayName: string;
1949
+ }
1264
1950
  declare function SheetHeader({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
1951
+ declare namespace SheetHeader {
1952
+ var displayName: string;
1953
+ }
1265
1954
  declare function SheetFooter({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
1955
+ declare namespace SheetFooter {
1956
+ var displayName: string;
1957
+ }
1266
1958
  declare function SheetTitle({ className, ...props }: React$1.ComponentProps<typeof DialogPrimitive.Title>): react_jsx_runtime.JSX.Element;
1959
+ declare namespace SheetTitle {
1960
+ var displayName: string;
1961
+ }
1267
1962
  declare function SheetDescription({ className, ...props }: React$1.ComponentProps<typeof DialogPrimitive.Description>): react_jsx_runtime.JSX.Element;
1963
+ declare namespace SheetDescription {
1964
+ var displayName: string;
1965
+ }
1268
1966
 
1269
1967
  declare const TooltipProvider: React$1.FC<TooltipPrimitive.TooltipProviderProps>;
1270
1968
  declare const Tooltip: React$1.FC<TooltipPrimitive.TooltipProps>;
1271
1969
  declare const TooltipTrigger: React$1.ForwardRefExoticComponent<TooltipPrimitive.TooltipTriggerProps & React$1.RefAttributes<HTMLButtonElement>>;
1272
- declare const TooltipContent: React$1.ForwardRefExoticComponent<Omit<TooltipPrimitive.TooltipContentProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
1970
+ interface TooltipContentProps extends React$1.ComponentPropsWithoutRef<typeof TooltipPrimitive.Content> {
1971
+ /** Visual variant */
1972
+ variant?: "default" | "light" | "error";
1973
+ /** Size */
1974
+ size?: "sm" | "md";
1975
+ /** Show arrow/caret pointing to trigger */
1976
+ showArrow?: boolean;
1977
+ }
1978
+ declare const TooltipContent: React$1.ForwardRefExoticComponent<TooltipContentProps & React$1.RefAttributes<HTMLDivElement>>;
1273
1979
 
1274
1980
  type SidebarContextProps = {
1275
1981
  state: "expanded" | "collapsed";
@@ -1311,7 +2017,7 @@ declare function SidebarMenu({ className, ...props }: React$1.ComponentProps<"ul
1311
2017
  declare function SidebarMenuItem({ className, ...props }: React$1.ComponentProps<"li">): react_jsx_runtime.JSX.Element;
1312
2018
  declare const sidebarMenuButtonVariants: (props?: ({
1313
2019
  variant?: "default" | "outline" | null | undefined;
1314
- size?: "default" | "sm" | "lg" | null | undefined;
2020
+ size?: "sm" | "lg" | "default" | null | undefined;
1315
2021
  } & class_variance_authority_types.ClassProp) | undefined) => string;
1316
2022
  declare function SidebarMenuButton({ asChild, isActive, variant, size, tooltip, className, ...props }: React$1.ComponentProps<"button"> & {
1317
2023
  asChild?: boolean;
@@ -1334,67 +2040,407 @@ declare function SidebarMenuSubButton({ asChild, size, isActive, className, ...p
1334
2040
  isActive?: boolean;
1335
2041
  }): react_jsx_runtime.JSX.Element;
1336
2042
 
1337
- declare function Skeleton({ className, ...props }: React$1.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
2043
+ declare const skeletonVariants: (props?: ({
2044
+ shape?: "circle" | "rect" | "line" | "text" | null | undefined;
2045
+ size?: "sm" | "md" | "lg" | null | undefined;
2046
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
2047
+ interface SkeletonProps extends React$1.HTMLAttributes<HTMLDivElement>, VariantProps<typeof skeletonVariants> {
2048
+ /**
2049
+ * تعداد عناصر skeleton برای نمایش (برای shape های line و text)
2050
+ * Number of skeleton elements to repeat (for line/text shapes)
2051
+ */
2052
+ count?: number;
2053
+ }
2054
+ declare function Skeleton({ className, shape, size, count, ...props }: SkeletonProps): react_jsx_runtime.JSX.Element;
2055
+ declare namespace Skeleton {
2056
+ var displayName: string;
2057
+ }
2058
+ interface MetricCardSkeletonProps {
2059
+ className?: string;
2060
+ }
2061
+ declare function MetricCardSkeleton({ className }: MetricCardSkeletonProps): react_jsx_runtime.JSX.Element;
2062
+ declare namespace MetricCardSkeleton {
2063
+ var displayName: string;
2064
+ }
2065
+ interface ChartSkeletonProps {
2066
+ className?: string;
2067
+ }
2068
+ declare function ChartSkeleton({ className }: ChartSkeletonProps): react_jsx_runtime.JSX.Element;
2069
+ declare namespace ChartSkeleton {
2070
+ var displayName: string;
2071
+ }
2072
+ interface TableSkeletonProps {
2073
+ rows?: number;
2074
+ className?: string;
2075
+ }
2076
+ declare function TableSkeleton({ rows, className }: TableSkeletonProps): react_jsx_runtime.JSX.Element;
2077
+ declare namespace TableSkeleton {
2078
+ var displayName: string;
2079
+ }
1338
2080
 
1339
2081
  declare function Slider({ className, defaultValue, value, min, max, dir, ...props }: React$1.ComponentProps<typeof SliderPrimitive.Root>): react_jsx_runtime.JSX.Element;
2082
+ declare namespace Slider {
2083
+ var displayName: string;
2084
+ }
1340
2085
 
1341
2086
  declare const SONNER_DEFAULT_DURATION = 4000;
1342
- declare const Toaster: ({ dir, position, closeButton, toastOptions, ...props }: ToasterProps) => react_jsx_runtime.JSX.Element;
2087
+ interface PartoToasterProps extends ToasterProps {
2088
+ /**
2089
+ * Override the theme directly instead of reading from next-themes.
2090
+ * Useful for non-Next.js consumers.
2091
+ */
2092
+ theme?: ToasterProps["theme"];
2093
+ }
2094
+ declare const Toaster: {
2095
+ ({ dir, position, closeButton, theme: themeProp, toastOptions, ...props }: PartoToasterProps): react_jsx_runtime.JSX.Element;
2096
+ displayName: string;
2097
+ };
1343
2098
 
1344
2099
  declare function Spinner({ className, ...props }: React$1.ComponentProps<"svg">): react_jsx_runtime.JSX.Element;
2100
+ declare namespace Spinner {
2101
+ var displayName: string;
2102
+ }
1345
2103
 
1346
2104
  declare const switchRootVariants: (props?: ({
1347
- size?: "small" | "medium" | "large" | null | undefined;
2105
+ size?: "sm" | "md" | "lg" | "small" | "medium" | "large" | null | undefined;
1348
2106
  } & class_variance_authority_types.ClassProp) | undefined) => string;
1349
2107
  interface SwitchProps extends React$1.ComponentPropsWithoutRef<typeof SwitchPrimitive.Root>, VariantProps<typeof switchRootVariants> {
1350
2108
  }
1351
2109
  declare const Switch: React$1.ForwardRefExoticComponent<SwitchProps & React$1.RefAttributes<HTMLButtonElement>>;
1352
2110
 
1353
- declare function Table({ className, ...props }: React$1.ComponentProps<"table">): react_jsx_runtime.JSX.Element;
2111
+ interface TableProps extends React$1.ComponentProps<"table"> {
2112
+ /** Size variant affecting cell padding and font size */
2113
+ size?: "sm" | "md" | "lg";
2114
+ /** Zebra-striped rows */
2115
+ striped?: boolean;
2116
+ /** Bordered cells */
2117
+ bordered?: boolean;
2118
+ /** Sticky header that stays visible when scrolling */
2119
+ stickyHeader?: boolean;
2120
+ }
2121
+ declare function Table({ className, size, striped, bordered, stickyHeader, ...props }: TableProps): react_jsx_runtime.JSX.Element;
2122
+ declare namespace Table {
2123
+ var displayName: string;
2124
+ }
1354
2125
  declare function TableHeader({ className, ...props }: React$1.ComponentProps<"thead">): react_jsx_runtime.JSX.Element;
2126
+ declare namespace TableHeader {
2127
+ var displayName: string;
2128
+ }
1355
2129
  declare function TableBody({ className, ...props }: React$1.ComponentProps<"tbody">): react_jsx_runtime.JSX.Element;
2130
+ declare namespace TableBody {
2131
+ var displayName: string;
2132
+ }
1356
2133
  declare function TableFooter({ className, ...props }: React$1.ComponentProps<"tfoot">): react_jsx_runtime.JSX.Element;
2134
+ declare namespace TableFooter {
2135
+ var displayName: string;
2136
+ }
1357
2137
  declare function TableRow({ className, ...props }: React$1.ComponentProps<"tr">): react_jsx_runtime.JSX.Element;
2138
+ declare namespace TableRow {
2139
+ var displayName: string;
2140
+ }
1358
2141
  declare function TableHead({ className, ...props }: React$1.ComponentProps<"th">): react_jsx_runtime.JSX.Element;
2142
+ declare namespace TableHead {
2143
+ var displayName: string;
2144
+ }
1359
2145
  declare function TableCell({ className, ...props }: React$1.ComponentProps<"td">): react_jsx_runtime.JSX.Element;
2146
+ declare namespace TableCell {
2147
+ var displayName: string;
2148
+ }
1360
2149
  declare function TableCaption({ className, ...props }: React$1.ComponentProps<"caption">): react_jsx_runtime.JSX.Element;
2150
+ declare namespace TableCaption {
2151
+ var displayName: string;
2152
+ }
2153
+ interface TableSortHeaderProps extends React$1.ComponentProps<"button"> {
2154
+ /** Current sort direction */
2155
+ sorted?: "asc" | "desc" | false;
2156
+ }
2157
+ declare function TableSortHeader({ className, children, sorted, ...props }: TableSortHeaderProps): react_jsx_runtime.JSX.Element;
2158
+ declare namespace TableSortHeader {
2159
+ var displayName: string;
2160
+ }
1361
2161
 
1362
2162
  declare const Tabs: React$1.ForwardRefExoticComponent<TabsPrimitive.TabsProps & React$1.RefAttributes<HTMLDivElement>>;
1363
- declare const TabsList: React$1.ForwardRefExoticComponent<Omit<TabsPrimitive.TabsListProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
1364
- declare const TabsTrigger: React$1.ForwardRefExoticComponent<Omit<TabsPrimitive.TabsTriggerProps & React$1.RefAttributes<HTMLButtonElement>, "ref"> & React$1.RefAttributes<HTMLButtonElement>>;
2163
+ interface TabsListProps extends React$1.ComponentPropsWithoutRef<typeof TabsPrimitive.List> {
2164
+ /** Visual variant */
2165
+ variant?: "default" | "underline" | "outline";
2166
+ /** Size */
2167
+ size?: "sm" | "md" | "lg";
2168
+ }
2169
+ declare const TabsList: React$1.ForwardRefExoticComponent<TabsListProps & React$1.RefAttributes<HTMLDivElement>>;
2170
+ interface TabsTriggerProps extends React$1.ComponentPropsWithoutRef<typeof TabsPrimitive.Trigger> {
2171
+ /** Icon rendered before the label */
2172
+ icon?: React$1.ReactNode;
2173
+ /** Badge/count rendered after the label */
2174
+ badge?: React$1.ReactNode;
2175
+ }
2176
+ declare const TabsTrigger: React$1.ForwardRefExoticComponent<TabsTriggerProps & React$1.RefAttributes<HTMLButtonElement>>;
1365
2177
  declare const TabsContent: React$1.ForwardRefExoticComponent<Omit<TabsPrimitive.TabsContentProps & React$1.RefAttributes<HTMLDivElement>, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
1366
2178
 
1367
2179
  declare function Textarea({ className, ...props }: React$1.ComponentProps<"textarea">): react_jsx_runtime.JSX.Element;
2180
+ declare namespace Textarea {
2181
+ var displayName: string;
2182
+ }
1368
2183
 
1369
2184
  declare const toggleVariants: (props?: ({
1370
2185
  variant?: "default" | "outline" | null | undefined;
1371
- size?: "default" | "sm" | "lg" | null | undefined;
2186
+ size?: "sm" | "lg" | "default" | null | undefined;
1372
2187
  } & class_variance_authority_types.ClassProp) | undefined) => string;
1373
2188
  declare function Toggle({ className, variant, size, ...props }: React$1.ComponentProps<typeof TogglePrimitive.Root> & VariantProps<typeof toggleVariants>): react_jsx_runtime.JSX.Element;
2189
+ declare namespace Toggle {
2190
+ var displayName: string;
2191
+ }
1374
2192
 
1375
2193
  declare function ToggleGroup({ className, variant, size, children, ...props }: React$1.ComponentProps<typeof ToggleGroupPrimitive.Root> & VariantProps<typeof toggleVariants>): react_jsx_runtime.JSX.Element;
2194
+ declare namespace ToggleGroup {
2195
+ var displayName: string;
2196
+ }
1376
2197
  declare function ToggleGroupItem({ className, children, variant, size, ...props }: React$1.ComponentProps<typeof ToggleGroupPrimitive.Item> & VariantProps<typeof toggleVariants>): react_jsx_runtime.JSX.Element;
2198
+ declare namespace ToggleGroupItem {
2199
+ var displayName: string;
2200
+ }
2201
+
2202
+ interface TrendIndicatorProps extends React$1.HTMLAttributes<HTMLSpanElement> {
2203
+ /** The percentage change value */
2204
+ value: number;
2205
+ /** Direction of the trend — auto-detected from value sign if not provided */
2206
+ direction?: "up" | "down" | "neutral";
2207
+ /** Size of the indicator */
2208
+ size?: "sm" | "md" | "lg";
2209
+ /** Locale for number formatting */
2210
+ locale?: SupportedLocale;
2211
+ /** Show the percentage sign */
2212
+ showPercent?: boolean;
2213
+ }
2214
+ declare const TrendIndicator: React$1.ForwardRefExoticComponent<TrendIndicatorProps & React$1.RefAttributes<HTMLSpanElement>>;
2215
+
2216
+ interface FilterChipProps extends React$1.HTMLAttributes<HTMLSpanElement> {
2217
+ /** Label text */
2218
+ label: string;
2219
+ /** Callback when the chip is removed */
2220
+ onRemove?: () => void;
2221
+ /** Visual variant */
2222
+ variant?: "default" | "brand" | "warning" | "destructive";
2223
+ /** Size */
2224
+ size?: "sm" | "md";
2225
+ /** Override the remove button's aria-label. Default: "حذف {label}" */
2226
+ removeAriaLabel?: string;
2227
+ /** Disables the chip and hides the remove button */
2228
+ disabled?: boolean;
2229
+ /** Locale for default strings @default "fa" */
2230
+ locale?: SupportedLocale;
2231
+ }
2232
+ declare const FilterChip: React$1.ForwardRefExoticComponent<FilterChipProps & React$1.RefAttributes<HTMLSpanElement>>;
2233
+ interface FilterChipGroupProps extends React$1.HTMLAttributes<HTMLDivElement> {
2234
+ /** Maximum visible chips before showing overflow count */
2235
+ maxVisible?: number;
2236
+ }
2237
+ declare const FilterChipGroup: React$1.ForwardRefExoticComponent<FilterChipGroupProps & React$1.RefAttributes<HTMLDivElement>>;
2238
+
2239
+ interface StatDisplayProps extends React$1.HTMLAttributes<HTMLDivElement> {
2240
+ /** The main numeric value */
2241
+ value: number | string;
2242
+ /** Label describing the stat */
2243
+ label: string;
2244
+ /** Unit suffix (e.g., "K", "%", "نفر") */
2245
+ unit?: string;
2246
+ /** Trend indicator element (use TrendIndicator component) */
2247
+ trend?: React$1.ReactNode;
2248
+ /** Size of the display */
2249
+ size?: "sm" | "md" | "lg";
2250
+ /** Locale for number formatting */
2251
+ locale?: SupportedLocale;
2252
+ /** Optional icon displayed before the value */
2253
+ icon?: React$1.ReactNode;
2254
+ /** Show loading skeleton state */
2255
+ isLoading?: boolean;
2256
+ }
2257
+ declare const StatDisplay: React$1.ForwardRefExoticComponent<StatDisplayProps & React$1.RefAttributes<HTMLDivElement>>;
2258
+
2259
+ interface SentimentBadgeProps extends React$1.HTMLAttributes<HTMLSpanElement> {
2260
+ /** Sentiment type */
2261
+ sentiment: "positive" | "negative" | "neutral" | "mixed";
2262
+ /** Optional count to display */
2263
+ count?: number;
2264
+ /** Size */
2265
+ size?: "sm" | "md";
2266
+ /** Show text label alongside the icon */
2267
+ showLabel?: boolean;
2268
+ /** Locale for number/label formatting */
2269
+ locale?: SupportedLocale;
2270
+ }
2271
+ declare const SentimentBadge: React$1.ForwardRefExoticComponent<SentimentBadgeProps & React$1.RefAttributes<HTMLSpanElement>>;
2272
+
2273
+ interface MultiSelectOption {
2274
+ value: string;
2275
+ label: string;
2276
+ disabled?: boolean;
2277
+ }
2278
+ interface MultiSelectProps {
2279
+ /** All available options */
2280
+ options: MultiSelectOption[];
2281
+ /** Currently selected values */
2282
+ value?: string[];
2283
+ /** Callback fired when selection changes */
2284
+ onValueChange?: (value: string[]) => void;
2285
+ /** Placeholder text when nothing is selected */
2286
+ placeholder?: string;
2287
+ /** Disables the entire control */
2288
+ disabled?: boolean;
2289
+ /** Shows loading skeleton in dropdown */
2290
+ isLoading?: boolean;
2291
+ /** Maximum number of items that can be selected */
2292
+ maxSelected?: number;
2293
+ /** How many selected chips to display before collapsing into a count badge */
2294
+ maxDisplayed?: number;
2295
+ /** Locale for display and default strings */
2296
+ locale?: SupportedLocale;
2297
+ /** Additional className on the trigger */
2298
+ className?: string;
2299
+ /** Empty state message */
2300
+ emptyMessage?: string;
2301
+ /** Search placeholder */
2302
+ searchPlaceholder?: string;
2303
+ }
2304
+ declare const MultiSelect: React$1.ForwardRefExoticComponent<MultiSelectProps & React$1.RefAttributes<HTMLDivElement>>;
2305
+
2306
+ interface PeriodOption {
2307
+ value: string;
2308
+ label: {
2309
+ fa: string;
2310
+ en: string;
2311
+ };
2312
+ }
2313
+ declare const DEFAULT_PERIODS: PeriodOption[];
2314
+ interface PeriodSelectorProps {
2315
+ /** Currently active period value */
2316
+ value: string;
2317
+ /** Callback when a period is selected */
2318
+ onValueChange: (value: string) => void;
2319
+ /** Custom period options — defaults to the 6 standard periods */
2320
+ periods?: PeriodOption[];
2321
+ /** Display locale — affects label language */
2322
+ locale?: "fa" | "en";
2323
+ /** Size variant */
2324
+ size?: "sm" | "md";
2325
+ /** Disables all periods */
2326
+ disabled?: boolean;
2327
+ /** Additional className */
2328
+ className?: string;
2329
+ }
2330
+ declare const PeriodSelector: React$1.ForwardRefExoticComponent<PeriodSelectorProps & React$1.RefAttributes<HTMLDivElement>>;
2331
+
2332
+ type SocialPlatform = "instagram" | "twitter" | "tiktok" | "youtube" | "linkedin" | "telegram" | "threads";
2333
+ interface SocialPlatformBadgeProps extends React$1.HTMLAttributes<HTMLSpanElement> {
2334
+ /** The social media platform to display */
2335
+ platform: SocialPlatform;
2336
+ /** Size of the badge */
2337
+ size?: "xs" | "sm" | "md" | "lg";
2338
+ /** Show the platform name label */
2339
+ showLabel?: boolean;
2340
+ /** Visual style of the badge */
2341
+ variant?: "flat" | "badge";
2342
+ }
2343
+ declare const SocialPlatformBadge: React$1.ForwardRefExoticComponent<SocialPlatformBadgeProps & React$1.RefAttributes<HTMLSpanElement>>;
2344
+
2345
+ interface SearchInputProps extends Omit<React$1.InputHTMLAttributes<HTMLInputElement>, "size">, VariantProps<typeof InputVariants> {
2346
+ /** Locale for placeholder and aria labels */
2347
+ locale?: SupportedLocale;
2348
+ /** Show a loading spinner instead of the clear button */
2349
+ isLoading?: boolean;
2350
+ /** Called when the clear (×) button is clicked */
2351
+ onClear?: () => void;
2352
+ /** Show a filter button at the end */
2353
+ showFilterButton?: boolean;
2354
+ /** Called when the filter button is clicked */
2355
+ onFilterClick?: () => void;
2356
+ /** Whether the filter button shows an active state */
2357
+ filterActive?: boolean;
2358
+ /** Container className */
2359
+ wrapperClassName?: string;
2360
+ }
2361
+ declare const SearchInput: React$1.ForwardRefExoticComponent<SearchInputProps & React$1.RefAttributes<HTMLInputElement>>;
2362
+
2363
+ interface SentimentData {
2364
+ positive: number;
2365
+ negative: number;
2366
+ neutral: number;
2367
+ }
2368
+ interface SentimentDistributionProps extends React$1.HTMLAttributes<HTMLDivElement> {
2369
+ /** Sentiment counts (will be auto-normalized to 100%) */
2370
+ data: SentimentData;
2371
+ /** Display mode */
2372
+ variant?: "bars" | "stacked" | "compact";
2373
+ /** Show numeric count labels */
2374
+ showCounts?: boolean;
2375
+ /** Show percentage labels */
2376
+ showPercent?: boolean;
2377
+ /** Locale for number/label formatting */
2378
+ locale?: SupportedLocale;
2379
+ /** Show loading skeleton */
2380
+ isLoading?: boolean;
2381
+ }
2382
+ declare const SentimentDistribution: React$1.ForwardRefExoticComponent<SentimentDistributionProps & React$1.RefAttributes<HTMLDivElement>>;
2383
+
2384
+ interface ComparisonCardProps extends React$1.HTMLAttributes<HTMLDivElement> {
2385
+ /** Card title */
2386
+ title: string;
2387
+ /** Optional tooltip explaining the metric */
2388
+ tooltip?: string;
2389
+ /** Optional icon shown before the title */
2390
+ icon?: React$1.ReactNode;
2391
+ /** Label for the current period (e.g. "این ماه") */
2392
+ currentLabel?: string;
2393
+ /** Label for the previous period (e.g. "ماه قبل") */
2394
+ previousLabel?: string;
2395
+ /** Current period value — formatted string or number */
2396
+ currentValue: React$1.ReactNode;
2397
+ /** Previous period value — formatted string or number */
2398
+ previousValue: React$1.ReactNode;
2399
+ /**
2400
+ * Percentage change from previous to current.
2401
+ * If omitted, the change indicator row is hidden.
2402
+ */
2403
+ changePercent?: number;
2404
+ /**
2405
+ * Whether a higher value is considered better (green).
2406
+ * @default true
2407
+ */
2408
+ higherIsBetter?: boolean;
2409
+ /** Show loading skeleton */
2410
+ isLoading?: boolean;
2411
+ /** Locale for number formatting and default labels */
2412
+ locale?: SupportedLocale;
2413
+ }
2414
+ declare const ComparisonCard: React$1.ForwardRefExoticComponent<ComparisonCardProps & React$1.RefAttributes<HTMLDivElement>>;
1377
2415
 
1378
2416
  interface PartoLineChartProps extends Omit<LineSvgProps<any>, 'theme' | 'width' | 'height'> {
1379
2417
  className?: string;
2418
+ /** Show loading skeleton instead of chart */
2419
+ isLoading?: boolean;
1380
2420
  }
1381
- declare function PartoLineChart({ className, ...props }: PartoLineChartProps): react_jsx_runtime.JSX.Element;
2421
+ declare function PartoLineChart({ className, isLoading, ...props }: PartoLineChartProps): react_jsx_runtime.JSX.Element;
1382
2422
 
1383
2423
  interface PartoBarChartProps extends Omit<BarSvgProps<any>, 'theme' | 'width' | 'height'> {
1384
2424
  className?: string;
2425
+ /** Show loading skeleton instead of chart */
2426
+ isLoading?: boolean;
1385
2427
  }
1386
- declare function PartoBarChart({ className, ...props }: PartoBarChartProps): react_jsx_runtime.JSX.Element;
2428
+ declare function PartoBarChart({ className, isLoading, ...props }: PartoBarChartProps): react_jsx_runtime.JSX.Element;
1387
2429
 
1388
2430
  interface PartoPieChartProps extends Omit<PieSvgProps<any>, 'theme' | 'width' | 'height'> {
1389
2431
  className?: string;
2432
+ /** Show loading skeleton instead of chart */
2433
+ isLoading?: boolean;
1390
2434
  }
1391
- declare function PartoPieChart({ className, ...props }: PartoPieChartProps): react_jsx_runtime.JSX.Element;
2435
+ declare function PartoPieChart({ className, isLoading, ...props }: PartoPieChartProps): react_jsx_runtime.JSX.Element;
1392
2436
 
1393
2437
  interface PartoHeatMapProps extends Omit<HeatMapSvgProps<any, any>, 'theme' | 'width' | 'height'> {
1394
2438
  className?: string;
1395
2439
  locale?: 'fa' | 'en';
2440
+ /** Show loading skeleton instead of chart */
2441
+ isLoading?: boolean;
1396
2442
  }
1397
- declare function PartoHeatMap({ className, locale, data, axisTop, axisBottom, axisLeft, axisRight, valueFormat, tooltip, margin, ...props }: PartoHeatMapProps): react_jsx_runtime.JSX.Element;
2443
+ declare function PartoHeatMap({ className, locale, isLoading, data, axisTop, axisBottom, axisLeft, axisRight, valueFormat, tooltip, margin, ...props }: PartoHeatMapProps): react_jsx_runtime.JSX.Element;
1398
2444
 
1399
2445
  interface WordData {
1400
2446
  text: string;
@@ -1402,7 +2448,9 @@ interface WordData {
1402
2448
  }
1403
2449
  interface PartoWordCloudProps {
1404
2450
  words: WordData[];
2451
+ /** Default aspect-ratio reference width; actual rendering is responsive */
1405
2452
  width?: number;
2453
+ /** Default aspect-ratio reference height; actual rendering is responsive */
1406
2454
  height?: number;
1407
2455
  className?: string;
1408
2456
  minFontSize?: number;
@@ -1412,9 +2460,13 @@ interface PartoWordCloudProps {
1412
2460
  rotate?: number;
1413
2461
  random?: () => number;
1414
2462
  fontWeight?: number;
2463
+ /** Called when a word is clicked — useful for click-to-filter behavior */
2464
+ onWordClick?: (word: WordData) => void;
2465
+ /** Show loading skeleton instead of word cloud */
2466
+ isLoading?: boolean;
1415
2467
  }
1416
- declare function PartoWordCloud({ words, width, height, className, minFontSize, maxFontSize, padding, spiral, rotate, random, fontWeight, }: PartoWordCloudProps): react_jsx_runtime.JSX.Element;
2468
+ declare function PartoWordCloud({ words, width: widthProp, height: heightProp, className, minFontSize, maxFontSize, padding, spiral, rotate, random, fontWeight, onWordClick, isLoading, }: PartoWordCloudProps): react_jsx_runtime.JSX.Element;
1417
2469
 
1418
2470
  declare function useIsMobile(): boolean;
1419
2471
 
1420
- export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, Alert, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertTitle, AspectRatio, type AspectRatioType, Autocomplete, type AutocompleteItem, type AutocompleteProps, Avatar, AvatarFallback, AvatarImage, Badge, type BadgeProps, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, Button, ButtonGroup, ButtonGroupSeparator, ButtonGroupText, type ButtonProps, type ButtonVariantProps, Calendar, type CalendarProps, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Carousel, type CarouselApi, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious, Checkbox, Collapsible, CollapsibleContent, CollapsibleTrigger, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, CommentCard, type CommentCardProps, type CommentTag, ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuPortal, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger, DatePicker, type DatePickerProps, DateRangePicker, DateRangePickerInline, type DateRangePickerProps, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, Empty, EmptyDescription, EmptyIcon, EmptyTitle, EngagementRate, EngagementRateBar, type EngagementRateBarProps, type EngagementRateProps, Field, FieldContent, FieldDescription, FieldError, FieldGroup, FieldLabel, FieldLegend, FieldSeparator, FieldSet, FieldTitle, Form, FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage, HashtagInput, type HashtagInputProps, HoverCard, HoverCardContent, HoverCardTrigger, type Icon, Icons, Input, InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText, InputGroupTextarea, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, type InputProps, InputVariants, InstagramPost, type InstagramPostProps, type InstagramProfileInfo, Kbd, KbdGroup, Label, type LoadingVariantProps, type MediaItem, type MediaType, Menubar, MenubarCheckboxItem, MenubarContent, MenubarGroup, MenubarItem, MenubarLabel, MenubarMenu, MenubarPortal, MenubarRadioGroup, MenubarRadioItem, MenubarSeparator, MenubarShortcut, MenubarSub, MenubarSubContent, MenubarSubTrigger, MenubarTrigger, MetricCard, MetricCardContent, MetricCardDifferential, MetricCardHeader, MetricCardLabel, MetricCardSparkline, MetricCardValue, NativeSelect, NativeSelectOptGroup, NativeSelectOption, NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, NavigationMenuViewport, type NumberFormat, PERSIAN_MONTHS, PERSIAN_MONTHS_SHORT, PERSIAN_WEEKDAYS, PERSIAN_WEEKDAYS_SHORT, Pagination, PaginationContent, PaginationControlled, type PaginationControlledProps, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, PartoBarChart, type PartoBarChartProps, PartoHeatMap, type PartoHeatMapProps, PartoLineChart, type PartoLineChartProps, PartoPieChart, type PartoPieChartProps, PartoWordCloud, type PartoWordCloudProps, Popover, PopoverAnchor, PopoverContent, PopoverTrigger, type PostStats, ProfileCard, type ProfileCardProps, ProfileInfo, type ProfileInfoProps, Progress, type ProgressProps, RadioCardDescription, RadioCardItem, RadioCardTitle, RadioCards, RadioGroup, RadioGroupItem, ResizableHandle, ResizablePanel, ResizablePanelGroup, SONNER_DEFAULT_DURATION, ScrollArea, ScrollBar, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, Skeleton, Slider, Spinner, Switch, type SwitchProps, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, TagInput, type TagInputProps, Textarea, type TimeFormat, Toaster, Toggle, ToggleGroup, ToggleGroupItem, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, UserAutocomplete, type UserAutocompleteProps, type UserItem, type WordData, badgeVariants, buttonGroupVariants, buttonVariants, cn, formatAbsoluteTime, formatJalaliDate, formatNumber, formatPersianDateRange, formatRelativeTime, getPersianDay, getPersianMonth, getPersianMonthName, getPersianMonthNameShort, getPersianMonthsForDropdown, getPersianWeekdayName, getPersianYear, getPersianYearsForDropdown, hashtagInputVariants, instagramPostVariants, jalaliToGregorian, navigationMenuTriggerStyle, tagInputVariants, toEnglishDigits, toPersianDigits, toggleVariants, useFormField, useIsMobile, useSidebar };
2472
+ export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, Alert, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertTitle, AspectRatio, type AspectRatioType, Autocomplete, type AutocompleteItem, type AutocompleteProps, Avatar, AvatarFallback, AvatarImage, Badge, type BadgeProps, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, Button, ButtonGroup, ButtonGroupSeparator, ButtonGroupText, type ButtonProps, type ButtonVariantProps, Calendar, type CalendarProps, Card, CardContent, CardDescription, CardFooter, CardHeader, type CardProps, CardTitle, Carousel, type CarouselApi, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious, ChartSkeleton, type ChartSkeletonProps, Checkbox, Collapsible, CollapsibleContent, CollapsibleTrigger, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, CommentCard, type CommentCardProps, type CommentTag, ComparisonCard, type ComparisonCardProps, ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuPortal, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger, DEFAULT_PERIODS, DatePicker, type DatePickerProps, DateRangePicker, DateRangePickerInline, type DateRangePickerProps, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, ENGAGEMENT_RANGES, Empty, EmptyDescription, EmptyIcon, EmptyTitle, type EngagementRange, type EngagementRangeWithDisplay, EngagementRate, EngagementRateBar, type EngagementRateBarProps, type EngagementRateProps, type EngagementTier, ErrorState, type ErrorStateProps, Field, FieldContent, FieldDescription, FieldError, FieldGroup, FieldLabel, FieldLegend, FieldSeparator, FieldSet, FieldTitle, FilterChip, FilterChipGroup, type FilterChipProps, type FollowerGroup, Form, FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage, GROUP_LABELS, HashtagInput, type HashtagInputProps, HoverCard, HoverCardContent, HoverCardTrigger, type Icon, Icons, Input, InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText, InputGroupTextarea, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, type InputProps, InputVariants, InstagramPost, type InstagramPostProps, type InstagramProfileInfo, Item, ItemContent, ItemDescription, ItemGroup, type ItemGroupProps, ItemMedia, type ItemProps, ItemTitle, Kbd, KbdGroup, Label, type LegacySize, type LoadingVariantProps, type MediaItem, type MediaType, Menubar, MenubarCheckboxItem, MenubarContent, MenubarGroup, MenubarItem, MenubarLabel, MenubarMenu, MenubarPortal, MenubarRadioGroup, MenubarRadioItem, MenubarSeparator, MenubarShortcut, MenubarSub, MenubarSubContent, MenubarSubTrigger, MenubarTrigger, MetricCard, MetricCardContent, MetricCardDifferential, MetricCardHeader, MetricCardLabel, MetricCardSkeleton, type MetricCardSkeletonProps, MetricCardSparkline, MetricCardValue, MultiSelect, type MultiSelectOption, type MultiSelectProps, NativeSelect, NativeSelectOptGroup, NativeSelectOption, NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, NavigationMenuViewport, type NumberFormat, PERSIAN_MONTHS, PERSIAN_MONTHS_SHORT, PERSIAN_WEEKDAYS, PERSIAN_WEEKDAYS_SHORT, Pagination, PaginationContent, PaginationControlled, type PaginationControlledProps, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, PartoBarChart, type PartoBarChartProps, PartoHeatMap, type PartoHeatMapProps, PartoLineChart, type PartoLineChartProps, PartoPieChart, type PartoPieChartProps, type PartoToasterProps, PartoWordCloud, type PartoWordCloudProps, type PeriodOption, PeriodSelector, type PeriodSelectorProps, Popover, PopoverAnchor, PopoverContent, PopoverTrigger, type PostStats, ProfileCard, type ProfileCardProps, ProfileInfo, type ProfileInfoProps, Progress, type ProgressProps, RadioCardDescription, RadioCardItem, RadioCardTitle, RadioCards, RadioGroup, RadioGroupItem, ResizableHandle, ResizablePanel, ResizablePanelGroup, SONNER_DEFAULT_DURATION, ScrollArea, ScrollBar, SearchInput, type SearchInputProps, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, SentimentBadge, type SentimentBadgeProps, type SentimentData, SentimentDistribution, type SentimentDistributionProps, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, type SizeWithLegacy, Skeleton, type SkeletonProps, Slider, type SocialPlatform, SocialPlatformBadge, type SocialPlatformBadgeProps, Spinner, type StandardSize, StatDisplay, type StatDisplayProps, type SupportedLocale, Switch, type SwitchProps, TIER_LABELS, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, TableSkeleton, type TableSkeletonProps, TableSortHeader, Tabs, TabsContent, TabsList, TabsTrigger, TagInput, type TagInputProps, Textarea, type TimeFormat, Toaster, Toggle, ToggleGroup, ToggleGroupItem, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, TrendIndicator, type TrendIndicatorProps, type UIStringKeys, type UIStrings, UI_STRINGS, UserAutocomplete, type UserAutocompleteProps, type UserItem, type WordData, badgeVariants, buttonGroupVariants, buttonVariants, cn, convertToLocalNumbers, formatAbsoluteTime, formatJalaliDate, formatLargeNumber, formatNumber, formatPersianDateRange, formatRelativeTime, getCurrentRangeIndex, getEngagementRanges, getFollowerGroup, getPersianDay, getPersianMonth, getPersianMonthName, getPersianMonthNameShort, getPersianMonthsForDropdown, getPersianWeekdayName, getPersianYear, getPersianYearsForDropdown, getUIStrings, hashtagInputVariants, instagramPostVariants, jalaliToGregorian, navigationMenuTriggerStyle, normalizeSize, tagInputVariants, toEnglishDigits, toPersianDigits, toggleVariants, useFormField, useIsMobile, useSidebar };