@serhii.olishevskyi/docs 1.0.1 → 1.0.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.mts CHANGED
@@ -1,9 +1,34 @@
1
- import * as React from 'react';
1
+ import * as React$1 from 'react';
2
2
  import React__default, { ReactNode } from 'react';
3
- import { TextFieldProps, Theme } from '@mui/material';
3
+ import { TextFieldProps, TooltipProps, Theme } from '@mui/material';
4
4
  import { SupabaseClient } from '@supabase/supabase-js';
5
5
 
6
- type TextfieldComponentProps = TextFieldProps & {
6
+ interface UrlValue {
7
+ url: string;
8
+ title?: string;
9
+ }
10
+ interface UrlComponentProps {
11
+ overrideNamespace?: string;
12
+ label: string;
13
+ value: UrlValue | string;
14
+ onChange?: (value: UrlValue) => void;
15
+ disabled?: boolean;
16
+ readOnly?: boolean;
17
+ required?: boolean;
18
+ error?: boolean;
19
+ helperText?: string;
20
+ description?: string;
21
+ fullWidth?: boolean;
22
+ openInNewTab?: boolean;
23
+ showLock?: boolean;
24
+ lockTooltip?: string;
25
+ sx?: any;
26
+ }
27
+ declare function UrlComponent({ overrideNamespace, label, value, onChange, disabled, readOnly, required, error, helperText, description, fullWidth, openInNewTab, showLock, lockTooltip, sx, }: UrlComponentProps): React__default.JSX.Element;
28
+
29
+ type TextFieldComponentProps = TextFieldProps & {
30
+ overrideNamespace?: string;
31
+ label?: ReactNode;
7
32
  copyTooltip?: string;
8
33
  copiedTooltip?: string;
9
34
  clearTooltip?: string;
@@ -13,7 +38,8 @@ type TextfieldComponentProps = TextFieldProps & {
13
38
  disableClearButton?: boolean;
14
39
  };
15
40
 
16
- type NumberInputComponentProps = Omit<TextfieldComponentProps, 'onChange' | 'type'> & {
41
+ type NumberInputComponentProps = Omit<TextFieldComponentProps, 'onChange' | 'type'> & {
42
+ overrideNamespace?: string;
17
43
  value: number | string | null | undefined;
18
44
  onChange?: (value: number | null, stringValue: string) => void;
19
45
  allowNegative?: boolean;
@@ -27,13 +53,93 @@ type NumberInputComponentProps = Omit<TextfieldComponentProps, 'onChange' | 'typ
27
53
  highlightNegative?: boolean;
28
54
  };
29
55
 
30
- declare const CardForm: {
56
+ type EmailInputComponentProps = Omit<TextFieldComponentProps, 'type'> & {
57
+ /**
58
+ * Текст ошибки валидации (ключ для перевода или обычная строка)
59
+ * @default 'Invalid email address'
60
+ */
61
+ invalidEmailError?: string;
62
+ /**
63
+ * Отключает внутреннюю валидацию (если нужно использовать внешний контроллер валидации)
64
+ */
65
+ disableValidation?: boolean;
66
+ /**
67
+ * Колбэк для передачи состояния валидности родительскому компоненту
68
+ */
69
+ onValidationChange?: (isValid: boolean) => void;
70
+ };
71
+
72
+ interface TranslatableTooltipComponentProps extends Omit<TooltipProps, 'children'> {
73
+ overrideNamespace?: string;
74
+ disableSpan?: boolean;
75
+ children: React__default.ReactElement;
76
+ }
77
+
78
+ declare const UI: {
31
79
  Inputs: {
32
- TextField: React.FC<TextfieldComponentProps>;
33
- NumberField: React.FC<NumberInputComponentProps>;
80
+ TextField: React$1.FC<TextFieldComponentProps>;
81
+ NumberField: React$1.FC<NumberInputComponentProps>;
82
+ EmailField: React$1.FC<EmailInputComponentProps>;
83
+ Url: typeof UrlComponent;
84
+ };
85
+ DataDisplay: {
86
+ TranslatableTooltip: React$1.FC<TranslatableTooltipComponentProps>;
34
87
  };
35
88
  };
36
89
 
90
+ type AIProviderType = 'gemini' | 'openai';
91
+ interface AIGenerateOptions {
92
+ prompt: string;
93
+ systemInstruction?: string;
94
+ jsonMode?: boolean;
95
+ temperature?: number;
96
+ }
97
+ interface AIConfig {
98
+ apiKey?: string;
99
+ provider?: AIProviderType;
100
+ modelName?: string;
101
+ }
102
+ interface AIContextType {
103
+ apiKey?: string;
104
+ provider: AIProviderType;
105
+ modelName: string;
106
+ /** Универсальный метод генерации (текст или JSON) */
107
+ generate: <T = string>(options: AIGenerateOptions) => Promise<T | null>;
108
+ }
109
+ interface AIProviderProps {
110
+ children: React__default.ReactNode;
111
+ config?: AIConfig;
112
+ apiKey?: string;
113
+ }
114
+ declare const AIProvider: React__default.FC<AIProviderProps>;
115
+ declare const useAI: () => AIContextType;
116
+
117
+ type DialogSeverity = 'error' | 'warning' | 'info' | 'success';
118
+ type ConfirmResult = 'yes' | 'no' | 'cancel';
119
+ interface ConfirmOptions {
120
+ title?: ReactNode;
121
+ message: ReactNode;
122
+ type?: DialogSeverity;
123
+ showNoButton?: boolean;
124
+ showCancelButton?: boolean;
125
+ confirmText?: ReactNode;
126
+ noText?: ReactNode;
127
+ cancelText?: ReactNode;
128
+ confirmColor?: 'primary' | 'secondary' | 'error' | 'warning' | 'info' | 'success';
129
+ }
130
+ interface ConfirmationProviderProps {
131
+ children: ReactNode;
132
+ }
133
+ declare const ConfirmationProvider: React__default.FC<ConfirmationProviderProps>;
134
+ declare const useConfirmation: () => ((options: ConfirmOptions) => Promise<ConfirmResult>);
135
+
136
+ interface TranslateProviderProps {
137
+ namespace: string;
138
+ children: React__default.ReactNode;
139
+ }
140
+ declare const TranslateProvider: React__default.FC<TranslateProviderProps>;
141
+ declare const useTranslationNamespace: (overrideNamespace?: string) => string;
142
+
37
143
  interface SupabaseConfig {
38
144
  url: string;
39
145
  anonKey: string;
@@ -49,14 +155,8 @@ declare const SupabaseProvider: React__default.FC<SupabaseProviderProps>;
49
155
  /** Хук для доступа к Supabase из любого компонента */
50
156
  declare const useSupabase: () => SupabaseClient;
51
157
 
52
- interface TranslateProviderProps {
53
- namespace: string;
54
- children: React__default.ReactNode;
55
- }
56
- declare const TranslateProvider: React__default.FC<TranslateProviderProps>;
57
- declare const useTranslationNamespace: (overrideNamespace?: string) => string;
58
-
59
158
  interface TranslateTextProps {
159
+ overrideNamespace?: string;
60
160
  children: string;
61
161
  values?: Record<string, any>;
62
162
  }
@@ -173,50 +273,26 @@ declare const ToastProvider: React__default.FC<{
173
273
  }>;
174
274
  declare const useToast: () => ToastContextType;
175
275
 
176
- type DialogSeverity = 'error' | 'warning' | 'info' | 'success';
177
- type ConfirmResult = 'yes' | 'no' | 'cancel';
178
- interface ConfirmOptions {
179
- title?: ReactNode;
180
- message: ReactNode;
181
- type?: DialogSeverity;
182
- showNoButton?: boolean;
183
- showCancelButton?: boolean;
184
- confirmText?: ReactNode;
185
- noText?: ReactNode;
186
- cancelText?: ReactNode;
187
- confirmColor?: 'primary' | 'secondary' | 'error' | 'warning' | 'info' | 'success';
188
- }
189
- interface ConfirmationProviderProps {
190
- children: ReactNode;
191
- }
192
- declare const ConfirmationProvider: React__default.FC<ConfirmationProviderProps>;
193
- declare const useConfirmation: () => ((options: ConfirmOptions) => Promise<ConfirmResult>);
194
-
195
- type AIProviderType = 'gemini' | 'openai';
196
- interface AIGenerateOptions {
197
- prompt: string;
198
- systemInstruction?: string;
199
- jsonMode?: boolean;
200
- temperature?: number;
201
- }
202
- interface AIConfig {
203
- apiKey?: string;
204
- provider?: AIProviderType;
205
- modelName?: string;
206
- }
207
- interface AIContextType {
208
- apiKey?: string;
209
- provider: AIProviderType;
210
- modelName: string;
211
- /** Универсальный метод генерации (текст или JSON) */
212
- generate: <T = string>(options: AIGenerateOptions) => Promise<T | null>;
213
- }
214
- interface AIProviderProps {
215
- children: React__default.ReactNode;
216
- config?: AIConfig;
217
- apiKey?: string;
218
- }
219
- declare const AIProvider: React__default.FC<AIProviderProps>;
220
- declare const useAI: () => AIContextType;
276
+ declare const Providers: {
277
+ readonly Supabase: React$1.FC<SupabaseProviderProps>;
278
+ readonly Translate: React$1.FC<TranslateProviderProps>;
279
+ readonly TranslationEdit: React$1.FC<{
280
+ children: React.ReactNode;
281
+ }>;
282
+ readonly Localization: React$1.FC<{
283
+ children: React$1.ReactNode;
284
+ }>;
285
+ readonly Theme: React$1.FC<{
286
+ children: React.ReactNode;
287
+ }>;
288
+ readonly Breadcrumb: React$1.FC<{
289
+ children: React.ReactNode;
290
+ }>;
291
+ readonly Toast: React$1.FC<{
292
+ children: React.ReactNode;
293
+ }>;
294
+ readonly Confirmation: React$1.FC<ConfirmationProviderProps>;
295
+ readonly AI: React$1.FC<AIProviderProps>;
296
+ };
221
297
 
222
- export { type AIConfig, type AIGenerateOptions, AIProvider, type AIProviderProps, type AIProviderType, BreadcrumbProvider, CardForm, type ConfirmOptions, type ConfirmResult, ConfirmationProvider, type ConfirmationProviderProps, type DialogSeverity, type DisplayState, type Language, LocalizationProvider, type NumberInputComponentProps, type SupabaseConfig, SupabaseProvider, type SupabaseProviderProps, type TextfieldComponentProps, type ThemeColors, type ThemeConfig, type ThemeMode, ThemeProvider, ToastProvider, type ToastType, TranslateProvider, TranslateText, TranslationEditProvider, type TypographyConfig, useAI, useAppTheme, useBreadcrumb, useConfirmation, useLocalization, useSupabase, useToast, useTranslationEdit, useTranslationNamespace };
298
+ export { type AIConfig, type AIGenerateOptions, AIProvider, type AIProviderProps, type AIProviderType, BreadcrumbProvider, type ConfirmOptions, type ConfirmResult, ConfirmationProvider, type ConfirmationProviderProps, type DialogSeverity, type DisplayState, type EmailInputComponentProps as EmailInputProps, type Language, LocalizationProvider, type NumberInputComponentProps as NumberInputProps, Providers, type SupabaseConfig, SupabaseProvider, type SupabaseProviderProps, type TextFieldComponentProps as TextFieldProps, type ThemeColors, type ThemeConfig, type ThemeMode, ThemeProvider, ToastProvider, type ToastType, type TranslatableTooltipComponentProps as TranslatableTooltipProps, TranslateProvider, TranslateText, TranslationEditProvider, type TypographyConfig, UI, type UrlComponentProps as UrlProps, useAI, useAppTheme, useBreadcrumb, useConfirmation, useLocalization, useSupabase, useToast, useTranslationEdit, useTranslationNamespace };
package/dist/index.d.ts CHANGED
@@ -1,9 +1,34 @@
1
- import * as React from 'react';
1
+ import * as React$1 from 'react';
2
2
  import React__default, { ReactNode } from 'react';
3
- import { TextFieldProps, Theme } from '@mui/material';
3
+ import { TextFieldProps, TooltipProps, Theme } from '@mui/material';
4
4
  import { SupabaseClient } from '@supabase/supabase-js';
5
5
 
6
- type TextfieldComponentProps = TextFieldProps & {
6
+ interface UrlValue {
7
+ url: string;
8
+ title?: string;
9
+ }
10
+ interface UrlComponentProps {
11
+ overrideNamespace?: string;
12
+ label: string;
13
+ value: UrlValue | string;
14
+ onChange?: (value: UrlValue) => void;
15
+ disabled?: boolean;
16
+ readOnly?: boolean;
17
+ required?: boolean;
18
+ error?: boolean;
19
+ helperText?: string;
20
+ description?: string;
21
+ fullWidth?: boolean;
22
+ openInNewTab?: boolean;
23
+ showLock?: boolean;
24
+ lockTooltip?: string;
25
+ sx?: any;
26
+ }
27
+ declare function UrlComponent({ overrideNamespace, label, value, onChange, disabled, readOnly, required, error, helperText, description, fullWidth, openInNewTab, showLock, lockTooltip, sx, }: UrlComponentProps): React__default.JSX.Element;
28
+
29
+ type TextFieldComponentProps = TextFieldProps & {
30
+ overrideNamespace?: string;
31
+ label?: ReactNode;
7
32
  copyTooltip?: string;
8
33
  copiedTooltip?: string;
9
34
  clearTooltip?: string;
@@ -13,7 +38,8 @@ type TextfieldComponentProps = TextFieldProps & {
13
38
  disableClearButton?: boolean;
14
39
  };
15
40
 
16
- type NumberInputComponentProps = Omit<TextfieldComponentProps, 'onChange' | 'type'> & {
41
+ type NumberInputComponentProps = Omit<TextFieldComponentProps, 'onChange' | 'type'> & {
42
+ overrideNamespace?: string;
17
43
  value: number | string | null | undefined;
18
44
  onChange?: (value: number | null, stringValue: string) => void;
19
45
  allowNegative?: boolean;
@@ -27,13 +53,93 @@ type NumberInputComponentProps = Omit<TextfieldComponentProps, 'onChange' | 'typ
27
53
  highlightNegative?: boolean;
28
54
  };
29
55
 
30
- declare const CardForm: {
56
+ type EmailInputComponentProps = Omit<TextFieldComponentProps, 'type'> & {
57
+ /**
58
+ * Текст ошибки валидации (ключ для перевода или обычная строка)
59
+ * @default 'Invalid email address'
60
+ */
61
+ invalidEmailError?: string;
62
+ /**
63
+ * Отключает внутреннюю валидацию (если нужно использовать внешний контроллер валидации)
64
+ */
65
+ disableValidation?: boolean;
66
+ /**
67
+ * Колбэк для передачи состояния валидности родительскому компоненту
68
+ */
69
+ onValidationChange?: (isValid: boolean) => void;
70
+ };
71
+
72
+ interface TranslatableTooltipComponentProps extends Omit<TooltipProps, 'children'> {
73
+ overrideNamespace?: string;
74
+ disableSpan?: boolean;
75
+ children: React__default.ReactElement;
76
+ }
77
+
78
+ declare const UI: {
31
79
  Inputs: {
32
- TextField: React.FC<TextfieldComponentProps>;
33
- NumberField: React.FC<NumberInputComponentProps>;
80
+ TextField: React$1.FC<TextFieldComponentProps>;
81
+ NumberField: React$1.FC<NumberInputComponentProps>;
82
+ EmailField: React$1.FC<EmailInputComponentProps>;
83
+ Url: typeof UrlComponent;
84
+ };
85
+ DataDisplay: {
86
+ TranslatableTooltip: React$1.FC<TranslatableTooltipComponentProps>;
34
87
  };
35
88
  };
36
89
 
90
+ type AIProviderType = 'gemini' | 'openai';
91
+ interface AIGenerateOptions {
92
+ prompt: string;
93
+ systemInstruction?: string;
94
+ jsonMode?: boolean;
95
+ temperature?: number;
96
+ }
97
+ interface AIConfig {
98
+ apiKey?: string;
99
+ provider?: AIProviderType;
100
+ modelName?: string;
101
+ }
102
+ interface AIContextType {
103
+ apiKey?: string;
104
+ provider: AIProviderType;
105
+ modelName: string;
106
+ /** Универсальный метод генерации (текст или JSON) */
107
+ generate: <T = string>(options: AIGenerateOptions) => Promise<T | null>;
108
+ }
109
+ interface AIProviderProps {
110
+ children: React__default.ReactNode;
111
+ config?: AIConfig;
112
+ apiKey?: string;
113
+ }
114
+ declare const AIProvider: React__default.FC<AIProviderProps>;
115
+ declare const useAI: () => AIContextType;
116
+
117
+ type DialogSeverity = 'error' | 'warning' | 'info' | 'success';
118
+ type ConfirmResult = 'yes' | 'no' | 'cancel';
119
+ interface ConfirmOptions {
120
+ title?: ReactNode;
121
+ message: ReactNode;
122
+ type?: DialogSeverity;
123
+ showNoButton?: boolean;
124
+ showCancelButton?: boolean;
125
+ confirmText?: ReactNode;
126
+ noText?: ReactNode;
127
+ cancelText?: ReactNode;
128
+ confirmColor?: 'primary' | 'secondary' | 'error' | 'warning' | 'info' | 'success';
129
+ }
130
+ interface ConfirmationProviderProps {
131
+ children: ReactNode;
132
+ }
133
+ declare const ConfirmationProvider: React__default.FC<ConfirmationProviderProps>;
134
+ declare const useConfirmation: () => ((options: ConfirmOptions) => Promise<ConfirmResult>);
135
+
136
+ interface TranslateProviderProps {
137
+ namespace: string;
138
+ children: React__default.ReactNode;
139
+ }
140
+ declare const TranslateProvider: React__default.FC<TranslateProviderProps>;
141
+ declare const useTranslationNamespace: (overrideNamespace?: string) => string;
142
+
37
143
  interface SupabaseConfig {
38
144
  url: string;
39
145
  anonKey: string;
@@ -49,14 +155,8 @@ declare const SupabaseProvider: React__default.FC<SupabaseProviderProps>;
49
155
  /** Хук для доступа к Supabase из любого компонента */
50
156
  declare const useSupabase: () => SupabaseClient;
51
157
 
52
- interface TranslateProviderProps {
53
- namespace: string;
54
- children: React__default.ReactNode;
55
- }
56
- declare const TranslateProvider: React__default.FC<TranslateProviderProps>;
57
- declare const useTranslationNamespace: (overrideNamespace?: string) => string;
58
-
59
158
  interface TranslateTextProps {
159
+ overrideNamespace?: string;
60
160
  children: string;
61
161
  values?: Record<string, any>;
62
162
  }
@@ -173,50 +273,26 @@ declare const ToastProvider: React__default.FC<{
173
273
  }>;
174
274
  declare const useToast: () => ToastContextType;
175
275
 
176
- type DialogSeverity = 'error' | 'warning' | 'info' | 'success';
177
- type ConfirmResult = 'yes' | 'no' | 'cancel';
178
- interface ConfirmOptions {
179
- title?: ReactNode;
180
- message: ReactNode;
181
- type?: DialogSeverity;
182
- showNoButton?: boolean;
183
- showCancelButton?: boolean;
184
- confirmText?: ReactNode;
185
- noText?: ReactNode;
186
- cancelText?: ReactNode;
187
- confirmColor?: 'primary' | 'secondary' | 'error' | 'warning' | 'info' | 'success';
188
- }
189
- interface ConfirmationProviderProps {
190
- children: ReactNode;
191
- }
192
- declare const ConfirmationProvider: React__default.FC<ConfirmationProviderProps>;
193
- declare const useConfirmation: () => ((options: ConfirmOptions) => Promise<ConfirmResult>);
194
-
195
- type AIProviderType = 'gemini' | 'openai';
196
- interface AIGenerateOptions {
197
- prompt: string;
198
- systemInstruction?: string;
199
- jsonMode?: boolean;
200
- temperature?: number;
201
- }
202
- interface AIConfig {
203
- apiKey?: string;
204
- provider?: AIProviderType;
205
- modelName?: string;
206
- }
207
- interface AIContextType {
208
- apiKey?: string;
209
- provider: AIProviderType;
210
- modelName: string;
211
- /** Универсальный метод генерации (текст или JSON) */
212
- generate: <T = string>(options: AIGenerateOptions) => Promise<T | null>;
213
- }
214
- interface AIProviderProps {
215
- children: React__default.ReactNode;
216
- config?: AIConfig;
217
- apiKey?: string;
218
- }
219
- declare const AIProvider: React__default.FC<AIProviderProps>;
220
- declare const useAI: () => AIContextType;
276
+ declare const Providers: {
277
+ readonly Supabase: React$1.FC<SupabaseProviderProps>;
278
+ readonly Translate: React$1.FC<TranslateProviderProps>;
279
+ readonly TranslationEdit: React$1.FC<{
280
+ children: React.ReactNode;
281
+ }>;
282
+ readonly Localization: React$1.FC<{
283
+ children: React$1.ReactNode;
284
+ }>;
285
+ readonly Theme: React$1.FC<{
286
+ children: React.ReactNode;
287
+ }>;
288
+ readonly Breadcrumb: React$1.FC<{
289
+ children: React.ReactNode;
290
+ }>;
291
+ readonly Toast: React$1.FC<{
292
+ children: React.ReactNode;
293
+ }>;
294
+ readonly Confirmation: React$1.FC<ConfirmationProviderProps>;
295
+ readonly AI: React$1.FC<AIProviderProps>;
296
+ };
221
297
 
222
- export { type AIConfig, type AIGenerateOptions, AIProvider, type AIProviderProps, type AIProviderType, BreadcrumbProvider, CardForm, type ConfirmOptions, type ConfirmResult, ConfirmationProvider, type ConfirmationProviderProps, type DialogSeverity, type DisplayState, type Language, LocalizationProvider, type NumberInputComponentProps, type SupabaseConfig, SupabaseProvider, type SupabaseProviderProps, type TextfieldComponentProps, type ThemeColors, type ThemeConfig, type ThemeMode, ThemeProvider, ToastProvider, type ToastType, TranslateProvider, TranslateText, TranslationEditProvider, type TypographyConfig, useAI, useAppTheme, useBreadcrumb, useConfirmation, useLocalization, useSupabase, useToast, useTranslationEdit, useTranslationNamespace };
298
+ export { type AIConfig, type AIGenerateOptions, AIProvider, type AIProviderProps, type AIProviderType, BreadcrumbProvider, type ConfirmOptions, type ConfirmResult, ConfirmationProvider, type ConfirmationProviderProps, type DialogSeverity, type DisplayState, type EmailInputComponentProps as EmailInputProps, type Language, LocalizationProvider, type NumberInputComponentProps as NumberInputProps, Providers, type SupabaseConfig, SupabaseProvider, type SupabaseProviderProps, type TextFieldComponentProps as TextFieldProps, type ThemeColors, type ThemeConfig, type ThemeMode, ThemeProvider, ToastProvider, type ToastType, type TranslatableTooltipComponentProps as TranslatableTooltipProps, TranslateProvider, TranslateText, TranslationEditProvider, type TypographyConfig, UI, type UrlComponentProps as UrlProps, useAI, useAppTheme, useBreadcrumb, useConfirmation, useLocalization, useSupabase, useToast, useTranslationEdit, useTranslationNamespace };