No description
- TypeScript 52.2%
- Vue 42.4%
- CSS 5.2%
- HTML 0.2%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
Closes #29 ## What - New `PdfExportOptionsDialog` opened by every PDF export button (version, current state, spec extract) before the job is created: start place (indented place-tree picker; locked on the spec's place for an extract), max depth (empty = unlimited), tree / by-place layout, group by theme. Mentions the always-included table of contents, and warns when the project resolves to a custom PDF template. - `api/exports.ts`: `PdfExportOptions` sent with `createPdfExportJob` / `createCurrentStatePdfExportJob` / `createSpecPdfExportJob` (the latter always sends `root_place: null`); `PdfExportJob` gains the four fields; `previewPdfTemplate` takes `layout`/`groupByTheme`. - Template editor (Gestion > Export PDF): documents the new context variables (`export`, `places`, `themes`, `toc`, anchors/links) and can preview each layout/grouping. - MSW mocks mirror the backend serializer's checks (root_place in the project and never with spec, max_depth >= 0, known layout). ## Depends on thierryade/backend#42 for the options to have any effect. Merging this one first is harmless (DRF ignores the unknown fields), but backend first is the natural order. ## Tests 91/91 Vitest (5 new: options sent from the dialog, negative depth refused, cancel exports nothing, custom-template warning, locked place + depth on a spec extract; existing export tests now go through the dialog). `pnpm build` (vue-tsc) clean. 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01CrK5Cbdm97HrbhC9wPMLyu Reviewed-on: #30 |
||
| .forgejo/workflows | ||
| public | ||
| spa | ||
| src | ||
| .gitignore | ||
| index.html | ||
| LICENSE | ||
| package.json | ||
| pnpm-lock.yaml | ||
| pyproject.toml | ||
| README.md | ||
| renovate.json | ||
| tsconfig.json | ||
| vite.config.ts | ||
| vitest.config.ts | ||
thierryade/frontend
SPA Vue 3 + Vite de Thierryade — outil de gestion de spécifications de
projets (organisations, projets, découpage spatial en places, specs
versionnées et raffinées). Voir le dépôt soeur thierryade/backend
(API Django+DRF).
Esthétique "logiciel des années 90" (chrome biseauté, VT323/Alfa Slab
One/IBM Plex Sans) — voir la charte graphique du projet pour le détail
des tokens et composants repris dans src/style.css.
Développement local
pnpm install
pnpm run dev # proxie /api, /admin, /oidc vers http://localhost:8000
Tests
pnpm run test:unit
État actuel
Scaffold initial : organisations → projets → arbre de places → specs
(création, nouvelle version, validation, raffinage vers une place
enfant, case "implémentée"). Toutes les pages tournent contre une API
mockée (MSW, voir src/mocks/) — pas encore testé contre un vrai
thierryade/backend en cours de construction en parallèle.