@impakers/debug 1.4.17 → 1.4.18
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/react.js +230 -104
- package/dist/react.js.map +1 -1
- package/dist/react.mjs +233 -107
- package/dist/react.mjs.map +1 -1
- package/package.json +1 -1
package/dist/react.js
CHANGED
|
@@ -2490,14 +2490,14 @@ function formatTime(dateStr) {
|
|
|
2490
2490
|
const date = new Date(dateStr);
|
|
2491
2491
|
const diff = Date.now() - date.getTime();
|
|
2492
2492
|
const pad = (n) => String(n).padStart(2, "0");
|
|
2493
|
-
const abs = `${
|
|
2493
|
+
const abs = `${date.getMonth() + 1}/${date.getDate()} ${pad(date.getHours())}:${pad(date.getMinutes())}`;
|
|
2494
2494
|
const m = Math.floor(diff / 6e4);
|
|
2495
|
-
if (m < 1) return `${abs} (
|
|
2496
|
-
if (m < 60) return `${abs} (${m}
|
|
2495
|
+
if (m < 1) return `${abs} (\uBC29\uAE08)`;
|
|
2496
|
+
if (m < 60) return `${abs} (${m}\uBD84 \uC804)`;
|
|
2497
2497
|
const h = Math.floor(m / 60);
|
|
2498
|
-
if (h < 24) return `${abs} (${h}
|
|
2498
|
+
if (h < 24) return `${abs} (${h}\uC2DC\uAC04 \uC804)`;
|
|
2499
2499
|
const d = Math.floor(h / 24);
|
|
2500
|
-
return `${abs} (${d}
|
|
2500
|
+
return `${abs} (${d}\uC77C \uC804)`;
|
|
2501
2501
|
}
|
|
2502
2502
|
function getInitials(name) {
|
|
2503
2503
|
return name.slice(0, 1).toUpperCase();
|
|
@@ -2986,8 +2986,8 @@ var import_react5 = require("react");
|
|
|
2986
2986
|
var import_react_dom = require("react-dom");
|
|
2987
2987
|
|
|
2988
2988
|
// src/components/inbox-panel/styles.module.scss
|
|
2989
|
-
var css5 = '@keyframes styles-module__slideIn___0o0s- {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0);\n }\n}\n@keyframes styles-module__slideOut___nKrBX {\n from {\n transform: translateX(0);\n }\n to {\n transform: translateX(100%);\n }\n}\n@keyframes styles-module__fadeIn___j09Ts {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n.styles-module__backdrop___zYhcU {\n position: fixed;\n inset: 0;\n z-index: 100003;\n animation: styles-module__fadeIn___j09Ts 0.15s ease-out;\n}\n\n.styles-module__panel___6YS8k {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n width: 420px;\n max-width: 100vw;\n background: #fafafa;\n z-index: 100004;\n display: flex;\n flex-direction: column;\n box-shadow: -4px 0 24px rgba(0, 0, 0, 0.08);\n animation: styles-module__slideIn___0o0s- 0.2s ease-out;\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;\n -webkit-font-smoothing: antialiased;\n}\n.styles-module__panel___6YS8k.styles-module__exiting___6A-Ag {\n animation: styles-module__slideOut___nKrBX 0.15s ease-in forwards;\n}\n\n.styles-module__header___fBbGz {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 16px 20px;\n border-bottom: 1px solid #e5e7eb;\n background: #fff;\n flex-shrink: 0;\n}\n\n.styles-module__headerLeft___e0YLf {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.styles-module__headerTitle___oEPJa {\n font-size: 14px;\n font-weight: 600;\n color: #18181b;\n}\n\n.styles-module__closeBtn___-H8ra {\n width: 32px;\n height: 32px;\n border: none;\n background: none;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 6px;\n color: #6b7280;\n transition: background 0.12s, color 0.12s;\n}\n.styles-module__closeBtn___-H8ra:hover {\n background: #f3f4f6;\n color: #18181b;\n}\n.styles-module__closeBtn___-H8ra svg {\n width: 18px;\n height: 18px;\n}\n\n.styles-module__tabs___nfuX7 {\n display: flex;\n padding: 0 20px;\n gap: 0;\n border-bottom: 1px solid #e5e7eb;\n background: #fff;\n flex-shrink: 0;\n}\n\n.styles-module__tab___Hc-jn {\n padding: 10px 16px;\n font-size: 13px;\n font-weight: 500;\n color: #6b7280;\n border: none;\n background: none;\n cursor: pointer;\n border-bottom: 2px solid transparent;\n transition: color 0.12s, border-color 0.12s;\n font-family: inherit;\n}\n.styles-module__tab___Hc-jn:hover {\n color: #374151;\n}\n.styles-module__tab___Hc-jn.styles-module__active___ZQzA5 {\n color: #18181b;\n border-bottom-color: #18181b;\n}\n\n.styles-module__tabBadge___IdFDQ {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n min-width: 18px;\n height: 18px;\n border-radius: 9px;\n background: #e5e7eb;\n color: #374151;\n font-size: 11px;\n font-weight: 600;\n padding: 0 5px;\n margin-left: 6px;\n}\n\n.styles-module__statusFilter___qtBXs {\n display: flex;\n gap: 6px;\n padding: 10px 20px;\n border-bottom: 1px solid #f3f4f6;\n background: #fff;\n flex-shrink: 0;\n}\n\n.styles-module__filterChip___l2s74 {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n padding: 4px 10px;\n font-size: 12px;\n font-weight: 500;\n color: #6b7280;\n background: #f3f4f6;\n border: 1px solid transparent;\n border-radius: 16px;\n cursor: pointer;\n transition: all 0.12s;\n font-family: inherit;\n}\n.styles-module__filterChip___l2s74:hover {\n color: #374151;\n background: #e5e7eb;\n}\n.styles-module__filterChip___l2s74.styles-module__active___ZQzA5 {\n color: #18181b;\n background: #fff;\n border-color: #d1d5db;\n}\n\n.styles-module__filterCount___KukiQ {\n font-size: 11px;\n font-weight: 600;\n color: inherit;\n opacity: 0.7;\n}\n\n.styles-module__content___L2lRw {\n flex: 1;\n overflow-y: auto;\n padding: 12px;\n}\n.styles-module__content___L2lRw::-webkit-scrollbar {\n width: 4px;\n}\n.styles-module__content___L2lRw::-webkit-scrollbar-thumb {\n background: #d1d5db;\n border-radius: 2px;\n}\n\n.styles-module__card___F8qwd {\n background: #fff;\n border-radius: 12px;\n border: 1px solid #e5e7eb;\n margin-bottom: 12px;\n overflow: hidden;\n transition: box-shadow 0.12s;\n cursor: pointer;\n}\n.styles-module__card___F8qwd:hover {\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);\n}\n\n.styles-module__cardHeader___QOVGR {\n padding: 14px 16px 8px;\n display: flex;\n align-items: flex-start;\n gap: 10px;\n}\n\n.styles-module__cardAvatar___FfKmW {\n width: 24px;\n height: 24px;\n border-radius: 50%;\n background: #16a34a;\n color: #fff;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 11px;\n font-weight: 600;\n flex-shrink: 0;\n}\n\n.styles-module__cardInfo___BmrdF {\n flex: 1;\n min-width: 0;\n}\n\n.styles-module__cardMeta___7p9KD {\n display: flex;\n align-items: center;\n gap: 6px;\n margin-bottom: 4px;\n}\n\n.styles-module__cardAuthor___YvnuR {\n font-size: 13px;\n font-weight: 600;\n color: #18181b;\n}\n\n.styles-module__cardTime___N1Png {\n font-size: 12px;\n color: #9ca3af;\n}\n\n.styles-module__cardActions___7QF72 {\n display: flex;\n gap: 2px;\n flex-shrink: 0;\n}\n\n.styles-module__cardAction___t4b3V {\n width: 26px;\n height: 26px;\n border: none;\n background: none;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 5px;\n color: #9ca3af;\n transition: background 0.12s, color 0.12s;\n padding: 0;\n}\n.styles-module__cardAction___t4b3V:hover {\n background: #f3f4f6;\n color: #374151;\n}\n.styles-module__cardAction___t4b3V svg {\n width: 14px;\n height: 14px;\n}\n\n.styles-module__cardTitle___xJxDN {\n font-size: 13px;\n color: #1a1a1a;\n line-height: 1.5;\n padding: 0 16px 8px;\n}\n\n.styles-module__cardScreenshot___I5-QL {\n margin: 0 16px 8px;\n border-radius: 8px;\n border: 1px solid #e5e7eb;\n overflow: hidden;\n position: relative;\n max-height: 160px;\n}\n.styles-module__cardScreenshot___I5-QL img {\n width: 100%;\n height: auto;\n display: block;\n object-fit: cover;\n}\n\n.styles-module__cardRoute___U4gB6 {\n margin: 0 16px 10px;\n padding: 8px 12px;\n background: #f9fafb;\n border: 1px solid #f3f4f6;\n border-radius: 8px;\n font-size: 12px;\n color: #6b7280;\n line-height: 1.4;\n display: flex;\n align-items: center;\n gap: 6px;\n cursor: pointer;\n transition: background 0.12s, border-color 0.12s;\n}\n.styles-module__cardRoute___U4gB6:hover {\n background: #f3f4f6;\n border-color: #d1d5db;\n color: #3b82f6;\n}\n.styles-module__cardRoute___U4gB6:hover .styles-module__cardRoutePath___zP-fh {\n color: #3b82f6;\n}\n.styles-module__cardRoute___U4gB6:hover .styles-module__cardRouteIcon___SBqGj {\n color: #3b82f6;\n}\n\n.styles-module__cardRouteName___BDH75 {\n font-weight: 500;\n color: #374151;\n}\n\n.styles-module__cardRoutePath___zP-fh {\n flex: 1;\n min-width: 0;\n color: #9ca3af;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n transition: color 0.12s;\n}\n\n.styles-module__cardRouteIcon___SBqGj {\n flex-shrink: 0;\n color: #9ca3af;\n transition: color 0.12s;\n}\n\n.styles-module__cardFooter___wfPa4 {\n padding: 8px 16px 12px;\n display: flex;\n align-items: center;\n gap: 6px;\n}\n\n.styles-module__cardReplyDot___YnqzI {\n width: 8px;\n height: 8px;\n border-radius: 50%;\n background: #16a34a;\n flex-shrink: 0;\n}\n\n.styles-module__cardReplyCount___O1khL {\n font-size: 12px;\n font-weight: 500;\n color: #374151;\n}\n\n.styles-module__statusDot___l4IHG {\n width: 6px;\n height: 6px;\n border-radius: 50%;\n flex-shrink: 0;\n}\n.styles-module__statusDot___l4IHG.styles-module__todo___894P6 {\n background: #f59e0b;\n}\n.styles-module__statusDot___l4IHG.styles-module__inProgress___IZ1mJ {\n background: #3b82f6;\n}\n.styles-module__statusDot___l4IHG.styles-module__done___n4cWP {\n background: #16a34a;\n}\n\n.styles-module__empty___IADrw {\n text-align: center;\n padding: 48px 20px;\n color: #9ca3af;\n font-size: 13px;\n line-height: 1.6;\n}\n\n.styles-module__emptyIcon___1x5wT {\n width: 48px;\n height: 48px;\n border-radius: 50%;\n background: #f3f4f6;\n display: flex;\n align-items: center;\n justify-content: center;\n margin: 0 auto 12px;\n color: #9ca3af;\n}\n.styles-module__emptyIcon___1x5wT svg {\n width: 24px;\n height: 24px;\n}\n\n.styles-module__checkBtn___KjHxm {\n width: 28px;\n height: 28px;\n border: 2px solid #d1d5db;\n border-radius: 50%;\n background: none;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n color: transparent;\n transition: all 0.15s;\n padding: 0;\n flex-shrink: 0;\n}\n.styles-module__checkBtn___KjHxm svg {\n width: 14px;\n height: 14px;\n}\n.styles-module__checkBtn___KjHxm:hover {\n border-color: #16a34a;\n color: #16a34a;\n}\n.styles-module__checkBtn___KjHxm.styles-module__checked___8pype {\n border-color: #16a34a;\n background: #16a34a;\n color: #fff;\n}\n\n.styles-module__cardDone___-m4w- {\n opacity: 0.6;\n}\n.styles-module__cardDone___-m4w- .styles-module__cardTitle___xJxDN {\n text-decoration: line-through;\n color: #9ca3af;\n}\n\n.styles-module__backBtn___PTIAl {\n width: 28px;\n height: 28px;\n border: none;\n background: none;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 6px;\n color: #6b7280;\n transition: background 0.12s, color 0.12s;\n padding: 0;\n flex-shrink: 0;\n}\n.styles-module__backBtn___PTIAl:hover {\n background: #f3f4f6;\n color: #18181b;\n}\n\n.styles-module__detailView___36cvH {\n flex: 1;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n}\n\n.styles-module__detailHeader___Hepgq {\n display: flex;\n gap: 10px;\n padding: 16px 20px;\n border-bottom: 1px solid #f3f4f6;\n}\n\n.styles-module__detailTitle___7TvrX {\n font-size: 13px;\n color: #1a1a1a;\n line-height: 1.5;\n margin-top: 4px;\n}\n\n.styles-module__detailScreenshot___UPF0f {\n margin: 0 20px 0;\n border-radius: 8px;\n border: 1px solid #e5e7eb;\n overflow: hidden;\n max-height: 180px;\n}\n.styles-module__detailScreenshot___UPF0f img {\n width: 100%;\n height: auto;\n display: block;\n object-fit: cover;\n}\n\n.styles-module__commentsList___5Uigg {\n flex: 1;\n overflow-y: auto;\n padding: 8px 0;\n}\n.styles-module__commentsList___5Uigg::-webkit-scrollbar {\n width: 4px;\n}\n.styles-module__commentsList___5Uigg::-webkit-scrollbar-thumb {\n background: #d1d5db;\n border-radius: 2px;\n}\n\n.styles-module__commentItem___5u78u {\n display: flex;\n gap: 10px;\n padding: 10px 20px;\n}\n.styles-module__commentItem___5u78u:hover {\n background: #f9fafb;\n}\n\n.styles-module__commentAvatar___OatKg {\n width: 24px;\n height: 24px;\n border-radius: 50%;\n background: #16a34a;\n color: #fff;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 11px;\n font-weight: 600;\n flex-shrink: 0;\n}\n\n.styles-module__commentBody___gmv1J {\n flex: 1;\n min-width: 0;\n}\n\n.styles-module__commentMeta___JNJa3 {\n display: flex;\n gap: 6px;\n align-items: center;\n margin-bottom: 2px;\n}\n\n.styles-module__commentAuthorName___XNVRk {\n font-size: 13px;\n font-weight: 600;\n color: #1a1a1a;\n}\n\n.styles-module__commentTime___CokGf {\n font-size: 12px;\n color: #9ca3af;\n}\n\n.styles-module__commentContent___yMiLR {\n font-size: 13px;\n color: #374151;\n line-height: 1.5;\n white-space: pre-wrap;\n word-break: break-word;\n}\n\n.styles-module__loadingComments___zpATD, .styles-module__noComments___kvl90 {\n text-align: center;\n padding: 24px 20px;\n color: #9ca3af;\n font-size: 13px;\n}\n\n.styles-module__replyBox___FO-XS {\n display: flex;\n align-items: flex-end;\n gap: 8px;\n padding: 12px 20px;\n border-top: 1px solid #f3f4f6;\n background: #fff;\n}\n\n.styles-module__replyInput___k8C9e {\n flex: 1;\n border: 1px solid #e5e7eb;\n border-radius: 8px;\n padding: 8px 12px;\n font-size: 13px;\n font-family: inherit;\n color: #1a1a1a;\n resize: none;\n outline: none;\n min-height: 20px;\n max-height: 80px;\n line-height: 1.5;\n transition: border-color 0.12s;\n}\n.styles-module__replyInput___k8C9e:focus {\n border-color: #18181b;\n}\n.styles-module__replyInput___k8C9e::placeholder {\n color: #9ca3af;\n}\n\n.styles-module__sendBtn___pBzWa {\n width: 32px;\n height: 32px;\n border: none;\n background: none;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 6px;\n color: #d1d5db;\n transition: color 0.12s;\n padding: 0;\n flex-shrink: 0;\n}\n.styles-module__sendBtn___pBzWa.styles-module__active___ZQzA5 {\n color: #3b82f6;\n}\n.styles-module__sendBtn___pBzWa:hover {\n color: #3b82f6;\n}\n\n.styles-module__commentImage___LuH8X {\n margin-top: 6px;\n border-radius: 8px;\n border: 1px solid #e5e7eb;\n overflow: hidden;\n max-width: 240px;\n cursor: pointer;\n transition: opacity 0.12s;\n}\n.styles-module__commentImage___LuH8X:hover {\n opacity: 0.9;\n}\n.styles-module__commentImage___LuH8X img {\n width: 100%;\n height: auto;\n display: block;\n}\n\n.styles-module__commentFileCard___XE44y {\n display: flex;\n align-items: center;\n gap: 8px;\n margin-top: 6px;\n padding: 8px 10px;\n border-radius: 8px;\n border: 1px solid #e5e7eb;\n background: #f9fafb;\n cursor: pointer;\n transition: background 0.12s;\n max-width: 240px;\n}\n.styles-module__commentFileCard___XE44y:hover {\n background: #f3f4f6;\n}\n\n.styles-module__commentFileIcon___G58-y {\n width: 32px;\n height: 32px;\n border-radius: 6px;\n background: #e5e7eb;\n color: #374151;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 10px;\n font-weight: 700;\n flex-shrink: 0;\n letter-spacing: 0.5px;\n}\n\n.styles-module__commentFileInfo___OFIhR {\n flex: 1;\n min-width: 0;\n display: flex;\n flex-direction: column;\n gap: 1px;\n}\n\n.styles-module__commentFileName___NUoII {\n font-size: 12px;\n font-weight: 500;\n color: #1a1a1a;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.styles-module__commentFileSize___sokU8 {\n font-size: 11px;\n color: #9ca3af;\n}\n\n.styles-module__filePreviewOverlay___5RxYd {\n position: fixed;\n inset: 0;\n z-index: 2147483647;\n background: rgba(0, 0, 0, 0.6);\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.styles-module__filePreviewModal___MGJLW {\n width: 90vw;\n max-width: 960px;\n height: 80vh;\n background: #fff;\n border-radius: 12px;\n box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);\n display: flex;\n flex-direction: column;\n overflow: hidden;\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;\n}\n\n.styles-module__filePreviewHeader___E9SWJ {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 12px 16px;\n border-bottom: 1px solid #e5e7eb;\n flex-shrink: 0;\n}\n\n.styles-module__filePreviewName___z8t-L {\n font-size: 14px;\n font-weight: 600;\n color: #18181b;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n flex: 1;\n min-width: 0;\n}\n\n.styles-module__filePreviewActions___weizo {\n display: flex;\n align-items: center;\n gap: 8px;\n flex-shrink: 0;\n}\n\n.styles-module__filePreviewOpen___JpaEs {\n display: flex;\n align-items: center;\n gap: 4px;\n font-size: 12px;\n font-weight: 500;\n color: #3b82f6;\n text-decoration: none;\n padding: 4px 8px;\n border-radius: 6px;\n transition: background 0.12s;\n}\n.styles-module__filePreviewOpen___JpaEs:hover {\n background: #eff6ff;\n}\n\n.styles-module__filePreviewClose___TFcbr {\n width: 28px;\n height: 28px;\n border: none;\n background: none;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 6px;\n color: #6b7280;\n font-size: 18px;\n transition: background 0.12s, color 0.12s;\n}\n.styles-module__filePreviewClose___TFcbr:hover {\n background: #f3f4f6;\n color: #18181b;\n}\n\n.styles-module__filePreviewBody___gwg1S {\n flex: 1;\n overflow: hidden;\n}\n\n.styles-module__filePreviewIframe___OQ3Oo {\n width: 100%;\n height: 100%;\n border: none;\n}\n\n.styles-module__filePreviewFallback___U1rB2 {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n height: 100%;\n gap: 12px;\n color: #6b7280;\n font-size: 14px;\n}\n.styles-module__filePreviewFallback___U1rB2 a {\n color: #3b82f6;\n text-decoration: none;\n font-weight: 500;\n}\n.styles-module__filePreviewFallback___U1rB2 a:hover {\n text-decoration: underline;\n}\n\n.styles-module__filePreviewFallbackIcon___0--41 {\n width: 56px;\n height: 56px;\n border-radius: 12px;\n background: #f3f4f6;\n color: #6b7280;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 16px;\n font-weight: 700;\n}\n\n.styles-module__lightbox___8CDdt {\n position: fixed;\n inset: 0;\n z-index: 2147483647;\n background: rgba(0, 0, 0, 0.8);\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: zoom-out;\n}\n.styles-module__lightbox___8CDdt img {\n max-width: 90vw;\n max-height: 90vh;\n border-radius: 8px;\n box-shadow: 0 8px 32px rgba(0, 0, 0, 0.4);\n cursor: default;\n}\n\n.styles-module__lightboxClose___VGfjh {\n position: absolute;\n top: 16px;\n right: 16px;\n width: 36px;\n height: 36px;\n border-radius: 50%;\n background: rgba(255, 255, 255, 0.15);\n color: #fff;\n border: none;\n cursor: pointer;\n font-size: 20px;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.styles-module__lightboxClose___VGfjh:hover {\n background: rgba(255, 255, 255, 0.25);\n}';
|
|
2990
|
-
var classNames5 = { "backdrop": "styles-module__backdrop___zYhcU", "fadeIn": "styles-module__fadeIn___j09Ts", "panel": "styles-module__panel___6YS8k", "slideIn": "styles-module__slideIn___0o0s-", "exiting": "styles-module__exiting___6A-Ag", "slideOut": "styles-module__slideOut___nKrBX", "header": "styles-module__header___fBbGz", "headerLeft": "styles-module__headerLeft___e0YLf", "headerTitle": "styles-module__headerTitle___oEPJa", "closeBtn": "styles-module__closeBtn___-H8ra", "tabs": "styles-module__tabs___nfuX7", "tab": "styles-module__tab___Hc-jn", "active": "styles-module__active___ZQzA5", "tabBadge": "styles-module__tabBadge___IdFDQ", "statusFilter": "styles-module__statusFilter___qtBXs", "filterChip": "styles-module__filterChip___l2s74", "filterCount": "styles-module__filterCount___KukiQ", "content": "styles-module__content___L2lRw", "card": "styles-module__card___F8qwd", "cardHeader": "styles-module__cardHeader___QOVGR", "cardAvatar": "styles-module__cardAvatar___FfKmW", "cardInfo": "styles-module__cardInfo___BmrdF", "cardMeta": "styles-module__cardMeta___7p9KD", "cardAuthor": "styles-module__cardAuthor___YvnuR", "cardTime": "styles-module__cardTime___N1Png", "cardActions": "styles-module__cardActions___7QF72", "cardAction": "styles-module__cardAction___t4b3V", "cardTitle": "styles-module__cardTitle___xJxDN", "cardScreenshot": "styles-module__cardScreenshot___I5-QL", "cardRoute": "styles-module__cardRoute___U4gB6", "cardRoutePath": "styles-module__cardRoutePath___zP-fh", "cardRouteIcon": "styles-module__cardRouteIcon___SBqGj", "cardRouteName": "styles-module__cardRouteName___BDH75", "cardFooter": "styles-module__cardFooter___wfPa4", "cardReplyDot": "styles-module__cardReplyDot___YnqzI", "cardReplyCount": "styles-module__cardReplyCount___O1khL", "statusDot": "styles-module__statusDot___l4IHG", "todo": "styles-module__todo___894P6", "inProgress": "styles-module__inProgress___IZ1mJ", "done": "styles-module__done___n4cWP", "empty": "styles-module__empty___IADrw", "emptyIcon": "styles-module__emptyIcon___1x5wT", "checkBtn": "styles-module__checkBtn___KjHxm", "checked": "styles-module__checked___8pype", "cardDone": "styles-module__cardDone___-m4w-", "backBtn": "styles-module__backBtn___PTIAl", "detailView": "styles-module__detailView___36cvH", "detailHeader": "styles-module__detailHeader___Hepgq", "detailTitle": "styles-module__detailTitle___7TvrX", "detailScreenshot": "styles-module__detailScreenshot___UPF0f", "commentsList": "styles-module__commentsList___5Uigg", "commentItem": "styles-module__commentItem___5u78u", "commentAvatar": "styles-module__commentAvatar___OatKg", "commentBody": "styles-module__commentBody___gmv1J", "commentMeta": "styles-module__commentMeta___JNJa3", "commentAuthorName": "styles-module__commentAuthorName___XNVRk", "commentTime": "styles-module__commentTime___CokGf", "commentContent": "styles-module__commentContent___yMiLR", "loadingComments": "styles-module__loadingComments___zpATD", "noComments": "styles-module__noComments___kvl90", "replyBox": "styles-module__replyBox___FO-XS", "replyInput": "styles-module__replyInput___k8C9e", "sendBtn": "styles-module__sendBtn___pBzWa", "commentImage": "styles-module__commentImage___LuH8X", "commentFileCard": "styles-module__commentFileCard___XE44y", "commentFileIcon": "styles-module__commentFileIcon___G58-y", "commentFileInfo": "styles-module__commentFileInfo___OFIhR", "commentFileName": "styles-module__commentFileName___NUoII", "commentFileSize": "styles-module__commentFileSize___sokU8", "filePreviewOverlay": "styles-module__filePreviewOverlay___5RxYd", "filePreviewModal": "styles-module__filePreviewModal___MGJLW", "filePreviewHeader": "styles-module__filePreviewHeader___E9SWJ", "filePreviewName": "styles-module__filePreviewName___z8t-L", "filePreviewActions": "styles-module__filePreviewActions___weizo", "filePreviewOpen": "styles-module__filePreviewOpen___JpaEs", "filePreviewClose": "styles-module__filePreviewClose___TFcbr", "filePreviewBody": "styles-module__filePreviewBody___gwg1S", "filePreviewIframe": "styles-module__filePreviewIframe___OQ3Oo", "filePreviewFallback": "styles-module__filePreviewFallback___U1rB2", "filePreviewFallbackIcon": "styles-module__filePreviewFallbackIcon___0--41", "lightbox": "styles-module__lightbox___8CDdt", "lightboxClose": "styles-module__lightboxClose___VGfjh" };
|
|
2989
|
+
var css5 = '@keyframes styles-module__slideIn___0o0s- {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0);\n }\n}\n@keyframes styles-module__slideOut___nKrBX {\n from {\n transform: translateX(0);\n }\n to {\n transform: translateX(100%);\n }\n}\n@keyframes styles-module__fadeIn___j09Ts {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n.styles-module__backdrop___zYhcU {\n position: fixed;\n inset: 0;\n z-index: 100003;\n animation: styles-module__fadeIn___j09Ts 0.15s ease-out;\n}\n\n.styles-module__panel___6YS8k {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n width: 420px;\n max-width: 100vw;\n background: #fafafa;\n z-index: 100004;\n display: flex;\n flex-direction: column;\n box-shadow: -4px 0 24px rgba(0, 0, 0, 0.08);\n animation: styles-module__slideIn___0o0s- 0.2s ease-out;\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;\n -webkit-font-smoothing: antialiased;\n}\n.styles-module__panel___6YS8k.styles-module__exiting___6A-Ag {\n animation: styles-module__slideOut___nKrBX 0.15s ease-in forwards;\n}\n\n.styles-module__header___fBbGz {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 16px 20px;\n border-bottom: 1px solid #e5e7eb;\n background: #fff;\n flex-shrink: 0;\n}\n\n.styles-module__headerLeft___e0YLf {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n\n.styles-module__headerTitle___oEPJa {\n font-size: 14px;\n font-weight: 600;\n color: #18181b;\n}\n\n.styles-module__closeBtn___-H8ra {\n width: 32px;\n height: 32px;\n border: none;\n background: none;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 6px;\n color: #6b7280;\n transition: background 0.12s, color 0.12s;\n}\n.styles-module__closeBtn___-H8ra:hover {\n background: #f3f4f6;\n color: #18181b;\n}\n.styles-module__closeBtn___-H8ra svg {\n width: 18px;\n height: 18px;\n}\n\n.styles-module__tabs___nfuX7 {\n display: flex;\n padding: 0 20px;\n gap: 0;\n border-bottom: 1px solid #e5e7eb;\n background: #fff;\n flex-shrink: 0;\n}\n\n.styles-module__tab___Hc-jn {\n padding: 10px 16px;\n font-size: 13px;\n font-weight: 500;\n color: #6b7280;\n border: none;\n background: none;\n cursor: pointer;\n border-bottom: 2px solid transparent;\n transition: color 0.12s, border-color 0.12s;\n font-family: inherit;\n}\n.styles-module__tab___Hc-jn:hover {\n color: #374151;\n}\n.styles-module__tab___Hc-jn.styles-module__active___ZQzA5 {\n color: #18181b;\n border-bottom-color: #18181b;\n}\n\n.styles-module__tabBadge___IdFDQ {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n min-width: 18px;\n height: 18px;\n border-radius: 9px;\n background: #e5e7eb;\n color: #374151;\n font-size: 11px;\n font-weight: 600;\n padding: 0 5px;\n margin-left: 6px;\n}\n\n.styles-module__statusFilter___qtBXs {\n display: flex;\n gap: 6px;\n padding: 10px 20px;\n border-bottom: 1px solid #f3f4f6;\n background: #fff;\n flex-shrink: 0;\n}\n\n.styles-module__filterChip___l2s74 {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n padding: 4px 10px;\n font-size: 12px;\n font-weight: 500;\n color: #6b7280;\n background: #f3f4f6;\n border: 1px solid transparent;\n border-radius: 16px;\n cursor: pointer;\n transition: all 0.12s;\n font-family: inherit;\n}\n.styles-module__filterChip___l2s74:hover {\n color: #374151;\n background: #e5e7eb;\n}\n.styles-module__filterChip___l2s74.styles-module__active___ZQzA5 {\n color: #18181b;\n background: #fff;\n border-color: #d1d5db;\n}\n\n.styles-module__filterCount___KukiQ {\n font-size: 11px;\n font-weight: 600;\n color: inherit;\n opacity: 0.7;\n}\n\n.styles-module__content___L2lRw {\n flex: 1;\n overflow-y: auto;\n padding: 12px;\n}\n.styles-module__content___L2lRw::-webkit-scrollbar {\n width: 4px;\n}\n.styles-module__content___L2lRw::-webkit-scrollbar-thumb {\n background: #d1d5db;\n border-radius: 2px;\n}\n\n.styles-module__card___F8qwd {\n background: #fff;\n border-radius: 12px;\n border: 1px solid #e5e7eb;\n margin-bottom: 12px;\n overflow: hidden;\n transition: box-shadow 0.12s;\n cursor: pointer;\n}\n.styles-module__card___F8qwd:hover {\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);\n}\n\n.styles-module__cardHeader___QOVGR {\n padding: 14px 16px 8px;\n display: flex;\n align-items: flex-start;\n gap: 10px;\n}\n\n.styles-module__cardAvatar___FfKmW {\n width: 24px;\n height: 24px;\n border-radius: 50%;\n background: #16a34a;\n color: #fff;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 11px;\n font-weight: 600;\n flex-shrink: 0;\n}\n\n.styles-module__cardInfo___BmrdF {\n flex: 1;\n min-width: 0;\n}\n\n.styles-module__cardMeta___7p9KD {\n display: flex;\n align-items: center;\n gap: 6px;\n margin-bottom: 4px;\n}\n\n.styles-module__cardAuthor___YvnuR {\n font-size: 13px;\n font-weight: 600;\n color: #18181b;\n}\n\n.styles-module__cardTime___N1Png {\n font-size: 12px;\n color: #9ca3af;\n}\n\n.styles-module__cardActions___7QF72 {\n display: flex;\n gap: 2px;\n flex-shrink: 0;\n}\n\n.styles-module__cardAction___t4b3V {\n width: 26px;\n height: 26px;\n border: none;\n background: none;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 5px;\n color: #9ca3af;\n transition: background 0.12s, color 0.12s;\n padding: 0;\n}\n.styles-module__cardAction___t4b3V:hover {\n background: #f3f4f6;\n color: #374151;\n}\n.styles-module__cardAction___t4b3V svg {\n width: 14px;\n height: 14px;\n}\n\n.styles-module__cardTitle___xJxDN {\n font-size: 13px;\n color: #1a1a1a;\n line-height: 1.5;\n padding: 0 16px 8px;\n}\n\n.styles-module__cardScreenshot___I5-QL {\n margin: 0 16px 8px;\n border-radius: 8px;\n border: 1px solid #e5e7eb;\n overflow: hidden;\n position: relative;\n max-height: 160px;\n}\n.styles-module__cardScreenshot___I5-QL img {\n width: 100%;\n height: auto;\n display: block;\n object-fit: cover;\n}\n\n.styles-module__cardRoute___U4gB6 {\n margin: 0 16px 10px;\n padding: 8px 12px;\n background: #f9fafb;\n border: 1px solid #f3f4f6;\n border-radius: 8px;\n font-size: 12px;\n color: #6b7280;\n line-height: 1.4;\n display: flex;\n align-items: center;\n gap: 6px;\n cursor: pointer;\n transition: background 0.12s, border-color 0.12s;\n}\n.styles-module__cardRoute___U4gB6:hover {\n background: #f3f4f6;\n border-color: #d1d5db;\n color: #3b82f6;\n}\n.styles-module__cardRoute___U4gB6:hover .styles-module__cardRoutePath___zP-fh {\n color: #3b82f6;\n}\n.styles-module__cardRoute___U4gB6:hover .styles-module__cardRouteIcon___SBqGj {\n color: #3b82f6;\n}\n\n.styles-module__cardRouteName___BDH75 {\n font-weight: 500;\n color: #374151;\n}\n\n.styles-module__cardRoutePath___zP-fh {\n flex: 1;\n min-width: 0;\n color: #9ca3af;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n transition: color 0.12s;\n}\n\n.styles-module__cardRouteIcon___SBqGj {\n flex-shrink: 0;\n color: #9ca3af;\n transition: color 0.12s;\n}\n\n.styles-module__cardStatusTime___S62W1 {\n padding: 0 16px 6px;\n display: flex;\n flex-direction: column;\n gap: 2px;\n}\n.styles-module__cardStatusTime___S62W1 span {\n font-size: 11px;\n color: #9ca3af;\n}\n\n.styles-module__cardFooter___wfPa4 {\n padding: 8px 16px 12px;\n display: flex;\n align-items: center;\n gap: 6px;\n}\n\n.styles-module__cardReplyDot___YnqzI {\n width: 8px;\n height: 8px;\n border-radius: 50%;\n background: #16a34a;\n flex-shrink: 0;\n}\n\n.styles-module__cardReplyCount___O1khL {\n font-size: 12px;\n font-weight: 500;\n color: #374151;\n}\n\n.styles-module__statusDot___l4IHG {\n width: 6px;\n height: 6px;\n border-radius: 50%;\n flex-shrink: 0;\n}\n.styles-module__statusDot___l4IHG.styles-module__todo___894P6 {\n background: #f59e0b;\n}\n.styles-module__statusDot___l4IHG.styles-module__inProgress___IZ1mJ {\n background: #3b82f6;\n}\n.styles-module__statusDot___l4IHG.styles-module__done___n4cWP {\n background: #16a34a;\n}\n\n.styles-module__empty___IADrw {\n text-align: center;\n padding: 48px 20px;\n color: #9ca3af;\n font-size: 13px;\n line-height: 1.6;\n}\n\n.styles-module__emptyIcon___1x5wT {\n width: 48px;\n height: 48px;\n border-radius: 50%;\n background: #f3f4f6;\n display: flex;\n align-items: center;\n justify-content: center;\n margin: 0 auto 12px;\n color: #9ca3af;\n}\n.styles-module__emptyIcon___1x5wT svg {\n width: 24px;\n height: 24px;\n}\n\n.styles-module__checkBtn___KjHxm {\n width: 28px;\n height: 28px;\n border: 2px solid #d1d5db;\n border-radius: 50%;\n background: none;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n color: transparent;\n transition: all 0.15s;\n padding: 0;\n flex-shrink: 0;\n}\n.styles-module__checkBtn___KjHxm svg {\n width: 14px;\n height: 14px;\n}\n.styles-module__checkBtn___KjHxm:hover {\n border-color: #16a34a;\n color: #16a34a;\n}\n.styles-module__checkBtn___KjHxm.styles-module__checked___8pype {\n border-color: #16a34a;\n background: #16a34a;\n color: #fff;\n}\n\n.styles-module__cardDone___-m4w- {\n opacity: 0.6;\n}\n.styles-module__cardDone___-m4w- .styles-module__cardTitle___xJxDN {\n text-decoration: line-through;\n color: #9ca3af;\n}\n\n.styles-module__backBtn___PTIAl {\n width: 28px;\n height: 28px;\n border: none;\n background: none;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 6px;\n color: #6b7280;\n transition: background 0.12s, color 0.12s;\n padding: 0;\n flex-shrink: 0;\n}\n.styles-module__backBtn___PTIAl:hover {\n background: #f3f4f6;\n color: #18181b;\n}\n\n.styles-module__detailView___36cvH {\n flex: 1;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n}\n\n.styles-module__detailHeader___Hepgq {\n display: flex;\n gap: 10px;\n padding: 16px 20px;\n border-bottom: 1px solid #f3f4f6;\n}\n\n.styles-module__detailTitle___7TvrX {\n font-size: 13px;\n color: #1a1a1a;\n line-height: 1.5;\n margin-top: 4px;\n}\n\n.styles-module__detailScreenshot___UPF0f {\n margin: 0 20px 0;\n border-radius: 8px;\n border: 1px solid #e5e7eb;\n overflow: hidden;\n max-height: 180px;\n}\n.styles-module__detailScreenshot___UPF0f img {\n width: 100%;\n height: auto;\n display: block;\n object-fit: cover;\n}\n\n.styles-module__commentsList___5Uigg {\n flex: 1;\n overflow-y: auto;\n padding: 8px 0;\n}\n.styles-module__commentsList___5Uigg::-webkit-scrollbar {\n width: 4px;\n}\n.styles-module__commentsList___5Uigg::-webkit-scrollbar-thumb {\n background: #d1d5db;\n border-radius: 2px;\n}\n\n.styles-module__commentItem___5u78u {\n display: flex;\n gap: 10px;\n padding: 10px 20px;\n}\n.styles-module__commentItem___5u78u:hover {\n background: #f9fafb;\n}\n\n.styles-module__commentAvatar___OatKg {\n width: 24px;\n height: 24px;\n border-radius: 50%;\n background: #16a34a;\n color: #fff;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 11px;\n font-weight: 600;\n flex-shrink: 0;\n}\n\n.styles-module__commentBody___gmv1J {\n flex: 1;\n min-width: 0;\n}\n\n.styles-module__commentMeta___JNJa3 {\n display: flex;\n gap: 6px;\n align-items: center;\n margin-bottom: 2px;\n}\n\n.styles-module__commentAuthorName___XNVRk {\n font-size: 13px;\n font-weight: 600;\n color: #1a1a1a;\n}\n\n.styles-module__commentTime___CokGf {\n font-size: 12px;\n color: #9ca3af;\n}\n\n.styles-module__commentContent___yMiLR {\n font-size: 13px;\n color: #374151;\n line-height: 1.5;\n white-space: pre-wrap;\n word-break: break-word;\n}\n\n.styles-module__loadingComments___zpATD, .styles-module__noComments___kvl90 {\n text-align: center;\n padding: 24px 20px;\n color: #9ca3af;\n font-size: 13px;\n}\n\n.styles-module__replyBox___FO-XS {\n display: flex;\n align-items: flex-end;\n gap: 8px;\n padding: 12px 20px;\n border-top: 1px solid #f3f4f6;\n background: #fff;\n}\n\n.styles-module__replyInput___k8C9e {\n flex: 1;\n border: 1px solid #e5e7eb;\n border-radius: 8px;\n padding: 8px 12px;\n font-size: 13px;\n font-family: inherit;\n color: #1a1a1a;\n resize: none;\n outline: none;\n min-height: 20px;\n max-height: 80px;\n line-height: 1.5;\n transition: border-color 0.12s;\n}\n.styles-module__replyInput___k8C9e:focus {\n border-color: #18181b;\n}\n.styles-module__replyInput___k8C9e::placeholder {\n color: #9ca3af;\n}\n\n.styles-module__sendBtn___pBzWa {\n width: 32px;\n height: 32px;\n border: none;\n background: none;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 6px;\n color: #d1d5db;\n transition: color 0.12s;\n padding: 0;\n flex-shrink: 0;\n}\n.styles-module__sendBtn___pBzWa.styles-module__active___ZQzA5 {\n color: #3b82f6;\n}\n.styles-module__sendBtn___pBzWa:hover {\n color: #3b82f6;\n}\n\n.styles-module__commentImage___LuH8X {\n margin-top: 6px;\n border-radius: 8px;\n border: 1px solid #e5e7eb;\n overflow: hidden;\n max-width: 240px;\n cursor: pointer;\n transition: opacity 0.12s;\n}\n.styles-module__commentImage___LuH8X:hover {\n opacity: 0.9;\n}\n.styles-module__commentImage___LuH8X img {\n width: 100%;\n height: auto;\n display: block;\n}\n\n.styles-module__commentFileCard___XE44y {\n display: flex;\n align-items: center;\n gap: 8px;\n margin-top: 6px;\n padding: 8px 10px;\n border-radius: 8px;\n border: 1px solid #e5e7eb;\n background: #f9fafb;\n cursor: pointer;\n transition: background 0.12s;\n max-width: 240px;\n}\n.styles-module__commentFileCard___XE44y:hover {\n background: #f3f4f6;\n}\n\n.styles-module__commentFileIcon___G58-y {\n width: 32px;\n height: 32px;\n border-radius: 6px;\n background: #e5e7eb;\n color: #374151;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 10px;\n font-weight: 700;\n flex-shrink: 0;\n letter-spacing: 0.5px;\n}\n\n.styles-module__commentFileInfo___OFIhR {\n flex: 1;\n min-width: 0;\n display: flex;\n flex-direction: column;\n gap: 1px;\n}\n\n.styles-module__commentFileName___NUoII {\n font-size: 12px;\n font-weight: 500;\n color: #1a1a1a;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.styles-module__commentFileSize___sokU8 {\n font-size: 11px;\n color: #9ca3af;\n}\n\n.styles-module__filePreviewOverlay___5RxYd {\n position: fixed;\n inset: 0;\n z-index: 2147483647;\n background: rgba(0, 0, 0, 0.6);\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.styles-module__filePreviewModal___MGJLW {\n width: 90vw;\n max-width: 960px;\n height: 80vh;\n background: #fff;\n border-radius: 12px;\n box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);\n display: flex;\n flex-direction: column;\n overflow: hidden;\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;\n}\n\n.styles-module__filePreviewHeader___E9SWJ {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 12px 16px;\n border-bottom: 1px solid #e5e7eb;\n flex-shrink: 0;\n}\n\n.styles-module__filePreviewName___z8t-L {\n font-size: 14px;\n font-weight: 600;\n color: #18181b;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n flex: 1;\n min-width: 0;\n}\n\n.styles-module__filePreviewActions___weizo {\n display: flex;\n align-items: center;\n gap: 8px;\n flex-shrink: 0;\n}\n\n.styles-module__filePreviewOpen___JpaEs {\n display: flex;\n align-items: center;\n gap: 4px;\n font-size: 12px;\n font-weight: 500;\n color: #3b82f6;\n text-decoration: none;\n padding: 4px 8px;\n border-radius: 6px;\n transition: background 0.12s;\n}\n.styles-module__filePreviewOpen___JpaEs:hover {\n background: #eff6ff;\n}\n\n.styles-module__filePreviewClose___TFcbr {\n width: 28px;\n height: 28px;\n border: none;\n background: none;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 6px;\n color: #6b7280;\n font-size: 18px;\n transition: background 0.12s, color 0.12s;\n}\n.styles-module__filePreviewClose___TFcbr:hover {\n background: #f3f4f6;\n color: #18181b;\n}\n\n.styles-module__filePreviewBody___gwg1S {\n flex: 1;\n overflow: hidden;\n}\n\n.styles-module__filePreviewIframe___OQ3Oo {\n width: 100%;\n height: 100%;\n border: none;\n}\n\n.styles-module__filePreviewFallback___U1rB2 {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n height: 100%;\n gap: 12px;\n color: #6b7280;\n font-size: 14px;\n}\n.styles-module__filePreviewFallback___U1rB2 a {\n color: #3b82f6;\n text-decoration: none;\n font-weight: 500;\n}\n.styles-module__filePreviewFallback___U1rB2 a:hover {\n text-decoration: underline;\n}\n\n.styles-module__filePreviewFallbackIcon___0--41 {\n width: 56px;\n height: 56px;\n border-radius: 12px;\n background: #f3f4f6;\n color: #6b7280;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 16px;\n font-weight: 700;\n}\n\n.styles-module__lightbox___8CDdt {\n position: fixed;\n inset: 0;\n z-index: 2147483647;\n background: rgba(0, 0, 0, 0.8);\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: zoom-out;\n}\n.styles-module__lightbox___8CDdt img {\n max-width: 90vw;\n max-height: 90vh;\n border-radius: 8px;\n box-shadow: 0 8px 32px rgba(0, 0, 0, 0.4);\n cursor: default;\n}\n\n.styles-module__lightboxClose___VGfjh {\n position: absolute;\n top: 16px;\n right: 16px;\n width: 36px;\n height: 36px;\n border-radius: 50%;\n background: rgba(255, 255, 255, 0.15);\n color: #fff;\n border: none;\n cursor: pointer;\n font-size: 20px;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.styles-module__lightboxClose___VGfjh:hover {\n background: rgba(255, 255, 255, 0.25);\n}\n\n.styles-module__historyFilter___IoWL4 {\n display: flex;\n align-items: center;\n gap: 4px;\n padding: 10px 20px;\n border-bottom: 1px solid #f3f4f6;\n background: #fff;\n flex-shrink: 0;\n}\n\n.styles-module__historyDateWrap___reBzb {\n position: relative;\n}\n\n.styles-module__filterChipClear___Sx4c3 {\n width: 22px;\n height: 22px;\n border: none;\n background: #e5e7eb;\n border-radius: 50%;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 13px;\n color: #6b7280;\n line-height: 1;\n transition: background 0.12s;\n font-family: inherit;\n}\n.styles-module__filterChipClear___Sx4c3:hover {\n background: #d1d5db;\n}\n\n.styles-module__datePopover___AYzLr {\n position: absolute;\n top: calc(100% + 4px);\n left: 0;\n z-index: 10;\n background: #fff;\n border: 1px solid #e5e7eb;\n border-radius: 10px;\n box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);\n padding: 8px;\n}\n\n.styles-module__dateInput___Ofr3Y {\n border: 1px solid #e5e7eb;\n border-radius: 6px;\n padding: 6px 10px;\n font-size: 13px;\n font-family: inherit;\n color: #1a1a1a;\n outline: none;\n cursor: pointer;\n}\n.styles-module__dateInput___Ofr3Y:focus {\n border-color: #18181b;\n}\n\n.styles-module__historyItem___G4kbt {\n display: flex;\n gap: 12px;\n padding: 12px 20px;\n position: relative;\n transition: background 0.12s;\n}\n.styles-module__historyItem___G4kbt:hover {\n background: #f9fafb;\n}\n.styles-module__historyItem___G4kbt:not(:last-child)::before {\n content: "";\n position: absolute;\n left: 29px;\n top: 24px;\n bottom: -12px;\n width: 1px;\n background: #e5e7eb;\n}\n\n.styles-module__historyDot___0z439 {\n width: 10px;\n height: 10px;\n border-radius: 50%;\n flex-shrink: 0;\n margin-top: 4px;\n background: #d1d5db;\n}\n\n.styles-module__historyDot_created___G-qjM {\n background: #6366f1;\n}\n\n.styles-module__historyDot_started___0FJa0 {\n background: #3b82f6;\n}\n\n.styles-module__historyDot_completed___q-WGH {\n background: #16a34a;\n}\n\n.styles-module__historyBody___i-k1p {\n flex: 1;\n min-width: 0;\n}\n\n.styles-module__historyMeta___khk0e {\n display: flex;\n align-items: center;\n gap: 8px;\n margin-bottom: 2px;\n}\n\n.styles-module__historyEvent___P6rQ5 {\n font-size: 12px;\n font-weight: 600;\n color: #374151;\n}\n\n.styles-module__historyTime___bWpM4 {\n font-size: 11px;\n color: #9ca3af;\n}\n\n.styles-module__historyTitle___gUvXd {\n font-size: 13px;\n color: #1a1a1a;\n line-height: 1.4;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.styles-module__historyUrl___5xfKq {\n font-size: 11px;\n color: #9ca3af;\n margin-top: 2px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}';
|
|
2990
|
+
var classNames5 = { "backdrop": "styles-module__backdrop___zYhcU", "fadeIn": "styles-module__fadeIn___j09Ts", "panel": "styles-module__panel___6YS8k", "slideIn": "styles-module__slideIn___0o0s-", "exiting": "styles-module__exiting___6A-Ag", "slideOut": "styles-module__slideOut___nKrBX", "header": "styles-module__header___fBbGz", "headerLeft": "styles-module__headerLeft___e0YLf", "headerTitle": "styles-module__headerTitle___oEPJa", "closeBtn": "styles-module__closeBtn___-H8ra", "tabs": "styles-module__tabs___nfuX7", "tab": "styles-module__tab___Hc-jn", "active": "styles-module__active___ZQzA5", "tabBadge": "styles-module__tabBadge___IdFDQ", "statusFilter": "styles-module__statusFilter___qtBXs", "filterChip": "styles-module__filterChip___l2s74", "filterCount": "styles-module__filterCount___KukiQ", "content": "styles-module__content___L2lRw", "card": "styles-module__card___F8qwd", "cardHeader": "styles-module__cardHeader___QOVGR", "cardAvatar": "styles-module__cardAvatar___FfKmW", "cardInfo": "styles-module__cardInfo___BmrdF", "cardMeta": "styles-module__cardMeta___7p9KD", "cardAuthor": "styles-module__cardAuthor___YvnuR", "cardTime": "styles-module__cardTime___N1Png", "cardActions": "styles-module__cardActions___7QF72", "cardAction": "styles-module__cardAction___t4b3V", "cardTitle": "styles-module__cardTitle___xJxDN", "cardScreenshot": "styles-module__cardScreenshot___I5-QL", "cardRoute": "styles-module__cardRoute___U4gB6", "cardRoutePath": "styles-module__cardRoutePath___zP-fh", "cardRouteIcon": "styles-module__cardRouteIcon___SBqGj", "cardRouteName": "styles-module__cardRouteName___BDH75", "cardStatusTime": "styles-module__cardStatusTime___S62W1", "cardFooter": "styles-module__cardFooter___wfPa4", "cardReplyDot": "styles-module__cardReplyDot___YnqzI", "cardReplyCount": "styles-module__cardReplyCount___O1khL", "statusDot": "styles-module__statusDot___l4IHG", "todo": "styles-module__todo___894P6", "inProgress": "styles-module__inProgress___IZ1mJ", "done": "styles-module__done___n4cWP", "empty": "styles-module__empty___IADrw", "emptyIcon": "styles-module__emptyIcon___1x5wT", "checkBtn": "styles-module__checkBtn___KjHxm", "checked": "styles-module__checked___8pype", "cardDone": "styles-module__cardDone___-m4w-", "backBtn": "styles-module__backBtn___PTIAl", "detailView": "styles-module__detailView___36cvH", "detailHeader": "styles-module__detailHeader___Hepgq", "detailTitle": "styles-module__detailTitle___7TvrX", "detailScreenshot": "styles-module__detailScreenshot___UPF0f", "commentsList": "styles-module__commentsList___5Uigg", "commentItem": "styles-module__commentItem___5u78u", "commentAvatar": "styles-module__commentAvatar___OatKg", "commentBody": "styles-module__commentBody___gmv1J", "commentMeta": "styles-module__commentMeta___JNJa3", "commentAuthorName": "styles-module__commentAuthorName___XNVRk", "commentTime": "styles-module__commentTime___CokGf", "commentContent": "styles-module__commentContent___yMiLR", "loadingComments": "styles-module__loadingComments___zpATD", "noComments": "styles-module__noComments___kvl90", "replyBox": "styles-module__replyBox___FO-XS", "replyInput": "styles-module__replyInput___k8C9e", "sendBtn": "styles-module__sendBtn___pBzWa", "commentImage": "styles-module__commentImage___LuH8X", "commentFileCard": "styles-module__commentFileCard___XE44y", "commentFileIcon": "styles-module__commentFileIcon___G58-y", "commentFileInfo": "styles-module__commentFileInfo___OFIhR", "commentFileName": "styles-module__commentFileName___NUoII", "commentFileSize": "styles-module__commentFileSize___sokU8", "filePreviewOverlay": "styles-module__filePreviewOverlay___5RxYd", "filePreviewModal": "styles-module__filePreviewModal___MGJLW", "filePreviewHeader": "styles-module__filePreviewHeader___E9SWJ", "filePreviewName": "styles-module__filePreviewName___z8t-L", "filePreviewActions": "styles-module__filePreviewActions___weizo", "filePreviewOpen": "styles-module__filePreviewOpen___JpaEs", "filePreviewClose": "styles-module__filePreviewClose___TFcbr", "filePreviewBody": "styles-module__filePreviewBody___gwg1S", "filePreviewIframe": "styles-module__filePreviewIframe___OQ3Oo", "filePreviewFallback": "styles-module__filePreviewFallback___U1rB2", "filePreviewFallbackIcon": "styles-module__filePreviewFallbackIcon___0--41", "lightbox": "styles-module__lightbox___8CDdt", "lightboxClose": "styles-module__lightboxClose___VGfjh", "historyFilter": "styles-module__historyFilter___IoWL4", "historyDateWrap": "styles-module__historyDateWrap___reBzb", "filterChipClear": "styles-module__filterChipClear___Sx4c3", "datePopover": "styles-module__datePopover___AYzLr", "dateInput": "styles-module__dateInput___Ofr3Y", "historyItem": "styles-module__historyItem___G4kbt", "historyDot": "styles-module__historyDot___0z439", "historyDot_created": "styles-module__historyDot_created___G-qjM", "historyDot_started": "styles-module__historyDot_started___0FJa0", "historyDot_completed": "styles-module__historyDot_completed___q-WGH", "historyBody": "styles-module__historyBody___i-k1p", "historyMeta": "styles-module__historyMeta___khk0e", "historyEvent": "styles-module__historyEvent___P6rQ5", "historyTime": "styles-module__historyTime___bWpM4", "historyTitle": "styles-module__historyTitle___gUvXd", "historyUrl": "styles-module__historyUrl___5xfKq" };
|
|
2991
2991
|
if (typeof document !== "undefined") {
|
|
2992
2992
|
let style = document.getElementById("impakers-debug-styles-inbox-panel-styles");
|
|
2993
2993
|
if (!style) {
|
|
@@ -3086,14 +3086,14 @@ function formatTime2(dateStr) {
|
|
|
3086
3086
|
const date = new Date(dateStr);
|
|
3087
3087
|
const diff = Date.now() - date.getTime();
|
|
3088
3088
|
const pad = (n) => String(n).padStart(2, "0");
|
|
3089
|
-
const abs = `${
|
|
3089
|
+
const abs = `${date.getMonth() + 1}/${date.getDate()} ${pad(date.getHours())}:${pad(date.getMinutes())}`;
|
|
3090
3090
|
const m = Math.floor(diff / 6e4);
|
|
3091
|
-
if (m < 1) return `${abs} (
|
|
3092
|
-
if (m < 60) return `${abs} (${m}
|
|
3091
|
+
if (m < 1) return `${abs} (\uBC29\uAE08)`;
|
|
3092
|
+
if (m < 60) return `${abs} (${m}\uBD84 \uC804)`;
|
|
3093
3093
|
const h = Math.floor(m / 60);
|
|
3094
|
-
if (h < 24) return `${abs} (${h}
|
|
3094
|
+
if (h < 24) return `${abs} (${h}\uC2DC\uAC04 \uC804)`;
|
|
3095
3095
|
const d = Math.floor(h / 24);
|
|
3096
|
-
return `${abs} (${d}
|
|
3096
|
+
return `${abs} (${d}\uC77C \uC804)`;
|
|
3097
3097
|
}
|
|
3098
3098
|
function getInitials2(name) {
|
|
3099
3099
|
return name.slice(0, 1).toUpperCase();
|
|
@@ -3110,6 +3110,9 @@ function InboxPanel({
|
|
|
3110
3110
|
}) {
|
|
3111
3111
|
const [tab, setTab] = (0, import_react5.useState)("page");
|
|
3112
3112
|
const [statusFilter, setStatusFilter] = (0, import_react5.useState)("todo");
|
|
3113
|
+
const [historyDate, setHistoryDate] = (0, import_react5.useState)("");
|
|
3114
|
+
const [showDatePicker, setShowDatePicker] = (0, import_react5.useState)(false);
|
|
3115
|
+
const datePickerRef = (0, import_react5.useRef)(null);
|
|
3113
3116
|
const [exiting, setExiting] = (0, import_react5.useState)(false);
|
|
3114
3117
|
const [selectedItem, setSelectedItem] = (0, import_react5.useState)(null);
|
|
3115
3118
|
const [comments, setComments] = (0, import_react5.useState)([]);
|
|
@@ -3158,6 +3161,16 @@ function InboxPanel({
|
|
|
3158
3161
|
(0, import_react5.useEffect)(() => {
|
|
3159
3162
|
commentsEndRef.current?.scrollIntoView({ behavior: "smooth" });
|
|
3160
3163
|
}, [comments.length]);
|
|
3164
|
+
(0, import_react5.useEffect)(() => {
|
|
3165
|
+
if (!showDatePicker) return;
|
|
3166
|
+
const handler = (e) => {
|
|
3167
|
+
if (datePickerRef.current && !datePickerRef.current.contains(e.target)) {
|
|
3168
|
+
setShowDatePicker(false);
|
|
3169
|
+
}
|
|
3170
|
+
};
|
|
3171
|
+
document.addEventListener("mousedown", handler);
|
|
3172
|
+
return () => document.removeEventListener("mousedown", handler);
|
|
3173
|
+
}, [showDatePicker]);
|
|
3161
3174
|
(0, import_react5.useEffect)(() => {
|
|
3162
3175
|
if (selectedItem) replyRef.current?.focus();
|
|
3163
3176
|
}, [selectedItem]);
|
|
@@ -3180,11 +3193,48 @@ function InboxPanel({
|
|
|
3180
3193
|
}
|
|
3181
3194
|
if (e.key === "Escape") handleClose();
|
|
3182
3195
|
}, [handleSendReply, handleClose]);
|
|
3183
|
-
const rawItems = tab === "page" ? pageItems : allItems;
|
|
3196
|
+
const rawItems = tab === "page" ? pageItems : tab === "all" ? allItems : [];
|
|
3184
3197
|
const items = rawItems.filter((item) => item.status === statusFilter);
|
|
3185
3198
|
const todoCount = rawItems.filter((item) => item.status === "todo").length;
|
|
3186
3199
|
const inProgressCount = rawItems.filter((item) => item.status === "in_progress").length;
|
|
3187
3200
|
const doneCount = rawItems.filter((item) => item.status === "done").length;
|
|
3201
|
+
const historyEvents = (0, import_react5.useMemo)(() => {
|
|
3202
|
+
const allSrc = allItems.length > 0 ? allItems : pageItems;
|
|
3203
|
+
const events = [];
|
|
3204
|
+
for (const item of allSrc) {
|
|
3205
|
+
events.push({
|
|
3206
|
+
id: item.id,
|
|
3207
|
+
title: item.title,
|
|
3208
|
+
authorName: item.authorName,
|
|
3209
|
+
event: "created",
|
|
3210
|
+
timestamp: item.createdAt,
|
|
3211
|
+
feedbackUrl: item.feedbackUrl
|
|
3212
|
+
});
|
|
3213
|
+
if (item.startedAt) {
|
|
3214
|
+
events.push({
|
|
3215
|
+
id: item.id,
|
|
3216
|
+
title: item.title,
|
|
3217
|
+
authorName: item.authorName,
|
|
3218
|
+
event: "started",
|
|
3219
|
+
timestamp: item.startedAt,
|
|
3220
|
+
feedbackUrl: item.feedbackUrl
|
|
3221
|
+
});
|
|
3222
|
+
}
|
|
3223
|
+
if (item.completedAt) {
|
|
3224
|
+
events.push({
|
|
3225
|
+
id: item.id,
|
|
3226
|
+
title: item.title,
|
|
3227
|
+
authorName: item.authorName,
|
|
3228
|
+
event: "completed",
|
|
3229
|
+
timestamp: item.completedAt,
|
|
3230
|
+
feedbackUrl: item.feedbackUrl
|
|
3231
|
+
});
|
|
3232
|
+
}
|
|
3233
|
+
}
|
|
3234
|
+
const sorted = events.sort((a, b) => new Date(b.timestamp).getTime() - new Date(a.timestamp).getTime());
|
|
3235
|
+
if (!historyDate) return sorted;
|
|
3236
|
+
return sorted.filter((ev) => ev.timestamp.startsWith(historyDate));
|
|
3237
|
+
}, [allItems, pageItems, historyDate]);
|
|
3188
3238
|
if (typeof document === "undefined") return null;
|
|
3189
3239
|
return (0, import_react_dom.createPortal)(
|
|
3190
3240
|
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { "data-impakers-debug": "", children: [
|
|
@@ -3301,87 +3351,169 @@ function InboxPanel({
|
|
|
3301
3351
|
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("button", { className: `${styles_module_default5.tab} ${tab === "all" ? styles_module_default5.active : ""}`, onClick: () => setTab("all"), type: "button", children: [
|
|
3302
3352
|
"All",
|
|
3303
3353
|
allItems.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("span", { className: styles_module_default5.tabBadge, children: allItems.length })
|
|
3304
|
-
] })
|
|
3305
|
-
|
|
3306
|
-
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: styles_module_default5.statusFilter, children: [
|
|
3307
|
-
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
|
|
3308
|
-
"button",
|
|
3309
|
-
{
|
|
3310
|
-
className: `${styles_module_default5.filterChip} ${statusFilter === "todo" ? styles_module_default5.active : ""}`,
|
|
3311
|
-
onClick: () => setStatusFilter("todo"),
|
|
3312
|
-
type: "button",
|
|
3313
|
-
children: [
|
|
3314
|
-
"\uC9C4\uD589\uC804",
|
|
3315
|
-
todoCount > 0 && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("span", { className: styles_module_default5.filterCount, children: todoCount })
|
|
3316
|
-
]
|
|
3317
|
-
}
|
|
3318
|
-
),
|
|
3319
|
-
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
|
|
3320
|
-
"button",
|
|
3321
|
-
{
|
|
3322
|
-
className: `${styles_module_default5.filterChip} ${statusFilter === "in_progress" ? styles_module_default5.active : ""}`,
|
|
3323
|
-
onClick: () => setStatusFilter("in_progress"),
|
|
3324
|
-
type: "button",
|
|
3325
|
-
children: [
|
|
3326
|
-
"\uC9C4\uD589\uC911",
|
|
3327
|
-
inProgressCount > 0 && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("span", { className: styles_module_default5.filterCount, children: inProgressCount })
|
|
3328
|
-
]
|
|
3329
|
-
}
|
|
3330
|
-
),
|
|
3331
|
-
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
|
|
3332
|
-
"button",
|
|
3333
|
-
{
|
|
3334
|
-
className: `${styles_module_default5.filterChip} ${statusFilter === "done" ? styles_module_default5.active : ""}`,
|
|
3335
|
-
onClick: () => setStatusFilter("done"),
|
|
3336
|
-
type: "button",
|
|
3337
|
-
children: [
|
|
3338
|
-
"\uC644\uB8CC",
|
|
3339
|
-
doneCount > 0 && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("span", { className: styles_module_default5.filterCount, children: doneCount })
|
|
3340
|
-
]
|
|
3341
|
-
}
|
|
3342
|
-
)
|
|
3354
|
+
] }),
|
|
3355
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("button", { className: `${styles_module_default5.tab} ${tab === "history" ? styles_module_default5.active : ""}`, onClick: () => setTab("history"), type: "button", children: "History" })
|
|
3343
3356
|
] }),
|
|
3344
|
-
|
|
3345
|
-
/*
|
|
3346
|
-
|
|
3347
|
-
|
|
3348
|
-
|
|
3349
|
-
|
|
3350
|
-
|
|
3351
|
-
|
|
3352
|
-
|
|
3353
|
-
|
|
3357
|
+
tab === "history" ? (
|
|
3358
|
+
/* === History 뷰 === */
|
|
3359
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(import_jsx_runtime6.Fragment, { children: [
|
|
3360
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: styles_module_default5.historyFilter, children: [
|
|
3361
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: styles_module_default5.historyDateWrap, ref: datePickerRef, children: [
|
|
3362
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
|
|
3363
|
+
"button",
|
|
3364
|
+
{
|
|
3365
|
+
className: `${styles_module_default5.filterChip} ${historyDate ? styles_module_default5.active : ""}`,
|
|
3366
|
+
onClick: () => setShowDatePicker((v) => !v),
|
|
3367
|
+
type: "button",
|
|
3368
|
+
children: [
|
|
3369
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("svg", { viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "13", height: "13", children: [
|
|
3370
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("rect", { x: "3", y: "4", width: "18", height: "18", rx: "2", ry: "2" }),
|
|
3371
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("line", { x1: "16", y1: "2", x2: "16", y2: "6" }),
|
|
3372
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("line", { x1: "8", y1: "2", x2: "8", y2: "6" }),
|
|
3373
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("line", { x1: "3", y1: "10", x2: "21", y2: "10" })
|
|
3374
|
+
] }),
|
|
3375
|
+
historyDate ? `${new Date(historyDate).getMonth() + 1}/${new Date(historyDate).getDate()}` : "\uB0A0\uC9DC"
|
|
3376
|
+
]
|
|
3377
|
+
}
|
|
3378
|
+
),
|
|
3379
|
+
showDatePicker && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { className: styles_module_default5.datePopover, children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
|
|
3380
|
+
"input",
|
|
3381
|
+
{
|
|
3382
|
+
type: "date",
|
|
3383
|
+
value: historyDate,
|
|
3384
|
+
onChange: (e) => {
|
|
3385
|
+
setHistoryDate(e.target.value);
|
|
3386
|
+
setShowDatePicker(false);
|
|
3387
|
+
},
|
|
3388
|
+
className: styles_module_default5.dateInput,
|
|
3389
|
+
autoFocus: true
|
|
3390
|
+
}
|
|
3391
|
+
) })
|
|
3392
|
+
] }),
|
|
3393
|
+
historyDate && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
|
|
3394
|
+
"button",
|
|
3395
|
+
{
|
|
3396
|
+
className: styles_module_default5.filterChipClear,
|
|
3397
|
+
onClick: () => setHistoryDate(""),
|
|
3398
|
+
type: "button",
|
|
3399
|
+
title: "\uD544\uD130 \uCD08\uAE30\uD654",
|
|
3400
|
+
children: "\xD7"
|
|
3401
|
+
}
|
|
3402
|
+
)
|
|
3403
|
+
] }),
|
|
3404
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { className: styles_module_default5.content, children: historyEvents.length === 0 ? /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: styles_module_default5.empty, children: [
|
|
3405
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { className: styles_module_default5.emptyIcon, children: /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("svg", { viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round", children: [
|
|
3406
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("circle", { cx: "12", cy: "12", r: "10" }),
|
|
3407
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("polyline", { points: "12 6 12 12 16 14" })
|
|
3408
|
+
] }) }),
|
|
3409
|
+
"\uD788\uC2A4\uD1A0\uB9AC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4"
|
|
3410
|
+
] }) : historyEvents.map((ev, i) => /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: styles_module_default5.historyItem, children: [
|
|
3411
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { className: `${styles_module_default5.historyDot} ${styles_module_default5[`historyDot_${ev.event}`]}` }),
|
|
3412
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: styles_module_default5.historyBody, children: [
|
|
3413
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: styles_module_default5.historyMeta, children: [
|
|
3414
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("span", { className: styles_module_default5.historyEvent, children: [
|
|
3415
|
+
ev.event === "created" && "\uD53C\uB4DC\uBC31 \uC0DD\uC131",
|
|
3416
|
+
ev.event === "started" && "\uC9C4\uD589 \uC2DC\uC791",
|
|
3417
|
+
ev.event === "completed" && "\uC644\uB8CC \uCC98\uB9AC"
|
|
3418
|
+
] }),
|
|
3419
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("span", { className: styles_module_default5.historyTime, children: formatTime2(ev.timestamp) })
|
|
3420
|
+
] }),
|
|
3421
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { className: styles_module_default5.historyTitle, children: ev.title.replace(/^\[피드백\]\s*/, "") }),
|
|
3422
|
+
ev.feedbackUrl && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { className: styles_module_default5.historyUrl, children: ev.feedbackUrl })
|
|
3423
|
+
] })
|
|
3424
|
+
] }, `${ev.id}-${ev.event}-${i}`)) })
|
|
3425
|
+
] })
|
|
3426
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(import_jsx_runtime6.Fragment, { children: [
|
|
3427
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: styles_module_default5.statusFilter, children: [
|
|
3428
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
|
|
3429
|
+
"button",
|
|
3430
|
+
{
|
|
3431
|
+
className: `${styles_module_default5.filterChip} ${statusFilter === "todo" ? styles_module_default5.active : ""}`,
|
|
3432
|
+
onClick: () => setStatusFilter("todo"),
|
|
3433
|
+
type: "button",
|
|
3434
|
+
children: [
|
|
3435
|
+
"\uC9C4\uD589\uC804",
|
|
3436
|
+
todoCount > 0 && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("span", { className: styles_module_default5.filterCount, children: todoCount })
|
|
3437
|
+
]
|
|
3438
|
+
}
|
|
3439
|
+
),
|
|
3440
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
|
|
3441
|
+
"button",
|
|
3442
|
+
{
|
|
3443
|
+
className: `${styles_module_default5.filterChip} ${statusFilter === "in_progress" ? styles_module_default5.active : ""}`,
|
|
3444
|
+
onClick: () => setStatusFilter("in_progress"),
|
|
3445
|
+
type: "button",
|
|
3446
|
+
children: [
|
|
3447
|
+
"\uC9C4\uD589\uC911",
|
|
3448
|
+
inProgressCount > 0 && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("span", { className: styles_module_default5.filterCount, children: inProgressCount })
|
|
3449
|
+
]
|
|
3450
|
+
}
|
|
3451
|
+
),
|
|
3452
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
|
|
3453
|
+
"button",
|
|
3454
|
+
{
|
|
3455
|
+
className: `${styles_module_default5.filterChip} ${statusFilter === "done" ? styles_module_default5.active : ""}`,
|
|
3456
|
+
onClick: () => setStatusFilter("done"),
|
|
3457
|
+
type: "button",
|
|
3458
|
+
children: [
|
|
3459
|
+
"\uC644\uB8CC",
|
|
3460
|
+
doneCount > 0 && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("span", { className: styles_module_default5.filterCount, children: doneCount })
|
|
3461
|
+
]
|
|
3462
|
+
}
|
|
3463
|
+
)
|
|
3354
3464
|
] }),
|
|
3355
|
-
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { className: styles_module_default5.
|
|
3356
|
-
|
|
3357
|
-
|
|
3358
|
-
|
|
3359
|
-
{
|
|
3360
|
-
className: styles_module_default5.
|
|
3361
|
-
|
|
3362
|
-
|
|
3363
|
-
|
|
3364
|
-
}
|
|
3365
|
-
|
|
3366
|
-
|
|
3367
|
-
|
|
3368
|
-
|
|
3369
|
-
|
|
3370
|
-
|
|
3371
|
-
|
|
3372
|
-
|
|
3373
|
-
|
|
3374
|
-
|
|
3375
|
-
|
|
3376
|
-
|
|
3377
|
-
|
|
3378
|
-
|
|
3379
|
-
|
|
3380
|
-
|
|
3381
|
-
|
|
3465
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { className: styles_module_default5.content, children: items.length === 0 ? /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: styles_module_default5.empty, children: [
|
|
3466
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { className: styles_module_default5.emptyIcon, children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("svg", { viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round", children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("path", { d: "M21 15a2 2 0 01-2 2H7l-4 4V5a2 2 0 012-2h14a2 2 0 012 2z" }) }) }),
|
|
3467
|
+
tab === "page" ? "\uC774 \uD398\uC774\uC9C0\uC5D0 \uD53C\uB4DC\uBC31\uC774 \uC5C6\uC2B5\uB2C8\uB2E4" : "\uD53C\uB4DC\uBC31\uC774 \uC5C6\uC2B5\uB2C8\uB2E4"
|
|
3468
|
+
] }) : items.map((item) => /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: `${styles_module_default5.card} ${item.status === "done" ? styles_module_default5.cardDone : ""}`, onClick: () => handleItemClick(item), children: [
|
|
3469
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: styles_module_default5.cardHeader, children: [
|
|
3470
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { className: styles_module_default5.cardAvatar, children: getInitials2(item.authorName) }),
|
|
3471
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { className: styles_module_default5.cardInfo, children: /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: styles_module_default5.cardMeta, children: [
|
|
3472
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("span", { className: styles_module_default5.cardAuthor, children: item.authorName }),
|
|
3473
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("span", { className: styles_module_default5.cardTime, children: formatTime2(item.createdAt) })
|
|
3474
|
+
] }) })
|
|
3475
|
+
] }),
|
|
3476
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { className: styles_module_default5.cardTitle, children: item.title.replace(/^\[피드백\]\s*/, "") }),
|
|
3477
|
+
item.screenshot && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { className: styles_module_default5.cardScreenshot, children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("img", { src: item.screenshot, alt: "screenshot" }) }),
|
|
3478
|
+
tab === "all" && item.feedbackUrl && /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)(
|
|
3479
|
+
"div",
|
|
3480
|
+
{
|
|
3481
|
+
className: styles_module_default5.cardRoute,
|
|
3482
|
+
onClick: (e) => {
|
|
3483
|
+
e.stopPropagation();
|
|
3484
|
+
window.location.href = item.feedbackUrl;
|
|
3485
|
+
},
|
|
3486
|
+
title: "\uD398\uC774\uC9C0\uB85C \uC774\uB3D9",
|
|
3487
|
+
children: [
|
|
3488
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("span", { className: styles_module_default5.cardRoutePath, children: item.feedbackUrl }),
|
|
3489
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("svg", { className: styles_module_default5.cardRouteIcon, viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "12", height: "12", children: [
|
|
3490
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("path", { d: "M18 13v6a2 2 0 01-2 2H5a2 2 0 01-2-2V8a2 2 0 012-2h6" }),
|
|
3491
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("polyline", { points: "15 3 21 3 21 9" }),
|
|
3492
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("line", { x1: "10", y1: "14", x2: "21", y2: "3" })
|
|
3493
|
+
] })
|
|
3494
|
+
]
|
|
3495
|
+
}
|
|
3496
|
+
),
|
|
3497
|
+
(item.startedAt || item.completedAt) && /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: styles_module_default5.cardStatusTime, children: [
|
|
3498
|
+
item.startedAt && item.status !== "todo" && /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("span", { children: [
|
|
3499
|
+
"\uC9C4\uD589 \uC2DC\uC791: ",
|
|
3500
|
+
formatTime2(item.startedAt)
|
|
3501
|
+
] }),
|
|
3502
|
+
item.completedAt && item.status === "done" && /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("span", { children: [
|
|
3503
|
+
"\uC644\uB8CC: ",
|
|
3504
|
+
formatTime2(item.completedAt)
|
|
3505
|
+
] })
|
|
3506
|
+
] }),
|
|
3507
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: styles_module_default5.cardFooter, children: [
|
|
3508
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsx)("span", { className: styles_module_default5.cardReplyDot }),
|
|
3509
|
+
/* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("span", { className: styles_module_default5.cardReplyCount, children: [
|
|
3510
|
+
item.commentCount,
|
|
3511
|
+
" ",
|
|
3512
|
+
item.commentCount === 1 ? "Reply" : "Replies"
|
|
3513
|
+
] })
|
|
3382
3514
|
] })
|
|
3383
|
-
] })
|
|
3384
|
-
] }
|
|
3515
|
+
] }, item.id)) })
|
|
3516
|
+
] })
|
|
3385
3517
|
] })
|
|
3386
3518
|
] }),
|
|
3387
3519
|
lightboxSrc && /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(ImageLightbox, { src: lightboxSrc, onClose: () => setLightboxSrc(null) }),
|
|
@@ -4234,26 +4366,20 @@ function DebugWidget({ endpoint, getUser, onHide }) {
|
|
|
4234
4366
|
return true;
|
|
4235
4367
|
});
|
|
4236
4368
|
}, [annotations, serverTasks, settings.hideDoneMarkers, settings.showOnlyMine, currentUserName]);
|
|
4237
|
-
const
|
|
4369
|
+
const toInboxItem = (task, fallbackUrl) => ({
|
|
4238
4370
|
id: task.id,
|
|
4239
4371
|
title: task.title || "\uD53C\uB4DC\uBC31",
|
|
4240
4372
|
status: task.status,
|
|
4241
4373
|
priority: task.priority,
|
|
4242
4374
|
authorName: task.authorName || "\uC775\uBA85",
|
|
4243
|
-
feedbackUrl: task.feedbackUrl ||
|
|
4375
|
+
feedbackUrl: task.feedbackUrl || fallbackUrl,
|
|
4244
4376
|
createdAt: task.createdAt,
|
|
4377
|
+
startedAt: task.startedAt,
|
|
4378
|
+
completedAt: task.completedAt,
|
|
4245
4379
|
commentCount: task.commentCount || 0
|
|
4246
|
-
})
|
|
4247
|
-
const
|
|
4248
|
-
|
|
4249
|
-
title: task.title || "\uD53C\uB4DC\uBC31",
|
|
4250
|
-
status: task.status,
|
|
4251
|
-
priority: task.priority,
|
|
4252
|
-
authorName: task.authorName || "\uC775\uBA85",
|
|
4253
|
-
feedbackUrl: task.feedbackUrl || "",
|
|
4254
|
-
createdAt: task.createdAt,
|
|
4255
|
-
commentCount: task.commentCount || 0
|
|
4256
|
-
}));
|
|
4380
|
+
});
|
|
4381
|
+
const allInboxItems = serverTasks.map((t) => toInboxItem(t, currentPath));
|
|
4382
|
+
const allRouteItems = allServerTasks.map((t) => toInboxItem(t, ""));
|
|
4257
4383
|
return (0, import_react_dom3.createPortal)(
|
|
4258
4384
|
/* @__PURE__ */ (0, import_jsx_runtime8.jsxs)("div", { "data-impakers-debug": "", children: [
|
|
4259
4385
|
/* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|