skillgrid 0.0.70 → 0.0.71

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -40,11 +40,33 @@ function App() {
40
40
  - `react` версии `17.0.2` или новее
41
41
  - `react-dom` версии `17.0.2` или новее
42
42
 
43
+ ## Локализация FileUpload
44
+
45
+ ```tsx
46
+ import { ConfigProvider, FileUpload, ruRU } from 'skillgrid';
47
+
48
+ export const App = () => (
49
+ <ConfigProvider locale={ruRU}>
50
+ <FileUpload items={[]} />
51
+ </ConfigProvider>
52
+ );
53
+ ```
54
+
55
+ Без явно переданной локали используется `ruRU`. Дополнительная настройка локализации в
56
+ приложении не требуется. Системные тексты можно переопределить через `extendLocale`:
57
+
58
+ ```tsx
59
+ import { extendLocale, ruRU } from 'skillgrid';
60
+
61
+ const customRu = extendLocale(ruRU, {
62
+ fileUpload: { title: 'Загрузите документ' },
63
+ });
64
+ ```
43
65
 
44
66
  ## Особенности
45
67
 
46
68
  - 🎯 **Типобезопасность**: Полная поддержка TypeScript.
47
- - 🌐 **Локализация**: Встроенная и настраиваемая система i18n.
69
+ - 🌐 **Локализация**: Встроенные типизированные локали через `ConfigProvider`.
48
70
  - 📚 **Документация**: Интерактивная документация компонентов в Storybook.
49
71
  - 🛠️ **Инструменты**: CLI для генерации новых компонентов.
50
72
  - ⚡️ **Производительность**: Оптимизированные и легковесные компоненты.
@@ -1,4 +1,4 @@
1
1
  import { ConfigContextType } from './ConfigProvider.type';
2
2
  export declare const ConfigContext: import('react').Context<ConfigContextType>;
3
3
  export declare const useConfig: () => ConfigContextType;
4
- export declare const useLocale: () => import('../../locale/type').ComponentLocale<unknown>;
4
+ export declare const useLocale: () => import('../..').Locale;
@@ -0,0 +1,63 @@
1
+ declare const _default: {
2
+ "en": {
3
+ "fileUpload": {
4
+ "title": "Drag or select a file",
5
+ "mobileTitle": "Select file",
6
+ "description": "Up to 10 MB. Formats: JPG, PNG, DOC, PDF",
7
+ "buttonLabel": "Select",
8
+ "attachFile": "Attach file",
9
+ "attachFiles": "Attach files",
10
+ "replace": "Replace",
11
+ "retry": "Retry",
12
+ "errorMessage": "Upload error",
13
+ "download": "Download",
14
+ "remove": "Remove",
15
+ "fileActions": "File actions",
16
+ "closeFileActions": "Close file actions",
17
+ "rejectAccept": "Unsupported file format. Allowed: JPG, PNG, DOC, PDF",
18
+ "rejectAcceptCustom": "Unsupported file format. Allowed: {{accept}}",
19
+ "rejectMaxFileSize": "File size exceeds {{maxFileSize}}",
20
+ "uploadProgress": "{{loaded}} of {{total}}",
21
+ "sizeFallback": "0 B",
22
+ "sizeUnits": {
23
+ "bytes": "B",
24
+ "kilobytes": "KB",
25
+ "megabytes": "MB",
26
+ "gigabytes": "GB",
27
+ "terabytes": "TB"
28
+ }
29
+ }
30
+ },
31
+ "ru": {
32
+ "fileUpload": {
33
+ "title": "Перетащите или выберите файл",
34
+ "mobileTitle": "Выберите файл",
35
+ "description": "Размер до 10 Мб. Форматы: JPG, PNG, DOC, PDF",
36
+ "buttonLabel": "Выбрать",
37
+ "attachFile": "Прикрепить файл",
38
+ "attachFiles": "Прикрепить файлы",
39
+ "replace": "Заменить",
40
+ "retry": "Повторить",
41
+ "errorMessage": "Ошибка загрузки",
42
+ "download": "Скачать",
43
+ "remove": "Удалить",
44
+ "fileActions": "Действия с файлом",
45
+ "closeFileActions": "Закрыть действия с файлом",
46
+ "rejectAccept": "Неподдерживаемый формат файла. Разрешены JPG, PNG, DOC, PDF",
47
+ "rejectAcceptCustom": "Неподдерживаемый формат файла. Разрешены {{accept}}",
48
+ "rejectMaxFileSize": "Размер файла превышает {{maxFileSize}}",
49
+ "uploadProgress": "{{loaded}} из {{total}}",
50
+ "sizeFallback": "0 Б",
51
+ "sizeUnits": {
52
+ "bytes": "Б",
53
+ "kilobytes": "КБ",
54
+ "megabytes": "МБ",
55
+ "gigabytes": "ГБ",
56
+ "terabytes": "ТБ"
57
+ }
58
+ }
59
+ }
60
+ }
61
+ ;
62
+
63
+ export default _default;
@@ -0,0 +1,17 @@
1
+ declare const _default: {
2
+ "en": {
3
+ "icon": {
4
+ "loading": "Loading...",
5
+ "placeholder": "Icon"
6
+ }
7
+ },
8
+ "ru": {
9
+ "icon": {
10
+ "loading": "Загрузка...",
11
+ "placeholder": "Иконка"
12
+ }
13
+ }
14
+ }
15
+ ;
16
+
17
+ export default _default;
@@ -11,4 +11,4 @@ import { LanguageSwitcherProps } from './LanguageSwitcher.type';
11
11
  * @param {LanguageSwitcherProps} props - The component props
12
12
  * @returns {JSX.Element} A React component
13
13
  */
14
- export declare const LanguageSwitcher: ({ className }: LanguageSwitcherProps) => import("react/jsx-runtime").JSX.Element;
14
+ export declare const LanguageSwitcher: ({ className, onLocaleChange }: LanguageSwitcherProps) => import("react/jsx-runtime").JSX.Element;
@@ -1,3 +1,5 @@
1
+ import { Locale } from '../../locale';
1
2
  export interface LanguageSwitcherProps {
2
3
  className?: string;
4
+ onLocaleChange: (locale: Locale) => void;
3
5
  }
@@ -1,4 +1,3 @@
1
- export { useCustomTranslations } from './useCustomTranslations';
2
1
  export { useBackgroundColor } from './useBackgroundColor';
3
2
  export { useIsMobile } from './useIsMobile';
4
3
  export { useCompatId } from './useCompatId';