@mmlogic/components 0.5.3 → 0.5.4

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 (41) hide show
  1. package/dist/cjs/{cell-renderer-7KX9Qbml.js → cell-renderer-Coy-aD3k.js} +24 -0
  2. package/dist/cjs/loader.cjs.js +1 -1
  3. package/dist/cjs/mosterdcomponents.cjs.js +1 -1
  4. package/dist/cjs/mrd-boolean-field_25.cjs.entry.js +97 -23
  5. package/dist/cjs/mrd-merge-view.cjs.entry.js +1 -1
  6. package/dist/collection/components/documents/mrd-document-container/mrd-document-container.css +3 -0
  7. package/dist/collection/components/documents/mrd-document-container/mrd-document-container.js +23 -3
  8. package/dist/collection/components/documents/mrd-document-list/mrd-document-list.js +76 -2
  9. package/dist/collection/components/fields/mrd-relation-field/mrd-relation-field.js +13 -3
  10. package/dist/collection/components/form/mrd-form/mrd-form.js +8 -4
  11. package/dist/collection/components/layout/mrd-layout-section/field-value.js +4 -2
  12. package/dist/collection/components/layout/mrd-layout-section/layout-helpers.js +6 -0
  13. package/dist/collection/components/layout/mrd-layout-section/mrd-layout-section.css +4 -0
  14. package/dist/collection/components/layout/mrd-layout-section/mrd-layout-section.js +8 -8
  15. package/dist/collection/dev/example-data.js +6 -1
  16. package/dist/collection/utils/i18n.js +24 -0
  17. package/dist/components/i18n.js +1 -1
  18. package/dist/components/mrd-document-container2.js +1 -1
  19. package/dist/components/mrd-document-list2.js +1 -1
  20. package/dist/components/mrd-form.js +1 -1
  21. package/dist/components/mrd-layout-section.js +1 -1
  22. package/dist/components/mrd-relation-field2.js +1 -1
  23. package/dist/esm/{cell-renderer-DIsNX9D7.js → cell-renderer-C2FLUrMN.js} +24 -0
  24. package/dist/esm/loader.js +1 -1
  25. package/dist/esm/mosterdcomponents.js +1 -1
  26. package/dist/esm/mrd-boolean-field_25.entry.js +97 -23
  27. package/dist/esm/mrd-merge-view.entry.js +1 -1
  28. package/dist/mosterdcomponents/mosterdcomponents.esm.js +1 -1
  29. package/dist/mosterdcomponents/{p-4e061416.entry.js → p-4ea5b97c.entry.js} +1 -1
  30. package/dist/mosterdcomponents/p-8736313b.entry.js +3 -0
  31. package/dist/mosterdcomponents/p-BgsPVesg.js +1 -0
  32. package/dist/types/components/documents/mrd-document-container/mrd-document-container.d.ts +7 -0
  33. package/dist/types/components/documents/mrd-document-list/mrd-document-list.d.ts +17 -0
  34. package/dist/types/components/fields/mrd-relation-field/mrd-relation-field.d.ts +7 -0
  35. package/dist/types/components/form/mrd-form/mrd-form.d.ts +3 -2
  36. package/dist/types/components/layout/mrd-layout-section/layout-helpers.d.ts +3 -0
  37. package/dist/types/components.d.ts +9 -0
  38. package/dist/types/types/client-layout.d.ts +7 -0
  39. package/package.json +1 -1
  40. package/dist/mosterdcomponents/p-910ebfee.entry.js +0 -3
  41. package/dist/mosterdcomponents/p-Ce2QDq0t.js +0 -1
@@ -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",merge_search_hint:"Zoek het duplicaat waarmee je wilt samenvoegen",merge_select:"Selecteer",merge_compare_heading:"Los conflicten op",merge_column_a:"Huidig (blijft behouden)",merge_column_b:"Kandidaat (wordt verwijderd)",merge_auto_heading:"Deze velden worden automatisch overgenomen van de kandidaat:",merge_no_conflicts:"Geen conflicterende velden gevonden",merge_continue:"Doorgaan",merge_back:"Terug",merge_confirm_heading:"Bevestig samenvoegen",merge_confirm_warning:"Dit kan niet ongedaan worden gemaakt: de kandidaat wordt definitief verwijderd.",merge_confirm_button:"Samenvoegen bevestigen",invoice_title:"Factuur",invoice_date:"Factuurdatum",invoice_due_date:"Vervaldatum",invoice_subtotal:"Subtotaal",invoice_tax:"BTW",invoice_total:"Totaal",invoice_customer:"Klant",invoice_supplier:"Leverancier",email_from:"Van",email_to:"Aan",email_cc:"Cc",email_date:"Datum",email_show_headers:"Toon technische headers"},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",merge_search_hint:"Search for the duplicate to merge with",merge_select:"Select",merge_compare_heading:"Resolve conflicts",merge_column_a:"Current (kept)",merge_column_b:"Candidate (will be deleted)",merge_auto_heading:"These fields will be taken from the candidate automatically:",merge_no_conflicts:"No conflicting fields found",merge_continue:"Continue",merge_back:"Back",merge_confirm_heading:"Confirm merge",merge_confirm_warning:"This cannot be undone: the candidate will be permanently deleted.",merge_confirm_button:"Confirm merge",invoice_title:"Invoice",invoice_date:"Invoice date",invoice_due_date:"Due date",invoice_subtotal:"Subtotal",invoice_tax:"Tax",invoice_total:"Total",invoice_customer:"Customer",invoice_supplier:"Supplier",email_from:"From",email_to:"To",email_cc:"Cc",email_date:"Date",email_show_headers:"Show technical headers"},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:"نص الرابط (اختياري)",merge_search_hint:"ابحث عن السجل المكرر للدمج معه",merge_select:"اختر",merge_compare_heading:"حل التعارضات",merge_column_a:"الحالي (سيتم الاحتفاظ به)",merge_column_b:"المرشح (سيتم حذفه)",merge_auto_heading:"سيتم أخذ هذه الحقول من المرشح تلقائياً:",merge_no_conflicts:"لم يتم العثور على حقول متعارضة",merge_continue:"متابعة",merge_back:"رجوع",merge_confirm_heading:"تأكيد الدمج",merge_confirm_warning:"لا يمكن التراجع عن هذا الإجراء: سيتم حذف المرشح نهائياً.",merge_confirm_button:"تأكيد الدمج",invoice_title:"فاتورة",invoice_date:"تاريخ الفاتورة",invoice_due_date:"تاريخ الاستحقاق",invoice_subtotal:"المجموع الفرعي",invoice_tax:"الضريبة",invoice_total:"الإجمالي",invoice_customer:"العميل",invoice_supplier:"المورد",email_from:"من",email_to:"إلى",email_cc:"نسخة",email_date:"التاريخ",email_show_headers:"إظهار الترويسات التقنية"},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)",merge_search_hint:"Rechercher le doublon à fusionner",merge_select:"Sélectionner",merge_compare_heading:"Résoudre les conflits",merge_column_a:"Actuel (conservé)",merge_column_b:"Candidat (sera supprimé)",merge_auto_heading:"Ces champs seront repris automatiquement du candidat :",merge_no_conflicts:"Aucun champ en conflit trouvé",merge_continue:"Continuer",merge_back:"Retour",merge_confirm_heading:"Confirmer la fusion",merge_confirm_warning:"Cette action est irréversible : le candidat sera définitivement supprimé.",merge_confirm_button:"Confirmer la fusion",invoice_title:"Facture",invoice_date:"Date de facture",invoice_due_date:"Date d'échéance",invoice_subtotal:"Sous-total",invoice_tax:"TVA",invoice_total:"Total",invoice_customer:"Client",invoice_supplier:"Fournisseur",email_from:"De",email_to:"À",email_cc:"Cc",email_date:"Date",email_show_headers:"Afficher les en-têtes techniques"},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)",merge_search_hint:"Suchen Sie das Duplikat, mit dem zusammengeführt werden soll",merge_select:"Auswählen",merge_compare_heading:"Konflikte lösen",merge_column_a:"Aktuell (bleibt erhalten)",merge_column_b:"Kandidat (wird gelöscht)",merge_auto_heading:"Diese Felder werden automatisch vom Kandidaten übernommen:",merge_no_conflicts:"Keine widersprüchlichen Felder gefunden",merge_continue:"Weiter",merge_back:"Zurück",merge_confirm_heading:"Zusammenführung bestätigen",merge_confirm_warning:"Dies kann nicht rückgängig gemacht werden: der Kandidat wird endgültig gelöscht.",merge_confirm_button:"Zusammenführung bestätigen",invoice_title:"Rechnung",invoice_date:"Rechnungsdatum",invoice_due_date:"Fälligkeitsdatum",invoice_subtotal:"Zwischensumme",invoice_tax:"MwSt.",invoice_total:"Gesamt",invoice_customer:"Kunde",invoice_supplier:"Lieferant",email_from:"Von",email_to:"An",email_cc:"Cc",email_date:"Datum",email_show_headers:"Technische Header anzeigen"},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)",merge_search_hint:"Busque el duplicado con el que fusionar",merge_select:"Seleccionar",merge_compare_heading:"Resolver conflictos",merge_column_a:"Actual (se conserva)",merge_column_b:"Candidato (se eliminará)",merge_auto_heading:"Estos campos se tomarán automáticamente del candidato:",merge_no_conflicts:"No se encontraron campos en conflicto",merge_continue:"Continuar",merge_back:"Atrás",merge_confirm_heading:"Confirmar fusión",merge_confirm_warning:"Esto no se puede deshacer: el candidato se eliminará permanentemente.",merge_confirm_button:"Confirmar fusión",invoice_title:"Factura",invoice_date:"Fecha de factura",invoice_due_date:"Fecha de vencimiento",invoice_subtotal:"Subtotal",invoice_tax:"Impuesto",invoice_total:"Total",invoice_customer:"Cliente",invoice_supplier:"Proveedor",email_from:"De",email_to:"Para",email_cc:"Cc",email_date:"Fecha",email_show_headers:"Mostrar encabezados técnicos"},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)",merge_search_hint:"Cerca il duplicato con cui unire",merge_select:"Seleziona",merge_compare_heading:"Risolvi i conflitti",merge_column_a:"Attuale (viene mantenuto)",merge_column_b:"Candidato (verrà eliminato)",merge_auto_heading:"Questi campi verranno ripresi automaticamente dal candidato:",merge_no_conflicts:"Nessun campo in conflitto trovato",merge_continue:"Continua",merge_back:"Indietro",merge_confirm_heading:"Conferma unione",merge_confirm_warning:"Questa azione non può essere annullata: il candidato verrà eliminato definitivamente.",merge_confirm_button:"Conferma unione",invoice_title:"Fattura",invoice_date:"Data fattura",invoice_due_date:"Data di scadenza",invoice_subtotal:"Subtotale",invoice_tax:"IVA",invoice_total:"Totale",invoice_customer:"Cliente",invoice_supplier:"Fornitore",email_from:"Da",email_to:"A",email_cc:"Cc",email_date:"Data",email_show_headers:"Mostra intestazioni tecniche"},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:"Текст посилання (необов'язково)",merge_search_hint:"Знайдіть дублікат для об'єднання",merge_select:"Вибрати",merge_compare_heading:"Вирішити конфлікти",merge_column_a:"Поточний (залишається)",merge_column_b:"Кандидат (буде видалено)",merge_auto_heading:"Ці поля будуть автоматично взяті з кандидата:",merge_no_conflicts:"Конфліктних полів не знайдено",merge_continue:"Продовжити",merge_back:"Назад",merge_confirm_heading:"Підтвердити об'єднання",merge_confirm_warning:"Цю дію не можна скасувати: кандидат буде остаточно видалено.",merge_confirm_button:"Підтвердити об'єднання",invoice_title:"Рахунок-фактура",invoice_date:"Дата рахунку",invoice_due_date:"Термін оплати",invoice_subtotal:"Проміжний підсумок",invoice_tax:"ПДВ",invoice_total:"Разом",invoice_customer:"Клієнт",invoice_supplier:"Постачальник",email_from:"Від",email_to:"Кому",email_cc:"Копія",email_date:"Дата",email_show_headers:"Показати технічні заголовки"}};function i(i,t){var l,r,a;const o=(null!=t?t:"en").split("-")[0].toLowerCase();return null!==(a=null!==(r=(null!==(l=e[o])&&void 0!==l?l:e.en)[i])&&void 0!==r?r:e.en[i])&&void 0!==a?a:i}export{i 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",value_empty:"—",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_upload:"Uploaden",doc_upload_to:"Uploaden naar",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",merge_search_hint:"Zoek het duplicaat waarmee je wilt samenvoegen",merge_select:"Selecteer",merge_compare_heading:"Los conflicten op",merge_column_a:"Huidig (blijft behouden)",merge_column_b:"Kandidaat (wordt verwijderd)",merge_auto_heading:"Deze velden worden automatisch overgenomen van de kandidaat:",merge_no_conflicts:"Geen conflicterende velden gevonden",merge_continue:"Doorgaan",merge_back:"Terug",merge_confirm_heading:"Bevestig samenvoegen",merge_confirm_warning:"Dit kan niet ongedaan worden gemaakt: de kandidaat wordt definitief verwijderd.",merge_confirm_button:"Samenvoegen bevestigen",invoice_title:"Factuur",invoice_date:"Factuurdatum",invoice_due_date:"Vervaldatum",invoice_subtotal:"Subtotaal",invoice_tax:"BTW",invoice_total:"Totaal",invoice_customer:"Klant",invoice_supplier:"Leverancier",email_from:"Van",email_to:"Aan",email_cc:"Cc",email_date:"Datum",email_show_headers:"Toon technische headers"},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",value_empty:"—",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_upload:"Upload",doc_upload_to:"Upload to",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",merge_search_hint:"Search for the duplicate to merge with",merge_select:"Select",merge_compare_heading:"Resolve conflicts",merge_column_a:"Current (kept)",merge_column_b:"Candidate (will be deleted)",merge_auto_heading:"These fields will be taken from the candidate automatically:",merge_no_conflicts:"No conflicting fields found",merge_continue:"Continue",merge_back:"Back",merge_confirm_heading:"Confirm merge",merge_confirm_warning:"This cannot be undone: the candidate will be permanently deleted.",merge_confirm_button:"Confirm merge",invoice_title:"Invoice",invoice_date:"Invoice date",invoice_due_date:"Due date",invoice_subtotal:"Subtotal",invoice_tax:"Tax",invoice_total:"Total",invoice_customer:"Customer",invoice_supplier:"Supplier",email_from:"From",email_to:"To",email_cc:"Cc",email_date:"Date",email_show_headers:"Show technical headers"},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:"تنزيل",value_empty:"—",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_upload:"رفع",doc_upload_to:"رفع إلى",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:"نص الرابط (اختياري)",merge_search_hint:"ابحث عن السجل المكرر للدمج معه",merge_select:"اختر",merge_compare_heading:"حل التعارضات",merge_column_a:"الحالي (سيتم الاحتفاظ به)",merge_column_b:"المرشح (سيتم حذفه)",merge_auto_heading:"سيتم أخذ هذه الحقول من المرشح تلقائياً:",merge_no_conflicts:"لم يتم العثور على حقول متعارضة",merge_continue:"متابعة",merge_back:"رجوع",merge_confirm_heading:"تأكيد الدمج",merge_confirm_warning:"لا يمكن التراجع عن هذا الإجراء: سيتم حذف المرشح نهائياً.",merge_confirm_button:"تأكيد الدمج",invoice_title:"فاتورة",invoice_date:"تاريخ الفاتورة",invoice_due_date:"تاريخ الاستحقاق",invoice_subtotal:"المجموع الفرعي",invoice_tax:"الضريبة",invoice_total:"الإجمالي",invoice_customer:"العميل",invoice_supplier:"المورد",email_from:"من",email_to:"إلى",email_cc:"نسخة",email_date:"التاريخ",email_show_headers:"إظهار الترويسات التقنية"},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",value_empty:"—",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_upload:"Téléverser",doc_upload_to:"Téléverser vers",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)",merge_search_hint:"Rechercher le doublon à fusionner",merge_select:"Sélectionner",merge_compare_heading:"Résoudre les conflits",merge_column_a:"Actuel (conservé)",merge_column_b:"Candidat (sera supprimé)",merge_auto_heading:"Ces champs seront repris automatiquement du candidat :",merge_no_conflicts:"Aucun champ en conflit trouvé",merge_continue:"Continuer",merge_back:"Retour",merge_confirm_heading:"Confirmer la fusion",merge_confirm_warning:"Cette action est irréversible : le candidat sera définitivement supprimé.",merge_confirm_button:"Confirmer la fusion",invoice_title:"Facture",invoice_date:"Date de facture",invoice_due_date:"Date d'échéance",invoice_subtotal:"Sous-total",invoice_tax:"TVA",invoice_total:"Total",invoice_customer:"Client",invoice_supplier:"Fournisseur",email_from:"De",email_to:"À",email_cc:"Cc",email_date:"Date",email_show_headers:"Afficher les en-têtes techniques"},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",value_empty:"—",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_upload:"Hochladen",doc_upload_to:"Hochladen nach",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)",merge_search_hint:"Suchen Sie das Duplikat, mit dem zusammengeführt werden soll",merge_select:"Auswählen",merge_compare_heading:"Konflikte lösen",merge_column_a:"Aktuell (bleibt erhalten)",merge_column_b:"Kandidat (wird gelöscht)",merge_auto_heading:"Diese Felder werden automatisch vom Kandidaten übernommen:",merge_no_conflicts:"Keine widersprüchlichen Felder gefunden",merge_continue:"Weiter",merge_back:"Zurück",merge_confirm_heading:"Zusammenführung bestätigen",merge_confirm_warning:"Dies kann nicht rückgängig gemacht werden: der Kandidat wird endgültig gelöscht.",merge_confirm_button:"Zusammenführung bestätigen",invoice_title:"Rechnung",invoice_date:"Rechnungsdatum",invoice_due_date:"Fälligkeitsdatum",invoice_subtotal:"Zwischensumme",invoice_tax:"MwSt.",invoice_total:"Gesamt",invoice_customer:"Kunde",invoice_supplier:"Lieferant",email_from:"Von",email_to:"An",email_cc:"Cc",email_date:"Datum",email_show_headers:"Technische Header anzeigen"},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",value_empty:"—",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_upload:"Subir",doc_upload_to:"Subir a",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)",merge_search_hint:"Busque el duplicado con el que fusionar",merge_select:"Seleccionar",merge_compare_heading:"Resolver conflictos",merge_column_a:"Actual (se conserva)",merge_column_b:"Candidato (se eliminará)",merge_auto_heading:"Estos campos se tomarán automáticamente del candidato:",merge_no_conflicts:"No se encontraron campos en conflicto",merge_continue:"Continuar",merge_back:"Atrás",merge_confirm_heading:"Confirmar fusión",merge_confirm_warning:"Esto no se puede deshacer: el candidato se eliminará permanentemente.",merge_confirm_button:"Confirmar fusión",invoice_title:"Factura",invoice_date:"Fecha de factura",invoice_due_date:"Fecha de vencimiento",invoice_subtotal:"Subtotal",invoice_tax:"Impuesto",invoice_total:"Total",invoice_customer:"Cliente",invoice_supplier:"Proveedor",email_from:"De",email_to:"Para",email_cc:"Cc",email_date:"Fecha",email_show_headers:"Mostrar encabezados técnicos"},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",value_empty:"—",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_upload:"Carica",doc_upload_to:"Carica in",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)",merge_search_hint:"Cerca il duplicato con cui unire",merge_select:"Seleziona",merge_compare_heading:"Risolvi i conflitti",merge_column_a:"Attuale (viene mantenuto)",merge_column_b:"Candidato (verrà eliminato)",merge_auto_heading:"Questi campi verranno ripresi automaticamente dal candidato:",merge_no_conflicts:"Nessun campo in conflitto trovato",merge_continue:"Continua",merge_back:"Indietro",merge_confirm_heading:"Conferma unione",merge_confirm_warning:"Questa azione non può essere annullata: il candidato verrà eliminato definitivamente.",merge_confirm_button:"Conferma unione",invoice_title:"Fattura",invoice_date:"Data fattura",invoice_due_date:"Data di scadenza",invoice_subtotal:"Subtotale",invoice_tax:"IVA",invoice_total:"Totale",invoice_customer:"Cliente",invoice_supplier:"Fornitore",email_from:"Da",email_to:"A",email_cc:"Cc",email_date:"Data",email_show_headers:"Mostra intestazioni tecniche"},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:"Завантажити",value_empty:"—",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_upload:"Завантажити",doc_upload_to:"Завантажити до",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:"Текст посилання (необов'язково)",merge_search_hint:"Знайдіть дублікат для об'єднання",merge_select:"Вибрати",merge_compare_heading:"Вирішити конфлікти",merge_column_a:"Поточний (залишається)",merge_column_b:"Кандидат (буде видалено)",merge_auto_heading:"Ці поля будуть автоматично взяті з кандидата:",merge_no_conflicts:"Конфліктних полів не знайдено",merge_continue:"Продовжити",merge_back:"Назад",merge_confirm_heading:"Підтвердити об'єднання",merge_confirm_warning:"Цю дію не можна скасувати: кандидат буде остаточно видалено.",merge_confirm_button:"Підтвердити об'єднання",invoice_title:"Рахунок-фактура",invoice_date:"Дата рахунку",invoice_due_date:"Термін оплати",invoice_subtotal:"Проміжний підсумок",invoice_tax:"ПДВ",invoice_total:"Разом",invoice_customer:"Клієнт",invoice_supplier:"Постачальник",email_from:"Від",email_to:"Кому",email_cc:"Копія",email_date:"Дата",email_show_headers:"Показати технічні заголовки"}};function i(i,t){var l,r,a;const o=(null!=t?t:"en").split("-")[0].toLowerCase();return null!==(a=null!==(r=(null!==(l=e[o])&&void 0!==l?l:e.en)[i])&&void 0!==r?r:e.en[i])&&void 0!==a?a:i}export{i as t}
@@ -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{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}
1
+ import{proxyCustomElement as t,HTMLElement as r,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 l}from"./mrd-table2.js";const m=t(class extends r{constructor(t){super(),!1!==t&&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.targetLabel="",this.tableInited=!1,this.createFolder=()=>{var t;null===(t=this.listEl)||void 0===t||t.createFolder()},this.pickFile=()=>{var t;null===(t=this.fileInputEl)||void 0===t||t.click()},this.onFilePicked=t=>{var r,e;const o=t.target,i=null===(r=o.files)||void 0===r?void 0:r[0];i&&(null===(e=this.listEl)||void 0===e||e.uploadFile(i)),o.value=""}}componentDidRender(){var t;if("list"===this.mode&&this.tableEl&&!this.tableInited){this.tableInited=!0;const r=this.tableEl;Promise.resolve(null===(t=r.componentOnReady)||void 0===t?void 0:t.call(r)).then((()=>r.init()))}}setMode(t){t!==this.mode&&(this.canCreate=!1,this.tableInited=!1,this.mode=t)}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)),"tree"===this.mode&&o("button",{type:"button",class:"mrd-document-container__action",disabled:!this.canCreate,title:this.targetLabel?`${a("doc_upload_to",this.locale)} ${this.targetLabel}`:void 0,onClick:this.pickFile},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:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"}),o("path",{d:"M12 3v13M7 8l5-5 5 5"})),a("doc_upload",this.locale)),o("input",{type:"file",class:"mrd-document-container__file-input",ref:t=>this.fileInputEl=t,onChange:this.onFilePicked}),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:t=>this.listEl=t,item:this.item,archetype:this.archetype,parentId:this.parentId,containerHref:this.containerHref,locale:this.locale,onMrdLoadDistinct:t=>{t.stopPropagation(),this.mrdLoadDistinct.emit(t.detail)},onMrdLoadPage:t=>{t.stopPropagation(),this.mrdLoadPage.emit(t.detail)},onMrdNavigate:t=>{t.stopPropagation(),this.mrdNavigate.emit(Object.assign(Object.assign({},t.detail),{navigateBehaviour:d.OVERLAY_PAGE}))},onMrdCanCreate:t=>{t.stopPropagation(),this.canCreate=t.detail},onMrdTargetLabel:t=>{t.stopPropagation(),this.targetLabel=t.detail},onMrdUpdateObject:t=>{t.stopPropagation(),this.mrdUpdateObject.emit(t.detail)},onMrdUpload:t=>{t.stopPropagation(),this.mrdUpload.emit(t.detail)},onMrdCreateObject:t=>{t.stopPropagation(),this.mrdCreateObject.emit(t.detail)}})}renderList(){return o("mrd-table",{"data-view":this.viewKey,ref:t=>this.tableEl=t,item:this.item,parentId:this.parentId,locale:this.locale,onMrdLoadPage:t=>{t.stopPropagation(),this.mrdLoadPage.emit(t.detail)},onMrdLoadAggregations:t=>{t.stopPropagation(),this.mrdLoadAggregations.emit(t.detail)},onMrdRowClick:t=>{var r,e,o;t.stopPropagation();const{row:i,listContext:n}=t.detail;this.mrdNavigate.emit({href:null===(e=null===(r=null==i?void 0:i._links)||void 0===r?void 0:r.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:t=>{t.stopPropagation(),this.mrdAction.emit(t.detail)}})}render(){const t="tree"===this.mode;return o(i,{key:"ae948e2458d9087179e850b527802c489067d93f"},this.renderToolbar(),o("div",{key:"a04e1a78413aa794d0bda551aeb9c6245f1aafa2",class:{"mrd-document-container__body":!0,"mrd-document-container__body--tree":t},style:t?{height:`${this.height}px`,overflowY:"auto"}:{}},t?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__file-input.sc-mrd-document-container{display:none}.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],targetLabel:[32]}]);function h(){"undefined"!=typeof customElements&&["mrd-document-container","mrd-document-list","mrd-table"].forEach((t=>{switch(t){case"mrd-document-container":customElements.get(n(t))||customElements.define(n(t),m);break;case"mrd-document-list":customElements.get(n(t))||c();break;case"mrd-table":customElements.get(n(t))||l()}}))}export{m as M,h as d}
@@ -1 +1 @@
1
- import{h as t,proxyCustomElement as i,HTMLElement as s,createEvent as o,Host as r,transformTag as n}from"@stencil/core/internal/client";import{a as e}from"./client-layout.js";import{t as d}from"./i18n.js";import{b as l,a as c}from"./query-params.js";import{a}from"./document-attachments.js";import{f as u}from"./format.js";function m(t){if(null==t)return[];const i=String(t).trim();return""===i||"/"===i?[]:i.split("/").map((t=>t.trim())).filter(Boolean)}function h(t,i,s){return{id:"c:"+t,kind:"container",label:i,href:t,hasDocs:!1,docCount:0,totalCount:s,children:[],open:!1,loading:!1,foldersLoaded:!1,docsLoaded:!1,docs:[]}}function v(t,i,s){return{id:t,kind:"folder",label:i,containerId:s,hasDocs:!1,docCount:0,totalCount:0,children:[],open:!1,loading:!1,foldersLoaded:!1,docsLoaded:!1,docs:[]}}function f(t){let i=t.docCount;for(const s of t.children)i+=f(s);return t.totalCount=i,i}function _(t,i){if("container"===t.kind)return[];const s=i.id+"/",o=t.id.startsWith(s)?t.id.slice(s.length):"";return o?o.split("/"):[]}function p(t,i){if("container"===t.kind)return null;if(null!=t.fullPath&&""!==t.fullPath)return t.fullPath;const s=_(t,i);return s.length?"/"+s.join("/"):null}function g(t){return t.replace(/\.[^./\\]+$/,"")}function b(i,s){return t("span",{class:`mrd-document-list__chev${s?" mrd-document-list__chev--leaf":""}${i?" mrd-document-list__chev--open":""}`},t("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"},t("path",{d:"M9 6l6 6-6 6"})))}function y(){return t("svg",{class:"mrd-document-list__icon mrd-document-list__icon--folder",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"},t("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"}))}function w(i){return 0===i?null:t("span",{class:"mrd-document-list__indent",style:{width:18*i+"px"}})}function k(t){return 0===t?51:8+18*t+43}function D(i,s){return t("div",{class:"mrd-document-list__loading",key:"loading"},w(s),t("span",{class:"mrd-document-list__spinner"}),d("loading",i.locale))}function x(i,s,o,r,n){var e,d,l,c,a;const m=null!==(d=null!==(e=null==s?void 0:s[i.titleField])&&void 0!==e?e:null==s?void 0:s.name)&&void 0!==d?d:"",h=i.dateField?null==s?void 0:s[i.dateField]:void 0,v=h?u(h,i.locale):"";return t("div",{class:"mrd-document-list__row mrd-document-list__row--doc",key:null!==(a=null===(c=null===(l=null==s?void 0:s._links)||void 0===l?void 0:l.self)||void 0===c?void 0:c.href)&&void 0!==a?a:m,draggable:!0,onClick:()=>i.on.openDoc(s,o,r),onDragStart:t=>i.on.docDragStart(t,s,o),onDragEnd:i.on.docDragEnd,onDragOver:t=>i.on.nodeDragOver(t,o),onDragLeave:()=>i.on.nodeDragLeave(o),onDrop:t=>i.on.nodeDrop(t,o,r)},w(n),b(!1,!0),t("svg",{class:"mrd-document-list__icon mrd-document-list__icon--doc",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"},t("path",{d:"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"}),t("path",{d:"M14 2v6h6"})),t("span",{class:"mrd-document-list__label"},m),v&&t("span",{class:"mrd-document-list__date"},v))}function C(i,s,o,r){const n=[];if(o.hasDocs)if(o.docsLoaded)for(const t of o.docs)n.push(x(i,t,o,s,r));else o.loading&&n.push(D(i,r));for(const t of o.children)n.push(F(i,s,t,r));return o.id===i.uploadingNodeId&&n.push(function(i,s){return t("div",{class:"mrd-document-list__loading",key:"uploading"},w(s),t("span",{class:"mrd-document-list__spinner"}),d("upload_file",i.locale))}(i,r)),n}function F(i,s,o,r){if(o.editing)return function(i,s,o){return t("div",{class:"mrd-document-list__node",key:s.id},t("div",{class:"mrd-document-list__row mrd-document-list__row--edit"},w(o),b(!1,!0),y(),t("input",{class:"mrd-document-list__name-input",type:"text",placeholder:d("folder_name_placeholder",i.locale),ref:t=>i.on.setPendingInputEl(t),onInput:i.on.pendingInput,onKeyDown:i.on.pendingKeyDown,onBlur:()=>i.on.cancelFolder()})),s.error&&t("div",{class:"mrd-document-list__error",style:{paddingLeft:`${k(o)}px`}},s.error))}(i,o,r);const n=0===o.children.length&&!o.hasDocs;return t("div",{class:"mrd-document-list__node",key:o.id},t("div",{class:"mrd-document-list__row"+(o.id===i.selectedId?" mrd-document-list__row--selected":"")+(o.pending?" mrd-document-list__row--pending":"")+(o.id===i.dropTargetId?" mrd-document-list__row--drop":""),onClick:()=>i.on.toggleFolder(s,o),onDragOver:t=>i.on.nodeDragOver(t,o),onDragLeave:()=>i.on.nodeDragLeave(o),onDrop:t=>i.on.nodeDrop(t,o,s)},w(r),b(o.open,n),y(),t("span",{class:"mrd-document-list__label"},o.label),t("span",{class:"mrd-document-list__count"},o.totalCount)),o.open&&t("div",{class:"mrd-document-list__kids"},C(i,s,o,r+1)))}const z=i(class i extends s{constructor(t){super(),!1!==t&&this.__registerHost(),this.mrdLoadDistinct=o(this,"mrdLoadDistinct",7),this.mrdLoadPage=o(this,"mrdLoadPage",7),this.mrdNavigate=o(this,"mrdNavigate",7),this.mrdCanCreate=o(this,"mrdCanCreate",7),this.mrdUpdateObject=o(this,"mrdUpdateObject",7),this.mrdUpload=o(this,"mrdUpload",7),this.mrdCreateObject=o(this,"mrdCreateObject",7),this.item=null,this.parentId="",this.containerHref="",this.locale=navigator.language,this.containers=[],this.rootLoading=!0,this.singleContainer=!1,this.selectedId=null,this.dropTargetId=null,this.uploadingNodeId=null,this.rootDropActive=!1,this.nodeIndex=new Map,this.pendingNode=null,this.pendingParent=null,this.pendingContainer=null,this.pendingName="",this.pendingInputEl=null,this.pendingNeedsFocus=!1,this.newFolderSeq=0,this.lastCanCreate=!1,this.dragDoc=null,this.dragFromId=null,this.pendingUpload=null,this.lastOptimisticDoc=null,this.startCreateFolder=()=>{const t=this.resolveTarget();if(!t||this.pendingNode)return;const{target:i,container:s}=t,o=v(`${s.id}/__new__${this.newFolderSeq++}`,"",s.id);o.pending=!0,o.editing=!0,i.children=[...i.children,o],i.open=!0,this.nodeIndex.set(o.id,o),this.pendingNode=o,this.pendingParent=i,this.pendingContainer=s,this.pendingName="",this.pendingNeedsFocus=!0,this.bump()},this.onPendingInput=t=>{var i;this.pendingName=t.target.value,(null===(i=this.pendingNode)||void 0===i?void 0:i.error)&&(this.pendingNode.error=void 0,this.bump())},this.onPendingKeyDown=t=>{"Enter"===t.key?(t.preventDefault(),this.commitFolder()):"Escape"===t.key&&(t.preventDefault(),this.cancelFolder())},this.onDocDragStart=(t,i,s)=>{var o,r,n;this.dragDoc=i,this.dragFromId=s.id,t.dataTransfer&&(t.dataTransfer.effectAllowed="move",t.dataTransfer.setData("text/plain",null!==(n=null===(r=null===(o=null==i?void 0:i._links)||void 0===o?void 0:o.self)||void 0===r?void 0:r.href)&&void 0!==n?n:""))},this.onDocDragEnd=()=>{this.dragDoc=null,this.dragFromId=null,null!==this.dropTargetId&&(this.dropTargetId=null)},this.onNodeDragOver=(t,i)=>{const s=this.isFileDrag(t);if(!this.dragDoc&&!s)return;t.preventDefault(),t.stopPropagation(),t.dataTransfer&&(t.dataTransfer.dropEffect=s?"copy":"move");const o=s||i.id!==this.dragFromId?i.id:null;this.dropTargetId!==o&&(this.dropTargetId=o)},this.onNodeDragLeave=t=>{this.dropTargetId===t.id&&(this.dropTargetId=null)},this.onNodeDrop=(t,i,s)=>{if(this.isFileDrag(t))return t.preventDefault(),t.stopPropagation(),void this.startFileUpload(t,i,s);this.dragDoc&&(t.preventDefault(),t.stopPropagation(),this.moveDocument(i,s),this.onDocDragEnd())},this.onRootDragOver=t=>{if(!this.singleContainer)return;const i=this.isFileDrag(t);(this.dragDoc||i)&&(t.preventDefault(),t.dataTransfer&&(t.dataTransfer.dropEffect=i?"copy":"move"),this.rootDropActive||(this.rootDropActive=!0))},this.onRootDragLeave=t=>{const i=t.relatedTarget;i&&this.el.contains(i)||this.rootDropActive&&(this.rootDropActive=!1)},this.onRootDrop=t=>{if(this.rootDropActive=!1,!this.singleContainer)return;const i=this.containers[0];if(this.isFileDrag(t))return t.preventDefault(),void this.startFileUpload(t,i,i);this.dragDoc&&(t.preventDefault(),this.moveDocument(i,i),this.onDocDragEnd())}}componentDidLoad(){this.isSeededSingleContainer()?this.seedSingleContainer():this.emitContainerDistinct()}isSeededSingleContainer(){var t,i;return(null===(t=this.item)||void 0===t?void 0:t.type)===e.RELATED_VIEW&&!!(null===(i=this.item)||void 0===i?void 0:i.inverseRelation)&&this.item.inverseRelation===this.containerField&&!!this.containerHref}seedSingleContainer(){const t=h(this.containerHref,this.containerField,0);this.nodeIndex.set(t.id,t),this.containers=[t],this.rootLoading=!1,this.singleContainer=!0,t.open=!0,this.emitFolderDistinct(t)}componentDidRender(){this.pendingNeedsFocus&&this.pendingInputEl&&(this.pendingInputEl.focus(),this.pendingInputEl.select(),this.pendingNeedsFocus=!1);const t=this.canCreateFolder;t!==this.lastCanCreate&&(this.lastCanCreate=t,this.mrdCanCreate.emit(t))}get containerField(){var t,i,s;return null!==(s=null===(i=null===(t=this.archetype)||void 0===t?void 0:t.slots)||void 0===i?void 0:i.container)&&void 0!==s?s:"container"}get folderField(){var t,i,s;return null!==(s=null===(i=null===(t=this.archetype)||void 0===t?void 0:t.slots)||void 0===i?void 0:i.folder)&&void 0!==s?s:"folder"}get titleField(){var t,i,s;return null!==(s=null===(i=null===(t=this.archetype)||void 0===t?void 0:t.slots)||void 0===i?void 0:i.title)&&void 0!==s?s:"name"}get fileField(){var t,i,s;return null!==(s=null===(i=null===(t=this.archetype)||void 0===t?void 0:t.slots)||void 0===i?void 0:i.file)&&void 0!==s?s:"file"}get dateField(){var t,i;return null===(i=null===(t=this.archetype)||void 0===t?void 0:t.slots)||void 0===i?void 0:i.date}buildDataPath(){var t,i;const s=this.item;return l({isRelatedView:(null==s?void 0:s.type)===e.RELATED_VIEW,fromClass:null==s?void 0:s.fromClass,parentId:this.parentId,dataClass:null!==(i=null!==(t=null==s?void 0:s.dataClass)&&void 0!==t?t:null==s?void 0:s.relatedClass)&&void 0!==i?i:""})}buildCreatePath(){var t,i,s;const o=this.item;return l({isRelatedView:(null==o?void 0:o.type)===e.RELATED_VIEW,fromClass:null==o?void 0:o.fromClass,parentId:this.parentId,dataClass:null!==(s=null!==(i=null!==(t=null==o?void 0:o.filterClass)&&void 0!==t?t:null==o?void 0:o.dataClass)&&void 0!==i?i:null==o?void 0:o.relatedClass)&&void 0!==s?s:""})}baseParams(){var t,i,s;const o=new URLSearchParams,r=null===(t=this.item)||void 0===t?void 0:t.filterClass;return r&&o.set("type",r),c(o,null===(s=null===(i=this.item)||void 0===i?void 0:i.view)||void 0===s?void 0:s.filter),o}emitContainerDistinct(){const t=this.baseParams();t.set("distinct",this.containerField),this.mrdLoadDistinct.emit({nodeId:i.ROOT,distinct:this.containerField,path:this.buildDataPath()+"/distinct",qs:t.toString()})}emitFolderDistinct(t){var i;const s=this.baseParams();s.set("distinct",this.folderField),s.set(this.containerField+"_href",null!==(i=t.href)&&void 0!==i?i:""),t.loading=!0,this.mrdLoadDistinct.emit({nodeId:t.id,distinct:this.folderField,path:this.buildDataPath()+"/distinct",qs:s.toString()})}buildDocQs(t,i){var s,o;const r=this.baseParams();return r.set(this.containerField+"_href",null!==(s=t.href)&&void 0!==s?s:""),r.set(this.folderField,null!==(o=i.fullPath)&&void 0!==o?o:""),r.toString()}emitDocuments(t,i){i.loading=!0,this.mrdLoadPage.emit({nodeId:i.id,page:0,sort:"",path:this.buildDataPath(),qs:this.buildDocQs(t,i)})}async setDistinct(t,s){t===i.ROOT?this.applyContainers(s):this.applyFolders(t,s)}async setDocuments(t,i){const s=this.nodeIndex.get(t);s&&(s.docs=null!=i?i:[],s.docsLoaded=!0,s.loading=!1,this.bump())}applyContainers(t){const i=[];for(const s of t){if(!s.value||"object"!=typeof s.value)continue;const t=h(s.value.href,s.value.name,s.count);i.push(t),this.nodeIndex.set(t.id,t)}if(this.containers=i,this.rootLoading=!1,this.singleContainer=1===i.length,this.singleContainer){const t=i[0];t.open=!0,this.emitFolderDistinct(t)}}applyFolders(t,i){const s=this.nodeIndex.get(t);s&&(function(t,i,s){t.children=[],t.hasDocs=!1,t.docCount=0;for(const o of i){const i="string"==typeof o.value?o.value:null==o.value?"":String(o.value),r=m(i);if(0===r.length){t.hasDocs=!0,t.docCount=o.count,t.fullPath=i;continue}let n=t;const e=[];for(const i of r){e.push(i);let o=n.children.find((t=>t.label===i));o||(o=v(t.id+"/"+e.join("/"),i,t.id),n.children.push(o),s.set(o.id,o)),n=o}n.hasDocs=!0,n.docCount=o.count,n.fullPath=i}f(t),t.foldersLoaded=!0,t.loading=!1}(s,i,this.nodeIndex),s.hasDocs&&!s.docsLoaded&&this.emitDocuments(s,s),this.bump())}bump(){this.containers=[...this.containers]}toggleContainer(t){this.selectedId=t.id,t.open=!t.open,!t.open||t.foldersLoaded||t.loading||this.emitFolderDistinct(t),this.bump()}toggleFolder(t,i){this.selectedId=i.id,i.open=!i.open,i.open&&i.hasDocs&&!i.docsLoaded&&!i.loading&&this.emitDocuments(t,i),this.bump()}resolveTarget(){if(this.selectedId){const t=this.nodeIndex.get(this.selectedId);if(t&&"container"===t.kind)return{target:t,container:t};if(t&&"folder"===t.kind){const i=t.containerId?this.nodeIndex.get(t.containerId):void 0;if(i)return{target:t,container:i}}}if(this.singleContainer&&this.containers[0]){const t=this.containers[0];return{target:t,container:t}}return null}get canCreateFolder(){return!this.pendingNode&&null!==this.resolveTarget()}async createFolder(){this.startCreateFolder()}commitFolder(){const t=this.pendingNode,i=this.pendingParent,s=this.pendingContainer;if(!t||!i||!s)return;const o=this.pendingName.trim();if(!o)return void this.cancelFolder();if(o.includes("/"))return t.error=d("folder_no_slash",this.locale),void this.bump();if(i.children.some((i=>i!==t&&i.label.toLowerCase()===o.toLowerCase())))return t.error=d("folder_duplicate",this.locale),void this.bump();const r=[..._(i,s),o];this.nodeIndex.delete(t.id),t.id=s.id+"/"+r.join("/"),t.fullPath="/"+r.join("/"),t.label=o,t.editing=!1,t.error=void 0,t.open=!0,this.nodeIndex.set(t.id,t),this.selectedId=t.id,this.clearPending(),this.bump()}cancelFolder(){const t=this.pendingNode,i=this.pendingParent;t&&i&&(i.children=i.children.filter((i=>i!==t)),this.nodeIndex.delete(t.id)),this.clearPending(),this.bump()}clearPending(){this.pendingNode=null,this.pendingParent=null,this.pendingContainer=null,this.pendingName="",this.pendingInputEl=null,this.pendingNeedsFocus=!1}isFileDrag(t){return!this.dragDoc&&!!t.dataTransfer&&Array.from(t.dataTransfer.types).includes("Files")}startFileUpload(t,i,s){var o,r;const n=null===(r=null===(o=t.dataTransfer)||void 0===o?void 0:o.files)||void 0===r?void 0:r[0];this.dropTargetId=null,n&&(this.pendingUpload={file:n,node:i,container:s},i.open=!0,this.uploadingNodeId=i.id,this.bump(),this.mrdUpload.emit({file:n}))}async setFileReference(t){const i=this.pendingUpload;if(!i)return;const{file:s,node:o,container:r}=i,n=p(o,r),e={[this.fileField]:t,[this.titleField]:g(s.name),[this.folderField]:n};this.isSeededSingleContainer()||(e[this.containerField]=r.href),this.mrdCreateObject.emit({path:this.buildCreatePath(),values:e});const d={[this.titleField]:g(s.name),_optimistic:!0},l=!o.docsLoaded&&0===o.docCount;o.hasDocs=!0,o.pending=!1,o.docCount+=1,l?(o.docsLoaded=!0,o.docs=[d]):o.docsLoaded&&(o.docs=[...o.docs,d]),this.recomputeContainerTotals(r,1),this.lastOptimisticDoc=d,this.pendingUpload=null,this.uploadingNodeId=null,this.bump()}async setCreatedHref(t){var i;const s=this.lastOptimisticDoc;s&&t&&(s._links=Object.assign(Object.assign({},null!==(i=s._links)&&void 0!==i?i:{}),{self:{href:t}}),s._optimistic=!1,this.lastOptimisticDoc=null,this.bump())}moveDocument(t,i){var s,o;const r=this.dragDoc,n=this.dragFromId?this.nodeIndex.get(this.dragFromId):void 0;if(!r||!n)return;const e="container"===n.kind?n:n.containerId?this.nodeIndex.get(n.containerId):void 0;if(!e)return;const d=p(t,i),l=p(n,e),c=i===e;if(t===n||c&&d===l)return;!function(t,i,s,o){i.docs=i.docs.filter((i=>i!==t)),i.docCount=Math.max(0,i.docCount-1),i.docsLoaded&&(i.hasDocs=i.docs.length>0),s.hasDocs=!0,s.pending=!1,s.docCount+=1,"folder"===s.kind&&(s.fullPath=null!=o?o:""),s.docsLoaded&&(s.docs=[...s.docs,t])}(r,n,t,d),this.recomputeContainerTotals(e,-1),c||this.recomputeContainerTotals(i,1);const a=null===(o=null===(s=null==r?void 0:r._links)||void 0===s?void 0:s.self)||void 0===o?void 0:o.href;if(a){const t={[this.folderField]:d};c||(t[this.containerField]=i.href),this.mrdUpdateObject.emit({href:a,values:t})}this.bump()}recomputeContainerTotals(t,i){t.foldersLoaded?f(t):t.totalCount=Math.max(0,t.totalCount+i)}openDoc(t,i,s){var o,r,n,e;const d=null===(r=null===(o=null==t?void 0:t._links)||void 0===o?void 0:o.self)||void 0===r?void 0:r.href,l=null!==(e=null!==(n=null==t?void 0:t[this.titleField])&&void 0!==n?n:null==t?void 0:t.name)&&void 0!==e?e:"",c=i.docs.indexOf(t),u=c>=0?{index:c,sort:"",path:this.buildDataPath(),qs:this.buildDocQs(s,i)}:void 0,m=a(this.archetype,t);this.mrdNavigate.emit({href:d,label:l,listContext:u,attachments:m})}treeCtx(){return{locale:this.locale,titleField:this.titleField,dateField:this.dateField,selectedId:this.selectedId,dropTargetId:this.dropTargetId,uploadingNodeId:this.uploadingNodeId,on:{toggleContainer:t=>this.toggleContainer(t),toggleFolder:(t,i)=>this.toggleFolder(t,i),openDoc:(t,i,s)=>this.openDoc(t,i,s),docDragStart:this.onDocDragStart,docDragEnd:this.onDocDragEnd,nodeDragOver:this.onNodeDragOver,nodeDragLeave:this.onNodeDragLeave,nodeDrop:this.onNodeDrop,pendingInput:this.onPendingInput,pendingKeyDown:this.onPendingKeyDown,cancelFolder:()=>this.cancelFolder(),setPendingInputEl:t=>this.pendingInputEl=t}}}render(){const i=this.treeCtx();let s;if(this.rootLoading)s=D(i,0);else if(0===this.containers.length)s=t("div",{key:"308725d741deb384082bd514edd34593f7d662a2",class:"mrd-document-list__empty"},d("no_results",this.locale));else if(this.singleContainer){const o=this.containers[0];if(o.loading&&!o.foldersLoaded)s=D(i,0);else{const r=C(i,o,o,0);s=r.length?r:t("div",{class:"mrd-document-list__empty"},d("doc_empty_drop",this.locale))}}else s=this.containers.map((s=>function(i,s,o){return t("div",{class:"mrd-document-list__node",key:s.id},t("div",{class:"mrd-document-list__row mrd-document-list__row--dossier"+(s.id===i.selectedId?" mrd-document-list__row--selected":"")+(s.id===i.dropTargetId?" mrd-document-list__row--drop":""),onClick:()=>i.on.toggleContainer(s),onDragOver:t=>i.on.nodeDragOver(t,s),onDragLeave:()=>i.on.nodeDragLeave(s),onDrop:t=>i.on.nodeDrop(t,s,s)},w(o),b(s.open,!1),t("svg",{class:"mrd-document-list__icon mrd-document-list__icon--dossier",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"},t("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"})),t("span",{class:"mrd-document-list__label"},s.label),t("span",{class:"mrd-document-list__count"},s.totalCount)),s.open&&t("div",{class:"mrd-document-list__kids"},s.loading&&!s.foldersLoaded?D(i,o+1):C(i,s,s,o+1)))}(i,s,0)));return t(r,{key:"9d5fde912999b57a0f0b737980d59e94f385f11d"},t("div",{key:"17191411c2e626995f08b66bad755342fe3b13ae",class:"mrd-document-list"+(this.rootDropActive?" mrd-document-list--drop-active":""),onDragOver:this.onRootDragOver,onDragLeave:this.onRootDragLeave,onDrop:this.onRootDrop},s))}get el(){return this}static get style(){return".sc-mrd-document-list-h{display:block;height:100%}.mrd-document-list.sc-mrd-document-list{padding:var(--mrd-space-2) 0;min-height:100%;box-sizing:border-box}.mrd-document-list--drop-active.sc-mrd-document-list{outline:2px dashed var(--mrd-color-primary);outline-offset:-4px;background:var(--mrd-color-primary-50, rgba(22, 163, 74, 0.06))}.mrd-document-list__row.sc-mrd-document-list{display:flex;align-items:center;gap:var(--mrd-space-1);height:2.125rem;padding:0 var(--mrd-space-4) 0 var(--mrd-space-2);cursor:pointer;user-select:none;font-size:var(--mrd-font-size-sm);color:var(--mrd-color-neutral-800)}.mrd-document-list__row.sc-mrd-document-list:hover{background:var(--mrd-color-neutral-50)}.mrd-document-list__row--selected.sc-mrd-document-list{background:var(--mrd-color-primary-50, rgba(22, 163, 74, 0.1))}.mrd-document-list__row--selected.sc-mrd-document-list:hover{background:var(--mrd-color-primary-50, rgba(22, 163, 74, 0.1))}.mrd-document-list__row--pending.sc-mrd-document-list .mrd-document-list__label.sc-mrd-document-list{font-style:italic;color:var(--mrd-color-neutral-500)}.mrd-document-list__row--doc.sc-mrd-document-list{cursor:grab}.mrd-document-list__row--doc.sc-mrd-document-list:active{cursor:grabbing}.mrd-document-list__row--drop.sc-mrd-document-list{background:var(--mrd-color-primary-50, rgba(22, 163, 74, 0.1));box-shadow:inset 0 0 0 1px var(--mrd-color-primary)}.mrd-document-list__row--drop.sc-mrd-document-list:hover{background:var(--mrd-color-primary-50, rgba(22, 163, 74, 0.1))}.mrd-document-list__row--edit.sc-mrd-document-list{cursor:default}.mrd-document-list__row--dossier.sc-mrd-document-list .mrd-document-list__label.sc-mrd-document-list{font-weight:var(--mrd-font-weight-semibold)}.mrd-document-list__name-input.sc-mrd-document-list{flex:1;min-width:0;height:1.625rem;padding:0 var(--mrd-space-2);font-size:var(--mrd-font-size-sm);font-family:inherit;color:var(--mrd-color-neutral-800);border:1px solid var(--mrd-color-primary);border-radius:var(--mrd-border-radius);outline:none;box-shadow:var(--mrd-shadow-focus)}.mrd-document-list__error.sc-mrd-document-list{font-size:var(--mrd-font-size-xs);color:var(--mrd-color-danger, #dc2626);padding-top:0.125rem;padding-bottom:0.25rem}.mrd-document-list__indent.sc-mrd-document-list{flex:none}.mrd-document-list__chev.sc-mrd-document-list{width:0.875rem;height:1rem;flex:none;display:grid;place-items:center;color:var(--mrd-color-neutral-400);transition:transform var(--mrd-transition-fast)}.mrd-document-list__chev.sc-mrd-document-list svg.sc-mrd-document-list{width:0.6875rem;height:0.6875rem}.mrd-document-list__chev--open.sc-mrd-document-list{transform:rotate(90deg)}.mrd-document-list__chev--leaf.sc-mrd-document-list{visibility:hidden}.mrd-document-list__icon.sc-mrd-document-list{width:1.0625rem;height:1.0625rem;flex:none}.mrd-document-list__icon--dossier.sc-mrd-document-list{color:var(--mrd-color-primary)}.mrd-document-list__icon--folder.sc-mrd-document-list{color:var(--mrd-color-folder)}.mrd-document-list__icon--doc.sc-mrd-document-list{color:var(--mrd-color-neutral-400)}.mrd-document-list__label.sc-mrd-document-list{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mrd-document-list__count.sc-mrd-document-list{flex:none;font-family:var(--mrd-font-family-mono);font-size:var(--mrd-font-size-xs);color:var(--mrd-color-neutral-500);background:var(--mrd-color-neutral-100);border-radius:var(--mrd-border-radius-full);padding:0.0625rem 0.5rem}.mrd-document-list__date.sc-mrd-document-list{flex:none;font-size:var(--mrd-font-size-xs);color:var(--mrd-color-neutral-400);font-variant-numeric:tabular-nums}.mrd-document-list__loading.sc-mrd-document-list{display:flex;align-items:center;gap:var(--mrd-space-1);height:1.875rem;padding:0 var(--mrd-space-4) 0 var(--mrd-space-2);font-size:var(--mrd-font-size-xs);color:var(--mrd-color-neutral-400)}.mrd-document-list__spinner.sc-mrd-document-list{width:0.75rem;height:0.75rem;border:2px solid var(--mrd-color-neutral-300);border-top-color:var(--mrd-color-primary);border-radius:50%;animation:mrd-document-list-spin 0.7s linear infinite}.mrd-document-list__empty.sc-mrd-document-list{padding:var(--mrd-space-8) var(--mrd-space-4);text-align:center;color:var(--mrd-color-neutral-400);font-size:var(--mrd-font-size-sm)}@keyframes mrd-document-list-spin{to{transform:rotate(360deg)}}"}},[2,"mrd-document-list",{item:[16],archetype:[16],parentId:[1,"parent-id"],containerHref:[1,"container-href"],locale:[1],containers:[32],rootLoading:[32],singleContainer:[32],selectedId:[32],dropTargetId:[32],uploadingNodeId:[32],rootDropActive:[32],setDistinct:[64],setDocuments:[64],createFolder:[64],setFileReference:[64],setCreatedHref:[64]}]);function I(){"undefined"!=typeof customElements&&["mrd-document-list"].forEach((t=>{"mrd-document-list"===t&&(customElements.get(n(t))||customElements.define(n(t),z))}))}z.ROOT="__root__";export{z as M,I as d}
1
+ import{h as t,proxyCustomElement as i,HTMLElement as s,createEvent as o,Host as r,transformTag as n}from"@stencil/core/internal/client";import{a as e}from"./client-layout.js";import{t as d}from"./i18n.js";import{b as l,a as c}from"./query-params.js";import{a}from"./document-attachments.js";import{f as u}from"./format.js";function m(t){if(null==t)return[];const i=String(t).trim();return""===i||"/"===i?[]:i.split("/").map((t=>t.trim())).filter(Boolean)}function h(t,i,s){return{id:"c:"+t,kind:"container",label:i,href:t,hasDocs:!1,docCount:0,totalCount:s,children:[],open:!1,loading:!1,foldersLoaded:!1,docsLoaded:!1,docs:[]}}function v(t,i,s){return{id:t,kind:"folder",label:i,containerId:s,hasDocs:!1,docCount:0,totalCount:0,children:[],open:!1,loading:!1,foldersLoaded:!1,docsLoaded:!1,docs:[]}}function f(t){let i=t.docCount;for(const s of t.children)i+=f(s);return t.totalCount=i,i}function _(t,i){if("container"===t.kind)return[];const s=i.id+"/",o=t.id.startsWith(s)?t.id.slice(s.length):"";return o?o.split("/"):[]}function p(t,i){if("container"===t.kind)return null;if(null!=t.fullPath&&""!==t.fullPath)return t.fullPath;const s=_(t,i);return s.length?"/"+s.join("/"):null}function g(t){return t.replace(/\.[^./\\]+$/,"")}function b(i,s){return t("span",{class:`mrd-document-list__chev${s?" mrd-document-list__chev--leaf":""}${i?" mrd-document-list__chev--open":""}`},t("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"},t("path",{d:"M9 6l6 6-6 6"})))}function y(){return t("svg",{class:"mrd-document-list__icon mrd-document-list__icon--folder",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"},t("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"}))}function w(i){return 0===i?null:t("span",{class:"mrd-document-list__indent",style:{width:18*i+"px"}})}function k(t){return 0===t?51:8+18*t+43}function D(i,s){return t("div",{class:"mrd-document-list__loading",key:"loading"},w(s),t("span",{class:"mrd-document-list__spinner"}),d("loading",i.locale))}function x(i,s,o,r,n){var e,d,l,c,a;const m=null!==(d=null!==(e=null==s?void 0:s[i.titleField])&&void 0!==e?e:null==s?void 0:s.name)&&void 0!==d?d:"",h=i.dateField?null==s?void 0:s[i.dateField]:void 0,v=h?u(h,i.locale):"";return t("div",{class:"mrd-document-list__row mrd-document-list__row--doc",key:null!==(a=null===(c=null===(l=null==s?void 0:s._links)||void 0===l?void 0:l.self)||void 0===c?void 0:c.href)&&void 0!==a?a:m,draggable:!0,onClick:()=>i.on.openDoc(s,o,r),onDragStart:t=>i.on.docDragStart(t,s,o),onDragEnd:i.on.docDragEnd,onDragOver:t=>i.on.nodeDragOver(t,o),onDragLeave:()=>i.on.nodeDragLeave(o),onDrop:t=>i.on.nodeDrop(t,o,r)},w(n),b(!1,!0),t("svg",{class:"mrd-document-list__icon mrd-document-list__icon--doc",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"},t("path",{d:"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"}),t("path",{d:"M14 2v6h6"})),t("span",{class:"mrd-document-list__label"},m),v&&t("span",{class:"mrd-document-list__date"},v))}function C(i,s,o,r){const n=[];if(o.hasDocs)if(o.docsLoaded)for(const t of o.docs)n.push(x(i,t,o,s,r));else o.loading&&n.push(D(i,r));for(const t of o.children)n.push(F(i,s,t,r));return o.id===i.uploadingNodeId&&n.push(function(i,s){return t("div",{class:"mrd-document-list__loading",key:"uploading"},w(s),t("span",{class:"mrd-document-list__spinner"}),d("upload_file",i.locale))}(i,r)),n}function F(i,s,o,r){if(o.editing)return function(i,s,o){return t("div",{class:"mrd-document-list__node",key:s.id},t("div",{class:"mrd-document-list__row mrd-document-list__row--edit"},w(o),b(!1,!0),y(),t("input",{class:"mrd-document-list__name-input",type:"text",placeholder:d("folder_name_placeholder",i.locale),ref:t=>i.on.setPendingInputEl(t),onInput:i.on.pendingInput,onKeyDown:i.on.pendingKeyDown,onBlur:()=>i.on.cancelFolder()})),s.error&&t("div",{class:"mrd-document-list__error",style:{paddingLeft:`${k(o)}px`}},s.error))}(i,o,r);const n=0===o.children.length&&!o.hasDocs;return t("div",{class:"mrd-document-list__node",key:o.id},t("div",{class:"mrd-document-list__row"+(o.id===i.selectedId?" mrd-document-list__row--selected":"")+(o.pending?" mrd-document-list__row--pending":"")+(o.id===i.dropTargetId?" mrd-document-list__row--drop":""),onClick:()=>i.on.toggleFolder(s,o),onDragOver:t=>i.on.nodeDragOver(t,o),onDragLeave:()=>i.on.nodeDragLeave(o),onDrop:t=>i.on.nodeDrop(t,o,s)},w(r),b(o.open,n),y(),t("span",{class:"mrd-document-list__label"},o.label),t("span",{class:"mrd-document-list__count"},o.totalCount)),o.open&&t("div",{class:"mrd-document-list__kids"},C(i,s,o,r+1)))}const z=i(class i extends s{constructor(t){super(),!1!==t&&this.__registerHost(),this.mrdLoadDistinct=o(this,"mrdLoadDistinct",7),this.mrdLoadPage=o(this,"mrdLoadPage",7),this.mrdNavigate=o(this,"mrdNavigate",7),this.mrdCanCreate=o(this,"mrdCanCreate",7),this.mrdTargetLabel=o(this,"mrdTargetLabel",7),this.mrdUpdateObject=o(this,"mrdUpdateObject",7),this.mrdUpload=o(this,"mrdUpload",7),this.mrdCreateObject=o(this,"mrdCreateObject",7),this.item=null,this.parentId="",this.containerHref="",this.locale=navigator.language,this.containers=[],this.rootLoading=!0,this.singleContainer=!1,this.selectedId=null,this.dropTargetId=null,this.uploadingNodeId=null,this.rootDropActive=!1,this.nodeIndex=new Map,this.pendingNode=null,this.pendingParent=null,this.pendingContainer=null,this.pendingName="",this.pendingInputEl=null,this.pendingNeedsFocus=!1,this.newFolderSeq=0,this.lastCanCreate=!1,this.lastTargetLabel="",this.dragDoc=null,this.dragFromId=null,this.pendingUpload=null,this.lastOptimisticDoc=null,this.startCreateFolder=()=>{const t=this.resolveTarget();if(!t||this.pendingNode)return;const{target:i,container:s}=t,o=v(`${s.id}/__new__${this.newFolderSeq++}`,"",s.id);o.pending=!0,o.editing=!0,i.children=[...i.children,o],i.open=!0,this.nodeIndex.set(o.id,o),this.pendingNode=o,this.pendingParent=i,this.pendingContainer=s,this.pendingName="",this.pendingNeedsFocus=!0,this.bump()},this.onPendingInput=t=>{var i;this.pendingName=t.target.value,(null===(i=this.pendingNode)||void 0===i?void 0:i.error)&&(this.pendingNode.error=void 0,this.bump())},this.onPendingKeyDown=t=>{"Enter"===t.key?(t.preventDefault(),this.commitFolder()):"Escape"===t.key&&(t.preventDefault(),this.cancelFolder())},this.onDocDragStart=(t,i,s)=>{var o,r,n;this.dragDoc=i,this.dragFromId=s.id,t.dataTransfer&&(t.dataTransfer.effectAllowed="move",t.dataTransfer.setData("text/plain",null!==(n=null===(r=null===(o=null==i?void 0:i._links)||void 0===o?void 0:o.self)||void 0===r?void 0:r.href)&&void 0!==n?n:""))},this.onDocDragEnd=()=>{this.dragDoc=null,this.dragFromId=null,null!==this.dropTargetId&&(this.dropTargetId=null)},this.onNodeDragOver=(t,i)=>{const s=this.isFileDrag(t);if(!this.dragDoc&&!s)return;t.preventDefault(),t.stopPropagation(),t.dataTransfer&&(t.dataTransfer.dropEffect=s?"copy":"move");const o=s||i.id!==this.dragFromId?i.id:null;this.dropTargetId!==o&&(this.dropTargetId=o)},this.onNodeDragLeave=t=>{this.dropTargetId===t.id&&(this.dropTargetId=null)},this.onNodeDrop=(t,i,s)=>{if(this.isFileDrag(t))return t.preventDefault(),t.stopPropagation(),void this.startFileUpload(t,i,s);this.dragDoc&&(t.preventDefault(),t.stopPropagation(),this.moveDocument(i,s),this.onDocDragEnd())},this.onRootDragOver=t=>{if(!this.singleContainer)return;const i=this.isFileDrag(t);(this.dragDoc||i)&&(t.preventDefault(),t.dataTransfer&&(t.dataTransfer.dropEffect=i?"copy":"move"),this.rootDropActive||(this.rootDropActive=!0))},this.onRootDragLeave=t=>{const i=t.relatedTarget;i&&this.el.contains(i)||this.rootDropActive&&(this.rootDropActive=!1)},this.onRootDrop=t=>{if(this.rootDropActive=!1,!this.singleContainer)return;const i=this.containers[0];if(this.isFileDrag(t))return t.preventDefault(),void this.startFileUpload(t,i,i);this.dragDoc&&(t.preventDefault(),this.moveDocument(i,i),this.onDocDragEnd())}}componentDidLoad(){this.isSeededSingleContainer()?this.seedSingleContainer():this.emitContainerDistinct()}isSeededSingleContainer(){var t,i;return(null===(t=this.item)||void 0===t?void 0:t.type)===e.RELATED_VIEW&&!!(null===(i=this.item)||void 0===i?void 0:i.inverseRelation)&&this.item.inverseRelation===this.containerField&&!!this.containerHref}seedSingleContainer(){const t=h(this.containerHref,this.containerField,0);this.nodeIndex.set(t.id,t),this.containers=[t],this.rootLoading=!1,this.singleContainer=!0,t.open=!0,this.emitFolderDistinct(t)}componentDidRender(){this.pendingNeedsFocus&&this.pendingInputEl&&(this.pendingInputEl.focus(),this.pendingInputEl.select(),this.pendingNeedsFocus=!1);const t=this.canCreateFolder;t!==this.lastCanCreate&&(this.lastCanCreate=t,this.mrdCanCreate.emit(t));const i=this.targetLabel;i!==this.lastTargetLabel&&(this.lastTargetLabel=i,this.mrdTargetLabel.emit(i))}get targetLabel(){var t;const i=this.resolveTarget();if(!i)return"";const{target:s,container:o}=i;return null!==(t=p(s,o))&&void 0!==t?t:s.label}get containerField(){var t,i,s;return null!==(s=null===(i=null===(t=this.archetype)||void 0===t?void 0:t.slots)||void 0===i?void 0:i.container)&&void 0!==s?s:"container"}get folderField(){var t,i,s;return null!==(s=null===(i=null===(t=this.archetype)||void 0===t?void 0:t.slots)||void 0===i?void 0:i.folder)&&void 0!==s?s:"folder"}get titleField(){var t,i,s;return null!==(s=null===(i=null===(t=this.archetype)||void 0===t?void 0:t.slots)||void 0===i?void 0:i.title)&&void 0!==s?s:"name"}get fileField(){var t,i,s;return null!==(s=null===(i=null===(t=this.archetype)||void 0===t?void 0:t.slots)||void 0===i?void 0:i.file)&&void 0!==s?s:"file"}get dateField(){var t,i;return null===(i=null===(t=this.archetype)||void 0===t?void 0:t.slots)||void 0===i?void 0:i.date}buildDataPath(){var t,i;const s=this.item;return l({isRelatedView:(null==s?void 0:s.type)===e.RELATED_VIEW,fromClass:null==s?void 0:s.fromClass,parentId:this.parentId,dataClass:null!==(i=null!==(t=null==s?void 0:s.dataClass)&&void 0!==t?t:null==s?void 0:s.relatedClass)&&void 0!==i?i:""})}buildCreatePath(){var t,i,s;const o=this.item;return l({isRelatedView:(null==o?void 0:o.type)===e.RELATED_VIEW,fromClass:null==o?void 0:o.fromClass,parentId:this.parentId,dataClass:null!==(s=null!==(i=null!==(t=null==o?void 0:o.filterClass)&&void 0!==t?t:null==o?void 0:o.dataClass)&&void 0!==i?i:null==o?void 0:o.relatedClass)&&void 0!==s?s:""})}baseParams(){var t,i,s;const o=new URLSearchParams,r=null===(t=this.item)||void 0===t?void 0:t.filterClass;return r&&o.set("type",r),c(o,null===(s=null===(i=this.item)||void 0===i?void 0:i.view)||void 0===s?void 0:s.filter),o}emitContainerDistinct(){const t=this.baseParams();t.set("distinct",this.containerField),this.mrdLoadDistinct.emit({nodeId:i.ROOT,distinct:this.containerField,path:this.buildDataPath()+"/distinct",qs:t.toString()})}emitFolderDistinct(t){var i;const s=this.baseParams();s.set("distinct",this.folderField),s.set(this.containerField+"_href",null!==(i=t.href)&&void 0!==i?i:""),t.loading=!0,this.mrdLoadDistinct.emit({nodeId:t.id,distinct:this.folderField,path:this.buildDataPath()+"/distinct",qs:s.toString()})}buildDocQs(t,i){var s,o;const r=this.baseParams();return r.set(this.containerField+"_href",null!==(s=t.href)&&void 0!==s?s:""),r.set(this.folderField,null!==(o=i.fullPath)&&void 0!==o?o:""),r.toString()}emitDocuments(t,i){i.loading=!0,this.mrdLoadPage.emit({nodeId:i.id,page:0,sort:"",path:this.buildDataPath(),qs:this.buildDocQs(t,i)})}async setDistinct(t,s){t===i.ROOT?this.applyContainers(s):this.applyFolders(t,s)}async setDocuments(t,i){const s=this.nodeIndex.get(t);s&&(s.docs=null!=i?i:[],s.docsLoaded=!0,s.loading=!1,this.bump())}applyContainers(t){const i=[];for(const s of t){if(!s.value||"object"!=typeof s.value)continue;const t=h(s.value.href,s.value.name,s.count);i.push(t),this.nodeIndex.set(t.id,t)}if(this.containers=i,this.rootLoading=!1,this.singleContainer=1===i.length,this.singleContainer){const t=i[0];t.open=!0,this.emitFolderDistinct(t)}}applyFolders(t,i){const s=this.nodeIndex.get(t);s&&(function(t,i,s){t.children=[],t.hasDocs=!1,t.docCount=0;for(const o of i){const i="string"==typeof o.value?o.value:null==o.value?"":String(o.value),r=m(i);if(0===r.length){t.hasDocs=!0,t.docCount=o.count,t.fullPath=i;continue}let n=t;const e=[];for(const i of r){e.push(i);let o=n.children.find((t=>t.label===i));o||(o=v(t.id+"/"+e.join("/"),i,t.id),n.children.push(o),s.set(o.id,o)),n=o}n.hasDocs=!0,n.docCount=o.count,n.fullPath=i}f(t),t.foldersLoaded=!0,t.loading=!1}(s,i,this.nodeIndex),s.hasDocs&&!s.docsLoaded&&this.emitDocuments(s,s),this.bump())}bump(){this.containers=[...this.containers]}toggleContainer(t){this.selectedId=t.id,t.open=!t.open,!t.open||t.foldersLoaded||t.loading||this.emitFolderDistinct(t),this.bump()}toggleFolder(t,i){this.selectedId=i.id,i.open=!i.open,i.open&&i.hasDocs&&!i.docsLoaded&&!i.loading&&this.emitDocuments(t,i),this.bump()}resolveTarget(){if(this.selectedId){const t=this.nodeIndex.get(this.selectedId);if(t&&"container"===t.kind)return{target:t,container:t};if(t&&"folder"===t.kind){const i=t.containerId?this.nodeIndex.get(t.containerId):void 0;if(i)return{target:t,container:i}}}if(this.singleContainer&&this.containers[0]){const t=this.containers[0];return{target:t,container:t}}return null}get canCreateFolder(){return!this.pendingNode&&null!==this.resolveTarget()}async createFolder(){this.startCreateFolder()}commitFolder(){const t=this.pendingNode,i=this.pendingParent,s=this.pendingContainer;if(!t||!i||!s)return;const o=this.pendingName.trim();if(!o)return void this.cancelFolder();if(o.includes("/"))return t.error=d("folder_no_slash",this.locale),void this.bump();if(i.children.some((i=>i!==t&&i.label.toLowerCase()===o.toLowerCase())))return t.error=d("folder_duplicate",this.locale),void this.bump();const r=[..._(i,s),o];this.nodeIndex.delete(t.id),t.id=s.id+"/"+r.join("/"),t.fullPath="/"+r.join("/"),t.label=o,t.editing=!1,t.error=void 0,t.open=!0,this.nodeIndex.set(t.id,t),this.selectedId=t.id,this.clearPending(),this.bump()}cancelFolder(){const t=this.pendingNode,i=this.pendingParent;t&&i&&(i.children=i.children.filter((i=>i!==t)),this.nodeIndex.delete(t.id)),this.clearPending(),this.bump()}clearPending(){this.pendingNode=null,this.pendingParent=null,this.pendingContainer=null,this.pendingName="",this.pendingInputEl=null,this.pendingNeedsFocus=!1}isFileDrag(t){return!this.dragDoc&&!!t.dataTransfer&&Array.from(t.dataTransfer.types).includes("Files")}startFileUpload(t,i,s){var o,r;const n=null===(r=null===(o=t.dataTransfer)||void 0===o?void 0:o.files)||void 0===r?void 0:r[0];this.dropTargetId=null,n&&this.beginUpload(n,i,s)}beginUpload(t,i,s){this.pendingUpload={file:t,node:i,container:s},i.open=!0,this.uploadingNodeId=i.id,this.bump(),this.mrdUpload.emit({file:t})}async uploadFile(t){if(!t||this.pendingUpload)return;const i=this.resolveTarget();i&&this.beginUpload(t,i.target,i.container)}async setFileReference(t){const i=this.pendingUpload;if(!i)return;const{file:s,node:o,container:r}=i,n=p(o,r),e={[this.fileField]:t,[this.titleField]:g(s.name),[this.folderField]:n};this.isSeededSingleContainer()||(e[this.containerField]=r.href),this.mrdCreateObject.emit({path:this.buildCreatePath(),values:e});const d={[this.titleField]:g(s.name),_optimistic:!0},l=!o.docsLoaded&&0===o.docCount;o.hasDocs=!0,o.pending=!1,o.docCount+=1,l?(o.docsLoaded=!0,o.docs=[d]):o.docsLoaded&&(o.docs=[...o.docs,d]),this.recomputeContainerTotals(r,1),this.lastOptimisticDoc=d,this.pendingUpload=null,this.uploadingNodeId=null,this.bump()}async setCreatedHref(t){var i;const s=this.lastOptimisticDoc;s&&t&&(s._links=Object.assign(Object.assign({},null!==(i=s._links)&&void 0!==i?i:{}),{self:{href:t}}),s._optimistic=!1,this.lastOptimisticDoc=null,this.bump())}moveDocument(t,i){var s,o;const r=this.dragDoc,n=this.dragFromId?this.nodeIndex.get(this.dragFromId):void 0;if(!r||!n)return;const e="container"===n.kind?n:n.containerId?this.nodeIndex.get(n.containerId):void 0;if(!e)return;const d=p(t,i),l=p(n,e),c=i===e;if(t===n||c&&d===l)return;!function(t,i,s,o){i.docs=i.docs.filter((i=>i!==t)),i.docCount=Math.max(0,i.docCount-1),i.docsLoaded&&(i.hasDocs=i.docs.length>0),s.hasDocs=!0,s.pending=!1,s.docCount+=1,"folder"===s.kind&&(s.fullPath=null!=o?o:""),s.docsLoaded&&(s.docs=[...s.docs,t])}(r,n,t,d),this.recomputeContainerTotals(e,-1),c||this.recomputeContainerTotals(i,1);const a=null===(o=null===(s=null==r?void 0:r._links)||void 0===s?void 0:s.self)||void 0===o?void 0:o.href;if(a){const t={[this.folderField]:d};c||(t[this.containerField]=i.href),this.mrdUpdateObject.emit({href:a,values:t})}this.bump()}recomputeContainerTotals(t,i){t.foldersLoaded?f(t):t.totalCount=Math.max(0,t.totalCount+i)}openDoc(t,i,s){var o,r,n,e;const d=null===(r=null===(o=null==t?void 0:t._links)||void 0===o?void 0:o.self)||void 0===r?void 0:r.href,l=null!==(e=null!==(n=null==t?void 0:t[this.titleField])&&void 0!==n?n:null==t?void 0:t.name)&&void 0!==e?e:"",c=i.docs.indexOf(t),u=c>=0?{index:c,sort:"",path:this.buildDataPath(),qs:this.buildDocQs(s,i)}:void 0,m=a(this.archetype,t);this.mrdNavigate.emit({href:d,label:l,listContext:u,attachments:m})}treeCtx(){return{locale:this.locale,titleField:this.titleField,dateField:this.dateField,selectedId:this.selectedId,dropTargetId:this.dropTargetId,uploadingNodeId:this.uploadingNodeId,on:{toggleContainer:t=>this.toggleContainer(t),toggleFolder:(t,i)=>this.toggleFolder(t,i),openDoc:(t,i,s)=>this.openDoc(t,i,s),docDragStart:this.onDocDragStart,docDragEnd:this.onDocDragEnd,nodeDragOver:this.onNodeDragOver,nodeDragLeave:this.onNodeDragLeave,nodeDrop:this.onNodeDrop,pendingInput:this.onPendingInput,pendingKeyDown:this.onPendingKeyDown,cancelFolder:()=>this.cancelFolder(),setPendingInputEl:t=>this.pendingInputEl=t}}}render(){const i=this.treeCtx();let s;if(this.rootLoading)s=D(i,0);else if(0===this.containers.length)s=t("div",{key:"63604a99fc62d9108f61b8efc126c0cd3e8fc5ed",class:"mrd-document-list__empty"},d("no_results",this.locale));else if(this.singleContainer){const o=this.containers[0];if(o.loading&&!o.foldersLoaded)s=D(i,0);else{const r=C(i,o,o,0);s=r.length?r:t("div",{class:"mrd-document-list__empty"},d("doc_empty_drop",this.locale))}}else s=this.containers.map((s=>function(i,s,o){return t("div",{class:"mrd-document-list__node",key:s.id},t("div",{class:"mrd-document-list__row mrd-document-list__row--dossier"+(s.id===i.selectedId?" mrd-document-list__row--selected":"")+(s.id===i.dropTargetId?" mrd-document-list__row--drop":""),onClick:()=>i.on.toggleContainer(s),onDragOver:t=>i.on.nodeDragOver(t,s),onDragLeave:()=>i.on.nodeDragLeave(s),onDrop:t=>i.on.nodeDrop(t,s,s)},w(o),b(s.open,!1),t("svg",{class:"mrd-document-list__icon mrd-document-list__icon--dossier",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round","aria-hidden":"true"},t("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"})),t("span",{class:"mrd-document-list__label"},s.label),t("span",{class:"mrd-document-list__count"},s.totalCount)),s.open&&t("div",{class:"mrd-document-list__kids"},s.loading&&!s.foldersLoaded?D(i,o+1):C(i,s,s,o+1)))}(i,s,0)));return t(r,{key:"2a092e3a7483deb1fb30753b0c0428aaf75c303a"},t("div",{key:"2b716c912a272b925a95133de5b1ff2abedd9dbc",class:"mrd-document-list"+(this.rootDropActive?" mrd-document-list--drop-active":""),onDragOver:this.onRootDragOver,onDragLeave:this.onRootDragLeave,onDrop:this.onRootDrop},s))}get el(){return this}static get style(){return".sc-mrd-document-list-h{display:block;height:100%}.mrd-document-list.sc-mrd-document-list{padding:var(--mrd-space-2) 0;min-height:100%;box-sizing:border-box}.mrd-document-list--drop-active.sc-mrd-document-list{outline:2px dashed var(--mrd-color-primary);outline-offset:-4px;background:var(--mrd-color-primary-50, rgba(22, 163, 74, 0.06))}.mrd-document-list__row.sc-mrd-document-list{display:flex;align-items:center;gap:var(--mrd-space-1);height:2.125rem;padding:0 var(--mrd-space-4) 0 var(--mrd-space-2);cursor:pointer;user-select:none;font-size:var(--mrd-font-size-sm);color:var(--mrd-color-neutral-800)}.mrd-document-list__row.sc-mrd-document-list:hover{background:var(--mrd-color-neutral-50)}.mrd-document-list__row--selected.sc-mrd-document-list{background:var(--mrd-color-primary-50, rgba(22, 163, 74, 0.1))}.mrd-document-list__row--selected.sc-mrd-document-list:hover{background:var(--mrd-color-primary-50, rgba(22, 163, 74, 0.1))}.mrd-document-list__row--pending.sc-mrd-document-list .mrd-document-list__label.sc-mrd-document-list{font-style:italic;color:var(--mrd-color-neutral-500)}.mrd-document-list__row--doc.sc-mrd-document-list{cursor:grab}.mrd-document-list__row--doc.sc-mrd-document-list:active{cursor:grabbing}.mrd-document-list__row--drop.sc-mrd-document-list{background:var(--mrd-color-primary-50, rgba(22, 163, 74, 0.1));box-shadow:inset 0 0 0 1px var(--mrd-color-primary)}.mrd-document-list__row--drop.sc-mrd-document-list:hover{background:var(--mrd-color-primary-50, rgba(22, 163, 74, 0.1))}.mrd-document-list__row--edit.sc-mrd-document-list{cursor:default}.mrd-document-list__row--dossier.sc-mrd-document-list .mrd-document-list__label.sc-mrd-document-list{font-weight:var(--mrd-font-weight-semibold)}.mrd-document-list__name-input.sc-mrd-document-list{flex:1;min-width:0;height:1.625rem;padding:0 var(--mrd-space-2);font-size:var(--mrd-font-size-sm);font-family:inherit;color:var(--mrd-color-neutral-800);border:1px solid var(--mrd-color-primary);border-radius:var(--mrd-border-radius);outline:none;box-shadow:var(--mrd-shadow-focus)}.mrd-document-list__error.sc-mrd-document-list{font-size:var(--mrd-font-size-xs);color:var(--mrd-color-danger, #dc2626);padding-top:0.125rem;padding-bottom:0.25rem}.mrd-document-list__indent.sc-mrd-document-list{flex:none}.mrd-document-list__chev.sc-mrd-document-list{width:0.875rem;height:1rem;flex:none;display:grid;place-items:center;color:var(--mrd-color-neutral-400);transition:transform var(--mrd-transition-fast)}.mrd-document-list__chev.sc-mrd-document-list svg.sc-mrd-document-list{width:0.6875rem;height:0.6875rem}.mrd-document-list__chev--open.sc-mrd-document-list{transform:rotate(90deg)}.mrd-document-list__chev--leaf.sc-mrd-document-list{visibility:hidden}.mrd-document-list__icon.sc-mrd-document-list{width:1.0625rem;height:1.0625rem;flex:none}.mrd-document-list__icon--dossier.sc-mrd-document-list{color:var(--mrd-color-primary)}.mrd-document-list__icon--folder.sc-mrd-document-list{color:var(--mrd-color-folder)}.mrd-document-list__icon--doc.sc-mrd-document-list{color:var(--mrd-color-neutral-400)}.mrd-document-list__label.sc-mrd-document-list{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mrd-document-list__count.sc-mrd-document-list{flex:none;font-family:var(--mrd-font-family-mono);font-size:var(--mrd-font-size-xs);color:var(--mrd-color-neutral-500);background:var(--mrd-color-neutral-100);border-radius:var(--mrd-border-radius-full);padding:0.0625rem 0.5rem}.mrd-document-list__date.sc-mrd-document-list{flex:none;font-size:var(--mrd-font-size-xs);color:var(--mrd-color-neutral-400);font-variant-numeric:tabular-nums}.mrd-document-list__loading.sc-mrd-document-list{display:flex;align-items:center;gap:var(--mrd-space-1);height:1.875rem;padding:0 var(--mrd-space-4) 0 var(--mrd-space-2);font-size:var(--mrd-font-size-xs);color:var(--mrd-color-neutral-400)}.mrd-document-list__spinner.sc-mrd-document-list{width:0.75rem;height:0.75rem;border:2px solid var(--mrd-color-neutral-300);border-top-color:var(--mrd-color-primary);border-radius:50%;animation:mrd-document-list-spin 0.7s linear infinite}.mrd-document-list__empty.sc-mrd-document-list{padding:var(--mrd-space-8) var(--mrd-space-4);text-align:center;color:var(--mrd-color-neutral-400);font-size:var(--mrd-font-size-sm)}@keyframes mrd-document-list-spin{to{transform:rotate(360deg)}}"}},[2,"mrd-document-list",{item:[16],archetype:[16],parentId:[1,"parent-id"],containerHref:[1,"container-href"],locale:[1],containers:[32],rootLoading:[32],singleContainer:[32],selectedId:[32],dropTargetId:[32],uploadingNodeId:[32],rootDropActive:[32],setDistinct:[64],setDocuments:[64],createFolder:[64],uploadFile:[64],setFileReference:[64],setCreatedHref:[64]}]);function L(){"undefined"!=typeof customElements&&["mrd-document-list"].forEach((t=>{"mrd-document-list"===t&&(customElements.get(n(t))||customElements.define(n(t),z))}))}z.ROOT="__root__";export{z as M,L as d}
@@ -1 +1 @@
1
- import{proxyCustomElement as r,HTMLElement as e,createEvent as t,h as i,Host as o,transformTag as s}from"@stencil/core/internal/client";import{a as d,d as m,b as l}from"./client-layout.js";import{t as n}from"./i18n.js";import{v as a}from"./field-helpers.js";import{d as c}from"./mrd-boolean-field2.js";import{d as f}from"./mrd-currency-field2.js";import{d as u}from"./mrd-date-field2.js";import{d as h}from"./mrd-datetime-field2.js";import{d as v}from"./mrd-email-field2.js";import{d as b}from"./mrd-field2.js";import{d as p}from"./mrd-file-field2.js";import{d as g}from"./mrd-hyperlink-field2.js";import{d as _}from"./mrd-image-field2.js";import{d as y}from"./mrd-list-field2.js";import{d as j}from"./mrd-longtext-field2.js";import{d as k}from"./mrd-number-field2.js";import{d as x}from"./mrd-relation-field2.js";import{d as w}from"./mrd-secret-field2.js";import{d as O}from"./mrd-text-field2.js";import{d as E}from"./mrd-textarea-field2.js";import{d as z}from"./mrd-time-field2.js";const C=r(class extends e{constructor(r){super(),!1!==r&&this.__registerHost(),this.mrdSubmit=t(this,"mrdSubmit",7),this.mrdCancel=t(this,"mrdCancel",7),this.mrdSearch=t(this,"mrdSearch",7),this.mrdFetchAll=t(this,"mrdFetchAll",7),this.mrdUpload=t(this,"mrdUpload",7),this.locale=navigator.language,this.values={},this.referenceHref="",this.referenceClass="",this.showCancel=!1,this.me=null,this.formValues={},this.errors={},this.submitted=!1,this.initialValues={},this.handleFieldChange=r=>{const{name:e,value:t}=r.detail,i=this.getHref(this.formValues[e]);this.formValues=Object.assign(Object.assign({},this.formValues),{[e]:t}),this.errors[e]&&(this.errors=Object.assign(Object.assign({},this.errors),{[e]:""}));const o=this.getHref(t);if(o!==i)for(const r of this.collectDependentDropdowns())r.commonRelation===e&&(this.formValues=Object.assign(Object.assign({},this.formValues),{[r.name]:null}),this.mrdFetchAll.emit({name:r.name,relatedClass:r.relatedClass,mostSignificantClass:r.mostSignificantClass,commonRelation:r.commonRelation,filter:r.commonRelation+"_href",filterValue:o}))},this.handleSearch=r=>{r.stopPropagation(),this.mrdSearch.emit(r.detail)},this.handleFetchAll=r=>{r.stopPropagation(),this.mrdFetchAll.emit(r.detail)},this.handleUpload=r=>{r.stopPropagation(),this.mrdUpload.emit(r.detail)},this.handleSubmit=r=>{r.preventDefault(),this.submitted=!0,this.validate()&&this.mrdSubmit.emit(this.buildSubmitPayload())}}componentWillLoad(){var r,e;this.initialValues=Object.assign({},null!==(r=this.values)&&void 0!==r?r:{}),this.formValues=Object.assign({},null!==(e=this.values)&&void 0!==e?e:{}),this.applyDefaultValues()}componentDidLoad(){setTimeout((()=>{this.applyReferenceValue(),this.emitDependentFetchAll()}),0)}valuesChanged(r){this.initialValues=Object.assign({},null!=r?r:{}),this.formValues=Object.assign({},null!=r?r:{}),this.applyReferenceValue(),this.applyDefaultValues(),this.errors={},this.submitted=!1,setTimeout((()=>this.emitDependentFetchAll()),0)}meChanged(){this.applyDefaultValues()}applyDefaultValues(){var r,e,t,i,o,s,m,l;const n=this.collectFields(null!==(e=null===(r=this.layout)||void 0===r?void 0:r.items)&&void 0!==e?e:[]),a={};for(const r of n){if(!r.name)continue;const e=this.formValues[r.name];if(null!=e&&""!==e)continue;const n=null!==(o=null!==(t=r.defaultValue)&&void 0!==t?t:null===(i=r.field)||void 0===i?void 0:i.defaultValue)&&void 0!==o?o:null===(s=r.relation)||void 0===s?void 0:s.defaultValue;if(n)if(r.type===d.FIELD){const e=this.resolveFieldDefault(n,null!==(m=r.dataType)&&void 0!==m?m:null===(l=r.field)||void 0===l?void 0:l.dataType);null!=e&&(a[r.name]=e)}else r.type===d.RELATION&&"me()"===n&&this.me&&(a[r.name]=this.me)}Object.keys(a).length>0&&(this.formValues=Object.assign(Object.assign({},this.formValues),a))}resolveFieldDefault(r,e){return"today()"===r?(new Date).toISOString().slice(0,10):"now()"===r?(new Date).toISOString().replace(/\.\d{3}Z$/,"Z"):r}applyReferenceValue(){if(!this.referenceHref||!this.referenceClass)return;const r=this.resolveReferenceFieldName();r&&(this.formValues[r]||(this.formValues=Object.assign(Object.assign({},this.formValues),{[r]:this.referenceHref})))}resolveReferenceFieldName(){var r,e;const t=this.collectFields(null!==(e=null===(r=this.layout)||void 0===r?void 0:r.items)&&void 0!==e?e:[]),i=t.find((r=>r.type===d.RELATION&&r.mostSignificantClass===this.referenceClass));if(null==i?void 0:i.name)return i.name;const o=new Set(t.filter((r=>r.type===d.RELATION)).map((r=>r.name)));for(const r of t)if(r.type===d.RELATION&&r.editBehavior===m.DROPDOWN&&r.commonRelation&&!o.has(r.commonRelation))return r.commonRelation;return null}async setFieldValue(r,e,t){if(t){const i=this.formValues[r];if(Array.isArray(i)){const o=i.indexOf(t);if(-1===o)return;const s=[...i];return s[o]=e,this.formValues=Object.assign(Object.assign({},this.formValues),{[r]:s}),void(this.errors[r]&&(this.errors=Object.assign(Object.assign({},this.errors),{[r]:""})))}if(i!==t)return}this.formValues=Object.assign(Object.assign({},this.formValues),{[r]:e}),this.errors[r]&&(this.errors=Object.assign(Object.assign({},this.errors),{[r]:""}))}collectDependentDropdowns(){var r,e;return this.collectFields(null!==(e=null===(r=this.layout)||void 0===r?void 0:r.items)&&void 0!==e?e:[]).filter((r=>r.type===d.RELATION&&r.editBehavior===m.DROPDOWN&&!!r.commonRelation))}emitDependentFetchAll(){for(const r of this.collectDependentDropdowns()){const e=this.getHref(this.formValues[r.commonRelation]);e&&this.mrdFetchAll.emit({name:r.name,relatedClass:r.relatedClass,mostSignificantClass:r.mostSignificantClass,commonRelation:r.commonRelation,filter:r.commonRelation+"_href",filterValue:e})}}getHref(r){return r?"string"==typeof r?r:"object"==typeof r&&"id"in r?r.id:"":""}collectFields(r){const e=[];for(const t of r)t.type!==d.FIELD&&t.type!==d.RELATION||e.push(t),t.items&&e.push(...this.collectFields(t.items));return e}validate(){var r,e;const t={},i=this.collectFields(null!==(e=null===(r=this.layout)||void 0===r?void 0:r.items)&&void 0!==e?e:[]);for(const r of i)r.name&&r.required&&!a(this.formValues[r.name])&&(t[r.name]=n("required",this.locale));return this.errors=t,0===Object.keys(t).length}normalizeFieldValue(r){return""===r||null==r?null:r}normalizeFileFieldValue(r){const e=r=>r&&"object"==typeof r&&"href"in r?r.href:r;if(Array.isArray(r)){const t=r.map(e).filter((r=>null!=r&&""!==r));return t.length?t:null}return this.normalizeFieldValue(e(r))}normalizeRelationValue(r){return null==r||""===r?null:"string"==typeof r?r||null:Array.isArray(r)?r.map((r=>"object"==typeof r&&null!==r&&"id"in r?r.id:r+"")):"object"==typeof r&&"id"in r&&r.id||null}deepEqual(r,e){if(r===e)return!0;if(null==r&&null==e)return!0;if(null==r||null==e)return!1;if(Array.isArray(r)&&Array.isArray(e)){if(r.length!==e.length)return!1;const t=[...r].sort(),i=[...e].sort();return JSON.stringify(t)===JSON.stringify(i)}return JSON.stringify(r)===JSON.stringify(e)}buildSubmitPayload(){var r,e;const t={},i=this.collectFields(null!==(e=null===(r=this.layout)||void 0===r?void 0:r.items)&&void 0!==e?e:[]);for(const r of i){if(!r.name)continue;const e=r.name;if(r.type===d.FIELD){const i=this.formValues[e];if(i instanceof File)continue;if(Array.isArray(i)&&i.some((r=>r instanceof File)))continue;const o=r.dataType===l.FILE||r.dataType===l.IMAGE,s=o?this.normalizeFileFieldValue(i):this.normalizeFieldValue(i),d=o?this.normalizeFileFieldValue(this.initialValues[e]):this.normalizeFieldValue(this.initialValues[e]);if(this.deepEqual(s,d))continue;t[e]=s}else if(r.type===d.RELATION){const r=this.normalizeRelationValue(this.formValues[e]),i=this.normalizeRelationValue(this.initialValues[e]);if(this.deepEqual(r,i))continue;t[e]=r}}return t}renderItems(r){return r.map((r=>{var e;if(r.type===d.SECTION)return i("fieldset",{class:"mrd-form__section"},r.label&&i("legend",{class:"mrd-form__section-legend"},r.label),i("div",{class:"mrd-form__section-body"},r.items&&this.renderItems(r.items)));if(r.type===d.GROUP)return i("div",{class:"mrd-form__group"},r.label&&i("div",{class:"mrd-form__group-label"},r.label),i("div",{class:"mrd-form__group-body"},r.items&&this.renderItems(r.items)));const t=null!==(e=r.name)&&void 0!==e?e:"";return i("div",{class:"mrd-form__field"},i("mrd-field",{item:r,locale:this.locale,value:this.formValues[t],onMrdChange:this.handleFieldChange,onMrdBlur:this.handleFieldChange,onMrdSearch:this.handleSearch,onMrdFetchAll:this.handleFetchAll,onMrdUpload:this.handleUpload}),this.errors[t]&&i("span",{class:"mrd-form__field-error"},this.errors[t]))}))}render(){if(!this.layout)return i(o,null);const r=this.locale.startsWith("ar")?"rtl":"ltr";return i(o,null,i("form",{class:"mrd-form",dir:r,onSubmit:this.handleSubmit,noValidate:!0},this.layout.title&&i("h2",{class:"mrd-form__title"},this.layout.title),i("div",{class:"mrd-form__body"},this.renderItems(this.layout.items)),i("div",{class:"mrd-form__footer"},i("button",{type:"submit",class:"mrd-form__submit"},n("submit",this.locale)),this.showCancel&&i("button",{type:"button",class:"mrd-form__cancel",onClick:()=>this.mrdCancel.emit()},n("cancel",this.locale)))))}static get watchers(){return{values:[{valuesChanged:0}],me:[{meChanged:0}]}}static get style(){return".sc-mrd-form-h{display:block}.mrd-form.sc-mrd-form{font-family:var(--mrd-font-family);width:100%}.mrd-form__title.sc-mrd-form{font-size:var(--mrd-font-size-2xl);font-weight:var(--mrd-font-weight-bold);color:var(--mrd-color-neutral-900);margin:0 0 var(--mrd-space-6) 0}.mrd-form__body.sc-mrd-form{display:flex;flex-direction:column;gap:var(--mrd-space-5)}.mrd-form__field.sc-mrd-form{display:flex;flex-direction:column;gap:var(--mrd-space-1)}.mrd-form__field-error.sc-mrd-form{font-family:var(--mrd-font-family);font-size:var(--mrd-error-font-size);color:var(--mrd-error-color)}.mrd-form__section.sc-mrd-form{border:var(--mrd-border-width) solid var(--mrd-border-color);border-radius:var(--mrd-border-radius-md);padding:var(--mrd-space-4) var(--mrd-space-5);margin:0}.mrd-form__section-legend.sc-mrd-form{font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-base);font-weight:var(--mrd-font-weight-semibold);color:var(--mrd-color-neutral-700);padding:0 var(--mrd-space-2)}.mrd-form__section-body.sc-mrd-form{display:flex;flex-direction:column;gap:var(--mrd-space-4);margin-top:var(--mrd-space-2)}.mrd-form__group.sc-mrd-form{display:flex;flex-direction:column;gap:var(--mrd-space-2)}.mrd-form__group-label.sc-mrd-form{font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-sm);font-weight:var(--mrd-font-weight-semibold);color:var(--mrd-color-neutral-500);text-transform:uppercase;letter-spacing:0.05em}.mrd-form__group-body.sc-mrd-form{display:flex;flex-direction:column;gap:var(--mrd-space-4);padding-left:var(--mrd-space-4);border-left:3px solid var(--mrd-color-neutral-200)}.mrd-form__footer.sc-mrd-form{margin-top:var(--mrd-space-8);padding-top:var(--mrd-space-5);border-top:var(--mrd-border-width) solid var(--mrd-border-color);display:flex;justify-content:flex-end;gap:var(--mrd-space-3)}.mrd-form__submit.sc-mrd-form{display:inline-flex;align-items:center;justify-content:center;height:var(--mrd-input-height);padding:0 var(--mrd-space-6);background-color:var(--mrd-color-primary);color:var(--mrd-color-white);font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-base);font-weight:var(--mrd-font-weight-medium);border:none;border-radius:var(--mrd-border-radius);cursor:pointer;transition:background-color var(--mrd-transition)}.mrd-form__submit.sc-mrd-form:hover{background-color:var(--mrd-color-primary-hover)}.mrd-form__submit.sc-mrd-form:focus{outline:none;box-shadow:var(--mrd-shadow-focus)}.mrd-form__submit.sc-mrd-form:active{background-color:var(--mrd-color-primary-dark)}.mrd-form__cancel.sc-mrd-form{display:inline-flex;align-items:center;justify-content:center;height:var(--mrd-input-height);padding:0 var(--mrd-space-6);background-color:transparent;color:var(--mrd-color-neutral-600);font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-base);font-weight:var(--mrd-font-weight-medium);border:var(--mrd-border-width) solid var(--mrd-border-color);border-radius:var(--mrd-border-radius);cursor:pointer;transition:background-color var(--mrd-transition), color var(--mrd-transition)}.mrd-form__cancel.sc-mrd-form:hover{background-color:var(--mrd-color-neutral-100);color:var(--mrd-color-neutral-800)}.mrd-form__cancel.sc-mrd-form:focus{outline:none;box-shadow:var(--mrd-shadow-focus)}.mrd-form__cancel.sc-mrd-form:active{background-color:var(--mrd-color-neutral-200)}"}},[2,"mrd-form",{layout:[16],locale:[1],values:[16],referenceHref:[1,"reference-href"],referenceClass:[1,"reference-class"],showCancel:[4,"show-cancel"],me:[16],formValues:[32],errors:[32],submitted:[32],setFieldValue:[64]},void 0,{values:[{valuesChanged:0}],me:[{meChanged:0}]}]),F=C,S=function(){"undefined"!=typeof customElements&&["mrd-form","mrd-boolean-field","mrd-currency-field","mrd-date-field","mrd-datetime-field","mrd-email-field","mrd-field","mrd-file-field","mrd-hyperlink-field","mrd-image-field","mrd-list-field","mrd-longtext-field","mrd-number-field","mrd-relation-field","mrd-secret-field","mrd-text-field","mrd-textarea-field","mrd-time-field"].forEach((r=>{switch(r){case"mrd-form":customElements.get(s(r))||customElements.define(s(r),C);break;case"mrd-boolean-field":customElements.get(s(r))||c();break;case"mrd-currency-field":customElements.get(s(r))||f();break;case"mrd-date-field":customElements.get(s(r))||u();break;case"mrd-datetime-field":customElements.get(s(r))||h();break;case"mrd-email-field":customElements.get(s(r))||v();break;case"mrd-field":customElements.get(s(r))||b();break;case"mrd-file-field":customElements.get(s(r))||p();break;case"mrd-hyperlink-field":customElements.get(s(r))||g();break;case"mrd-image-field":customElements.get(s(r))||_();break;case"mrd-list-field":customElements.get(s(r))||y();break;case"mrd-longtext-field":customElements.get(s(r))||j();break;case"mrd-number-field":customElements.get(s(r))||k();break;case"mrd-relation-field":customElements.get(s(r))||x();break;case"mrd-secret-field":customElements.get(s(r))||w();break;case"mrd-text-field":customElements.get(s(r))||O();break;case"mrd-textarea-field":customElements.get(s(r))||E();break;case"mrd-time-field":customElements.get(s(r))||z()}}))};export{F as MrdForm,S as defineCustomElement}
1
+ import{proxyCustomElement as r,HTMLElement as e,createEvent as t,h as i,Host as o,transformTag as s}from"@stencil/core/internal/client";import{a as d,d as m,b as l}from"./client-layout.js";import{t as n}from"./i18n.js";import{v as a}from"./field-helpers.js";import{d as c}from"./mrd-boolean-field2.js";import{d as f}from"./mrd-currency-field2.js";import{d as u}from"./mrd-date-field2.js";import{d as h}from"./mrd-datetime-field2.js";import{d as v}from"./mrd-email-field2.js";import{d as b}from"./mrd-field2.js";import{d as p}from"./mrd-file-field2.js";import{d as g}from"./mrd-hyperlink-field2.js";import{d as _}from"./mrd-image-field2.js";import{d as y}from"./mrd-list-field2.js";import{d as j}from"./mrd-longtext-field2.js";import{d as k}from"./mrd-number-field2.js";import{d as x}from"./mrd-relation-field2.js";import{d as w}from"./mrd-secret-field2.js";import{d as O}from"./mrd-text-field2.js";import{d as E}from"./mrd-textarea-field2.js";import{d as z}from"./mrd-time-field2.js";const C=r(class extends e{constructor(r){super(),!1!==r&&this.__registerHost(),this.mrdSubmit=t(this,"mrdSubmit",7),this.mrdCancel=t(this,"mrdCancel",7),this.mrdSearch=t(this,"mrdSearch",7),this.mrdFetchAll=t(this,"mrdFetchAll",7),this.mrdUpload=t(this,"mrdUpload",7),this.locale=navigator.language,this.values={},this.referenceHref="",this.referenceClass="",this.showCancel=!1,this.me=null,this.formValues={},this.errors={},this.submitted=!1,this.initialValues={},this.handleFieldChange=r=>{const{name:e,value:t}=r.detail,i=this.getHref(this.formValues[e]);this.formValues=Object.assign(Object.assign({},this.formValues),{[e]:t}),this.errors[e]&&(this.errors=Object.assign(Object.assign({},this.errors),{[e]:""}));const o=this.getHref(t);if(o!==i)for(const r of this.collectDependentDropdowns())r.commonRelation===e&&(this.formValues=Object.assign(Object.assign({},this.formValues),{[r.name]:null}),this.mrdFetchAll.emit({name:r.name,relatedClass:r.relatedClass,mostSignificantClass:r.mostSignificantClass,commonRelation:r.commonRelation,filter:r.commonRelation+"_href",filterValue:o}))},this.handleSearch=r=>{r.stopPropagation(),this.mrdSearch.emit(r.detail)},this.handleFetchAll=r=>{r.stopPropagation(),this.mrdFetchAll.emit(r.detail)},this.handleUpload=r=>{r.stopPropagation(),this.mrdUpload.emit(r.detail)},this.handleSubmit=r=>{r.preventDefault(),this.submitted=!0,this.validate()&&this.mrdSubmit.emit(this.buildSubmitPayload())}}componentWillLoad(){var r,e;this.initialValues=Object.assign({},null!==(r=this.values)&&void 0!==r?r:{}),this.formValues=Object.assign({},null!==(e=this.values)&&void 0!==e?e:{}),this.applyDefaultValues()}componentDidLoad(){setTimeout((()=>{this.applyReferenceValue(),this.emitDependentFetchAll()}),0)}valuesChanged(r){this.initialValues=Object.assign({},null!=r?r:{}),this.formValues=Object.assign({},null!=r?r:{}),this.applyReferenceValue(),this.applyDefaultValues(),this.errors={},this.submitted=!1,setTimeout((()=>this.emitDependentFetchAll()),0)}meChanged(){this.applyDefaultValues()}applyDefaultValues(){var r,e,t,i,o,s,m,l;const n=this.collectFields(null!==(e=null===(r=this.layout)||void 0===r?void 0:r.items)&&void 0!==e?e:[]),a={};for(const r of n){if(!r.name)continue;const e=this.formValues[r.name];if(null!=e&&""!==e)continue;const n=null!==(o=null!==(t=r.defaultValue)&&void 0!==t?t:null===(i=r.field)||void 0===i?void 0:i.defaultValue)&&void 0!==o?o:null===(s=r.relation)||void 0===s?void 0:s.defaultValue;if(n)if(r.type===d.FIELD){const e=this.resolveFieldDefault(n,null!==(m=r.dataType)&&void 0!==m?m:null===(l=r.field)||void 0===l?void 0:l.dataType);null!=e&&(a[r.name]=e)}else r.type===d.RELATION&&"me()"===n&&this.me&&(a[r.name]=this.me)}Object.keys(a).length>0&&(this.formValues=Object.assign(Object.assign({},this.formValues),a))}resolveFieldDefault(r,e){return"today()"===r?(new Date).toISOString().slice(0,10):"now()"===r?(new Date).toISOString().replace(/\.\d{3}Z$/,"Z"):r}applyReferenceValue(){if(!this.referenceHref||!this.referenceClass)return;const r=this.resolveReferenceFieldName();r&&(this.formValues[r]||(this.formValues=Object.assign(Object.assign({},this.formValues),{[r]:this.referenceHref})))}resolveReferenceFieldName(){var r,e;const t=this.collectFields(null!==(e=null===(r=this.layout)||void 0===r?void 0:r.items)&&void 0!==e?e:[]),i=t.find((r=>r.type===d.RELATION&&r.mostSignificantClass===this.referenceClass));if(null==i?void 0:i.name)return i.name;const o=new Set(t.filter((r=>r.type===d.RELATION)).map((r=>r.name)));for(const r of t)if(r.type===d.RELATION&&r.editBehavior===m.DROPDOWN&&r.commonRelation&&!o.has(r.commonRelation))return r.commonRelation;return null}async setFieldValue(r,e,t){if(t){const i=this.formValues[r];if(Array.isArray(i)){const o=i.indexOf(t);if(-1===o)return;const s=[...i];return s[o]=e,this.formValues=Object.assign(Object.assign({},this.formValues),{[r]:s}),void(this.errors[r]&&(this.errors=Object.assign(Object.assign({},this.errors),{[r]:""})))}if(i!==t)return}this.formValues=Object.assign(Object.assign({},this.formValues),{[r]:e}),this.errors[r]&&(this.errors=Object.assign(Object.assign({},this.errors),{[r]:""}))}collectDependentDropdowns(){var r,e;return this.collectFields(null!==(e=null===(r=this.layout)||void 0===r?void 0:r.items)&&void 0!==e?e:[]).filter((r=>r.type===d.RELATION&&r.editBehavior===m.DROPDOWN&&!!r.commonRelation))}emitDependentFetchAll(){for(const r of this.collectDependentDropdowns()){const e=this.getHref(this.formValues[r.commonRelation]);e&&this.mrdFetchAll.emit({name:r.name,relatedClass:r.relatedClass,mostSignificantClass:r.mostSignificantClass,commonRelation:r.commonRelation,filter:r.commonRelation+"_href",filterValue:e})}}getHref(r){var e,t;return r?"string"==typeof r?r:"object"==typeof r&&null!==(t=null!==(e=r.id)&&void 0!==e?e:r.href)&&void 0!==t?t:"":""}collectFields(r){const e=[];for(const t of r)t.type!==d.FIELD&&t.type!==d.RELATION||e.push(t),t.items&&e.push(...this.collectFields(t.items));return e}validate(){var r,e;const t={},i=this.collectFields(null!==(e=null===(r=this.layout)||void 0===r?void 0:r.items)&&void 0!==e?e:[]);for(const r of i)r.name&&r.required&&!a(this.formValues[r.name])&&(t[r.name]=n("required",this.locale));return this.errors=t,0===Object.keys(t).length}normalizeFieldValue(r){return""===r||null==r?null:r}normalizeFileFieldValue(r){const e=r=>r&&"object"==typeof r&&"href"in r?r.href:r;if(Array.isArray(r)){const t=r.map(e).filter((r=>null!=r&&""!==r));return t.length?t:null}return this.normalizeFieldValue(e(r))}normalizeRelationValue(r){return null==r||""===r?null:"string"==typeof r?r||null:Array.isArray(r)?r.map((r=>"object"==typeof r&&null!==r&&"id"in r?r.id:r+"")):"object"==typeof r&&"id"in r&&r.id||null}deepEqual(r,e){if(r===e)return!0;if(null==r&&null==e)return!0;if(null==r||null==e)return!1;if(Array.isArray(r)&&Array.isArray(e)){if(r.length!==e.length)return!1;const t=[...r].sort(),i=[...e].sort();return JSON.stringify(t)===JSON.stringify(i)}return JSON.stringify(r)===JSON.stringify(e)}buildSubmitPayload(){var r,e;const t={},i=this.collectFields(null!==(e=null===(r=this.layout)||void 0===r?void 0:r.items)&&void 0!==e?e:[]);for(const r of i){if(!r.name)continue;const e=r.name;if(r.type===d.FIELD){const i=this.formValues[e];if(i instanceof File)continue;if(Array.isArray(i)&&i.some((r=>r instanceof File)))continue;const o=r.dataType===l.FILE||r.dataType===l.IMAGE,s=o?this.normalizeFileFieldValue(i):this.normalizeFieldValue(i),d=o?this.normalizeFileFieldValue(this.initialValues[e]):this.normalizeFieldValue(this.initialValues[e]);if(this.deepEqual(s,d))continue;t[e]=s}else if(r.type===d.RELATION){const r=this.normalizeRelationValue(this.formValues[e]),i=this.normalizeRelationValue(this.initialValues[e]);if(this.deepEqual(r,i))continue;t[e]=r}}return t}renderItems(r){return r.map((r=>{var e;if(r.type===d.SECTION)return i("fieldset",{class:"mrd-form__section"},r.label&&i("legend",{class:"mrd-form__section-legend"},r.label),i("div",{class:"mrd-form__section-body"},r.items&&this.renderItems(r.items)));if(r.type===d.GROUP)return i("div",{class:"mrd-form__group"},r.label&&i("div",{class:"mrd-form__group-label"},r.label),i("div",{class:"mrd-form__group-body"},r.items&&this.renderItems(r.items)));const t=null!==(e=r.name)&&void 0!==e?e:"";return i("div",{class:"mrd-form__field"},i("mrd-field",{item:r,locale:this.locale,value:this.formValues[t],onMrdChange:this.handleFieldChange,onMrdBlur:this.handleFieldChange,onMrdSearch:this.handleSearch,onMrdFetchAll:this.handleFetchAll,onMrdUpload:this.handleUpload}),this.errors[t]&&i("span",{class:"mrd-form__field-error"},this.errors[t]))}))}render(){if(!this.layout)return i(o,null);const r=this.locale.startsWith("ar")?"rtl":"ltr";return i(o,null,i("form",{class:"mrd-form",dir:r,onSubmit:this.handleSubmit,noValidate:!0},this.layout.title&&i("h2",{class:"mrd-form__title"},this.layout.title),i("div",{class:"mrd-form__body"},this.renderItems(this.layout.items)),i("div",{class:"mrd-form__footer"},i("button",{type:"submit",class:"mrd-form__submit"},n("submit",this.locale)),this.showCancel&&i("button",{type:"button",class:"mrd-form__cancel",onClick:()=>this.mrdCancel.emit()},n("cancel",this.locale)))))}static get watchers(){return{values:[{valuesChanged:0}],me:[{meChanged:0}]}}static get style(){return".sc-mrd-form-h{display:block}.mrd-form.sc-mrd-form{font-family:var(--mrd-font-family);width:100%}.mrd-form__title.sc-mrd-form{font-size:var(--mrd-font-size-2xl);font-weight:var(--mrd-font-weight-bold);color:var(--mrd-color-neutral-900);margin:0 0 var(--mrd-space-6) 0}.mrd-form__body.sc-mrd-form{display:flex;flex-direction:column;gap:var(--mrd-space-5)}.mrd-form__field.sc-mrd-form{display:flex;flex-direction:column;gap:var(--mrd-space-1)}.mrd-form__field-error.sc-mrd-form{font-family:var(--mrd-font-family);font-size:var(--mrd-error-font-size);color:var(--mrd-error-color)}.mrd-form__section.sc-mrd-form{border:var(--mrd-border-width) solid var(--mrd-border-color);border-radius:var(--mrd-border-radius-md);padding:var(--mrd-space-4) var(--mrd-space-5);margin:0}.mrd-form__section-legend.sc-mrd-form{font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-base);font-weight:var(--mrd-font-weight-semibold);color:var(--mrd-color-neutral-700);padding:0 var(--mrd-space-2)}.mrd-form__section-body.sc-mrd-form{display:flex;flex-direction:column;gap:var(--mrd-space-4);margin-top:var(--mrd-space-2)}.mrd-form__group.sc-mrd-form{display:flex;flex-direction:column;gap:var(--mrd-space-2)}.mrd-form__group-label.sc-mrd-form{font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-sm);font-weight:var(--mrd-font-weight-semibold);color:var(--mrd-color-neutral-500);text-transform:uppercase;letter-spacing:0.05em}.mrd-form__group-body.sc-mrd-form{display:flex;flex-direction:column;gap:var(--mrd-space-4);padding-left:var(--mrd-space-4);border-left:3px solid var(--mrd-color-neutral-200)}.mrd-form__footer.sc-mrd-form{margin-top:var(--mrd-space-8);padding-top:var(--mrd-space-5);border-top:var(--mrd-border-width) solid var(--mrd-border-color);display:flex;justify-content:flex-end;gap:var(--mrd-space-3)}.mrd-form__submit.sc-mrd-form{display:inline-flex;align-items:center;justify-content:center;height:var(--mrd-input-height);padding:0 var(--mrd-space-6);background-color:var(--mrd-color-primary);color:var(--mrd-color-white);font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-base);font-weight:var(--mrd-font-weight-medium);border:none;border-radius:var(--mrd-border-radius);cursor:pointer;transition:background-color var(--mrd-transition)}.mrd-form__submit.sc-mrd-form:hover{background-color:var(--mrd-color-primary-hover)}.mrd-form__submit.sc-mrd-form:focus{outline:none;box-shadow:var(--mrd-shadow-focus)}.mrd-form__submit.sc-mrd-form:active{background-color:var(--mrd-color-primary-dark)}.mrd-form__cancel.sc-mrd-form{display:inline-flex;align-items:center;justify-content:center;height:var(--mrd-input-height);padding:0 var(--mrd-space-6);background-color:transparent;color:var(--mrd-color-neutral-600);font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-base);font-weight:var(--mrd-font-weight-medium);border:var(--mrd-border-width) solid var(--mrd-border-color);border-radius:var(--mrd-border-radius);cursor:pointer;transition:background-color var(--mrd-transition), color var(--mrd-transition)}.mrd-form__cancel.sc-mrd-form:hover{background-color:var(--mrd-color-neutral-100);color:var(--mrd-color-neutral-800)}.mrd-form__cancel.sc-mrd-form:focus{outline:none;box-shadow:var(--mrd-shadow-focus)}.mrd-form__cancel.sc-mrd-form:active{background-color:var(--mrd-color-neutral-200)}"}},[2,"mrd-form",{layout:[16],locale:[1],values:[16],referenceHref:[1,"reference-href"],referenceClass:[1,"reference-class"],showCancel:[4,"show-cancel"],me:[16],formValues:[32],errors:[32],submitted:[32],setFieldValue:[64]},void 0,{values:[{valuesChanged:0}],me:[{meChanged:0}]}]),F=C,S=function(){"undefined"!=typeof customElements&&["mrd-form","mrd-boolean-field","mrd-currency-field","mrd-date-field","mrd-datetime-field","mrd-email-field","mrd-field","mrd-file-field","mrd-hyperlink-field","mrd-image-field","mrd-list-field","mrd-longtext-field","mrd-number-field","mrd-relation-field","mrd-secret-field","mrd-text-field","mrd-textarea-field","mrd-time-field"].forEach((r=>{switch(r){case"mrd-form":customElements.get(s(r))||customElements.define(s(r),C);break;case"mrd-boolean-field":customElements.get(s(r))||c();break;case"mrd-currency-field":customElements.get(s(r))||f();break;case"mrd-date-field":customElements.get(s(r))||u();break;case"mrd-datetime-field":customElements.get(s(r))||h();break;case"mrd-email-field":customElements.get(s(r))||v();break;case"mrd-field":customElements.get(s(r))||b();break;case"mrd-file-field":customElements.get(s(r))||p();break;case"mrd-hyperlink-field":customElements.get(s(r))||g();break;case"mrd-image-field":customElements.get(s(r))||_();break;case"mrd-list-field":customElements.get(s(r))||y();break;case"mrd-longtext-field":customElements.get(s(r))||j();break;case"mrd-number-field":customElements.get(s(r))||k();break;case"mrd-relation-field":customElements.get(s(r))||x();break;case"mrd-secret-field":customElements.get(s(r))||w();break;case"mrd-text-field":customElements.get(s(r))||O();break;case"mrd-textarea-field":customElements.get(s(r))||E();break;case"mrd-time-field":customElements.get(s(r))||z()}}))};export{F as MrdForm,S as defineCustomElement}
@@ -1 +1 @@
1
- import{h as t,proxyCustomElement as r,HTMLElement as o,createEvent as e,Host as i,transformTag as a}from"@stencil/core/internal/client";import{a as s,b as n,r as l,A as d,e as c,h as m,f as u,g as h}from"./client-layout.js";import{C as v}from"./cell-renderer.js";import{t as y}from"./i18n.js";import{f as p}from"./format.js";import{d as f}from"./mrd-document-container2.js";import{d as _}from"./mrd-document-list2.js";import{d as g}from"./mrd-document-view2.js";import{d as b}from"./mrd-email-view2.js";import{d as w}from"./mrd-invoice-view2.js";import{d as x}from"./mrd-table2.js";function k(t){const r=[];for(const o of t)r.push(o),o.items&&r.push(...k(o.items));return r}function z(r,o,e,i){return t("button",{class:"mrd-layout-section__download-link",onClick:()=>o&&r.on.download({href:o,fileName:e})},t("svg",{class:"mrd-layout-section__file-icon",viewBox:"0 0 24 24","aria-hidden":"true"},t("path",{fill:"currentColor",d:"M14 2H6c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V8l-6-6zm-1 7V3.5L18.5 9H13zm-3 8l-3-3 1.41-1.41L10 14.17l4.59-4.58L16 11l-6 6z"})),i)}function j(r,o,e){var i,a,s,l,d,c,m,u,h,p,f;const _=o.dataType;switch(_){case n.HYPERLINK:{const r=null!==(i=null==e?void 0:e.href)&&void 0!==i?i:e+"",o=null!==(l=null!==(s=null!==(a=null==e?void 0:e.name)&&void 0!==a?a:null==e?void 0:e.text)&&void 0!==s?s:null==e?void 0:e.label)&&void 0!==l?l:r;return t("a",{class:"mrd-layout-section__link",href:r,target:"_blank",rel:"noopener noreferrer"},o)}case n.TEXTBLOCK:return t("div",{class:"mrd-layout-section__prose",innerHTML:e+""});case n.LONGTEXT:return t("pre",{class:"mrd-layout-section__pre"},e+"");case n.JSON:return t("pre",{class:"mrd-layout-section__pre",innerHTML:v.formatJson(e)});case n.FILE:{const t=null!==(d=null==e?void 0:e.fileName)&&void 0!==d?d:e+"",o=null!==(c=null==e?void 0:e.href)&&void 0!==c?c:"";return z(r,o,t,t||y("download",r.locale))}case n.IMAGE:{const i=null!==(m=null==e?void 0:e.href)&&void 0!==m?m:"",a=null!==(u=null==e?void 0:e.fileName)&&void 0!==u?u:"",s=r.imagePreviews[o.name];return s?t("button",{class:"mrd-layout-section__image-thumb-btn",onClick:()=>r.on.openImage(s),title:a||void 0},t("img",{class:"mrd-layout-section__image-thumb",src:s,alt:a})):z(r,i,a,a||i)}case n.BOOLEAN:return t("span",{class:"mrd-layout-section__boolean mrd-layout-section__boolean--"+(e?"true":"false")},y(e?"yes":"no",r.locale));case n.LIST:{const r=(null!==(h=o.listItems)&&void 0!==h?h:[]).find((t=>t.key===e+"")),i=null!==(p=null==r?void 0:r.label)&&void 0!==p?p:e+"",a=null==r?void 0:r.color,s=null==r?void 0:r.backgroundColor;return a&&s?t("span",{class:"mrd-layout-section__badge",style:{color:a,backgroundColor:s}},i):a?t("span",{class:"mrd-layout-section__badge-dot-row"},t("span",{class:"mrd-layout-section__badge-dot",style:{backgroundColor:a}}),i):i}case n.SECRET:return e?t("span",{class:"mrd-layout-section__secret-masked"},"••••••••"):null;default:return v.renderValue(_,e,null!==(f=o.listItems)&&void 0!==f?f:[],r.locale)||null}}const C=r(class extends o{constructor(t){super(),!1!==t&&this.__registerHost(),this.mrdNavigate=e(this,"mrdNavigate",7),this.mrdSearch=e(this,"mrdSearch",7),this.mrdDownload=e(this,"mrdDownload",7),this.mrdLoadViewPage=e(this,"mrdLoadViewPage",7),this.mrdLoadImage=e(this,"mrdLoadImage",7),this.mrdAttachments=e(this,"mrdAttachments",7),this.mrdViewAction=e(this,"mrdViewAction",7),this.mrdLoadViewAggregations=e(this,"mrdLoadViewAggregations",7),this.mrdLoadViewDistinct=e(this,"mrdLoadViewDistinct",7),this.mrdUpdateObject=e(this,"mrdUpdateObject",7),this.mrdViewUpload=e(this,"mrdViewUpload",7),this.mrdCreateObject=e(this,"mrdCreateObject",7),this.items=[],this.data={},this.views={},this.links={},this.locale=navigator.language,this.archetypes=[],this.searchQueryMap={},this.searchResultsMap={},this.imagePreviewUrl=null,this.imagePreviews={},this.openHistoryField=null,this.historyClickOutside=null,this.searchTimers={},this.handleViewLoadPage=(t,r)=>{t.stopPropagation(),this.mrdLoadViewPage.emit({name:r,page:t.detail.page,sort:t.detail.sort,path:t.detail.path,qs:t.detail.qs})},this.handleSearchInput=(t,r)=>{this.searchQueryMap=Object.assign(Object.assign({},this.searchQueryMap),{[t]:r}),this.searchTimers[t]&&clearTimeout(this.searchTimers[t]),r.length<2?this.searchResultsMap=Object.assign(Object.assign({},this.searchResultsMap),{[t]:[]}):this.searchTimers[t]=setTimeout((()=>{this.mrdSearch.emit({query:r,dataClass:t})}),300)}}componentDidLoad(){setTimeout((()=>{this.initEmbeddedTables(),this.emitLoadImages()}),0),this.historyClickOutside=t=>{this.el.contains(t.target)||(this.openHistoryField=null)},document.addEventListener("mousedown",this.historyClickOutside)}disconnectedCallback(){this.historyClickOutside&&(document.removeEventListener("mousedown",this.historyClickOutside),this.historyClickOutside=null)}dataChanged(t){t&&Object.keys(t).length>0&&setTimeout((()=>this.initEmbeddedTables()),0)}async initEmbeddedTables(){const t=this.el.querySelectorAll("mrd-table[data-view]");for(const r of Array.from(t))"function"==typeof r.init&&await r.init()}emitLoadImages(){for(const t of k(this.items))if(t.type===s.FIELD&&t.dataType===n.IMAGE){const r=t.name,o=this.data[r],e=null==o?void 0:o.href;e&&this.mrdLoadImage.emit({fieldName:r,href:e})}}async setSearchResults(t,r){const o=null!=r?r:this.resolveSearchKey();o&&(this.searchResultsMap=Object.assign(Object.assign({},this.searchResultsMap),{[o]:t}))}async setViewPage(t,r,o,e,i,a){if(a){const r=this.el.querySelector(`mrd-document-list[data-doclist="${t}"]`);return void((null==r?void 0:r.setDocuments)&&await r.setDocuments(a,o))}const s=this.el.querySelector(`mrd-table[data-view="${t}"]`);s&&(void 0!==e&&(s.totalElements=e),await s.setPage(r,o,i))}async setViewAggregations(t,r){const o=this.el.querySelector(`mrd-table[data-view="${t}"]`);o&&await o.setAggregations(r)}async setViewDistinct(t,r,o){const e=this.el.querySelector(`mrd-document-list[data-doclist="${t}"]`);(null==e?void 0:e.setDistinct)&&await e.setDistinct(r,o)}async setViewFileReference(t,r){const o=this.el.querySelector(`mrd-document-list[data-doclist="${t}"]`);(null==o?void 0:o.setFileReference)&&await o.setFileReference(r)}async setViewCreatedObject(t,r){const o=this.el.querySelector(`mrd-document-list[data-doclist="${t}"]`);(null==o?void 0:o.setCreatedHref)&&await o.setCreatedHref(r)}async setImagePreview(t,r){this.imagePreviews=Object.assign(Object.assign({},this.imagePreviews),{[t]:r})}async openImagePreview(t){this.imagePreviewUrl=t}resolveSearchKey(){var t;const r=k(this.items).filter((t=>t.type===s.SEARCH));return 1===r.length&&null!==(t=r[0].dataClass)&&void 0!==t?t:null}fieldCtx(){return{locale:this.locale,data:this.data,imagePreviews:this.imagePreviews,openHistoryField:this.openHistoryField,on:{download:t=>this.mrdDownload.emit(t),openImage:t=>{this.imagePreviewUrl=t},toggleHistory:t=>{this.openHistoryField=t}}}}renderField(r){return function(r,o){var e,i;if(!o.name)return null;const a=r.data[o.name],s=(null!==(e=o.historyEnabled)&&void 0!==e?e:null===(i=o.field)||void 0===i?void 0:i.historyEnabled)&&null!==a&&"object"==typeof a&&"current"in a?a.current:a,l=function(r,o,e){if(null==e||""===e)return null;if(o.multiple&&Array.isArray(e)){if(o.dataType===n.FILE||o.dataType===n.IMAGE)return t("div",{class:"mrd-layout-section__file-list"},e.map(((e,i)=>t("div",{class:"mrd-layout-section__file-list-item",key:i+""},j(r,o,e)))));const i=e.map((t=>j(r,o,t)));return i.every((t=>"string"==typeof t||null==t))?i.filter(Boolean).join(", ")||null:t("span",null,i.map(((r,o)=>t("span",{key:o+""},r,o<i.length-1?", ":""))))}return j(r,o,e)}(r,o,s);return o.header?t("h1",{class:"mrd-layout-section__field-header",key:o.name},"string"==typeof l?l:null!=s?s+"":o.label):null==l?null:t("div",{class:"mrd-layout-section__field"+(o.dataType===n.TEXTBLOCK||o.dataType===n.LONGTEXT||o.dataType===n.JSON?" mrd-layout-section__field--block":""),key:o.name},t("span",{class:"mrd-layout-section__field-label"},o.label),t("span",{class:"mrd-layout-section__field-value"},l,function(r,o,e){var i,a,s;if(!(null!==(i=o.historyEnabled)&&void 0!==i?i:null===(a=o.field)||void 0===a?void 0:a.historyEnabled)||!o.name)return null;const n=null!==(s=null==e?void 0:e.history)&&void 0!==s?s:[];if(!n.length)return null;const l=[...n].sort(((t,r)=>r.until.localeCompare(t.until))),d=r.openHistoryField===o.name;return t("span",{class:"mrd-layout-section__history-wrap"},t("button",{type:"button",class:"mrd-layout-section__history-btn",title:y("history_badge_tooltip",r.locale),"aria-label":y("history_badge_tooltip",r.locale),onClick:t=>{t.stopPropagation(),r.on.toggleHistory(d?null:o.name)}},t("svg",{class:"mrd-layout-section__history-icon",viewBox:"0 0 20 20",fill:"currentColor","aria-hidden":"true"},t("path",{"fill-rule":"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm.75-13a.75.75 0 00-1.5 0v5c0 .207.085.394.22.53l2.5 2.5a.75.75 0 101.06-1.06L10.75 9.69V5z","clip-rule":"evenodd"}))),d&&t("div",{class:"mrd-layout-section__history-popover",role:"listbox"},l.map(((o,e)=>t("div",{key:e+"",class:"mrd-layout-section__history-entry"},o.value," (",y("history_until",r.locale)," ",p(o.until,r.locale),")")))))}(r,o,a)))}(this.fieldCtx(),r)}renderRelation(r){var o,e,i;if(!r.name)return null;const a=(null!==(e=null===(o=this.data)||void 0===o?void 0:o._links)&&void 0!==e?e:{})[r.name];if(!a)return null;const s=(r,o)=>t("button",{key:r,class:"mrd-layout-section__relation-link",onClick:()=>this.mrdNavigate.emit({href:r,label:o})},o);let n;return(null===(i=a.values)||void 0===i?void 0:i.length)?n=a.values.map((t=>s(t.href,t.name))):a.name&&(n=s(a.href,a.name)),n?t("div",{class:"mrd-layout-section__field",key:r.name},t("span",{class:"mrd-layout-section__field-label"},r.label),t("span",{class:"mrd-layout-section__field-value"},n)):null}renderSearch(r){var o,e,i;if(!r.dataClass)return null;const a=r.dataClass,s=null!==(o=this.searchQueryMap[a])&&void 0!==o?o:"",n=null!==(e=this.searchResultsMap[a])&&void 0!==e?e:[];return t("div",{class:"mrd-layout-section__search",key:"search-"+a},t("div",{class:"mrd-layout-section__search-wrap"},t("svg",{class:"mrd-layout-section__search-icon",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor","aria-hidden":"true"},t("path",{"fill-rule":"evenodd",d:"M9 3.5a5.5 5.5 0 100 11 5.5 5.5 0 000-11zM2 9a7 7 0 1112.452 4.391l3.328 3.329a.75.75 0 11-1.06 1.06l-3.329-3.328A7 7 0 012 9z","clip-rule":"evenodd"})),t("input",{class:"mrd-layout-section__search-input",type:"text",value:s,placeholder:null!==(i=r.label)&&void 0!==i?i:"",onInput:t=>this.handleSearchInput(a,t.target.value)})),n.length>0&&t("ul",{class:"mrd-layout-section__search-results"},n.map((r=>t("li",{key:r.id,class:"mrd-layout-section__search-result"},t("button",{class:"mrd-layout-section__search-result-btn",onClick:()=>this.mrdNavigate.emit({href:r.id,label:r.label})},t("span",{class:"mrd-layout-section__search-result-label"},r.label),r.description&&t("span",{class:"mrd-layout-section__search-result-desc"},r.description)))))))}renderRelatedView(r){var o,e,i,a,n,c,m,u;const h=function(t){var r,o,e,i;return t.type===s.RELATED_VIEW?null!==(o=null!==(r=t.relatedClass)&&void 0!==r?r:t.name)&&void 0!==o?o:"":null!==(i=null!==(e=t.dataClass)&&void 0!==e?e:t.name)&&void 0!==i?i:""}(r);if(!h)return null;if(!r.view)return null;const v=null!==(o=r.showTitle)&&void 0!==o&&o,y=null!==(n=null===(a=null===(i=null===(e=this.data)||void 0===e?void 0:e._links)||void 0===i?void 0:i.self)||void 0===a?void 0:a.href)&&void 0!==n?n:"",p=null!==(c=y.split("/").filter(Boolean).pop())&&void 0!==c?c:"",f=l(null!==(m=r.archetypes)&&void 0!==m?m:null===(u=r.view)||void 0===u?void 0:u.archetypes,d),_=function(t,r,o){if(t.type!==s.RELATED_VIEW||!t.fromClass||!o)return"";const e=r.split("/").filter(Boolean);if(e.length<2)return"";const[i,a]=e;return`/${i}/${a}/${t.fromClass}/${o}`}(r,y,p);return t("div",{class:"mrd-layout-section__related-view",key:"view-"+h},v&&r.label&&t("h3",{class:"mrd-layout-section__related-view-title"},r.label),f?this.renderDocumentContainer(r,h,p,f,_):this.renderTable(r,h,p))}renderDocumentContainer(r,o,e,i,a){return t("mrd-document-container",{item:r,archetype:i,parentId:e,containerHref:a,viewKey:o,locale:this.locale,onMrdLoadDistinct:t=>{t.stopPropagation(),this.mrdLoadViewDistinct.emit(Object.assign({name:o},t.detail))},onMrdLoadPage:t=>{t.stopPropagation(),this.mrdLoadViewPage.emit(Object.assign({name:o},t.detail))},onMrdLoadAggregations:t=>{var e;t.stopPropagation(),this.mrdLoadViewAggregations.emit(Object.assign({name:o,dataClass:null!==(e=r.dataClass)&&void 0!==e?e:o},t.detail))},onMrdNavigate:t=>{t.stopPropagation(),this.mrdNavigate.emit(t.detail)},onMrdAction:t=>{var e;t.stopPropagation(),this.mrdViewAction.emit(Object.assign({name:o,dataClass:null!==(e=r.dataClass)&&void 0!==e?e:o},t.detail))},onMrdUpdateObject:t=>{t.stopPropagation(),this.mrdUpdateObject.emit(t.detail)},onMrdUpload:t=>{t.stopPropagation(),this.mrdViewUpload.emit(Object.assign({name:o},t.detail))},onMrdCreateObject:t=>{t.stopPropagation(),this.mrdCreateObject.emit(Object.assign({name:o},t.detail))}})}renderTable(r,o,e){return t("mrd-table",{"data-view":o,item:r,parentId:e,locale:this.locale,onMrdLoadPage:t=>this.handleViewLoadPage(t,o),onMrdLoadAggregations:t=>{var e;t.stopPropagation(),this.mrdLoadViewAggregations.emit(Object.assign({name:o,dataClass:null!==(e=r.dataClass)&&void 0!==e?e:o},t.detail))},onMrdRowClick:t=>{var o,e,i,a;t.stopPropagation();const{row:s,listContext:n}=t.detail;this.mrdNavigate.emit({href:null===(e=null===(o=null==s?void 0:s._links)||void 0===o?void 0:o.self)||void 0===e?void 0:e.href,label:null!==(i=null==s?void 0:s.name)&&void 0!==i?i:"",navigateBehaviour:null!==(a=r.navigateBehaviour)&&void 0!==a?a:c.PAGE,listContext:n})},onMrdAction:t=>{var e;t.stopPropagation(),this.mrdViewAction.emit({name:o,action:t.detail.action,dataClass:null!==(e=r.dataClass)&&void 0!==e?e:o,path:t.detail.path,qs:t.detail.qs,parentPath:t.detail.parentPath,basicType:t.detail.basicType})}})}renderItem(r){var o,e;switch(r.type){case s.FIELD:return this.renderField(r);case s.RELATION:return this.renderRelation(r);case s.HEADER:return t("h2",{class:"mrd-layout-section__header",key:"header-"+r.label},r.label);case s.TEXT:return t("div",{class:"mrd-layout-section__text",key:"text-"+r.label,innerHTML:null!==(o=r.label)&&void 0!==o?o:""});case s.NAVIGATE:return t("button",{class:"mrd-layout-section__navigate",key:"nav-"+r.label,onClick:()=>{var t,o,e;return this.mrdNavigate.emit({label:null!==(t=r.label)&&void 0!==t?t:"",navigate:null!==(o=r.navigate)&&void 0!==o?o:{dataClass:null!==(e=r.dataClass)&&void 0!==e?e:"",icon:r.icon,navigationType:r.navigationType}})}},r.label);case s.SEARCH:return this.renderSearch(r);case s.SECTION:case s.GROUP:return t("div",{class:"mrd-layout-section__group",key:"group-"+r.label},r.label&&t("h3",{class:"mrd-layout-section__group-title"},r.label),(null!==(e=r.items)&&void 0!==e?e:[]).map((t=>this.renderItem(t))));case s.RELATED_VIEW:case s.VIEW:return this.renderRelatedView(r);default:return null}}renderImageModal(){return this.imagePreviewUrl?t("div",{class:"mrd-layout-section__modal-backdrop",onClick:()=>{this.imagePreviewUrl=null}},t("div",{class:"mrd-layout-section__modal",onClick:t=>t.stopPropagation()},t("button",{class:"mrd-layout-section__modal-close",onClick:()=>{this.imagePreviewUrl=null}},"✕"),t("img",{class:"mrd-layout-section__modal-image",src:this.imagePreviewUrl,alt:""}))):null}relatedItems(t){return this.items.filter((r=>r!==t&&(r.type===s.VIEW||r.type===s.RELATED_VIEW||r.type===s.SEARCH)))}renderDocumentObject(r){return[t("mrd-document-view",{archetype:r,data:this.data,locale:this.locale,onMrdNavigate:t=>{t.stopPropagation(),this.mrdNavigate.emit(t.detail)},onMrdDownload:t=>{t.stopPropagation(),this.mrdDownload.emit(t.detail)},onMrdAttachments:t=>{t.stopPropagation(),this.mrdAttachments.emit(t.detail)}}),...this.relatedItems().map((t=>this.renderItem(t)))]}renderInvoiceObject(r){var o,e,i;const a=null!==(o=this.items.find((t=>{var r,o;return(t.type===s.VIEW||t.type===s.RELATED_VIEW)&&!!l(null!==(r=t.archetypes)&&void 0!==r?r:null===(o=t.view)||void 0===o?void 0:o.archetypes,m)})))&&void 0!==o?o:null,n=null!==(i=null===(e=this.items.find((t=>{var o;return t.name===(null===(o=r.slots)||void 0===o?void 0:o.status)})))||void 0===e?void 0:e.listItems)&&void 0!==i?i:null;return[t("mrd-invoice-view",{archetype:r,data:this.data,locale:this.locale,statusListItems:n,onMrdNavigate:t=>{t.stopPropagation(),this.mrdNavigate.emit(t.detail)},onMrdDownload:t=>{t.stopPropagation(),this.mrdDownload.emit(t.detail)},onMrdAttachments:t=>{t.stopPropagation(),this.mrdAttachments.emit(t.detail)}},a&&t("div",{slot:"lines"},this.renderRelatedView(a))),...this.relatedItems(a).map((t=>this.renderItem(t)))]}renderEmailObject(r){return[t("mrd-email-view",{archetype:r,data:this.data,locale:this.locale,onMrdNavigate:t=>{t.stopPropagation(),this.mrdNavigate.emit(t.detail)},onMrdDownload:t=>{t.stopPropagation(),this.mrdDownload.emit(t.detail)},onMrdAttachments:t=>{t.stopPropagation(),this.mrdAttachments.emit(t.detail)}}),...this.relatedItems().map((t=>this.renderItem(t)))]}render(){const r=l(this.archetypes,d),o=r?void 0:l(this.archetypes,u),e=r||o?void 0:l(this.archetypes,h);return t(i,{key:"0078764a136e7ca9561632718c1b527ec3bc01c5"},t("div",{key:"0c1428ce20bd7d2bbce467a36b6c25ffa0e6367e",class:"mrd-layout-section"},r&&this.renderDocumentObject(r),o&&this.renderInvoiceObject(o),e&&this.renderEmailObject(e),!r&&!o&&!e&&this.items.map((t=>this.renderItem(t)))),this.renderImageModal())}get el(){return this}static get watchers(){return{data:[{dataChanged:0}]}}static get style(){return".sc-mrd-layout-section-h{display:block;width:100%}.mrd-layout-section.sc-mrd-layout-section{font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-base);color:var(--mrd-color-neutral-800)}.mrd-layout-section__field.sc-mrd-layout-section{display:grid;grid-template-columns:200px 1fr;align-items:baseline;gap:0 var(--mrd-space-2);padding:var(--mrd-space-1) 0}.mrd-layout-section__field--block.sc-mrd-layout-section{grid-template-columns:1fr}.mrd-layout-section__field-label.sc-mrd-layout-section{font-size:var(--mrd-font-size-xs);font-weight:var(--mrd-font-weight-normal);color:var(--mrd-color-neutral-500);padding-top:1px}.mrd-layout-section__field-value.sc-mrd-layout-section{font-size:var(--mrd-font-size-sm);font-weight:var(--mrd-font-weight-medium);color:var(--mrd-color-neutral-800);word-break:break-word;display:inline-flex;align-items:center;gap:var(--mrd-space-1)}.mrd-layout-section__history-wrap.sc-mrd-layout-section{position:relative;display:inline-flex;align-items:center}.mrd-layout-section__history-btn.sc-mrd-layout-section{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;padding:0;background:transparent;border:none;border-radius:var(--mrd-border-radius-sm);color:var(--mrd-color-neutral-400);cursor:pointer;flex-shrink:0;transition:color var(--mrd-transition-fast), background-color var(--mrd-transition-fast)}.mrd-layout-section__history-btn.sc-mrd-layout-section:hover{color:var(--mrd-color-neutral-700);background-color:var(--mrd-color-neutral-100)}.mrd-layout-section__history-btn.sc-mrd-layout-section:focus{outline:none;box-shadow:var(--mrd-shadow-focus)}.mrd-layout-section__history-icon.sc-mrd-layout-section{width:0.875rem;height:0.875rem}.mrd-layout-section__history-popover.sc-mrd-layout-section{position:absolute;top:calc(100% + 0.25rem);left:0;min-width:24rem;max-width:24rem;background-color:var(--mrd-color-white);border:var(--mrd-border-width) solid var(--mrd-border-color);border-radius:var(--mrd-border-radius-md);box-shadow:var(--mrd-shadow-md);padding:var(--mrd-space-1) 0;z-index:var(--mrd-z-dropdown)}.mrd-layout-section__history-entry.sc-mrd-layout-section{font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-sm);font-weight:var(--mrd-font-weight-normal);color:var(--mrd-color-neutral-700);padding:var(--mrd-space-2) var(--mrd-space-3);line-height:var(--mrd-line-height-normal)}.mrd-layout-section__history-entry.sc-mrd-layout-section:not(:last-child){border-bottom:var(--mrd-border-width) solid var(--mrd-color-neutral-100)}.mrd-layout-section__field-header.sc-mrd-layout-section{font-size:var(--mrd-font-size-2xl);font-weight:var(--mrd-font-weight-bold);color:var(--mrd-color-neutral-900);margin:0 0 var(--mrd-space-4) 0;padding:0}.mrd-layout-section__header.sc-mrd-layout-section{font-size:var(--mrd-font-size-xl);font-weight:var(--mrd-font-weight-semibold);color:var(--mrd-color-neutral-800);margin:var(--mrd-space-4) 0 var(--mrd-space-2) 0;padding:0}.mrd-layout-section__text.sc-mrd-layout-section{font-size:var(--mrd-font-size-base);color:var(--mrd-color-neutral-700);line-height:var(--mrd-line-height-relaxed);margin:var(--mrd-space-2) 0}.mrd-layout-section__navigate.sc-mrd-layout-section{display:inline-flex;align-items:center;gap:var(--mrd-space-2);padding:var(--mrd-space-2) var(--mrd-space-3);background:none;border:1px solid var(--mrd-color-neutral-300);border-radius:var(--mrd-border-radius);font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-sm);color:var(--mrd-color-primary);cursor:pointer;margin:var(--mrd-space-2) 0}.mrd-layout-section__navigate.sc-mrd-layout-section:hover{background-color:var(--mrd-color-primary-light);border-color:var(--mrd-color-primary)}.mrd-layout-section__link.sc-mrd-layout-section{color:var(--mrd-color-primary);text-decoration:none}.mrd-layout-section__link.sc-mrd-layout-section:hover{text-decoration:underline}.mrd-layout-section__relation-link.sc-mrd-layout-section{background:none;border:none;padding:0;font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-sm);font-weight:var(--mrd-font-weight-semibold);color:var(--mrd-color-primary);cursor:pointer;text-align:left}.mrd-layout-section__relation-link.sc-mrd-layout-section:hover{text-decoration:underline}.mrd-layout-section__download-link.sc-mrd-layout-section{display:inline-flex;align-items:center;gap:var(--mrd-space-1);background:none;border:none;padding:0;font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-sm);color:var(--mrd-color-primary);cursor:pointer;text-align:left}.mrd-layout-section__download-link.sc-mrd-layout-section:hover{text-decoration:underline;color:var(--mrd-color-primary-dark)}.mrd-layout-section__file-icon.sc-mrd-layout-section{flex-shrink:0;width:1rem;height:1rem}.mrd-layout-section__file-list.sc-mrd-layout-section{display:flex;flex-direction:column;align-items:flex-start;gap:var(--mrd-space-1)}.mrd-layout-section__file-list-item.sc-mrd-layout-section{min-width:0;max-width:100%}.mrd-layout-section__boolean--true.sc-mrd-layout-section{color:var(--mrd-color-success);font-weight:var(--mrd-font-weight-semibold)}.mrd-layout-section__boolean--false.sc-mrd-layout-section{color:var(--mrd-color-neutral-400)}.mrd-layout-section__badge.sc-mrd-layout-section{display:inline-block;font-size:var(--mrd-font-size-xs);font-weight:var(--mrd-font-weight-medium);padding:2px var(--mrd-space-3);border-radius:10px}.mrd-layout-section__badge-dot-row.sc-mrd-layout-section{display:inline-flex;align-items:center;gap:var(--mrd-space-2)}.mrd-layout-section__badge-dot.sc-mrd-layout-section{display:inline-block;width:10px;height:10px;border-radius:50%;flex-shrink:0}.mrd-layout-section__secret-masked.sc-mrd-layout-section{font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-base);color:var(--mrd-label-color);letter-spacing:0.15em;user-select:none;pointer-events:none}.mrd-layout-section__pre.sc-mrd-layout-section{font-family:var(--mrd-font-family-mono);font-size:var(--mrd-font-size-xs);background-color:var(--mrd-color-neutral-50);border:1px solid var(--mrd-color-neutral-200);border-radius:var(--mrd-border-radius);padding:var(--mrd-space-3);margin:0;max-height:calc(15 * var(--mrd-font-size-xs));overflow-x:auto;overflow-y:auto;white-space:pre-wrap;word-break:break-word}.mrd-layout-section__group.sc-mrd-layout-section{margin:var(--mrd-space-4) 0}.mrd-layout-section__group-title.sc-mrd-layout-section{font-size:var(--mrd-font-size-xs);font-weight:var(--mrd-font-weight-semibold);color:var(--mrd-color-neutral-500);margin:0 0 var(--mrd-space-2) 0;padding-bottom:0;letter-spacing:0.01em}.mrd-layout-section__related-view.sc-mrd-layout-section{margin:var(--mrd-space-4) 0}.mrd-layout-section__related-view-title.sc-mrd-layout-section{font-size:var(--mrd-font-size-lg);font-weight:var(--mrd-font-weight-semibold);color:var(--mrd-color-neutral-800);margin:0 0 var(--mrd-space-3) 0}.mrd-layout-section__search.sc-mrd-layout-section{position:relative;margin:var(--mrd-space-2) 0}.mrd-layout-section__search-wrap.sc-mrd-layout-section{position:relative}.mrd-layout-section__search-icon.sc-mrd-layout-section{position:absolute;left:var(--mrd-input-padding-x);top:50%;transform:translateY(-50%);width:1rem;height:1rem;color:var(--mrd-color-neutral-400);pointer-events:none}.mrd-layout-section__search-input.sc-mrd-layout-section{display:block;width:100%;height:var(--mrd-input-height);padding:var(--mrd-input-padding-y) var(--mrd-input-padding-x) var(--mrd-input-padding-y) calc(var(--mrd-input-padding-x) + 1rem + var(--mrd-space-2));font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-base);color:var(--mrd-input-color);background-color:var(--mrd-input-bg);border:var(--mrd-border-width) solid var(--mrd-border-color);border-radius:var(--mrd-border-radius);outline:none;appearance:none;box-sizing:border-box}.mrd-layout-section__search-input.sc-mrd-layout-section:focus{border-color:var(--mrd-border-color-focus);box-shadow:var(--mrd-shadow-focus)}.mrd-layout-section__search-input.sc-mrd-layout-section::placeholder{color:var(--mrd-input-placeholder-color)}.mrd-layout-section__search-results.sc-mrd-layout-section{position:absolute;top:100%;left:0;right:0;background-color:var(--mrd-color-white);border:1px solid var(--mrd-color-neutral-300);border-top:none;border-radius:0 0 var(--mrd-border-radius) var(--mrd-border-radius);box-shadow:var(--mrd-shadow-sm);z-index:100;max-height:300px;overflow-y:auto;list-style:none;margin:0;padding:var(--mrd-space-1) 0}.mrd-layout-section__search-result.sc-mrd-layout-section{margin:0;padding:0}.mrd-layout-section__search-result-btn.sc-mrd-layout-section{display:flex;flex-direction:column;width:100%;padding:var(--mrd-space-2) var(--mrd-space-3);background:none;border:none;text-align:left;cursor:pointer;font-family:var(--mrd-font-family)}.mrd-layout-section__search-result-btn.sc-mrd-layout-section:hover{background-color:var(--mrd-color-primary-light)}.mrd-layout-section__search-result-label.sc-mrd-layout-section{font-size:var(--mrd-font-size-sm);font-weight:var(--mrd-font-weight-medium);color:var(--mrd-color-neutral-800)}.mrd-layout-section__search-result-desc.sc-mrd-layout-section{font-size:var(--mrd-font-size-xs);color:var(--mrd-color-neutral-500);margin-top:var(--mrd-space-1)}.mrd-layout-section__image-thumb-btn.sc-mrd-layout-section{background:none;border:none;padding:0;cursor:pointer;display:inline-block;border-radius:var(--mrd-border-radius);overflow:hidden;line-height:0}.mrd-layout-section__image-thumb-btn.sc-mrd-layout-section:hover .mrd-layout-section__image-thumb.sc-mrd-layout-section{opacity:0.85}.mrd-layout-section__image-thumb.sc-mrd-layout-section{display:block;max-width:160px;max-height:100px;border-radius:var(--mrd-border-radius);object-fit:cover;transition:opacity 0.15s}.mrd-layout-section__modal-backdrop.sc-mrd-layout-section{position:fixed;inset:0;background:rgba(0, 0, 0, 0.6);z-index:300;display:flex;align-items:center;justify-content:center}.mrd-layout-section__modal.sc-mrd-layout-section{position:relative;background:var(--mrd-color-white);border-radius:var(--mrd-border-radius);padding:var(--mrd-space-3);max-width:min(90vw, 900px);max-height:90vh;display:flex;align-items:center;justify-content:center;box-shadow:var(--mrd-shadow-lg)}.mrd-layout-section__modal-close.sc-mrd-layout-section{position:absolute;top:var(--mrd-space-2);right:var(--mrd-space-2);background:rgba(0, 0, 0, 0.5);border:none;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center;color:var(--mrd-color-white);cursor:pointer;font-size:var(--mrd-font-size-sm);line-height:1;z-index:1}.mrd-layout-section__modal-close.sc-mrd-layout-section:hover{background:rgba(0, 0, 0, 0.8)}.mrd-layout-section__modal-image.sc-mrd-layout-section{display:block;max-width:100%;max-height:calc(90vh - 2rem);border-radius:var(--mrd-border-radius);object-fit:contain}"}},[2,"mrd-layout-section",{items:[16],data:[16],views:[16],links:[16],locale:[1],archetypes:[16],searchQueryMap:[32],searchResultsMap:[32],imagePreviewUrl:[32],imagePreviews:[32],openHistoryField:[32],setSearchResults:[64],setViewPage:[64],setViewAggregations:[64],setViewDistinct:[64],setViewFileReference:[64],setViewCreatedObject:[64],setImagePreview:[64],openImagePreview:[64]},void 0,{data:[{dataChanged:0}]}]),M=C,O=function(){"undefined"!=typeof customElements&&["mrd-layout-section","mrd-document-container","mrd-document-list","mrd-document-view","mrd-email-view","mrd-invoice-view","mrd-table"].forEach((t=>{switch(t){case"mrd-layout-section":customElements.get(a(t))||customElements.define(a(t),C);break;case"mrd-document-container":customElements.get(a(t))||f();break;case"mrd-document-list":customElements.get(a(t))||_();break;case"mrd-document-view":customElements.get(a(t))||g();break;case"mrd-email-view":customElements.get(a(t))||b();break;case"mrd-invoice-view":customElements.get(a(t))||w();break;case"mrd-table":customElements.get(a(t))||x()}}))};export{M as MrdLayoutSection,O as defineCustomElement}
1
+ import{h as t,proxyCustomElement as r,HTMLElement as o,createEvent as e,Host as i,transformTag as a}from"@stencil/core/internal/client";import{a as s,b as n,r as l,A as d,e as c,h as m,f as u,g as v}from"./client-layout.js";import{t as h}from"./i18n.js";import{C as y}from"./cell-renderer.js";import{f as p}from"./format.js";import{d as f}from"./mrd-document-container2.js";import{d as _}from"./mrd-document-list2.js";import{d as g}from"./mrd-document-view2.js";import{d as b}from"./mrd-email-view2.js";import{d as w}from"./mrd-invoice-view2.js";import{d as x}from"./mrd-table2.js";function k(t){var r,o,e,i,a;return null!==(a=null!==(e=null!==(r=t.showEmpty)&&void 0!==r?r:null===(o=t.field)||void 0===o?void 0:o.showEmpty)&&void 0!==e?e:null===(i=t.relation)||void 0===i?void 0:i.showEmpty)&&void 0!==a&&a}function z(t){const r=[];for(const o of t)r.push(o),o.items&&r.push(...z(o.items));return r}function j(r,o,e,i){return t("button",{class:"mrd-layout-section__download-link",onClick:()=>o&&r.on.download({href:o,fileName:e})},t("svg",{class:"mrd-layout-section__file-icon",viewBox:"0 0 24 24","aria-hidden":"true"},t("path",{fill:"currentColor",d:"M14 2H6c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V8l-6-6zm-1 7V3.5L18.5 9H13zm-3 8l-3-3 1.41-1.41L10 14.17l4.59-4.58L16 11l-6 6z"})),i)}function C(r,o,e){var i,a,s,l,d,c,m,u,v,p,f;const _=o.dataType;switch(_){case n.HYPERLINK:{const r=null!==(i=null==e?void 0:e.href)&&void 0!==i?i:e+"",o=null!==(l=null!==(s=null!==(a=null==e?void 0:e.name)&&void 0!==a?a:null==e?void 0:e.text)&&void 0!==s?s:null==e?void 0:e.label)&&void 0!==l?l:r;return t("a",{class:"mrd-layout-section__link",href:r,target:"_blank",rel:"noopener noreferrer"},o)}case n.TEXTBLOCK:return t("div",{class:"mrd-layout-section__prose",innerHTML:e+""});case n.LONGTEXT:return t("pre",{class:"mrd-layout-section__pre"},e+"");case n.JSON:return t("pre",{class:"mrd-layout-section__pre",innerHTML:y.formatJson(e)});case n.FILE:{const t=null!==(d=null==e?void 0:e.fileName)&&void 0!==d?d:e+"",o=null!==(c=null==e?void 0:e.href)&&void 0!==c?c:"";return j(r,o,t,t||h("download",r.locale))}case n.IMAGE:{const i=null!==(m=null==e?void 0:e.href)&&void 0!==m?m:"",a=null!==(u=null==e?void 0:e.fileName)&&void 0!==u?u:"",s=r.imagePreviews[o.name];return s?t("button",{class:"mrd-layout-section__image-thumb-btn",onClick:()=>r.on.openImage(s),title:a||void 0},t("img",{class:"mrd-layout-section__image-thumb",src:s,alt:a})):j(r,i,a,a||i)}case n.BOOLEAN:return t("span",{class:"mrd-layout-section__boolean mrd-layout-section__boolean--"+(e?"true":"false")},h(e?"yes":"no",r.locale));case n.LIST:{const r=(null!==(v=o.listItems)&&void 0!==v?v:[]).find((t=>t.key===e+"")),i=null!==(p=null==r?void 0:r.label)&&void 0!==p?p:e+"",a=null==r?void 0:r.color,s=null==r?void 0:r.backgroundColor;return a&&s?t("span",{class:"mrd-layout-section__badge",style:{color:a,backgroundColor:s}},i):a?t("span",{class:"mrd-layout-section__badge-dot-row"},t("span",{class:"mrd-layout-section__badge-dot",style:{backgroundColor:a}}),i):i}case n.SECRET:return e?t("span",{class:"mrd-layout-section__secret-masked"},"••••••••"):null;default:return y.renderValue(_,e,null!==(f=o.listItems)&&void 0!==f?f:[],r.locale)||null}}const M=r(class extends o{constructor(t){super(),!1!==t&&this.__registerHost(),this.mrdNavigate=e(this,"mrdNavigate",7),this.mrdSearch=e(this,"mrdSearch",7),this.mrdDownload=e(this,"mrdDownload",7),this.mrdLoadViewPage=e(this,"mrdLoadViewPage",7),this.mrdLoadImage=e(this,"mrdLoadImage",7),this.mrdAttachments=e(this,"mrdAttachments",7),this.mrdViewAction=e(this,"mrdViewAction",7),this.mrdLoadViewAggregations=e(this,"mrdLoadViewAggregations",7),this.mrdLoadViewDistinct=e(this,"mrdLoadViewDistinct",7),this.mrdUpdateObject=e(this,"mrdUpdateObject",7),this.mrdViewUpload=e(this,"mrdViewUpload",7),this.mrdCreateObject=e(this,"mrdCreateObject",7),this.items=[],this.data={},this.views={},this.links={},this.locale=navigator.language,this.archetypes=[],this.searchQueryMap={},this.searchResultsMap={},this.imagePreviewUrl=null,this.imagePreviews={},this.openHistoryField=null,this.historyClickOutside=null,this.searchTimers={},this.handleViewLoadPage=(t,r)=>{t.stopPropagation(),this.mrdLoadViewPage.emit({name:r,page:t.detail.page,sort:t.detail.sort,path:t.detail.path,qs:t.detail.qs})},this.handleSearchInput=(t,r)=>{this.searchQueryMap=Object.assign(Object.assign({},this.searchQueryMap),{[t]:r}),this.searchTimers[t]&&clearTimeout(this.searchTimers[t]),r.length<2?this.searchResultsMap=Object.assign(Object.assign({},this.searchResultsMap),{[t]:[]}):this.searchTimers[t]=setTimeout((()=>{this.mrdSearch.emit({query:r,dataClass:t})}),300)}}componentDidLoad(){setTimeout((()=>{this.initEmbeddedTables(),this.emitLoadImages()}),0),this.historyClickOutside=t=>{this.el.contains(t.target)||(this.openHistoryField=null)},document.addEventListener("mousedown",this.historyClickOutside)}disconnectedCallback(){this.historyClickOutside&&(document.removeEventListener("mousedown",this.historyClickOutside),this.historyClickOutside=null)}dataChanged(t){t&&Object.keys(t).length>0&&setTimeout((()=>this.initEmbeddedTables()),0)}async initEmbeddedTables(){const t=this.el.querySelectorAll("mrd-table[data-view]");for(const r of Array.from(t))"function"==typeof r.init&&await r.init()}emitLoadImages(){for(const t of z(this.items))if(t.type===s.FIELD&&t.dataType===n.IMAGE){const r=t.name,o=this.data[r],e=null==o?void 0:o.href;e&&this.mrdLoadImage.emit({fieldName:r,href:e})}}async setSearchResults(t,r){const o=null!=r?r:this.resolveSearchKey();o&&(this.searchResultsMap=Object.assign(Object.assign({},this.searchResultsMap),{[o]:t}))}async setViewPage(t,r,o,e,i,a){if(a){const r=this.el.querySelector(`mrd-document-list[data-doclist="${t}"]`);return void((null==r?void 0:r.setDocuments)&&await r.setDocuments(a,o))}const s=this.el.querySelector(`mrd-table[data-view="${t}"]`);s&&(void 0!==e&&(s.totalElements=e),await s.setPage(r,o,i))}async setViewAggregations(t,r){const o=this.el.querySelector(`mrd-table[data-view="${t}"]`);o&&await o.setAggregations(r)}async setViewDistinct(t,r,o){const e=this.el.querySelector(`mrd-document-list[data-doclist="${t}"]`);(null==e?void 0:e.setDistinct)&&await e.setDistinct(r,o)}async setViewFileReference(t,r){const o=this.el.querySelector(`mrd-document-list[data-doclist="${t}"]`);(null==o?void 0:o.setFileReference)&&await o.setFileReference(r)}async setViewCreatedObject(t,r){const o=this.el.querySelector(`mrd-document-list[data-doclist="${t}"]`);(null==o?void 0:o.setCreatedHref)&&await o.setCreatedHref(r)}async setImagePreview(t,r){this.imagePreviews=Object.assign(Object.assign({},this.imagePreviews),{[t]:r})}async openImagePreview(t){this.imagePreviewUrl=t}resolveSearchKey(){var t;const r=z(this.items).filter((t=>t.type===s.SEARCH));return 1===r.length&&null!==(t=r[0].dataClass)&&void 0!==t?t:null}fieldCtx(){return{locale:this.locale,data:this.data,imagePreviews:this.imagePreviews,openHistoryField:this.openHistoryField,on:{download:t=>this.mrdDownload.emit(t),openImage:t=>{this.imagePreviewUrl=t},toggleHistory:t=>{this.openHistoryField=t}}}}renderField(r){return function(r,o){var e,i;if(!o.name)return null;const a=r.data[o.name],s=(null!==(e=o.historyEnabled)&&void 0!==e?e:null===(i=o.field)||void 0===i?void 0:i.historyEnabled)&&null!==a&&"object"==typeof a&&"current"in a?a.current:a,l=function(r,o,e){if(null==e||""===e)return null;if(o.multiple&&Array.isArray(e)){if(o.dataType===n.FILE||o.dataType===n.IMAGE)return t("div",{class:"mrd-layout-section__file-list"},e.map(((e,i)=>t("div",{class:"mrd-layout-section__file-list-item",key:i+""},C(r,o,e)))));const i=e.map((t=>C(r,o,t)));return i.every((t=>"string"==typeof t||null==t))?i.filter(Boolean).join(", ")||null:t("span",null,i.map(((r,o)=>t("span",{key:o+""},r,o<i.length-1?", ":""))))}return C(r,o,e)}(r,o,s);if(o.header)return t("h1",{class:"mrd-layout-section__field-header",key:o.name},"string"==typeof l?l:null!=s?s+"":o.label);const d=null==l;return d&&!k(o)?null:t("div",{class:`mrd-layout-section__field${o.dataType===n.TEXTBLOCK||o.dataType===n.LONGTEXT||o.dataType===n.JSON?" mrd-layout-section__field--block":""}${d?" mrd-layout-section__field--empty":""}`,key:o.name},t("span",{class:"mrd-layout-section__field-label"},o.label),t("span",{class:"mrd-layout-section__field-value"},d?h("value_empty",r.locale):l,function(r,o,e){var i,a,s;if(!(null!==(i=o.historyEnabled)&&void 0!==i?i:null===(a=o.field)||void 0===a?void 0:a.historyEnabled)||!o.name)return null;const n=null!==(s=null==e?void 0:e.history)&&void 0!==s?s:[];if(!n.length)return null;const l=[...n].sort(((t,r)=>r.until.localeCompare(t.until))),d=r.openHistoryField===o.name;return t("span",{class:"mrd-layout-section__history-wrap"},t("button",{type:"button",class:"mrd-layout-section__history-btn",title:h("history_badge_tooltip",r.locale),"aria-label":h("history_badge_tooltip",r.locale),onClick:t=>{t.stopPropagation(),r.on.toggleHistory(d?null:o.name)}},t("svg",{class:"mrd-layout-section__history-icon",viewBox:"0 0 20 20",fill:"currentColor","aria-hidden":"true"},t("path",{"fill-rule":"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm.75-13a.75.75 0 00-1.5 0v5c0 .207.085.394.22.53l2.5 2.5a.75.75 0 101.06-1.06L10.75 9.69V5z","clip-rule":"evenodd"}))),d&&t("div",{class:"mrd-layout-section__history-popover",role:"listbox"},l.map(((o,e)=>t("div",{key:e+"",class:"mrd-layout-section__history-entry"},o.value," (",h("history_until",r.locale)," ",p(o.until,r.locale),")")))))}(r,o,a)))}(this.fieldCtx(),r)}renderRelation(r){var o,e,i;if(!r.name)return null;const a=(null!==(e=null===(o=this.data)||void 0===o?void 0:o._links)&&void 0!==e?e:{})[r.name],s=(r,o)=>t("button",{key:r,class:"mrd-layout-section__relation-link",onClick:()=>this.mrdNavigate.emit({href:r,label:o})},o);let n;(null===(i=null==a?void 0:a.values)||void 0===i?void 0:i.length)?n=a.values.map((t=>s(t.href,t.name))):(null==a?void 0:a.name)&&(n=s(a.href,a.name));const l=!n;return l&&!k(r)?null:t("div",{class:"mrd-layout-section__field"+(l?" mrd-layout-section__field--empty":""),key:r.name},t("span",{class:"mrd-layout-section__field-label"},r.label),t("span",{class:"mrd-layout-section__field-value"},l?h("value_empty",this.locale):n))}renderSearch(r){var o,e,i;if(!r.dataClass)return null;const a=r.dataClass,s=null!==(o=this.searchQueryMap[a])&&void 0!==o?o:"",n=null!==(e=this.searchResultsMap[a])&&void 0!==e?e:[];return t("div",{class:"mrd-layout-section__search",key:"search-"+a},t("div",{class:"mrd-layout-section__search-wrap"},t("svg",{class:"mrd-layout-section__search-icon",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor","aria-hidden":"true"},t("path",{"fill-rule":"evenodd",d:"M9 3.5a5.5 5.5 0 100 11 5.5 5.5 0 000-11zM2 9a7 7 0 1112.452 4.391l3.328 3.329a.75.75 0 11-1.06 1.06l-3.329-3.328A7 7 0 012 9z","clip-rule":"evenodd"})),t("input",{class:"mrd-layout-section__search-input",type:"text",value:s,placeholder:null!==(i=r.label)&&void 0!==i?i:"",onInput:t=>this.handleSearchInput(a,t.target.value)})),n.length>0&&t("ul",{class:"mrd-layout-section__search-results"},n.map((r=>t("li",{key:r.id,class:"mrd-layout-section__search-result"},t("button",{class:"mrd-layout-section__search-result-btn",onClick:()=>this.mrdNavigate.emit({href:r.id,label:r.label})},t("span",{class:"mrd-layout-section__search-result-label"},r.label),r.description&&t("span",{class:"mrd-layout-section__search-result-desc"},r.description)))))))}renderRelatedView(r){var o,e,i,a,n,c,m,u;const v=function(t){var r,o,e,i;return t.type===s.RELATED_VIEW?null!==(o=null!==(r=t.relatedClass)&&void 0!==r?r:t.name)&&void 0!==o?o:"":null!==(i=null!==(e=t.dataClass)&&void 0!==e?e:t.name)&&void 0!==i?i:""}(r);if(!v)return null;if(!r.view)return null;const h=null!==(o=r.showTitle)&&void 0!==o&&o,y=null!==(n=null===(a=null===(i=null===(e=this.data)||void 0===e?void 0:e._links)||void 0===i?void 0:i.self)||void 0===a?void 0:a.href)&&void 0!==n?n:"",p=null!==(c=y.split("/").filter(Boolean).pop())&&void 0!==c?c:"",f=l(null!==(m=r.archetypes)&&void 0!==m?m:null===(u=r.view)||void 0===u?void 0:u.archetypes,d),_=function(t,r,o){if(t.type!==s.RELATED_VIEW||!t.fromClass||!o)return"";const e=r.split("/").filter(Boolean);if(e.length<2)return"";const[i,a]=e;return`/${i}/${a}/${t.fromClass}/${o}`}(r,y,p);return t("div",{class:"mrd-layout-section__related-view",key:"view-"+v},h&&r.label&&t("h3",{class:"mrd-layout-section__related-view-title"},r.label),f?this.renderDocumentContainer(r,v,p,f,_):this.renderTable(r,v,p))}renderDocumentContainer(r,o,e,i,a){return t("mrd-document-container",{item:r,archetype:i,parentId:e,containerHref:a,viewKey:o,locale:this.locale,onMrdLoadDistinct:t=>{t.stopPropagation(),this.mrdLoadViewDistinct.emit(Object.assign({name:o},t.detail))},onMrdLoadPage:t=>{t.stopPropagation(),this.mrdLoadViewPage.emit(Object.assign({name:o},t.detail))},onMrdLoadAggregations:t=>{var e;t.stopPropagation(),this.mrdLoadViewAggregations.emit(Object.assign({name:o,dataClass:null!==(e=r.dataClass)&&void 0!==e?e:o},t.detail))},onMrdNavigate:t=>{t.stopPropagation(),this.mrdNavigate.emit(t.detail)},onMrdAction:t=>{var e;t.stopPropagation(),this.mrdViewAction.emit(Object.assign({name:o,dataClass:null!==(e=r.dataClass)&&void 0!==e?e:o},t.detail))},onMrdUpdateObject:t=>{t.stopPropagation(),this.mrdUpdateObject.emit(t.detail)},onMrdUpload:t=>{t.stopPropagation(),this.mrdViewUpload.emit(Object.assign({name:o},t.detail))},onMrdCreateObject:t=>{t.stopPropagation(),this.mrdCreateObject.emit(Object.assign({name:o},t.detail))}})}renderTable(r,o,e){return t("mrd-table",{"data-view":o,item:r,parentId:e,locale:this.locale,onMrdLoadPage:t=>this.handleViewLoadPage(t,o),onMrdLoadAggregations:t=>{var e;t.stopPropagation(),this.mrdLoadViewAggregations.emit(Object.assign({name:o,dataClass:null!==(e=r.dataClass)&&void 0!==e?e:o},t.detail))},onMrdRowClick:t=>{var o,e,i,a;t.stopPropagation();const{row:s,listContext:n}=t.detail;this.mrdNavigate.emit({href:null===(e=null===(o=null==s?void 0:s._links)||void 0===o?void 0:o.self)||void 0===e?void 0:e.href,label:null!==(i=null==s?void 0:s.name)&&void 0!==i?i:"",navigateBehaviour:null!==(a=r.navigateBehaviour)&&void 0!==a?a:c.PAGE,listContext:n})},onMrdAction:t=>{var e;t.stopPropagation(),this.mrdViewAction.emit({name:o,action:t.detail.action,dataClass:null!==(e=r.dataClass)&&void 0!==e?e:o,path:t.detail.path,qs:t.detail.qs,parentPath:t.detail.parentPath,basicType:t.detail.basicType})}})}renderItem(r){var o,e;switch(r.type){case s.FIELD:return this.renderField(r);case s.RELATION:return this.renderRelation(r);case s.HEADER:return t("h2",{class:"mrd-layout-section__header",key:"header-"+r.label},r.label);case s.TEXT:return t("div",{class:"mrd-layout-section__text",key:"text-"+r.label,innerHTML:null!==(o=r.label)&&void 0!==o?o:""});case s.NAVIGATE:return t("button",{class:"mrd-layout-section__navigate",key:"nav-"+r.label,onClick:()=>{var t,o,e;return this.mrdNavigate.emit({label:null!==(t=r.label)&&void 0!==t?t:"",navigate:null!==(o=r.navigate)&&void 0!==o?o:{dataClass:null!==(e=r.dataClass)&&void 0!==e?e:"",icon:r.icon,navigationType:r.navigationType}})}},r.label);case s.SEARCH:return this.renderSearch(r);case s.SECTION:case s.GROUP:return t("div",{class:"mrd-layout-section__group",key:"group-"+r.label},r.label&&t("h3",{class:"mrd-layout-section__group-title"},r.label),(null!==(e=r.items)&&void 0!==e?e:[]).map((t=>this.renderItem(t))));case s.RELATED_VIEW:case s.VIEW:return this.renderRelatedView(r);default:return null}}renderImageModal(){return this.imagePreviewUrl?t("div",{class:"mrd-layout-section__modal-backdrop",onClick:()=>{this.imagePreviewUrl=null}},t("div",{class:"mrd-layout-section__modal",onClick:t=>t.stopPropagation()},t("button",{class:"mrd-layout-section__modal-close",onClick:()=>{this.imagePreviewUrl=null}},"✕"),t("img",{class:"mrd-layout-section__modal-image",src:this.imagePreviewUrl,alt:""}))):null}relatedItems(t){return this.items.filter((r=>r!==t&&(r.type===s.VIEW||r.type===s.RELATED_VIEW||r.type===s.SEARCH)))}renderDocumentObject(r){return[t("mrd-document-view",{archetype:r,data:this.data,locale:this.locale,onMrdNavigate:t=>{t.stopPropagation(),this.mrdNavigate.emit(t.detail)},onMrdDownload:t=>{t.stopPropagation(),this.mrdDownload.emit(t.detail)},onMrdAttachments:t=>{t.stopPropagation(),this.mrdAttachments.emit(t.detail)}}),...this.relatedItems().map((t=>this.renderItem(t)))]}renderInvoiceObject(r){var o,e,i;const a=null!==(o=this.items.find((t=>{var r,o;return(t.type===s.VIEW||t.type===s.RELATED_VIEW)&&!!l(null!==(r=t.archetypes)&&void 0!==r?r:null===(o=t.view)||void 0===o?void 0:o.archetypes,m)})))&&void 0!==o?o:null,n=null!==(i=null===(e=this.items.find((t=>{var o;return t.name===(null===(o=r.slots)||void 0===o?void 0:o.status)})))||void 0===e?void 0:e.listItems)&&void 0!==i?i:null;return[t("mrd-invoice-view",{archetype:r,data:this.data,locale:this.locale,statusListItems:n,onMrdNavigate:t=>{t.stopPropagation(),this.mrdNavigate.emit(t.detail)},onMrdDownload:t=>{t.stopPropagation(),this.mrdDownload.emit(t.detail)},onMrdAttachments:t=>{t.stopPropagation(),this.mrdAttachments.emit(t.detail)}},a&&t("div",{slot:"lines"},this.renderRelatedView(a))),...this.relatedItems(a).map((t=>this.renderItem(t)))]}renderEmailObject(r){return[t("mrd-email-view",{archetype:r,data:this.data,locale:this.locale,onMrdNavigate:t=>{t.stopPropagation(),this.mrdNavigate.emit(t.detail)},onMrdDownload:t=>{t.stopPropagation(),this.mrdDownload.emit(t.detail)},onMrdAttachments:t=>{t.stopPropagation(),this.mrdAttachments.emit(t.detail)}}),...this.relatedItems().map((t=>this.renderItem(t)))]}render(){const r=l(this.archetypes,d),o=r?void 0:l(this.archetypes,u),e=r||o?void 0:l(this.archetypes,v);return t(i,{key:"ccae8e82b4dd549ab24239fe685a6830a508061d"},t("div",{key:"4072cc4ecdd2b087c54a5515e653f7f713b2150f",class:"mrd-layout-section"},r&&this.renderDocumentObject(r),o&&this.renderInvoiceObject(o),e&&this.renderEmailObject(e),!r&&!o&&!e&&this.items.map((t=>this.renderItem(t)))),this.renderImageModal())}get el(){return this}static get watchers(){return{data:[{dataChanged:0}]}}static get style(){return".sc-mrd-layout-section-h{display:block;width:100%}.mrd-layout-section.sc-mrd-layout-section{font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-base);color:var(--mrd-color-neutral-800)}.mrd-layout-section__field.sc-mrd-layout-section{display:grid;grid-template-columns:200px 1fr;align-items:baseline;gap:0 var(--mrd-space-2);padding:var(--mrd-space-1) 0}.mrd-layout-section__field--block.sc-mrd-layout-section{grid-template-columns:1fr}.mrd-layout-section__field-label.sc-mrd-layout-section{font-size:var(--mrd-font-size-xs);font-weight:var(--mrd-font-weight-normal);color:var(--mrd-color-neutral-500);padding-top:1px}.mrd-layout-section__field-value.sc-mrd-layout-section{font-size:var(--mrd-font-size-sm);font-weight:var(--mrd-font-weight-medium);color:var(--mrd-color-neutral-800);word-break:break-word;display:inline-flex;align-items:center;gap:var(--mrd-space-1)}.mrd-layout-section__field--empty.sc-mrd-layout-section .mrd-layout-section__field-value.sc-mrd-layout-section{color:var(--mrd-color-neutral-400);font-weight:var(--mrd-font-weight-normal)}.mrd-layout-section__history-wrap.sc-mrd-layout-section{position:relative;display:inline-flex;align-items:center}.mrd-layout-section__history-btn.sc-mrd-layout-section{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;padding:0;background:transparent;border:none;border-radius:var(--mrd-border-radius-sm);color:var(--mrd-color-neutral-400);cursor:pointer;flex-shrink:0;transition:color var(--mrd-transition-fast), background-color var(--mrd-transition-fast)}.mrd-layout-section__history-btn.sc-mrd-layout-section:hover{color:var(--mrd-color-neutral-700);background-color:var(--mrd-color-neutral-100)}.mrd-layout-section__history-btn.sc-mrd-layout-section:focus{outline:none;box-shadow:var(--mrd-shadow-focus)}.mrd-layout-section__history-icon.sc-mrd-layout-section{width:0.875rem;height:0.875rem}.mrd-layout-section__history-popover.sc-mrd-layout-section{position:absolute;top:calc(100% + 0.25rem);left:0;min-width:24rem;max-width:24rem;background-color:var(--mrd-color-white);border:var(--mrd-border-width) solid var(--mrd-border-color);border-radius:var(--mrd-border-radius-md);box-shadow:var(--mrd-shadow-md);padding:var(--mrd-space-1) 0;z-index:var(--mrd-z-dropdown)}.mrd-layout-section__history-entry.sc-mrd-layout-section{font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-sm);font-weight:var(--mrd-font-weight-normal);color:var(--mrd-color-neutral-700);padding:var(--mrd-space-2) var(--mrd-space-3);line-height:var(--mrd-line-height-normal)}.mrd-layout-section__history-entry.sc-mrd-layout-section:not(:last-child){border-bottom:var(--mrd-border-width) solid var(--mrd-color-neutral-100)}.mrd-layout-section__field-header.sc-mrd-layout-section{font-size:var(--mrd-font-size-2xl);font-weight:var(--mrd-font-weight-bold);color:var(--mrd-color-neutral-900);margin:0 0 var(--mrd-space-4) 0;padding:0}.mrd-layout-section__header.sc-mrd-layout-section{font-size:var(--mrd-font-size-xl);font-weight:var(--mrd-font-weight-semibold);color:var(--mrd-color-neutral-800);margin:var(--mrd-space-4) 0 var(--mrd-space-2) 0;padding:0}.mrd-layout-section__text.sc-mrd-layout-section{font-size:var(--mrd-font-size-base);color:var(--mrd-color-neutral-700);line-height:var(--mrd-line-height-relaxed);margin:var(--mrd-space-2) 0}.mrd-layout-section__navigate.sc-mrd-layout-section{display:inline-flex;align-items:center;gap:var(--mrd-space-2);padding:var(--mrd-space-2) var(--mrd-space-3);background:none;border:1px solid var(--mrd-color-neutral-300);border-radius:var(--mrd-border-radius);font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-sm);color:var(--mrd-color-primary);cursor:pointer;margin:var(--mrd-space-2) 0}.mrd-layout-section__navigate.sc-mrd-layout-section:hover{background-color:var(--mrd-color-primary-light);border-color:var(--mrd-color-primary)}.mrd-layout-section__link.sc-mrd-layout-section{color:var(--mrd-color-primary);text-decoration:none}.mrd-layout-section__link.sc-mrd-layout-section:hover{text-decoration:underline}.mrd-layout-section__relation-link.sc-mrd-layout-section{background:none;border:none;padding:0;font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-sm);font-weight:var(--mrd-font-weight-semibold);color:var(--mrd-color-primary);cursor:pointer;text-align:left}.mrd-layout-section__relation-link.sc-mrd-layout-section:hover{text-decoration:underline}.mrd-layout-section__download-link.sc-mrd-layout-section{display:inline-flex;align-items:center;gap:var(--mrd-space-1);background:none;border:none;padding:0;font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-sm);color:var(--mrd-color-primary);cursor:pointer;text-align:left}.mrd-layout-section__download-link.sc-mrd-layout-section:hover{text-decoration:underline;color:var(--mrd-color-primary-dark)}.mrd-layout-section__file-icon.sc-mrd-layout-section{flex-shrink:0;width:1rem;height:1rem}.mrd-layout-section__file-list.sc-mrd-layout-section{display:flex;flex-direction:column;align-items:flex-start;gap:var(--mrd-space-1)}.mrd-layout-section__file-list-item.sc-mrd-layout-section{min-width:0;max-width:100%}.mrd-layout-section__boolean--true.sc-mrd-layout-section{color:var(--mrd-color-success);font-weight:var(--mrd-font-weight-semibold)}.mrd-layout-section__boolean--false.sc-mrd-layout-section{color:var(--mrd-color-neutral-400)}.mrd-layout-section__badge.sc-mrd-layout-section{display:inline-block;font-size:var(--mrd-font-size-xs);font-weight:var(--mrd-font-weight-medium);padding:2px var(--mrd-space-3);border-radius:10px}.mrd-layout-section__badge-dot-row.sc-mrd-layout-section{display:inline-flex;align-items:center;gap:var(--mrd-space-2)}.mrd-layout-section__badge-dot.sc-mrd-layout-section{display:inline-block;width:10px;height:10px;border-radius:50%;flex-shrink:0}.mrd-layout-section__secret-masked.sc-mrd-layout-section{font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-base);color:var(--mrd-label-color);letter-spacing:0.15em;user-select:none;pointer-events:none}.mrd-layout-section__pre.sc-mrd-layout-section{font-family:var(--mrd-font-family-mono);font-size:var(--mrd-font-size-xs);background-color:var(--mrd-color-neutral-50);border:1px solid var(--mrd-color-neutral-200);border-radius:var(--mrd-border-radius);padding:var(--mrd-space-3);margin:0;max-height:calc(15 * var(--mrd-font-size-xs));overflow-x:auto;overflow-y:auto;white-space:pre-wrap;word-break:break-word}.mrd-layout-section__group.sc-mrd-layout-section{margin:var(--mrd-space-4) 0}.mrd-layout-section__group-title.sc-mrd-layout-section{font-size:var(--mrd-font-size-xs);font-weight:var(--mrd-font-weight-semibold);color:var(--mrd-color-neutral-500);margin:0 0 var(--mrd-space-2) 0;padding-bottom:0;letter-spacing:0.01em}.mrd-layout-section__related-view.sc-mrd-layout-section{margin:var(--mrd-space-4) 0}.mrd-layout-section__related-view-title.sc-mrd-layout-section{font-size:var(--mrd-font-size-lg);font-weight:var(--mrd-font-weight-semibold);color:var(--mrd-color-neutral-800);margin:0 0 var(--mrd-space-3) 0}.mrd-layout-section__search.sc-mrd-layout-section{position:relative;margin:var(--mrd-space-2) 0}.mrd-layout-section__search-wrap.sc-mrd-layout-section{position:relative}.mrd-layout-section__search-icon.sc-mrd-layout-section{position:absolute;left:var(--mrd-input-padding-x);top:50%;transform:translateY(-50%);width:1rem;height:1rem;color:var(--mrd-color-neutral-400);pointer-events:none}.mrd-layout-section__search-input.sc-mrd-layout-section{display:block;width:100%;height:var(--mrd-input-height);padding:var(--mrd-input-padding-y) var(--mrd-input-padding-x) var(--mrd-input-padding-y) calc(var(--mrd-input-padding-x) + 1rem + var(--mrd-space-2));font-family:var(--mrd-font-family);font-size:var(--mrd-font-size-base);color:var(--mrd-input-color);background-color:var(--mrd-input-bg);border:var(--mrd-border-width) solid var(--mrd-border-color);border-radius:var(--mrd-border-radius);outline:none;appearance:none;box-sizing:border-box}.mrd-layout-section__search-input.sc-mrd-layout-section:focus{border-color:var(--mrd-border-color-focus);box-shadow:var(--mrd-shadow-focus)}.mrd-layout-section__search-input.sc-mrd-layout-section::placeholder{color:var(--mrd-input-placeholder-color)}.mrd-layout-section__search-results.sc-mrd-layout-section{position:absolute;top:100%;left:0;right:0;background-color:var(--mrd-color-white);border:1px solid var(--mrd-color-neutral-300);border-top:none;border-radius:0 0 var(--mrd-border-radius) var(--mrd-border-radius);box-shadow:var(--mrd-shadow-sm);z-index:100;max-height:300px;overflow-y:auto;list-style:none;margin:0;padding:var(--mrd-space-1) 0}.mrd-layout-section__search-result.sc-mrd-layout-section{margin:0;padding:0}.mrd-layout-section__search-result-btn.sc-mrd-layout-section{display:flex;flex-direction:column;width:100%;padding:var(--mrd-space-2) var(--mrd-space-3);background:none;border:none;text-align:left;cursor:pointer;font-family:var(--mrd-font-family)}.mrd-layout-section__search-result-btn.sc-mrd-layout-section:hover{background-color:var(--mrd-color-primary-light)}.mrd-layout-section__search-result-label.sc-mrd-layout-section{font-size:var(--mrd-font-size-sm);font-weight:var(--mrd-font-weight-medium);color:var(--mrd-color-neutral-800)}.mrd-layout-section__search-result-desc.sc-mrd-layout-section{font-size:var(--mrd-font-size-xs);color:var(--mrd-color-neutral-500);margin-top:var(--mrd-space-1)}.mrd-layout-section__image-thumb-btn.sc-mrd-layout-section{background:none;border:none;padding:0;cursor:pointer;display:inline-block;border-radius:var(--mrd-border-radius);overflow:hidden;line-height:0}.mrd-layout-section__image-thumb-btn.sc-mrd-layout-section:hover .mrd-layout-section__image-thumb.sc-mrd-layout-section{opacity:0.85}.mrd-layout-section__image-thumb.sc-mrd-layout-section{display:block;max-width:160px;max-height:100px;border-radius:var(--mrd-border-radius);object-fit:cover;transition:opacity 0.15s}.mrd-layout-section__modal-backdrop.sc-mrd-layout-section{position:fixed;inset:0;background:rgba(0, 0, 0, 0.6);z-index:300;display:flex;align-items:center;justify-content:center}.mrd-layout-section__modal.sc-mrd-layout-section{position:relative;background:var(--mrd-color-white);border-radius:var(--mrd-border-radius);padding:var(--mrd-space-3);max-width:min(90vw, 900px);max-height:90vh;display:flex;align-items:center;justify-content:center;box-shadow:var(--mrd-shadow-lg)}.mrd-layout-section__modal-close.sc-mrd-layout-section{position:absolute;top:var(--mrd-space-2);right:var(--mrd-space-2);background:rgba(0, 0, 0, 0.5);border:none;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center;color:var(--mrd-color-white);cursor:pointer;font-size:var(--mrd-font-size-sm);line-height:1;z-index:1}.mrd-layout-section__modal-close.sc-mrd-layout-section:hover{background:rgba(0, 0, 0, 0.8)}.mrd-layout-section__modal-image.sc-mrd-layout-section{display:block;max-width:100%;max-height:calc(90vh - 2rem);border-radius:var(--mrd-border-radius);object-fit:contain}"}},[2,"mrd-layout-section",{items:[16],data:[16],views:[16],links:[16],locale:[1],archetypes:[16],searchQueryMap:[32],searchResultsMap:[32],imagePreviewUrl:[32],imagePreviews:[32],openHistoryField:[32],setSearchResults:[64],setViewPage:[64],setViewAggregations:[64],setViewDistinct:[64],setViewFileReference:[64],setViewCreatedObject:[64],setImagePreview:[64],openImagePreview:[64]},void 0,{data:[{dataChanged:0}]}]),O=M,L=function(){"undefined"!=typeof customElements&&["mrd-layout-section","mrd-document-container","mrd-document-list","mrd-document-view","mrd-email-view","mrd-invoice-view","mrd-table"].forEach((t=>{switch(t){case"mrd-layout-section":customElements.get(a(t))||customElements.define(a(t),M);break;case"mrd-document-container":customElements.get(a(t))||f();break;case"mrd-document-list":customElements.get(a(t))||_();break;case"mrd-document-view":customElements.get(a(t))||g();break;case"mrd-email-view":customElements.get(a(t))||b();break;case"mrd-invoice-view":customElements.get(a(t))||w();break;case"mrd-table":customElements.get(a(t))||x()}}))};export{O as MrdLayoutSection,L as defineCustomElement}