@wakastellar/ui 1.0.12 → 2.1.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/README.md +163 -193
- package/dist/charts.cjs.js +1 -0
- package/dist/charts.es.js +16 -0
- package/dist/cli/commands/add.d.ts +7 -0
- package/dist/cli/commands/init.d.ts +6 -0
- package/dist/cli/commands/list.d.ts +5 -0
- package/dist/cli/commands/search.d.ts +1 -0
- package/dist/cli/index.cjs +4844 -0
- package/dist/cli/index.d.ts +1 -0
- package/dist/cli/utils/config.d.ts +29 -0
- package/dist/cli/utils/logger.d.ts +20 -0
- package/dist/cli/utils/registry.d.ts +23 -0
- package/dist/cn-B-fTneHh.js +1 -0
- package/dist/cn-DzRe1GWm.mjs +21 -0
- package/dist/components/index.d.ts +122 -0
- package/dist/components/waka-3d-pie-chart/index.d.ts +67 -0
- package/dist/components/waka-achievement-unlock/index.d.ts +83 -0
- package/dist/components/waka-activity-feed/index.d.ts +78 -0
- package/dist/components/waka-address-autocomplete/index.d.ts +124 -0
- package/dist/components/waka-alert-stack/index.d.ts +58 -0
- package/dist/components/waka-allocation-matrix/index.d.ts +193 -0
- package/dist/components/waka-approval-chain/index.d.ts +43 -0
- package/dist/components/waka-audit-log/index.d.ts +142 -0
- package/dist/components/waka-badge-showcase/index.d.ts +51 -0
- package/dist/components/waka-biometric-prompt/index.d.ts +84 -0
- package/dist/components/waka-bottom-sheet/index.d.ts +61 -0
- package/dist/components/waka-breadcrumb-path/index.d.ts +46 -0
- package/dist/components/waka-budget-burn/index.d.ts +154 -0
- package/dist/components/waka-capacity-planner/index.d.ts +132 -0
- package/dist/components/waka-cart-summary/index.d.ts +154 -0
- package/dist/components/waka-challenge-timer/index.d.ts +86 -0
- package/dist/components/waka-chat-bubble/index.d.ts +127 -0
- package/dist/components/waka-checklist/index.d.ts +123 -0
- package/dist/components/waka-checkout-stepper/index.d.ts +154 -0
- package/dist/components/waka-cohort-table/index.d.ts +130 -0
- package/dist/components/waka-combo-counter/index.d.ts +53 -0
- package/dist/components/waka-command-bar/index.d.ts +45 -0
- package/dist/components/waka-compare-period/index.d.ts +122 -0
- package/dist/components/waka-connection-matrix/index.d.ts +117 -0
- package/dist/components/waka-contribution-graph/index.d.ts +34 -0
- package/dist/components/waka-cost-breakdown/index.d.ts +50 -0
- package/dist/components/waka-coupon-input/index.d.ts +105 -0
- package/dist/components/waka-credit-card-input/index.d.ts +95 -0
- package/dist/components/waka-daily-reward/index.d.ts +76 -0
- package/dist/components/waka-deployment-lane/index.d.ts +43 -0
- package/dist/components/waka-device-trust/index.d.ts +95 -0
- package/dist/components/waka-dock/index.d.ts +44 -0
- package/dist/components/waka-empty-state/index.d.ts +85 -0
- package/dist/components/waka-error-shake/index.d.ts +49 -0
- package/dist/components/waka-feature-announcement/index.d.ts +112 -0
- package/dist/components/waka-floating-nav/index.d.ts +51 -0
- package/dist/components/waka-flow-diagram/index.d.ts +71 -0
- package/dist/components/waka-funnel-chart/index.d.ts +108 -0
- package/dist/components/waka-glow-card/index.d.ts +32 -0
- package/dist/components/waka-goal-progress/index.d.ts +139 -0
- package/dist/components/waka-haptic-button/index.d.ts +45 -0
- package/dist/components/waka-health-pulse/index.d.ts +28 -0
- package/dist/components/waka-heatmap/index.d.ts +135 -0
- package/dist/components/waka-hotspot/index.d.ts +106 -0
- package/dist/components/waka-incident-timeline/index.d.ts +38 -0
- package/dist/components/waka-invoice-preview/index.d.ts +137 -0
- package/dist/components/waka-kpi-dashboard/index.d.ts +80 -0
- package/dist/components/waka-leaderboard/index.d.ts +85 -0
- package/dist/components/waka-level-progress/index.d.ts +89 -0
- package/dist/components/waka-liquid-button/index.d.ts +41 -0
- package/dist/components/waka-loading-orbit/index.d.ts +90 -0
- package/dist/components/waka-loot-box/index.d.ts +87 -0
- package/dist/components/waka-magic-link/index.d.ts +34 -0
- package/dist/components/waka-magnetic-button/index.d.ts +56 -0
- package/dist/components/waka-mention-input/index.d.ts +106 -0
- package/dist/components/waka-metric-sparkline/index.d.ts +46 -0
- package/dist/components/waka-milestone-road/index.d.ts +91 -0
- package/dist/components/waka-morph-button/index.d.ts +62 -0
- package/dist/components/waka-network-topology/index.d.ts +35 -0
- package/dist/components/waka-orbital-menu/index.d.ts +61 -0
- package/dist/components/waka-order-tracker/index.d.ts +121 -0
- package/dist/components/waka-password-strength/index.d.ts +98 -0
- package/dist/components/waka-payment-method-picker/index.d.ts +88 -0
- package/dist/components/waka-permission-matrix/index.d.ts +197 -0
- package/dist/components/waka-phone-input/index.d.ts +93 -0
- package/dist/components/waka-pipeline-view/index.d.ts +49 -0
- package/dist/components/waka-player-card/index.d.ts +36 -0
- package/dist/components/waka-points-popup/index.d.ts +75 -0
- package/dist/components/waka-power-up/index.d.ts +103 -0
- package/dist/components/waka-presence-indicator/index.d.ts +188 -0
- package/dist/components/waka-pricing-table/index.d.ts +77 -0
- package/dist/components/waka-product-card/index.d.ts +81 -0
- package/dist/components/waka-progress-onboarding/index.d.ts +97 -0
- package/dist/components/waka-pull-to-refresh/index.d.ts +45 -0
- package/dist/components/waka-quest-card/index.d.ts +110 -0
- package/dist/components/waka-quota-bar/index.d.ts +100 -0
- package/dist/components/waka-radar-score/index.d.ts +95 -0
- package/dist/components/waka-rank-badge/index.d.ts +58 -0
- package/dist/components/waka-rating-input/index.d.ts +110 -0
- package/dist/components/waka-reaction-picker/index.d.ts +77 -0
- package/dist/components/waka-region-map/index.d.ts +27 -0
- package/dist/components/waka-resource-gauge/index.d.ts +78 -0
- package/dist/components/waka-resource-pool/index.d.ts +81 -0
- package/dist/components/waka-rollback-slider/index.d.ts +79 -0
- package/dist/components/waka-sankey-diagram/index.d.ts +120 -0
- package/dist/components/waka-schedule-picker/index.d.ts +100 -0
- package/dist/components/waka-scratch-card/index.d.ts +87 -0
- package/dist/components/waka-season-pass/index.d.ts +65 -0
- package/dist/components/waka-security-score/index.d.ts +124 -0
- package/dist/components/waka-server-rack/index.d.ts +44 -0
- package/dist/components/waka-session-manager/index.d.ts +116 -0
- package/dist/components/waka-signature-pad/index.d.ts +87 -0
- package/dist/components/waka-skeleton-wave/index.d.ts +79 -0
- package/dist/components/waka-skill-tree/index.d.ts +78 -0
- package/dist/components/waka-sla-tracker/index.d.ts +65 -0
- package/dist/components/waka-slider-range/index.d.ts +88 -0
- package/dist/components/waka-spin-wheel/index.d.ts +51 -0
- package/dist/components/waka-spotlight/index.d.ts +47 -0
- package/dist/components/waka-stats-hexagon/index.d.ts +149 -0
- package/dist/components/waka-status-matrix/index.d.ts +38 -0
- package/dist/components/waka-streak-counter/index.d.ts +27 -0
- package/dist/components/waka-success-explosion/index.d.ts +51 -0
- package/dist/components/waka-swipe-card/index.d.ts +64 -0
- package/dist/components/waka-tabs-morph/index.d.ts +66 -0
- package/dist/components/waka-tag-input/index.d.ts +134 -0
- package/dist/components/waka-team-banner/index.d.ts +122 -0
- package/dist/components/waka-terminal-output/index.d.ts +48 -0
- package/dist/components/waka-thread-view/index.d.ts +101 -0
- package/dist/components/waka-tilt-card/index.d.ts +36 -0
- package/dist/components/waka-tooltip-tour/index.d.ts +118 -0
- package/dist/components/waka-tour-guide/index.d.ts +122 -0
- package/dist/components/waka-tournament-bracket/index.d.ts +101 -0
- package/dist/components/waka-treemap-chart/index.d.ts +104 -0
- package/dist/components/waka-two-factor-setup/index.d.ts +93 -0
- package/dist/components/waka-typewriter/index.d.ts +98 -0
- package/dist/components/waka-typing-indicator/index.d.ts +64 -0
- package/dist/components/waka-versus-card/index.d.ts +117 -0
- package/dist/components/waka-video-call/index.d.ts +170 -0
- package/dist/components/waka-voice-message/index.d.ts +117 -0
- package/dist/components/waka-welcome-modal/index.d.ts +120 -0
- package/dist/components/waka-xp-bar/index.d.ts +54 -0
- package/dist/export.cjs.js +1 -0
- package/dist/export.d.ts +3 -1
- package/dist/export.es.js +5 -0
- package/dist/index-B9GTFkji.js +1 -0
- package/dist/index-c0jcWyEL.mjs +466 -0
- package/dist/index.cjs.js +2530 -22
- package/dist/index.d.ts +1 -0
- package/dist/index.es.js +72081 -19512
- package/dist/rich-text.cjs.js +1 -0
- package/dist/rich-text.es.js +4 -0
- package/dist/types-BOWIoR7j.mjs +1111 -0
- package/dist/types-D2yCJ91P.js +1 -0
- package/dist/useDataTableImport-D8R2HQl6.mjs +229 -0
- package/dist/useDataTableImport-S_hhA5Wo.js +9 -0
- package/package.json +70 -22
- package/src/blocks/activity-timeline/index.tsx +586 -0
- package/src/blocks/calendar-view/index.tsx +756 -0
- package/src/blocks/chat/index.tsx +1018 -0
- package/src/blocks/chat/widget.tsx +504 -0
- package/src/blocks/dashboard/index.tsx +522 -0
- package/src/blocks/empty-states/index.tsx +452 -0
- package/src/blocks/error-pages/index.tsx +426 -0
- package/src/blocks/faq/index.tsx +479 -0
- package/src/blocks/file-manager/index.tsx +890 -0
- package/src/blocks/footer/index.tsx +133 -0
- package/src/blocks/header/index.tsx +357 -0
- package/src/blocks/headtab/index.tsx +139 -0
- package/src/blocks/i18n-editor/index.tsx +1016 -0
- package/src/blocks/index.ts +80 -0
- package/src/blocks/kanban-board/index.tsx +779 -0
- package/src/blocks/landing/index.tsx +677 -0
- package/src/blocks/language-selector/index.tsx +88 -0
- package/src/blocks/layout/index.tsx +159 -0
- package/src/blocks/login/index.tsx +339 -0
- package/src/blocks/login/types.ts +131 -0
- package/src/blocks/pricing/index.tsx +564 -0
- package/src/blocks/profile/index.tsx +746 -0
- package/src/blocks/settings/index.tsx +558 -0
- package/src/blocks/sidebar/index.tsx +713 -0
- package/src/blocks/theme-creator-block/index.tsx +835 -0
- package/src/blocks/user-management/index.tsx +1037 -0
- package/src/blocks/wizard/index.tsx +719 -0
- package/src/components/DataTable/DataTable.tsx +406 -0
- package/src/components/DataTable/DataTableAdvanced.tsx +720 -0
- package/src/components/DataTable/DataTableBody.tsx +216 -0
- package/src/components/DataTable/DataTableCell.tsx +172 -0
- package/src/components/DataTable/DataTableColumnResizer.tsx +62 -0
- package/src/components/DataTable/DataTableConflictResolver.tsx +478 -0
- package/src/components/DataTable/DataTableContextMenu.tsx +219 -0
- package/src/components/DataTable/DataTableEditCell.tsx +279 -0
- package/src/components/DataTable/DataTableFilterBuilder.tsx +519 -0
- package/src/components/DataTable/DataTableFilters.tsx +535 -0
- package/src/components/DataTable/DataTableGrouping.tsx +147 -0
- package/src/components/DataTable/DataTableHeader.tsx +172 -0
- package/src/components/DataTable/DataTablePagination.tsx +125 -0
- package/src/components/DataTable/DataTableSelection.tsx +269 -0
- package/src/components/DataTable/DataTableSyncStatus.tsx +281 -0
- package/src/components/DataTable/DataTableToolbar.tsx +262 -0
- package/src/components/DataTable/README.md +446 -0
- package/src/components/DataTable/__tests__/DataTableAdvanced.test.tsx +426 -0
- package/src/components/DataTable/__tests__/DataTableEdit.test.tsx +329 -0
- package/src/components/DataTable/__tests__/useDataTableAdvanced.test.ts +455 -0
- package/src/components/DataTable/examples/EditExample.tsx +166 -0
- package/src/components/DataTable/formatters/index.ts +335 -0
- package/src/components/DataTable/hooks/__tests__/useDataTableEdit.test.ts +239 -0
- package/src/components/DataTable/hooks/useDataTable.ts +145 -0
- package/src/components/DataTable/hooks/useDataTableAdvanced.ts +342 -0
- package/src/components/DataTable/hooks/useDataTableAdvancedFilters.ts +637 -0
- package/src/components/DataTable/hooks/useDataTableColumnTemplates.ts +186 -0
- package/src/components/DataTable/hooks/useDataTableEdit.ts +167 -0
- package/src/components/DataTable/hooks/useDataTableExport.ts +227 -0
- package/src/components/DataTable/hooks/useDataTableImport.ts +216 -0
- package/src/components/DataTable/hooks/useDataTableOffline.ts +481 -0
- package/src/components/DataTable/hooks/useDataTableTheme.ts +213 -0
- package/src/components/DataTable/hooks/useDataTableVirtualization.ts +99 -0
- package/src/components/DataTable/hooks/useTableLayout.ts +85 -0
- package/src/components/DataTable/index.ts +81 -0
- package/src/components/DataTable/services/IndexedDBService.ts +504 -0
- package/src/components/DataTable/templates/index.tsx +803 -0
- package/src/components/DataTable/types.ts +504 -0
- package/src/components/DataTable/utils.ts +164 -0
- package/src/components/DataTable/workers/exportWorker.ts +213 -0
- package/src/components/accordion/index.tsx +61 -0
- package/src/components/alert/index.tsx +61 -0
- package/src/components/alert-dialog/index.tsx +146 -0
- package/src/components/aspect-ratio/index.tsx +12 -0
- package/src/components/avatar/index.tsx +54 -0
- package/src/components/badge/Badge.stories.tsx +64 -0
- package/src/components/badge/index.tsx +38 -0
- package/src/components/button/Button.stories.tsx +173 -0
- package/src/components/button/index.tsx +56 -0
- package/src/components/calendar/index.tsx +73 -0
- package/src/components/card/index.tsx +78 -0
- package/src/components/checkbox/index.tsx +34 -0
- package/src/components/code/index.tsx +229 -0
- package/src/components/collapsible/index.tsx +16 -0
- package/src/components/command/index.tsx +162 -0
- package/src/components/context-menu/index.tsx +204 -0
- package/src/components/dialog/index.tsx +126 -0
- package/src/components/dropdown-menu/index.tsx +204 -0
- package/src/components/error-boundary/ErrorBoundary.tsx +281 -0
- package/src/components/error-boundary/index.ts +7 -0
- package/src/components/form/index.tsx +183 -0
- package/src/components/hover-card/index.tsx +33 -0
- package/src/components/index.ts +368 -0
- package/src/components/input/Input.stories.tsx +100 -0
- package/src/components/input/index.tsx +27 -0
- package/src/components/input-otp/index.tsx +277 -0
- package/src/components/label/index.tsx +30 -0
- package/src/components/language-selector/index.tsx +341 -0
- package/src/components/menubar/index.tsx +240 -0
- package/src/components/navigation-menu/index.tsx +134 -0
- package/src/components/popover/index.tsx +35 -0
- package/src/components/progress/index.tsx +32 -0
- package/src/components/radio-group/index.tsx +48 -0
- package/src/components/scroll-area/index.tsx +52 -0
- package/src/components/select/index.tsx +164 -0
- package/src/components/separator/index.tsx +35 -0
- package/src/components/sheet/index.tsx +147 -0
- package/src/components/skeleton/index.tsx +22 -0
- package/src/components/slider/index.tsx +32 -0
- package/src/components/switch/index.tsx +33 -0
- package/src/components/table/index.tsx +117 -0
- package/src/components/tabs/index.tsx +59 -0
- package/src/components/textarea/index.tsx +30 -0
- package/src/components/theme-selector/index.tsx +327 -0
- package/src/components/toast/index.tsx +133 -0
- package/src/components/toaster/index.tsx +34 -0
- package/src/components/toggle/index.tsx +49 -0
- package/src/components/tooltip/index.tsx +34 -0
- package/src/components/typography/index.tsx +276 -0
- package/src/components/waka-3d-pie-chart/index.tsx +486 -0
- package/src/components/waka-achievement-unlock/index.tsx +716 -0
- package/src/components/waka-activity-feed/index.tsx +686 -0
- package/src/components/waka-address-autocomplete/index.tsx +1202 -0
- package/src/components/waka-admincrumb/index.tsx +349 -0
- package/src/components/waka-alert-stack/index.tsx +827 -0
- package/src/components/waka-allocation-matrix/index.tsx +1278 -0
- package/src/components/waka-approval-chain/index.tsx +766 -0
- package/src/components/waka-audit-log/index.tsx +1475 -0
- package/src/components/waka-autocomplete/index.tsx +358 -0
- package/src/components/waka-badge-showcase/index.tsx +704 -0
- package/src/components/waka-barcode/index.tsx +260 -0
- package/src/components/waka-biometric-prompt/index.tsx +765 -0
- package/src/components/waka-bottom-sheet/index.tsx +495 -0
- package/src/components/waka-breadcrumb/index.tsx +376 -0
- package/src/components/waka-breadcrumb-path/index.tsx +513 -0
- package/src/components/waka-budget-burn/index.tsx +1234 -0
- package/src/components/waka-capacity-planner/index.tsx +1107 -0
- package/src/components/waka-carousel/index.tsx +893 -0
- package/src/components/waka-cart-summary/index.tsx +1055 -0
- package/src/components/waka-challenge-timer/index.tsx +1044 -0
- package/src/components/waka-charts/WakaAreaChart.tsx +251 -0
- package/src/components/waka-charts/WakaBarChart.tsx +222 -0
- package/src/components/waka-charts/WakaChart.tsx +124 -0
- package/src/components/waka-charts/WakaLineChart.tsx +219 -0
- package/src/components/waka-charts/WakaMiniChart.tsx +133 -0
- package/src/components/waka-charts/WakaPieChart.tsx +214 -0
- package/src/components/waka-charts/WakaSparkline.tsx +229 -0
- package/src/components/waka-charts/dataTableHelpers.ts +109 -0
- package/src/components/waka-charts/hooks/useChartTheme.ts +123 -0
- package/src/components/waka-charts/hooks/useRechartsLoader.ts +234 -0
- package/src/components/waka-charts/index.ts +90 -0
- package/src/components/waka-charts/types.ts +330 -0
- package/src/components/waka-chat-bubble/index.tsx +1060 -0
- package/src/components/waka-checklist/index.tsx +1067 -0
- package/src/components/waka-checkout-stepper/index.tsx +976 -0
- package/src/components/waka-cohort-table/index.tsx +1011 -0
- package/src/components/waka-color-picker/index.tsx +447 -0
- package/src/components/waka-combo-counter/index.tsx +864 -0
- package/src/components/waka-combobox/index.tsx +497 -0
- package/src/components/waka-command-bar/index.tsx +403 -0
- package/src/components/waka-compare-period/index.tsx +1230 -0
- package/src/components/waka-connection-matrix/index.tsx +1053 -0
- package/src/components/waka-contribution-graph/index.tsx +552 -0
- package/src/components/waka-cost-breakdown/index.tsx +1065 -0
- package/src/components/waka-coupon-input/index.tsx +592 -0
- package/src/components/waka-credit-card-input/index.tsx +982 -0
- package/src/components/waka-daily-reward/index.tsx +762 -0
- package/src/components/waka-date-range-picker/index.tsx +378 -0
- package/src/components/waka-datetime-picker/index.tsx +793 -0
- package/src/components/waka-datetime-picker.form-integration/index.tsx +402 -0
- package/src/components/waka-deployment-lane/index.tsx +673 -0
- package/src/components/waka-device-trust/index.tsx +1259 -0
- package/src/components/waka-dock/index.tsx +285 -0
- package/src/components/waka-drawer/index.tsx +319 -0
- package/src/components/waka-empty-state/index.tsx +545 -0
- package/src/components/waka-error-shake/index.tsx +398 -0
- package/src/components/waka-feature-announcement/index.tsx +991 -0
- package/src/components/waka-file-upload/index.tsx +437 -0
- package/src/components/waka-floating-nav/index.tsx +413 -0
- package/src/components/waka-flow-diagram/index.tsx +508 -0
- package/src/components/waka-funnel-chart/index.tsx +823 -0
- package/src/components/waka-glow-card/index.tsx +246 -0
- package/src/components/waka-goal-progress/index.tsx +1025 -0
- package/src/components/waka-haptic-button/index.tsx +388 -0
- package/src/components/waka-health-pulse/index.tsx +451 -0
- package/src/components/waka-heatmap/index.tsx +1026 -0
- package/src/components/waka-hotspot/index.tsx +682 -0
- package/src/components/waka-image/index.tsx +373 -0
- package/src/components/waka-incident-timeline/index.tsx +686 -0
- package/src/components/waka-invoice-preview/index.tsx +829 -0
- package/src/components/waka-kanban/index.tsx +646 -0
- package/src/components/waka-kpi-dashboard/index.tsx +755 -0
- package/src/components/waka-leaderboard/index.tsx +746 -0
- package/src/components/waka-level-progress/index.tsx +665 -0
- package/src/components/waka-liquid-button/index.tsx +520 -0
- package/src/components/waka-loading-orbit/index.tsx +478 -0
- package/src/components/waka-loot-box/index.tsx +1091 -0
- package/src/components/waka-magic-link/index.tsx +321 -0
- package/src/components/waka-magnetic-button/index.tsx +567 -0
- package/src/components/waka-mention-input/index.tsx +953 -0
- package/src/components/waka-metric-sparkline/index.tsx +627 -0
- package/src/components/waka-milestone-road/index.tsx +1064 -0
- package/src/components/waka-modal/index.tsx +374 -0
- package/src/components/waka-morph-button/index.tsx +495 -0
- package/src/components/waka-network-topology/index.tsx +801 -0
- package/src/components/waka-notifications/index.tsx +414 -0
- package/src/components/waka-number-input/index.tsx +373 -0
- package/src/components/waka-orbital-menu/index.tsx +445 -0
- package/src/components/waka-order-tracker/index.tsx +1041 -0
- package/src/components/waka-pagination/index.tsx +393 -0
- package/src/components/waka-password-strength/index.tsx +824 -0
- package/src/components/waka-payment-method-picker/index.tsx +715 -0
- package/src/components/waka-permission-matrix/index.tsx +1302 -0
- package/src/components/waka-phone-input/index.tsx +801 -0
- package/src/components/waka-pipeline-view/index.tsx +604 -0
- package/src/components/waka-player-card/index.tsx +691 -0
- package/src/components/waka-points-popup/index.tsx +366 -0
- package/src/components/waka-power-up/index.tsx +1155 -0
- package/src/components/waka-presence-indicator/index.tsx +1181 -0
- package/src/components/waka-pricing-table/index.tsx +755 -0
- package/src/components/waka-product-card/index.tsx +786 -0
- package/src/components/waka-progress-onboarding/index.tsx +878 -0
- package/src/components/waka-pull-to-refresh/index.tsx +451 -0
- package/src/components/waka-qrcode/index.tsx +232 -0
- package/src/components/waka-quest-card/index.tsx +1275 -0
- package/src/components/waka-quota-bar/index.tsx +693 -0
- package/src/components/waka-radar-score/index.tsx +512 -0
- package/src/components/waka-rank-badge/index.tsx +813 -0
- package/src/components/waka-rating-input/index.tsx +560 -0
- package/src/components/waka-reaction-picker/index.tsx +1062 -0
- package/src/components/waka-region-map/index.tsx +730 -0
- package/src/components/waka-resource-gauge/index.tsx +654 -0
- package/src/components/waka-resource-pool/index.tsx +1035 -0
- package/src/components/waka-rich-text-editor/index.tsx +594 -0
- package/src/components/waka-rollback-slider/index.tsx +891 -0
- package/src/components/waka-sankey-diagram/index.tsx +1032 -0
- package/src/components/waka-schedule-picker/index.tsx +1060 -0
- package/src/components/waka-scratch-card/index.tsx +914 -0
- package/src/components/waka-season-pass/index.tsx +886 -0
- package/src/components/waka-security-score/index.tsx +1126 -0
- package/src/components/waka-segmented-control/index.tsx +238 -0
- package/src/components/waka-server-rack/index.tsx +764 -0
- package/src/components/waka-session-manager/index.tsx +815 -0
- package/src/components/waka-signature-pad/index.tsx +744 -0
- package/src/components/waka-skeleton-wave/index.tsx +454 -0
- package/src/components/waka-skill-tree/index.tsx +1031 -0
- package/src/components/waka-sla-tracker/index.tsx +798 -0
- package/src/components/waka-slider-range/index.tsx +765 -0
- package/src/components/waka-spin-wheel/index.tsx +671 -0
- package/src/components/waka-spinner/index.tsx +284 -0
- package/src/components/waka-spotlight/index.tsx +410 -0
- package/src/components/waka-stat/index.tsx +428 -0
- package/src/components/waka-stats-hexagon/index.tsx +824 -0
- package/src/components/waka-status-matrix/index.tsx +565 -0
- package/src/components/waka-stepper/index.tsx +489 -0
- package/src/components/waka-streak-counter/index.tsx +334 -0
- package/src/components/waka-success-explosion/index.tsx +453 -0
- package/src/components/waka-swipe-card/index.tsx +574 -0
- package/src/components/waka-tabs-morph/index.tsx +509 -0
- package/src/components/waka-tag-input/index.tsx +877 -0
- package/src/components/waka-team-banner/index.tsx +1183 -0
- package/src/components/waka-terminal-output/index.tsx +836 -0
- package/src/components/waka-theme-creator/index.tsx +762 -0
- package/src/components/waka-theme-manager/index.tsx +654 -0
- package/src/components/waka-thread-view/index.tsx +874 -0
- package/src/components/waka-tilt-card/index.tsx +250 -0
- package/src/components/waka-time-picker/index.tsx +479 -0
- package/src/components/waka-timeline/index.tsx +385 -0
- package/src/components/waka-tooltip-tour/index.tsx +855 -0
- package/src/components/waka-tour-guide/index.tsx +920 -0
- package/src/components/waka-tournament-bracket/index.tsx +1276 -0
- package/src/components/waka-tree/index.tsx +557 -0
- package/src/components/waka-treemap-chart/index.tsx +1031 -0
- package/src/components/waka-two-factor-setup/index.tsx +995 -0
- package/src/components/waka-typewriter/index.tsx +566 -0
- package/src/components/waka-typing-indicator/index.tsx +649 -0
- package/src/components/waka-versus-card/index.tsx +1026 -0
- package/src/components/waka-video/index.tsx +557 -0
- package/src/components/waka-video-call/index.tsx +1087 -0
- package/src/components/waka-virtual-list/index.tsx +327 -0
- package/src/components/waka-voice-message/index.tsx +1019 -0
- package/src/components/waka-welcome-modal/index.tsx +790 -0
- package/src/components/waka-xp-bar/index.tsx +799 -0
- package/src/styles/base.css +108 -0
- package/src/styles/code-highlight.css +82 -86
- package/src/styles/globals-v3.css +9 -0
- package/src/styles/globals.css +57 -74
- package/src/styles/tailwind.preset.js +69 -0
package/README.md
CHANGED
|
@@ -5,11 +5,12 @@
|
|
|
5
5
|

|
|
6
6
|

|
|
7
7
|

|
|
8
|
-

|
|
9
|
+

|
|
9
10
|
|
|
10
|
-
**Bibliothèque de composants React
|
|
11
|
+
**Bibliothèque de 200+ composants React professionnels pour applications Next.js modernes**
|
|
11
12
|
|
|
12
|
-
[Quick Start](#quick-start) • [Composants](#composants) • [Thèmes](#système-de-thèmes) • [i18n](#internationalisation)
|
|
13
|
+
[Quick Start](#quick-start) • [Tailwind v3/v4](#compatibilité-tailwind-v3--v4) • [Composants](#composants) • [Thèmes](#système-de-thèmes) • [i18n](#internationalisation)
|
|
13
14
|
|
|
14
15
|
</div>
|
|
15
16
|
|
|
@@ -17,12 +18,13 @@
|
|
|
17
18
|
|
|
18
19
|
## Caractéristiques
|
|
19
20
|
|
|
20
|
-
- **
|
|
21
|
+
- **200+ composants** - UI complète basée sur Radix UI
|
|
22
|
+
- **Tailwind v3 & v4** - Compatible avec les deux versions, zero-config
|
|
21
23
|
- **DataTable avancé** - TanStack Table v8 avec tri, filtres, pagination, édition inline, export
|
|
22
24
|
- **Système de thèmes** - Format shadcn/ui registry-item, chargement dynamique JSON
|
|
23
25
|
- **Internationalisation** - i18next intégré avec chargement JSON à la volée
|
|
24
26
|
- **TypeScript strict** - API 100% typée
|
|
25
|
-
- **SSR/Next.js 15+** - Compatible App Router et React
|
|
27
|
+
- **SSR/Next.js 15+** - Compatible App Router et React 18+
|
|
26
28
|
- **Accessible** - WCAG compliant via Radix UI
|
|
27
29
|
|
|
28
30
|
---
|
|
@@ -37,58 +39,11 @@ pnpm add @wakastellar/ui
|
|
|
37
39
|
npm install @wakastellar/ui
|
|
38
40
|
```
|
|
39
41
|
|
|
40
|
-
### 2. Configuration Tailwind
|
|
42
|
+
### 2. Configuration (selon votre version de Tailwind)
|
|
41
43
|
|
|
42
|
-
|
|
43
|
-
// tailwind.config.js
|
|
44
|
-
module.exports = {
|
|
45
|
-
content: [
|
|
46
|
-
"./app/**/*.{js,ts,jsx,tsx}",
|
|
47
|
-
"./node_modules/@wakastellar/ui/**/*.{js,ts,jsx,tsx}",
|
|
48
|
-
],
|
|
49
|
-
// ... votre configuration
|
|
50
|
-
}
|
|
51
|
-
```
|
|
52
|
-
|
|
53
|
-
### 3. Import du CSS et Provider
|
|
54
|
-
|
|
55
|
-
```tsx
|
|
56
|
-
// app/layout.tsx
|
|
57
|
-
import "@wakastellar/ui/dist/ui.css"
|
|
58
|
-
import { WakaProvider } from "@wakastellar/ui"
|
|
59
|
-
|
|
60
|
-
export default function RootLayout({ children }: { children: React.ReactNode }) {
|
|
61
|
-
return (
|
|
62
|
-
<html lang="fr">
|
|
63
|
-
<body>
|
|
64
|
-
<WakaProvider
|
|
65
|
-
config={{
|
|
66
|
-
theme: {
|
|
67
|
-
defaultTheme: "light",
|
|
68
|
-
themes: [
|
|
69
|
-
{ id: "light", label: "Clair", previewColor: "#3b82f6" },
|
|
70
|
-
{ id: "dark", label: "Sombre", previewColor: "#1e293b" },
|
|
71
|
-
],
|
|
72
|
-
},
|
|
73
|
-
language: {
|
|
74
|
-
defaultLanguage: "fr",
|
|
75
|
-
supportedLanguages: ["fr", "en"],
|
|
76
|
-
languages: [
|
|
77
|
-
{ code: "fr", label: "Français", flagEmoji: "🇫🇷" },
|
|
78
|
-
{ code: "en", label: "English", flagEmoji: "🇬🇧" },
|
|
79
|
-
],
|
|
80
|
-
},
|
|
81
|
-
}}
|
|
82
|
-
>
|
|
83
|
-
{children}
|
|
84
|
-
</WakaProvider>
|
|
85
|
-
</body>
|
|
86
|
-
</html>
|
|
87
|
-
)
|
|
88
|
-
}
|
|
89
|
-
```
|
|
44
|
+
Voir la section [Compatibilité Tailwind v3 / v4](#compatibilité-tailwind-v3--v4) ci-dessous.
|
|
90
45
|
|
|
91
|
-
###
|
|
46
|
+
### 3. Utilisation
|
|
92
47
|
|
|
93
48
|
```tsx
|
|
94
49
|
import { Button, Card, CardHeader, CardTitle, CardContent } from "@wakastellar/ui"
|
|
@@ -109,9 +64,88 @@ export default function Page() {
|
|
|
109
64
|
|
|
110
65
|
---
|
|
111
66
|
|
|
67
|
+
## Compatibilité Tailwind v3 / v4
|
|
68
|
+
|
|
69
|
+
La librairie supporte **Tailwind CSS v3 et v4** avec une configuration minimale.
|
|
70
|
+
|
|
71
|
+
### Tailwind v4 (zero-config)
|
|
72
|
+
|
|
73
|
+
Pour les projets utilisant **Tailwind CSS v4**, aucune configuration supplémentaire n'est nécessaire :
|
|
74
|
+
|
|
75
|
+
```tsx
|
|
76
|
+
// app/globals.css (ou app/layout.tsx)
|
|
77
|
+
import "@wakastellar/ui/styles"
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
C'est tout ! Les composants fonctionnent immédiatement.
|
|
81
|
+
|
|
82
|
+
### Tailwind v3
|
|
83
|
+
|
|
84
|
+
Pour les projets utilisant **Tailwind CSS v3**, deux étapes simples :
|
|
85
|
+
|
|
86
|
+
**1. Import du CSS v3 :**
|
|
87
|
+
|
|
88
|
+
```tsx
|
|
89
|
+
// app/globals.css (ou app/layout.tsx)
|
|
90
|
+
import "@wakastellar/ui/styles/v3"
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
**2. Configuration Tailwind :**
|
|
94
|
+
|
|
95
|
+
```javascript
|
|
96
|
+
// tailwind.config.js
|
|
97
|
+
module.exports = {
|
|
98
|
+
presets: [require("@wakastellar/ui/tailwind-preset")],
|
|
99
|
+
content: [
|
|
100
|
+
"./app/**/*.{js,ts,jsx,tsx}",
|
|
101
|
+
"./node_modules/@wakastellar/ui/**/*.{js,ts,jsx,tsx}",
|
|
102
|
+
],
|
|
103
|
+
// ... votre configuration
|
|
104
|
+
}
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
### Résumé
|
|
108
|
+
|
|
109
|
+
| Version | CSS Import | Config Tailwind |
|
|
110
|
+
|---------|------------|-----------------|
|
|
111
|
+
| **v4** | `@wakastellar/ui/styles` | Aucune |
|
|
112
|
+
| **v3** | `@wakastellar/ui/styles/v3` | 1 ligne (preset) |
|
|
113
|
+
|
|
114
|
+
### Exports disponibles
|
|
115
|
+
|
|
116
|
+
```typescript
|
|
117
|
+
// Styles v4 (défaut)
|
|
118
|
+
import "@wakastellar/ui/styles"
|
|
119
|
+
import "@wakastellar/ui/styles/v4" // alias
|
|
120
|
+
|
|
121
|
+
// Styles v3
|
|
122
|
+
import "@wakastellar/ui/styles/v3"
|
|
123
|
+
|
|
124
|
+
// Variables CSS de base uniquement
|
|
125
|
+
import "@wakastellar/ui/styles/base"
|
|
126
|
+
|
|
127
|
+
// Preset Tailwind pour v3
|
|
128
|
+
const preset = require("@wakastellar/ui/tailwind-preset")
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
---
|
|
132
|
+
|
|
112
133
|
## Composants
|
|
113
134
|
|
|
114
|
-
###
|
|
135
|
+
### Catégories principales
|
|
136
|
+
|
|
137
|
+
| Catégorie | Nombre | Exemples |
|
|
138
|
+
|-----------|--------|----------|
|
|
139
|
+
| **Base** | 45+ | Button, Card, Input, Dialog, Tabs... |
|
|
140
|
+
| **Gamification** | 35+ | Achievements, Leaderboards, XP bars, Quests... |
|
|
141
|
+
| **Infrastructure** | 25+ | Pipelines, Server racks, Network topology... |
|
|
142
|
+
| **Sécurité** | 15+ | 2FA, Biometrics, Permission matrix... |
|
|
143
|
+
| **Communication** | 10+ | Chat bubbles, Video calls, Reactions... |
|
|
144
|
+
| **Analytics** | 12+ | KPI dashboards, Funnels, Cohorts... |
|
|
145
|
+
| **E-commerce** | 15+ | Product cards, Cart, Checkout, Pricing... |
|
|
146
|
+
| **Onboarding** | 10+ | Tour guide, Hotspot, Checklist... |
|
|
147
|
+
|
|
148
|
+
### Composants de Base
|
|
115
149
|
|
|
116
150
|
| Composant | Description |
|
|
117
151
|
|-----------|-------------|
|
|
@@ -123,62 +157,70 @@ export default function Page() {
|
|
|
123
157
|
| `Switch` | Interrupteurs toggle |
|
|
124
158
|
| `Select` | Listes déroulantes |
|
|
125
159
|
| `Slider` | Curseurs de sélection |
|
|
160
|
+
| `Dialog` | Modales |
|
|
161
|
+
| `Sheet` | Panneaux latéraux |
|
|
162
|
+
| `Tabs` | Onglets |
|
|
163
|
+
| `Card` | Conteneur avec header/content/footer |
|
|
164
|
+
|
|
165
|
+
### Composants Avancés
|
|
166
|
+
|
|
167
|
+
| Composant | Description |
|
|
168
|
+
|-----------|-------------|
|
|
126
169
|
| `WakaDateTimePicker` | Sélecteur date/heure complet |
|
|
127
170
|
| `WakaAutocomplete` | Autocomplete avec recherche |
|
|
128
171
|
| `WakaColorPicker` | Sélecteur de couleurs |
|
|
129
172
|
| `WakaFileUpload` | Upload de fichiers avec preview |
|
|
130
173
|
| `WakaRichTextEditor` | Éditeur WYSIWYG (TipTap) |
|
|
174
|
+
| `DataTableAdvanced` | Table avancée avec tri, filtres, pagination, export |
|
|
175
|
+
| `WakaKanban` | Tableau Kanban drag & drop |
|
|
176
|
+
| `WakaCarousel` | Carousel d'images |
|
|
131
177
|
|
|
132
|
-
###
|
|
178
|
+
### Composants Gamification
|
|
133
179
|
|
|
134
180
|
| Composant | Description |
|
|
135
181
|
|-----------|-------------|
|
|
136
|
-
| `
|
|
137
|
-
| `
|
|
138
|
-
| `
|
|
139
|
-
| `
|
|
140
|
-
| `
|
|
182
|
+
| `WakaAchievementUnlock` | Animation de déblocage d'achievement |
|
|
183
|
+
| `WakaLeaderboard` | Classement des joueurs |
|
|
184
|
+
| `WakaXPBar` | Barre d'expérience |
|
|
185
|
+
| `WakaQuestCard` | Carte de quête avec objectifs |
|
|
186
|
+
| `WakaStreakCounter` | Compteur de série |
|
|
187
|
+
| `WakaBadgeShowcase` | Vitrine de badges |
|
|
188
|
+
| `WakaLevelProgress` | Progression de niveau |
|
|
189
|
+
| `WakaSpinWheel` | Roue de la fortune |
|
|
141
190
|
|
|
142
|
-
###
|
|
191
|
+
### Composants Infrastructure
|
|
143
192
|
|
|
144
193
|
| Composant | Description |
|
|
145
194
|
|-----------|-------------|
|
|
146
|
-
| `
|
|
147
|
-
| `
|
|
148
|
-
| `
|
|
149
|
-
| `
|
|
150
|
-
| `
|
|
151
|
-
| `
|
|
195
|
+
| `WakaPipelineView` | Vue de pipeline CI/CD |
|
|
196
|
+
| `WakaServerRack` | Visualisation de rack serveur |
|
|
197
|
+
| `WakaNetworkTopology` | Topologie réseau interactive |
|
|
198
|
+
| `WakaHealthPulse` | Indicateur de santé système |
|
|
199
|
+
| `WakaTerminalOutput` | Sortie terminal stylisée |
|
|
200
|
+
| `WakaAlertStack` | Pile d'alertes avec sévérités |
|
|
201
|
+
| `WakaDeploymentLane` | Ligne de déploiement |
|
|
152
202
|
|
|
153
|
-
###
|
|
203
|
+
### Composants Sécurité
|
|
154
204
|
|
|
155
205
|
| Composant | Description |
|
|
156
206
|
|-----------|-------------|
|
|
157
|
-
| `
|
|
158
|
-
| `
|
|
159
|
-
| `
|
|
160
|
-
| `
|
|
161
|
-
| `
|
|
162
|
-
| `
|
|
163
|
-
| `Alert` | Alertes inline |
|
|
207
|
+
| `WakaTwoFactorSetup` | Configuration 2FA |
|
|
208
|
+
| `WakaBiometricPrompt` | Invite biométrique |
|
|
209
|
+
| `WakaPermissionMatrix` | Matrice de permissions |
|
|
210
|
+
| `WakaAuditLog` | Journal d'audit |
|
|
211
|
+
| `WakaSecurityScore` | Score de sécurité |
|
|
212
|
+
| `WakaSessionManager` | Gestionnaire de sessions |
|
|
164
213
|
|
|
165
|
-
###
|
|
214
|
+
### Composants Analytics
|
|
166
215
|
|
|
167
216
|
| Composant | Description |
|
|
168
217
|
|-----------|-------------|
|
|
169
|
-
| `
|
|
170
|
-
| `
|
|
171
|
-
| `
|
|
172
|
-
| `
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
| Block | Description |
|
|
177
|
-
|-------|-------------|
|
|
178
|
-
| `Layout` | Layout admin avec sidebar |
|
|
179
|
-
| `Login` | Page de connexion complète |
|
|
180
|
-
| `Footer` | Pied de page |
|
|
181
|
-
| `Headtab` | Header avec onglets |
|
|
218
|
+
| `WakaFunnelChart` | Graphique en entonnoir |
|
|
219
|
+
| `WakaCohortTable` | Tableau de cohortes |
|
|
220
|
+
| `WakaKPIDashboard` | Dashboard KPI |
|
|
221
|
+
| `WakaHeatmap` | Carte de chaleur |
|
|
222
|
+
| `WakaSankeyDiagram` | Diagramme Sankey |
|
|
223
|
+
| `WakaTreemapChart` | Graphique Treemap |
|
|
182
224
|
|
|
183
225
|
---
|
|
184
226
|
|
|
@@ -191,7 +233,6 @@ Le ThemeProvider supporte le format standard shadcn/ui pour les thèmes :
|
|
|
191
233
|
```tsx
|
|
192
234
|
import { ThemeProvider, useTheme } from "@wakastellar/ui"
|
|
193
235
|
|
|
194
|
-
// Configuration avec thèmes inline
|
|
195
236
|
<ThemeProvider
|
|
196
237
|
themes={[
|
|
197
238
|
{
|
|
@@ -233,10 +274,8 @@ function ThemeLoader() {
|
|
|
233
274
|
const { loadThemeFromJSON } = useTheme()
|
|
234
275
|
|
|
235
276
|
const loadCustomTheme = async () => {
|
|
236
|
-
// Charger un thème depuis une API ou un fichier
|
|
237
277
|
const response = await fetch("/api/themes/custom.json")
|
|
238
278
|
const themeData = await response.json()
|
|
239
|
-
|
|
240
279
|
await loadThemeFromJSON("custom", themeData)
|
|
241
280
|
}
|
|
242
281
|
|
|
@@ -249,14 +288,9 @@ function ThemeLoader() {
|
|
|
249
288
|
```tsx
|
|
250
289
|
import { ThemeSelector } from "@wakastellar/ui"
|
|
251
290
|
|
|
252
|
-
|
|
253
|
-
<ThemeSelector variant="
|
|
254
|
-
|
|
255
|
-
// Variante select (dropdown)
|
|
256
|
-
<ThemeSelector variant="select" />
|
|
257
|
-
|
|
258
|
-
// Variante complète (grille)
|
|
259
|
-
<ThemeSelector variant="full" />
|
|
291
|
+
<ThemeSelector variant="compact" /> // Icône
|
|
292
|
+
<ThemeSelector variant="select" /> // Dropdown
|
|
293
|
+
<ThemeSelector variant="full" /> // Grille
|
|
260
294
|
```
|
|
261
295
|
|
|
262
296
|
---
|
|
@@ -277,82 +311,48 @@ import { ThemeSelector } from "@wakastellar/ui"
|
|
|
277
311
|
label: "Français",
|
|
278
312
|
flagEmoji: "🇫🇷",
|
|
279
313
|
translations: {
|
|
280
|
-
common: {
|
|
281
|
-
save: "Enregistrer",
|
|
282
|
-
cancel: "Annuler",
|
|
283
|
-
confirm: "Confirmer",
|
|
284
|
-
},
|
|
285
|
-
errors: {
|
|
286
|
-
required: "Ce champ est requis",
|
|
287
|
-
},
|
|
314
|
+
common: { save: "Enregistrer", cancel: "Annuler" },
|
|
288
315
|
},
|
|
289
316
|
},
|
|
290
317
|
{
|
|
291
318
|
code: "en",
|
|
292
319
|
label: "English",
|
|
293
320
|
flagEmoji: "🇬🇧",
|
|
294
|
-
// Chargement depuis URL
|
|
295
321
|
jsonUrl: "https://cdn.example.com/i18n/en.json",
|
|
296
322
|
},
|
|
297
323
|
],
|
|
298
324
|
},
|
|
299
|
-
// ... theme config
|
|
300
325
|
}}
|
|
301
326
|
>
|
|
302
327
|
{children}
|
|
303
328
|
</WakaProvider>
|
|
304
329
|
```
|
|
305
330
|
|
|
306
|
-
###
|
|
331
|
+
### Utilisation
|
|
307
332
|
|
|
308
333
|
```tsx
|
|
309
|
-
import {
|
|
334
|
+
import { useTranslation, useLanguage } from "@wakastellar/ui"
|
|
310
335
|
|
|
311
336
|
function MyComponent() {
|
|
312
337
|
const { t } = useTranslation()
|
|
313
|
-
const {
|
|
314
|
-
|
|
315
|
-
// Charger des traductions à la volée
|
|
316
|
-
const loadCustomTranslations = async () => {
|
|
317
|
-
await loadLanguageFromJSON("es", {
|
|
318
|
-
common: { save: "Guardar", cancel: "Cancelar" },
|
|
319
|
-
})
|
|
320
|
-
}
|
|
338
|
+
const { changeLanguage, currentLanguage } = useLanguage()
|
|
321
339
|
|
|
322
340
|
return (
|
|
323
341
|
<div>
|
|
324
342
|
<p>{t("common.save")}</p>
|
|
325
343
|
<Button onClick={() => changeLanguage("en")}>English</Button>
|
|
326
|
-
<Button onClick={loadCustomTranslations}>Load Spanish</Button>
|
|
327
344
|
</div>
|
|
328
345
|
)
|
|
329
346
|
}
|
|
330
347
|
```
|
|
331
348
|
|
|
332
|
-
### LanguageSelector
|
|
333
|
-
|
|
334
|
-
```tsx
|
|
335
|
-
import { LanguageSelector } from "@wakastellar/ui"
|
|
336
|
-
|
|
337
|
-
<LanguageSelector variant="default" />
|
|
338
|
-
<LanguageSelector variant="compact" />
|
|
339
|
-
```
|
|
340
|
-
|
|
341
349
|
---
|
|
342
350
|
|
|
343
351
|
## DataTable Avancé
|
|
344
352
|
|
|
345
353
|
```tsx
|
|
346
354
|
import { DataTableAdvanced } from "@wakastellar/ui"
|
|
347
|
-
import { ColumnDef } from "@tanstack/react-table"
|
|
348
|
-
|
|
349
|
-
interface User {
|
|
350
|
-
id: string
|
|
351
|
-
name: string
|
|
352
|
-
email: string
|
|
353
|
-
role: "admin" | "user"
|
|
354
|
-
createdAt: Date
|
|
355
|
-
}
|
|
355
|
+
import type { ColumnDef } from "@tanstack/react-table"
|
|
356
356
|
|
|
357
357
|
const columns: ColumnDef<User>[] = [
|
|
358
358
|
{ accessorKey: "name", header: "Nom" },
|
|
@@ -363,41 +363,17 @@ const columns: ColumnDef<User>[] = [
|
|
|
363
363
|
<DataTableAdvanced
|
|
364
364
|
data={users}
|
|
365
365
|
columns={columns}
|
|
366
|
-
|
|
367
|
-
pagination={{
|
|
368
|
-
mode: "client", // ou "server"
|
|
369
|
-
pageSize: 10,
|
|
370
|
-
pageSizeOptions: [5, 10, 20, 50],
|
|
371
|
-
}}
|
|
372
|
-
// Filtres
|
|
366
|
+
pagination={{ mode: "client", pageSize: 10 }}
|
|
373
367
|
filters={[
|
|
374
368
|
{ id: "name", label: "Nom", type: "text", column: "name" },
|
|
375
|
-
{
|
|
376
|
-
id: "role",
|
|
377
|
-
label: "Rôle",
|
|
378
|
-
type: "select",
|
|
379
|
-
column: "role",
|
|
380
|
-
options: [
|
|
381
|
-
{ label: "Admin", value: "admin" },
|
|
382
|
-
{ label: "User", value: "user" },
|
|
383
|
-
],
|
|
384
|
-
},
|
|
369
|
+
{ id: "role", label: "Rôle", type: "select", column: "role", options: [...] },
|
|
385
370
|
]}
|
|
386
|
-
// Sélection
|
|
387
371
|
selection={{ mode: "multiple" }}
|
|
388
|
-
|
|
389
|
-
export={{
|
|
390
|
-
enabled: true,
|
|
391
|
-
formats: ["csv", "json", "excel"],
|
|
392
|
-
}}
|
|
393
|
-
// Édition inline
|
|
372
|
+
export={{ enabled: true, formats: ["csv", "json", "excel"] }}
|
|
394
373
|
edit={{
|
|
395
|
-
editableColumns: [
|
|
396
|
-
{ field: "name", config: { type: "text", required: true } },
|
|
397
|
-
],
|
|
374
|
+
editableColumns: [{ field: "name", config: { type: "text" } }],
|
|
398
375
|
onSave: async (rowId, data) => await updateUser(rowId, data),
|
|
399
376
|
}}
|
|
400
|
-
// Virtualisation (grandes quantités)
|
|
401
377
|
virtualization={{ enabled: true }}
|
|
402
378
|
/>
|
|
403
379
|
```
|
|
@@ -408,20 +384,17 @@ const columns: ColumnDef<User>[] = [
|
|
|
408
384
|
|
|
409
385
|
```tsx
|
|
410
386
|
// Thème
|
|
411
|
-
const { currentTheme, changeTheme, themes, isDarkMode, toggleDarkMode
|
|
387
|
+
const { currentTheme, changeTheme, themes, isDarkMode, toggleDarkMode } = useTheme()
|
|
412
388
|
|
|
413
389
|
// Langue
|
|
414
390
|
const { currentLanguage, changeLanguage, languages, loadLanguageFromJSON } = useLanguage()
|
|
415
391
|
|
|
416
|
-
// Traductions
|
|
392
|
+
// Traductions
|
|
417
393
|
const { t, i18n } = useTranslation()
|
|
418
394
|
|
|
419
|
-
// Provider combiné
|
|
420
|
-
const { currentTheme, currentLanguage, changeTheme, changeLanguage, t } = useWaka()
|
|
421
|
-
|
|
422
395
|
// Toast
|
|
423
396
|
const { toast } = useToast()
|
|
424
|
-
toast({ title: "Succès", description: "Action réussie"
|
|
397
|
+
toast({ title: "Succès", description: "Action réussie" })
|
|
425
398
|
```
|
|
426
399
|
|
|
427
400
|
---
|
|
@@ -430,9 +403,10 @@ toast({ title: "Succès", description: "Action réussie", variant: "default" })
|
|
|
430
403
|
|
|
431
404
|
```json
|
|
432
405
|
{
|
|
433
|
-
"react": ">=
|
|
434
|
-
"react-dom": ">=
|
|
435
|
-
"next": ">=
|
|
406
|
+
"react": ">=18.0.0",
|
|
407
|
+
"react-dom": ">=18.0.0",
|
|
408
|
+
"next": ">=14.0.0",
|
|
409
|
+
"tailwindcss": ">=3.4.0 || >=4.0.0",
|
|
436
410
|
"react-hook-form": "^7.0.0", // optionnel
|
|
437
411
|
"recharts": ">=2.0.0", // optionnel (charts)
|
|
438
412
|
"xlsx": ">=0.18.0", // optionnel (export Excel)
|
|
@@ -448,12 +422,15 @@ toast({ title: "Succès", description: "Action réussie", variant: "default" })
|
|
|
448
422
|
```
|
|
449
423
|
@wakastellar/ui
|
|
450
424
|
├── dist/
|
|
451
|
-
│ ├── index.es.js
|
|
452
|
-
│ ├── index.cjs.js
|
|
453
|
-
│ ├── index.d.ts
|
|
454
|
-
│ └── ui.css
|
|
425
|
+
│ ├── index.es.js # ESM bundle
|
|
426
|
+
│ ├── index.cjs.js # CommonJS bundle
|
|
427
|
+
│ ├── index.d.ts # TypeScript definitions
|
|
428
|
+
│ └── ui.css # Styles compilés
|
|
455
429
|
└── src/styles/
|
|
456
|
-
|
|
430
|
+
├── globals.css # Entry point Tailwind v4
|
|
431
|
+
├── globals-v3.css # Entry point Tailwind v3
|
|
432
|
+
├── base.css # Variables CSS universelles
|
|
433
|
+
└── tailwind.preset.js # Preset pour Tailwind v3
|
|
457
434
|
```
|
|
458
435
|
|
|
459
436
|
### Entry Points
|
|
@@ -462,8 +439,9 @@ toast({ title: "Succès", description: "Action réussie", variant: "default" })
|
|
|
462
439
|
// Import principal
|
|
463
440
|
import { Button, Card, DataTableAdvanced } from "@wakastellar/ui"
|
|
464
441
|
|
|
465
|
-
// Styles
|
|
466
|
-
import "@wakastellar/ui/
|
|
442
|
+
// Styles (choisir selon votre version de Tailwind)
|
|
443
|
+
import "@wakastellar/ui/styles" // v4
|
|
444
|
+
import "@wakastellar/ui/styles/v3" // v3
|
|
467
445
|
|
|
468
446
|
// Types
|
|
469
447
|
import type { ColumnDef } from "@tanstack/react-table"
|
|
@@ -472,14 +450,6 @@ import type { ThemeConfig, LanguageConfig } from "@wakastellar/ui"
|
|
|
472
450
|
|
|
473
451
|
---
|
|
474
452
|
|
|
475
|
-
## Documentation
|
|
476
|
-
|
|
477
|
-
Pour une documentation complète avec tous les exemples de code, consultez :
|
|
478
|
-
|
|
479
|
-
- [**DOCUMENTATION.md**](./DOCUMENTATION.md) - Documentation détaillée
|
|
480
|
-
|
|
481
|
-
---
|
|
482
|
-
|
|
483
453
|
## Licence
|
|
484
454
|
|
|
485
455
|
Ce projet est publié sous licence **AGPL-3.0**. Voir [LICENSE](./LICENSE).
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("./types-D2yCJ91P.js");exports.CHART_SIZE_MAP=a.CHART_SIZE_MAP;exports.DEFAULT_CHART_COLORS=a.DEFAULT_CHART_COLORS;exports.WakaAreaChart=a.WakaAreaChart;exports.WakaBarChart=a.WakaBarChart;exports.WakaChart=a.WakaChart;exports.WakaLineChart=a.WakaLineChart;exports.WakaMiniChart=a.WakaMiniChart;exports.WakaPieChart=a.WakaPieChart;exports.WakaSparkline=a.WakaSparkline;exports.createChartColumn=a.createChartColumn;exports.sparklineTemplate=a.sparklineTemplate;exports.useChartTheme=a.useChartTheme;exports.useRechartsLoader=a.useRechartsLoader;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { C as e, D as r, c as C, a as t, W as h, b as k, f as W, d as i, e as n, h as A, s as T, g as l, u as m } from "./types-BOWIoR7j.mjs";
|
|
2
|
+
export {
|
|
3
|
+
e as CHART_SIZE_MAP,
|
|
4
|
+
r as DEFAULT_CHART_COLORS,
|
|
5
|
+
C as WakaAreaChart,
|
|
6
|
+
t as WakaBarChart,
|
|
7
|
+
h as WakaChart,
|
|
8
|
+
k as WakaLineChart,
|
|
9
|
+
W as WakaMiniChart,
|
|
10
|
+
i as WakaPieChart,
|
|
11
|
+
n as WakaSparkline,
|
|
12
|
+
A as createChartColumn,
|
|
13
|
+
T as sparklineTemplate,
|
|
14
|
+
l as useChartTheme,
|
|
15
|
+
m as useRechartsLoader
|
|
16
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function searchCommand(query: string): Promise<void>;
|