- Panneau peek: les bindings Alpine (x-data absent du conteneur) rendaient loovverture et le redimensionnement inoperants -> cblage direct sur le document. - Helper unique window.fdWirePeekResize (app.js): pointer capture, 300px-90vw, clic=fermer, largeur persiste fd_peek_width partagee entre les 4 peeks. - database-table-container margin:0 (tableau colle a gauche, marge Library). - .lib-container remonte dans app.css (trash etait pleine largeur), .db-index 1100px. - ObsiGate verifie sans code: creation .xlsx OK (openpyxl, #186).
68 lines
1.6 KiB
Python
68 lines
1.6 KiB
Python
"""FlowDeck — Collections : bases de données façon Notion.
|
|
|
|
Découpe A28 : l'ancien `collections.py` (2 622 lignes, 53 routes) est
|
|
devenu ce package — un module par concern, helpers dans `_common`
|
|
(auth/permissions/validation) et `_renderers` (rendus HTML des vues).
|
|
Ré-exports : automations importe `_validate_page_properties`, les
|
|
tests importent les helpers de graphes.
|
|
"""
|
|
from __future__ import annotations
|
|
|
|
import logging
|
|
|
|
from fastapi import APIRouter
|
|
|
|
from . import ( # ordre = ordre d'enregistrement d'origine
|
|
boards,
|
|
crud,
|
|
dashboard_views,
|
|
data_api,
|
|
index_page,
|
|
linked,
|
|
meta,
|
|
pages,
|
|
properties,
|
|
structure,
|
|
task_db,
|
|
views,
|
|
)
|
|
from ._common import _validate_page_properties # noqa: F401
|
|
from ._renderers import ( # noqa: F401 — ré-exports tests
|
|
_chart_aggregate,
|
|
_chart_values,
|
|
_fmt_number,
|
|
_render_chart,
|
|
)
|
|
|
|
logger = logging.getLogger(__name__)
|
|
router = APIRouter()
|
|
# `task_db` est enregistré **en premier** : sa route statique
|
|
# `GET /db/task-dbs/api` serait sinon capturée par `data_api`'s
|
|
# `GET /db/{collection_id}/api` (`collection_id="task-dbs"` → 422).
|
|
# `index_page` (la page HTML `/db`) vient ensuite, avant tout module
|
|
# déclarant `/db/{collection_id}` — sinon la racine serait capturée en 422.
|
|
for _mod in (
|
|
task_db,
|
|
index_page,
|
|
crud,
|
|
pages,
|
|
boards,
|
|
meta,
|
|
properties,
|
|
views,
|
|
structure,
|
|
linked,
|
|
dashboard_views,
|
|
data_api,
|
|
):
|
|
router.include_router(_mod.router)
|
|
|
|
__all__ = [
|
|
"router",
|
|
"_chart_aggregate",
|
|
"_chart_values",
|
|
"_fmt_number",
|
|
"_render_chart",
|
|
"_validate_page_properties",
|
|
]
|