@mmlogic/components 0.4.3 → 0.5.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.
Files changed (82) hide show
  1. package/dist/cjs/client-layout-RZ3Ix-4a.js +87 -0
  2. package/dist/cjs/{index-CAzwGt9u.js → index-DzRfoAPz.js} +36 -9
  3. package/dist/cjs/index.cjs.js +56 -81
  4. package/dist/cjs/loader.cjs.js +2 -2
  5. package/dist/cjs/mosterdcomponents.cjs.js +3 -3
  6. package/dist/cjs/{mrd-boolean-field_24.cjs.entry.js → mrd-boolean-field_23.cjs.entry.js} +159 -286
  7. package/dist/collection/collection-manifest.json +1 -2
  8. package/dist/collection/components/documents/mrd-document-container/mrd-document-container.css +0 -17
  9. package/dist/collection/components/documents/mrd-document-container/mrd-document-container.js +12 -4
  10. package/dist/collection/components/documents/mrd-document-list/mrd-document-list.css +9 -43
  11. package/dist/collection/components/documents/mrd-document-list/mrd-document-list.js +14 -6
  12. package/dist/collection/components/documents/mrd-document-view/mrd-document-view.css +30 -68
  13. package/dist/collection/components/documents/mrd-document-view/mrd-document-view.js +49 -90
  14. package/dist/collection/components/fields/mrd-boolean-field/mrd-boolean-field.css +0 -10
  15. package/dist/collection/components/fields/mrd-currency-field/mrd-currency-field.css +0 -7
  16. package/dist/collection/components/fields/mrd-file-field/mrd-file-field.css +0 -11
  17. package/dist/collection/components/fields/mrd-hyperlink-field/mrd-hyperlink-field.css +0 -3
  18. package/dist/collection/components/fields/mrd-image-field/mrd-image-field.css +6 -20
  19. package/dist/collection/components/fields/mrd-list-field/mrd-list-field.css +0 -4
  20. package/dist/collection/components/fields/mrd-longtext-field/mrd-longtext-field.css +0 -1
  21. package/dist/collection/components/fields/mrd-relation-field/mrd-relation-field.css +9 -35
  22. package/dist/collection/components/fields/mrd-textarea-field/mrd-textarea-field.css +0 -9
  23. package/dist/collection/components/form/mrd-field/mrd-field.css +0 -13
  24. package/dist/collection/components/form/mrd-form/mrd-form.css +0 -19
  25. package/dist/collection/components/layout/mrd-layout-section/mrd-layout-section.css +3 -58
  26. package/dist/collection/components/layout/mrd-layout-section/mrd-layout-section.js +25 -66
  27. package/dist/collection/components/table/mrd-table/mrd-table.css +38 -185
  28. package/dist/collection/components/table/mrd-table/mrd-table.js +3 -5
  29. package/dist/collection/components/table/mrd-table/table-parts.js +2 -5
  30. package/dist/collection/dev/app.js +76 -40
  31. package/dist/collection/dev/example-data.js +2 -1
  32. package/dist/collection/index.js +1 -0
  33. package/dist/collection/utils/document-attachments.js +20 -0
  34. package/dist/collection/{components/documents/mrd-file-preview → utils}/file-preview-kind.js +4 -4
  35. package/dist/collection/utils/i18n.js +0 -32
  36. package/dist/components/document-attachments.js +1 -0
  37. package/dist/components/field-helpers.js +1 -1
  38. package/dist/components/i18n.js +1 -1
  39. package/dist/components/index.js +1 -1
  40. package/dist/components/mrd-document-container2.js +1 -1
  41. package/dist/components/mrd-document-list2.js +1 -1
  42. package/dist/components/mrd-document-view2.js +1 -1
  43. package/dist/components/mrd-email-field2.js +1 -1
  44. package/dist/components/mrd-form.js +1 -1
  45. package/dist/components/mrd-hyperlink-field2.js +1 -1
  46. package/dist/components/mrd-image-field2.js +1 -1
  47. package/dist/components/mrd-layout-section.js +1 -1
  48. package/dist/components/mrd-number-field2.js +1 -1
  49. package/dist/components/mrd-relation-field2.js +1 -1
  50. package/dist/components/mrd-table2.js +1 -1
  51. package/dist/esm/client-layout-DCOAAH92.js +84 -0
  52. package/dist/esm/{index-DiSEJMA8.js → index-DiSe6vjv.js} +36 -9
  53. package/dist/esm/index.js +30 -80
  54. package/dist/esm/loader.js +3 -3
  55. package/dist/esm/mosterdcomponents.js +4 -4
  56. package/dist/esm/{mrd-boolean-field_24.entry.js → mrd-boolean-field_23.entry.js} +69 -195
  57. package/dist/mosterdcomponents/index.esm.js +1 -1
  58. package/dist/mosterdcomponents/mosterdcomponents.css +7 -1
  59. package/dist/mosterdcomponents/mosterdcomponents.esm.js +1 -1
  60. package/dist/mosterdcomponents/p-DCOAAH92.js +1 -0
  61. package/dist/mosterdcomponents/p-DiSe6vjv.js +2 -0
  62. package/dist/mosterdcomponents/p-cdecc698.entry.js +1 -0
  63. package/dist/types/components/documents/mrd-document-container/mrd-document-container.d.ts +4 -2
  64. package/dist/types/components/documents/mrd-document-list/mrd-document-list.d.ts +6 -2
  65. package/dist/types/components/documents/mrd-document-view/mrd-document-view.d.ts +27 -29
  66. package/dist/types/components/layout/mrd-layout-section/mrd-layout-section.d.ts +12 -15
  67. package/dist/types/components.d.ts +61 -195
  68. package/dist/types/index.d.ts +2 -0
  69. package/dist/types/stencil-public-runtime.d.ts +1 -0
  70. package/dist/types/types/client-layout.d.ts +10 -3
  71. package/dist/types/utils/document-attachments.d.ts +8 -0
  72. package/dist/types/utils/file-preview-kind.d.ts +9 -0
  73. package/package.json +10 -12
  74. package/dist/collection/components/documents/mrd-file-preview/mrd-file-preview.css +0 -59
  75. package/dist/collection/components/documents/mrd-file-preview/mrd-file-preview.js +0 -212
  76. package/dist/components/mrd-file-preview.d.ts +0 -11
  77. package/dist/components/mrd-file-preview.js +0 -1
  78. package/dist/components/mrd-file-preview2.js +0 -1
  79. package/dist/mosterdcomponents/p-DiSEJMA8.js +0 -2
  80. package/dist/mosterdcomponents/p-e816d459.entry.js +0 -1
  81. package/dist/types/components/documents/mrd-file-preview/file-preview-kind.d.ts +0 -9
  82. package/dist/types/components/documents/mrd-file-preview/mrd-file-preview.d.ts +0 -41
@@ -198,10 +198,8 @@ export class MrdTable {
198
198
  }
199
199
  /** Inject aggregation totals returned by the /aggregations endpoint. */
200
200
  async setAggregations(data) {
201
- var _a;
202
- const total = (_a = data.total) !== null && _a !== void 0 ? _a : (typeof data.count === 'number' ? data.count : undefined);
203
- if (total != null)
204
- this.aggregationsTotal = total;
201
+ if (data.total != null)
202
+ this.aggregationsTotal = data.total;
205
203
  this.aggregations = data;
206
204
  }
207
205
  // ── Lifecycle ──────────────────────────────────────────────────────────────
@@ -1055,7 +1053,7 @@ export class MrdTable {
1055
1053
  "setter": false,
1056
1054
  "reflect": false,
1057
1055
  "attribute": "request-timeout-ms",
1058
- "defaultValue": "REQUEST_TIMEOUT_MS"
1056
+ "defaultValue": "15000"
1059
1057
  }
1060
1058
  };
1061
1059
  }
@@ -46,14 +46,11 @@ export const TableCell = ({ col, row, locale, onDownload, onOpenTextblock, onOpe
46
46
  };
47
47
  /** Formats the aggregation total for one column, '' when not applicable. */
48
48
  export function formatAggregationValue(col, aggregations, locale) {
49
- var _a;
49
+ var _a, _b;
50
50
  if (col.type !== 'FIELD' || !col.aggregate || !aggregations)
51
51
  return '';
52
52
  const fn = col.aggregate.toLowerCase();
53
- const aggData = aggregations[fn];
54
- const val = typeof aggData === 'object' && aggData !== null
55
- ? aggData[(_a = col.name) !== null && _a !== void 0 ? _a : '']
56
- : undefined;
53
+ const val = (_a = aggregations[fn]) === null || _a === void 0 ? void 0 : _a[(_b = col.name) !== null && _b !== void 0 ? _b : ''];
57
54
  if (val == null)
58
55
  return '';
59
56
  const dt = col.dataType;
@@ -200,11 +200,44 @@ function showCompanyList() {
200
200
  }
201
201
 
202
202
  /* =====================================================================
203
- FILE PREVIEW TAB
203
+ DOCUMENT PREVIEW TAB
204
204
  ===================================================================== */
205
205
 
206
206
  let _filePreviewInitialized = false;
207
207
 
208
+ /**
209
+ * Minimal stand-in for how a real host (content-app) would render an
210
+ * mrdAttachments payload: pdf -> iframe, image -> <img>, anything else ->
211
+ * a download-only message. content-app itself would use pdf.js for the pdf
212
+ * case and import detectPreviewKind from @mmlogic/components instead of this
213
+ * inline check (TASK-0165 / FINDING-0111).
214
+ */
215
+ function renderAttachmentPreview(containerEl, attachments) {
216
+ const attachment = attachments[0];
217
+ containerEl.innerHTML = '';
218
+ if (!attachment) return;
219
+
220
+ const mime = (attachment.mimeType || '').toLowerCase();
221
+ const isPdf = mime === 'application/pdf' || /\.pdf$/i.test(attachment.fileName || '');
222
+ const isImage = mime.startsWith('image/') || /\.(png|jpe?g|gif|webp|svg|bmp)$/i.test(attachment.fileName || '');
223
+
224
+ if (isPdf) {
225
+ const iframe = document.createElement('iframe');
226
+ iframe.src = '/dev/sample.pdf';
227
+ iframe.title = attachment.fileName || 'preview';
228
+ iframe.style.cssText = 'width:100%;height:100%;min-height:400px;border:0';
229
+ containerEl.appendChild(iframe);
230
+ } else if (isImage) {
231
+ const img = document.createElement('img');
232
+ img.src = 'https://picsum.photos/seed/mrd/600/400';
233
+ img.alt = attachment.fileName || '';
234
+ img.style.cssText = 'width:100%;height:100%;object-fit:contain';
235
+ containerEl.appendChild(img);
236
+ } else {
237
+ containerEl.textContent = `No inline preview for "${attachment.fileName}" — download only.`;
238
+ }
239
+ }
240
+
208
241
  /**
209
242
  * Deliberately lazy: a PDF src loads Chrome's PDF-viewer-extension iframe
210
243
  * immediately (display:none on an inactive tab-pane doesn't stop an iframe
@@ -216,40 +249,19 @@ function initFilePreviewTab() {
216
249
  if (_filePreviewInitialized) return;
217
250
  _filePreviewInitialized = true;
218
251
 
219
- const pdfDemo = document.getElementById('preview-pdf-demo');
220
- pdfDemo.src = '/dev/sample.pdf';
221
- pdfDemo.mimeType = 'application/pdf';
222
- pdfDemo.fileName = 'sample.pdf';
223
-
224
- const imageDemo = document.getElementById('preview-image-demo');
225
- imageDemo.src = 'https://picsum.photos/seed/mrd/600/400';
226
- imageDemo.mimeType = 'image/jpeg';
227
- imageDemo.fileName = 'photo.jpg';
228
- imageDemo.addEventListener('mrdPreviewReload', () => {
229
- logEvent('mrdPreviewReload', { source: 'preview-image-demo' });
230
- });
231
-
232
- // Unsupported type's fallback download button — same mrdDownload contract
233
- // as mrd-document-view / FILE fields, so the host handler is identical.
234
- const unsupportedDemo = document.getElementById('preview-unsupported-demo');
235
- unsupportedDemo.src = 'https://example.com/report.docx';
236
- unsupportedDemo.fileName = 'report.docx';
237
- unsupportedDemo.href = 'https://example.com/data/tenant/documents/1';
238
- unsupportedDemo.addEventListener('mrdDownload', (e) => logEvent('mrdDownload', e.detail));
239
-
240
- // Document View demo (commons.document archetype, TASK-0157) — same
241
- // mrdLoadDocumentPreview / setDocumentPreviewUrl round trip a real host
242
- // (content-app) will implement; here we just hand back the local sample PDF.
252
+ // Document View demo (commons.document archetype, TASK-0157/TASK-0168)
253
+ // mrd-document-view/mrd-layout-section never render the file themselves;
254
+ // they only emit mrdAttachments. This dev page (standing in for the host)
255
+ // renders the preview into a sibling panel, next to the section.
243
256
  ['document-view-fullpage', 'document-view-overlay'].forEach((id) => {
244
257
  const section = document.getElementById(id);
258
+ const previewEl = document.getElementById(`${id}-preview`);
245
259
  section.archetypes = [window.EXAMPLE_DOCUMENT_ARCHETYPE];
246
260
  section.data = window.EXAMPLE_DOCUMENT_DATA;
247
261
 
248
- section.addEventListener('mrdLoadDocumentPreview', (e) => {
249
- logEvent('mrdLoadDocumentPreview', e.detail);
250
- // Simulate a real host round trip (resolve href -> signed URL via the API)
251
- // instead of resolving synchronously, so the loading state is visible.
252
- setTimeout(() => section.setDocumentPreviewUrl('/dev/sample.pdf'), 600);
262
+ section.addEventListener('mrdAttachments', (e) => {
263
+ logEvent('mrdAttachments', e.detail);
264
+ renderAttachmentPreview(previewEl, e.detail.attachments);
253
265
  });
254
266
  section.addEventListener('mrdDownload', (e) => logEvent('mrdDownload', e.detail));
255
267
  section.addEventListener('mrdNavigate', (e) => logEvent('mrdNavigate', e.detail));
@@ -512,7 +524,7 @@ async function renderSection(index) {
512
524
  }
513
525
  });
514
526
 
515
- // IMAGE field thumbnail — same signed-URL round trip as mrdLoadDocumentPreview below.
527
+ // IMAGE field thumbnail — same signed-URL round trip as mrdAttachments below.
516
528
  section.addEventListener('mrdLoadImage', async (e) => {
517
529
  if (generation !== _sectionGeneration) return;
518
530
  const { fieldName, href } = e.detail;
@@ -525,18 +537,41 @@ async function renderSection(index) {
525
537
  }
526
538
  });
527
539
 
528
- // commons.document archetype's inline file preview (TASK-0157). Without this
529
- // listener the component's mrdLoadDocumentPreview request goes unanswered and
530
- // previewUrl never arrives the preview area stays on its loading state forever.
531
- section.addEventListener('mrdLoadDocumentPreview', async (e) => {
540
+ // commons.document archetype (TASK-0157/TASK-0168): mrd-document-view never
541
+ // renders the file itself, it only reports which file belongs to the record
542
+ // via mrdAttachments. The host resolves the href and renders it wherever it
543
+ // wants — here, a panel appended right after the section.
544
+ const documentPreviewEl = document.createElement('div');
545
+ documentPreviewEl.style.cssText = 'margin-top:1rem;min-height:400px;border:1px solid var(--mrd-border-color);border-radius:8px;overflow:hidden;display:none';
546
+ section.addEventListener('mrdAttachments', async (e) => {
532
547
  if (generation !== _sectionGeneration) return;
533
- const { href } = e.detail;
534
- logEvent('mrdLoadDocumentPreview', e.detail);
548
+ logEvent('mrdAttachments', e.detail);
549
+ const attachment = e.detail.attachments[0];
550
+ documentPreviewEl.innerHTML = '';
551
+ documentPreviewEl.style.display = attachment ? 'block' : 'none';
552
+ if (!attachment) return;
535
553
  try {
536
- const url = await apiGetDownloadLink(authGetToken(), href);
537
- await section.setDocumentPreviewUrl(url);
554
+ const url = await apiGetDownloadLink(authGetToken(), attachment.href);
555
+ const mime = (attachment.mimeType || '').toLowerCase();
556
+ const isPdf = mime === 'application/pdf' || /\.pdf$/i.test(attachment.fileName || '');
557
+ const isImage = mime.startsWith('image/') || /\.(png|jpe?g|gif|webp|svg|bmp)$/i.test(attachment.fileName || '');
558
+ if (isPdf) {
559
+ const iframe = document.createElement('iframe');
560
+ iframe.src = url;
561
+ iframe.title = attachment.fileName || 'preview';
562
+ iframe.style.cssText = 'width:100%;height:100%;min-height:400px;border:0';
563
+ documentPreviewEl.appendChild(iframe);
564
+ } else if (isImage) {
565
+ const img = document.createElement('img');
566
+ img.src = url;
567
+ img.alt = attachment.fileName || '';
568
+ img.style.cssText = 'width:100%;height:100%;object-fit:contain';
569
+ documentPreviewEl.appendChild(img);
570
+ } else {
571
+ documentPreviewEl.textContent = `No inline preview for "${attachment.fileName}" — download only.`;
572
+ }
538
573
  } catch (err) {
539
- console.error('[mrdLoadDocumentPreview] mislukt', href, err);
574
+ console.error('[mrdAttachments] preview laden mislukt', attachment.href, err);
540
575
  }
541
576
  });
542
577
 
@@ -588,6 +623,7 @@ async function renderSection(index) {
588
623
  });
589
624
 
590
625
  container.appendChild(section);
626
+ container.appendChild(documentPreviewEl);
591
627
  }
592
628
 
593
629
 
@@ -428,7 +428,7 @@ window.EXAMPLE_FIELD_TYPES_DATA = {
428
428
 
429
429
  window.EXAMPLE_DOCUMENT_ARCHETYPE = {
430
430
  archetype: 'commons.document',
431
- slots: { title: 'name', date: 'createdDate', summary: 'description', file: 'file', container: 'dossier' },
431
+ slots: { title: 'name', date: 'createdDate', summary: 'description', file: 'file', container: 'dossier', folder: 'folder' },
432
432
  };
433
433
 
434
434
  window.EXAMPLE_DOCUMENT_DATA = {
@@ -436,6 +436,7 @@ window.EXAMPLE_DOCUMENT_DATA = {
436
436
  createdDate: '2026-03-14',
437
437
  description: '<p>Signed engagement contract for the FY2026 period. Reviewed and countersigned by both parties.</p>',
438
438
  file: { href: '/data/demo/documents/1/file', fileName: 'contract-2026-acme.pdf' },
439
+ folder: 'correspondence/2026',
439
440
  _links: {
440
441
  dossier: { href: '/data/demo/dossiers/42', name: 'Acme Corp — Dossier 2026' },
441
442
  },
@@ -1 +1,2 @@
1
1
  export * from './types';
2
+ export { detectPreviewKind } from './utils/file-preview-kind';
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Extract the `commons.document` archetype's file slot from a data record as a
3
+ * `DocumentAttachment[]` — empty when the slot is unmapped or has no value.
4
+ * Shared by mrd-document-view (on load/data-change) and mrd-document-container
5
+ * (row-click prefetch on mrdNavigate), so both report the exact same shape.
6
+ */
7
+ export function attachmentsFromRecord(archetype, record) {
8
+ var _a, _b, _c, _d;
9
+ const field = (_a = archetype === null || archetype === void 0 ? void 0 : archetype.slots) === null || _a === void 0 ? void 0 : _a['file'];
10
+ if (!field)
11
+ return [];
12
+ const fileRaw = record === null || record === void 0 ? void 0 : record[field];
13
+ if (!fileRaw)
14
+ return [];
15
+ return [{
16
+ href: fileRaw.href,
17
+ fileName: (_b = fileRaw.fileName) !== null && _b !== void 0 ? _b : String(fileRaw),
18
+ mimeType: (_d = (_c = fileRaw.mimeType) !== null && _c !== void 0 ? _c : fileRaw.contentType) !== null && _d !== void 0 ? _d : undefined,
19
+ }];
20
+ }
@@ -1,4 +1,4 @@
1
- /** Pure classification logic for mrd-file-preview no Stencil dependency. */
1
+ /** Pure classification logic for deciding whether a file can be shown inline. */
2
2
  const IMAGE_EXTENSIONS = new Set(['png', 'jpg', 'jpeg', 'gif', 'webp', 'svg', 'bmp']);
3
3
  function extensionOf(fileName) {
4
4
  if (!fileName)
@@ -7,9 +7,9 @@ function extensionOf(fileName) {
7
7
  return match ? match[1].toLowerCase() : null;
8
8
  }
9
9
  /**
10
- * Decide how to render a file given its declared mime type and/or file name.
11
- * A declared mime type is authoritative when present (a mismatched file name
12
- * extension is ignored); the file name extension is only consulted as a
10
+ * Decide how a file could be rendered given its declared mime type and/or file
11
+ * name. A declared mime type is authoritative when present (a mismatched file
12
+ * name extension is ignored); the file name extension is only consulted as a
13
13
  * fallback when no mime type is known.
14
14
  */
15
15
  export function detectPreviewKind(mimeType, fileName) {
@@ -72,10 +72,6 @@ const translations = {
72
72
  folder_no_slash: "Een foldernaam mag geen '/' bevatten",
73
73
  folder_duplicate: 'Er bestaat al een folder met deze naam',
74
74
  doc_empty_drop: 'Nog geen documenten — sleep bestanden hierheen',
75
- // mrd-file-preview
76
- preview_unsupported: 'Geen voorbeeld beschikbaar voor dit bestandstype',
77
- preview_error: 'Voorbeeld laden mislukt',
78
- retry: 'Opnieuw proberen',
79
75
  },
80
76
  en: {
81
77
  required: 'This field is required',
@@ -150,10 +146,6 @@ const translations = {
150
146
  folder_no_slash: "A folder name cannot contain '/'",
151
147
  folder_duplicate: 'A folder with this name already exists',
152
148
  doc_empty_drop: 'No documents yet — drop files here',
153
- // mrd-file-preview
154
- preview_unsupported: 'No preview available for this file type',
155
- preview_error: 'Failed to load preview',
156
- retry: 'Retry',
157
149
  },
158
150
  ar: {
159
151
  required: 'هذا الحقل مطلوب',
@@ -222,10 +214,6 @@ const translations = {
222
214
  history_until: 'حتى',
223
215
  history_badge_tooltip: 'القيم السابقة',
224
216
  hyperlink_name: 'نص الرابط (اختياري)',
225
- // mrd-file-preview
226
- preview_unsupported: 'لا تتوفر معاينة لهذا النوع من الملفات',
227
- preview_error: 'فشل تحميل المعاينة',
228
- retry: 'إعادة المحاولة',
229
217
  },
230
218
  fr: {
231
219
  required: 'Ce champ est obligatoire',
@@ -294,10 +282,6 @@ const translations = {
294
282
  history_until: "jusqu'au",
295
283
  history_badge_tooltip: 'Valeurs précédentes',
296
284
  hyperlink_name: 'Texte du lien (optionnel)',
297
- // mrd-file-preview
298
- preview_unsupported: "Aucun aperçu disponible pour ce type de fichier",
299
- preview_error: "Échec du chargement de l'aperçu",
300
- retry: 'Réessayer',
301
285
  },
302
286
  de: {
303
287
  required: 'Dieses Feld ist erforderlich',
@@ -366,10 +350,6 @@ const translations = {
366
350
  history_until: 'bis',
367
351
  history_badge_tooltip: 'Vorherige Werte',
368
352
  hyperlink_name: 'Linktext (optional)',
369
- // mrd-file-preview
370
- preview_unsupported: 'Keine Vorschau für diesen Dateityp verfügbar',
371
- preview_error: 'Vorschau konnte nicht geladen werden',
372
- retry: 'Erneut versuchen',
373
353
  },
374
354
  es: {
375
355
  required: 'Este campo es obligatorio',
@@ -438,10 +418,6 @@ const translations = {
438
418
  history_until: 'hasta',
439
419
  history_badge_tooltip: 'Valores anteriores',
440
420
  hyperlink_name: 'Texto del enlace (opcional)',
441
- // mrd-file-preview
442
- preview_unsupported: 'Vista previa no disponible para este tipo de archivo',
443
- preview_error: 'Error al cargar la vista previa',
444
- retry: 'Reintentar',
445
421
  },
446
422
  it: {
447
423
  required: 'Questo campo è obbligatorio',
@@ -510,10 +486,6 @@ const translations = {
510
486
  history_until: 'fino a',
511
487
  history_badge_tooltip: 'Valori precedenti',
512
488
  hyperlink_name: 'Testo del collegamento (opzionale)',
513
- // mrd-file-preview
514
- preview_unsupported: 'Nessuna anteprima disponibile per questo tipo di file',
515
- preview_error: "Impossibile caricare l'anteprima",
516
- retry: 'Riprova',
517
489
  },
518
490
  uk: {
519
491
  required: "Це поле обов'язкове",
@@ -582,10 +554,6 @@ const translations = {
582
554
  history_until: 'до',
583
555
  history_badge_tooltip: 'Попередні значення',
584
556
  hyperlink_name: "Текст посилання (необов'язково)",
585
- // mrd-file-preview
586
- preview_unsupported: 'Попередній перегляд недоступний для цього типу файлу',
587
- preview_error: 'Не вдалося завантажити попередній перегляд',
588
- retry: 'Повторити',
589
557
  },
590
558
  };
591
559
  export function t(key, locale) {
@@ -0,0 +1 @@
1
+ function i(i,l){var n,o,u,v;const d=null===(n=null==i?void 0:i.slots)||void 0===n?void 0:n.file;if(!d)return[];const e=null==l?void 0:l[d];return e?[{href:e.href,fileName:null!==(o=e.fileName)&&void 0!==o?o:String(e),mimeType:null!==(v=null!==(u=e.mimeType)&&void 0!==u?u:e.contentType)&&void 0!==v?v:void 0}]:[]}export{i as a}
@@ -1 +1 @@
1
- import{h as r}from"@stencil/core/internal/client";import{t as n}from"./i18n.js";import{b as t}from"./client-layout.js";function e(r){if(null==r)return!1;if("string"==typeof r)return r.trim().length>0;if(Array.isArray(r))return r.length>0;if("object"==typeof r){if("href"in r)return"string"==typeof r.href&&r.href.trim().length>0;if("amount"in r)return null!=r.amount&&""!==r.amount}return!0}function u(r){return!r||/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(r)}function i(r){if(!r)return!0;try{const n=new URL(r);return"http:"===n.protocol||"https:"===n.protocol}catch(r){return!1}}function s(r,n){if(null==r||""===r)return!0;const e=Number(r);return!isNaN(e)&&(n===t.INTEGER?Number.isInteger(e):n!==t.PERCENTAGE||e>=0&&e<=100)}const o=({base:n,label:t,required:e})=>t?r("label",{class:`${n}__label${e?` ${n}__label--required`:""}`},t):null,a=({base:n,error:t})=>t?r("span",{class:`${n}__error`},t):null;function l(r,n,t="input"){return`${r}__${t}${n?` ${r}__${t}--error`:""}`}function f(r,t,u){return t&&!e(r)?n("required",u):""}export{o as F,a,i as b,l as c,s as d,e,f as r,u as v}
1
+ import{h as r}from"@stencil/core/internal/client";import{t as n}from"./i18n.js";import{b as t}from"./client-layout.js";function e(r){if(null==r)return!1;if("string"==typeof r)return r.trim().length>0;if(Array.isArray(r))return r.length>0;if("object"==typeof r){if("href"in r)return"string"==typeof r.href&&r.href.trim().length>0;if("amount"in r)return null!=r.amount&&""!==r.amount}return!0}function u(r){return!r||/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(r)}function i(r){if(!r)return!0;try{const n=new URL(r);return"http:"===n.protocol||"https:"===n.protocol}catch(r){return!1}}function s(r,n){if(null==r||""===r)return!0;const e=Number(r);return!isNaN(e)&&(n===t.INTEGER?Number.isInteger(e):n!==t.PERCENTAGE||e>=0&&e<=100)}const o=({base:n,label:t,required:e})=>t?r("label",{class:`${n}__label${e?` ${n}__label--required`:""}`},t):null,a=({base:n,error:t})=>t?r("span",{class:`${n}__error`},t):null;function l(r,n,t="input"){return`${r}__${t}${n?` ${r}__${t}--error`:""}`}function f(r,t,u){return t&&!e(r)?n("required",u):""}export{o as F,a,u as b,l as c,i as d,s as e,f as r,e as v}
@@ -1 +1 @@
1
- const e={nl:{required:"Dit veld is verplicht",select_placeholder:"Selecteer een optie",search_placeholder:"Zoeken...",upload_file:"Bestand uploaden",choose_file:"Bestand kiezen",clear:"Wissen",today:"Vandaag",invalid_email:"Voer een geldig e-mailadres in",invalid_url:"Voer een geldige URL in",invalid_number:"Voer een geldig getal in",drop_file_here:"Sleep bestand hierheen of",browse:"bladeren",file_too_large:"Bestand is te groot",invalid_image:"Selecteer een afbeeldingsbestand",search_results:"Zoekresultaten",no_results:"Geen resultaten gevonden",load_failed_retry:"Laden mislukt — opnieuw proberen",loading:"Laden...",submit:"Opslaan",cancel:"Annuleren",remove:"Verwijderen",add:"Toevoegen",yes:"Ja",no:"Nee",table_of:"van",download:"Downloaden",table_filter:"Filteren",table_filter_hide:"Filter verbergen",table_filter_active:"actief",table_filter_clear_all:"Alle filters wissen",table_new_record:"Nieuw record",table_export_excel:"Exporteer naar Excel",doc_view_switch:"Weergave wisselen",doc_view_tree:"Boomweergave",doc_view_list:"Lijstweergave",filter_sorting:"Sortering",filter_ascending:"Oplopend",filter_descending:"Aflopend",filter_section:"Filter",filter_apply:"Toepassen",filter_clear:"Wissen",filter_contains:"Bevat",filter_starts_with:"Begint met",filter_equals:"Gelijk aan",filter_has_value:"Heeft waarde",filter_is_empty:"Is leeg",filter_is_not_empty:"Is niet leeg",filter_exact:"Exact",filter_range:"Bereik",filter_from:"Van",filter_to:"Tot",filter_all:"Alle",filter_select_all:"Alles",filter_select_none:"Geen",filter_search_value:"Zoekwaarde...",filter_no_support:"Geen filtering beschikbaar voor dit veldtype.",textblock_show_more:"Meer tonen",close:"Sluiten",history_until:"tot",history_badge_tooltip:"Vorige waarden",hyperlink_name:"Linktekst (optioneel)",new_folder:"Nieuwe folder",folder_name_placeholder:"Foldernaam",folder_no_slash:"Een foldernaam mag geen '/' bevatten",folder_duplicate:"Er bestaat al een folder met deze naam",doc_empty_drop:"Nog geen documenten — sleep bestanden hierheen",preview_unsupported:"Geen voorbeeld beschikbaar voor dit bestandstype",preview_error:"Voorbeeld laden mislukt",retry:"Opnieuw proberen"},en:{required:"This field is required",select_placeholder:"Select an option",search_placeholder:"Search...",upload_file:"Upload file",choose_file:"Choose file",clear:"Clear",today:"Today",invalid_email:"Please enter a valid email address",invalid_url:"Please enter a valid URL",invalid_number:"Please enter a valid number",drop_file_here:"Drop file here or",browse:"browse",file_too_large:"File is too large",invalid_image:"Please select an image file",search_results:"Search results",no_results:"No results found",load_failed_retry:"Failed to load — retry",loading:"Loading...",submit:"Save",cancel:"Cancel",remove:"Remove",add:"Add",yes:"Yes",no:"No",table_of:"of",download:"Download",table_filter:"Filter",table_filter_hide:"Hide filter",table_filter_active:"active",table_filter_clear_all:"Clear all filters",table_new_record:"New record",table_export_excel:"Export to Excel",doc_view_switch:"Switch view",doc_view_tree:"Tree view",doc_view_list:"List view",filter_sorting:"Sorting",filter_ascending:"Ascending",filter_descending:"Descending",filter_section:"Filter",filter_apply:"Apply",filter_clear:"Clear",filter_contains:"Contains",filter_starts_with:"Starts with",filter_equals:"Equals",filter_has_value:"Has value",filter_is_empty:"Is empty",filter_is_not_empty:"Is not empty",filter_exact:"Exact",filter_range:"Range",filter_from:"From",filter_to:"To",filter_all:"All",filter_select_all:"All",filter_select_none:"None",filter_search_value:"Search value...",filter_no_support:"Filtering is not available for this field type.",textblock_show_more:"Show more",close:"Close",history_until:"until",history_badge_tooltip:"Previous values",hyperlink_name:"Link text (optional)",new_folder:"New folder",folder_name_placeholder:"Folder name",folder_no_slash:"A folder name cannot contain '/'",folder_duplicate:"A folder with this name already exists",doc_empty_drop:"No documents yet — drop files here",preview_unsupported:"No preview available for this file type",preview_error:"Failed to load preview",retry:"Retry"},ar:{required:"هذا الحقل مطلوب",select_placeholder:"اختر خياراً",search_placeholder:"بحث...",upload_file:"رفع ملف",choose_file:"اختر ملفاً",clear:"مسح",today:"اليوم",invalid_email:"يرجى إدخال عنوان بريد إلكتروني صحيح",invalid_url:"يرجى إدخال رابط صحيح",invalid_number:"يرجى إدخال رقم صحيح",drop_file_here:"اسحب الملف هنا أو",browse:"تصفح",file_too_large:"الملف كبير جداً",invalid_image:"يرجى اختيار ملف صورة",search_results:"نتائج البحث",no_results:"لم يتم العثور على نتائج",load_failed_retry:"فشل التحميل — إعادة المحاولة",loading:"جار التحميل...",submit:"حفظ",cancel:"إلغاء",remove:"إزالة",add:"إضافة",yes:"نعم",no:"لا",table_of:"من أصل",download:"تنزيل",table_filter:"تصفية",table_filter_hide:"إخفاء التصفية",table_filter_active:"نشط",table_filter_clear_all:"مسح جميع الفلاتر",table_new_record:"سجل جديد",table_export_excel:"تصدير إلى Excel",doc_view_switch:"تبديل العرض",doc_view_tree:"عرض شجري",doc_view_list:"عرض القائمة",filter_sorting:"الترتيب",filter_ascending:"تصاعدي",filter_descending:"تنازلي",filter_section:"تصفية",filter_apply:"تطبيق",filter_clear:"مسح",filter_contains:"يحتوي على",filter_starts_with:"يبدأ بـ",filter_equals:"يساوي",filter_has_value:"له قيمة",filter_is_empty:"فارغ",filter_is_not_empty:"ليس فارغاً",filter_exact:"دقيق",filter_range:"نطاق",filter_from:"من",filter_to:"إلى",filter_all:"الكل",filter_select_all:"الكل",filter_select_none:"لا شيء",filter_search_value:"قيمة البحث...",filter_no_support:"التصفية غير متاحة لهذا النوع من الحقول.",textblock_show_more:"عرض المزيد",close:"إغلاق",history_until:"حتى",history_badge_tooltip:"القيم السابقة",hyperlink_name:"نص الرابط (اختياري)",preview_unsupported:"لا تتوفر معاينة لهذا النوع من الملفات",preview_error:"فشل تحميل المعاينة",retry:"إعادة المحاولة"},fr:{required:"Ce champ est obligatoire",select_placeholder:"Sélectionner une option",search_placeholder:"Rechercher...",upload_file:"Télécharger un fichier",choose_file:"Choisir un fichier",clear:"Effacer",today:"Aujourd'hui",invalid_email:"Veuillez saisir une adresse e-mail valide",invalid_url:"Veuillez saisir une URL valide",invalid_number:"Veuillez saisir un nombre valide",drop_file_here:"Déposez le fichier ici ou",browse:"parcourir",file_too_large:"Le fichier est trop volumineux",invalid_image:"Veuillez sélectionner un fichier image",search_results:"Résultats de recherche",no_results:"Aucun résultat trouvé",load_failed_retry:"Échec du chargement — réessayer",loading:"Chargement...",submit:"Enregistrer",cancel:"Annuler",remove:"Supprimer",add:"Ajouter",yes:"Oui",no:"Non",table_of:"sur",download:"Télécharger",table_filter:"Filtrer",table_filter_hide:"Masquer le filtre",table_filter_active:"actif",table_filter_clear_all:"Effacer tous les filtres",table_new_record:"Nouvel enregistrement",table_export_excel:"Exporter vers Excel",doc_view_switch:"Changer de vue",doc_view_tree:"Vue arborescente",doc_view_list:"Vue liste",filter_sorting:"Tri",filter_ascending:"Croissant",filter_descending:"Décroissant",filter_section:"Filtre",filter_apply:"Appliquer",filter_clear:"Effacer",filter_contains:"Contient",filter_starts_with:"Commence par",filter_equals:"Égal à",filter_has_value:"A une valeur",filter_is_empty:"Est vide",filter_is_not_empty:"N'est pas vide",filter_exact:"Exact",filter_range:"Plage",filter_from:"De",filter_to:"À",filter_all:"Tous",filter_select_all:"Tous",filter_select_none:"Aucun",filter_search_value:"Valeur de recherche...",filter_no_support:"Le filtrage n'est pas disponible pour ce type de champ.",textblock_show_more:"Voir plus",close:"Fermer",history_until:"jusqu'au",history_badge_tooltip:"Valeurs précédentes",hyperlink_name:"Texte du lien (optionnel)",preview_unsupported:"Aucun aperçu disponible pour ce type de fichier",preview_error:"Échec du chargement de l'aperçu",retry:"Réessayer"},de:{required:"Dieses Feld ist erforderlich",select_placeholder:"Option auswählen",search_placeholder:"Suchen...",upload_file:"Datei hochladen",choose_file:"Datei auswählen",clear:"Löschen",today:"Heute",invalid_email:"Bitte geben Sie eine gültige E-Mail-Adresse ein",invalid_url:"Bitte geben Sie eine gültige URL ein",invalid_number:"Bitte geben Sie eine gültige Zahl ein",drop_file_here:"Datei hier ablegen oder",browse:"durchsuchen",file_too_large:"Datei ist zu groß",invalid_image:"Bitte eine Bilddatei auswählen",search_results:"Suchergebnisse",no_results:"Keine Ergebnisse gefunden",load_failed_retry:"Laden fehlgeschlagen — erneut versuchen",loading:"Laden...",submit:"Speichern",cancel:"Abbrechen",remove:"Entfernen",add:"Hinzufügen",yes:"Ja",no:"Nein",table_of:"von",download:"Herunterladen",table_filter:"Filtern",table_filter_hide:"Filter ausblenden",table_filter_active:"aktiv",table_filter_clear_all:"Alle Filter löschen",table_new_record:"Neuer Eintrag",table_export_excel:"Als Excel exportieren",doc_view_switch:"Ansicht wechseln",doc_view_tree:"Baumansicht",doc_view_list:"Listenansicht",filter_sorting:"Sortierung",filter_ascending:"Aufsteigend",filter_descending:"Absteigend",filter_section:"Filter",filter_apply:"Anwenden",filter_clear:"Löschen",filter_contains:"Enthält",filter_starts_with:"Beginnt mit",filter_equals:"Gleich",filter_has_value:"Hat Wert",filter_is_empty:"Ist leer",filter_is_not_empty:"Ist nicht leer",filter_exact:"Genau",filter_range:"Bereich",filter_from:"Von",filter_to:"Bis",filter_all:"Alle",filter_select_all:"Alle",filter_select_none:"Keine",filter_search_value:"Suchwert...",filter_no_support:"Filterung ist für diesen Feldtyp nicht verfügbar.",textblock_show_more:"Mehr anzeigen",close:"Schließen",history_until:"bis",history_badge_tooltip:"Vorherige Werte",hyperlink_name:"Linktext (optional)",preview_unsupported:"Keine Vorschau für diesen Dateityp verfügbar",preview_error:"Vorschau konnte nicht geladen werden",retry:"Erneut versuchen"},es:{required:"Este campo es obligatorio",select_placeholder:"Seleccionar una opción",search_placeholder:"Buscar...",upload_file:"Subir archivo",choose_file:"Elegir archivo",clear:"Borrar",today:"Hoy",invalid_email:"Por favor, introduzca una dirección de correo electrónico válida",invalid_url:"Por favor, introduzca una URL válida",invalid_number:"Por favor, introduzca un número válido",drop_file_here:"Suelte el archivo aquí o",browse:"explorar",file_too_large:"El archivo es demasiado grande",invalid_image:"Seleccione un archivo de imagen",search_results:"Resultados de búsqueda",no_results:"No se encontraron resultados",load_failed_retry:"Error al cargar — reintentar",loading:"Cargando...",submit:"Guardar",cancel:"Cancelar",remove:"Eliminar",add:"Añadir",yes:"Sí",no:"No",table_of:"de",download:"Descargar",table_filter:"Filtrar",table_filter_hide:"Ocultar filtro",table_filter_active:"activo",table_filter_clear_all:"Borrar todos los filtros",table_new_record:"Nuevo registro",table_export_excel:"Exportar a Excel",doc_view_switch:"Cambiar vista",doc_view_tree:"Vista de árbol",doc_view_list:"Vista de lista",filter_sorting:"Ordenación",filter_ascending:"Ascendente",filter_descending:"Descendente",filter_section:"Filtro",filter_apply:"Aplicar",filter_clear:"Borrar",filter_contains:"Contiene",filter_starts_with:"Empieza por",filter_equals:"Igual a",filter_has_value:"Tiene valor",filter_is_empty:"Está vacío",filter_is_not_empty:"No está vacío",filter_exact:"Exacto",filter_range:"Rango",filter_from:"Desde",filter_to:"Hasta",filter_all:"Todos",filter_select_all:"Todos",filter_select_none:"Ninguno",filter_search_value:"Valor de búsqueda...",filter_no_support:"El filtrado no está disponible para este tipo de campo.",textblock_show_more:"Mostrar más",close:"Cerrar",history_until:"hasta",history_badge_tooltip:"Valores anteriores",hyperlink_name:"Texto del enlace (opcional)",preview_unsupported:"Vista previa no disponible para este tipo de archivo",preview_error:"Error al cargar la vista previa",retry:"Reintentar"},it:{required:"Questo campo è obbligatorio",select_placeholder:"Seleziona un'opzione",search_placeholder:"Cerca...",upload_file:"Carica file",choose_file:"Scegli file",clear:"Cancella",today:"Oggi",invalid_email:"Inserisci un indirizzo email valido",invalid_url:"Inserisci un URL valido",invalid_number:"Inserisci un numero valido",drop_file_here:"Trascina il file qui o",browse:"sfoglia",file_too_large:"Il file è troppo grande",invalid_image:"Seleziona un file immagine",search_results:"Risultati della ricerca",no_results:"Nessun risultato trovato",load_failed_retry:"Caricamento non riuscito — riprova",loading:"Caricamento...",submit:"Salva",cancel:"Annulla",remove:"Rimuovi",add:"Aggiungi",yes:"Sì",no:"No",table_of:"di",download:"Scarica",table_filter:"Filtra",table_filter_hide:"Nascondi filtro",table_filter_active:"attivo",table_filter_clear_all:"Cancella tutti i filtri",table_new_record:"Nuovo record",table_export_excel:"Esporta in Excel",doc_view_switch:"Cambia vista",doc_view_tree:"Vista ad albero",doc_view_list:"Vista elenco",filter_sorting:"Ordinamento",filter_ascending:"Crescente",filter_descending:"Decrescente",filter_section:"Filtro",filter_apply:"Applica",filter_clear:"Cancella",filter_contains:"Contiene",filter_starts_with:"Inizia con",filter_equals:"Uguale a",filter_has_value:"Ha valore",filter_is_empty:"È vuoto",filter_is_not_empty:"Non è vuoto",filter_exact:"Esatto",filter_range:"Intervallo",filter_from:"Da",filter_to:"A",filter_all:"Tutti",filter_select_all:"Tutti",filter_select_none:"Nessuno",filter_search_value:"Valore di ricerca...",filter_no_support:"Il filtro non è disponibile per questo tipo di campo.",textblock_show_more:"Mostra altro",close:"Chiudi",history_until:"fino a",history_badge_tooltip:"Valori precedenti",hyperlink_name:"Testo del collegamento (opzionale)",preview_unsupported:"Nessuna anteprima disponibile per questo tipo di file",preview_error:"Impossibile caricare l'anteprima",retry:"Riprova"},uk:{required:"Це поле обов'язкове",select_placeholder:"Виберіть варіант",search_placeholder:"Пошук...",upload_file:"Завантажити файл",choose_file:"Вибрати файл",clear:"Очистити",today:"Сьогодні",invalid_email:"Будь ласка, введіть дійсну адресу електронної пошти",invalid_url:"Будь ласка, введіть дійсну URL-адресу",invalid_number:"Будь ласка, введіть дійсне число",drop_file_here:"Перетягніть файл сюди або",browse:"огляд",file_too_large:"Файл занадто великий",invalid_image:"Будь ласка, виберіть файл зображення",search_results:"Результати пошуку",no_results:"Результатів не знайдено",load_failed_retry:"Не вдалося завантажити — повторити",loading:"Завантаження...",submit:"Зберегти",cancel:"Скасувати",remove:"Видалити",add:"Додати",yes:"Так",no:"Ні",table_of:"з",download:"Завантажити",table_filter:"Фільтрувати",table_filter_hide:"Сховати фільтр",table_filter_active:"активний",table_filter_clear_all:"Очистити всі фільтри",table_new_record:"Новий запис",table_export_excel:"Експортувати до Excel",doc_view_switch:"Змінити вигляд",doc_view_tree:"Деревоподібний вигляд",doc_view_list:"Список",filter_sorting:"Сортування",filter_ascending:"За зростанням",filter_descending:"За спаданням",filter_section:"Фільтр",filter_apply:"Застосувати",filter_clear:"Очистити",filter_contains:"Містить",filter_starts_with:"Починається з",filter_equals:"Дорівнює",filter_has_value:"Має значення",filter_is_empty:"Порожнє",filter_is_not_empty:"Не порожнє",filter_exact:"Точно",filter_range:"Діапазон",filter_from:"Від",filter_to:"До",filter_all:"Всі",filter_select_all:"Всі",filter_select_none:"Жодного",filter_search_value:"Значення для пошуку...",filter_no_support:"Фільтрування недоступне для цього типу поля.",textblock_show_more:"Показати більше",close:"Закрити",history_until:"до",history_badge_tooltip:"Попередні значення",hyperlink_name:"Текст посилання (необов'язково)",preview_unsupported:"Попередній перегляд недоступний для цього типу файлу",preview_error:"Не вдалося завантажити попередній перегляд",retry:"Повторити"}};function l(l,r){var i,t,a;const o=(null!=r?r:"en").split("-")[0].toLowerCase();return null!==(a=null!==(t=(null!==(i=e[o])&&void 0!==i?i:e.en)[l])&&void 0!==t?t:e.en[l])&&void 0!==a?a:l}export{l as t}
1
+ const e={nl:{required:"Dit veld is verplicht",select_placeholder:"Selecteer een optie",search_placeholder:"Zoeken...",upload_file:"Bestand uploaden",choose_file:"Bestand kiezen",clear:"Wissen",today:"Vandaag",invalid_email:"Voer een geldig e-mailadres in",invalid_url:"Voer een geldige URL in",invalid_number:"Voer een geldig getal in",drop_file_here:"Sleep bestand hierheen of",browse:"bladeren",file_too_large:"Bestand is te groot",invalid_image:"Selecteer een afbeeldingsbestand",search_results:"Zoekresultaten",no_results:"Geen resultaten gevonden",load_failed_retry:"Laden mislukt — opnieuw proberen",loading:"Laden...",submit:"Opslaan",cancel:"Annuleren",remove:"Verwijderen",add:"Toevoegen",yes:"Ja",no:"Nee",table_of:"van",download:"Downloaden",table_filter:"Filteren",table_filter_hide:"Filter verbergen",table_filter_active:"actief",table_filter_clear_all:"Alle filters wissen",table_new_record:"Nieuw record",table_export_excel:"Exporteer naar Excel",doc_view_switch:"Weergave wisselen",doc_view_tree:"Boomweergave",doc_view_list:"Lijstweergave",filter_sorting:"Sortering",filter_ascending:"Oplopend",filter_descending:"Aflopend",filter_section:"Filter",filter_apply:"Toepassen",filter_clear:"Wissen",filter_contains:"Bevat",filter_starts_with:"Begint met",filter_equals:"Gelijk aan",filter_has_value:"Heeft waarde",filter_is_empty:"Is leeg",filter_is_not_empty:"Is niet leeg",filter_exact:"Exact",filter_range:"Bereik",filter_from:"Van",filter_to:"Tot",filter_all:"Alle",filter_select_all:"Alles",filter_select_none:"Geen",filter_search_value:"Zoekwaarde...",filter_no_support:"Geen filtering beschikbaar voor dit veldtype.",textblock_show_more:"Meer tonen",close:"Sluiten",history_until:"tot",history_badge_tooltip:"Vorige waarden",hyperlink_name:"Linktekst (optioneel)",new_folder:"Nieuwe folder",folder_name_placeholder:"Foldernaam",folder_no_slash:"Een foldernaam mag geen '/' bevatten",folder_duplicate:"Er bestaat al een folder met deze naam",doc_empty_drop:"Nog geen documenten — sleep bestanden hierheen"},en:{required:"This field is required",select_placeholder:"Select an option",search_placeholder:"Search...",upload_file:"Upload file",choose_file:"Choose file",clear:"Clear",today:"Today",invalid_email:"Please enter a valid email address",invalid_url:"Please enter a valid URL",invalid_number:"Please enter a valid number",drop_file_here:"Drop file here or",browse:"browse",file_too_large:"File is too large",invalid_image:"Please select an image file",search_results:"Search results",no_results:"No results found",load_failed_retry:"Failed to load — retry",loading:"Loading...",submit:"Save",cancel:"Cancel",remove:"Remove",add:"Add",yes:"Yes",no:"No",table_of:"of",download:"Download",table_filter:"Filter",table_filter_hide:"Hide filter",table_filter_active:"active",table_filter_clear_all:"Clear all filters",table_new_record:"New record",table_export_excel:"Export to Excel",doc_view_switch:"Switch view",doc_view_tree:"Tree view",doc_view_list:"List view",filter_sorting:"Sorting",filter_ascending:"Ascending",filter_descending:"Descending",filter_section:"Filter",filter_apply:"Apply",filter_clear:"Clear",filter_contains:"Contains",filter_starts_with:"Starts with",filter_equals:"Equals",filter_has_value:"Has value",filter_is_empty:"Is empty",filter_is_not_empty:"Is not empty",filter_exact:"Exact",filter_range:"Range",filter_from:"From",filter_to:"To",filter_all:"All",filter_select_all:"All",filter_select_none:"None",filter_search_value:"Search value...",filter_no_support:"Filtering is not available for this field type.",textblock_show_more:"Show more",close:"Close",history_until:"until",history_badge_tooltip:"Previous values",hyperlink_name:"Link text (optional)",new_folder:"New folder",folder_name_placeholder:"Folder name",folder_no_slash:"A folder name cannot contain '/'",folder_duplicate:"A folder with this name already exists",doc_empty_drop:"No documents yet — drop files here"},ar:{required:"هذا الحقل مطلوب",select_placeholder:"اختر خياراً",search_placeholder:"بحث...",upload_file:"رفع ملف",choose_file:"اختر ملفاً",clear:"مسح",today:"اليوم",invalid_email:"يرجى إدخال عنوان بريد إلكتروني صحيح",invalid_url:"يرجى إدخال رابط صحيح",invalid_number:"يرجى إدخال رقم صحيح",drop_file_here:"اسحب الملف هنا أو",browse:"تصفح",file_too_large:"الملف كبير جداً",invalid_image:"يرجى اختيار ملف صورة",search_results:"نتائج البحث",no_results:"لم يتم العثور على نتائج",load_failed_retry:"فشل التحميل — إعادة المحاولة",loading:"جار التحميل...",submit:"حفظ",cancel:"إلغاء",remove:"إزالة",add:"إضافة",yes:"نعم",no:"لا",table_of:"من أصل",download:"تنزيل",table_filter:"تصفية",table_filter_hide:"إخفاء التصفية",table_filter_active:"نشط",table_filter_clear_all:"مسح جميع الفلاتر",table_new_record:"سجل جديد",table_export_excel:"تصدير إلى Excel",doc_view_switch:"تبديل العرض",doc_view_tree:"عرض شجري",doc_view_list:"عرض القائمة",filter_sorting:"الترتيب",filter_ascending:"تصاعدي",filter_descending:"تنازلي",filter_section:"تصفية",filter_apply:"تطبيق",filter_clear:"مسح",filter_contains:"يحتوي على",filter_starts_with:"يبدأ بـ",filter_equals:"يساوي",filter_has_value:"له قيمة",filter_is_empty:"فارغ",filter_is_not_empty:"ليس فارغاً",filter_exact:"دقيق",filter_range:"نطاق",filter_from:"من",filter_to:"إلى",filter_all:"الكل",filter_select_all:"الكل",filter_select_none:"لا شيء",filter_search_value:"قيمة البحث...",filter_no_support:"التصفية غير متاحة لهذا النوع من الحقول.",textblock_show_more:"عرض المزيد",close:"إغلاق",history_until:"حتى",history_badge_tooltip:"القيم السابقة",hyperlink_name:"نص الرابط (اختياري)"},fr:{required:"Ce champ est obligatoire",select_placeholder:"Sélectionner une option",search_placeholder:"Rechercher...",upload_file:"Télécharger un fichier",choose_file:"Choisir un fichier",clear:"Effacer",today:"Aujourd'hui",invalid_email:"Veuillez saisir une adresse e-mail valide",invalid_url:"Veuillez saisir une URL valide",invalid_number:"Veuillez saisir un nombre valide",drop_file_here:"Déposez le fichier ici ou",browse:"parcourir",file_too_large:"Le fichier est trop volumineux",invalid_image:"Veuillez sélectionner un fichier image",search_results:"Résultats de recherche",no_results:"Aucun résultat trouvé",load_failed_retry:"Échec du chargement — réessayer",loading:"Chargement...",submit:"Enregistrer",cancel:"Annuler",remove:"Supprimer",add:"Ajouter",yes:"Oui",no:"Non",table_of:"sur",download:"Télécharger",table_filter:"Filtrer",table_filter_hide:"Masquer le filtre",table_filter_active:"actif",table_filter_clear_all:"Effacer tous les filtres",table_new_record:"Nouvel enregistrement",table_export_excel:"Exporter vers Excel",doc_view_switch:"Changer de vue",doc_view_tree:"Vue arborescente",doc_view_list:"Vue liste",filter_sorting:"Tri",filter_ascending:"Croissant",filter_descending:"Décroissant",filter_section:"Filtre",filter_apply:"Appliquer",filter_clear:"Effacer",filter_contains:"Contient",filter_starts_with:"Commence par",filter_equals:"Égal à",filter_has_value:"A une valeur",filter_is_empty:"Est vide",filter_is_not_empty:"N'est pas vide",filter_exact:"Exact",filter_range:"Plage",filter_from:"De",filter_to:"À",filter_all:"Tous",filter_select_all:"Tous",filter_select_none:"Aucun",filter_search_value:"Valeur de recherche...",filter_no_support:"Le filtrage n'est pas disponible pour ce type de champ.",textblock_show_more:"Voir plus",close:"Fermer",history_until:"jusqu'au",history_badge_tooltip:"Valeurs précédentes",hyperlink_name:"Texte du lien (optionnel)"},de:{required:"Dieses Feld ist erforderlich",select_placeholder:"Option auswählen",search_placeholder:"Suchen...",upload_file:"Datei hochladen",choose_file:"Datei auswählen",clear:"Löschen",today:"Heute",invalid_email:"Bitte geben Sie eine gültige E-Mail-Adresse ein",invalid_url:"Bitte geben Sie eine gültige URL ein",invalid_number:"Bitte geben Sie eine gültige Zahl ein",drop_file_here:"Datei hier ablegen oder",browse:"durchsuchen",file_too_large:"Datei ist zu groß",invalid_image:"Bitte eine Bilddatei auswählen",search_results:"Suchergebnisse",no_results:"Keine Ergebnisse gefunden",load_failed_retry:"Laden fehlgeschlagen — erneut versuchen",loading:"Laden...",submit:"Speichern",cancel:"Abbrechen",remove:"Entfernen",add:"Hinzufügen",yes:"Ja",no:"Nein",table_of:"von",download:"Herunterladen",table_filter:"Filtern",table_filter_hide:"Filter ausblenden",table_filter_active:"aktiv",table_filter_clear_all:"Alle Filter löschen",table_new_record:"Neuer Eintrag",table_export_excel:"Als Excel exportieren",doc_view_switch:"Ansicht wechseln",doc_view_tree:"Baumansicht",doc_view_list:"Listenansicht",filter_sorting:"Sortierung",filter_ascending:"Aufsteigend",filter_descending:"Absteigend",filter_section:"Filter",filter_apply:"Anwenden",filter_clear:"Löschen",filter_contains:"Enthält",filter_starts_with:"Beginnt mit",filter_equals:"Gleich",filter_has_value:"Hat Wert",filter_is_empty:"Ist leer",filter_is_not_empty:"Ist nicht leer",filter_exact:"Genau",filter_range:"Bereich",filter_from:"Von",filter_to:"Bis",filter_all:"Alle",filter_select_all:"Alle",filter_select_none:"Keine",filter_search_value:"Suchwert...",filter_no_support:"Filterung ist für diesen Feldtyp nicht verfügbar.",textblock_show_more:"Mehr anzeigen",close:"Schließen",history_until:"bis",history_badge_tooltip:"Vorherige Werte",hyperlink_name:"Linktext (optional)"},es:{required:"Este campo es obligatorio",select_placeholder:"Seleccionar una opción",search_placeholder:"Buscar...",upload_file:"Subir archivo",choose_file:"Elegir archivo",clear:"Borrar",today:"Hoy",invalid_email:"Por favor, introduzca una dirección de correo electrónico válida",invalid_url:"Por favor, introduzca una URL válida",invalid_number:"Por favor, introduzca un número válido",drop_file_here:"Suelte el archivo aquí o",browse:"explorar",file_too_large:"El archivo es demasiado grande",invalid_image:"Seleccione un archivo de imagen",search_results:"Resultados de búsqueda",no_results:"No se encontraron resultados",load_failed_retry:"Error al cargar — reintentar",loading:"Cargando...",submit:"Guardar",cancel:"Cancelar",remove:"Eliminar",add:"Añadir",yes:"Sí",no:"No",table_of:"de",download:"Descargar",table_filter:"Filtrar",table_filter_hide:"Ocultar filtro",table_filter_active:"activo",table_filter_clear_all:"Borrar todos los filtros",table_new_record:"Nuevo registro",table_export_excel:"Exportar a Excel",doc_view_switch:"Cambiar vista",doc_view_tree:"Vista de árbol",doc_view_list:"Vista de lista",filter_sorting:"Ordenación",filter_ascending:"Ascendente",filter_descending:"Descendente",filter_section:"Filtro",filter_apply:"Aplicar",filter_clear:"Borrar",filter_contains:"Contiene",filter_starts_with:"Empieza por",filter_equals:"Igual a",filter_has_value:"Tiene valor",filter_is_empty:"Está vacío",filter_is_not_empty:"No está vacío",filter_exact:"Exacto",filter_range:"Rango",filter_from:"Desde",filter_to:"Hasta",filter_all:"Todos",filter_select_all:"Todos",filter_select_none:"Ninguno",filter_search_value:"Valor de búsqueda...",filter_no_support:"El filtrado no está disponible para este tipo de campo.",textblock_show_more:"Mostrar más",close:"Cerrar",history_until:"hasta",history_badge_tooltip:"Valores anteriores",hyperlink_name:"Texto del enlace (opcional)"},it:{required:"Questo campo è obbligatorio",select_placeholder:"Seleziona un'opzione",search_placeholder:"Cerca...",upload_file:"Carica file",choose_file:"Scegli file",clear:"Cancella",today:"Oggi",invalid_email:"Inserisci un indirizzo email valido",invalid_url:"Inserisci un URL valido",invalid_number:"Inserisci un numero valido",drop_file_here:"Trascina il file qui o",browse:"sfoglia",file_too_large:"Il file è troppo grande",invalid_image:"Seleziona un file immagine",search_results:"Risultati della ricerca",no_results:"Nessun risultato trovato",load_failed_retry:"Caricamento non riuscito — riprova",loading:"Caricamento...",submit:"Salva",cancel:"Annulla",remove:"Rimuovi",add:"Aggiungi",yes:"Sì",no:"No",table_of:"di",download:"Scarica",table_filter:"Filtra",table_filter_hide:"Nascondi filtro",table_filter_active:"attivo",table_filter_clear_all:"Cancella tutti i filtri",table_new_record:"Nuovo record",table_export_excel:"Esporta in Excel",doc_view_switch:"Cambia vista",doc_view_tree:"Vista ad albero",doc_view_list:"Vista elenco",filter_sorting:"Ordinamento",filter_ascending:"Crescente",filter_descending:"Decrescente",filter_section:"Filtro",filter_apply:"Applica",filter_clear:"Cancella",filter_contains:"Contiene",filter_starts_with:"Inizia con",filter_equals:"Uguale a",filter_has_value:"Ha valore",filter_is_empty:"È vuoto",filter_is_not_empty:"Non è vuoto",filter_exact:"Esatto",filter_range:"Intervallo",filter_from:"Da",filter_to:"A",filter_all:"Tutti",filter_select_all:"Tutti",filter_select_none:"Nessuno",filter_search_value:"Valore di ricerca...",filter_no_support:"Il filtro non è disponibile per questo tipo di campo.",textblock_show_more:"Mostra altro",close:"Chiudi",history_until:"fino a",history_badge_tooltip:"Valori precedenti",hyperlink_name:"Testo del collegamento (opzionale)"},uk:{required:"Це поле обов'язкове",select_placeholder:"Виберіть варіант",search_placeholder:"Пошук...",upload_file:"Завантажити файл",choose_file:"Вибрати файл",clear:"Очистити",today:"Сьогодні",invalid_email:"Будь ласка, введіть дійсну адресу електронної пошти",invalid_url:"Будь ласка, введіть дійсну URL-адресу",invalid_number:"Будь ласка, введіть дійсне число",drop_file_here:"Перетягніть файл сюди або",browse:"огляд",file_too_large:"Файл занадто великий",invalid_image:"Будь ласка, виберіть файл зображення",search_results:"Результати пошуку",no_results:"Результатів не знайдено",load_failed_retry:"Не вдалося завантажити — повторити",loading:"Завантаження...",submit:"Зберегти",cancel:"Скасувати",remove:"Видалити",add:"Додати",yes:"Так",no:"Ні",table_of:"з",download:"Завантажити",table_filter:"Фільтрувати",table_filter_hide:"Сховати фільтр",table_filter_active:"активний",table_filter_clear_all:"Очистити всі фільтри",table_new_record:"Новий запис",table_export_excel:"Експортувати до Excel",doc_view_switch:"Змінити вигляд",doc_view_tree:"Деревоподібний вигляд",doc_view_list:"Список",filter_sorting:"Сортування",filter_ascending:"За зростанням",filter_descending:"За спаданням",filter_section:"Фільтр",filter_apply:"Застосувати",filter_clear:"Очистити",filter_contains:"Містить",filter_starts_with:"Починається з",filter_equals:"Дорівнює",filter_has_value:"Має значення",filter_is_empty:"Порожнє",filter_is_not_empty:"Не порожнє",filter_exact:"Точно",filter_range:"Діапазон",filter_from:"Від",filter_to:"До",filter_all:"Всі",filter_select_all:"Всі",filter_select_none:"Жодного",filter_search_value:"Значення для пошуку...",filter_no_support:"Фільтрування недоступне для цього типу поля.",textblock_show_more:"Показати більше",close:"Закрити",history_until:"до",history_badge_tooltip:"Попередні значення",hyperlink_name:"Текст посилання (необов'язково)"}};function l(l,i){var r,t,a;const o=(null!=i?i:"en").split("-")[0].toLowerCase();return null!==(a=null!==(t=(null!==(r=e[o])&&void 0!==r?r:e.en)[l])&&void 0!==t?t:e.en[l])&&void 0!==a?a:l}export{l as t}
@@ -1 +1 @@
1
- export{getAssetPath,render,setAssetPath,setNonce,setPlatformOptions}from"@stencil/core/internal/client";export{A as ARCHETYPE_DOCUMENT,b as ClientLayoutItemFieldDataType,c as ClientLayoutItemRelationDisplayType,d as ClientLayoutItemRelationEditBehavior,a as ClientLayoutItemType,e as ClientLayoutNavigateBehaviour,C as ClientLayoutType,r as resolveArchetype}from"./client-layout.js";
1
+ export{getAssetPath,render,setAssetPath,setNonce,setPlatformOptions}from"@stencil/core/internal/client";export{A as ARCHETYPE_DOCUMENT,b as ClientLayoutItemFieldDataType,c as ClientLayoutItemRelationDisplayType,d as ClientLayoutItemRelationEditBehavior,a as ClientLayoutItemType,e as ClientLayoutNavigateBehaviour,C as ClientLayoutType,r as resolveArchetype}from"./client-layout.js";const t=new Set(["png","jpg","jpeg","gif","webp","svg","bmp"]);function n(e,n){const a=(null!=e?e:"").toLowerCase().trim();if(a)return"application/pdf"===a?"pdf":a.startsWith("image/")?"image":"unsupported";const i=function(e){if(!e)return null;const t=/\.([a-z0-9]+)$/i.exec(e);return t?t[1].toLowerCase():null}(n);return"pdf"===i?"pdf":i&&t.has(i)?"image":"unsupported"}export{n as detectPreviewKind}
@@ -1 +1 @@
1
- import{proxyCustomElement as r,HTMLElement as t,createEvent as e,h as o,Host as i,transformTag as n}from"@stencil/core/internal/client";import{e as d}from"./client-layout.js";import{t as a}from"./i18n.js";import{d as s}from"./mrd-document-list2.js";import{d as c}from"./mrd-table2.js";const m=r(class extends t{constructor(r){super(),!1!==r&&this.__registerHost(),this.mrdLoadPage=e(this,"mrdLoadPage",7),this.mrdLoadDistinct=e(this,"mrdLoadDistinct",7),this.mrdLoadAggregations=e(this,"mrdLoadAggregations",7),this.mrdNavigate=e(this,"mrdNavigate",7),this.mrdAction=e(this,"mrdAction",7),this.mrdUpdateObject=e(this,"mrdUpdateObject",7),this.mrdUpload=e(this,"mrdUpload",7),this.mrdCreateObject=e(this,"mrdCreateObject",7),this.item=null,this.parentId="",this.containerHref="",this.viewKey="",this.height=460,this.locale=navigator.language,this.mode="tree",this.canCreate=!1,this.tableInited=!1,this.createFolder=()=>{var r;null===(r=this.listEl)||void 0===r||r.createFolder()}}componentDidRender(){var r;if("list"===this.mode&&this.tableEl&&!this.tableInited){this.tableInited=!0;const t=this.tableEl;Promise.resolve(null===(r=t.componentOnReady)||void 0===r?void 0:r.call(t)).then((()=>t.init()))}}setMode(r){r!==this.mode&&(this.canCreate=!1,this.tableInited=!1,this.mode=r)}renderToolbar(){return o("div",{class:"mrd-document-container__toolbar"},"tree"===this.mode&&o("button",{type:"button",class:"mrd-document-container__action",disabled:!this.canCreate,onClick:this.createFolder},o("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"},o("path",{d:"M3 7a2 2 0 0 1 2-2h4l2 2h8a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"}),o("path",{d:"M12 11v4M10 13h4"})),a("new_folder",this.locale)),o("div",{class:"mrd-document-container__seg",role:"group","aria-label":a("doc_view_switch",this.locale)},o("button",{class:"mrd-document-container__seg-btn","aria-pressed":String("tree"===this.mode),title:a("doc_view_tree",this.locale),"aria-label":a("doc_view_tree",this.locale),onClick:()=>this.setMode("tree")},o("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"},o("path",{d:"M3 5h6M3 12h9M3 19h6"}),o("circle",{cx:"18",cy:"5",r:"1.6"}),o("circle",{cx:"18",cy:"19",r:"1.6"}),o("path",{d:"M16 12h4"}))),o("button",{class:"mrd-document-container__seg-btn","aria-pressed":String("list"===this.mode),title:a("doc_view_list",this.locale),"aria-label":a("doc_view_list",this.locale),onClick:()=>this.setMode("list")},o("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"},o("path",{d:"M8 6h13M8 12h13M8 18h13M3 6h.01M3 12h.01M3 18h.01"})))))}renderTree(){return o("mrd-document-list",{"data-doclist":this.viewKey,ref:r=>this.listEl=r,item:this.item,archetype:this.archetype,parentId:this.parentId,containerHref:this.containerHref,locale:this.locale,onMrdLoadDistinct:r=>{r.stopPropagation(),this.mrdLoadDistinct.emit(r.detail)},onMrdLoadPage:r=>{r.stopPropagation(),this.mrdLoadPage.emit(r.detail)},onMrdNavigate:r=>{r.stopPropagation(),this.mrdNavigate.emit(Object.assign(Object.assign({},r.detail),{navigateBehaviour:d.OVERLAY_PAGE}))},onMrdCanCreate:r=>{r.stopPropagation(),this.canCreate=r.detail},onMrdUpdateObject:r=>{r.stopPropagation(),this.mrdUpdateObject.emit(r.detail)},onMrdUpload:r=>{r.stopPropagation(),this.mrdUpload.emit(r.detail)},onMrdCreateObject:r=>{r.stopPropagation(),this.mrdCreateObject.emit(r.detail)}})}renderList(){return o("mrd-table",{"data-view":this.viewKey,ref:r=>this.tableEl=r,item:this.item,parentId:this.parentId,locale:this.locale,onMrdLoadPage:r=>{r.stopPropagation(),this.mrdLoadPage.emit(r.detail)},onMrdLoadAggregations:r=>{r.stopPropagation(),this.mrdLoadAggregations.emit(r.detail)},onMrdRowClick:r=>{var t,e,o;r.stopPropagation();const{row:i,listContext:n}=r.detail;this.mrdNavigate.emit({href:null===(e=null===(t=null==i?void 0:i._links)||void 0===t?void 0:t.self)||void 0===e?void 0:e.href,label:null!==(o=null==i?void 0:i.name)&&void 0!==o?o:"",navigateBehaviour:d.OVERLAY_PAGE,listContext:n})},onMrdAction:r=>{r.stopPropagation(),this.mrdAction.emit(r.detail)}})}render(){const r="tree"===this.mode;return o(i,{key:"7d0523d66f9a3d189dcc5517cd7281a57456977d"},this.renderToolbar(),o("div",{key:"19b0f416d2ad1b093afd6f799670debf8c18b225",class:{"mrd-document-container__body":!0,"mrd-document-container__body--tree":r},style:r?{height:`${this.height}px`,overflowY:"auto"}:{}},r?this.renderTree():this.renderList()))}get el(){return this}static get style(){return".sc-mrd-document-container-h{display:block}.mrd-document-container__toolbar.sc-mrd-document-container{display:flex;align-items:center;justify-content:flex-end;gap:var(--mrd-space-2);padding:var(--mrd-space-2) 0;border-bottom:1px solid var(--mrd-color-neutral-100)}.mrd-document-container__body--tree.sc-mrd-document-container{border:1px solid var(--mrd-border-color);border-radius:var(--mrd-border-radius);overflow:hidden}.mrd-document-container__action.sc-mrd-document-container{display:inline-flex;align-items:center;gap:var(--mrd-space-2);height:1.625rem;padding:0 var(--mrd-space-3);font-size:var(--mrd-font-size-sm);color:var(--mrd-color-neutral-700);background:var(--mrd-color-white);border:1px solid var(--mrd-color-neutral-200);border-radius:var(--mrd-border-radius);cursor:pointer;transition:background var(--mrd-transition-fast), border-color var(--mrd-transition-fast)}.mrd-document-container__action.sc-mrd-document-container svg.sc-mrd-document-container{width:1rem;height:1rem;color:var(--mrd-color-folder)}.mrd-document-container__action.sc-mrd-document-container:hover:not(:disabled){background:var(--mrd-color-neutral-50);border-color:var(--mrd-color-neutral-300)}.mrd-document-container__action.sc-mrd-document-container:disabled{opacity:0.5;cursor:not-allowed}.mrd-document-container__seg.sc-mrd-document-container{display:inline-flex;gap:2px;padding:2px;background:var(--mrd-color-neutral-100);border-radius:var(--mrd-border-radius)}.mrd-document-container__seg-btn.sc-mrd-document-container{width:1.875rem;height:1.625rem;display:grid;place-items:center;border:none;background:none;border-radius:var(--mrd-border-radius-sm);color:var(--mrd-color-neutral-500);cursor:pointer;transition:color var(--mrd-transition-fast), background var(--mrd-transition-fast)}.mrd-document-container__seg-btn.sc-mrd-document-container:hover{color:var(--mrd-color-neutral-800)}.mrd-document-container__seg-btn[aria-pressed=true].sc-mrd-document-container{background:var(--mrd-color-white);color:var(--mrd-color-primary-dark);box-shadow:var(--mrd-shadow-sm)}.mrd-document-container__seg-btn.sc-mrd-document-container svg.sc-mrd-document-container{width:1rem;height:1rem}"}},[2,"mrd-document-container",{item:[16],archetype:[16],parentId:[1,"parent-id"],containerHref:[1,"container-href"],viewKey:[1,"view-key"],height:[2],locale:[1],mode:[32],canCreate:[32]}]);function l(){"undefined"!=typeof customElements&&["mrd-document-container","mrd-document-list","mrd-table"].forEach((r=>{switch(r){case"mrd-document-container":customElements.get(n(r))||customElements.define(n(r),m);break;case"mrd-document-list":customElements.get(n(r))||s();break;case"mrd-table":customElements.get(n(r))||c()}}))}export{m as M,l as d}
1
+ import{proxyCustomElement as r,HTMLElement as t,createEvent as e,h as o,Host as i,transformTag as n}from"@stencil/core/internal/client";import{e as d}from"./client-layout.js";import{t as a}from"./i18n.js";import{a as s}from"./document-attachments.js";import{d as c}from"./mrd-document-list2.js";import{d as m}from"./mrd-table2.js";const l=r(class extends t{constructor(r){super(),!1!==r&&this.__registerHost(),this.mrdLoadPage=e(this,"mrdLoadPage",7),this.mrdLoadDistinct=e(this,"mrdLoadDistinct",7),this.mrdLoadAggregations=e(this,"mrdLoadAggregations",7),this.mrdNavigate=e(this,"mrdNavigate",7),this.mrdAction=e(this,"mrdAction",7),this.mrdUpdateObject=e(this,"mrdUpdateObject",7),this.mrdUpload=e(this,"mrdUpload",7),this.mrdCreateObject=e(this,"mrdCreateObject",7),this.item=null,this.parentId="",this.containerHref="",this.viewKey="",this.height=460,this.locale=navigator.language,this.mode="tree",this.canCreate=!1,this.tableInited=!1,this.createFolder=()=>{var r;null===(r=this.listEl)||void 0===r||r.createFolder()}}componentDidRender(){var r;if("list"===this.mode&&this.tableEl&&!this.tableInited){this.tableInited=!0;const t=this.tableEl;Promise.resolve(null===(r=t.componentOnReady)||void 0===r?void 0:r.call(t)).then((()=>t.init()))}}setMode(r){r!==this.mode&&(this.canCreate=!1,this.tableInited=!1,this.mode=r)}renderToolbar(){return o("div",{class:"mrd-document-container__toolbar"},"tree"===this.mode&&o("button",{type:"button",class:"mrd-document-container__action",disabled:!this.canCreate,onClick:this.createFolder},o("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"},o("path",{d:"M3 7a2 2 0 0 1 2-2h4l2 2h8a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"}),o("path",{d:"M12 11v4M10 13h4"})),a("new_folder",this.locale)),o("div",{class:"mrd-document-container__seg",role:"group","aria-label":a("doc_view_switch",this.locale)},o("button",{class:"mrd-document-container__seg-btn","aria-pressed":String("tree"===this.mode),title:a("doc_view_tree",this.locale),"aria-label":a("doc_view_tree",this.locale),onClick:()=>this.setMode("tree")},o("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"},o("path",{d:"M3 5h6M3 12h9M3 19h6"}),o("circle",{cx:"18",cy:"5",r:"1.6"}),o("circle",{cx:"18",cy:"19",r:"1.6"}),o("path",{d:"M16 12h4"}))),o("button",{class:"mrd-document-container__seg-btn","aria-pressed":String("list"===this.mode),title:a("doc_view_list",this.locale),"aria-label":a("doc_view_list",this.locale),onClick:()=>this.setMode("list")},o("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"},o("path",{d:"M8 6h13M8 12h13M8 18h13M3 6h.01M3 12h.01M3 18h.01"})))))}renderTree(){return o("mrd-document-list",{"data-doclist":this.viewKey,ref:r=>this.listEl=r,item:this.item,archetype:this.archetype,parentId:this.parentId,containerHref:this.containerHref,locale:this.locale,onMrdLoadDistinct:r=>{r.stopPropagation(),this.mrdLoadDistinct.emit(r.detail)},onMrdLoadPage:r=>{r.stopPropagation(),this.mrdLoadPage.emit(r.detail)},onMrdNavigate:r=>{r.stopPropagation(),this.mrdNavigate.emit(Object.assign(Object.assign({},r.detail),{navigateBehaviour:d.OVERLAY_PAGE}))},onMrdCanCreate:r=>{r.stopPropagation(),this.canCreate=r.detail},onMrdUpdateObject:r=>{r.stopPropagation(),this.mrdUpdateObject.emit(r.detail)},onMrdUpload:r=>{r.stopPropagation(),this.mrdUpload.emit(r.detail)},onMrdCreateObject:r=>{r.stopPropagation(),this.mrdCreateObject.emit(r.detail)}})}renderList(){return o("mrd-table",{"data-view":this.viewKey,ref:r=>this.tableEl=r,item:this.item,parentId:this.parentId,locale:this.locale,onMrdLoadPage:r=>{r.stopPropagation(),this.mrdLoadPage.emit(r.detail)},onMrdLoadAggregations:r=>{r.stopPropagation(),this.mrdLoadAggregations.emit(r.detail)},onMrdRowClick:r=>{var t,e,o;r.stopPropagation();const{row:i,listContext:n}=r.detail;this.mrdNavigate.emit({href:null===(e=null===(t=null==i?void 0:i._links)||void 0===t?void 0:t.self)||void 0===e?void 0:e.href,label:null!==(o=null==i?void 0:i.name)&&void 0!==o?o:"",navigateBehaviour:d.OVERLAY_PAGE,listContext:n,attachments:s(this.archetype,i)})},onMrdAction:r=>{r.stopPropagation(),this.mrdAction.emit(r.detail)}})}render(){const r="tree"===this.mode;return o(i,{key:"4d21f26c956773c63cbf5118394c6afa29d6014d"},this.renderToolbar(),o("div",{key:"bc070236bf9a7d0eba57aa2cd70fa3ae36cbf5f1",class:{"mrd-document-container__body":!0,"mrd-document-container__body--tree":r},style:r?{height:`${this.height}px`,overflowY:"auto"}:{}},r?this.renderTree():this.renderList()))}get el(){return this}static get style(){return".sc-mrd-document-container-h{display:block}.mrd-document-container__toolbar.sc-mrd-document-container{display:flex;align-items:center;justify-content:flex-end;gap:var(--mrd-space-2);padding:var(--mrd-space-2) 0;border-bottom:1px solid var(--mrd-color-neutral-100)}.mrd-document-container__body--tree.sc-mrd-document-container{border:1px solid var(--mrd-border-color);border-radius:var(--mrd-border-radius);overflow:hidden}.mrd-document-container__action.sc-mrd-document-container{display:inline-flex;align-items:center;gap:var(--mrd-space-2);height:1.625rem;padding:0 var(--mrd-space-3);font-size:var(--mrd-font-size-sm);color:var(--mrd-color-neutral-700);background:var(--mrd-color-white);border:1px solid var(--mrd-color-neutral-200);border-radius:var(--mrd-border-radius);cursor:pointer;transition:background var(--mrd-transition-fast), border-color var(--mrd-transition-fast)}.mrd-document-container__action.sc-mrd-document-container svg.sc-mrd-document-container{width:1rem;height:1rem;color:var(--mrd-color-folder)}.mrd-document-container__action.sc-mrd-document-container:hover:not(:disabled){background:var(--mrd-color-neutral-50);border-color:var(--mrd-color-neutral-300)}.mrd-document-container__action.sc-mrd-document-container:disabled{opacity:0.5;cursor:not-allowed}.mrd-document-container__seg.sc-mrd-document-container{display:inline-flex;gap:2px;padding:2px;background:var(--mrd-color-neutral-100);border-radius:var(--mrd-border-radius)}.mrd-document-container__seg-btn.sc-mrd-document-container{width:1.875rem;height:1.625rem;display:grid;place-items:center;border:none;background:none;border-radius:var(--mrd-border-radius-sm);color:var(--mrd-color-neutral-500);cursor:pointer;transition:color var(--mrd-transition-fast), background var(--mrd-transition-fast)}.mrd-document-container__seg-btn.sc-mrd-document-container:hover{color:var(--mrd-color-neutral-800)}.mrd-document-container__seg-btn[aria-pressed=true].sc-mrd-document-container{background:var(--mrd-color-white);color:var(--mrd-color-primary-dark);box-shadow:var(--mrd-shadow-sm)}.mrd-document-container__seg-btn.sc-mrd-document-container svg.sc-mrd-document-container{width:1rem;height:1rem}"}},[2,"mrd-document-container",{item:[16],archetype:[16],parentId:[1,"parent-id"],containerHref:[1,"container-href"],viewKey:[1,"view-key"],height:[2],locale:[1],mode:[32],canCreate:[32]}]);function h(){"undefined"!=typeof customElements&&["mrd-document-container","mrd-document-list","mrd-table"].forEach((r=>{switch(r){case"mrd-document-container":customElements.get(n(r))||customElements.define(n(r),l);break;case"mrd-document-list":customElements.get(n(r))||c();break;case"mrd-table":customElements.get(n(r))||m()}}))}export{l as M,h as d}