Commit graph

2,870 commits

Author SHA1 Message Date
417abcfb71 refac: load jQuery + Bootstrap as global scripts in _Layout
JQuery, jQuery UI, Bootstrap, jquery-validation and
jquery-validation-unobtrusive are now loaded as separate
<script> tags by _Layout.cshtml, BEFORE the core bundle.

Why: esbuild IIFE bundles do not expose jQuery ($ and jQuery)
on window — UMD-style modules bundled in IIFE format are wrapped
in a closure. The application code (site.js, md-helpers.js,
yavsc-remote-fs.js, etc.) consumes window.$ / window.jQuery, so
it broke at runtime. Loading these scripts as global <script> tags
restores the expected global exposure.

This commit only touches the layout. Future commits will remove
the corresponding imports from each bundle's entry (chat, dropzone,
datetime, timepicker) and let them rely on window.$ being already
defined by the layout.

Tested: dotnet test 11/11 green. The new global scripts are
served by ASP.NET static files (HTTP 200 verified). Server
restart by developer required to pick up the new layout.
2026-06-14 15:16:16 +01:00
cef6002fef fix: drop nuget bootstrap and popper.js, npm bundles take over
Removing the 'bootstrap' and 'popper.js' NuGet package references
that were used solely to copy assets to wwwroot/ at build time.
The npm-based esbuild bundles now provide the same files, and the
duplicate-asset build error is gone.

'bootstrap 5.3.8' (NuGet) was flagged with vulnerabilities by
Dependabot. Pinning to 4.6.2 via npm (matching what the views
were using from wwwroot/lib/) is closer to what the rest of the
codebase expects.

Verified: 'dotnet test' passes (11/11).

Refs: this is the fix to make the 'separate front assets into
esbuild bundles' commit green.
2026-06-14 14:24:55 +01:00
d9de4c48ac chore: gitignore node_modules, build/, wwwroot/lib, package-lock
Add ignore rules for the new front-end toolchain:
- node_modules/ : npm install output
- build/         : esbuild entry files (regenerated by build:js)
- package-lock.json : not committed (use package.json as canonical)
- src/Yavsc.Org/wwwroot/lib/ : vendor libs (replaced by bundles)
  with exception for jonthornton-Datepair/ (not on npm)
- src/Yavsc.Org/wwwroot/js/*.min.js : generated by esbuild
2026-06-14 14:12:39 +01:00
07d219e487 docs: add npm install + build:js to install procedure
The esbuild bundles under wwwroot/js and wwwroot/css are now
produced by 'npm run build:js'. Document this in INSTALL.md so
new contributors know to run 'npm install' before 'make install'.
2026-06-14 14:11:59 +01:00
952d263b9f refac: separate front assets into esbuild bundles
Sort ~50 Mo de libs tierces hors du repo et regroupe le code
front en 6 bundles thématiques + 2 assets statiques.

Bundles produits par esbuild :
- core.bundle.min.js   : jQuery + jQuery UI + Bootstrap 4 + validation
                          + tout le code applicatif 'core'
                          (site, signout, signin, input-lib, md-helpers,
                          audiovideoinput, parallax, google.geocode,
                          google-geoloc). Chargé par _Layout.cshtml.
- chat.bundle.min.js   : core subset (sans Bootstrap) + chat.js + comment.js
                          (SignalR client chargé séparément, voir plus bas)
- dropzone.bundle.min.js : jQuery + dropzone + yavsc-remote-fs
- datetime.bundle.min.js : jQuery + jQuery UI + eonasdan datetimepicker
                          + jquery-timepicker
- timepicker.bundle.min.js : jQuery + jQuery UI + jquery-timepicker
- quill.bundle.min.js  : Quill rich text editor

Assets statiques (non bundlés, copiés depuis node_modules) :
- signalr.min.js       : client SignalR 2.x (legacy server)
- moment-with-locales.min.js : moment + 137 locales (require dynamique
                               non résolvable statiquement par esbuild)

CSS vendor copiées comme assets statiques vers wwwroot/css/ :
bootstrap.min.css, jquery-ui.min.css, dropzone.min.css,
dropzone-basic.min.css, bootstrap-datetimepicker.min.css,
jquery.timepicker.css

Exception gitignore : jonthornton-Datepair/jquery.datepair.min.js
n'est pas sur npm, conservé comme asset statique sous
wwwroot/lib/jonthornton-Datepair/ (téléchargé depuis upstream).

Vues Razor mises à jour (15 fichiers) pour pointer vers les bundles
et les CSS vendor. Suppression de la majorité de wwwroot/lib/ (1300+
fichiers). Suppression des jquery*.js, quill.js, showdown.js,
to-markdown.js, jquery.signalR-2.2.1.js, dropzone.js et de leurs
.min.js associés.

'jquery-datepair' et 'jquery-ui-map' non publiés sur npm :
- jquery-ui-map n'est utilisé nulle part dans le repo (vérifié),
  la dépendance est purement historique.
- datepair reste en static sous wwwroot/lib/jonthornton-Datepair/.
2026-06-14 14:11:33 +01:00
ef4c7f40b0 chore: add node toolchain + esbuild config
Pose les fondations du bundle front unique :
- package.json : deps npm (jQuery, jQuery UI, jQuery plugins,
  Bootstrap 5, SignalR, Moment, Quill, Showdown, To-markdown,
  Dropzone, eonasdan-datetimepicker) + esbuild.
- esbuild.config.mjs : produit src/Yavsc.Org/wwwroot/js/site.bundle.min.js
  à partir des .js à nous + des libs npm.
- .gitignore : exclut node_modules/, wwwroot/lib/, et les *.min.js
  sous wwwroot/js (générés au build, non versionnés).

Le bundle généré sera commité au commit suivant pour que le
runtime .NET n'ait pas besoin de node au publish time.
2026-06-14 12:32:06 +01:00
6dbdc2d408 docs: roadmap à jour, archive TODO.fr, session DDD + droits yavsc
TODO.fr.md (2016-2017) archivé en TODO.fr.md.archive.
ROADMAP.md reformule les jalons en s'appuyant sur l'Architecture
et la session DDD du 14 juin 2026.
doc/Architecture.md: section 'Droits de yavsc' ajoutée (admin, groupes, user yavsc).
doc/ddd-exploration-2026-06-14.md: première session d'Event Storming narratif.
2026-06-14 12:17:03 +01:00
9415521bcb WIP: refactoring pour déploiement
Non testé en conditions réelles. À valider avant de pousser.
2026-06-14 12:17:03 +01:00
2564d9938e Merge pull request #58 from pazof/dependabot/npm_and_yarn/src/Yavsc.Web/wwwroot/lib/jquery-validation-unobtrusive/decode-uri-component-0.2.2
Bump decode-uri-component from 0.2.0 to 0.2.2 in /src/Yavsc.Web/wwwroot/lib/jquery-validation-unobtrusive
2026-06-13 21:04:44 +01:00
root
198d5bc202 cd contrib; make reinstall 2026-06-13 20:57:30 +01:00
bdc974b29b érrance 2026-06-12 12:47:04 +01:00
bba719c8c1 doc : Architecute 2026-06-12 12:34:30 +01:00
dependabot[bot]
96dafaeb62 Bump decode-uri-component
Bumps [decode-uri-component](https://github.com/SamVerschueren/decode-uri-component) from 0.2.0 to 0.2.2.
- [Release notes](https://github.com/SamVerschueren/decode-uri-component/releases)
- [Commits](https://github.com/SamVerschueren/decode-uri-component/compare/v0.2.0...v0.2.2)

---
updated-dependencies:
- dependency-name: decode-uri-component
  dependency-version: 0.2.2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-06-11 20:01:35 +00:00
b3444ac4e2 Merge pull request #56 from pazof/dependabot/github_actions/all-actions-64c84cc25d
Bump the all-actions group with 4 updates
2026-06-11 20:53:33 +01:00
dependabot[bot]
6b43e74454 Bump the all-actions group with 4 updates
Bumps the all-actions group with 4 updates: [actions/checkout](https://github.com/actions/checkout), [actions/upload-artifact](https://github.com/actions/upload-artifact), [docker/login-action](https://github.com/docker/login-action) and [docker/build-push-action](https://github.com/docker/build-push-action).


Updates `actions/checkout` from 4 to 6
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v4...v6)

Updates `actions/upload-artifact` from 4 to 7
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v4...v7)

Updates `docker/login-action` from 3 to 4
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/v3...v4)

Updates `docker/build-push-action` from 6 to 7
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v6...v7)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: all-actions
- dependency-name: actions/upload-artifact
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: all-actions
- dependency-name: docker/login-action
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: all-actions
- dependency-name: docker/build-push-action
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: all-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-06-11 19:22:08 +00:00
d822ca3d1b Update Dependabot configuration for multiple ecosystems 2026-06-11 20:21:12 +01:00
c3941a5158 Badges 2026-06-11 20:14:32 +01:00
e98bba4247 refacts and PostIt Nav 2026-06-11 20:02:32 +01:00
1a0556695c Login settings 2026-06-10 16:59:23 +01:00
164bd928aa logo + oidc client PostIt 2026-06-10 11:10:15 +01:00
fa7d6242f1 postit and them also 2026-06-10 00:23:17 +01:00
de616809ae Téléverser l'APK 2026-06-07 13:39:47 +01:00
c5ecfced06 Bad try to apk path 2026-06-07 13:24:04 +01:00
5abaf0e027 extract the apk 2026-06-07 13:08:23 +01:00
ed0f89ab12 Re ARG fix* 2026-06-07 12:57:41 +01:00
eb5f0eb2cd use -r only for android build 2026-06-07 12:41:59 +01:00
addf24a8f1 user -r only for android build 2026-06-07 12:34:44 +01:00
6ceec55ed9 build --build-arg TARGET_RID=android-arm64 2026-06-07 12:19:18 +01:00
1b24b75984 typo 2026-06-07 12:06:17 +01:00
3d8908b782 main action header 2026-06-07 12:03:40 +01:00
64fa3afe31 main.yml 2026-06-07 11:58:42 +01:00
4899a251e0 FIXME build the signed apk using a dedicated GitHub action 2026-06-07 11:48:42 +01:00
4b9bf57a51 trying the target plan 2026-06-07 11:42:08 +01:00
f6de24865a cleanup 2026-06-07 11:33:44 +01:00
fc3826eb16 .prod (=.yavsc-backend build) 2026-06-07 11:17:07 +01:00
04a60f104e docker build . <<< Ok 2026-06-07 11:11:15 +01:00
786b727504 Anti-Corruption Layer (ACL) 2026-06-07 09:11:40 +01:00
ed09085e60 (Correction de l'organisation) 2026-06-07 09:05:28 +01:00
de88b22303 Dockerfiles ... 2026-06-07 09:01:21 +01:00
b8ba7cc511 build split 2026-06-07 08:33:58 +01:00
a04e855c2d force 2026-06-07 08:19:58 +01:00
78b01d794e -clp:ErrorsOnly 2026-06-07 08:12:54 +01:00
fa2b7eed96 repo cleanup 2026-06-07 07:57:11 +01:00
15e63af8f1 docker build 2026-06-07 07:50:44 +01:00
52329feade isn already added 2026-06-07 07:36:58 +01:00
16e6c56d6c copie de tout le code source 2026-06-07 07:35:42 +01:00
07c2b9cbd5 cleanup 2026-06-07 07:32:24 +01:00
0730a760a5 don(t ignore dockerignore 2026-06-07 07:20:47 +01:00
4ede3af5c7 dotnet build -c Release --no-restore 2026-06-07 07:08:40 +01:00
142b969f57 pschneider 2026-06-07 07:06:40 +01:00