@lastbrain/app 0.1.40 → 0.1.43
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/dist/hooks/useNotifications.d.ts +1 -0
- package/dist/hooks/useNotifications.d.ts.map +1 -1
- package/dist/layouts/AdminLayout.d.ts.map +1 -1
- package/dist/layouts/AdminLayout.js +0 -1
- package/dist/layouts/AuthLayout.d.ts.map +1 -1
- package/dist/layouts/AuthLayout.js +0 -1
- package/dist/layouts/PublicLayout.d.ts +5 -2
- package/dist/layouts/PublicLayout.d.ts.map +1 -1
- package/dist/layouts/PublicLayout.js +4 -3
- package/dist/scripts/init-app.js +131 -50
- package/dist/scripts/module-add.d.ts.map +1 -1
- package/dist/scripts/module-add.js +22 -52
- package/dist/scripts/module-build.d.ts.map +1 -1
- package/dist/scripts/module-build.js +381 -9
- package/dist/styles.css +1 -1
- package/dist/templates/DefaultDoc.d.ts.map +1 -1
- package/dist/templates/DefaultDoc.js +2 -2
- package/dist/templates/DocPage.js +1 -1
- package/package.json +1 -1
- package/src/hooks/useNotifications.ts +1 -0
- package/src/layouts/AdminLayout.tsx +0 -2
- package/src/layouts/AuthLayout.tsx +0 -2
- package/src/layouts/PublicLayout.tsx +14 -2
- package/src/scripts/init-app.ts +144 -49
- package/src/scripts/module-add.ts +36 -82
- package/src/scripts/module-build.ts +447 -13
- package/src/templates/DefaultDoc.tsx +362 -12
- package/src/templates/DocPage.tsx +3 -3
|
@@ -24,7 +24,7 @@ export function DefaultDocumentation() {
|
|
|
24
24
|
<CardHeader>
|
|
25
25
|
<h2 className="text-2xl font-semibold flex items-center gap-2">
|
|
26
26
|
<FileText size={24} />
|
|
27
|
-
|
|
27
|
+
LastBrain
|
|
28
28
|
</h2>
|
|
29
29
|
</CardHeader>
|
|
30
30
|
<CardBody className="space-y-4">
|
|
@@ -33,11 +33,62 @@ export function DefaultDocumentation() {
|
|
|
33
33
|
avec système de modules, authentification et base de données.
|
|
34
34
|
</p>
|
|
35
35
|
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
36
|
-
|
|
37
|
-
|
|
36
|
+
!
|
|
37
|
+
<a
|
|
38
|
+
href="https://img.shields.io/github/package-json/dependency-version/lastpublication/starter/next?label=Next.js&path=packages/app/package.json"
|
|
39
|
+
className="text-blue-600 hover:underline"
|
|
40
|
+
target="_blank"
|
|
41
|
+
rel="noopener noreferrer"
|
|
42
|
+
>
|
|
43
|
+
Next.js
|
|
44
|
+
</a>
|
|
38
45
|
</p>
|
|
39
46
|
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
40
|
-
<strong>
|
|
47
|
+
<strong>Require\</strong>*
|
|
48
|
+
</p>
|
|
49
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
50
|
+
!
|
|
51
|
+
<a
|
|
52
|
+
href="https://img.shields.io/npm/v/@lastbrain/app?label=%40lastbrain%2Fapp"
|
|
53
|
+
className="text-blue-600 hover:underline"
|
|
54
|
+
target="_blank"
|
|
55
|
+
rel="noopener noreferrer"
|
|
56
|
+
>
|
|
57
|
+
npm version
|
|
58
|
+
</a>
|
|
59
|
+
</p>
|
|
60
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
61
|
+
!
|
|
62
|
+
<a
|
|
63
|
+
href="https://img.shields.io/npm/v/@lastbrain/core?label=%40lastbrain%2Fcore"
|
|
64
|
+
className="text-blue-600 hover:underline"
|
|
65
|
+
target="_blank"
|
|
66
|
+
rel="noopener noreferrer"
|
|
67
|
+
>
|
|
68
|
+
npm version
|
|
69
|
+
</a>
|
|
70
|
+
</p>
|
|
71
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
72
|
+
!
|
|
73
|
+
<a
|
|
74
|
+
href="https://img.shields.io/npm/v/@lastbrain/ui?label=%40lastbrain%2Fui"
|
|
75
|
+
className="text-blue-600 hover:underline"
|
|
76
|
+
target="_blank"
|
|
77
|
+
rel="noopener noreferrer"
|
|
78
|
+
>
|
|
79
|
+
npm version
|
|
80
|
+
</a>
|
|
81
|
+
</p>
|
|
82
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
83
|
+
!
|
|
84
|
+
<a
|
|
85
|
+
href="https://img.shields.io/npm/v/@lastbrain/module-auth?label=%40lastbrain%2Fmodule-auth"
|
|
86
|
+
className="text-blue-600 hover:underline"
|
|
87
|
+
target="_blank"
|
|
88
|
+
rel="noopener noreferrer"
|
|
89
|
+
>
|
|
90
|
+
npm version
|
|
91
|
+
</a>
|
|
41
92
|
</p>
|
|
42
93
|
</CardBody>
|
|
43
94
|
</Card>
|
|
@@ -72,25 +123,37 @@ export function DefaultDocumentation() {
|
|
|
72
123
|
. Tous ces packages sont nécessaires pour le bon fonctionnement.
|
|
73
124
|
</p>
|
|
74
125
|
<Snippet symbol="" hideSymbol className="text-sm mb-2">
|
|
75
|
-
{`# 1.
|
|
126
|
+
{`# 1. Lancer Docker Desktop`}
|
|
127
|
+
</Snippet>
|
|
128
|
+
<Snippet symbol="" hideSymbol className="text-sm mb-2">
|
|
129
|
+
{`Attendre que Docker soit “Running”.`}
|
|
130
|
+
</Snippet>
|
|
131
|
+
<Snippet symbol="" hideSymbol className="text-sm mb-2">
|
|
132
|
+
{`# 2. Installer Supabase CLI (si pas déjà installé)`}
|
|
133
|
+
</Snippet>
|
|
134
|
+
<Snippet symbol="" hideSymbol className="text-sm mb-2">
|
|
135
|
+
{`brew install supabase/tap/supabase`}
|
|
136
|
+
</Snippet>
|
|
137
|
+
<Snippet symbol="" hideSymbol className="text-sm mb-2">
|
|
138
|
+
{`# 3. Créer une nouvelle application (utilise @latest pour la version la plus récente)`}
|
|
76
139
|
</Snippet>
|
|
77
140
|
<Snippet symbol="" hideSymbol className="text-sm mb-2">
|
|
78
141
|
{`pnpx @lastbrain/app@latest init mon-app`}
|
|
79
142
|
</Snippet>
|
|
80
143
|
<Snippet symbol="" hideSymbol className="text-sm mb-2">
|
|
81
|
-
{`#
|
|
144
|
+
{`# 4. Accéder au dossier`}
|
|
82
145
|
</Snippet>
|
|
83
146
|
<Snippet symbol="" hideSymbol className="text-sm mb-2">
|
|
84
147
|
{`cd mon-app`}
|
|
85
148
|
</Snippet>
|
|
86
149
|
<Snippet symbol="" hideSymbol className="text-sm mb-2">
|
|
87
|
-
{`#
|
|
150
|
+
{`# 5. Initialiser Supabase`}
|
|
88
151
|
</Snippet>
|
|
89
152
|
<Snippet symbol="" hideSymbol className="text-sm mb-2">
|
|
90
153
|
{`pnpm db:init`}
|
|
91
154
|
</Snippet>
|
|
92
155
|
<Snippet symbol="" hideSymbol className="text-sm mb-2">
|
|
93
|
-
{`#
|
|
156
|
+
{`# 6. Démarrer l'application si pas déjà lancé port :3000 par default`}
|
|
94
157
|
</Snippet>
|
|
95
158
|
<Snippet symbol="" hideSymbol className="text-sm mb-2">
|
|
96
159
|
{`pnpm dev`}
|
|
@@ -1305,7 +1368,15 @@ export function DocUsageCustom() {
|
|
|
1305
1368
|
[module-ai](../packages/module-ai/README.md)
|
|
1306
1369
|
</h4>
|
|
1307
1370
|
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
1308
|
-
|
|
1371
|
+
!
|
|
1372
|
+
<a
|
|
1373
|
+
href="https://img.shields.io/npm/v/@lastbrain/module-ai?label=%40lastbrain%2Fmodule-ai"
|
|
1374
|
+
className="text-blue-600 hover:underline"
|
|
1375
|
+
target="_blank"
|
|
1376
|
+
rel="noopener noreferrer"
|
|
1377
|
+
>
|
|
1378
|
+
npm version
|
|
1379
|
+
</a>
|
|
1309
1380
|
</p>
|
|
1310
1381
|
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
1311
1382
|
<strong>Pages</strong>: 1 auth, 1 admin
|
|
@@ -1332,7 +1403,15 @@ export function DocUsageCustom() {
|
|
|
1332
1403
|
[module-auth](../packages/module-auth/README.md)
|
|
1333
1404
|
</h4>
|
|
1334
1405
|
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
1335
|
-
|
|
1406
|
+
!
|
|
1407
|
+
<a
|
|
1408
|
+
href="https://img.shields.io/npm/v/@lastbrain/module-auth?label=%40lastbrain%2Fmodule-auth"
|
|
1409
|
+
className="text-blue-600 hover:underline"
|
|
1410
|
+
target="_blank"
|
|
1411
|
+
rel="noopener noreferrer"
|
|
1412
|
+
>
|
|
1413
|
+
npm version
|
|
1414
|
+
</a>
|
|
1336
1415
|
</p>
|
|
1337
1416
|
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
1338
1417
|
<strong>Pages</strong>: 3 publique(s), 4 auth, 2 admin
|
|
@@ -1356,11 +1435,274 @@ export function DocUsageCustom() {
|
|
|
1356
1435
|
</a>
|
|
1357
1436
|
</p>
|
|
1358
1437
|
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">---</p>
|
|
1438
|
+
<h4 className="font-medium mb-2">
|
|
1439
|
+
[module-billing](../packages/module-billing/README.md)
|
|
1440
|
+
</h4>
|
|
1441
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
1442
|
+
!
|
|
1443
|
+
<a
|
|
1444
|
+
href="https://img.shields.io/npm/v/@lastbrain/module-billing?label=%40lastbrain%2Fmodule-billing"
|
|
1445
|
+
className="text-blue-600 hover:underline"
|
|
1446
|
+
target="_blank"
|
|
1447
|
+
rel="noopener noreferrer"
|
|
1448
|
+
>
|
|
1449
|
+
npm version
|
|
1450
|
+
</a>
|
|
1451
|
+
</p>
|
|
1452
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
1453
|
+
<strong>Pages</strong>: 3 auth, 2 admin
|
|
1454
|
+
</p>
|
|
1455
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
1456
|
+
<strong>Tables</strong>: billing_invoice, billing_invoice_line,
|
|
1457
|
+
billing_invoice_payment, billing_invoice_log,
|
|
1458
|
+
billing_invoice_counter, billing_settings
|
|
1459
|
+
</p>
|
|
1460
|
+
<h4 className="font-medium mb-2">Installation du module billing</h4>
|
|
1461
|
+
<Snippet symbol="" hideSymbol className="text-sm mb-2">
|
|
1462
|
+
{`pnpm lastbrain add-module billing`}
|
|
1463
|
+
</Snippet>
|
|
1464
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
1465
|
+
<a
|
|
1466
|
+
href="../packages/module-billing/README.md"
|
|
1467
|
+
className="text-blue-600 hover:underline"
|
|
1468
|
+
target="_blank"
|
|
1469
|
+
rel="noopener noreferrer"
|
|
1470
|
+
>
|
|
1471
|
+
📖 Documentation complète →
|
|
1472
|
+
</a>
|
|
1473
|
+
</p>
|
|
1474
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">---</p>
|
|
1475
|
+
<h4 className="font-medium mb-2">
|
|
1476
|
+
[module-core-cart](../packages/module-core-cart/README.md)
|
|
1477
|
+
</h4>
|
|
1478
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
1479
|
+
!
|
|
1480
|
+
<a
|
|
1481
|
+
href="https://img.shields.io/npm/v/@lastbrain/module-core-cart?label=%40lastbrain%2Fmodule-core-cart"
|
|
1482
|
+
className="text-blue-600 hover:underline"
|
|
1483
|
+
target="_blank"
|
|
1484
|
+
rel="noopener noreferrer"
|
|
1485
|
+
>
|
|
1486
|
+
npm version
|
|
1487
|
+
</a>
|
|
1488
|
+
</p>
|
|
1489
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
1490
|
+
<strong>Pages</strong>: 2 auth, 1 admin
|
|
1491
|
+
</p>
|
|
1492
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
1493
|
+
<strong>Tables</strong>: carts, cart_items
|
|
1494
|
+
</p>
|
|
1495
|
+
<h4 className="font-medium mb-2">Installation du module core-cart</h4>
|
|
1496
|
+
<Snippet symbol="" hideSymbol className="text-sm mb-2">
|
|
1497
|
+
{`pnpm lastbrain add-module core-cart`}
|
|
1498
|
+
</Snippet>
|
|
1499
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
1500
|
+
<a
|
|
1501
|
+
href="../packages/module-core-cart/README.md"
|
|
1502
|
+
className="text-blue-600 hover:underline"
|
|
1503
|
+
target="_blank"
|
|
1504
|
+
rel="noopener noreferrer"
|
|
1505
|
+
>
|
|
1506
|
+
📖 Documentation complète →
|
|
1507
|
+
</a>
|
|
1508
|
+
</p>
|
|
1509
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">---</p>
|
|
1510
|
+
<h4 className="font-medium mb-2">
|
|
1511
|
+
[module-core-commerce](../packages/module-core-commerce/README.md)
|
|
1512
|
+
</h4>
|
|
1513
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
1514
|
+
!
|
|
1515
|
+
<a
|
|
1516
|
+
href="https://img.shields.io/npm/v/@lastbrain/module-core-commerce?label=%40lastbrain%2Fmodule-core-commerce"
|
|
1517
|
+
className="text-blue-600 hover:underline"
|
|
1518
|
+
target="_blank"
|
|
1519
|
+
rel="noopener noreferrer"
|
|
1520
|
+
>
|
|
1521
|
+
npm version
|
|
1522
|
+
</a>
|
|
1523
|
+
</p>
|
|
1524
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
1525
|
+
<strong>Tables</strong>: commerce_events, commerce_stats_daily
|
|
1526
|
+
</p>
|
|
1527
|
+
<h4 className="font-medium mb-2">
|
|
1528
|
+
Installation du module core-commerce
|
|
1529
|
+
</h4>
|
|
1530
|
+
<Snippet symbol="" hideSymbol className="text-sm mb-2">
|
|
1531
|
+
{`pnpm lastbrain add-module core-commerce`}
|
|
1532
|
+
</Snippet>
|
|
1533
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
1534
|
+
<a
|
|
1535
|
+
href="../packages/module-core-commerce/README.md"
|
|
1536
|
+
className="text-blue-600 hover:underline"
|
|
1537
|
+
target="_blank"
|
|
1538
|
+
rel="noopener noreferrer"
|
|
1539
|
+
>
|
|
1540
|
+
📖 Documentation complète →
|
|
1541
|
+
</a>
|
|
1542
|
+
</p>
|
|
1543
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">---</p>
|
|
1544
|
+
<h4 className="font-medium mb-2">
|
|
1545
|
+
[module-core-order](../packages/module-core-order/README.md)
|
|
1546
|
+
</h4>
|
|
1547
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
1548
|
+
!
|
|
1549
|
+
<a
|
|
1550
|
+
href="https://img.shields.io/npm/v/@lastbrain/module-core-order?label=%40lastbrain%2Fmodule-core-order"
|
|
1551
|
+
className="text-blue-600 hover:underline"
|
|
1552
|
+
target="_blank"
|
|
1553
|
+
rel="noopener noreferrer"
|
|
1554
|
+
>
|
|
1555
|
+
npm version
|
|
1556
|
+
</a>
|
|
1557
|
+
</p>
|
|
1558
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
1559
|
+
<strong>Pages</strong>: 2 auth
|
|
1560
|
+
</p>
|
|
1561
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
1562
|
+
<strong>Tables</strong>: orders, order_items, order_status_logs
|
|
1563
|
+
</p>
|
|
1564
|
+
<h4 className="font-medium mb-2">
|
|
1565
|
+
Installation du module core-order
|
|
1566
|
+
</h4>
|
|
1567
|
+
<Snippet symbol="" hideSymbol className="text-sm mb-2">
|
|
1568
|
+
{`pnpm lastbrain add-module core-order`}
|
|
1569
|
+
</Snippet>
|
|
1570
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
1571
|
+
<a
|
|
1572
|
+
href="../packages/module-core-order/README.md"
|
|
1573
|
+
className="text-blue-600 hover:underline"
|
|
1574
|
+
target="_blank"
|
|
1575
|
+
rel="noopener noreferrer"
|
|
1576
|
+
>
|
|
1577
|
+
📖 Documentation complète →
|
|
1578
|
+
</a>
|
|
1579
|
+
</p>
|
|
1580
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">---</p>
|
|
1581
|
+
<h4 className="font-medium mb-2">
|
|
1582
|
+
[module-core-payment](../packages/module-core-payment/README.md)
|
|
1583
|
+
</h4>
|
|
1584
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
1585
|
+
!
|
|
1586
|
+
<a
|
|
1587
|
+
href="https://img.shields.io/npm/v/@lastbrain/module-core-payment?label=%40lastbrain%2Fmodule-core-payment"
|
|
1588
|
+
className="text-blue-600 hover:underline"
|
|
1589
|
+
target="_blank"
|
|
1590
|
+
rel="noopener noreferrer"
|
|
1591
|
+
>
|
|
1592
|
+
npm version
|
|
1593
|
+
</a>
|
|
1594
|
+
</p>
|
|
1595
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
1596
|
+
<strong>Pages</strong>: 1 admin
|
|
1597
|
+
</p>
|
|
1598
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
1599
|
+
<strong>Tables</strong>: payments
|
|
1600
|
+
</p>
|
|
1601
|
+
<h4 className="font-medium mb-2">
|
|
1602
|
+
Installation du module core-payment
|
|
1603
|
+
</h4>
|
|
1604
|
+
<Snippet symbol="" hideSymbol className="text-sm mb-2">
|
|
1605
|
+
{`pnpm lastbrain add-module core-payment`}
|
|
1606
|
+
</Snippet>
|
|
1607
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
1608
|
+
<a
|
|
1609
|
+
href="../packages/module-core-payment/README.md"
|
|
1610
|
+
className="text-blue-600 hover:underline"
|
|
1611
|
+
target="_blank"
|
|
1612
|
+
rel="noopener noreferrer"
|
|
1613
|
+
>
|
|
1614
|
+
📖 Documentation complète →
|
|
1615
|
+
</a>
|
|
1616
|
+
</p>
|
|
1617
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">---</p>
|
|
1618
|
+
<h4 className="font-medium mb-2">
|
|
1619
|
+
[module-core-product](../packages/module-core-product/README.md)
|
|
1620
|
+
</h4>
|
|
1621
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
1622
|
+
!
|
|
1623
|
+
<a
|
|
1624
|
+
href="https://img.shields.io/npm/v/@lastbrain/module-core-product?label=%40lastbrain%2Fmodule-core-product"
|
|
1625
|
+
className="text-blue-600 hover:underline"
|
|
1626
|
+
target="_blank"
|
|
1627
|
+
rel="noopener noreferrer"
|
|
1628
|
+
>
|
|
1629
|
+
npm version
|
|
1630
|
+
</a>
|
|
1631
|
+
</p>
|
|
1632
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
1633
|
+
<strong>Pages</strong>: 2 publique(s)
|
|
1634
|
+
</p>
|
|
1635
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
1636
|
+
<strong>Tables</strong>: products, product_variants, product_stock,
|
|
1637
|
+
product_images, product_seo, product_variant_families,
|
|
1638
|
+
product_variant_options, product_delivery, product_additional_info,
|
|
1639
|
+
product_stats
|
|
1640
|
+
</p>
|
|
1641
|
+
<h4 className="font-medium mb-2">
|
|
1642
|
+
Installation du module core-product
|
|
1643
|
+
</h4>
|
|
1644
|
+
<Snippet symbol="" hideSymbol className="text-sm mb-2">
|
|
1645
|
+
{`pnpm lastbrain add-module core-product`}
|
|
1646
|
+
</Snippet>
|
|
1647
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
1648
|
+
<a
|
|
1649
|
+
href="../packages/module-core-product/README.md"
|
|
1650
|
+
className="text-blue-600 hover:underline"
|
|
1651
|
+
target="_blank"
|
|
1652
|
+
rel="noopener noreferrer"
|
|
1653
|
+
>
|
|
1654
|
+
📖 Documentation complète →
|
|
1655
|
+
</a>
|
|
1656
|
+
</p>
|
|
1657
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">---</p>
|
|
1658
|
+
<h4 className="font-medium mb-2">
|
|
1659
|
+
[module-legal](../packages/module-legal/README.md)
|
|
1660
|
+
</h4>
|
|
1661
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
1662
|
+
!
|
|
1663
|
+
<a
|
|
1664
|
+
href="https://img.shields.io/npm/v/@lastbrain/module-legal?label=%40lastbrain%2Fmodule-legal"
|
|
1665
|
+
className="text-blue-600 hover:underline"
|
|
1666
|
+
target="_blank"
|
|
1667
|
+
rel="noopener noreferrer"
|
|
1668
|
+
>
|
|
1669
|
+
npm version
|
|
1670
|
+
</a>
|
|
1671
|
+
</p>
|
|
1672
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
1673
|
+
<strong>Pages</strong>: 4 publique(s), 2 admin
|
|
1674
|
+
</p>
|
|
1675
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
1676
|
+
<strong>Tables</strong>: legal_settings, legal_pages
|
|
1677
|
+
</p>
|
|
1678
|
+
<h4 className="font-medium mb-2">Installation du module legal</h4>
|
|
1679
|
+
<Snippet symbol="" hideSymbol className="text-sm mb-2">
|
|
1680
|
+
{`pnpm lastbrain add-module legal`}
|
|
1681
|
+
</Snippet>
|
|
1682
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
1683
|
+
<a
|
|
1684
|
+
href="../packages/module-legal/README.md"
|
|
1685
|
+
className="text-blue-600 hover:underline"
|
|
1686
|
+
target="_blank"
|
|
1687
|
+
rel="noopener noreferrer"
|
|
1688
|
+
>
|
|
1689
|
+
📖 Documentation complète →
|
|
1690
|
+
</a>
|
|
1691
|
+
</p>
|
|
1692
|
+
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">---</p>
|
|
1359
1693
|
<h4 className="font-medium mb-2">
|
|
1360
1694
|
[module-recipes](../packages/module-recipes/README.md)
|
|
1361
1695
|
</h4>
|
|
1362
1696
|
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
1363
|
-
|
|
1697
|
+
!
|
|
1698
|
+
<a
|
|
1699
|
+
href="https://img.shields.io/npm/v/@lastbrain/module-recipes?label=%40lastbrain%2Fmodule-recipes"
|
|
1700
|
+
className="text-blue-600 hover:underline"
|
|
1701
|
+
target="_blank"
|
|
1702
|
+
rel="noopener noreferrer"
|
|
1703
|
+
>
|
|
1704
|
+
npm version
|
|
1705
|
+
</a>
|
|
1364
1706
|
</p>
|
|
1365
1707
|
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
1366
1708
|
<strong>Pages</strong>: 4 auth
|
|
@@ -1388,7 +1730,15 @@ export function DocUsageCustom() {
|
|
|
1388
1730
|
[module-tasks](../packages/module-tasks/README.md)
|
|
1389
1731
|
</h4>
|
|
1390
1732
|
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
1391
|
-
|
|
1733
|
+
!
|
|
1734
|
+
<a
|
|
1735
|
+
href="https://img.shields.io/npm/v/@lastbrain/module-tasks?label=%40lastbrain%2Fmodule-tasks"
|
|
1736
|
+
className="text-blue-600 hover:underline"
|
|
1737
|
+
target="_blank"
|
|
1738
|
+
rel="noopener noreferrer"
|
|
1739
|
+
>
|
|
1740
|
+
npm version
|
|
1741
|
+
</a>
|
|
1392
1742
|
</p>
|
|
1393
1743
|
<p className="text-sm text-slate-600 dark:text-slate-400 mb-2">
|
|
1394
1744
|
<strong>Pages</strong>: 2 auth, 1 admin
|
|
@@ -296,7 +296,7 @@ export function DocPage({ modules = [], defaultContent }: DocPageProps) {
|
|
|
296
296
|
];
|
|
297
297
|
|
|
298
298
|
return (
|
|
299
|
-
<div className="w-full
|
|
299
|
+
<div className="w-full pb-24 lg:pb-8">
|
|
300
300
|
<div className="container mx-auto md:px-4 py-8">
|
|
301
301
|
{/* Mobile menu button */}
|
|
302
302
|
<div className="fixed w-full h-16 left-0 bottom-0 bg-background/20 backdrop-blur-lg z-50 lg:hidden p-2">
|
|
@@ -334,8 +334,8 @@ export function DocPage({ modules = [], defaultContent }: DocPageProps) {
|
|
|
334
334
|
|
|
335
335
|
<div className="flex gap-4">
|
|
336
336
|
{/* Desktop Navigation sidebar */}
|
|
337
|
-
<aside
|
|
338
|
-
<Card>
|
|
337
|
+
<aside>
|
|
338
|
+
<Card className="hidden max-h-[calc(100vh-6rem)] overflow-y-auto lg:block w-72 shrink-0 sticky top-18 self-start">
|
|
339
339
|
<CardBody>
|
|
340
340
|
<NavigationListbox
|
|
341
341
|
navigationItems={navigationItems}
|