@dssp/supervision 1.0.10 → 1.0.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist-client/pages/building-inspection/building-inspection-detail-ai-measurement.js +5 -0
- package/dist-client/pages/building-inspection/building-inspection-detail-ai-measurement.js.map +1 -1
- package/dist-client/pages/checklist/file-preview-popup.js +11 -0
- package/dist-client/pages/checklist/file-preview-popup.js.map +1 -1
- package/dist-client/route.d.ts +1 -1
- package/dist-client/tsconfig.tsbuildinfo +1 -1
- package/dist-server/service/checklist-item/checklist-item-mutation.js +21 -1
- package/dist-server/service/checklist-item/checklist-item-mutation.js.map +1 -1
- package/dist-server/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -2
|
@@ -35,6 +35,17 @@ let FilePreviewPopup = class FilePreviewPopup extends LitElement {
|
|
|
35
35
|
iframe.style.border = 'none';
|
|
36
36
|
this.previewContent.appendChild(iframe);
|
|
37
37
|
}
|
|
38
|
+
else if (['txt', 'log', 'md', 'json', 'csv'].includes(fileExtension)) {
|
|
39
|
+
// 텍스트 파일 미리보기 (AI판단 근거 .txt 등)
|
|
40
|
+
const pre = document.createElement('pre');
|
|
41
|
+
pre.style.cssText = 'text-align: left; white-space: pre-wrap; word-break: break-word; padding: 16px; font-size: 14px; line-height: 1.6;';
|
|
42
|
+
pre.innerText = '불러오는 중...';
|
|
43
|
+
this.previewContent.appendChild(pre);
|
|
44
|
+
fetch(fileUrl)
|
|
45
|
+
.then(res => (res.ok ? res.text() : Promise.reject(new Error(`${res.status}`))))
|
|
46
|
+
.then(text => (pre.innerText = text))
|
|
47
|
+
.catch(() => (pre.innerText = '파일을 불러오지 못했습니다.'));
|
|
48
|
+
}
|
|
38
49
|
else {
|
|
39
50
|
// 미리보기가 지원되지 않는 파일 형식 안내
|
|
40
51
|
const message = document.createElement('p');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file-preview-popup.js","sourceRoot":"","sources":["../../../client/pages/checklist/file-preview-popup.ts"],"names":[],"mappings":";AAAA,OAAO,4BAA4B,CAAA;AACnC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,KAAK,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAClE,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAGxE,IAAM,gBAAgB,GAAtB,MAAM,gBAAiB,SAAQ,UAAU;IAAzC;;QAsB8B,aAAQ,GAAW,EAAE,CAAA;
|
|
1
|
+
{"version":3,"file":"file-preview-popup.js","sourceRoot":"","sources":["../../../client/pages/checklist/file-preview-popup.ts"],"names":[],"mappings":"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","sourcesContent":["import '@material/web/icon/icon.js'\nimport { css, html, LitElement } from 'lit'\nimport { customElement, property, query } from 'lit/decorators.js'\nimport { ButtonContainerStyles, ScrollbarStyles } from '@operato/styles'\n\n@customElement('file-preview-popup')\nclass FilePreviewPopup extends LitElement {\n static styles = [\n ButtonContainerStyles,\n ScrollbarStyles,\n css`\n :host {\n display: flex;\n flex-direction: column;\n padding: 15px 20px;\n overflow-y: auto;\n background-color: var(--md-sys-color-surface);\n }\n\n .modal-content {\n margin: 5% auto;\n width: 90%;\n background-color: white;\n text-align: center;\n }\n `\n ]\n\n @property({ type: String }) filepath: string = ''\n\n @query('#previewContent') previewContent!: HTMLDivElement\n\n render() {\n return html` <div class=\"modal-content\" id=\"previewContent\"></div>`\n }\n\n async firstUpdated() {\n this.showPreview(this.filepath)\n }\n\n showPreview(fileUrl) {\n // 파일 확장자 확인\n const fileExtension = fileUrl.split('.').pop().toLowerCase()\n this.previewContent.innerHTML = ''\n\n if (['jpg', 'jpeg', 'png', 'gif', 'webp'].includes(fileExtension)) {\n // 이미지 미리보기\n const img = document.createElement('img')\n img.src = fileUrl\n img.alt = '미리보기 이미지'\n img.style.width = '100%'\n this.previewContent.appendChild(img)\n } else if (fileExtension === 'pdf') {\n // PDF 미리보기\n const iframe = document.createElement('iframe')\n iframe.src = `${fileUrl}#toolbar=0&navpanes=0&scrollbar=0` // 툴바, 내비게이션 및 스크롤바 숨기기\n iframe.style.width = '100%'\n iframe.style.height = '100vh'\n iframe.style.border = 'none'\n this.previewContent.appendChild(iframe)\n } else if (['txt', 'log', 'md', 'json', 'csv'].includes(fileExtension)) {\n // 텍스트 파일 미리보기 (AI판단 근거 .txt 등)\n const pre = document.createElement('pre')\n pre.style.cssText = 'text-align: left; white-space: pre-wrap; word-break: break-word; padding: 16px; font-size: 14px; line-height: 1.6;'\n pre.innerText = '불러오는 중...'\n this.previewContent.appendChild(pre)\n fetch(fileUrl)\n .then(res => (res.ok ? res.text() : Promise.reject(new Error(`${res.status}`))))\n .then(text => (pre.innerText = text))\n .catch(() => (pre.innerText = '파일을 불러오지 못했습니다.'))\n } else {\n // 미리보기가 지원되지 않는 파일 형식 안내\n const message = document.createElement('p')\n message.innerText = '미리보기가 지원되지 않는 파일 형식입니다.'\n this.previewContent.appendChild(message)\n }\n }\n}\n"]}
|
package/dist-client/route.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export default function route(page: string): "
|
|
1
|
+
export default function route(page: string): "checklist-type-management" | "building-inspection-list" | "checklist-template-list" | "construction-checklist-template-list" | "building-inspection-detail-drawing" | "building-inspection-detail-checklist" | "building-inspection-detail-camera" | "building-inspection-detail-ai-measurement" | "building-inspection-detail-ai-defect" | "building-inspection-grid-detail" | "building-inspection-management" | "project-checklist-management" | "checklist-database" | undefined;
|