@lambda-development/erp-core 0.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/dist/App.d.ts +1 -0
- package/dist/api/client.d.ts +256 -0
- package/dist/assets/report-runtime.worker-DrBTCfV6.js +5 -0
- package/dist/assets/report-runtime.worker-DrBTCfV6.js.map +1 -0
- package/dist/bootstrap.d.ts +16 -0
- package/dist/components/auth/protected-route.d.ts +3 -0
- package/dist/components/chat/chat-provider.d.ts +62 -0
- package/dist/components/document/child-table-editor.d.ts +9 -0
- package/dist/components/document/document-actions.d.ts +14 -0
- package/dist/components/document/link-field.d.ts +9 -0
- package/dist/components/document/status-badge.d.ts +5 -0
- package/dist/components/layout/app-shell.d.ts +1 -0
- package/dist/components/layout/sidebar.d.ts +7 -0
- package/dist/components/ui/badge.d.ts +10 -0
- package/dist/components/ui/button.d.ts +11 -0
- package/dist/components/ui/card.d.ts +10 -0
- package/dist/components/ui/date-range-presets.d.ts +9 -0
- package/dist/components/ui/hint-tooltip.d.ts +3 -0
- package/dist/components/ui/input.d.ts +9 -0
- package/dist/components/ui/language-select.d.ts +8 -0
- package/dist/components/ui/select.d.ts +15 -0
- package/dist/contexts/auth-context.d.ts +19 -0
- package/dist/hooks/use-base-currency.d.ts +7 -0
- package/dist/hooks/use-currencies.d.ts +10 -0
- package/dist/hooks/use-document-list.d.ts +16 -0
- package/dist/hooks/use-document.d.ts +14 -0
- package/dist/hooks/use-report.d.ts +139 -0
- package/dist/hooks/use-url-state.d.ts +23 -0
- package/dist/i18n/index.d.ts +15 -0
- package/dist/i18n/locales/de.json.d.ts +542 -0
- package/dist/i18n/locales/en.json.d.ts +602 -0
- package/dist/i18n/locales/fr.json.d.ts +542 -0
- package/dist/index.d.ts +31 -0
- package/dist/index.js +6583 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/branding.d.ts +28 -0
- package/dist/lib/component-registry.d.ts +4 -0
- package/dist/lib/doctypes.d.ts +56 -0
- package/dist/lib/nav.d.ts +21 -0
- package/dist/lib/utils.d.ts +10 -0
- package/dist/main.d.ts +0 -0
- package/dist/pages/admin/settings.d.ts +1 -0
- package/dist/pages/admin/users.d.ts +1 -0
- package/dist/pages/chat.d.ts +1 -0
- package/dist/pages/dashboard.d.ts +1 -0
- package/dist/pages/demo.d.ts +6 -0
- package/dist/pages/documents/document-form.d.ts +2 -0
- package/dist/pages/documents/document-list.d.ts +1 -0
- package/dist/pages/login.d.ts +1 -0
- package/dist/pages/masters/master-form.d.ts +1 -0
- package/dist/pages/masters/master-list.d.ts +1 -0
- package/dist/pages/opening-balances.d.ts +1 -0
- package/dist/pages/reports/analytics.d.ts +1 -0
- package/dist/pages/reports/ap-aging.d.ts +1 -0
- package/dist/pages/reports/ar-aging.d.ts +1 -0
- package/dist/pages/reports/balance-sheet.d.ts +1 -0
- package/dist/pages/reports/general-ledger.d.ts +1 -0
- package/dist/pages/reports/profit-loss.d.ts +1 -0
- package/dist/pages/reports/stock-balance.d.ts +1 -0
- package/dist/pages/reports/trial-balance.d.ts +1 -0
- package/dist/pages/setup.d.ts +1 -0
- package/dist/pages/tutorial.d.ts +1 -0
- package/dist/routes.d.ts +19 -0
- package/dist/workers/report-runtime.worker.d.ts +1 -0
- package/package.json +61 -0
- package/src/index.css +105 -0
- package/tailwind.preset.ts +70 -0
|
@@ -0,0 +1,542 @@
|
|
|
1
|
+
declare const _default: {
|
|
2
|
+
"common": {
|
|
3
|
+
"save": "Enregistrer",
|
|
4
|
+
"saving": "Enregistrement...",
|
|
5
|
+
"submit": "Valider",
|
|
6
|
+
"cancel": "Annuler",
|
|
7
|
+
"cancelDoc": "Annuler",
|
|
8
|
+
"delete": "Supprimer",
|
|
9
|
+
"edit": "Modifier",
|
|
10
|
+
"pdf": "PDF",
|
|
11
|
+
"addRow": "Ajouter une ligne",
|
|
12
|
+
"loading": "Chargement...",
|
|
13
|
+
"enable": "Activer",
|
|
14
|
+
"disable": "Désactiver",
|
|
15
|
+
"refresh": "Actualiser",
|
|
16
|
+
"refreshing": "Actualisation",
|
|
17
|
+
"areYouSure": "Êtes-vous sûr ?",
|
|
18
|
+
"all": "Tous",
|
|
19
|
+
"apply": "Appliquer",
|
|
20
|
+
"new": "Nouveau",
|
|
21
|
+
"prev": "Précédent",
|
|
22
|
+
"next": "Suivant",
|
|
23
|
+
"perPage": "Par page",
|
|
24
|
+
"page": "Page",
|
|
25
|
+
"of": "sur",
|
|
26
|
+
"showing": "Affichage",
|
|
27
|
+
"total": "Total",
|
|
28
|
+
"totals": "Totaux",
|
|
29
|
+
"errorOccurred": "Une erreur s'est produite"
|
|
30
|
+
},
|
|
31
|
+
"language": {
|
|
32
|
+
"title": "Langue",
|
|
33
|
+
"help": "Choisissez la langue de l'interface. Votre choix est enregistré dans ce navigateur.",
|
|
34
|
+
"label": "Langue"
|
|
35
|
+
},
|
|
36
|
+
"header": {
|
|
37
|
+
"logout": "Déconnexion",
|
|
38
|
+
"openMenu": "Ouvrir le menu",
|
|
39
|
+
"closeMenu": "Fermer le menu",
|
|
40
|
+
"new": "Nouveau : {{label}}"
|
|
41
|
+
},
|
|
42
|
+
"titles": {
|
|
43
|
+
"dashboard": "Tableau de bord",
|
|
44
|
+
"setup": "Configuration de l'entreprise",
|
|
45
|
+
"tutorial": "Premiers pas",
|
|
46
|
+
"chat": "Chat",
|
|
47
|
+
"reports": "Rapports",
|
|
48
|
+
"trial-balance": "Balance comptable",
|
|
49
|
+
"general-ledger": "Grand livre",
|
|
50
|
+
"stock-balance": "Solde de stock",
|
|
51
|
+
"profit-and-loss": "Compte de résultat",
|
|
52
|
+
"balance-sheet": "Bilan",
|
|
53
|
+
"ar-aging": "Balance âgée clients",
|
|
54
|
+
"ap-aging": "Balance âgée fournisseurs",
|
|
55
|
+
"analytics": "Analyses"
|
|
56
|
+
},
|
|
57
|
+
"doctypes": {
|
|
58
|
+
"quotation": { "one": "Devis", "other": "Devis" },
|
|
59
|
+
"sales-order": { "one": "Commande client", "other": "Commandes client" },
|
|
60
|
+
"sales-invoice": { "one": "Facture de vente", "other": "Factures de vente" },
|
|
61
|
+
"pos-invoice": { "one": "Ticket de caisse", "other": "Tickets de caisse" },
|
|
62
|
+
"purchase-order": { "one": "Bon de commande", "other": "Bons de commande" },
|
|
63
|
+
"purchase-invoice": { "one": "Facture d'achat", "other": "Factures d'achat" },
|
|
64
|
+
"payment-entry": { "one": "Paiement", "other": "Paiements" },
|
|
65
|
+
"journal-entry": { "one": "Écriture comptable", "other": "Écritures comptables" },
|
|
66
|
+
"bank-transaction": { "one": "Transaction bancaire", "other": "Transactions bancaires" },
|
|
67
|
+
"budget": { "one": "Budget", "other": "Budgets" },
|
|
68
|
+
"subscription": { "one": "Abonnement", "other": "Abonnements" },
|
|
69
|
+
"stock-entry": { "one": "Mouvement de stock", "other": "Mouvements de stock" },
|
|
70
|
+
"delivery-note": { "one": "Bon de livraison", "other": "Bons de livraison" },
|
|
71
|
+
"purchase-receipt": { "one": "Bon de réception", "other": "Bons de réception" },
|
|
72
|
+
"pricing-rule": { "one": "Règle de prix", "other": "Règles de prix" }
|
|
73
|
+
},
|
|
74
|
+
"masters": {
|
|
75
|
+
"company": { "one": "Société", "other": "Sociétés" },
|
|
76
|
+
"customer": { "one": "Client", "other": "Clients" },
|
|
77
|
+
"supplier": { "one": "Fournisseur", "other": "Fournisseurs" },
|
|
78
|
+
"item": { "one": "Article", "other": "Articles" },
|
|
79
|
+
"warehouse": { "one": "Entrepôt", "other": "Entrepôts" }
|
|
80
|
+
},
|
|
81
|
+
"nav": {
|
|
82
|
+
"chats": "Discussions",
|
|
83
|
+
"newChat": "Nouvelle discussion",
|
|
84
|
+
"deleteChat": "Supprimer la discussion",
|
|
85
|
+
"customAnalytics": "Analyses personnalisées",
|
|
86
|
+
"newAnalytics": "Nouvelle analyse",
|
|
87
|
+
"deleteReport": "Supprimer le rapport",
|
|
88
|
+
"groups": {
|
|
89
|
+
"Introduction": "Introduction",
|
|
90
|
+
"Selling": "Ventes",
|
|
91
|
+
"Buying": "Achats",
|
|
92
|
+
"Accounting": "Comptabilité",
|
|
93
|
+
"Stock": "Stock",
|
|
94
|
+
"Reports": "Rapports",
|
|
95
|
+
"Masters": "Données de base",
|
|
96
|
+
"Settings": "Paramètres"
|
|
97
|
+
},
|
|
98
|
+
"items": {
|
|
99
|
+
"Getting Started": "Premiers pas",
|
|
100
|
+
"Company Setup": "Configuration de l'entreprise",
|
|
101
|
+
"Opening Balances": "Soldes d'ouverture",
|
|
102
|
+
"Quotation": "Devis",
|
|
103
|
+
"Sales Order": "Commande client",
|
|
104
|
+
"Sales Invoice": "Facture de vente",
|
|
105
|
+
"POS Invoice": "Ticket de caisse",
|
|
106
|
+
"Purchase Order": "Bon de commande",
|
|
107
|
+
"Purchase Invoice": "Facture d'achat",
|
|
108
|
+
"Payment Entry": "Paiement",
|
|
109
|
+
"Journal Entry": "Écriture comptable",
|
|
110
|
+
"Bank Transaction": "Transaction bancaire",
|
|
111
|
+
"Budget": "Budget",
|
|
112
|
+
"Subscription": "Abonnement",
|
|
113
|
+
"Stock Entry": "Mouvement de stock",
|
|
114
|
+
"Delivery Note": "Bon de livraison",
|
|
115
|
+
"Purchase Receipt": "Bon de réception",
|
|
116
|
+
"Trial Balance": "Balance comptable",
|
|
117
|
+
"Profit & Loss": "Compte de résultat",
|
|
118
|
+
"Balance Sheet": "Bilan",
|
|
119
|
+
"General Ledger": "Grand livre",
|
|
120
|
+
"AR Aging": "Balance âgée clients",
|
|
121
|
+
"AP Aging": "Balance âgée fournisseurs",
|
|
122
|
+
"Analytics": "Analyses",
|
|
123
|
+
"Stock Balance": "Solde de stock",
|
|
124
|
+
"Company": "Société",
|
|
125
|
+
"Customer": "Client",
|
|
126
|
+
"Supplier": "Fournisseur",
|
|
127
|
+
"Item": "Article",
|
|
128
|
+
"Warehouse": "Entrepôt",
|
|
129
|
+
"General": "Général",
|
|
130
|
+
"Pricing Rule": "Règle de prix",
|
|
131
|
+
"Users & Team": "Utilisateurs et équipe"
|
|
132
|
+
}
|
|
133
|
+
},
|
|
134
|
+
"login": {
|
|
135
|
+
"taglineFirstRun": "Créez votre compte administrateur pour commencer",
|
|
136
|
+
"taglineRegister": "Créez votre compte",
|
|
137
|
+
"taglineSignIn": "Connectez-vous à votre compte",
|
|
138
|
+
"demoBanner": "Le mode démo est actif. Connectez-vous avec un compte administrateur pour gérer les paramètres ou désactiver l'accès public.",
|
|
139
|
+
"fullName": "Nom complet",
|
|
140
|
+
"email": "E-mail",
|
|
141
|
+
"password": "Mot de passe",
|
|
142
|
+
"confirmPassword": "Confirmer le mot de passe",
|
|
143
|
+
"createAdmin": "Créer un compte administrateur",
|
|
144
|
+
"register": "S'inscrire",
|
|
145
|
+
"signIn": "Se connecter",
|
|
146
|
+
"browsingTitle": "Simple visite ?",
|
|
147
|
+
"browsingBody": "Démarrez une nouvelle session de chat et regardez la démo en direct.",
|
|
148
|
+
"enterDemo": "Lancer la démo",
|
|
149
|
+
"haveInvite": "Vous avez une invitation ?",
|
|
150
|
+
"registerLink": "S'inscrire",
|
|
151
|
+
"alreadyHaveAccount": "Vous avez déjà un compte ?",
|
|
152
|
+
"signInLink": "Se connecter",
|
|
153
|
+
"passwordsNoMatch": "Les mots de passe ne correspondent pas",
|
|
154
|
+
"passwordTooShort": "Le mot de passe doit comporter au moins 6 caractères",
|
|
155
|
+
"registrationFailed": "Échec de l'inscription",
|
|
156
|
+
"loginFailed": "Échec de la connexion"
|
|
157
|
+
},
|
|
158
|
+
"settings": {
|
|
159
|
+
"pdfTitle": "PDF et impression",
|
|
160
|
+
"pageSize": "Format de page",
|
|
161
|
+
"pdfHelp": "A4 est la norme internationale (210 x 297 mm). Letter est la norme aux États-Unis (8,5 x 11 po).",
|
|
162
|
+
"openingTitle": "Soldes d'ouverture",
|
|
163
|
+
"openingBody": "La page Soldes d'ouverture permet d'importer les soldes des comptes, le stock et les factures impayées d'un système précédent.",
|
|
164
|
+
"openingEnabled": "Actuellement activé — accessible sous Introduction > Soldes d'ouverture.",
|
|
165
|
+
"openingDisabled": "Actuellement désactivé — la page est masquée dans la barre latérale.",
|
|
166
|
+
"publicTitle": "Accès public (mode démo)",
|
|
167
|
+
"publicActive": "Actif",
|
|
168
|
+
"publicActiveBody": "L'accès public est activé. N'importe qui peut utiliser l'application sans se connecter. Tous les visiteurs obtiennent des autorisations de niveau gestionnaire.",
|
|
169
|
+
"disablePublic": "Désactiver l'accès public",
|
|
170
|
+
"disabling": "Désactivation...",
|
|
171
|
+
"publicInactiveBody": "Activez l'accès public pour permettre à quiconque d'utiliser l'application sans compte. Utile pour les démos et présentations. Tous les visiteurs obtiennent des autorisations de niveau gestionnaire et partagent la même identité.",
|
|
172
|
+
"enablePublic": "Activer l'accès public",
|
|
173
|
+
"enableWarning": "Cela permettra à quiconque d'accéder à l'application sans se connecter. Ils pourront créer, modifier et valider des documents. Votre compte administrateur nécessite toujours une connexion.",
|
|
174
|
+
"yesEnable": "Oui, activer",
|
|
175
|
+
"enabling": "Activation...",
|
|
176
|
+
"demoSpendTitle": "Dépenses démo"
|
|
177
|
+
},
|
|
178
|
+
"status": {
|
|
179
|
+
"Draft": "Brouillon",
|
|
180
|
+
"Open": "Ouvert",
|
|
181
|
+
"Submitted": "Validé",
|
|
182
|
+
"To Deliver and Bill": "À livrer et facturer",
|
|
183
|
+
"To Deliver": "À livrer",
|
|
184
|
+
"To Bill": "À facturer",
|
|
185
|
+
"Completed": "Terminé",
|
|
186
|
+
"Ordered": "Commandé",
|
|
187
|
+
"Paid": "Payé",
|
|
188
|
+
"Unpaid": "Impayé",
|
|
189
|
+
"Cancelled": "Annulé",
|
|
190
|
+
"Overdue": "En retard",
|
|
191
|
+
"Return": "Retour",
|
|
192
|
+
"Closed": "Clôturé"
|
|
193
|
+
},
|
|
194
|
+
"reports": {
|
|
195
|
+
"balanced": "ÉQUILIBRÉ",
|
|
196
|
+
"imbalanced": "DÉSÉQUILIBRÉ",
|
|
197
|
+
"income": "Produits",
|
|
198
|
+
"expenses": "Charges",
|
|
199
|
+
"totalIncome": "Total des produits",
|
|
200
|
+
"totalExpenses": "Total des charges",
|
|
201
|
+
"netProfit": "Bénéfice",
|
|
202
|
+
"netLoss": "Perte",
|
|
203
|
+
"assets": "Actif",
|
|
204
|
+
"liabilities": "Passif",
|
|
205
|
+
"equity": "Capitaux propres",
|
|
206
|
+
"totalAssets": "Total de l'actif",
|
|
207
|
+
"totalLiabilities": "Total du passif",
|
|
208
|
+
"totalEquity": "Total des capitaux propres",
|
|
209
|
+
"totalLiabilitiesEquity": "Total passif + capitaux propres",
|
|
210
|
+
"current": "Non échu",
|
|
211
|
+
"noData": "Aucune donnée trouvée",
|
|
212
|
+
"noEntries": "Aucune écriture trouvée",
|
|
213
|
+
"noStockData": "Aucune donnée de stock trouvée",
|
|
214
|
+
"noReceivables": "Aucune créance en cours",
|
|
215
|
+
"noPayables": "Aucune dette en cours",
|
|
216
|
+
"noDocuments": "Aucun document trouvé"
|
|
217
|
+
},
|
|
218
|
+
"masterForm": {
|
|
219
|
+
"required": "Requis : {{fields}}",
|
|
220
|
+
"deleteConfirm": "Supprimer ce {{label}} ?",
|
|
221
|
+
"disabledNotice": "Ce {{label}} est désactivé. Il reste dans le système car d'autres enregistrements y font référence.",
|
|
222
|
+
"disabledOnDelete": "{{label}} {{name}} a été désactivé au lieu d'être supprimé car il est référencé par {{reason}}."
|
|
223
|
+
},
|
|
224
|
+
"fields": {
|
|
225
|
+
"Account": "Compte",
|
|
226
|
+
"Amount": "Montant",
|
|
227
|
+
"Balance": "Solde",
|
|
228
|
+
"Credit": "Crédit",
|
|
229
|
+
"Debit": "Débit",
|
|
230
|
+
"Date": "Date",
|
|
231
|
+
"Party": "Tiers",
|
|
232
|
+
"Party Type": "Type de tiers",
|
|
233
|
+
"Voucher Type": "Type de pièce",
|
|
234
|
+
"Voucher No": "N° de pièce",
|
|
235
|
+
"Invoice": "Facture",
|
|
236
|
+
"Customer": "Client",
|
|
237
|
+
"Supplier": "Fournisseur",
|
|
238
|
+
"Due Date": "Date d'échéance",
|
|
239
|
+
"Outstanding": "Encours",
|
|
240
|
+
"Outstanding Amount": "Montant dû",
|
|
241
|
+
"Item Code": "Code article",
|
|
242
|
+
"Item Name": "Nom de l'article",
|
|
243
|
+
"Item": "Article",
|
|
244
|
+
"Warehouse": "Entrepôt",
|
|
245
|
+
"Qty": "Qté",
|
|
246
|
+
"Valuation Rate": "Coût unitaire",
|
|
247
|
+
"Stock Value": "Valeur du stock",
|
|
248
|
+
"Name": "Nom",
|
|
249
|
+
"Status": "Statut",
|
|
250
|
+
"Company": "Société",
|
|
251
|
+
"From Date": "Date de début",
|
|
252
|
+
"To Date": "Date de fin",
|
|
253
|
+
"As of Date": "À la date",
|
|
254
|
+
"Valid Till": "Valable jusqu'au",
|
|
255
|
+
"Net Total": "Total net",
|
|
256
|
+
"Tax": "Taxe",
|
|
257
|
+
"Grand Total": "Total TTC",
|
|
258
|
+
"Notes / Terms": "Notes / Conditions",
|
|
259
|
+
"Posting Date": "Date de comptabilisation",
|
|
260
|
+
"Transaction Date": "Date de transaction",
|
|
261
|
+
"Delivery Date": "Date de livraison",
|
|
262
|
+
"% Delivered": "% livré",
|
|
263
|
+
"% Billed": "% facturé",
|
|
264
|
+
"Update Stock": "Mettre à jour le stock",
|
|
265
|
+
"Payment Type": "Type de paiement",
|
|
266
|
+
"Paid From": "Payé depuis",
|
|
267
|
+
"Paid To": "Payé à",
|
|
268
|
+
"Paid Amount": "Montant payé",
|
|
269
|
+
"Type": "Type",
|
|
270
|
+
"Total": "Total",
|
|
271
|
+
"Allocated": "Affecté",
|
|
272
|
+
"Unallocated": "Non affecté",
|
|
273
|
+
"Remark": "Remarque",
|
|
274
|
+
"Total Debit": "Total débit",
|
|
275
|
+
"Total Credit": "Total crédit",
|
|
276
|
+
"Cost Center": "Centre de coûts",
|
|
277
|
+
"Source Warehouse": "Entrepôt source",
|
|
278
|
+
"Target Warehouse": "Entrepôt cible",
|
|
279
|
+
"Source": "Source",
|
|
280
|
+
"Target": "Cible",
|
|
281
|
+
"Incoming Value": "Valeur entrante",
|
|
282
|
+
"Outgoing Value": "Valeur sortante",
|
|
283
|
+
"Rate": "Prix unitaire",
|
|
284
|
+
"Income Account": "Compte de produits",
|
|
285
|
+
"Expense Account": "Compte de charges",
|
|
286
|
+
"Description": "Description",
|
|
287
|
+
"Rate (%)": "Taux (%)",
|
|
288
|
+
"Mode": "Mode",
|
|
289
|
+
"Change": "Monnaie rendue",
|
|
290
|
+
"Currency": "Devise",
|
|
291
|
+
"Title": "Titre",
|
|
292
|
+
"Selling": "Vente",
|
|
293
|
+
"Buying": "Achat",
|
|
294
|
+
"Discount %": "Remise %",
|
|
295
|
+
"Discount Amt": "Montant remise",
|
|
296
|
+
"Min Qty": "Qté min",
|
|
297
|
+
"Valid From": "Valable à partir du",
|
|
298
|
+
"Valid Upto": "Valable jusqu'au",
|
|
299
|
+
"Priority": "Priorité",
|
|
300
|
+
"Enabled": "Activé",
|
|
301
|
+
"Fiscal Year": "Exercice",
|
|
302
|
+
"Budget Amount": "Montant du budget",
|
|
303
|
+
"If Exceeded": "Si dépassé",
|
|
304
|
+
"Month": "Mois",
|
|
305
|
+
"Bank Account": "Compte bancaire",
|
|
306
|
+
"Deposit": "Dépôt",
|
|
307
|
+
"Withdrawal": "Retrait",
|
|
308
|
+
"Reference No": "N° de référence",
|
|
309
|
+
"Matched Type": "Type rapproché",
|
|
310
|
+
"Matched Doc": "Pièce rapprochée",
|
|
311
|
+
"Start Date": "Date de début",
|
|
312
|
+
"End Date": "Date de fin",
|
|
313
|
+
"Billing Interval": "Intervalle de facturation",
|
|
314
|
+
"Current Period Start": "Début période actuelle",
|
|
315
|
+
"Current Period End": "Fin période actuelle",
|
|
316
|
+
"Plan Items": "Articles du plan",
|
|
317
|
+
"Total Amount": "Montant total",
|
|
318
|
+
"Stock Entry Type": "Type de mouvement de stock",
|
|
319
|
+
"Rate Or Discount": "Prix ou remise",
|
|
320
|
+
"Discount Percentage": "Pourcentage de remise",
|
|
321
|
+
"ID": "ID",
|
|
322
|
+
"Customer Name": "Nom du client",
|
|
323
|
+
"Customer Group": "Groupe de clients",
|
|
324
|
+
"Territory": "Territoire",
|
|
325
|
+
"Credit Limit": "Limite de crédit",
|
|
326
|
+
"Email": "E-mail",
|
|
327
|
+
"Phone": "Téléphone",
|
|
328
|
+
"Address": "Adresse",
|
|
329
|
+
"City": "Ville",
|
|
330
|
+
"Zip Code": "Code postal",
|
|
331
|
+
"Country": "Pays",
|
|
332
|
+
"Tax ID": "N° de TVA",
|
|
333
|
+
"Supplier Name": "Nom du fournisseur",
|
|
334
|
+
"Supplier Group": "Groupe de fournisseurs",
|
|
335
|
+
"Item Group": "Groupe d'articles",
|
|
336
|
+
"Stock UOM": "Unité de stock",
|
|
337
|
+
"Standard Rate": "Prix standard",
|
|
338
|
+
"Warehouse Name": "Nom de l'entrepôt",
|
|
339
|
+
"Company Name": "Nom de la société"
|
|
340
|
+
},
|
|
341
|
+
"tables": {
|
|
342
|
+
"items": "Lignes",
|
|
343
|
+
"taxes": "Taxes",
|
|
344
|
+
"references": "Références de paiement",
|
|
345
|
+
"accounts": "Écritures de compte",
|
|
346
|
+
"payments": "Paiements",
|
|
347
|
+
"plans": "Articles du plan",
|
|
348
|
+
"monthly_distribution": "Répartition mensuelle"
|
|
349
|
+
},
|
|
350
|
+
"conversions": {
|
|
351
|
+
"Create Sales Order": "Créer une commande client",
|
|
352
|
+
"Create Sales Invoice": "Créer une facture de vente",
|
|
353
|
+
"Create Delivery Note": "Créer un bon de livraison",
|
|
354
|
+
"Create Purchase Invoice": "Créer une facture d'achat",
|
|
355
|
+
"Create Purchase Receipt": "Créer un bon de réception",
|
|
356
|
+
"Create Credit Note": "Créer un avoir",
|
|
357
|
+
"Create Debit Note": "Créer une note de débit",
|
|
358
|
+
"Create Return": "Créer un retour"
|
|
359
|
+
},
|
|
360
|
+
"dashboard": {
|
|
361
|
+
"totalRevenue": "Chiffre d'affaires total",
|
|
362
|
+
"outstandingReceivable": "Créances en cours",
|
|
363
|
+
"outstandingPayable": "Dettes en cours",
|
|
364
|
+
"totalStockValue": "Valeur totale du stock",
|
|
365
|
+
"recentDocuments": "Documents récents",
|
|
366
|
+
"noRecentDocuments": "Aucun document récent"
|
|
367
|
+
},
|
|
368
|
+
"chat": {
|
|
369
|
+
"title": "Chat Lambda ERP",
|
|
370
|
+
"subtitle": "Demandez-moi de créer des documents, de consulter des données ou d'exécuter des rapports.",
|
|
371
|
+
"s1": "Quels clients avons-nous ?",
|
|
372
|
+
"s2": "Affiche la balance comptable",
|
|
373
|
+
"s3": "Crée un devis pour 10 Bolt Pack M8",
|
|
374
|
+
"s4": "Liste toutes les factures impayées",
|
|
375
|
+
"loadOlder": "Charger les messages plus anciens",
|
|
376
|
+
"uploading": "Téléversement...",
|
|
377
|
+
"failed": "Échec",
|
|
378
|
+
"remove": "Supprimer",
|
|
379
|
+
"placeholderDemo": "Démo en direct en cours...",
|
|
380
|
+
"placeholderType": "Tapez un message...",
|
|
381
|
+
"placeholderConnecting": "Connexion...",
|
|
382
|
+
"attachTitle": "Joindre un fichier (PDF ou image, max 10 Mo)",
|
|
383
|
+
"creating": "Création du chat...",
|
|
384
|
+
"dropToAttach": "Déposez un fichier à joindre (images ou PDF, max 10 Mo chacun)",
|
|
385
|
+
"demoError": "Impossible de démarrer la démo"
|
|
386
|
+
},
|
|
387
|
+
"tutorial": {
|
|
388
|
+
"pageTitle": "Premiers pas avec Lambda ERP",
|
|
389
|
+
"intro": "Lambda ERP est un système ERP nativement IA, où toutes les fonctionnalités – comme créer des commandes, vérifier l'inventaire ou enregistrer des paiements – sont accessibles via une interface de chat. Il guide, raisonne et vérifie toutes vos tâches quotidiennes.",
|
|
390
|
+
"openChat": "Ouvrir le chat IA",
|
|
391
|
+
"tipLabel": "Astuce :",
|
|
392
|
+
"topTip": "Le chat IA peut aussi vous donner des liens directs vers des documents et des PDF téléchargeables. Demandez-lui simplement de créer ou de rechercher un document et il inclura des liens cliquables dans sa réponse.",
|
|
393
|
+
"manualIntro": "Si vous souhaitez comprendre pleinement le fonctionnement interne, ou préférez procéder manuellement, voici un cycle commercial complet étape par étape.",
|
|
394
|
+
"caTitle": "Analyses dynamiques – discutez pour obtenir n'importe quel graphique",
|
|
395
|
+
"caBadge": "Fonctionnalité phare",
|
|
396
|
+
"caBody": "Besoin d'un rapport que les modèles prédéfinis ne fournissent pas ? Décrivez-le simplement dans le chat. L'assistant appelle un modèle spécialiste du code qui écrit le rapport pour vous, l'exécute en direct sur vos données ERP et renvoie un lien partageable. Le graphique ou le tableau s'affiche en quelques secondes et est enregistré comme brouillon sous « Analyses personnalisées » dans la barre latérale – vous pouvez le rouvrir, partager l'URL avec vos collègues ou demander à l'assistant de l'affiner.",
|
|
397
|
+
"caTryAsking": "Essayez de demander (cliquez pour préremplir dans le chat) :",
|
|
398
|
+
"caPrompt1": "Montre-moi les 10 meilleurs clients par chiffre d'affaires cette année en diagramme à barres",
|
|
399
|
+
"caPrompt2": "Tendance mensuelle des achats par fournisseur sur tous les mois, étiquette l'axe des x avec le nom du fournisseur",
|
|
400
|
+
"caPrompt3": "Articles les plus vendus par quantité, avec un tableau et un graphique",
|
|
401
|
+
"caPrompt4": "Quels clients me doivent le plus en ce moment ?",
|
|
402
|
+
"caTryInChat": "Essayer dans le chat",
|
|
403
|
+
"caOpenWorkspace": "Ouvrir l'espace d'analyse",
|
|
404
|
+
"flowTitle": "Aperçu du flux des documents",
|
|
405
|
+
"salesCycle": "Cycle de vente",
|
|
406
|
+
"purchaseCycle": "Cycle d'achat",
|
|
407
|
+
"returns": "Retours",
|
|
408
|
+
"flowShortcut": "Raccourci : le devis peut ignorer la commande client et aller directement à la facture de vente ou au bon de livraison",
|
|
409
|
+
"legendStock": "impact stock",
|
|
410
|
+
"legendGl": "impact comptable",
|
|
411
|
+
"legendCash": "impact trésorerie",
|
|
412
|
+
"legendReversal": "annulation",
|
|
413
|
+
"lifecycleTitle": "Cycle de vie du document",
|
|
414
|
+
"lcDraftLabel": "Brouillon :",
|
|
415
|
+
"lcDraftDesc": "Modifiable. Aucun impact financier ni sur le stock.",
|
|
416
|
+
"lcSubmittedLabel": "Validé :",
|
|
417
|
+
"lcSubmittedDesc": "Verrouillé. Les écritures comptables et de stock sont générées.",
|
|
418
|
+
"lcCancelledLabel": "Annulé :",
|
|
419
|
+
"lcCancelledDesc": "Toutes les écritures sont inversées. Le document est archivé définitivement.",
|
|
420
|
+
"lcNoDelete": "Il n'y a pas de suppression. Pour annuler un brouillon : validez-le, puis annulez-le.",
|
|
421
|
+
"lcCorrect": "Pour corriger un document validé : annulez-le et créez-en un nouveau.",
|
|
422
|
+
"readyTitle": "Vous êtes prêt",
|
|
423
|
+
"readyBody1": "Vous comprenez maintenant le cycle complet. Un scénario réel typique ressemble à ceci : vous recevez une commande client (Devis → Commande client), vérifiez le stock, achetez ce dont vous avez besoin (Bon de commande → Bon de réception → Facture d'achat → Paiement), livrez au client (Bon de livraison), facturez-le (Facture de vente) et encaissez le paiement (Paiement). Si quelque chose revient, créez un avoir et un retour de bon de livraison pour inverser les finances et le stock. La Balance comptable confirme que tout est équilibré.",
|
|
424
|
+
"readyBody2": "Vous pouvez aussi tout faire via le chat IA en conversation naturelle – décrivez simplement ce dont vous avez besoin et il créera les bons documents pour vous.",
|
|
425
|
+
"chips": {
|
|
426
|
+
"Quotation": "Devis",
|
|
427
|
+
"Sales Order": "Commande client",
|
|
428
|
+
"Delivery Note": "Bon de livraison",
|
|
429
|
+
"Sales Invoice": "Facture de vente",
|
|
430
|
+
"Payment Entry": "Paiement",
|
|
431
|
+
"Purchase Order": "Bon de commande",
|
|
432
|
+
"Purchase Receipt": "Bon de réception",
|
|
433
|
+
"Purchase Invoice": "Facture d'achat",
|
|
434
|
+
"Credit Note": "Avoir",
|
|
435
|
+
"DN Return": "Retour BL",
|
|
436
|
+
"Debit Note": "Note de débit",
|
|
437
|
+
"Draft": "Brouillon",
|
|
438
|
+
"Submitted": "Validé",
|
|
439
|
+
"Cancelled": "Annulé"
|
|
440
|
+
},
|
|
441
|
+
"links": {
|
|
442
|
+
"Go to Setup": "Aller à la configuration",
|
|
443
|
+
"Customers": "Clients",
|
|
444
|
+
"Suppliers": "Fournisseurs",
|
|
445
|
+
"Items": "Articles",
|
|
446
|
+
"Warehouses": "Entrepôts",
|
|
447
|
+
"New Quotation": "Nouveau devis",
|
|
448
|
+
"View Quotations": "Voir les devis",
|
|
449
|
+
"Stock Balance": "Solde de stock",
|
|
450
|
+
"New Purchase Order": "Nouveau bon de commande",
|
|
451
|
+
"Purchase Receipts": "Bons de réception",
|
|
452
|
+
"Purchase Invoices": "Factures d'achat",
|
|
453
|
+
"Delivery Notes": "Bons de livraison",
|
|
454
|
+
"Sales Invoices": "Factures de vente",
|
|
455
|
+
"New Payment Entry": "Nouveau paiement",
|
|
456
|
+
"New Stock Entry": "Nouveau mouvement de stock",
|
|
457
|
+
"New Journal Entry": "Nouvelle écriture de journal",
|
|
458
|
+
"Profit & Loss": "Compte de résultat",
|
|
459
|
+
"Balance Sheet": "Bilan",
|
|
460
|
+
"AR Aging": "Balance âgée clients",
|
|
461
|
+
"AP Aging": "Balance âgée fournisseurs",
|
|
462
|
+
"Trial Balance": "Balance comptable",
|
|
463
|
+
"General Ledger": "Grand livre",
|
|
464
|
+
"Open AI Chat": "Ouvrir le chat IA"
|
|
465
|
+
},
|
|
466
|
+
"steps": {
|
|
467
|
+
"1": {
|
|
468
|
+
"title": "Configurer votre société",
|
|
469
|
+
"description": "Créez une société avec une devise de base. Cela génère votre plan comptable (30 comptes standard répartis entre Actif, Passif, Capitaux propres, Produits et Charges) ainsi qu'un centre de coûts par défaut. Vous pouvez aussi charger des données de démonstration avec des clients, fournisseurs et articles d'exemple pour démarrer rapidement."
|
|
470
|
+
},
|
|
471
|
+
"2": {
|
|
472
|
+
"title": "Créer les données de base",
|
|
473
|
+
"description": "Avant de pouvoir effectuer des transactions, vous avez besoin de fiches de base. Créez au moins un client, un fournisseur, un article (avec un prix standard) et un entrepôt. Si vous avez chargé les données de démonstration à l'étape 1, elles existent déjà.",
|
|
474
|
+
"tip": "Les articles ont un prix standard qui se remplit automatiquement lorsque vous les ajoutez à des documents. Vous pouvez toujours modifier le prix par transaction."
|
|
475
|
+
},
|
|
476
|
+
"3": {
|
|
477
|
+
"title": "Créer un devis",
|
|
478
|
+
"description": "Un devis est une offre non contraignante adressée à un client. Sélectionnez un client, ajoutez des lignes avec quantités et prix, éventuellement des lignes de taxe, puis enregistrez. Les devis n'ont aucun impact financier – ils ne créent ni écritures comptables ni mouvements de stock. Définissez une date de validité pour que l'offre expire automatiquement."
|
|
479
|
+
},
|
|
480
|
+
"4": {
|
|
481
|
+
"title": "Valider et convertir en commande client",
|
|
482
|
+
"description": "Ouvrez votre devis enregistré et cliquez sur Valider pour le confirmer. Cliquez ensuite sur « Créer une commande client » pour le convertir. La commande client représente un engagement confirmé du client. Elle n'a toujours aucun impact financier, mais réserve du stock à des fins de planification.",
|
|
483
|
+
"tip": "Seuls les documents validés peuvent être convertis à l'étape suivante. Brouillon → Valider → Convertir est le flux standard. Pour les affaires rapides, vous pouvez ignorer la commande client et passer directement du devis à la facture de vente ou au bon de livraison."
|
|
484
|
+
},
|
|
485
|
+
"5": {
|
|
486
|
+
"title": "Vérifier le stock avant l'exécution",
|
|
487
|
+
"description": "Avant de pouvoir livrer, vérifiez si vous avez réellement l'article en stock. Ouvrez le rapport Solde de stock et recherchez l'article. Si votre entrepôt affiche une quantité nulle, vous devrez d'abord approvisionner le stock – soit par un bon de commande (achat auprès d'un fournisseur), soit par un mouvement de stock (réception manuelle).",
|
|
488
|
+
"tip": "C'est un scénario courant dans la pratique : vous vendez quelque chose, puis réalisez que vous devez d'abord l'acheter. L'ERP gère les deux flux."
|
|
489
|
+
},
|
|
490
|
+
"6": {
|
|
491
|
+
"title": "Cycle d'achat : acheter du stock à un fournisseur",
|
|
492
|
+
"description": "Si vous devez acheter du stock, vous avez deux chemins valides. Le chemin standard est Bon de commande → Bon de réception → Facture d'achat : utilisez-le lorsque les marchandises arrivent avant ou séparément de la facture du fournisseur. Si la facture et la réception arrivent ensemble, vous pouvez créer directement la facture d'achat et activer « Mettre à jour le stock » afin que le même document réceptionne le stock et enregistre la dette fournisseur.",
|
|
493
|
+
"tip": "Utilisez d'abord le bon de réception lorsque vous recevez les marchandises séparément. Utilisez la facture d'achat avec « Mettre à jour le stock » lorsqu'une seule étape doit à la fois réceptionner le stock et comptabiliser la facture fournisseur. Dans ce chemin direct, indiquez un entrepôt sur chaque ligne d'article en stock."
|
|
494
|
+
},
|
|
495
|
+
"7": {
|
|
496
|
+
"title": "Créer un bon de livraison",
|
|
497
|
+
"description": "Maintenant que vous avez du stock, revenez à votre commande client validée et cliquez sur « Créer un bon de livraison ». Indiquez l'entrepôt sur chaque ligne d'article (d'où partent les marchandises), puis validez. Cela sort le stock de l'entrepôt – votre solde de stock diminue.",
|
|
498
|
+
"tip": "Le bon de livraison est le document d'expédition. Il réduit le stock mais ne crée pas de facture. Vous pouvez livrer et facturer séparément."
|
|
499
|
+
},
|
|
500
|
+
"8": {
|
|
501
|
+
"title": "Créer et valider la facture de vente",
|
|
502
|
+
"description": "À partir de la commande client validée, créez une facture de vente. Lorsque vous validez la facture, des écritures comptables sont générées : les Clients (créances) sont débités (le client vous doit de l'argent) et les Produits des ventes crédités (revenu acquis). Si des taxes sont configurées, la TVA collectée est également créditée. Le montant dû indique ce que le client doit encore."
|
|
503
|
+
},
|
|
504
|
+
"9": {
|
|
505
|
+
"title": "Enregistrer les paiements clients",
|
|
506
|
+
"description": "Créez un paiement pour enregistrer l'argent reçu du client. Définissez le type de paiement sur « Receive » (Recevoir), sélectionnez le client, indiquez le montant et affectez-le à la facture de vente. Vous pouvez effectuer des paiements partiels – le montant dû de la facture se met à jour en conséquence. Créez des paiements supplémentaires jusqu'à ce que la facture soit entièrement réglée.",
|
|
507
|
+
"tip": "Les paiements partiels sont courants. Une facture de 10 000 peut être payée 3 000 maintenant et 7 000 plus tard. Chaque paiement réduit le montant dû."
|
|
508
|
+
},
|
|
509
|
+
"10": {
|
|
510
|
+
"title": "Mouvements de stock (inventaire manuel)",
|
|
511
|
+
"description": "Utilisez les mouvements de stock pour les mouvements d'inventaire non liés aux achats ou aux ventes. « Material Receipt » ajoute du stock (soldes d'ouverture, ajustements). « Material Issue » sort du stock (pertes, consommation interne). « Material Transfer » déplace du stock entre entrepôts. Chaque mouvement met à jour le livre de stock avec une valorisation au coût moyen pondéré.",
|
|
512
|
+
"tip": "Pour les marchandises achetées, utilisez des bons de réception plutôt que des mouvements de stock – ils sont liés au bon de commande et offrent une piste d'audit appropriée."
|
|
513
|
+
},
|
|
514
|
+
"11": {
|
|
515
|
+
"title": "Écritures de journal",
|
|
516
|
+
"description": "Les écritures de journal sont des ajustements comptables manuels – charges à payer, corrections, reclassements, soldes d'ouverture. Chaque écriture doit avoir des débits et crédits équilibrés (total débit = total crédit). Utilisez-les lorsqu'aucun autre type de document ne convient."
|
|
517
|
+
},
|
|
518
|
+
"12": {
|
|
519
|
+
"title": "Paiements des salaires",
|
|
520
|
+
"description": "Lambda ERP gère les salaires à l'aide des outils comptables existants. Comptabilisez d'abord la charge salariale : créez une écriture de journal qui débite la Charge salariale et crédite les Salaires à payer pour le montant total de la paie. Payez ensuite les employés : créez une autre écriture de journal (ou un paiement) qui débite les Salaires à payer et crédite votre compte bancaire. Ce processus en deux étapes garde vos comptes exacts – la charge est enregistrée dans la bonne période et la sortie de trésorerie est suivie séparément.",
|
|
521
|
+
"tip": "Vous pouvez demander à l'assistant IA de le faire pour vous : « Comptabilise 15 000 de salaires pour avril » suivi de « Paie les salaires d'avril depuis la banque ». Il créera automatiquement les bonnes écritures de journal."
|
|
522
|
+
},
|
|
523
|
+
"13": {
|
|
524
|
+
"title": "Retours et avoirs",
|
|
525
|
+
"description": "Lorsqu'un client retourne des marchandises ou que vous devez émettre un avoir, créez un retour. Les retours utilisent le même type de document avec des quantités négatives. Ouvrez une facture de vente validée et créez un avoir (retour de facture de vente) – cela inverse les écritures comptables et réduit le montant dû de la facture d'origine. Pour le stock, créez un retour de bon de livraison pour réintégrer les marchandises en entrepôt. Côté achats, créez une note de débit (retour de facture d'achat) pour inverser une facture fournisseur, ou un retour de bon de réception pour renvoyer des marchandises.",
|
|
526
|
+
"tip": "Un avoir est simplement une facture de vente avec is_return=1 et des quantités négatives. La même logique comptable s'applique – les montants négatifs basculent automatiquement du bon côté débit/crédit. Pour un retour de vente complet, vous avez besoin à la fois d'un avoir (financier) et d'un retour de bon de livraison (stock)."
|
|
527
|
+
},
|
|
528
|
+
"14": {
|
|
529
|
+
"title": "Exécuter les rapports",
|
|
530
|
+
"description": "Vérifiez vos comptes. Le Compte de résultat montre les produits face aux charges et le résultat net d'une période. Le Bilan montre votre situation financière (actif = passif + capitaux propres). La Balance âgée clients montre qui vous doit de l'argent et le retard. La Balance âgée fournisseurs montre ce que vous devez aux fournisseurs. La Balance comptable vérifie l'intégrité de la partie double. Le Grand livre montre chaque écriture individuelle. Le Solde de stock montre l'inventaire actuel."
|
|
531
|
+
},
|
|
532
|
+
"15": {
|
|
533
|
+
"title": "Travailler en devises étrangères",
|
|
534
|
+
"description": "Vos comptes sont tenus dans une seule devise de base (choisie à la configuration de la société), mais vous pouvez effectuer des transactions dans n'importe quelle devise. Définissez une devise sur une facture ou un effet – ou attribuez une devise par défaut à un client ou un fournisseur – et le taux de change de cette date est recherché automatiquement et enregistré sur le document. Le document conserve ses montants dans sa propre devise, tandis que le Grand livre comptabilise toujours dans votre devise de base. Lorsque vous encaissez ou payez ultérieurement à un taux différent, le gain ou la perte de change réalisé est comptabilisé automatiquement sur un compte Gain/Perte de change. Vous pouvez même détenir un solde bancaire en devise étrangère et le convertir plus tard au taux de votre banque – l'écart par rapport à sa valeur comptable est alors réalisé. En fin de mois, vous pouvez réévaluer les soldes en devises ouverts au taux de clôture (un gain/perte latent qui s'inverse à la période suivante), et vous pouvez consulter n'importe quel état financier converti dans une autre devise pour l'affichage.",
|
|
535
|
+
"tip": "Le plus simple est de passer par le chat IA – essayez « Crée une facture de vente pour Lumiere Audio en EUR », « Montre-moi le bilan en EUR » ou « Quelle est notre exposition de change latente en fin de mois ? ». Les données de démonstration incluent déjà un client EUR (Lumiere Audio SARL) dont la facture a été encaissée à un taux différent, ainsi qu'une facture fournisseur EUR ouverte – ouvrez le Grand livre pour voir les écritures de change réalisées."
|
|
536
|
+
}
|
|
537
|
+
}
|
|
538
|
+
}
|
|
539
|
+
}
|
|
540
|
+
;
|
|
541
|
+
|
|
542
|
+
export default _default;
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Public entry point for the published @lambda-development/erp-core frontend library.
|
|
3
|
+
*
|
|
4
|
+
* A customer deployment depends on this package, registers its overrides
|
|
5
|
+
* (doctypes, routes, nav, components, branding, API base) in a plugin module,
|
|
6
|
+
* imports the stylesheet, then calls bootstrap(). See the README section
|
|
7
|
+
* "Building a customer deployment on top of the core".
|
|
8
|
+
*
|
|
9
|
+
* Styling: this package follows the "consumer scans source" model. In the
|
|
10
|
+
* customer app:
|
|
11
|
+
* - import "@lambda-development/erp-core/styles.css"
|
|
12
|
+
* - add this package to Tailwind `content`:
|
|
13
|
+
* './node_modules/@lambda-development/erp-core/dist/**\/*.js'
|
|
14
|
+
* - add the preset: presets: [require("@lambda-development/erp-core/tailwind-preset")]
|
|
15
|
+
*/
|
|
16
|
+
export { bootstrap, createAppQueryClient } from './bootstrap';
|
|
17
|
+
export type { BootstrapOptions } from './bootstrap';
|
|
18
|
+
export { AppShell } from './components/layout/app-shell';
|
|
19
|
+
export { buildRoutes, registerRoute } from './routes';
|
|
20
|
+
export { registerDoctype, getDoctypeConfig, getAllDoctypeConfigs, } from './lib/doctypes';
|
|
21
|
+
export type { DoctypeConfig, FieldDef, ChildTableDef, ConversionDef, } from './lib/doctypes';
|
|
22
|
+
export { getNavGroups, registerNavGroup, registerNavItem } from './lib/nav';
|
|
23
|
+
export type { NavGroup, NavItem } from './lib/nav';
|
|
24
|
+
export { registerComponent, getComponent } from './lib/component-registry';
|
|
25
|
+
export { configureBranding, getBranding } from './lib/branding';
|
|
26
|
+
export type { Branding } from './lib/branding';
|
|
27
|
+
export { api, request, ApiError, configureApiBase } from './api/client';
|
|
28
|
+
export { AuthProvider, useAuth } from './contexts/auth-context';
|
|
29
|
+
export type { User } from './contexts/auth-context';
|
|
30
|
+
export { default as i18n, SUPPORTED_LANGUAGES, getStoredLanguage, } from './i18n';
|
|
31
|
+
export type { LanguageCode } from './i18n';
|