Aller au contenu

@lh-ui/share

L'unique couche partagée indépendante des frameworks de la famille lh-ui — 56 composants core en fonctions pures, 12 modules du noyau partagé, un système de thèmes style chinois, une internationalisation par simple emitter, 58 ensembles de sources de styles de composants. Une seule logique, pour alimenter les bibliothèques UI de Vue3 / Vue2 / React / uniapp sur toutes les plateformes.

Fonctions pures core

Les calculs de classes, les machines à états et les paquets d’attributs d’accessibilité des 56 composants sont tous des fonctions pures sans aucune dépendance. La couche framework ne fait que le câblage : la logique a une source unique, ainsi que les tests unitaires.

Noyau partagé

Moteur de positionnement popper, défilement virtuel, piège à focus, navigation clavier, props de styles sx, sanitisation des valeurs — 12 modules repris tels quels par chaque plateforme.

Thème style chinois

Cinq préréglages intégrés (青花瓷 (porcelaine bleue et blanche) / 松花绿 (vert pin) / 朱砂 (cinabre) / 水墨 (encre de Chine) / 藤黄 (gamboge)), variables CSS + mode sombre + système de motifs, surveillés par un script de contraste AA.

Internationalisation par simple emitter

LhLocale est un pur émetteur d’événements, sans aucune réactivité de framework ; chaque plateforme s’abonne à version avec son propre mécanisme de signaux.

Source unique des styles

styles/ est l’unique source des styles BEM des composants de toute la famille ; trois mixins fédèrent les différences de classes de transition entre Vue2 / Vue3 / React.

Zéro dépendance de framework

Un bundle entièrement sans dépendance grâce à external: [] ; la gate verify:dts interdit toute importation de framework dans les artefacts.

  • Aux développeurs des bibliothèques UI de chaque plateforme (lh-ui-plus / lh-ui-vue2 / lh-ui-react / lh-ui-uniapp) : pour consulter la signature, la valeur de retour et les limites de chaque fonction pure, ainsi que la façon de surcharger les jetons de styles.
  • Aux développeurs indépendants qui utilisent share directement : le projet ne veut que la base d’accessibilité + les jetons du thème style chinois, sans aucune bibliothèque UI.
  • Aux contributeurs : pour comprendre les responsabilités des répertoires, les lignes rouges, ainsi que les processus de vérification et de release.
- `src/core/<composant>/` — logique en fonctions pures (logic.ts / types.ts), zéro import de framework
- `src/core/shared/` — noyau partagé entre composants (popper / virtual / sx / keyboard …)
- `src/theme/` — côté TS du thème : types + cinq préréglages + primitives d'exécution
- `styles/` — unique source des styles BEM des composants + jetons theme/common/*.scss
- `src/{constants,locales,types,utils}/` — constantes / paquets de langues / types / utilitaires

Prochaine étape : Démarrage pour installer le package et importer les styles ; ou consultez directement les entrées du package et les sous-chemins pour comprendre comment importer à la demande.

Copyright © 2024-2026 FengMo WenXue