Skip to content

Commit 2c740ea

Browse files
Fetch locale lists from upstream GitHub repos instead of local files
Co-authored-by: ArtyomVancyan <44609997+ArtyomVancyan@users.noreply.github.com>
1 parent 0ab272f commit 2c740ea

File tree

2 files changed

+31
-21
lines changed

2 files changed

+31
-21
lines changed

.github/workflows/locales.yml

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -20,14 +20,6 @@ jobs:
2020
- name: Setup Python
2121
uses: actions/setup-python@v3
2222

23-
- name: Setup Node
24-
uses: actions/setup-node@v3
25-
with:
26-
node-version: 16.x
27-
28-
- name: Install dependencies
29-
run: cd development && npm install
30-
3123
- name: Check locales
3224
id: check
3325
continue-on-error: true

scripts/check-locales/__main__.py

Lines changed: 31 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import json
12
import os
23
import re
34
import subprocess
@@ -7,35 +8,52 @@
78

89
project_root = Path(__file__).parent.parent.parent
910
locale_file = project_root / "src" / "locale.ts"
10-
ant_locale_file = project_root / "development" / "src" / "ant-phone" / "locale.ts"
11-
1211

1312
with open(locale_file, 'r') as f:
1413
content = f.read()
1514

1615
locale_pattern = r'^export const (\w+) = \{'
1716
existing_locales = set(re.findall(locale_pattern, content, re.MULTILINE))
1817

19-
with open(ant_locale_file, 'r') as f:
20-
content = f.read()
21-
22-
import_pattern = r'^import (\w+) from "antd/es/locale/'
23-
antd_locales = set(re.findall(import_pattern, content, re.MULTILINE))
18+
try:
19+
result = subprocess.run(
20+
['curl', '-s', '-H', 'User-Agent: react-phone-hooks',
21+
'https://api.github.com/repos/ant-design/ant-design/contents/components/locale'],
22+
capture_output=True,
23+
text=True,
24+
timeout=30
25+
)
26+
if result.returncode == 0 and result.stdout.strip():
27+
files = json.loads(result.stdout)
28+
antd_locales = set()
29+
for file in files:
30+
if file['name'].endswith('.ts') and file['name'] != 'index.ts':
31+
locale_name = file['name'].replace('.ts', '').replace('_', '')
32+
antd_locales.add(locale_name)
33+
else:
34+
antd_locales = set()
35+
except:
36+
antd_locales = set()
2437

2538
try:
2639
result = subprocess.run(
27-
['node', '-e', 'const locale = require("@mui/material/locale"); console.log(Object.keys(locale).join(","))'],
28-
cwd=project_root / "development",
40+
['curl', '-s', '-H', 'User-Agent: react-phone-hooks',
41+
'https://api.github.com/repos/mui/material-ui/contents/packages/mui-material/src/locale'],
2942
capture_output=True,
3043
text=True,
31-
timeout=10
44+
timeout=30
3245
)
3346
if result.returncode == 0 and result.stdout.strip():
34-
mui_locales = set(result.stdout.strip().split(','))
47+
files = json.loads(result.stdout)
48+
mui_locales = set()
49+
for file in files:
50+
if file['name'].endswith('.ts') and file['name'] != 'index.ts':
51+
locale_name = file['name'].replace('.ts', '')
52+
mui_locales.add(locale_name)
3553
else:
36-
mui_locales = existing_locales
54+
mui_locales = set()
3755
except:
38-
mui_locales = existing_locales
56+
mui_locales = set()
3957

4058
missing_from_antd = antd_locales - existing_locales
4159
missing_from_mui = mui_locales - existing_locales

0 commit comments

Comments
 (0)