rf-region-flags 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md ADDED
@@ -0,0 +1,71 @@
1
+ # rf-region-flags
2
+
3
+ React-библиотека: флаги субъектов Российской Федерации по коду региона. **Все 89 флагов встроены в библиотеку** (data URI), ничего копировать не нужно — установил пакет и используешь. Размер пакета ~10 MB (сжатие при загрузке страницы уменьшит объём).
4
+
5
+ ## Установка
6
+
7
+ ```bash
8
+ npm install rf-region-flags react
9
+ ```
10
+
11
+ ## Использование
12
+
13
+ ```tsx
14
+ import { RegionFlag } from 'rf-region-flags';
15
+
16
+ // Красноярский край
17
+ <RegionFlag code="KYA" />
18
+
19
+ // Москва
20
+ <RegionFlag code="MOW" />
21
+
22
+ // Санкт-Петербург, размер 48px
23
+ <RegionFlag code="SPE" size={48} />
24
+
25
+ // С дополнительными пропсами img
26
+ <RegionFlag code="TA" alt="Татарстан" className="rounded" />
27
+ ```
28
+
29
+ ## Коды регионов
30
+
31
+ Используются коды ISO 3166-2 (без префикса `RU-`) и распространённые алиасы:
32
+
33
+ | Код | Субъект |
34
+ |-----|--------|
35
+ | **KYA** | Красноярский край |
36
+ | **MOW**, MSK | Москва |
37
+ | **SPE**, SPB | Санкт-Петербург |
38
+ | **AD** | Адыгея |
39
+ | **BA** | Башкортостан |
40
+ | **TA** | Татарстан |
41
+ | **KDA** | Краснодарский край |
42
+ | **NVS** | Новосибирская область |
43
+ | … | все 89 субъектов РФ |
44
+
45
+ Полный список кодов: `import { getRegionCodes } from 'rf-region-flags'` → `getRegionCodes()`.
46
+
47
+ ## API
48
+
49
+ ### `<RegionFlag />`
50
+
51
+ | Проп | Тип | По умолчанию | Описание |
52
+ |------|-----|--------------|----------|
53
+ | `code` | `string` | — | Код региона (обязательный) |
54
+ | `size` | `number` | `32` | Ширина и высота в пикселях |
55
+ | `alt` | `string` | `Флаг региона {code}` | Атрибут alt |
56
+ | остальные | — | — | Пробрасываются в `<img>` |
57
+
58
+ ### Вспомогательные функции
59
+
60
+ ```ts
61
+ import { getFlagUrl, getFlagPath, getRegionCodes, REGION_FLAG_FILES } from 'rf-region-flags';
62
+
63
+ getFlagUrl('KYA'); // → data URI флага (картинка встроена в библиотеку)
64
+ getFlagPath('KYA'); // → 'Flag_of_Krasnoyarsk_Krai.svg'
65
+ getRegionCodes(); // → массив всех кодов
66
+ REGION_FLAG_FILES; // → объект код → имя файла
67
+ ```
68
+
69
+ ## Лицензия
70
+
71
+ MIT. Флаги — официальные символы субъектов РФ; изображения с Wikimedia Commons.
@@ -0,0 +1,19 @@
1
+ import React from 'react';
2
+ export interface RegionFlagProps extends Omit<React.ImgHTMLAttributes<HTMLImageElement>, 'src' | 'alt'> {
3
+ /** Код региона (ISO 3166-2 без RU- или алиас), например: KYA — Красноярский край, MOW — Москва */
4
+ code: string;
5
+ /** Размер по ширине (по умолчанию 32) */
6
+ size?: number;
7
+ /** Alt-текст (по умолчанию — код региона) */
8
+ alt?: string;
9
+ }
10
+ /**
11
+ * Компонент флага субъекта РФ по коду региона.
12
+ * Источник флагов: Wikimedia Commons (страница «Флаги субъектов Российской Федерации»).
13
+ *
14
+ * @example
15
+ * <RegionFlag code="KYA" /> // Красноярский край
16
+ * <RegionFlag code="MOW" size={48} /> // Москва, 48px
17
+ */
18
+ export declare function RegionFlag({ code, size, alt, ...imgProps }: RegionFlagProps): React.ReactElement | null;
19
+ export default RegionFlag;
@@ -0,0 +1 @@
1
+ export declare const FLAG_DATA_URI: Record<string, string>;
@@ -0,0 +1,3 @@
1
+ export { RegionFlag } from './RegionFlag';
2
+ export type { RegionFlagProps } from './RegionFlag';
3
+ export { REGION_FLAG_FILES, getFlagUrl, getFlagPath, getRegionCodes, } from './regionFlags';