mirror of
https://github.com/hyperknot/openfreemap.git
synced 2026-05-22 06:22:16 +00:00
lint styles
This commit is contained in:
@@ -1,4 +1,5 @@
|
|||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
|
import json
|
||||||
import subprocess
|
import subprocess
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
|
|
||||||
@@ -11,15 +12,32 @@ import click
|
|||||||
type=click.Path(exists=True, file_okay=False, resolve_path=True, path_type=Path),
|
type=click.Path(exists=True, file_okay=False, resolve_path=True, path_type=Path),
|
||||||
)
|
)
|
||||||
def cli(styles_folder):
|
def cli(styles_folder):
|
||||||
|
"""
|
||||||
|
Lints all style JSON files in a folder
|
||||||
|
First runs prettier with recursive JSON sorting
|
||||||
|
Then runs gl-style-format
|
||||||
|
"""
|
||||||
|
|
||||||
p = subprocess.run(['pnpm', 'bin'], capture_output=True, text=True)
|
p = subprocess.run(['pnpm', 'bin'], capture_output=True, text=True)
|
||||||
node_bin_path = Path(p.stdout.strip())
|
node_bin_path = Path(p.stdout.strip())
|
||||||
prettier_config_path = node_bin_path.parent.parent / '.prettierrc.js'
|
prettier_config_path = node_bin_path.parent.parent / '.prettierrc.js'
|
||||||
|
|
||||||
for style_file in styles_folder.rglob('style.json'):
|
for style_file in styles_folder.rglob('*.json'):
|
||||||
|
if 'node_modules' in style_file.parts:
|
||||||
|
continue
|
||||||
|
|
||||||
|
with open(style_file) as fp:
|
||||||
|
data = json.load(fp)
|
||||||
|
if 'sources' not in data:
|
||||||
|
continue
|
||||||
|
|
||||||
print(f'formatting {style_file}')
|
print(f'formatting {style_file}')
|
||||||
|
|
||||||
subprocess.run(
|
subprocess.run(
|
||||||
[node_bin_path / 'prettier', '--config', prettier_config_path, '--write', style_file]
|
[node_bin_path / 'prettier', '--config', prettier_config_path, '--write', style_file],
|
||||||
|
capture_output=True,
|
||||||
)
|
)
|
||||||
|
|
||||||
p = subprocess.run(
|
p = subprocess.run(
|
||||||
[
|
[
|
||||||
node_bin_path / 'gl-style-format',
|
node_bin_path / 'gl-style-format',
|
||||||
|
|||||||
Reference in New Issue
Block a user