@mostajs/qrpanel 0.4.0 → 0.6.0

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.
package/CHANGELOG.md ADDED
@@ -0,0 +1,56 @@
1
+ # @mostajs/qrpanel — Changelog
2
+ ## [Unreleased]
3
+ - **qrPngFigure(data, caption, opts)** — figure PNG légendée (pendant de qrLive pour le rendu image : billets/badges imprimables). Sous-chemin `./png`.
4
+
5
+
6
+ **Auteur** : Dr Hamid MADANI <drmdh@msn.com>
7
+
8
+ ## [+] 2026-06-23
9
+ ### Ajouté
10
+ - **Versions ≥ 7** : pose des « information de version » (18 bits BCH v7-10) → QR longs enfin VALIDES.
11
+ - **qrLive** : figure QR scannable (gros + légende).
12
+ - **Payloads typés** (./payloads) : qrWifi, qrTel, qrSms, qrEmail, qrGeo, qrUrl, qrMeCard, qrVCard, qrEvent.
13
+ - **Figures** (./figures) : qrLogo (logo central), qrCard, qrBadge, qrSheet (planche).
14
+ - **qrPng** (./png) : sortie PNG base64 (emails/billets) via node:zlib.
15
+ - index.js + exports par sous-chemin. 10 tests.
16
+
17
+ ## 0.5.0 — 2026-05-21
18
+
19
+ ### Feature — `<QrImage>` : génération QR locale côté navigateur
20
+
21
+ Nouveau sous-export **`@mostajs/qrpanel/qr-image`** comblant le cas non
22
+ couvert jusqu'ici : générer un QR code **dans le navigateur**, sans
23
+ round-trip serveur ni service externe.
24
+
25
+ - **`<QrImage data size … />`** — composant React qui génère le QR
26
+ localement (data URL via `qrcode`) et le rend en `<img>`. Style-neutre
27
+ (`style` / `className`), utilisable sans Tailwind.
28
+ - **`useQrDataUrl(data, opts)`** — hook primitif renvoyant
29
+ `{ src, loading, error }`.
30
+ - **COEP-safe** : sous cross-origin isolation (`require-corp`), une image
31
+ QR cross-origin est bloquée par la politique ; la génération locale est
32
+ alors la seule option côté client.
33
+ - Sous-export dédié : `qrcode` n'entre dans le bundle client que pour les
34
+ consumers qui importent `@mostajs/qrpanel/qr-image`.
35
+
36
+ Complémentarité des trois briques :
37
+ - `./server` — `generateQr{Png,Svg,DataUrl}` (Node, thèmes, @resvg natif).
38
+ - `./client` — `<QrPanel>` (copie / partage / mailto, `qrSrc` fourni).
39
+ - `./qr-image` — `<QrImage>` (génération locale navigateur).
40
+
41
+ ### Change — `@mostajs/auth` et `@resvg/resvg-js` en peer deps optionnelles
42
+
43
+ Ces deux dépendances ne servent qu'à `./server` (`@resvg` pour la
44
+ rasterisation thématique, `@mostajs/auth` pour `buildInviteUrls`). Elles
45
+ passent de `dependencies` à **`peerDependencies` optionnelles** : un
46
+ consumer de `./qr-image` ou `./client` n'embarque plus la galaxie
47
+ auth/rbac/net ni un binaire natif inutile. Les consumers de `./server`
48
+ doivent désormais installer `@mostajs/auth` et `@resvg/resvg-js`
49
+ eux-mêmes.
50
+
51
+ ## 0.4.0
52
+
53
+ Générateur QR serveur (PNG/SVG/DataUrl) avec 12 thèmes intégrés
54
+ (image-as-frame, ECC=H), pilotage par `.qrconfig.json`, cross-OS sans
55
+ chromium ; composant React `<QrPanel>` (copie / ouvrir / mailto) ;
56
+ helper `buildInviteUrls` (invite-token HMAC) ; CLI `qrpanel`.