@conduction/nextcloud-vue 0.1.0-beta.13 → 0.1.0-beta.14

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 (30) hide show
  1. package/dist/nextcloud-vue.cjs.js +20518 -1290
  2. package/dist/nextcloud-vue.cjs.js.map +1 -1
  3. package/dist/nextcloud-vue.css +470 -185
  4. package/dist/nextcloud-vue.esm.js +20518 -1290
  5. package/dist/nextcloud-vue.esm.js.map +1 -1
  6. package/l10n/en.json +255 -2
  7. package/l10n/nl.json +247 -2
  8. package/package.json +2 -1
  9. package/src/components/CnAdvancedFormDialog/CnDataTab.vue +1 -4
  10. package/src/components/CnContextMenu/CnContextMenu.vue +1 -1
  11. package/src/components/CnDataTable/CnDataTable.vue +7 -2
  12. package/src/components/CnInfoWidget/CnInfoWidget.vue +0 -1
  13. package/src/components/CnObjectDataWidget/CnObjectDataWidget.vue +2 -2
  14. package/src/components/CnObjectMetadataWidget/CnObjectMetadataWidget.vue +2 -2
  15. package/src/components/CnRowActions/CnRowActions.vue +1 -1
  16. package/src/components/CnSchemaFormDialog/CnSchemaConfigurationTab.vue +36 -34
  17. package/src/components/CnSchemaFormDialog/CnSchemaFormDialog.vue +47 -36
  18. package/src/components/CnSchemaFormDialog/CnSchemaPropertiesTab.vue +29 -22
  19. package/src/components/CnSchemaFormDialog/CnSchemaPropertyActions.vue +170 -163
  20. package/src/components/CnSchemaFormDialog/CnSchemaSecurityTab.vue +473 -116
  21. package/src/components/CnStatsBlock/CnStatsBlock.vue +18 -18
  22. package/src/components/CnTabbedFormDialog/CnTabbedFormDialog.vue +12 -0
  23. package/src/components/CnWidgetWrapper/CnWidgetWrapper.vue +7 -7
  24. package/src/composables/useContextMenu.js +1 -1
  25. package/src/css/CnSchemaFormDialog.css +258 -2
  26. package/src/css/dashboard.css +1 -0
  27. package/src/css/detail-page.css +5 -5
  28. package/src/css/index.css +1 -0
  29. package/src/css/patches.css +20 -0
  30. package/src/store/plugins/search.js +7 -7
package/l10n/nl.json CHANGED
@@ -1,90 +1,243 @@
1
1
  {
2
2
  "translations": {
3
+ "(current date/time)": "(huidige datum/tijd)",
4
+ "(current organisation)": "(huidige organisatie)",
5
+ "(current user ID)": "(huidige gebruikers-ID)",
6
+ "$now — current date/time": "$now — huidige datum/tijd",
7
+ "$organisation — current organisation": "$organisation — huidige organisatie",
8
+ "$userId — current user ID": "$userId — huidige gebruikers-ID",
9
+ "= Equal to": "= Gelijk aan",
10
+ "∈ In list": "∈ In lijst",
11
+ "∉ Not in list": "∉ Niet in lijst",
12
+ "∃ Exists": "∃ Bestaat",
13
+ "≠ Not equal to": "≠ Niet gelijk aan",
14
+ "< Less than": "< Kleiner dan",
15
+ "≤ Less than or equal": "≤ Kleiner dan of gelijk aan",
16
+ "> Greater than": "> Groter dan",
17
+ "≥ Greater than or equal": "≥ Groter dan of gelijk aan",
18
+ "_created (system)": "_created (systeem)",
19
+ "_organisation (system)": "_organisation (systeem)",
20
+ "_owner (system)": "_owner (systeem)",
21
+ "_updated (system)": "_updated (systeem)",
22
+ "Access is limited to specified groups only.": "Toegang is beperkt tot alleen de opgegeven groepen.",
23
+ "Access URL": "Toegangs-URL",
3
24
  "Action": "Actie",
25
+ "Actions": "Acties",
4
26
  "Add": "Toevoegen",
27
+ "Add condition": "Voorwaarde toevoegen",
28
+ "Add enum value": "Opsommingswaarde toevoegen",
29
+ "Add group permission": "Groepsrecht toevoegen",
5
30
  "Add note": "Notitie toevoegen",
31
+ "Add permission": "Recht toevoegen",
32
+ "Add property": "Eigenschap toevoegen",
33
+ "Add rule": "Regel toevoegen",
6
34
  "Add tag...": "Label toevoegen...",
7
35
  "Add task...": "Taak toevoegen...",
36
+ "Admin": "Beheerder",
37
+ "Advanced: Conditional access rules": "Geavanceerd: Voorwaardelijke toegangsregels",
8
38
  "All types configured": "Alle types geconfigureerd",
39
+ "Allow files": "Bestanden toestaan",
40
+ "allOf - Inherits from ALL schemas (Recommended)": "allOf - Erft van ALLE schema's (Aanbevolen)",
41
+ "allOf - Multiple inheritance": "allOf - Meervoudige overerving",
42
+ "Allowed MIME types (comma separated)": "Toegestane MIME-typen (kommagescheiden)",
43
+ "Allowed tags": "Toegestane labels",
44
+ "Allowed tags (comma-separated)": "Toegestane labels (kommagescheiden)",
45
+ "Allowed tags (select from available tags)": "Toegestane labels (selecteer uit beschikbare labels)",
46
+ "Always has full access": "Heeft altijd volledige toegang",
9
47
  "An error occurred": "Er is een fout opgetreden",
10
48
  "Analyze properties": "Eigenschappen analyseren",
49
+ "anyOf - At least one schema must match": "anyOf - Minstens één schema moet overeenkomen",
50
+ "anyOf - Flexible composition": "anyOf - Flexibele samenstelling",
11
51
  "Application information": "Applicatie-informatie",
52
+ "Apply default for empty values": "Standaard toepassen voor lege waarden",
12
53
  "Are you sure you want to permanently delete \"{name}\"? This action cannot be undone.": "Weet u zeker dat u \"{name}\" permanent wilt verwijderen? Deze actie kan niet ongedaan gemaakt worden.",
54
+ "Array": "Array",
55
+ "Array configuration": "Arrayconfiguratie",
56
+ "Array item object configuration": "Arrayitem-objectconfiguratie",
57
+ "Array item type": "Arrayitem-type",
13
58
  "Assignee": "Toegewezen aan",
14
59
  "Audit trail": "Auditlogboek",
60
+ "Auth": "Auth",
61
+ "Authenticated": "Ingelogd",
62
+ "Authenticated users": "Ingelogde gebruikers",
63
+ "Auto tags": "Automatische labels",
64
+ "Auto tags (automatically applied to uploaded files)": "Automatische labels (automatisch toegepast op geüploade bestanden)",
65
+ "Auto-publish files": "Bestanden automatisch publiceren",
66
+ "Auto-publish objects": "Objecten automatisch publiceren",
67
+ "Binary": "Binair",
68
+ "Boolean": "Boolean",
69
+ "Byte": "Byte",
15
70
  "Cancel": "Annuleren",
16
71
  "Cannot delete: objects are still attached": "Kan niet verwijderen: er zijn nog objecten gekoppeld",
17
72
  "Cards": "Kaarten",
73
+ "Cascade delete": "Trapsgewijs verwijderen",
18
74
  "Chart library not available": "Grafiekbibliotheek niet beschikbaar",
75
+ "Child schemas can only add constraints, never relax them (Liskov substitution principle). Metadata (title, description, order) can be overridden.": "Kindschema's kunnen alleen beperkingen toevoegen, nooit versoepelen (Liskov-substitutieprincipe). Metadata (titel, beschrijving, volgorde) kan worden overschreven.",
19
76
  "Clear all": "Alles wissen",
20
77
  "Clear filters": "Filters wissen",
21
78
  "Close": "Sluiten",
79
+ "Color": "Kleur",
80
+ "Color hex": "Kleur hexadecimaal",
81
+ "Color hex alpha": "Kleur hexadecimaal met transparantie",
82
+ "Color HSL": "Kleur HSL",
83
+ "Color HSLA": "Kleur HSLA",
84
+ "Color RGB": "Kleur RGB",
85
+ "Color RGBA": "Kleur RGBA",
22
86
  "Column visibility": "Kolomzichtbaarheid",
23
87
  "Columns": "Kolommen",
24
88
  "Complete": "Voltooien",
89
+ "Configuration": "Configuratie",
25
90
  "Configure OpenRegister schema mappings for your object types": "Configureer OpenRegister schema-koppelingen voor uw objecttypen",
91
+ "Configure which Nextcloud user groups can perform CRUD operations on objects of this schema.": "Configureer welke Nextcloud-gebruikersgroepen CRUD-bewerkingen kunnen uitvoeren op objecten van dit schema.",
26
92
  "configured": "geconfigureerd",
27
93
  "Configured": "Geconfigureerd",
94
+ "Constant": "Constante",
28
95
  "Copy": "Kopiëren",
96
+ "Copied": "Gekopieerd",
29
97
  "Copy item": "Item kopiëren",
30
98
  "Copy items": "Items kopiëren",
31
99
  "Copy of {name}": "Kopie van {name}",
100
+ "Copy property": "Eigenschap kopiëren",
32
101
  "Copy selected": "Geselecteerde kopiëren",
102
+ "Copy {key}": "Kopieer {key}",
33
103
  "Create": "Aanmaken",
104
+ "Create (C)": "Aanmaken (C)",
34
105
  "Create another": "Nog één aanmaken",
35
106
  "Create {title}": "{title} aanmaken",
36
107
  "Created": "Aangemaakt",
108
+ "Created:": "Aangemaakt:",
109
+ "Current enum values ({count})": "Huidige opsommingswaarden ({count})",
110
+ "Custom value": "Aangepaste waarde",
111
+ "Custom value…": "Aangepaste waarde…",
37
112
  "Data": "Gegevens",
113
+ "Date": "Datum",
114
+ "Date time": "Datum/tijd",
38
115
  "Deadline": "Deadline",
116
+ "Default": "Standaard",
117
+ "Default value": "Standaardwaarde",
118
+ "Default value (JSON)": "Standaardwaarde (JSON)",
119
+ "Default value configuration": "Standaardwaardeconfiguratie",
120
+ "Default values (comma separated)": "Standaardwaarden (kommagescheiden)",
121
+ "Default will be applied when value is missing, null, or empty string": "Standaard wordt toegepast wanneer de waarde ontbreekt, null is of een lege tekenreeks is",
122
+ "Default will only be applied when value is missing or null": "Standaard wordt alleen toegepast wanneer de waarde ontbreekt of null is",
39
123
  "Delete": "Verwijderen",
124
+ "Delete (D)": "Verwijderen (D)",
40
125
  "Delete all objects in this schema": "Alle objecten in dit schema verwijderen",
41
126
  "Delete item": "Item verwijderen",
42
127
  "Delete items": "Items verwijderen",
43
128
  "Delete note": "Notitie verwijderen",
44
129
  "Delete objects": "Objecten verwijderen",
130
+ "Delete property": "Eigenschap verwijderen",
45
131
  "Delete selected": "Geselecteerde verwijderen",
132
+ "Delete {key}": "Verwijder {key}",
133
+ "Deprecated": "Verouderd",
134
+ "Description": "Beschrijving",
135
+ "Dictionary": "Woordenboek",
46
136
  "Discard": "Verwerpen",
47
137
  "Done": "Klaar",
138
+ "Download URL": "Download-URL",
48
139
  "Drop files here or click to browse": "Sleep bestanden hier of klik om te bladeren",
140
+ "Duration": "Duur",
49
141
  "Edit": "Bewerken",
50
142
  "Edit {title}": "{title} bewerken",
143
+ "Email": "E-mail",
144
+ "Enter a custom value": "Voer een aangepaste waarde in",
145
+ "Enumeration ({count})": "Opsomming ({count})",
51
146
  "Errors": "Fouten",
147
+ "Example": "Voorbeeld",
148
+ "Exclusive maximum": "Exclusief maximum",
149
+ "Exclusive minimum": "Exclusief minimum",
52
150
  "Export": "Exporteren",
53
151
  "Export completed successfully.": "Export succesvol voltooid.",
54
152
  "Export format": "Exportformaat",
55
153
  "Export objects": "Objecten exporteren",
56
154
  "Extend schema": "Schema uitbreiden",
155
+ "Extension": "Extensie",
156
+ "Facetable": "Facetteerbaar",
157
+ "Facet description": "Facetbeschrijving",
158
+ "Facet order": "Facetvolgorde",
159
+ "Facet title": "Facettitel",
160
+ "Aggregated across schemas": "Geaggregeerd over schema's",
161
+ "File": "Bestand",
162
+ "File configuration": "Bestandsconfiguratie",
57
163
  "Files": "Bestanden",
164
+ "Files uploaded to this property will be automatically publicly shared": "Bestanden geüpload naar deze eigenschap worden automatisch openbaar gedeeld",
165
+ "Filename": "Bestandsnaam",
58
166
  "Filters": "Filters",
59
167
  "First": "Eerste",
168
+ "Format": "Formaat",
60
169
  "Format JSON": "JSON opmaken",
61
170
  "Found": "Gevonden",
62
171
  "From": "Van",
172
+ "General": "Algemeen",
173
+ "Grant access based on object property values evaluated at runtime. Multiple rules per action are OR'd — any matching rule grants access.": "Verleen toegang op basis van objecteigenschapswaarden die tijdens runtime worden geëvalueerd. Meerdere regels per actie worden met OR gecombineerd — elke overeenkomende regel verleent toegang.",
174
+ "Group": "Groep",
175
+ "Group permissions": "Groepsrechten",
176
+ "Hard validation": "Strikte validatie",
177
+ "Hidden in collection": "Verborgen in collectie",
178
+ "Hidden in form": "Verborgen in formulier",
179
+ "Hidden in view": "Verborgen in weergave",
180
+ "Hide in collection view": "Verbergen in collectieweergave",
181
+ "Hide in form view": "Verbergen in formulierweergave",
182
+ "Hostname": "Hostnaam",
63
183
  "ID": "ID",
184
+ "ID / UUID:": "ID / UUID:",
185
+ "IDN email": "IDN e-mail",
186
+ "image, document, audio, video": "afbeelding, document, audio, video",
187
+ "IDN hostname": "IDN-hostnaam",
188
+ "If no groups are specified for an operation, all users can perform it": "Als er geen groepen zijn opgegeven voor een bewerking, kunnen alle gebruikers deze uitvoeren",
189
+ "Immutable": "Onveranderlijk",
64
190
  "Import": "Importeren",
65
191
  "Import completed successfully!": "Import succesvol voltooid!",
66
192
  "Import completed with errors. Check the details below.": "Import voltooid met fouten. Controleer de details hieronder.",
67
193
  "Import data": "Gegevens importeren",
68
194
  "Import summary": "Importsamenvatting",
69
195
  "Importing data — this may take a moment for large files...": "Gegevens importeren — dit kan even duren voor grote bestanden...",
196
+ "Important:": "Belangrijk:",
70
197
  "Information about the current application installation": "Informatie over de huidige applicatie-installatie",
198
+ "Instance must validate against all selected schemas. Properties from all parent schemas are merged. This is the recommended pattern for schema extension and multiple inheritance.": "Instantie moet valideren tegen alle geselecteerde schema's. Eigenschappen van alle bovenliggende schema's worden samengevoegd. Dit is het aanbevolen patroon voor schema-uitbreiding en meervoudige overerving.",
199
+ "Instance must validate against at least one of the selected schemas. Properties are not merged. More permissive than oneOf.": "Instantie moet valideren tegen minstens één van de geselecteerde schema's. Eigenschappen worden niet samengevoegd. Soepeler dan oneOf.",
200
+ "Instance must validate against exactly one of the selected schemas. Properties are not merged. Use for discriminated unions or type variants.": "Instantie moet valideren tegen precies één van de geselecteerde schema's. Eigenschappen worden niet samengevoegd. Gebruik voor gediscrimineerde unies of typevarianten.",
201
+ "Integer": "Geheel getal",
202
+ "Inversed by": "Omgekeerd door",
203
+ "Inversed by property": "Omgekeerde eigenschap",
71
204
  "Invalid JSON format": "Ongeldig JSON-formaat",
205
+ "Invalid schema reference: Expected string, got number ({value}). This will be sent to backend as-is.": "Ongeldige schemareferentie: tekenreeks verwacht, getal ontvangen ({value}). Dit wordt ongewijzigd naar de backend verzonden.",
206
+ "IRI reference": "IRI-referentie",
72
207
  "Item": "Item",
73
208
  "Item successfully copied.": "Item succesvol gekopieerd.",
74
209
  "Item successfully deleted.": "Item succesvol verwijderd.",
75
210
  "Items per page:": "Items per pagina:",
76
211
  "Items successfully copied.": "Items succesvol gekopieerd.",
77
212
  "Items successfully deleted.": "Items succesvol verwijderd.",
213
+ "JSON pointer": "JSON-aanwijzer",
78
214
  "Last": "Laatste",
79
215
  "Load more": "Meer laden",
216
+ "Loading groups...": "Groepen laden...",
217
+ "Loading user groups...": "Gebruikersgroepen laden...",
80
218
  "Loading version information...": "Versie-informatie laden...",
81
219
  "Loading...": "Laden...",
220
+ "Markdown": "Markdown",
82
221
  "Mass actions ({count})": "Bulkacties ({count})",
222
+ "Max depth": "Maximale diepte",
223
+ "Maximum file size (bytes)": "Maximale bestandsgrootte (bytes)",
224
+ "Maximum items": "Maximaal aantal items",
225
+ "Maximum length": "Maximale lengte",
226
+ "Maximum value": "Maximale waarde",
83
227
  "Metadata": "Metadata",
228
+ "Minimum items": "Minimaal aantal items",
229
+ "Minimum length": "Minimale lengte",
230
+ "Minimum value": "Minimale waarde",
231
+ "Multiple of": "Veelvoud van",
232
+ "Name": "Naam",
84
233
  "Naming pattern": "Naamgevingspatroon",
234
+ "Nested object": "Genest object",
235
+ "Nested schema": "Genest schema",
85
236
  "Next": "Volgende",
86
237
  "No audit trail entries": "Geen auditlogboekitems",
87
238
  "No communication apps available": "Geen communicatieapps beschikbaar",
239
+ "No conditional rules for {action}": "Geen voorwaardelijke regels voor {action}",
240
+ "No conditions yet — add at least one condition": "Nog geen voorwaarden — voeg minimaal één voorwaarde toe",
88
241
  "No data available": "Geen gegevens beschikbaar",
89
242
  "No details available": "Geen details beschikbaar",
90
243
  "No files attached": "Geen bijlagen",
@@ -97,68 +250,160 @@
97
250
  "No notes yet": "Nog geen notities",
98
251
  "No objects to delete": "Geen objecten om te verwijderen",
99
252
  "No objects to publish": "Geen objecten om te publiceren",
253
+ "No properties found. Click \"Add property\" to create one.": "Geen eigenschappen gevonden. Klik op \"Eigenschap toevoegen\" om er een aan te maken.",
100
254
  "No schemas available in this register": "Geen schema's beschikbaar in dit register",
255
+ "No specific permissions set — all users can perform all operations.": "Geen specifieke rechten ingesteld — alle gebruikers kunnen alle bewerkingen uitvoeren.",
101
256
  "No tags": "Geen labels",
102
257
  "No tasks": "Geen taken",
103
258
  "No widgets configured": "Geen widgets geconfigureerd",
104
259
  "Not configured": "Niet geconfigureerd",
260
+ "Not set": "Niet ingesteld",
105
261
  "Notes": "Notities",
262
+ "Number": "Getal",
263
+ "Number configuration": "Nummerconfiguratie",
264
+ "Object": "Object",
265
+ "Object configuration": "Objectconfiguratie",
266
+ "Object description field": "Objectbeschrijvingsveld",
267
+ "Object handling": "Objectafhandeling",
268
+ "Object image field": "Objectafbeeldingsveld",
269
+ "Object name field": "Objectnaamveld",
270
+ "Object summary field": "Objectsamenvattingsveld",
106
271
  "Objects": "Objecten",
107
272
  "objects": "objecten",
273
+ "oneOf - Exactly one schema must match": "oneOf - Precies één schema moet overeenkomen",
274
+ "oneOf - Mutually exclusive": "oneOf - Wederzijds exclusief",
275
+ "One of": "Één van",
108
276
  "Open": "Openen",
277
+ "Open access:": "Openbare toegang:",
278
+ "Operator": "Operator",
279
+ "Order": "Volgorde",
280
+ "Owner:": "Eigenaar:",
109
281
  "Page {current} of {total}": "Pagina {current} van {total}",
282
+ "Parent schemas:": "Bovenliggende schema's:",
283
+ "Password": "Wachtwoord",
284
+ "Pattern (regex)": "Patroon (regex)",
110
285
  "Previous": "Vorige",
111
286
  "Progress stages": "Voortgangsfasen",
287
+ "Properties": "Eigenschappen",
288
+ "Properties have been modified. Changes will only take effect after the schema is saved.": "Eigenschappen zijn gewijzigd. Wijzigingen worden pas van kracht nadat het schema is opgeslagen.",
112
289
  "Property": "Eigenschap",
290
+ "Property has been modified. Changes will only take effect after the schema is saved.": "Eigenschap is gewijzigd. Wijzigingen worden pas van kracht nadat het schema is opgeslagen.",
291
+ "Property security": "Eigenschapsbeveiliging",
292
+ "Property type": "Eigenschapstype",
293
+ "Public": "Openbaar",
294
+ "Public (unauthenticated)": "Openbaar (niet-ingelogd)",
113
295
  "Publish all objects in this schema": "Alle objecten in dit schema publiceren",
114
296
  "Publish objects": "Objecten publiceren",
297
+ "'public' represents unauthenticated access": "'public' vertegenwoordigt toegang voor niet-ingelogde gebruikers",
298
+ "Query parameters": "Queryparameters",
115
299
  "Re-import configuration": "Configuratie opnieuw importeren",
300
+ "Read": "Lezen",
301
+ "Read (R)": "Lezen (R)",
116
302
  "Refresh": "Vernieuwen",
117
303
  "Refreshing...": "Verversen...",
118
304
  "Register": "Register",
305
+ "Register (required when schema is selected)": "Register (verplicht als schema is geselecteerd)",
119
306
  "Register configuration": "Registerconfiguratie",
307
+ "Regex": "Regex",
308
+ "Related object": "Gerelateerd object",
309
+ "Related schema": "Gerelateerd schema",
310
+ "Relative JSON pointer": "Relatieve JSON-aanwijzer",
311
+ "Remove {group}": "Verwijder {group}",
312
+ "Remove {group} permissions": "Verwijder rechten van {group}",
313
+ "Remove {value}": "Verwijder {value}",
314
+ "Remove after write back": "Verwijderen na terugschrijven",
315
+ "Remove condition": "Voorwaarde verwijderen",
120
316
  "Remove from list": "Uit lijst verwijderen",
317
+ "Remove rule": "Regel verwijderen",
318
+ "Required": "Verplicht",
319
+ "Restrictive schema:": "Beperkend schema:",
121
320
  "Retry": "Opnieuw proberen",
321
+ "Role-based access control (RBAC)": "Rolgebaseerde toegangscontrole (RBAC)",
122
322
  "Save": "Opslaan",
123
323
  "Save configuration": "Configuratie opslaan",
124
- "Schedule meeting": "Vergadering inplannen",
125
324
  "Schema": "Schema",
325
+ "Schema composition (JSON Schema)": "Schemasamenstelling (JSON Schema)",
326
+ "Schema reference": "Schemareferentie",
327
+ "Schedule meeting": "Vergadering inplannen",
126
328
  "Search": "Zoeken",
127
329
  "Search...": "Zoeken...",
330
+ "Searchable in SOLR": "Doorzoekbaar in SOLR",
331
+ "Security": "Beveiliging",
128
332
  "Select 1 or more items to copy": "Selecteer 1 of meer items om te kopiëren",
129
333
  "Select 1 or more items to delete": "Selecteer 1 of meer items om te verwijderen",
334
+ "Select a property to use as object description": "Selecteer een eigenschap om als objectbeschrijving te gebruiken",
335
+ "Select a property to use as object image representing the object. e.g. logo (should contain base64 encoded image)": "Selecteer een eigenschap om als objectafbeelding te gebruiken. bijv. logo (moet base64-gecodeerde afbeelding bevatten)",
336
+ "Select a property to use as object name": "Selecteer een eigenschap om als objectnaam te gebruiken",
337
+ "Select a property to use as object summary. e.g. summary, abstract, or excerpt": "Selecteer een eigenschap om als objectsamenvatting te gebruiken. bijv. samenvatting, abstract of uittreksel",
130
338
  "Select a register": "Selecteer een register",
131
339
  "Select a schema": "Selecteer een schema",
132
340
  "Select file": "Bestand selecteren",
341
+ "Select group...": "Selecteer groep...",
342
+ "Select or type…": "Selecteren of typen…",
343
+ "Select permissions:": "Selecteer rechten:",
344
+ "Select property": "Eigenschap selecteren",
345
+ "Select schemas (instance must match at least one)": "Selecteer schema's (instantie moet met minstens één overeenkomen)",
346
+ "Select schemas (instance must match exactly one)": "Selecteer schema's (instantie moet met precies één overeenkomen)",
347
+ "Select schemas to inherit from (supports multiple parents)": "Selecteer schema's om van te erven (ondersteunt meerdere bovenliggende schema's)",
133
348
  "Select which columns to display in the table": "Selecteer welke kolommen in de tabel worden weergegeven",
349
+ "Semantic version": "Semantische versie",
134
350
  "Send email": "E-mail verzenden",
135
351
  "Send message": "Bericht verzenden",
352
+ "Share URL": "Deel-URL",
136
353
  "Sheet": "Blad",
137
354
  "Show all": "Alles weergeven",
138
355
  "Showing {count} of {total}": "Toont {count} van {total}",
356
+ "Slug": "Slug",
139
357
  "Start chat": "Chat starten",
140
358
  "Status": "Status",
359
+ "String": "Tekenreeks",
360
+ "String configuration": "Tekenreeksconfiguratie",
361
+ "Summary": "Samenvatting",
141
362
  "Supported file types:": "Ondersteunde bestandstypen:",
142
363
  "Table": "Tabel",
143
364
  "Tags": "Labels",
144
365
  "Tasks": "Taken",
366
+ "Telephone": "Telefoon",
367
+ "Text": "Tekst",
368
+ "The 'admin' group always has full access (cannot be changed)": "De 'admin'-groep heeft altijd volledige toegang (kan niet worden gewijzigd)",
145
369
  "The following items will be permanently deleted. Remove any items you want to keep.": "De volgende items worden permanent verwijderd. Haal items die u wilt bewaren uit de selectie.",
370
+ "The object owner always has full access": "De eigenaar van het object heeft altijd volledige toegang",
371
+ "Time": "Tijd",
372
+ "Title": "Titel",
373
+ "Title *": "Titel *",
374
+ "Type": "Type",
146
375
  "Type to search...": "Typ om te zoeken...",
376
+ "Type value and press Enter": "Typ een waarde en druk op Enter",
377
+ "(technical) Property name": "(technische) Eigenschapsnaam",
378
+ "false — field must not exist": "false — veld mag niet bestaan",
379
+ "true — field must exist": "true — veld moet bestaan",
380
+ "Unauthenticated users": "Niet-ingelogde gebruikers",
147
381
  "Unassigned": "Niet toegewezen",
382
+ "Update": "Bijwerken",
383
+ "Update (U)": "Bijwerken (U)",
148
384
  "Unchanged": "Ongewijzigd",
149
385
  "Unknown": "Onbekend",
150
386
  "Updated": "Bijgewerkt",
387
+ "Updated:": "Bijgewerkt:",
388
+ "URI reference": "URI-referentie",
389
+ "URI template": "URI-sjabloon",
151
390
  "User": "Gebruiker",
152
391
  "Validate objects": "Objecten valideren",
153
392
  "Value": "Waarde",
393
+ "Value constraints": "Waardebeperkingen",
394
+ "Variables:": "Variabelen:",
395
+ "Version:": "Versie:",
154
396
  "Version information": "Versie-informatie",
155
397
  "View all": "Alles weergeven",
398
+ "Visible to end users": "Zichtbaar voor eindgebruikers",
156
399
  "Widget": "Widget",
157
400
  "Widget not available": "Widget niet beschikbaar",
158
401
  "Write a note...": "Schrijf een notitie...",
402
+ "Write back": "Terugschrijven",
159
403
  "{name} (Copy)": "{name} (Kopie)",
160
404
  "{name} - Copy": "{name} - Kopie",
161
- "{title} saved successfully.": "{title} succesvol opgeslagen."
405
+ "{title} saved successfully.": "{title} succesvol opgeslagen.",
406
+ "Inherits schema permissions": "Erft schemarechten"
162
407
  },
163
408
  "plurals": {}
164
409
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@conduction/nextcloud-vue",
3
- "version": "0.1.0-beta.13",
3
+ "version": "0.1.0-beta.14",
4
4
  "description": "Shared Vue component library for Conduction Nextcloud apps — complements @nextcloud/vue with higher-level components, OpenRegister integration, and NL Design System support",
5
5
  "license": "EUPL-1.2",
6
6
  "author": "Conduction B.V. <info@conduction.nl>",
@@ -38,6 +38,7 @@
38
38
  }
39
39
  },
40
40
  "dependencies": {
41
+ "lodash": "^4.17.21",
41
42
  "@codemirror/lang-html": "^6.4.11",
42
43
  "@codemirror/lang-json": "^6.0.2",
43
44
  "@codemirror/lang-xml": "^6.1.0",
@@ -101,6 +101,7 @@ export default {
101
101
 
102
102
  .cn-advanced-form-dialog__codemirror-container :deep(.cm-editor) {
103
103
  height: 100%;
104
+ outline: none !important;
104
105
  }
105
106
 
106
107
  .cn-advanced-form-dialog__codemirror-container :deep(.cm-scroller) {
@@ -112,10 +113,6 @@ export default {
112
113
  border: none !important;
113
114
  }
114
115
 
115
- .cn-advanced-form-dialog__codemirror-container :deep(.cm-editor) {
116
- outline: none !important;
117
- }
118
-
119
116
  .cn-advanced-form-dialog__codemirror-container--light > .vue-codemirror {
120
117
  border: 1px dotted silver;
121
118
  }
@@ -79,7 +79,7 @@ export default {
79
79
  * Action definitions rendered as NcActionButton items.
80
80
  * Same format as CnRowActions: `{ label, icon?, handler?, disabled?, destructive? }`.
81
81
  * When empty, only the default slot content is rendered.
82
- * @type {Array<{label: string, icon?: Component, handler?: Function, disabled?: boolean | Function, destructive?: boolean}>}
82
+ * @type {Array<{label: string, icon?: object, handler?: Function, disabled?: boolean | Function, destructive?: boolean}>}
83
83
  */
84
84
  actions: {
85
85
  type: Array,
@@ -76,7 +76,7 @@
76
76
  <td
77
77
  v-for="col in effectiveColumns"
78
78
  :key="col.key"
79
- :class="col.cellClass || ''"
79
+ :class="[col.class || '', col.cellClass || '', cellClass ? cellClass(row, col) : '']"
80
80
  :style="col.width ? { maxWidth: col.width } : {}">
81
81
  <slot :name="'column-' + col.key" :row="row" :value="getCellValue(row, col.key)">
82
82
  <!-- Schema-driven: use CnCellRenderer -->
@@ -92,7 +92,7 @@
92
92
  </td>
93
93
 
94
94
  <!-- Row actions -->
95
- <td v-if="$scopedSlots['row-actions']" class="cn-table-col--actions" @click.stop>
95
+ <td v-if="$scopedSlots['row-actions']" :class="['cn-table-col--actions', cellClass ? cellClass(row, { key: 'actions' }) : '']" @click.stop>
96
96
  <slot name="row-actions" :row="row" />
97
97
  </td>
98
98
  </tr>
@@ -231,6 +231,11 @@ export default {
231
231
  type: Function,
232
232
  default: null,
233
233
  },
234
+ /** Function returning CSS class(es) for a data cell: (row, col) => string|object */
235
+ cellClass: {
236
+ type: Function,
237
+ default: null,
238
+ },
234
239
  /** Whether to constrain table height and make it scrollable */
235
240
  scrollable: {
236
241
  type: Boolean,
@@ -156,7 +156,6 @@ export default {
156
156
  * Format a field value for display based on its schema type.
157
157
  *
158
158
  * @param {*} value - The raw value.
159
- * @param {object} schemaProp - The JSON Schema property definition.
160
159
  * @return {string} Formatted display value.
161
160
  */
162
161
  formatFieldValue(value) {
@@ -663,7 +663,7 @@ export default {
663
663
 
664
664
  /**
665
665
  * Compute CSS grid placement for a field cell.
666
- * @param field
666
+ * @param {object} field - The field configuration object.
667
667
  */
668
668
  cellStyle(field) {
669
669
  const style = {}
@@ -681,7 +681,7 @@ export default {
681
681
  /**
682
682
  * Normalize an option to { id, label } format.
683
683
  * Accepts plain strings or objects with id/label properties.
684
- * @param val
684
+ * @param {string|object} val - Raw option value to normalize.
685
685
  */
686
686
  _normalizeOption(val) {
687
687
  if (val && typeof val === 'object' && val.id !== undefined) {
@@ -212,8 +212,8 @@ export default {
212
212
  methods: {
213
213
  /**
214
214
  * Format a metadata value for display.
215
- * @param value
216
- * @param def
215
+ * @param {*} value - The raw metadata value.
216
+ * @param {object} def - The metadata field definition (format, label, etc.).
217
217
  */
218
218
  formatMetadataValue(value, def) {
219
219
  if (value === null || value === undefined) return '-'
@@ -43,7 +43,7 @@ export default {
43
43
  props: {
44
44
  /**
45
45
  * Action definitions.
46
- * @type {Array<{label: string, icon?: Component, handler: Function, disabled?: boolean | Function, destructive?: boolean}>}
46
+ * @type {Array<{label: string, icon?: object, handler: Function, disabled?: boolean | Function, destructive?: boolean}>}
47
47
  */
48
48
  actions: {
49
49
  type: Array,