Skip to content

Commit 8db2291

Browse files
committed
Remove builtin_jwt_token_expire
1 parent 2ea74c5 commit 8db2291

8 files changed

Lines changed: 19 additions & 21 deletions

File tree

fastapi_forge/dtos.py

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -167,7 +167,6 @@ class ProjectSpec(BaseModel):
167167
use_builtin_auth: bool
168168
use_redis: bool
169169
use_rabbitmq: bool
170-
builtin_jwt_token_expire: int | None = Field(None, ge=1, le=365)
171170
models: list[Model]
172171

173172
@model_validator(mode="after")
@@ -180,9 +179,6 @@ def validate_models(self) -> Self:
180179
if self.use_alembic and not self.use_postgres:
181180
raise ValueError("Cannot use Alembic if PostgreSQL is not enabled.")
182181

183-
if self.builtin_jwt_token_expire and not self.use_builtin_auth:
184-
raise ValueError("Cannot set JWT expiration if auth is not enabled.")
185-
186182
return self
187183

188184

@@ -240,17 +236,13 @@ class ProjectInput(BaseModel):
240236
use_builtin_auth: bool = False
241237
use_redis: bool = False
242238
use_rabbitmq: bool = False
243-
builtin_jwt_token_expire: int | None = Field(None, ge=1, le=365)
244239
models: list[ModelInput] = []
245240

246241
@model_validator(mode="after")
247242
def _validate(self) -> Self:
248243
if self.use_alembic and not self.use_postgres:
249244
raise ValueError("Cannot use Alembic if PostgreSQL is not enabled.")
250245

251-
if self.builtin_jwt_token_expire and not self.use_builtin_auth:
252-
raise ValueError("Cannot set JWT expiration if auth is not enabled.")
253-
254246
model_names = [model.name for model in self.models]
255247
if len(model_names) != len(set(model_names)):
256248
raise ValueError("Model names must be unique.")

fastapi_forge/example-projects/dry-service.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ project:
44
use_alembic: false
55
use_builtin_auth: false
66
use_redis: false
7-
builtin_jwt_token_expire: null
7+
use_rabbitmq: false
88

99
models:
1010

fastapi_forge/example-projects/restaurant-service.yaml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ project:
55
use_builtin_auth: true
66
use_redis: true
77
use_rabbitmq: true
8-
builtin_jwt_token_expire: 30
98

109
models:
1110
- name: auth_user

fastapi_forge/example-projects/trustpilot-api.yaml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ project:
55
use_builtin_auth: true
66
use_redis: true
77
use_rabbitmq: true
8-
builtin_jwt_token_expire: 30
98

109
models:
1110
- name: auth_user

fastapi_forge/frontend.py

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -251,7 +251,6 @@ async def _export_project(self) -> None:
251251
use_builtin_auth=self.project_config_panel.use_builtin_auth.value,
252252
use_redis=self.project_config_panel.use_redis.value,
253253
use_rabbitmq=self.project_config_panel.use_rabbitmq.value,
254-
builtin_jwt_token_expire=30, # use default for now
255254
models=self.models,
256255
)
257256

@@ -839,7 +838,6 @@ async def _create_project(self) -> None:
839838
use_builtin_auth=self.use_builtin_auth.value,
840839
use_redis=self.use_redis.value,
841840
use_rabbitmq=self.use_rabbitmq.value,
842-
builtin_jwt_token_expire=30,
843841
models=models,
844842
)
845843
await build_project(project_spec)
@@ -870,7 +868,10 @@ def setup_ui() -> None:
870868
ui.input.default_props("dense")
871869
Header()
872870

873-
def load_initial_project(path: Path) -> tuple[ProjectInput | None, list[ModelInput] | None]:
871+
872+
def load_initial_project(
873+
path: Path,
874+
) -> tuple[ProjectInput | None, list[ModelInput] | None]:
874875
initial_project = None
875876
initial_models = None
876877
if path:
@@ -880,7 +881,10 @@ def load_initial_project(path: Path) -> tuple[ProjectInput | None, list[ModelInp
880881
initial_models = initial_project.models
881882
return initial_project, initial_models
882883

883-
def create_ui_components(initial_project: ProjectInput | None, initial_models: list[ModelInput] | None) -> None:
884+
885+
def create_ui_components(
886+
initial_project: ProjectInput | None, initial_models: list[ModelInput] | None
887+
) -> None:
884888
with ui.column().classes("w-full h-full items-center justify-center mt-4"):
885889
model_editor_card = ModelEditorCard().classes("no-shadow")
886890

@@ -895,13 +899,15 @@ def create_ui_components(initial_project: ProjectInput | None, initial_models: l
895899

896900
model_panel.project_config_panel = project_config_panel
897901

902+
898903
def run_ui(reload: bool) -> None:
899904
ui.run(
900905
reload=reload,
901906
title="FastAPI Forge",
902907
port=native.find_open_port(8777, 8999),
903908
)
904909

910+
905911
def init(
906912
reload: bool = False,
907913
use_example: bool = False,
@@ -919,7 +925,12 @@ def init(
919925
return
920926

921927
setup_ui()
922-
initial_project, initial_models = load_initial_project(path)
928+
929+
initial_project = None
930+
initial_models = None
931+
if use_example or yaml_path:
932+
initial_project, initial_models = load_initial_project(path)
933+
923934
create_ui_components(initial_project, initial_models)
924935
run_ui(reload)
925936

fastapi_forge/project_io.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ def _load_project_to_dict(self) -> dict[str, Any]:
5656
def load_project_spec(self) -> ProjectSpec:
5757
project_dict = self._load_project_to_dict()
5858
loaded_models = [
59-
ModelInput(**model) for model in project_dict.get("models", [])
59+
ModelInput(**model) for model in project_dict.get("models", []) or []
6060
]
6161
models = self.model_generator_func(loaded_models)
6262
project_dict.pop("models")

fastapi_forge/template/cookiecutter.json

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,6 @@
1717
"use_rabbitmq": {
1818
"default": true
1919
},
20-
"builtin_jwt_token_expire": {
21-
"default": 15
22-
},
2320
"create_routes": {
2421
"default": true
2522
},
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
{% if cookiecutter.use_builtin_auth %}
22
# Auth
3-
CREATE_TOKEN_EXPIRE_MINUTES = {{ cookiecutter.builtin_jwt_token_expire }}
3+
CREATE_TOKEN_EXPIRE_MINUTES = 30
44
{% endif %}

0 commit comments

Comments
 (0)