Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Ux Components Laravel Package

chrisdev/ux-components

View on GitHub
Deep Wiki
Context7

Task - DataTable v1.0.3 - Faker Integration & Real Dataset Validation

Contexte

La DataTable v1.0.2 est désormais pleinement fonctionnelle :

  • colonnes dynamiques
  • lignes dynamiques
  • actions dynamiques
  • tri dynamique
  • filtres dynamiques
  • autoChoices
  • multi-filtres
  • LiveComponent
  • responsive
  • dark mode
  • couverture de tests complète

Actuellement, les démonstrations utilisent un jeu de données très réduit :

[
    [
        'id' => 1,
        'name' => 'Admin Demo',
    ],
    [
        'id' => 2,
        'name' => 'User Demo',
    ],
]

Ce volume est suffisant pour valider le rendu mais ne permet pas de tester correctement :

  • pagination
  • tri réel
  • filtres complexes
  • autoChoices
  • responsive sur plusieurs pages
  • performances LiveComponent

Objectif

Ajouter Faker comme dépendance de développement afin de générer des jeux de données réalistes pour les démonstrations et les validations fonctionnelles.

Dépendance

Installer :

composer require --dev fakerphp/faker

Architecture

Créer une factory dédiée aux données de démonstration.

Exemple :

final class UserTableDemoDataFactory
{
    public static function create(
        int $count = 100
    ): array {
    }
}

Jeu de données

Générer des utilisateurs réalistes.

Champs :

  • id
  • name
  • email
  • status
  • role
  • createdAt

Status

Répartition réaliste :

  • Actif
  • En attente
  • Suspendu
  • Archivé

Rôles

Répartition réaliste :

  • Administrateur
  • Manager
  • Support
  • Utilisateur

Démonstration

Remplacer le dataset statique actuel par :

'rows' => UserTableDemoDataFactory::create(250),

Validation pagination

Valider :

  • pagination sur plusieurs pages
  • navigation précédente / suivante
  • changement direct de page
  • conservation du tri
  • conservation des filtres
  • conservation des multi-filtres

Validation filtres

Valider :

  • autoChoices
  • filtres simples
  • multi-filtres
  • filtres avec peu de résultats
  • filtres sans résultat

Validation tri

Valider :

  • tri ascendant
  • tri descendant
  • tri sur plusieurs pages
  • cohérence des résultats

Validation responsive

Valider :

  • mobile
  • tablette
  • desktop

avec plusieurs pages de données.

Validation dark mode

Valider :

  • pagination
  • filtres
  • tableau
  • actions

sur dataset volumineux.

Préparation futures fonctionnalités

Ce dataset devra également permettre de valider ultérieurement :

  • bulk actions
  • export CSV
  • export XLSX
  • DataSourceInterface
  • DoctrineDataSource

sans nécessiter de données supplémentaires.

Tests

Ajouter des tests couvrant :

  • génération des données
  • structure des lignes
  • volume demandé
  • cohérence des valeurs générées

Validation

make test
make phpstan
make lint-twig
make npm-build

Critères d'acceptation

  • Faker installé en dépendance dev
  • Factory dédiée créée
  • Dataset de démonstration réaliste
  • Pagination validée sur plusieurs pages
  • Tri validé sur dataset volumineux
  • Filtres validés sur dataset volumineux
  • Responsive validé
  • Dark mode validé
  • Aucune régression fonctionnelle
  • Tous les contrôles qualité restent verts

Note

Cette tâche n'ajoute aucune fonctionnalité métier.

Elle vise à renforcer la validation fonctionnelle de la DataTable dans des conditions proches d'une utilisation réelle afin de préparer sereinement les futures évolutions du composant.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
andydefer/laravel-cluster
testo/fiber
mintobit/jobqueue
a4sex/maintenance-bundle
a4sex/entity-date-update
a4sex/client-identifier
a4sex/base-utilites
a4sex/key-value-storage
a4sex/micro-status
chilldev/dependency-injection-extra
datinglibre/datinglibre-app-api
biberltd/corebundle
bricre/symfony-bundle-test
biberltd/logbundle
dominium/http-adapter-bundle
dominium/google-analytics
a4sex/auto-clean-entity
christhompsontldr/laravel-inky
spatie/mailcoach-vapor
spatie/laravel-javascript-views