fastapi-voyager 0.14.0__tar.gz → 0.14.1__tar.gz
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.
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/PKG-INFO +8 -2
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/README.md +7 -1
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/docs/changelog.md +3 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/version.py +1 -1
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/web/graph-ui.js +0 -5
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/web/index.html +12 -1
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/web/store.js +1 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/web/vue-main.js +7 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/.github/workflows/publish.yml +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/.gitignore +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/.python-version +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/CONTRIBUTING.md +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/LICENSE +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/docs/idea.md +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/pyproject.toml +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/release.md +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/__init__.py +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/cli.py +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/er_diagram.py +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/filter.py +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/module.py +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/pydantic_resolve_util.py +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/render.py +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/server.py +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/type.py +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/type_helper.py +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/voyager.py +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/web/component/demo.js +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/web/component/render-graph.js +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/web/component/route-code-display.js +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/web/component/schema-code-display.js +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/web/graphviz.svg.css +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/web/graphviz.svg.js +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/web/icon/android-chrome-192x192.png +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/web/icon/android-chrome-512x512.png +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/web/icon/apple-touch-icon.png +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/web/icon/favicon-16x16.png +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/web/icon/favicon-32x32.png +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/web/icon/favicon.ico +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/web/icon/site.webmanifest +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/web/quasar.min.css +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/web/quasar.min.js +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/tests/__init__.py +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/tests/demo.py +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/tests/demo_anno.py +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/tests/programatic.py +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/tests/service/__init__.py +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/tests/service/schema/__init__.py +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/tests/service/schema/base_entity.py +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/tests/service/schema/extra.py +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/tests/service/schema/schema.py +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/tests/test_analysis.py +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/tests/test_filter.py +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/tests/test_generic.py +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/tests/test_import.py +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/tests/test_module.py +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/tests/test_resolve_util_impl.py +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/tests/test_type_helper.py +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/uv.lock +0 -0
- {fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/voyager.jpg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: fastapi-voyager
|
|
3
|
-
Version: 0.14.
|
|
3
|
+
Version: 0.14.1
|
|
4
4
|
Summary: Visualize FastAPI application's routing tree and dependencies
|
|
5
5
|
Project-URL: Homepage, https://github.com/allmonday/fastapi-voyager
|
|
6
6
|
Project-URL: Source, https://github.com/allmonday/fastapi-voyager
|
|
@@ -53,7 +53,8 @@ app.mount('/voyager',
|
|
|
53
53
|
swagger_url="/docs",
|
|
54
54
|
ga_id="G-XXXXXXXXVL",
|
|
55
55
|
initial_page_policy='first',
|
|
56
|
-
online_repo_url='https://github.com/allmonday/composition-oriented-development-pattern/blob/master'
|
|
56
|
+
online_repo_url='https://github.com/allmonday/composition-oriented-development-pattern/blob/master',
|
|
57
|
+
enable_pydantic_resolve_meta=True))
|
|
57
58
|
```
|
|
58
59
|
|
|
59
60
|
https://github.com/allmonday/composition-oriented-development-pattern/blob/master/src/main.py#L48
|
|
@@ -158,6 +159,11 @@ app.mount('/voyager',
|
|
|
158
159
|
|
|
159
160
|
<img width="1276" height="613" alt="image" src="https://github.com/user-attachments/assets/ea0091bb-ee11-4f71-8be3-7129d956c910" />
|
|
160
161
|
|
|
162
|
+
### Show pydantic resolve meta info
|
|
163
|
+
|
|
164
|
+
setting `enable_pydantic_resolve_meta=True` in `create_voyager`, toggle `pydantic resolve meta`.
|
|
165
|
+
|
|
166
|
+
<img width="1604" height="535" alt="image" src="https://github.com/user-attachments/assets/d1639555-af41-4a08-9970-4b8ef314596a" />
|
|
161
167
|
|
|
162
168
|
|
|
163
169
|
## Command Line Usage
|
|
@@ -25,7 +25,8 @@ app.mount('/voyager',
|
|
|
25
25
|
swagger_url="/docs",
|
|
26
26
|
ga_id="G-XXXXXXXXVL",
|
|
27
27
|
initial_page_policy='first',
|
|
28
|
-
online_repo_url='https://github.com/allmonday/composition-oriented-development-pattern/blob/master'
|
|
28
|
+
online_repo_url='https://github.com/allmonday/composition-oriented-development-pattern/blob/master',
|
|
29
|
+
enable_pydantic_resolve_meta=True))
|
|
29
30
|
```
|
|
30
31
|
|
|
31
32
|
https://github.com/allmonday/composition-oriented-development-pattern/blob/master/src/main.py#L48
|
|
@@ -130,6 +131,11 @@ app.mount('/voyager',
|
|
|
130
131
|
|
|
131
132
|
<img width="1276" height="613" alt="image" src="https://github.com/user-attachments/assets/ea0091bb-ee11-4f71-8be3-7129d956c910" />
|
|
132
133
|
|
|
134
|
+
### Show pydantic resolve meta info
|
|
135
|
+
|
|
136
|
+
setting `enable_pydantic_resolve_meta=True` in `create_voyager`, toggle `pydantic resolve meta`.
|
|
137
|
+
|
|
138
|
+
<img width="1604" height="535" alt="image" src="https://github.com/user-attachments/assets/d1639555-af41-4a08-9970-4b8ef314596a" />
|
|
133
139
|
|
|
134
140
|
|
|
135
141
|
## Command Line Usage
|
|
@@ -149,9 +149,12 @@
|
|
|
149
149
|
- 0.14.0
|
|
150
150
|
- [x] show hint for resolve (>), post fields (<), post default handler (* at title)
|
|
151
151
|
- [x] show expose and collect info
|
|
152
|
+
- 0.14.1
|
|
153
|
+
- [x] minor ui enhancement
|
|
152
154
|
|
|
153
155
|
## 0.15, internal refactor
|
|
154
156
|
- 0.15.0
|
|
157
|
+
- [ ] left panel can be toggled.
|
|
155
158
|
- [ ] refactor vue-main.js, move methods to store
|
|
156
159
|
- [ ] refactor render.py
|
|
157
160
|
- [ ] add tests
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
__all__ = ["__version__"]
|
|
2
|
-
__version__ = "0.14.
|
|
2
|
+
__version__ = "0.14.1"
|
|
@@ -62,6 +62,15 @@
|
|
|
62
62
|
border-top: 0; */
|
|
63
63
|
}
|
|
64
64
|
|
|
65
|
+
.inherit-flow {
|
|
66
|
+
/* stroke-width:2; */
|
|
67
|
+
stroke-dasharray: 8 6; /* dash pattern */
|
|
68
|
+
stroke-linecap: round;
|
|
69
|
+
animation: dash 2s linear infinite;
|
|
70
|
+
animation-direction: reverse;
|
|
71
|
+
}
|
|
72
|
+
@keyframes dash { to { stroke-dashoffset: -14; } }
|
|
73
|
+
|
|
65
74
|
.adjust-fit {
|
|
66
75
|
height: calc(100vh - 54px);
|
|
67
76
|
}
|
|
@@ -140,6 +149,7 @@
|
|
|
140
149
|
</div>
|
|
141
150
|
<div class="col-auto row items-center q-gutter-sm">
|
|
142
151
|
<q-select
|
|
152
|
+
v-show="!store.state.search.invisible"
|
|
143
153
|
dense
|
|
144
154
|
outlined
|
|
145
155
|
use-input
|
|
@@ -170,6 +180,7 @@
|
|
|
170
180
|
</q-select>
|
|
171
181
|
|
|
172
182
|
<q-select
|
|
183
|
+
v-show="!store.state.search.invisible"
|
|
173
184
|
dense
|
|
174
185
|
outlined
|
|
175
186
|
v-model="store.state.search.fieldName"
|
|
@@ -380,7 +391,7 @@
|
|
|
380
391
|
title="show module cluster"
|
|
381
392
|
/>
|
|
382
393
|
</div>
|
|
383
|
-
<div class="q-mt-sm" v-if="store.state.config.enable_pydantic_resolve_meta">
|
|
394
|
+
<div class="q-mt-sm" v-if="store.state.mode == 'voyager' && store.state.config.enable_pydantic_resolve_meta">
|
|
384
395
|
<q-toggle
|
|
385
396
|
v-model="store.state.modeControl.pydanticResolveMetaEnabled"
|
|
386
397
|
@update:model-value="(val) => togglePydanticResolveMeta(val)"
|
|
@@ -380,12 +380,19 @@ const app = createApp({
|
|
|
380
380
|
|
|
381
381
|
async function onModeChange(val) {
|
|
382
382
|
if (val === "er-diagram") {
|
|
383
|
+
// clear search
|
|
384
|
+
store.state.search.schemaName = null
|
|
385
|
+
store.state.search.fieldName = null
|
|
386
|
+
store.state.search.invisible = true
|
|
387
|
+
|
|
383
388
|
if (store.state.leftPanel.width > 0) {
|
|
384
389
|
store.state.leftPanel.previousWidth = store.state.leftPanel.width;
|
|
385
390
|
}
|
|
386
391
|
store.state.leftPanel.width = 0;
|
|
387
392
|
await renderErDiagram();
|
|
388
393
|
} else {
|
|
394
|
+
store.state.search.invisible = false
|
|
395
|
+
|
|
389
396
|
const fallbackWidth = store.state.leftPanel.previousWidth || 300;
|
|
390
397
|
store.state.leftPanel.width = fallbackWidth;
|
|
391
398
|
await onGenerate();
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/pydantic_resolve_util.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/web/component/render-graph.js
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/web/icon/apple-touch-icon.png
RENAMED
|
File without changes
|
{fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/web/icon/favicon-16x16.png
RENAMED
|
File without changes
|
{fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/web/icon/favicon-32x32.png
RENAMED
|
File without changes
|
|
File without changes
|
{fastapi_voyager-0.14.0 → fastapi_voyager-0.14.1}/src/fastapi_voyager/web/icon/site.webmanifest
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|