@fieldia/viewer 0.8.0 → 0.9.1
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 +10 -1
- package/bundle/fieldia.js +4 -609
- package/bundle/fieldia.js.map +4 -4
- package/package.json +3 -3
- package/src/lib/custom-filter.d.mts +16 -0
- package/src/lib/custom-filter.d.ts +16 -0
- package/src/lib/custom-filter.js +112 -0
- package/src/lib/custom-filter.js.map +1 -0
- package/src/lib/custom-filter.mjs +109 -0
- package/src/lib/custom-filter.mjs.map +1 -0
- package/src/lib/dom.d.mts +2 -0
- package/src/lib/dom.d.ts +2 -0
- package/src/lib/dom.js +3 -0
- package/src/lib/dom.js.map +1 -0
- package/src/lib/dom.mjs +2 -0
- package/src/lib/dom.mjs.map +1 -0
- package/src/lib/favourites.d.mts +32 -0
- package/src/lib/favourites.d.ts +32 -0
- package/src/lib/favourites.js +74 -0
- package/src/lib/favourites.js.map +1 -0
- package/src/lib/favourites.mjs +69 -0
- package/src/lib/favourites.mjs.map +1 -0
- package/src/lib/labels.d.mts +46 -0
- package/src/lib/labels.d.ts +46 -0
- package/src/lib/labels.js +156 -0
- package/src/lib/labels.js.map +1 -1
- package/src/lib/labels.mjs +156 -0
- package/src/lib/labels.mjs.map +1 -1
- package/src/lib/list-groups.d.mts +29 -0
- package/src/lib/list-groups.d.ts +29 -0
- package/src/lib/list-groups.js +86 -0
- package/src/lib/list-groups.js.map +1 -0
- package/src/lib/list-groups.mjs +83 -0
- package/src/lib/list-groups.mjs.map +1 -0
- package/src/lib/list-styles.d.mts +4 -0
- package/src/lib/list-styles.d.ts +4 -0
- package/src/lib/list-styles.js +108 -0
- package/src/lib/list-styles.js.map +1 -0
- package/src/lib/list-styles.mjs +104 -0
- package/src/lib/list-styles.mjs.map +1 -0
- package/src/lib/list.d.mts +34 -0
- package/src/lib/list.d.ts +34 -0
- package/src/lib/list.js +282 -0
- package/src/lib/list.js.map +1 -0
- package/src/lib/list.mjs +279 -0
- package/src/lib/list.mjs.map +1 -0
- package/src/lib/search-bar.d.mts +30 -0
- package/src/lib/search-bar.d.ts +30 -0
- package/src/lib/search-bar.js +205 -0
- package/src/lib/search-bar.js.map +1 -0
- package/src/lib/search-bar.mjs +201 -0
- package/src/lib/search-bar.mjs.map +1 -0
- package/src/lib/viewer.d.mts +3 -1
- package/src/lib/viewer.d.ts +3 -1
- package/src/lib/viewer.js +26 -1
- package/src/lib/viewer.js.map +1 -1
- package/src/lib/viewer.mjs +26 -1
- package/src/lib/viewer.mjs.map +1 -1
package/src/lib/labels.d.ts
CHANGED
|
@@ -37,6 +37,52 @@ export interface ViewerLabels {
|
|
|
37
37
|
checkFields: string;
|
|
38
38
|
/** The banner when the server cannot be reached. */
|
|
39
39
|
offline: string;
|
|
40
|
+
/** A list: its pages (`{from}`, `{to}`, `{total}`), what is chosen in it, and an empty one. */
|
|
41
|
+
previousPage: string;
|
|
42
|
+
nextPage: string;
|
|
43
|
+
range: string;
|
|
44
|
+
selected: string;
|
|
45
|
+
clearSelection: string;
|
|
46
|
+
selectAll: string;
|
|
47
|
+
selectRecord: string;
|
|
48
|
+
noRecords: string;
|
|
49
|
+
loadFailed: string;
|
|
50
|
+
/**
|
|
51
|
+
* A list's search bar: the box (`{field}` and `{text}` in a suggestion), its
|
|
52
|
+
* chips (`{label}`), the Filters, Group By and Favourites menu (`{name}`),
|
|
53
|
+
* and the conditions a custom filter offers.
|
|
54
|
+
*/
|
|
55
|
+
search: string;
|
|
56
|
+
searchLabel: string;
|
|
57
|
+
searchFor: string;
|
|
58
|
+
searchOptions: string;
|
|
59
|
+
filters: string;
|
|
60
|
+
groupBy: string;
|
|
61
|
+
favourites: string;
|
|
62
|
+
or: string;
|
|
63
|
+
removeFacet: string;
|
|
64
|
+
addCustomFilter: string;
|
|
65
|
+
field: string;
|
|
66
|
+
condition: string;
|
|
67
|
+
value: string;
|
|
68
|
+
apply: string;
|
|
69
|
+
saveSearch: string;
|
|
70
|
+
searchName: string;
|
|
71
|
+
useByDefault: string;
|
|
72
|
+
deleteFavourite: string;
|
|
73
|
+
noFavourites: string;
|
|
74
|
+
opIs: string;
|
|
75
|
+
opIsNot: string;
|
|
76
|
+
opContains: string;
|
|
77
|
+
opGreater: string;
|
|
78
|
+
opLess: string;
|
|
79
|
+
opSet: string;
|
|
80
|
+
opNotSet: string;
|
|
81
|
+
yes: string;
|
|
82
|
+
no: string;
|
|
83
|
+
/** A list's groups: the one of records with no value, and the rest of a group's records (`{n}`). */
|
|
84
|
+
none: string;
|
|
85
|
+
loadMore: string;
|
|
40
86
|
}
|
|
41
87
|
export declare const VIEWER_LABELS: Record<Locale, ViewerLabels>;
|
|
42
88
|
/** English, kept under its old name. */
|
package/src/lib/labels.js
CHANGED
|
@@ -31,6 +31,45 @@ exports.VIEWER_LABELS = {
|
|
|
31
31
|
notSent: 'Not sent',
|
|
32
32
|
checkFields: '{what}. Check: {fields}',
|
|
33
33
|
offline: 'Could not reach the server. Your changes are still here.',
|
|
34
|
+
previousPage: 'Previous page',
|
|
35
|
+
nextPage: 'Next page',
|
|
36
|
+
range: '{from}–{to} / {total}',
|
|
37
|
+
selected: '{n} selected',
|
|
38
|
+
clearSelection: 'Clear',
|
|
39
|
+
selectAll: 'Select all',
|
|
40
|
+
selectRecord: 'Select {name}',
|
|
41
|
+
noRecords: 'No records match.',
|
|
42
|
+
loadFailed: 'Could not load the records.',
|
|
43
|
+
search: 'Search…',
|
|
44
|
+
searchLabel: 'Search',
|
|
45
|
+
searchFor: 'Search {field} for: {text}',
|
|
46
|
+
searchOptions: 'Search options',
|
|
47
|
+
filters: 'Filters',
|
|
48
|
+
groupBy: 'Group By',
|
|
49
|
+
favourites: 'Favourites',
|
|
50
|
+
or: 'or',
|
|
51
|
+
removeFacet: 'Remove {label}',
|
|
52
|
+
addCustomFilter: 'Add a custom filter',
|
|
53
|
+
field: 'Field',
|
|
54
|
+
condition: 'Condition',
|
|
55
|
+
value: 'Value',
|
|
56
|
+
apply: 'Apply',
|
|
57
|
+
saveSearch: 'Save current search',
|
|
58
|
+
searchName: 'Name of the search',
|
|
59
|
+
useByDefault: 'Use by default',
|
|
60
|
+
deleteFavourite: 'Delete {name}',
|
|
61
|
+
noFavourites: 'No saved searches yet.',
|
|
62
|
+
opIs: 'is',
|
|
63
|
+
opIsNot: 'is not',
|
|
64
|
+
opContains: 'contains',
|
|
65
|
+
opGreater: 'greater than',
|
|
66
|
+
opLess: 'less than',
|
|
67
|
+
opSet: 'is set',
|
|
68
|
+
opNotSet: 'is not set',
|
|
69
|
+
yes: 'Yes',
|
|
70
|
+
no: 'No',
|
|
71
|
+
none: 'None',
|
|
72
|
+
loadMore: 'Show {n} more',
|
|
34
73
|
},
|
|
35
74
|
ar: {
|
|
36
75
|
save: 'حفظ',
|
|
@@ -61,6 +100,45 @@ exports.VIEWER_LABELS = {
|
|
|
61
100
|
notSent: 'لم يُرسل',
|
|
62
101
|
checkFields: '{what}. راجِع: {fields}',
|
|
63
102
|
offline: 'تعذّر الوصول إلى الخادم. تعديلاتك ما زالت هنا.',
|
|
103
|
+
previousPage: 'الصفحة السابقة',
|
|
104
|
+
nextPage: 'الصفحة التالية',
|
|
105
|
+
range: '{from}–{to} من {total}',
|
|
106
|
+
selected: 'تم تحديد {n}',
|
|
107
|
+
clearSelection: 'إلغاء التحديد',
|
|
108
|
+
selectAll: 'تحديد الكل',
|
|
109
|
+
selectRecord: 'تحديد {name}',
|
|
110
|
+
noRecords: 'لا توجد سجلات مطابقة.',
|
|
111
|
+
loadFailed: 'تعذّر تحميل السجلات.',
|
|
112
|
+
search: 'بحث…',
|
|
113
|
+
searchLabel: 'بحث',
|
|
114
|
+
searchFor: 'ابحث في {field} عن: {text}',
|
|
115
|
+
searchOptions: 'خيارات البحث',
|
|
116
|
+
filters: 'عوامل التصفية',
|
|
117
|
+
groupBy: 'تجميع حسب',
|
|
118
|
+
favourites: 'المفضلة',
|
|
119
|
+
or: 'أو',
|
|
120
|
+
removeFacet: 'إزالة {label}',
|
|
121
|
+
addCustomFilter: 'إضافة عامل تصفية مخصص',
|
|
122
|
+
field: 'الحقل',
|
|
123
|
+
condition: 'الشرط',
|
|
124
|
+
value: 'القيمة',
|
|
125
|
+
apply: 'تطبيق',
|
|
126
|
+
saveSearch: 'حفظ البحث الحالي',
|
|
127
|
+
searchName: 'اسم البحث',
|
|
128
|
+
useByDefault: 'استخدامه افتراضيًا',
|
|
129
|
+
deleteFavourite: 'حذف {name}',
|
|
130
|
+
noFavourites: 'لا توجد عمليات بحث محفوظة بعد.',
|
|
131
|
+
opIs: 'يساوي',
|
|
132
|
+
opIsNot: 'لا يساوي',
|
|
133
|
+
opContains: 'يحتوي على',
|
|
134
|
+
opGreater: 'أكبر من',
|
|
135
|
+
opLess: 'أصغر من',
|
|
136
|
+
opSet: 'محدد',
|
|
137
|
+
opNotSet: 'غير محدد',
|
|
138
|
+
yes: 'نعم',
|
|
139
|
+
no: 'لا',
|
|
140
|
+
none: 'بلا قيمة',
|
|
141
|
+
loadMore: 'عرض {n} أخرى',
|
|
64
142
|
},
|
|
65
143
|
de: {
|
|
66
144
|
save: 'Speichern',
|
|
@@ -91,6 +169,45 @@ exports.VIEWER_LABELS = {
|
|
|
91
169
|
notSent: 'Nicht gesendet',
|
|
92
170
|
checkFields: '{what}. Bitte prüfen: {fields}',
|
|
93
171
|
offline: 'Der Server ist nicht erreichbar. Ihre Änderungen sind noch da.',
|
|
172
|
+
previousPage: 'Vorherige Seite',
|
|
173
|
+
nextPage: 'Nächste Seite',
|
|
174
|
+
range: '{from}–{to} / {total}',
|
|
175
|
+
selected: '{n} ausgewählt',
|
|
176
|
+
clearSelection: 'Auswahl aufheben',
|
|
177
|
+
selectAll: 'Alle auswählen',
|
|
178
|
+
selectRecord: '{name} auswählen',
|
|
179
|
+
noRecords: 'Keine passenden Einträge.',
|
|
180
|
+
loadFailed: 'Die Einträge konnten nicht geladen werden.',
|
|
181
|
+
search: 'Suchen…',
|
|
182
|
+
searchLabel: 'Suchen',
|
|
183
|
+
searchFor: '{field} durchsuchen nach: {text}',
|
|
184
|
+
searchOptions: 'Suchoptionen',
|
|
185
|
+
filters: 'Filter',
|
|
186
|
+
groupBy: 'Gruppieren nach',
|
|
187
|
+
favourites: 'Favoriten',
|
|
188
|
+
or: 'oder',
|
|
189
|
+
removeFacet: '{label} entfernen',
|
|
190
|
+
addCustomFilter: 'Eigenen Filter hinzufügen',
|
|
191
|
+
field: 'Feld',
|
|
192
|
+
condition: 'Bedingung',
|
|
193
|
+
value: 'Wert',
|
|
194
|
+
apply: 'Anwenden',
|
|
195
|
+
saveSearch: 'Aktuelle Suche speichern',
|
|
196
|
+
searchName: 'Name der Suche',
|
|
197
|
+
useByDefault: 'Standardmäßig verwenden',
|
|
198
|
+
deleteFavourite: '{name} löschen',
|
|
199
|
+
noFavourites: 'Noch keine gespeicherten Suchen.',
|
|
200
|
+
opIs: 'ist',
|
|
201
|
+
opIsNot: 'ist nicht',
|
|
202
|
+
opContains: 'enthält',
|
|
203
|
+
opGreater: 'größer als',
|
|
204
|
+
opLess: 'kleiner als',
|
|
205
|
+
opSet: 'ist gesetzt',
|
|
206
|
+
opNotSet: 'ist nicht gesetzt',
|
|
207
|
+
yes: 'Ja',
|
|
208
|
+
no: 'Nein',
|
|
209
|
+
none: 'Ohne Angabe',
|
|
210
|
+
loadMore: '{n} weitere anzeigen',
|
|
94
211
|
},
|
|
95
212
|
fr: {
|
|
96
213
|
save: 'Enregistrer',
|
|
@@ -121,6 +238,45 @@ exports.VIEWER_LABELS = {
|
|
|
121
238
|
notSent: 'Non envoyé',
|
|
122
239
|
checkFields: '{what}. À vérifier : {fields}',
|
|
123
240
|
offline: 'Le serveur est injoignable. Vos modifications sont toujours là.',
|
|
241
|
+
previousPage: 'Page précédente',
|
|
242
|
+
nextPage: 'Page suivante',
|
|
243
|
+
range: '{from}–{to} / {total}',
|
|
244
|
+
selected: '{n} sélectionné(s)',
|
|
245
|
+
clearSelection: 'Désélectionner',
|
|
246
|
+
selectAll: 'Tout sélectionner',
|
|
247
|
+
selectRecord: 'Sélectionner {name}',
|
|
248
|
+
noRecords: 'Aucun enregistrement ne correspond.',
|
|
249
|
+
loadFailed: 'Impossible de charger les enregistrements.',
|
|
250
|
+
search: 'Rechercher…',
|
|
251
|
+
searchLabel: 'Rechercher',
|
|
252
|
+
searchFor: 'Rechercher {field} : {text}',
|
|
253
|
+
searchOptions: 'Options de recherche',
|
|
254
|
+
filters: 'Filtres',
|
|
255
|
+
groupBy: 'Regrouper par',
|
|
256
|
+
favourites: 'Favoris',
|
|
257
|
+
or: 'ou',
|
|
258
|
+
removeFacet: 'Retirer {label}',
|
|
259
|
+
addCustomFilter: 'Ajouter un filtre personnalisé',
|
|
260
|
+
field: 'Champ',
|
|
261
|
+
condition: 'Condition',
|
|
262
|
+
value: 'Valeur',
|
|
263
|
+
apply: 'Appliquer',
|
|
264
|
+
saveSearch: 'Enregistrer la recherche',
|
|
265
|
+
searchName: 'Nom de la recherche',
|
|
266
|
+
useByDefault: 'Utiliser par défaut',
|
|
267
|
+
deleteFavourite: 'Supprimer {name}',
|
|
268
|
+
noFavourites: 'Aucune recherche enregistrée.',
|
|
269
|
+
opIs: 'est',
|
|
270
|
+
opIsNot: 'n’est pas',
|
|
271
|
+
opContains: 'contient',
|
|
272
|
+
opGreater: 'supérieur à',
|
|
273
|
+
opLess: 'inférieur à',
|
|
274
|
+
opSet: 'est défini',
|
|
275
|
+
opNotSet: 'n’est pas défini',
|
|
276
|
+
yes: 'Oui',
|
|
277
|
+
no: 'Non',
|
|
278
|
+
none: 'Aucun',
|
|
279
|
+
loadMore: 'Afficher {n} de plus',
|
|
124
280
|
},
|
|
125
281
|
};
|
|
126
282
|
/** English, kept under its old name. */
|
package/src/lib/labels.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"labels.js","sourceRoot":"","sources":["../../../../../libs/viewer/src/lib/labels.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"labels.js","sourceRoot":"","sources":["../../../../../libs/viewer/src/lib/labels.ts"],"names":[],"mappings":"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"}
|
package/src/lib/labels.mjs
CHANGED
|
@@ -28,6 +28,45 @@ export const VIEWER_LABELS = {
|
|
|
28
28
|
notSent: 'Not sent',
|
|
29
29
|
checkFields: '{what}. Check: {fields}',
|
|
30
30
|
offline: 'Could not reach the server. Your changes are still here.',
|
|
31
|
+
previousPage: 'Previous page',
|
|
32
|
+
nextPage: 'Next page',
|
|
33
|
+
range: '{from}–{to} / {total}',
|
|
34
|
+
selected: '{n} selected',
|
|
35
|
+
clearSelection: 'Clear',
|
|
36
|
+
selectAll: 'Select all',
|
|
37
|
+
selectRecord: 'Select {name}',
|
|
38
|
+
noRecords: 'No records match.',
|
|
39
|
+
loadFailed: 'Could not load the records.',
|
|
40
|
+
search: 'Search…',
|
|
41
|
+
searchLabel: 'Search',
|
|
42
|
+
searchFor: 'Search {field} for: {text}',
|
|
43
|
+
searchOptions: 'Search options',
|
|
44
|
+
filters: 'Filters',
|
|
45
|
+
groupBy: 'Group By',
|
|
46
|
+
favourites: 'Favourites',
|
|
47
|
+
or: 'or',
|
|
48
|
+
removeFacet: 'Remove {label}',
|
|
49
|
+
addCustomFilter: 'Add a custom filter',
|
|
50
|
+
field: 'Field',
|
|
51
|
+
condition: 'Condition',
|
|
52
|
+
value: 'Value',
|
|
53
|
+
apply: 'Apply',
|
|
54
|
+
saveSearch: 'Save current search',
|
|
55
|
+
searchName: 'Name of the search',
|
|
56
|
+
useByDefault: 'Use by default',
|
|
57
|
+
deleteFavourite: 'Delete {name}',
|
|
58
|
+
noFavourites: 'No saved searches yet.',
|
|
59
|
+
opIs: 'is',
|
|
60
|
+
opIsNot: 'is not',
|
|
61
|
+
opContains: 'contains',
|
|
62
|
+
opGreater: 'greater than',
|
|
63
|
+
opLess: 'less than',
|
|
64
|
+
opSet: 'is set',
|
|
65
|
+
opNotSet: 'is not set',
|
|
66
|
+
yes: 'Yes',
|
|
67
|
+
no: 'No',
|
|
68
|
+
none: 'None',
|
|
69
|
+
loadMore: 'Show {n} more',
|
|
31
70
|
},
|
|
32
71
|
ar: {
|
|
33
72
|
save: 'حفظ',
|
|
@@ -58,6 +97,45 @@ export const VIEWER_LABELS = {
|
|
|
58
97
|
notSent: 'لم يُرسل',
|
|
59
98
|
checkFields: '{what}. راجِع: {fields}',
|
|
60
99
|
offline: 'تعذّر الوصول إلى الخادم. تعديلاتك ما زالت هنا.',
|
|
100
|
+
previousPage: 'الصفحة السابقة',
|
|
101
|
+
nextPage: 'الصفحة التالية',
|
|
102
|
+
range: '{from}–{to} من {total}',
|
|
103
|
+
selected: 'تم تحديد {n}',
|
|
104
|
+
clearSelection: 'إلغاء التحديد',
|
|
105
|
+
selectAll: 'تحديد الكل',
|
|
106
|
+
selectRecord: 'تحديد {name}',
|
|
107
|
+
noRecords: 'لا توجد سجلات مطابقة.',
|
|
108
|
+
loadFailed: 'تعذّر تحميل السجلات.',
|
|
109
|
+
search: 'بحث…',
|
|
110
|
+
searchLabel: 'بحث',
|
|
111
|
+
searchFor: 'ابحث في {field} عن: {text}',
|
|
112
|
+
searchOptions: 'خيارات البحث',
|
|
113
|
+
filters: 'عوامل التصفية',
|
|
114
|
+
groupBy: 'تجميع حسب',
|
|
115
|
+
favourites: 'المفضلة',
|
|
116
|
+
or: 'أو',
|
|
117
|
+
removeFacet: 'إزالة {label}',
|
|
118
|
+
addCustomFilter: 'إضافة عامل تصفية مخصص',
|
|
119
|
+
field: 'الحقل',
|
|
120
|
+
condition: 'الشرط',
|
|
121
|
+
value: 'القيمة',
|
|
122
|
+
apply: 'تطبيق',
|
|
123
|
+
saveSearch: 'حفظ البحث الحالي',
|
|
124
|
+
searchName: 'اسم البحث',
|
|
125
|
+
useByDefault: 'استخدامه افتراضيًا',
|
|
126
|
+
deleteFavourite: 'حذف {name}',
|
|
127
|
+
noFavourites: 'لا توجد عمليات بحث محفوظة بعد.',
|
|
128
|
+
opIs: 'يساوي',
|
|
129
|
+
opIsNot: 'لا يساوي',
|
|
130
|
+
opContains: 'يحتوي على',
|
|
131
|
+
opGreater: 'أكبر من',
|
|
132
|
+
opLess: 'أصغر من',
|
|
133
|
+
opSet: 'محدد',
|
|
134
|
+
opNotSet: 'غير محدد',
|
|
135
|
+
yes: 'نعم',
|
|
136
|
+
no: 'لا',
|
|
137
|
+
none: 'بلا قيمة',
|
|
138
|
+
loadMore: 'عرض {n} أخرى',
|
|
61
139
|
},
|
|
62
140
|
de: {
|
|
63
141
|
save: 'Speichern',
|
|
@@ -88,6 +166,45 @@ export const VIEWER_LABELS = {
|
|
|
88
166
|
notSent: 'Nicht gesendet',
|
|
89
167
|
checkFields: '{what}. Bitte prüfen: {fields}',
|
|
90
168
|
offline: 'Der Server ist nicht erreichbar. Ihre Änderungen sind noch da.',
|
|
169
|
+
previousPage: 'Vorherige Seite',
|
|
170
|
+
nextPage: 'Nächste Seite',
|
|
171
|
+
range: '{from}–{to} / {total}',
|
|
172
|
+
selected: '{n} ausgewählt',
|
|
173
|
+
clearSelection: 'Auswahl aufheben',
|
|
174
|
+
selectAll: 'Alle auswählen',
|
|
175
|
+
selectRecord: '{name} auswählen',
|
|
176
|
+
noRecords: 'Keine passenden Einträge.',
|
|
177
|
+
loadFailed: 'Die Einträge konnten nicht geladen werden.',
|
|
178
|
+
search: 'Suchen…',
|
|
179
|
+
searchLabel: 'Suchen',
|
|
180
|
+
searchFor: '{field} durchsuchen nach: {text}',
|
|
181
|
+
searchOptions: 'Suchoptionen',
|
|
182
|
+
filters: 'Filter',
|
|
183
|
+
groupBy: 'Gruppieren nach',
|
|
184
|
+
favourites: 'Favoriten',
|
|
185
|
+
or: 'oder',
|
|
186
|
+
removeFacet: '{label} entfernen',
|
|
187
|
+
addCustomFilter: 'Eigenen Filter hinzufügen',
|
|
188
|
+
field: 'Feld',
|
|
189
|
+
condition: 'Bedingung',
|
|
190
|
+
value: 'Wert',
|
|
191
|
+
apply: 'Anwenden',
|
|
192
|
+
saveSearch: 'Aktuelle Suche speichern',
|
|
193
|
+
searchName: 'Name der Suche',
|
|
194
|
+
useByDefault: 'Standardmäßig verwenden',
|
|
195
|
+
deleteFavourite: '{name} löschen',
|
|
196
|
+
noFavourites: 'Noch keine gespeicherten Suchen.',
|
|
197
|
+
opIs: 'ist',
|
|
198
|
+
opIsNot: 'ist nicht',
|
|
199
|
+
opContains: 'enthält',
|
|
200
|
+
opGreater: 'größer als',
|
|
201
|
+
opLess: 'kleiner als',
|
|
202
|
+
opSet: 'ist gesetzt',
|
|
203
|
+
opNotSet: 'ist nicht gesetzt',
|
|
204
|
+
yes: 'Ja',
|
|
205
|
+
no: 'Nein',
|
|
206
|
+
none: 'Ohne Angabe',
|
|
207
|
+
loadMore: '{n} weitere anzeigen',
|
|
91
208
|
},
|
|
92
209
|
fr: {
|
|
93
210
|
save: 'Enregistrer',
|
|
@@ -118,6 +235,45 @@ export const VIEWER_LABELS = {
|
|
|
118
235
|
notSent: 'Non envoyé',
|
|
119
236
|
checkFields: '{what}. À vérifier : {fields}',
|
|
120
237
|
offline: 'Le serveur est injoignable. Vos modifications sont toujours là.',
|
|
238
|
+
previousPage: 'Page précédente',
|
|
239
|
+
nextPage: 'Page suivante',
|
|
240
|
+
range: '{from}–{to} / {total}',
|
|
241
|
+
selected: '{n} sélectionné(s)',
|
|
242
|
+
clearSelection: 'Désélectionner',
|
|
243
|
+
selectAll: 'Tout sélectionner',
|
|
244
|
+
selectRecord: 'Sélectionner {name}',
|
|
245
|
+
noRecords: 'Aucun enregistrement ne correspond.',
|
|
246
|
+
loadFailed: 'Impossible de charger les enregistrements.',
|
|
247
|
+
search: 'Rechercher…',
|
|
248
|
+
searchLabel: 'Rechercher',
|
|
249
|
+
searchFor: 'Rechercher {field} : {text}',
|
|
250
|
+
searchOptions: 'Options de recherche',
|
|
251
|
+
filters: 'Filtres',
|
|
252
|
+
groupBy: 'Regrouper par',
|
|
253
|
+
favourites: 'Favoris',
|
|
254
|
+
or: 'ou',
|
|
255
|
+
removeFacet: 'Retirer {label}',
|
|
256
|
+
addCustomFilter: 'Ajouter un filtre personnalisé',
|
|
257
|
+
field: 'Champ',
|
|
258
|
+
condition: 'Condition',
|
|
259
|
+
value: 'Valeur',
|
|
260
|
+
apply: 'Appliquer',
|
|
261
|
+
saveSearch: 'Enregistrer la recherche',
|
|
262
|
+
searchName: 'Nom de la recherche',
|
|
263
|
+
useByDefault: 'Utiliser par défaut',
|
|
264
|
+
deleteFavourite: 'Supprimer {name}',
|
|
265
|
+
noFavourites: 'Aucune recherche enregistrée.',
|
|
266
|
+
opIs: 'est',
|
|
267
|
+
opIsNot: 'n’est pas',
|
|
268
|
+
opContains: 'contient',
|
|
269
|
+
opGreater: 'supérieur à',
|
|
270
|
+
opLess: 'inférieur à',
|
|
271
|
+
opSet: 'est défini',
|
|
272
|
+
opNotSet: 'n’est pas défini',
|
|
273
|
+
yes: 'Oui',
|
|
274
|
+
no: 'Non',
|
|
275
|
+
none: 'Aucun',
|
|
276
|
+
loadMore: 'Afficher {n} de plus',
|
|
121
277
|
},
|
|
122
278
|
};
|
|
123
279
|
/** English, kept under its old name. */
|
package/src/lib/labels.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"labels.mjs","sourceRoot":"","sources":["../../../../../libs/viewer/src/lib/labels.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"labels.mjs","sourceRoot":"","sources":["../../../../../libs/viewer/src/lib/labels.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { DataSource, Group, Page, RecordId, ResolvedFilter, SortOrder, Value } from '@fieldia/core';
|
|
2
|
+
import type { El } from './dom.mjs';
|
|
3
|
+
import type { ViewerLabels } from './labels.mjs';
|
|
4
|
+
export type Row = {
|
|
5
|
+
id: RecordId;
|
|
6
|
+
values: Record<string, Value>;
|
|
7
|
+
};
|
|
8
|
+
export interface GroupContext {
|
|
9
|
+
page: Page;
|
|
10
|
+
el: El;
|
|
11
|
+
labels: ViewerLabels;
|
|
12
|
+
fill: (template: string, values: Record<string, string | number>) => string;
|
|
13
|
+
dataSource: DataSource;
|
|
14
|
+
model: string;
|
|
15
|
+
fields: string[];
|
|
16
|
+
columns: number;
|
|
17
|
+
pageSize: number;
|
|
18
|
+
sort: () => SortOrder[];
|
|
19
|
+
/** A record's row, at a depth under its groups. */
|
|
20
|
+
recordRow: (record: Row, level: number) => HTMLTableRowElement;
|
|
21
|
+
/** Rows came or went. */
|
|
22
|
+
changed: () => void;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* A group's row: its name and how many records it holds. Opened, it shows
|
|
26
|
+
* the next field's groups under it, or at the last field its records, a page
|
|
27
|
+
* at a time; closed, everything under it goes.
|
|
28
|
+
*/
|
|
29
|
+
export declare function groupRow(context: GroupContext, group: Group, level: number, within: ResolvedFilter[], grouping: string[]): HTMLTableRowElement;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { DataSource, Group, Page, RecordId, ResolvedFilter, SortOrder, Value } from '@fieldia/core';
|
|
2
|
+
import type { El } from './dom';
|
|
3
|
+
import type { ViewerLabels } from './labels';
|
|
4
|
+
export type Row = {
|
|
5
|
+
id: RecordId;
|
|
6
|
+
values: Record<string, Value>;
|
|
7
|
+
};
|
|
8
|
+
export interface GroupContext {
|
|
9
|
+
page: Page;
|
|
10
|
+
el: El;
|
|
11
|
+
labels: ViewerLabels;
|
|
12
|
+
fill: (template: string, values: Record<string, string | number>) => string;
|
|
13
|
+
dataSource: DataSource;
|
|
14
|
+
model: string;
|
|
15
|
+
fields: string[];
|
|
16
|
+
columns: number;
|
|
17
|
+
pageSize: number;
|
|
18
|
+
sort: () => SortOrder[];
|
|
19
|
+
/** A record's row, at a depth under its groups. */
|
|
20
|
+
recordRow: (record: Row, level: number) => HTMLTableRowElement;
|
|
21
|
+
/** Rows came or went. */
|
|
22
|
+
changed: () => void;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* A group's row: its name and how many records it holds. Opened, it shows
|
|
26
|
+
* the next field's groups under it, or at the last field its records, a page
|
|
27
|
+
* at a time; closed, everything under it goes.
|
|
28
|
+
*/
|
|
29
|
+
export declare function groupRow(context: GroupContext, group: Group, level: number, within: ResolvedFilter[], grouping: string[]): HTMLTableRowElement;
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.groupRow = groupRow;
|
|
4
|
+
/** A group's name as a person reads it: the choice's label, yes or no, the linked record's name, or None. */
|
|
5
|
+
function groupName(context, field, group) {
|
|
6
|
+
const def = context.page.fields[field];
|
|
7
|
+
if (group.value === null)
|
|
8
|
+
return context.labels.none;
|
|
9
|
+
if (def.type === 'selection')
|
|
10
|
+
return def.options.find((o) => o.value === group.value)?.label ?? group.label;
|
|
11
|
+
if (def.type === 'boolean')
|
|
12
|
+
return group.value ? context.labels.yes : context.labels.no;
|
|
13
|
+
return group.label || String(group.value);
|
|
14
|
+
}
|
|
15
|
+
/** Take away every row under a group: its records, its groups and theirs. */
|
|
16
|
+
function closeUnder(tr) {
|
|
17
|
+
const level = Number(tr.dataset['level']);
|
|
18
|
+
let next = tr.nextElementSibling;
|
|
19
|
+
while (next && Number(next.dataset['level'] ?? 0) > level) {
|
|
20
|
+
const after = next.nextElementSibling;
|
|
21
|
+
next.remove();
|
|
22
|
+
next = after;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* A group's row: its name and how many records it holds. Opened, it shows
|
|
27
|
+
* the next field's groups under it, or at the last field its records, a page
|
|
28
|
+
* at a time; closed, everything under it goes.
|
|
29
|
+
*/
|
|
30
|
+
function groupRow(context, group, level, within, grouping) {
|
|
31
|
+
const { el, labels } = context;
|
|
32
|
+
const field = grouping[level];
|
|
33
|
+
const filter = [...within, group.value === null ? { field, op: 'notset', value: null } : { field, op: '=', value: group.value }];
|
|
34
|
+
const toggle = el('button', { type: 'button', class: 'fd-group-toggle', 'aria-expanded': 'false' }, el('span', { class: 'fd-group-label' }, groupName(context, field, group)), ' ', el('span', { class: 'fd-group-count' }, `(${group.count})`));
|
|
35
|
+
const tr = el('tr', { class: 'fd-list-group', 'data-level': String(level), 'aria-level': String(level + 1) }, el('td', { colspan: String(context.columns) }, toggle));
|
|
36
|
+
tr.style.setProperty('--fd-level', String(level));
|
|
37
|
+
let opening = false;
|
|
38
|
+
async function open() {
|
|
39
|
+
opening = true;
|
|
40
|
+
try {
|
|
41
|
+
const rows = level + 1 < grouping.length
|
|
42
|
+
? (await context.dataSource.groups?.({ model: context.model, field: grouping[level + 1], filter }))?.map((inner) => groupRow(context, inner, level + 1, filter, grouping)) ?? []
|
|
43
|
+
: await recordsFrom(0);
|
|
44
|
+
// Closed, or the list drawn again, while the answer was on its way.
|
|
45
|
+
if (!tr.isConnected || toggle.getAttribute('aria-expanded') !== 'true')
|
|
46
|
+
return;
|
|
47
|
+
tr.after(...rows);
|
|
48
|
+
context.changed();
|
|
49
|
+
}
|
|
50
|
+
finally {
|
|
51
|
+
opening = false;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
/** A page of the group's records, from `offset`, and a row for the rest when there are more. */
|
|
55
|
+
async function recordsFrom(offset) {
|
|
56
|
+
const answer = await context.dataSource.list({ model: context.model, fields: context.fields, filter, sort: context.sort(), offset, limit: context.pageSize });
|
|
57
|
+
const rows = answer.records.map((record) => context.recordRow(record, level + 1));
|
|
58
|
+
const left = answer.total - offset - answer.records.length;
|
|
59
|
+
if (left <= 0)
|
|
60
|
+
return rows;
|
|
61
|
+
const more = el('button', { type: 'button', class: 'fd-button fd-button-link' }, context.fill(labels.loadMore, { n: left }));
|
|
62
|
+
const moreRow = el('tr', { class: 'fd-list-more', 'data-level': String(level + 1) }, el('td', { colspan: String(context.columns) }, more));
|
|
63
|
+
moreRow.style.setProperty('--fd-level', String(level));
|
|
64
|
+
more.addEventListener('click', async () => {
|
|
65
|
+
more.disabled = true;
|
|
66
|
+
const next = await recordsFrom(offset + answer.records.length);
|
|
67
|
+
if (!moreRow.isConnected)
|
|
68
|
+
return;
|
|
69
|
+
moreRow.replaceWith(...next);
|
|
70
|
+
context.changed();
|
|
71
|
+
});
|
|
72
|
+
return [...rows, moreRow];
|
|
73
|
+
}
|
|
74
|
+
toggle.addEventListener('click', () => {
|
|
75
|
+
const opened = toggle.getAttribute('aria-expanded') === 'true';
|
|
76
|
+
toggle.setAttribute('aria-expanded', String(!opened));
|
|
77
|
+
if (opened) {
|
|
78
|
+
closeUnder(tr);
|
|
79
|
+
context.changed();
|
|
80
|
+
}
|
|
81
|
+
else if (!opening)
|
|
82
|
+
void open();
|
|
83
|
+
});
|
|
84
|
+
return tr;
|
|
85
|
+
}
|
|
86
|
+
//# sourceMappingURL=list-groups.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-groups.js","sourceRoot":"","sources":["../../../../../libs/viewer/src/lib/list-groups.ts"],"names":[],"mappings":"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"}
|