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 +71 -0
- package/dist/RegionFlag.d.ts +19 -0
- package/dist/flagUrls.generated.d.ts +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.esm.js +271 -0
- package/dist/index.js +277 -0
- package/dist/regionFlags.d.ts +12 -0
- package/package.json +26 -0
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>;
|
package/dist/index.d.ts
ADDED