@serhii.olishevskyi/docs 1.2.26 → 1.2.28

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
@@ -1,6 +1,6 @@
1
1
  import * as React$1 from 'react';
2
2
  import React__default, { ReactNode, PropsWithChildren } from 'react';
3
- import { TextFieldProps, SelectProps, SelectChangeEvent, FormControlLabelProps, CheckboxProps, SwitchProps, ButtonProps, IconButtonProps, TooltipProps, SxProps, Theme, TypographyProps, TablePaginationProps } from '@mui/material';
3
+ import { TextFieldProps, SelectProps, SelectChangeEvent, FormControlLabelProps, CheckboxProps, SwitchProps, Theme, ButtonProps, IconButtonProps, TooltipProps, SxProps, TypographyProps, TablePaginationProps } from '@mui/material';
4
4
  import { SystemProps } from '@mui/system';
5
5
  import * as _supabase_supabase_js from '@supabase/supabase-js';
6
6
  import { SupabaseClient, User, Session } from '@supabase/supabase-js';
@@ -162,85 +162,96 @@ interface UrlComponentProps {
162
162
  }
163
163
  declare function UrlComponent({ overrideNamespace, label, value, onChange, disabled, readOnly, required, error, helperText, description, fullWidth, openInNewTab, showLock, lockTooltip, sx, }: UrlComponentProps): React__default.JSX.Element;
164
164
 
165
- type ButtonComponentProps = Omit<ButtonProps, 'children'> & {
166
- /**
167
- * Метка кнопки. Если передана строка, она автоматически
168
- * оборачивается в <TranslateText> для локализации.
169
- */
170
- label?: ReactNode;
171
- /**
172
- * Кастомный неймспейс для перевода (если нужен)
173
- */
174
- overrideNamespace?: string;
175
- /**
176
- * Дочерние элементы (используются, если не передан label)
177
- */
178
- children?: ReactNode;
179
- };
180
- declare const ButtonComponent: React$1.ForwardRefExoticComponent<Omit<ButtonComponentProps, "ref"> & React$1.RefAttributes<HTMLButtonElement>>;
165
+ type AIProviderType = 'gemini' | 'openai';
166
+ interface AIServiceConfig {
167
+ apiKey?: string;
168
+ modelName?: string;
169
+ }
170
+ interface AIConfig {
171
+ provider?: AIProviderType;
172
+ gemini?: AIServiceConfig;
173
+ openai?: AIServiceConfig;
174
+ }
175
+ interface AIGenerateOptions {
176
+ prompt: string;
177
+ systemInstruction?: string;
178
+ jsonMode?: boolean;
179
+ temperature?: number;
180
+ provider?: AIProviderType;
181
+ modelName?: string;
182
+ }
183
+ interface AIContextType {
184
+ activeProvider: AIProviderType;
185
+ config: AIConfig;
186
+ generate: <T = string>(options: AIGenerateOptions) => Promise<T | null>;
187
+ /** Метод для перезагрузки настроек из базы данных */
188
+ reloadConfig: () => Promise<void>;
189
+ }
190
+ interface AIProviderProps {
191
+ children: React__default.ReactNode;
192
+ config?: AIConfig;
193
+ }
194
+ declare const AIProvider: React__default.FC<AIProviderProps>;
195
+ declare const useAI: () => AIContextType;
181
196
 
182
- interface CopyClipboardButtonComponentProps extends Omit<IconButtonProps, 'onClick'> {
197
+ type DialogSeverity = 'error' | 'warning' | 'info' | 'success';
198
+ type ConfirmResult = 'yes' | 'no' | 'cancel';
199
+ interface ConfirmOptions {
183
200
  overrideNamespace?: string;
184
- /** Текст, який буде скопійовано в буфер обміну */
185
- textToCopy: string;
186
- /** Підказка для тултипу за замовчуванням (коли текст ще не скопійовано) */
187
- copyTooltipText?: string;
188
- /** Підказка для тултипу після успішного копіювання */
189
- copiedTooltipText?: string;
190
- /** Простір імен для локалізації i18n / TranslateText */
191
- namespace?: string;
192
- /** Час у мс, протягом якого відображається галочка успішного копіювання ( за замовчуванням 2000мс ) */
193
- resetDelay?: number;
194
- /** Callback, що викликається після успішного копіювання */
195
- onCopySuccess?: (text: string) => void;
201
+ title?: ReactNode;
202
+ message: ReactNode;
203
+ type?: DialogSeverity;
204
+ showNoButton?: boolean;
205
+ showCancelButton?: boolean;
206
+ confirmText?: ReactNode;
207
+ noText?: ReactNode;
208
+ cancelText?: ReactNode;
209
+ confirmColor?: 'primary' | 'secondary' | 'error' | 'warning' | 'info' | 'success';
196
210
  }
197
- declare const CopyClipboardButtonComponent: React__default.FC<CopyClipboardButtonComponentProps>;
198
-
199
- interface RefreshButtonComponentProps {
211
+ interface ConfirmationProviderProps {
200
212
  overrideNamespace?: string;
201
- size?: 'small' | 'medium' | 'large';
202
- color?: "success" | "error" | "info" | "warning";
203
- onClick?: (event: React__default.MouseEvent<HTMLButtonElement>) => void | Promise<void>;
204
- disabled?: boolean;
205
- fullWidth?: boolean;
206
- loading?: boolean;
207
- tooltip?: ReactNode;
208
- mobileViewOnly?: boolean;
209
- disableMobileView?: boolean;
210
- hideTooltipOnMobile?: boolean;
211
- hideTooltipOnDesktop?: boolean;
213
+ children: ReactNode;
212
214
  }
213
- declare const RefreshButtonComponent: React__default.FC<RefreshButtonComponentProps>;
215
+ declare const ConfirmationProvider: React__default.FC<ConfirmationProviderProps>;
216
+ declare const useConfirmation: () => ((options: ConfirmOptions) => Promise<ConfirmResult>);
214
217
 
215
- interface TranslatableTooltipComponentProps extends Omit<TooltipProps, 'children'> {
216
- overrideNamespace?: string;
217
- disableSpan?: boolean;
218
- children: React__default.ReactElement;
218
+ interface TranslateProviderProps {
219
+ namespace: string;
220
+ children: React__default.ReactNode;
219
221
  }
220
- declare const TranslatableTooltipComponent: React__default.FC<TranslatableTooltipComponentProps>;
222
+ declare const TranslateProvider: React__default.FC<TranslateProviderProps>;
223
+ declare const useTranslationNamespace: (overrideNamespace?: string) => string;
221
224
 
222
- interface UserAvatarComponentProps {
223
- userId?: string | null;
224
- avatarUrl?: string | null;
225
- displayName?: string | null;
226
- employeePost?: string | null;
227
- size?: number;
228
- disableBorder?: boolean;
229
- disableShadow?: boolean;
230
- disablePopover?: boolean;
231
- disableTooltip?: boolean;
232
- sx?: SxProps<Theme>;
225
+ interface SupabaseConfig {
226
+ url: string;
227
+ anonKey: string;
233
228
  }
234
- declare const UserAvatarComponent: React__default.FC<UserAvatarComponentProps>;
229
+ interface SupabaseProviderProps {
230
+ children: React__default.ReactNode;
231
+ /** Вы можете передать готовый клиент Supabase... */
232
+ client?: SupabaseClient;
233
+ /** ...или передать конфиг (url и anonKey), и библиотека создаст клиент сама */
234
+ config?: SupabaseConfig;
235
+ }
236
+ declare const SupabaseProvider: React__default.FC<SupabaseProviderProps>;
237
+ /** Хук для доступа к Supabase из любого компонента */
238
+ declare const useSupabase: () => SupabaseClient;
235
239
 
236
- interface UserPopoverComponentProps {
237
- overrideNamespace?: string;
238
- userId: string;
239
- anchorEl: HTMLElement | null;
240
- open: boolean;
241
- onClose: () => void;
240
+ interface AppSettingsMap {
241
+ max_group_members: number;
242
+ [key: string]: any;
242
243
  }
243
- declare const UserPopoverComponent: React__default.FC<UserPopoverComponentProps>;
244
+ interface AppSettingsContextType {
245
+ settings: AppSettingsMap;
246
+ loading: boolean;
247
+ error: string | null;
248
+ getSetting: <T = any>(key: string, defaultValue: T) => T;
249
+ refetchSettings: () => Promise<void>;
250
+ }
251
+ declare const AppSettingsProvider: React__default.FC<{
252
+ children: React__default.ReactNode;
253
+ }>;
254
+ declare const useAppSettings: () => AppSettingsContextType;
244
255
 
245
256
  interface UserProfile {
246
257
  id: string;
@@ -367,263 +378,6 @@ interface FullCompanyMemberItem {
367
378
  created_at: string;
368
379
  }
369
380
 
370
- interface UserRoleChipComponentProps {
371
- overrideNamespace?: string;
372
- role: MembershipRole;
373
- }
374
- declare const UserRoleChipComponent: React__default.FC<UserRoleChipComponentProps>;
375
-
376
- interface UserStatusChipComponentProps {
377
- overrideNamespace?: string;
378
- state: {
379
- profile_archived: boolean;
380
- profile_locked: boolean;
381
- excluded: boolean;
382
- locked: boolean;
383
- locked_reason: string;
384
- };
385
- }
386
- declare const UserStatusChipComponent: React__default.FC<UserStatusChipComponentProps>;
387
-
388
- interface MyAvatarComponentProps {
389
- size?: number;
390
- disableBorder?: boolean;
391
- disableShadow?: boolean;
392
- disablePopover?: boolean;
393
- sx?: SxProps<Theme>;
394
- }
395
- declare const MyAvatarComponent: React__default.FC<MyAvatarComponentProps>;
396
-
397
- interface ExpandableNoteComponentProps extends Omit<TypographyProps, 'children'> {
398
- overrideNamespace?: string;
399
- text?: string;
400
- maxLength?: number;
401
- label?: React__default.ReactNode;
402
- }
403
- declare const ExpandableNoteComponent: React__default.FC<ExpandableNoteComponentProps>;
404
-
405
- interface ErrorAlertComponentProps {
406
- overrideNamespace?: string;
407
- title?: ReactNode;
408
- message: ReactNode;
409
- onRetry?: () => void;
410
- retryText?: ReactNode;
411
- isRetrying?: boolean;
412
- }
413
- declare const ErrorAlertComponent: React__default.FC<ErrorAlertComponentProps>;
414
-
415
- interface TruncatedTypographyProps extends TypographyProps {
416
- /** Текст или содержимое */
417
- children: React__default.ReactNode;
418
- /** Максимальное количество строк. Если не указано или равно 1, обрезает в одну строку. */
419
- lines?: number;
420
- /** Пропсы для передачи в MUI Tooltip (например, placement, arrow и т.д.) */
421
- tooltipProps?: Omit<TooltipProps, 'title' | 'children'>;
422
- /** Принудительно показывать Tooltip всегда, даже если текст не обрезался */
423
- alwaysShowTooltip?: boolean;
424
- }
425
- declare const TruncatedTypography: React__default.FC<TruncatedTypographyProps>;
426
-
427
- type TextTruncateMode = 'truncate' | 'clamp-2' | 'wrap';
428
- interface HeaderActionItem {
429
- id: string;
430
- label: string;
431
- icon?: React__default.ReactNode;
432
- onClick: () => void;
433
- color?: 'inherit' | 'primary' | 'secondary' | 'error' | 'warning' | 'info' | 'success';
434
- disabled?: boolean;
435
- divider?: boolean;
436
- }
437
- interface PrimaryActionProps {
438
- label: string;
439
- onClick: () => void;
440
- icon?: React__default.ReactNode;
441
- variant?: 'contained' | 'outlined' | 'text';
442
- color?: 'primary' | 'secondary' | 'success' | 'error' | 'info' | 'warning';
443
- disabled?: boolean;
444
- }
445
- interface RefreshActionProps {
446
- onClick: () => void;
447
- disabled?: boolean;
448
- }
449
- interface PageHeaderProps {
450
- overrideNamespace?: string;
451
- icon?: React__default.ReactNode;
452
- title: string;
453
- subtitle?: string;
454
- tag?: React__default.ReactNode;
455
- titleTruncateMode?: TextTruncateMode;
456
- subtitleTruncateMode?: TextTruncateMode;
457
- customFragment?: React__default.JSX.Element;
458
- primaryAction?: PrimaryActionProps;
459
- secondaryActions?: HeaderActionItem[];
460
- refreshAction?: RefreshActionProps;
461
- mobileBreakpoint?: 'xs' | 'sm' | 'md';
462
- forceMobileView?: boolean;
463
- sx?: SxProps<Theme>;
464
- }
465
- type PageComponentProps = {
466
- header?: PageHeaderProps;
467
- };
468
- declare const PageComponent: React__default.FC<PropsWithChildren<PageComponentProps>>;
469
-
470
- type FilterWidth = '25%' | '33%' | '50%' | '66%' | '75%' | '100%';
471
- interface FilterSectionProps extends PropsWithChildren {
472
- /** Ширина самой секции на десктопе (по умолчанию '100%') */
473
- width?: FilterWidth;
474
- /** Ширина самой секции на мобильном (по умолчанию '100%') */
475
- mobileWidth?: FilterWidth;
476
- /** Ширина каждого элемента ВНУТРИ секции на десктопе (по умолчанию '50%') */
477
- itemWidth?: FilterWidth;
478
- /** Ширина каждого элемента ВНУТРИ секции на мобильном (по умолчанию '100%') */
479
- itemMobileWidth?: FilterWidth;
480
- }
481
- interface FilterContainerComponentProps extends PropsWithChildren {
482
- sections?: ReactNode[];
483
- sx?: SxProps<Theme>;
484
- }
485
- declare const FilterContainerComponent: React__default.FC<FilterContainerComponentProps>;
486
-
487
- interface PageLink {
488
- text: ReactNode;
489
- href?: string;
490
- external?: boolean;
491
- onClick?: React__default.MouseEventHandler<HTMLButtonElement> | undefined;
492
- hidden?: boolean;
493
- }
494
- interface PageLinkComponentProps {
495
- overrideNamespace?: string;
496
- title: ReactNode;
497
- subheader?: ReactNode;
498
- description: ReactNode;
499
- icon?: React__default.ReactElement;
500
- links: PageLink[];
501
- actionButtonText?: ReactNode;
502
- bgcolor?: SystemProps<Theme>['bgcolor'];
503
- onActionButtonClick?: () => void;
504
- }
505
- declare const PageLinkComponent: React__default.FC<PageLinkComponentProps>;
506
-
507
- type CollapsedContainerComponentProps = {
508
- overrideNamespace?: string;
509
- title: ReactNode;
510
- subtitle?: ReactNode;
511
- icon?: ReactNode;
512
- expanded?: boolean;
513
- uncollapsedContent?: ReactNode;
514
- disableShadow?: boolean;
515
- onExpanded?: (expanded: boolean) => void;
516
- };
517
- declare const CollapsedContainerComponent: (props: PropsWithChildren<CollapsedContainerComponentProps>) => React$1.JSX.Element;
518
-
519
- declare const LanguageSelector: React__default.FC;
520
- declare const PublicLanguageSelector: React__default.FC;
521
-
522
- type TablePaginationComponentProps = {
523
- overrideNamespace?: string;
524
- rowsPerPageOptions?: readonly (number | {
525
- value: number;
526
- label: string;
527
- })[] | undefined;
528
- count: number;
529
- rowsPerPage: number;
530
- page: number;
531
- onPageChange: TablePaginationProps['onPageChange'];
532
- onRowsPerPageChange?: TablePaginationProps['onRowsPerPageChange'];
533
- };
534
- declare const TablePaginationComponent: ({ overrideNamespace, rowsPerPageOptions, count, rowsPerPage, page, onPageChange, onRowsPerPageChange, }: TablePaginationComponentProps) => React__default.JSX.Element;
535
-
536
- type AIProviderType = 'gemini' | 'openai';
537
- interface AIServiceConfig {
538
- apiKey?: string;
539
- modelName?: string;
540
- }
541
- interface AIConfig {
542
- provider?: AIProviderType;
543
- gemini?: AIServiceConfig;
544
- openai?: AIServiceConfig;
545
- }
546
- interface AIGenerateOptions {
547
- prompt: string;
548
- systemInstruction?: string;
549
- jsonMode?: boolean;
550
- temperature?: number;
551
- provider?: AIProviderType;
552
- modelName?: string;
553
- }
554
- interface AIContextType {
555
- activeProvider: AIProviderType;
556
- config: AIConfig;
557
- generate: <T = string>(options: AIGenerateOptions) => Promise<T | null>;
558
- /** Метод для перезагрузки настроек из базы данных */
559
- reloadConfig: () => Promise<void>;
560
- }
561
- interface AIProviderProps {
562
- children: React__default.ReactNode;
563
- config?: AIConfig;
564
- }
565
- declare const AIProvider: React__default.FC<AIProviderProps>;
566
- declare const useAI: () => AIContextType;
567
-
568
- type DialogSeverity = 'error' | 'warning' | 'info' | 'success';
569
- type ConfirmResult = 'yes' | 'no' | 'cancel';
570
- interface ConfirmOptions {
571
- overrideNamespace?: string;
572
- title?: ReactNode;
573
- message: ReactNode;
574
- type?: DialogSeverity;
575
- showNoButton?: boolean;
576
- showCancelButton?: boolean;
577
- confirmText?: ReactNode;
578
- noText?: ReactNode;
579
- cancelText?: ReactNode;
580
- confirmColor?: 'primary' | 'secondary' | 'error' | 'warning' | 'info' | 'success';
581
- }
582
- interface ConfirmationProviderProps {
583
- overrideNamespace?: string;
584
- children: ReactNode;
585
- }
586
- declare const ConfirmationProvider: React__default.FC<ConfirmationProviderProps>;
587
- declare const useConfirmation: () => ((options: ConfirmOptions) => Promise<ConfirmResult>);
588
-
589
- interface TranslateProviderProps {
590
- namespace: string;
591
- children: React__default.ReactNode;
592
- }
593
- declare const TranslateProvider: React__default.FC<TranslateProviderProps>;
594
- declare const useTranslationNamespace: (overrideNamespace?: string) => string;
595
-
596
- interface SupabaseConfig {
597
- url: string;
598
- anonKey: string;
599
- }
600
- interface SupabaseProviderProps {
601
- children: React__default.ReactNode;
602
- /** Вы можете передать готовый клиент Supabase... */
603
- client?: SupabaseClient;
604
- /** ...или передать конфиг (url и anonKey), и библиотека создаст клиент сама */
605
- config?: SupabaseConfig;
606
- }
607
- declare const SupabaseProvider: React__default.FC<SupabaseProviderProps>;
608
- /** Хук для доступа к Supabase из любого компонента */
609
- declare const useSupabase: () => SupabaseClient;
610
-
611
- interface AppSettingsMap {
612
- max_group_members: number;
613
- [key: string]: any;
614
- }
615
- interface AppSettingsContextType {
616
- settings: AppSettingsMap;
617
- loading: boolean;
618
- error: string | null;
619
- getSetting: <T = any>(key: string, defaultValue: T) => T;
620
- refetchSettings: () => Promise<void>;
621
- }
622
- declare const AppSettingsProvider: React__default.FC<{
623
- children: React__default.ReactNode;
624
- }>;
625
- declare const useAppSettings: () => AppSettingsContextType;
626
-
627
381
  interface AuthContextType {
628
382
  user: User | null;
629
383
  profile: UserProfile | null;
@@ -823,6 +577,282 @@ declare const Providers: {
823
577
  readonly AIProvider: React$1.FC<AIProviderProps>;
824
578
  };
825
579
 
580
+ type DateTimePickerMode = 'date' | 'datetime' | 'time';
581
+ type DateTimePickerComponentProps = Omit<TextFieldProps, 'onChange' | 'value'> & {
582
+ overrideNamespace?: string;
583
+ /** Selected date value as Date object, ISO string, or null */
584
+ value?: Date | string | null;
585
+ /** Primary mode: 'date', 'datetime', or 'time' */
586
+ mode?: DateTimePickerMode;
587
+ /** Active language code e.g. 'uk', 'de', 'en', 'es', 'fr', 'it', 'pl' */
588
+ languageCode?: string;
589
+ /** Full list of languages available from your localization provider */
590
+ languagesList?: Language[];
591
+ /** Callback fired when date value changes */
592
+ onDateChange?: (data: {
593
+ date: Date | null;
594
+ formatted: string;
595
+ iso: string;
596
+ mode: DateTimePickerMode;
597
+ }) => void;
598
+ /** Fallback event handler */
599
+ onChange?: (e: React__default.ChangeEvent<HTMLInputElement>) => void;
600
+ copyTooltip?: string;
601
+ copiedTooltip?: string;
602
+ clearTooltip?: string;
603
+ lockTooltip?: string;
604
+ showLock?: boolean;
605
+ hideCopyButton?: boolean;
606
+ hideClearButton?: boolean;
607
+ };
608
+ declare const DateTimePickerComponent: React__default.FC<DateTimePickerComponentProps>;
609
+
610
+ type ButtonComponentProps = Omit<ButtonProps, 'children'> & {
611
+ /**
612
+ * Метка кнопки. Если передана строка, она автоматически
613
+ * оборачивается в <TranslateText> для локализации.
614
+ */
615
+ label?: ReactNode;
616
+ /**
617
+ * Кастомный неймспейс для перевода (если нужен)
618
+ */
619
+ overrideNamespace?: string;
620
+ /**
621
+ * Дочерние элементы (используются, если не передан label)
622
+ */
623
+ children?: ReactNode;
624
+ };
625
+ declare const ButtonComponent: React$1.ForwardRefExoticComponent<Omit<ButtonComponentProps, "ref"> & React$1.RefAttributes<HTMLButtonElement>>;
626
+
627
+ interface CopyClipboardButtonComponentProps extends Omit<IconButtonProps, 'onClick'> {
628
+ overrideNamespace?: string;
629
+ /** Текст, який буде скопійовано в буфер обміну */
630
+ textToCopy: string;
631
+ /** Підказка для тултипу за замовчуванням (коли текст ще не скопійовано) */
632
+ copyTooltipText?: string;
633
+ /** Підказка для тултипу після успішного копіювання */
634
+ copiedTooltipText?: string;
635
+ /** Простір імен для локалізації i18n / TranslateText */
636
+ namespace?: string;
637
+ /** Час у мс, протягом якого відображається галочка успішного копіювання ( за замовчуванням 2000мс ) */
638
+ resetDelay?: number;
639
+ /** Callback, що викликається після успішного копіювання */
640
+ onCopySuccess?: (text: string) => void;
641
+ }
642
+ declare const CopyClipboardButtonComponent: React__default.FC<CopyClipboardButtonComponentProps>;
643
+
644
+ interface RefreshButtonComponentProps {
645
+ overrideNamespace?: string;
646
+ size?: 'small' | 'medium' | 'large';
647
+ color?: "success" | "error" | "info" | "warning";
648
+ onClick?: (event: React__default.MouseEvent<HTMLButtonElement>) => void | Promise<void>;
649
+ disabled?: boolean;
650
+ fullWidth?: boolean;
651
+ loading?: boolean;
652
+ tooltip?: ReactNode;
653
+ mobileViewOnly?: boolean;
654
+ disableMobileView?: boolean;
655
+ hideTooltipOnMobile?: boolean;
656
+ hideTooltipOnDesktop?: boolean;
657
+ }
658
+ declare const RefreshButtonComponent: React__default.FC<RefreshButtonComponentProps>;
659
+
660
+ interface TranslatableTooltipComponentProps extends Omit<TooltipProps, 'children'> {
661
+ overrideNamespace?: string;
662
+ disableSpan?: boolean;
663
+ children: React__default.ReactElement;
664
+ }
665
+ declare const TranslatableTooltipComponent: React__default.FC<TranslatableTooltipComponentProps>;
666
+
667
+ interface UserAvatarComponentProps {
668
+ userId?: string | null;
669
+ avatarUrl?: string | null;
670
+ displayName?: string | null;
671
+ employeePost?: string | null;
672
+ size?: number;
673
+ disableBorder?: boolean;
674
+ disableShadow?: boolean;
675
+ disablePopover?: boolean;
676
+ disableTooltip?: boolean;
677
+ sx?: SxProps<Theme>;
678
+ }
679
+ declare const UserAvatarComponent: React__default.FC<UserAvatarComponentProps>;
680
+
681
+ interface UserPopoverComponentProps {
682
+ overrideNamespace?: string;
683
+ userId: string;
684
+ anchorEl: HTMLElement | null;
685
+ open: boolean;
686
+ onClose: () => void;
687
+ }
688
+ declare const UserPopoverComponent: React__default.FC<UserPopoverComponentProps>;
689
+
690
+ interface UserRoleChipComponentProps {
691
+ overrideNamespace?: string;
692
+ role: MembershipRole;
693
+ }
694
+ declare const UserRoleChipComponent: React__default.FC<UserRoleChipComponentProps>;
695
+
696
+ interface UserStatusChipComponentProps {
697
+ overrideNamespace?: string;
698
+ state: {
699
+ profile_archived: boolean;
700
+ profile_locked: boolean;
701
+ excluded: boolean;
702
+ locked: boolean;
703
+ locked_reason: string;
704
+ };
705
+ }
706
+ declare const UserStatusChipComponent: React__default.FC<UserStatusChipComponentProps>;
707
+
708
+ interface MyAvatarComponentProps {
709
+ size?: number;
710
+ disableBorder?: boolean;
711
+ disableShadow?: boolean;
712
+ disablePopover?: boolean;
713
+ sx?: SxProps<Theme>;
714
+ }
715
+ declare const MyAvatarComponent: React__default.FC<MyAvatarComponentProps>;
716
+
717
+ interface ExpandableNoteComponentProps extends Omit<TypographyProps, 'children'> {
718
+ overrideNamespace?: string;
719
+ text?: string;
720
+ maxLength?: number;
721
+ label?: React__default.ReactNode;
722
+ }
723
+ declare const ExpandableNoteComponent: React__default.FC<ExpandableNoteComponentProps>;
724
+
725
+ interface ErrorAlertComponentProps {
726
+ overrideNamespace?: string;
727
+ title?: ReactNode;
728
+ message: ReactNode;
729
+ onRetry?: () => void;
730
+ retryText?: ReactNode;
731
+ isRetrying?: boolean;
732
+ }
733
+ declare const ErrorAlertComponent: React__default.FC<ErrorAlertComponentProps>;
734
+
735
+ interface TruncatedTypographyComponentProps extends TypographyProps {
736
+ /** Текст или содержимое */
737
+ children: React__default.ReactNode;
738
+ /** Максимальное количество строк. Если не указано или равно 1, обрезает в одну строку. */
739
+ lines?: number;
740
+ /** Пропсы для передачи в MUI Tooltip (например, placement, arrow и т.д.) */
741
+ tooltipProps?: Omit<TooltipProps, 'title' | 'children'>;
742
+ /** Принудительно показывать Tooltip всегда, даже если текст не обрезался */
743
+ alwaysShowTooltip?: boolean;
744
+ }
745
+ declare const TruncatedTypographyComponent: React__default.FC<TruncatedTypographyComponentProps>;
746
+
747
+ type TextTruncateMode = 'truncate' | 'clamp-2' | 'wrap';
748
+ interface HeaderActionItem {
749
+ id: string;
750
+ label: string;
751
+ icon?: React__default.ReactNode;
752
+ onClick: () => void;
753
+ color?: 'inherit' | 'primary' | 'secondary' | 'error' | 'warning' | 'info' | 'success';
754
+ disabled?: boolean;
755
+ divider?: boolean;
756
+ }
757
+ interface PrimaryActionProps {
758
+ label: string;
759
+ onClick: () => void;
760
+ icon?: React__default.ReactNode;
761
+ variant?: 'contained' | 'outlined' | 'text';
762
+ color?: 'primary' | 'secondary' | 'success' | 'error' | 'info' | 'warning';
763
+ disabled?: boolean;
764
+ }
765
+ interface RefreshActionProps {
766
+ onClick: () => void;
767
+ disabled?: boolean;
768
+ }
769
+ interface PageHeaderProps {
770
+ overrideNamespace?: string;
771
+ icon?: React__default.ReactNode;
772
+ title: string;
773
+ subtitle?: string;
774
+ tag?: React__default.ReactNode;
775
+ titleTruncateMode?: TextTruncateMode;
776
+ subtitleTruncateMode?: TextTruncateMode;
777
+ customFragment?: React__default.JSX.Element;
778
+ primaryAction?: PrimaryActionProps;
779
+ secondaryActions?: HeaderActionItem[];
780
+ refreshAction?: RefreshActionProps;
781
+ mobileBreakpoint?: 'xs' | 'sm' | 'md';
782
+ forceMobileView?: boolean;
783
+ sx?: SxProps<Theme>;
784
+ }
785
+ type PageComponentProps = {
786
+ header?: PageHeaderProps;
787
+ };
788
+ declare const PageComponent: React__default.FC<PropsWithChildren<PageComponentProps>>;
789
+
790
+ type FilterWidth = '25%' | '33%' | '50%' | '66%' | '75%' | '100%';
791
+ interface FilterSectionProps extends PropsWithChildren {
792
+ /** Ширина самой секции на десктопе (по умолчанию '100%') */
793
+ width?: FilterWidth;
794
+ /** Ширина самой секции на мобильном (по умолчанию '100%') */
795
+ mobileWidth?: FilterWidth;
796
+ /** Ширина каждого элемента ВНУТРИ секции на десктопе (по умолчанию '50%') */
797
+ itemWidth?: FilterWidth;
798
+ /** Ширина каждого элемента ВНУТРИ секции на мобильном (по умолчанию '100%') */
799
+ itemMobileWidth?: FilterWidth;
800
+ }
801
+ interface FilterContainerComponentProps extends PropsWithChildren {
802
+ sections?: ReactNode[];
803
+ sx?: SxProps<Theme>;
804
+ }
805
+ declare const FilterContainerComponent: React__default.FC<FilterContainerComponentProps>;
806
+
807
+ interface PageLink {
808
+ text: ReactNode;
809
+ href?: string;
810
+ external?: boolean;
811
+ onClick?: React__default.MouseEventHandler<HTMLButtonElement> | undefined;
812
+ hidden?: boolean;
813
+ }
814
+ interface PageLinkComponentProps {
815
+ overrideNamespace?: string;
816
+ title: ReactNode;
817
+ subheader?: ReactNode;
818
+ description: ReactNode;
819
+ icon?: React__default.ReactElement;
820
+ links: PageLink[];
821
+ actionButtonText?: ReactNode;
822
+ bgcolor?: SystemProps<Theme>['bgcolor'];
823
+ onActionButtonClick?: () => void;
824
+ }
825
+ declare const PageLinkComponent: React__default.FC<PageLinkComponentProps>;
826
+
827
+ type CollapsedContainerComponentProps = {
828
+ overrideNamespace?: string;
829
+ title: ReactNode;
830
+ subtitle?: ReactNode;
831
+ icon?: ReactNode;
832
+ expanded?: boolean;
833
+ uncollapsedContent?: ReactNode;
834
+ disableShadow?: boolean;
835
+ onExpanded?: (expanded: boolean) => void;
836
+ };
837
+ declare const CollapsedContainerComponent: (props: PropsWithChildren<CollapsedContainerComponentProps>) => React$1.JSX.Element;
838
+
839
+ declare const LanguageSelector: React__default.FC;
840
+ declare const PublicLanguageSelector: React__default.FC;
841
+
842
+ type TablePaginationComponentProps = {
843
+ overrideNamespace?: string;
844
+ rowsPerPageOptions?: readonly (number | {
845
+ value: number;
846
+ label: string;
847
+ })[] | undefined;
848
+ count: number;
849
+ rowsPerPage: number;
850
+ page: number;
851
+ onPageChange: TablePaginationProps['onPageChange'];
852
+ onRowsPerPageChange?: TablePaginationProps['onRowsPerPageChange'];
853
+ };
854
+ declare const TablePaginationComponent: ({ overrideNamespace, rowsPerPageOptions, count, rowsPerPage, page, onPageChange, onRowsPerPageChange, }: TablePaginationComponentProps) => React__default.JSX.Element;
855
+
826
856
  interface UserSessionItem {
827
857
  id: string;
828
858
  user_id: string;
@@ -883,4 +913,4 @@ declare const Utils: {
883
913
  };
884
914
  };
885
915
 
886
- export { type AIConfig, type AIGenerateOptions, AIProvider, type AIProviderProps, type AIProviderType, AppSettingsProvider, AuthProvider, BreadcrumbProvider, ButtonComponent, type ButtonComponentProps, CheckboxComponent, type CheckboxComponentProps, CollapsedContainerComponent, type CollapsedContainerComponentProps, type CompanyMember, type ConfirmOptions, type ConfirmResult, ConfirmationProvider, type ConfirmationProviderProps, CopyClipboardButtonComponent, type CopyClipboardButtonComponentProps, type DialogSeverity, type DisplayState, EmailInputComponent, type EmailInputComponentProps, ErrorAlertComponent, type ErrorAlertComponentProps, ExpandableNoteComponent, type ExpandableNoteComponentProps, FilterContainerComponent, type FilterContainerComponentProps, type FilterSectionProps, type FilterWidth, type FullCompanyMemberItem, type HeaderActionItem, Hooks, type Language, LocalizationProvider, type Membership, type MembershipRole, MyAvatarComponent, type MyAvatarComponentProps, NumberInputComponent, type NumberInputComponentProps, PageComponent, type PageComponentProps, type PageHeaderProps, type PageLink, PageLinkComponent, type PageLinkComponentProps, type PrimaryActionProps, LanguageSelector as ProtectedLanguageSelector, Providers, PublicLanguageSelector, type RefreshActionProps, RefreshButtonComponent, type RefreshButtonComponentProps, type SaveCompanyUserPayload, SearchComponent, type SearchComponentProps, SelectComponent, type SelectComponentProps, type SelectOption, Services, type SupabaseConfig, SupabaseProvider, type SupabaseProviderProps, SwitchComponent, type SwitchComponentProps, TablePaginationComponent, type TablePaginationComponentProps, TextFieldComponent, type TextFieldComponentProps, type TextTruncateMode, type ThemeColors, type ThemeConfig, type ThemeMode, ThemeProvider, ToastProvider, type ToastType, TranslatableTooltipComponent, type TranslatableTooltipComponentProps, TranslateProvider, TranslateText, TranslationEditProvider, TruncatedTypography, type TruncatedTypographyProps, type TypographyConfig, UrlComponent, type UrlComponentProps, UserAvatarComponent, type UserAvatarComponentProps, type UserGroupedSessions, UserPopoverComponent, type UserPopoverComponentProps, type UserProfile, UserRoleChipComponent, type UserRoleChipComponentProps, type UserSessionItem, type UserSettings, UserSettingsProvider, UserStatusChipComponent, type UserStatusChipComponentProps, type UserStatusType, Utils, defaultUserSettings, initI18n, useAI, useAppSettings, useAppTheme, useAuth, useBreadcrumb, useConfirmation, useLocalization, useSupabase, useToast, useTranslationEdit, useTranslationNamespace, useUserSettings };
916
+ export { type AIConfig, type AIGenerateOptions, AIProvider, type AIProviderProps, type AIProviderType, AppSettingsProvider, AuthProvider, BreadcrumbProvider, ButtonComponent, type ButtonComponentProps, CheckboxComponent, type CheckboxComponentProps, CollapsedContainerComponent, type CollapsedContainerComponentProps, type CompanyMember, type ConfirmOptions, type ConfirmResult, ConfirmationProvider, type ConfirmationProviderProps, CopyClipboardButtonComponent, type CopyClipboardButtonComponentProps, DateTimePickerComponent, type DateTimePickerComponentProps, type DialogSeverity, type DisplayState, EmailInputComponent, type EmailInputComponentProps, ErrorAlertComponent, type ErrorAlertComponentProps, ExpandableNoteComponent, type ExpandableNoteComponentProps, FilterContainerComponent, type FilterContainerComponentProps, type FilterSectionProps, type FilterWidth, type FullCompanyMemberItem, type HeaderActionItem, Hooks, type Language, LocalizationProvider, type Membership, type MembershipRole, MyAvatarComponent, type MyAvatarComponentProps, NumberInputComponent, type NumberInputComponentProps, PageComponent, type PageComponentProps, type PageHeaderProps, type PageLink, PageLinkComponent, type PageLinkComponentProps, type PrimaryActionProps, LanguageSelector as ProtectedLanguageSelector, Providers, PublicLanguageSelector, type RefreshActionProps, RefreshButtonComponent, type RefreshButtonComponentProps, type SaveCompanyUserPayload, SearchComponent, type SearchComponentProps, SelectComponent, type SelectComponentProps, type SelectOption, Services, type SupabaseConfig, SupabaseProvider, type SupabaseProviderProps, SwitchComponent, type SwitchComponentProps, TablePaginationComponent, type TablePaginationComponentProps, TextFieldComponent, type TextFieldComponentProps, type TextTruncateMode, type ThemeColors, type ThemeConfig, type ThemeMode, ThemeProvider, ToastProvider, type ToastType, TranslatableTooltipComponent, type TranslatableTooltipComponentProps, TranslateProvider, TranslateText, TranslationEditProvider, TruncatedTypographyComponent, type TruncatedTypographyComponentProps, type TypographyConfig, UrlComponent, type UrlComponentProps, UserAvatarComponent, type UserAvatarComponentProps, type UserGroupedSessions, UserPopoverComponent, type UserPopoverComponentProps, type UserProfile, UserRoleChipComponent, type UserRoleChipComponentProps, type UserSessionItem, type UserSettings, UserSettingsProvider, UserStatusChipComponent, type UserStatusChipComponentProps, type UserStatusType, Utils, defaultUserSettings, initI18n, useAI, useAppSettings, useAppTheme, useAuth, useBreadcrumb, useConfirmation, useLocalization, useSupabase, useToast, useTranslationEdit, useTranslationNamespace, useUserSettings };