summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorxXJSONDeruloXx <danielhimebauch@gmail.com>2025-07-22 13:23:25 -0400
committerxXJSONDeruloXx <danielhimebauch@gmail.com>2025-07-22 13:23:25 -0400
commitd063284dea10e82a23c2c332ecd4901d7254171b (patch)
tree8433fc86936229eeb01d4b200fbb93da0dec8d18 /scripts
parentdf0635f1bba611b8b44975057acd579102d209dd (diff)
downloaddecky-lsfg-vk-d063284dea10e82a23c2c332ecd4901d7254171b.tar.gz
decky-lsfg-vk-d063284dea10e82a23c2c332ecd4901d7254171b.zip
use generated kwargs and config in more hardcoded places
Diffstat (limited to 'scripts')
-rw-r--r--scripts/generate_python_boilerplate.py16
-rw-r--r--scripts/generate_ts_schema.py9
2 files changed, 22 insertions, 3 deletions
diff --git a/scripts/generate_python_boilerplate.py b/scripts/generate_python_boilerplate.py
index 0101ae4..b16aa3f 100644
--- a/scripts/generate_python_boilerplate.py
+++ b/scripts/generate_python_boilerplate.py
@@ -76,12 +76,12 @@ def generate_function_signature() -> str:
def generate_config_dict_creation() -> str:
"""Generate dictionary creation for create_config_from_args"""
- lines = [" return cast(ConfigurationData, {"]
+ lines = [" return cast(ConfigurationData, {"]
for field_name in CONFIG_SCHEMA_DEF.keys():
- lines.append(f' "{field_name}": {field_name},')
+ lines.append(f' "{field_name}": kwargs.get("{field_name}"),')
- lines.append(" })")
+ lines.append(" })")
return "\n".join(lines)
@@ -180,6 +180,13 @@ def generate_log_statement() -> str:
def generate_complete_schema_file() -> str:
"""Generate complete config_schema_generated.py file"""
+
+ # Generate field name constants
+ field_constants = []
+ for field_name in CONFIG_SCHEMA_DEF.keys():
+ const_name = field_name.upper()
+ field_constants.append(f'{const_name} = "{field_name}"')
+
lines = [
'"""',
'Auto-generated configuration schema components from shared_config.py',
@@ -195,6 +202,9 @@ def generate_complete_schema_file() -> str:
'sys.path.insert(0, str(Path(__file__).parent.parent.parent))',
'from shared_config import CONFIG_SCHEMA_DEF, ConfigFieldType',
'',
+ '# Field name constants for type-safe access',
+ ] + field_constants + [
+ '',
'',
generate_typed_dict(),
'',
diff --git a/scripts/generate_ts_schema.py b/scripts/generate_ts_schema.py
index 1997c55..c4c0e8a 100644
--- a/scripts/generate_ts_schema.py
+++ b/scripts/generate_ts_schema.py
@@ -19,6 +19,12 @@ from shared_config import CONFIG_SCHEMA_DEF, ConfigFieldType
def generate_typescript_schema():
"""Generate generatedConfigSchema.ts from Python schema"""
+ # Generate field name constants
+ field_constants = []
+ for field_name in CONFIG_SCHEMA_DEF.keys():
+ const_name = field_name.upper()
+ field_constants.append(f'export const {const_name} = "{field_name}" as const;')
+
# Generate enum
enum_lines = [
"// src/config/generatedConfigSchema.ts",
@@ -30,6 +36,9 @@ def generate_typescript_schema():
" STRING = \"string\"",
"}",
"",
+ "// Field name constants for type-safe access",
+ ] + field_constants + [
+ "",
"// Configuration field definition",
"export interface ConfigField {",
" name: string;",