({
title,
description,
previewIcon = "📄",
previewText = "",
metaHtml = "",
tagsHtml = "",
actionsHtml = "",
detailsHtml = "",
contentClassName = "modal-card-details",
trigger,
}: OpenCardDetailsRequest)
| 1020 | } |
| 1021 | |
| 1022 | export function openCardDetailsModal({ |
| 1023 | title, |
| 1024 | description, |
| 1025 | previewIcon = "📄", |
| 1026 | previewText = "", |
| 1027 | metaHtml = "", |
| 1028 | tagsHtml = "", |
| 1029 | actionsHtml = "", |
| 1030 | detailsHtml = "", |
| 1031 | contentClassName = "modal-card-details", |
| 1032 | trigger, |
| 1033 | }: OpenCardDetailsRequest): void { |
| 1034 | const modal = document.getElementById("file-modal"); |
| 1035 | const modalTitle = document.getElementById("modal-title"); |
| 1036 | const closeBtn = document.getElementById("close-modal"); |
| 1037 | const modalBody = getModalBody(); |
| 1038 | |
| 1039 | if (!modal || !modalTitle || !modalBody) return; |
| 1040 | |
| 1041 | triggerElement = trigger || (document.activeElement as HTMLElement); |
| 1042 | if (!originalDocumentTitle) { |
| 1043 | originalDocumentTitle = document.title; |
| 1044 | } |
| 1045 | |
| 1046 | currentFilePath = null; |
| 1047 | currentFileContent = null; |
| 1048 | currentFileType = "details"; |
| 1049 | currentViewMode = "raw"; |
| 1050 | hideSkillFileSwitcher(); |
| 1051 | |
| 1052 | modal.classList.add("details-mode"); |
| 1053 | modalTitle.textContent = title; |
| 1054 | document.title = `${title} | Awesome GitHub Copilot`; |
| 1055 | |
| 1056 | const content = ensureDivContent(contentClassName); |
| 1057 | if (!content) return; |
| 1058 | |
| 1059 | content.innerHTML = |
| 1060 | detailsHtml || |
| 1061 | ` |
| 1062 | <div class="resource-details-body modal-card-details-body"> |
| 1063 | <div class="resource-details-preview"> |
| 1064 | <div class="resource-details-preview-icon" aria-hidden="true">${escapeHtml(previewIcon)}</div> |
| 1065 | ${ |
| 1066 | previewText |
| 1067 | ? `<p class="resource-details-preview-text">${escapeHtml(previewText)}</p>` |
| 1068 | : "" |
| 1069 | } |
| 1070 | </div> |
| 1071 | <div class="resource-details-content"> |
| 1072 | <p class="resource-details-description">${escapeHtml(description)}</p> |
| 1073 | ${ |
| 1074 | metaHtml |
| 1075 | ? `<div class="resource-meta resource-details-meta">${metaHtml}</div>` |
| 1076 | : "" |
| 1077 | } |
| 1078 | ${ |
| 1079 | tagsHtml |
no test coverage detected