@mmlogic/components 0.1.23 → 0.1.25

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.
Files changed (57) hide show
  1. package/dist/cjs/index.cjs.js +2 -0
  2. package/dist/cjs/loader.cjs.js +1 -1
  3. package/dist/cjs/mosterdcomponents.cjs.js +1 -1
  4. package/dist/cjs/mrd-boolean-field_19.cjs.entry.js +3150 -0
  5. package/dist/collection/collection-manifest.json +2 -0
  6. package/dist/collection/components/mrd-field/mrd-field.js +5 -1
  7. package/dist/collection/components/mrd-layout-section/mrd-layout-section.js +715 -0
  8. package/dist/collection/components/mrd-layout-section/mrd-layout-section.scss +339 -0
  9. package/dist/collection/components/mrd-longtext-field/mrd-longtext-field.js +227 -0
  10. package/dist/collection/components/mrd-longtext-field/mrd-longtext-field.scss +78 -0
  11. package/dist/collection/components/mrd-number-field/mrd-number-field.js +2 -2
  12. package/dist/collection/components/mrd-table/mrd-table.js +41 -4
  13. package/dist/collection/components/mrd-table/mrd-table.scss +23 -0
  14. package/dist/collection/components/mrd-text-field/mrd-text-field.js +1 -1
  15. package/dist/collection/components/mrd-textarea-field/mrd-textarea-field.js +1 -1
  16. package/dist/collection/components/mrd-time-field/mrd-time-field.js +1 -1
  17. package/dist/collection/dev/app.js +109 -3
  18. package/dist/collection/dev/example-data.js +324 -0
  19. package/dist/collection/types/client-layout.js +2 -0
  20. package/dist/collection/utils/cell-renderer.js +32 -0
  21. package/dist/components/client-layout.js +1 -1
  22. package/dist/components/mrd-field2.js +1 -1
  23. package/dist/components/mrd-form.js +1 -1
  24. package/dist/components/mrd-layout-section.d.ts +11 -0
  25. package/dist/components/mrd-layout-section.js +1 -0
  26. package/dist/components/mrd-longtext-field.d.ts +11 -0
  27. package/dist/components/mrd-longtext-field.js +1 -0
  28. package/dist/components/mrd-longtext-field2.js +1 -0
  29. package/dist/components/mrd-number-field2.js +1 -1
  30. package/dist/components/mrd-table.js +1 -1
  31. package/dist/components/mrd-table2.js +1 -0
  32. package/dist/components/mrd-text-field2.js +1 -1
  33. package/dist/components/mrd-textarea-field2.js +1 -1
  34. package/dist/components/mrd-time-field2.js +1 -1
  35. package/dist/esm/index.js +2 -0
  36. package/dist/esm/loader.js +1 -1
  37. package/dist/esm/mosterdcomponents.js +1 -1
  38. package/dist/esm/mrd-boolean-field_19.entry.js +3130 -0
  39. package/dist/mosterdcomponents/index.esm.js +1 -1
  40. package/dist/mosterdcomponents/mosterdcomponents.esm.js +1 -1
  41. package/dist/mosterdcomponents/p-a3255fc4.entry.js +1 -0
  42. package/dist/types/components/mrd-layout-section/mrd-layout-section.d.ts +92 -0
  43. package/dist/types/components/mrd-longtext-field/mrd-longtext-field.d.ts +22 -0
  44. package/dist/types/components/mrd-table/mrd-table.d.ts +5 -0
  45. package/dist/types/components.d.ts +224 -8
  46. package/dist/types/types/client-layout.d.ts +22 -1
  47. package/dist/types/utils/cell-renderer.d.ts +9 -1
  48. package/package.json +1 -1
  49. package/dist/cjs/format-DExY8_nu.js +0 -328
  50. package/dist/cjs/mrd-boolean-field_16.cjs.entry.js +0 -1512
  51. package/dist/cjs/mrd-table.cjs.entry.js +0 -882
  52. package/dist/esm/format-CcRjWvcb.js +0 -319
  53. package/dist/esm/mrd-boolean-field_16.entry.js +0 -1495
  54. package/dist/esm/mrd-table.entry.js +0 -880
  55. package/dist/mosterdcomponents/p-16dcbcdf.entry.js +0 -1
  56. package/dist/mosterdcomponents/p-17e5a251.entry.js +0 -1
  57. package/dist/mosterdcomponents/p-CcRjWvcb.js +0 -1
@@ -1,328 +0,0 @@
1
- 'use strict';
2
-
3
- const translations = {
4
- nl: {
5
- required: 'Dit veld is verplicht',
6
- select_placeholder: 'Selecteer een optie',
7
- search_placeholder: 'Zoeken...',
8
- upload_file: 'Bestand uploaden',
9
- choose_file: 'Bestand kiezen',
10
- clear: 'Wissen',
11
- today: 'Vandaag',
12
- invalid_email: 'Voer een geldig e-mailadres in',
13
- invalid_url: 'Voer een geldige URL in',
14
- invalid_number: 'Voer een geldig getal in',
15
- drop_file_here: 'Sleep bestand hierheen of',
16
- browse: 'bladeren',
17
- file_too_large: 'Bestand is te groot',
18
- search_results: 'Zoekresultaten',
19
- no_results: 'Geen resultaten gevonden',
20
- loading: 'Laden...',
21
- submit: 'Opslaan',
22
- cancel: 'Annuleren',
23
- remove: 'Verwijderen',
24
- add: 'Toevoegen',
25
- yes: 'Ja',
26
- no: 'Nee',
27
- // mrd-table footer
28
- table_of: 'van',
29
- download: 'Downloaden',
30
- // mrd-table toolbar
31
- table_filter: 'Filteren',
32
- table_filter_hide: 'Filter verbergen',
33
- table_filter_active: 'actief',
34
- table_filter_clear_all: 'Alle filters wissen',
35
- table_new_record: 'Nieuw record',
36
- table_export_excel: 'Exporteer naar Excel',
37
- // mrd-table filter popup
38
- filter_sorting: 'Sortering',
39
- filter_ascending: 'Oplopend',
40
- filter_descending: 'Aflopend',
41
- filter_section: 'Filter',
42
- filter_apply: 'Toepassen',
43
- filter_clear: 'Wissen',
44
- filter_contains: 'Bevat',
45
- filter_starts_with: 'Begint met',
46
- filter_equals: 'Gelijk aan',
47
- filter_has_value: 'Heeft waarde',
48
- filter_is_empty: 'Is leeg',
49
- filter_is_not_empty: 'Is niet leeg',
50
- filter_exact: 'Exact',
51
- filter_range: 'Bereik',
52
- filter_from: 'Van',
53
- filter_to: 'Tot',
54
- filter_all: 'Alle',
55
- filter_select_all: 'Alles',
56
- filter_select_none: 'Geen',
57
- filter_search_value: 'Zoekwaarde...',
58
- filter_no_support: 'Geen filtering beschikbaar voor dit veldtype.',
59
- // mrd-table textblock
60
- textblock_show_more: 'Meer tonen',
61
- close: 'Sluiten',
62
- },
63
- en: {
64
- required: 'This field is required',
65
- select_placeholder: 'Select an option',
66
- search_placeholder: 'Search...',
67
- upload_file: 'Upload file',
68
- choose_file: 'Choose file',
69
- clear: 'Clear',
70
- today: 'Today',
71
- invalid_email: 'Please enter a valid email address',
72
- invalid_url: 'Please enter a valid URL',
73
- invalid_number: 'Please enter a valid number',
74
- drop_file_here: 'Drop file here or',
75
- browse: 'browse',
76
- file_too_large: 'File is too large',
77
- search_results: 'Search results',
78
- no_results: 'No results found',
79
- loading: 'Loading...',
80
- submit: 'Save',
81
- cancel: 'Cancel',
82
- remove: 'Remove',
83
- add: 'Add',
84
- yes: 'Yes',
85
- no: 'No',
86
- // mrd-table footer
87
- table_of: 'of',
88
- download: 'Download',
89
- // mrd-table toolbar
90
- table_filter: 'Filter',
91
- table_filter_hide: 'Hide filter',
92
- table_filter_active: 'active',
93
- table_filter_clear_all: 'Clear all filters',
94
- table_new_record: 'New record',
95
- table_export_excel: 'Export to Excel',
96
- // mrd-table filter popup
97
- filter_sorting: 'Sorting',
98
- filter_ascending: 'Ascending',
99
- filter_descending: 'Descending',
100
- filter_section: 'Filter',
101
- filter_apply: 'Apply',
102
- filter_clear: 'Clear',
103
- filter_contains: 'Contains',
104
- filter_starts_with: 'Starts with',
105
- filter_equals: 'Equals',
106
- filter_has_value: 'Has value',
107
- filter_is_empty: 'Is empty',
108
- filter_is_not_empty: 'Is not empty',
109
- filter_exact: 'Exact',
110
- filter_range: 'Range',
111
- filter_from: 'From',
112
- filter_to: 'To',
113
- filter_all: 'All',
114
- filter_select_all: 'All',
115
- filter_select_none: 'None',
116
- filter_search_value: 'Search value...',
117
- filter_no_support: 'Filtering is not available for this field type.',
118
- // mrd-table textblock
119
- textblock_show_more: 'Show more',
120
- close: 'Close',
121
- },
122
- ar: {
123
- required: 'هذا الحقل مطلوب',
124
- select_placeholder: 'اختر خياراً',
125
- search_placeholder: 'بحث...',
126
- upload_file: 'رفع ملف',
127
- choose_file: 'اختر ملفاً',
128
- clear: 'مسح',
129
- today: 'اليوم',
130
- invalid_email: 'يرجى إدخال عنوان بريد إلكتروني صحيح',
131
- invalid_url: 'يرجى إدخال رابط صحيح',
132
- invalid_number: 'يرجى إدخال رقم صحيح',
133
- drop_file_here: 'اسحب الملف هنا أو',
134
- browse: 'تصفح',
135
- file_too_large: 'الملف كبير جداً',
136
- search_results: 'نتائج البحث',
137
- no_results: 'لم يتم العثور على نتائج',
138
- loading: 'جار التحميل...',
139
- submit: 'حفظ',
140
- cancel: 'إلغاء',
141
- remove: 'إزالة',
142
- add: 'إضافة',
143
- yes: 'نعم',
144
- no: 'لا',
145
- // mrd-table footer
146
- table_of: 'من أصل',
147
- download: 'تنزيل',
148
- // mrd-table toolbar
149
- table_filter: 'تصفية',
150
- table_filter_hide: 'إخفاء التصفية',
151
- table_filter_active: 'نشط',
152
- table_filter_clear_all: 'مسح جميع الفلاتر',
153
- table_new_record: 'سجل جديد',
154
- table_export_excel: 'تصدير إلى Excel',
155
- // mrd-table filter popup
156
- filter_sorting: 'الترتيب',
157
- filter_ascending: 'تصاعدي',
158
- filter_descending: 'تنازلي',
159
- filter_section: 'تصفية',
160
- filter_apply: 'تطبيق',
161
- filter_clear: 'مسح',
162
- filter_contains: 'يحتوي على',
163
- filter_starts_with: 'يبدأ بـ',
164
- filter_equals: 'يساوي',
165
- filter_has_value: 'له قيمة',
166
- filter_is_empty: 'فارغ',
167
- filter_is_not_empty: 'ليس فارغاً',
168
- filter_exact: 'دقيق',
169
- filter_range: 'نطاق',
170
- filter_from: 'من',
171
- filter_to: 'إلى',
172
- filter_all: 'الكل',
173
- filter_select_all: 'الكل',
174
- filter_select_none: 'لا شيء',
175
- filter_search_value: 'قيمة البحث...',
176
- filter_no_support: 'التصفية غير متاحة لهذا النوع من الحقول.',
177
- // mrd-table textblock
178
- textblock_show_more: 'عرض المزيد',
179
- close: 'إغلاق',
180
- },
181
- fr: {
182
- required: 'Ce champ est obligatoire',
183
- select_placeholder: 'Sélectionner une option',
184
- search_placeholder: 'Rechercher...',
185
- upload_file: 'Télécharger un fichier',
186
- choose_file: 'Choisir un fichier',
187
- clear: 'Effacer',
188
- today: "Aujourd'hui",
189
- invalid_email: 'Veuillez saisir une adresse e-mail valide',
190
- invalid_url: 'Veuillez saisir une URL valide',
191
- invalid_number: 'Veuillez saisir un nombre valide',
192
- drop_file_here: 'Déposez le fichier ici ou',
193
- browse: 'parcourir',
194
- file_too_large: 'Le fichier est trop volumineux',
195
- search_results: 'Résultats de recherche',
196
- no_results: 'Aucun résultat trouvé',
197
- loading: 'Chargement...',
198
- submit: 'Enregistrer',
199
- cancel: 'Annuler',
200
- remove: 'Supprimer',
201
- add: 'Ajouter',
202
- yes: 'Oui',
203
- no: 'Non',
204
- // mrd-table footer
205
- table_of: 'sur',
206
- download: 'Télécharger',
207
- // mrd-table toolbar
208
- table_filter: 'Filtrer',
209
- table_filter_hide: 'Masquer le filtre',
210
- table_filter_active: 'actif',
211
- table_filter_clear_all: 'Effacer tous les filtres',
212
- table_new_record: 'Nouvel enregistrement',
213
- table_export_excel: 'Exporter vers Excel',
214
- // mrd-table filter popup
215
- filter_sorting: 'Tri',
216
- filter_ascending: 'Croissant',
217
- filter_descending: 'Décroissant',
218
- filter_section: 'Filtre',
219
- filter_apply: 'Appliquer',
220
- filter_clear: 'Effacer',
221
- filter_contains: 'Contient',
222
- filter_starts_with: 'Commence par',
223
- filter_equals: 'Égal à',
224
- filter_has_value: 'A une valeur',
225
- filter_is_empty: 'Est vide',
226
- filter_is_not_empty: "N'est pas vide",
227
- filter_exact: 'Exact',
228
- filter_range: 'Plage',
229
- filter_from: 'De',
230
- filter_to: 'À',
231
- filter_all: 'Tous',
232
- filter_select_all: 'Tous',
233
- filter_select_none: 'Aucun',
234
- filter_search_value: 'Valeur de recherche...',
235
- filter_no_support: "Le filtrage n'est pas disponible pour ce type de champ.",
236
- // mrd-table textblock
237
- textblock_show_more: 'Voir plus',
238
- close: 'Fermer',
239
- },
240
- };
241
- function t(key, locale) {
242
- var _a, _b, _c;
243
- const lang = locale.split('-')[0].toLowerCase();
244
- const dict = (_a = translations[lang]) !== null && _a !== void 0 ? _a : translations['en'];
245
- return (_c = (_b = dict[key]) !== null && _b !== void 0 ? _b : translations['en'][key]) !== null && _c !== void 0 ? _c : key;
246
- }
247
-
248
- function formatNumber(value, locale, options) {
249
- if (value === null || value === undefined || isNaN(value))
250
- return '';
251
- return new Intl.NumberFormat(locale, options).format(value);
252
- }
253
- function formatCurrency(amount, currency, locale) {
254
- if (amount === null || amount === undefined || isNaN(amount))
255
- return '';
256
- return new Intl.NumberFormat(locale, {
257
- style: 'currency',
258
- currency,
259
- minimumFractionDigits: 2,
260
- maximumFractionDigits: 2,
261
- }).format(amount);
262
- }
263
- function formatPercentage(value, locale, decimalPrecision = 2) {
264
- if (value === null || value === undefined || isNaN(value))
265
- return '';
266
- return new Intl.NumberFormat(locale, {
267
- style: 'percent',
268
- minimumFractionDigits: decimalPrecision,
269
- maximumFractionDigits: decimalPrecision,
270
- }).format(value);
271
- }
272
- function formatDate(value, locale) {
273
- if (!value)
274
- return '';
275
- const date = typeof value === 'string' ? new Date(value) : value;
276
- if (isNaN(date.getTime()))
277
- return '';
278
- return new Intl.DateTimeFormat(locale, { year: 'numeric', month: '2-digit', day: '2-digit' }).format(date);
279
- }
280
- function formatDateTime(value, locale) {
281
- if (!value)
282
- return '';
283
- const date = typeof value === 'string' ? new Date(value) : value;
284
- if (isNaN(date.getTime()))
285
- return '';
286
- return new Intl.DateTimeFormat(locale, {
287
- year: 'numeric',
288
- month: '2-digit',
289
- day: '2-digit',
290
- hour: '2-digit',
291
- minute: '2-digit',
292
- }).format(date);
293
- }
294
- function formatTime(value, locale) {
295
- if (!value)
296
- return '';
297
- // value is HH:MM or HH:MM:SS
298
- const [hours, minutes] = value.split(':').map(Number);
299
- const date = new Date();
300
- date.setHours(hours, minutes, 0, 0);
301
- return new Intl.DateTimeFormat(locale, { hour: '2-digit', minute: '2-digit' }).format(date);
302
- }
303
- function parseLocalizedNumber(str, locale) {
304
- var _a, _b, _c, _d;
305
- if (!str || !str.trim())
306
- return null;
307
- // Detect decimal and thousands separators from the locale
308
- const parts = new Intl.NumberFormat(locale).formatToParts(1234567.89);
309
- const groupSep = (_b = (_a = parts.find((p) => p.type === 'group')) === null || _a === void 0 ? void 0 : _a.value) !== null && _b !== void 0 ? _b : ',';
310
- const decimalSep = (_d = (_c = parts.find((p) => p.type === 'decimal')) === null || _c === void 0 ? void 0 : _c.value) !== null && _d !== void 0 ? _d : '.';
311
- // Remove group separators, replace decimal separator with '.'
312
- const normalized = str
313
- .replace(new RegExp(`\\${groupSep}`, 'g'), '')
314
- .replace(new RegExp(`\\${decimalSep}`), '.')
315
- .replace('%', '')
316
- .trim();
317
- const parsed = parseFloat(normalized);
318
- return isNaN(parsed) ? null : parsed;
319
- }
320
-
321
- exports.formatCurrency = formatCurrency;
322
- exports.formatDate = formatDate;
323
- exports.formatDateTime = formatDateTime;
324
- exports.formatNumber = formatNumber;
325
- exports.formatPercentage = formatPercentage;
326
- exports.formatTime = formatTime;
327
- exports.parseLocalizedNumber = parseLocalizedNumber;
328
- exports.t = t;