@fivepixels-js/react 0.2.12 → 0.2.14
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/README.md +22 -8
- package/dist/components/icons/Icons.d.ts +6 -0
- package/dist/components/icons/Icons.d.ts.map +1 -1
- package/dist/components/icons/Icons.js +8 -0
- package/dist/components/icons/Icons.js.map +1 -1
- package/dist/components/overlay/PickTargetContextMenu.d.ts +1 -2
- package/dist/components/overlay/PickTargetContextMenu.d.ts.map +1 -1
- package/dist/components/overlay/PickTargetContextMenu.js +5 -7
- package/dist/components/overlay/PickTargetContextMenu.js.map +1 -1
- package/dist/components/overlay/PickTargetHoverTooltip.d.ts.map +1 -1
- package/dist/components/overlay/PickTargetHoverTooltip.js +3 -53
- package/dist/components/overlay/PickTargetHoverTooltip.js.map +1 -1
- package/dist/components/overlay/PickTargetProbePanel.d.ts.map +1 -1
- package/dist/components/overlay/PickTargetProbePanel.js +12 -6
- package/dist/components/overlay/PickTargetProbePanel.js.map +1 -1
- package/dist/components/overlay/ProbeLayoutControls.js +4 -4
- package/dist/components/overlay/ProbeLayoutControls.js.map +1 -1
- package/dist/components/overlay/ReportOverlayLayer.d.ts.map +1 -1
- package/dist/components/overlay/ReportOverlayLayer.js +8 -10
- package/dist/components/overlay/ReportOverlayLayer.js.map +1 -1
- package/dist/components/overlay/TargetHighlights.d.ts +2 -1
- package/dist/components/overlay/TargetHighlights.d.ts.map +1 -1
- package/dist/components/overlay/TargetHighlights.js +13 -2
- package/dist/components/overlay/TargetHighlights.js.map +1 -1
- package/dist/components/panel/DraftNetworkErrorBanner.js +1 -1
- package/dist/components/panel/DraftNetworkErrorBanner.js.map +1 -1
- package/dist/components/panel/PanelDropdownMenu.d.ts +9 -2
- package/dist/components/panel/PanelDropdownMenu.d.ts.map +1 -1
- package/dist/components/panel/PanelDropdownMenu.js +14 -8
- package/dist/components/panel/PanelDropdownMenu.js.map +1 -1
- package/dist/components/panel/PanelNetworkFailureBanner.js +1 -1
- package/dist/components/panel/PanelNetworkFailureBanner.js.map +1 -1
- package/dist/components/panel/PanelOnboarding.d.ts.map +1 -1
- package/dist/components/panel/PanelOnboarding.js +28 -10
- package/dist/components/panel/PanelOnboarding.js.map +1 -1
- package/dist/components/panel/PanelSettings.d.ts +4 -2
- package/dist/components/panel/PanelSettings.d.ts.map +1 -1
- package/dist/components/panel/PanelSettings.js +33 -6
- package/dist/components/panel/PanelSettings.js.map +1 -1
- package/dist/components/panel/ReportApiFlowPanel.d.ts.map +1 -1
- package/dist/components/panel/ReportApiFlowPanel.js +7 -6
- package/dist/components/panel/ReportApiFlowPanel.js.map +1 -1
- package/dist/components/panel/ReportCommandPanel.d.ts.map +1 -1
- package/dist/components/panel/ReportCommandPanel.js +12 -1
- package/dist/components/panel/ReportCommandPanel.js.map +1 -1
- package/dist/components/panel/ReportCommandReplaceConfirmDialog.d.ts.map +1 -1
- package/dist/components/panel/ReportCommandReplaceConfirmDialog.js +15 -2
- package/dist/components/panel/ReportCommandReplaceConfirmDialog.js.map +1 -1
- package/dist/components/panel/ReportControlPanel.d.ts.map +1 -1
- package/dist/components/panel/ReportControlPanel.js +12 -4
- package/dist/components/panel/ReportControlPanel.js.map +1 -1
- package/dist/components/panel/ReportDraftForm.js +27 -1
- package/dist/components/panel/ReportDraftForm.js.map +1 -1
- package/dist/components/panel/ReportFeedbackList.d.ts +4 -1
- package/dist/components/panel/ReportFeedbackList.d.ts.map +1 -1
- package/dist/components/panel/ReportFeedbackList.js +39 -8
- package/dist/components/panel/ReportFeedbackList.js.map +1 -1
- package/dist/components/panel/ReportImportConfirmDialog.d.ts.map +1 -1
- package/dist/components/panel/ReportImportConfirmDialog.js +35 -7
- package/dist/components/panel/ReportImportConfirmDialog.js.map +1 -1
- package/dist/components/panel/ReportImportProjectMismatchDialog.d.ts.map +1 -1
- package/dist/components/panel/ReportImportProjectMismatchDialog.js +15 -2
- package/dist/components/panel/ReportImportProjectMismatchDialog.js.map +1 -1
- package/dist/components/panel/ReportPanelNoticeDialog.d.ts +42 -0
- package/dist/components/panel/ReportPanelNoticeDialog.d.ts.map +1 -0
- package/dist/components/panel/ReportPanelNoticeDialog.js +44 -0
- package/dist/components/panel/ReportPanelNoticeDialog.js.map +1 -0
- package/dist/components/panel/ReportPersonalKeyDialog.d.ts.map +1 -1
- package/dist/components/panel/ReportPersonalKeyDialog.js +35 -13
- package/dist/components/panel/ReportPersonalKeyDialog.js.map +1 -1
- package/dist/components/panel/RouteDetailsTimeline.d.ts.map +1 -1
- package/dist/components/panel/RouteDetailsTimeline.js +3 -3
- package/dist/components/panel/RouteDetailsTimeline.js.map +1 -1
- package/dist/components/panel/feedback/AssigneeThreadEntry.d.ts.map +1 -1
- package/dist/components/panel/feedback/AssigneeThreadEntry.js +14 -4
- package/dist/components/panel/feedback/AssigneeThreadEntry.js.map +1 -1
- package/dist/components/panel/feedback/DraftComposerToolbar.d.ts +12 -2
- package/dist/components/panel/feedback/DraftComposerToolbar.d.ts.map +1 -1
- package/dist/components/panel/feedback/DraftComposerToolbar.js +13 -3
- package/dist/components/panel/feedback/DraftComposerToolbar.js.map +1 -1
- package/dist/components/panel/feedback/FeedbackCaseEditor.d.ts +2 -1
- package/dist/components/panel/feedback/FeedbackCaseEditor.d.ts.map +1 -1
- package/dist/components/panel/feedback/FeedbackCaseEditor.js +2 -2
- package/dist/components/panel/feedback/FeedbackCaseEditor.js.map +1 -1
- package/dist/components/panel/feedback/FeedbackCaseList.d.ts.map +1 -1
- package/dist/components/panel/feedback/FeedbackCaseList.js +2 -1
- package/dist/components/panel/feedback/FeedbackCaseList.js.map +1 -1
- package/dist/components/panel/feedback/FeedbackCategorySelector.d.ts.map +1 -1
- package/dist/components/panel/feedback/FeedbackCategorySelector.js +2 -2
- package/dist/components/panel/feedback/FeedbackCategorySelector.js.map +1 -1
- package/dist/components/panel/feedback/FeedbackComposer.d.ts.map +1 -1
- package/dist/components/panel/feedback/FeedbackComposer.js +2 -1
- package/dist/components/panel/feedback/FeedbackComposer.js.map +1 -1
- package/dist/components/panel/feedback/FeedbackHoverCard.d.ts.map +1 -1
- package/dist/components/panel/feedback/FeedbackHoverCard.js +5 -0
- package/dist/components/panel/feedback/FeedbackHoverCard.js.map +1 -1
- package/dist/components/panel/feedback/FeedbackListItem.d.ts +2 -1
- package/dist/components/panel/feedback/FeedbackListItem.d.ts.map +1 -1
- package/dist/components/panel/feedback/FeedbackListItem.js +7 -5
- package/dist/components/panel/feedback/FeedbackListItem.js.map +1 -1
- package/dist/components/panel/feedback/FeedbackThread.d.ts.map +1 -1
- package/dist/components/panel/feedback/FeedbackThread.js +43 -12
- package/dist/components/panel/feedback/FeedbackThread.js.map +1 -1
- package/dist/components/panel/feedback/QuestionThreadGroup.d.ts.map +1 -1
- package/dist/components/panel/feedback/QuestionThreadGroup.js +14 -6
- package/dist/components/panel/feedback/QuestionThreadGroup.js.map +1 -1
- package/dist/components/panel/feedback/ThreadChildReply.d.ts.map +1 -1
- package/dist/components/panel/feedback/ThreadChildReply.js +7 -2
- package/dist/components/panel/feedback/ThreadChildReply.js.map +1 -1
- package/dist/components/panel/feedback/feed/FeedAuthorAvatar.d.ts +8 -0
- package/dist/components/panel/feedback/feed/FeedAuthorAvatar.d.ts.map +1 -0
- package/dist/components/panel/feedback/feed/FeedAuthorAvatar.js +18 -0
- package/dist/components/panel/feedback/feed/FeedAuthorAvatar.js.map +1 -0
- package/dist/components/panel/feedback/feed/FeedCommentMeta.d.ts +22 -0
- package/dist/components/panel/feedback/feed/FeedCommentMeta.d.ts.map +1 -0
- package/dist/components/panel/feedback/feed/FeedCommentMeta.js +21 -0
- package/dist/components/panel/feedback/feed/FeedCommentMeta.js.map +1 -0
- package/dist/components/panel/feedback/feed/FeedTimelineRow.d.ts +40 -0
- package/dist/components/panel/feedback/feed/FeedTimelineRow.d.ts.map +1 -0
- package/dist/components/panel/feedback/feed/FeedTimelineRow.js +32 -0
- package/dist/components/panel/feedback/feed/FeedTimelineRow.js.map +1 -0
- package/dist/components/panel/feedback/feed/FeedTimelineTrack.d.ts +12 -0
- package/dist/components/panel/feedback/feed/FeedTimelineTrack.d.ts.map +1 -0
- package/dist/components/panel/feedback/feed/FeedTimelineTrack.js +53 -0
- package/dist/components/panel/feedback/feed/FeedTimelineTrack.js.map +1 -0
- package/dist/components/panel/feedback/feed/ThreadLayoutShell.d.ts +17 -0
- package/dist/components/panel/feedback/feed/ThreadLayoutShell.d.ts.map +1 -0
- package/dist/components/panel/feedback/feed/ThreadLayoutShell.js +13 -0
- package/dist/components/panel/feedback/feed/ThreadLayoutShell.js.map +1 -0
- package/dist/components/panel/feedback/feed/feedActivitySurface.d.ts +6 -0
- package/dist/components/panel/feedback/feed/feedActivitySurface.d.ts.map +1 -0
- package/dist/components/panel/feedback/feed/feedActivitySurface.js +44 -0
- package/dist/components/panel/feedback/feed/feedActivitySurface.js.map +1 -0
- package/dist/components/panel/onboarding/PanelOnboardingAuthSteps.d.ts.map +1 -1
- package/dist/components/panel/onboarding/PanelOnboardingAuthSteps.js +1 -1
- package/dist/components/panel/onboarding/PanelOnboardingAuthSteps.js.map +1 -1
- package/dist/components/point/MarkerCaseSidebar.d.ts +2 -1
- package/dist/components/point/MarkerCaseSidebar.d.ts.map +1 -1
- package/dist/components/point/MarkerCaseSidebar.js +5 -2
- package/dist/components/point/MarkerCaseSidebar.js.map +1 -1
- package/dist/components/point/MarkerFeedbackWindow.d.ts.map +1 -1
- package/dist/components/point/MarkerFeedbackWindow.js +2 -2
- package/dist/components/point/MarkerFeedbackWindow.js.map +1 -1
- package/dist/components/point/ReportMarkersLayer.d.ts.map +1 -1
- package/dist/components/point/ReportMarkersLayer.js +43 -14
- package/dist/components/point/ReportMarkersLayer.js.map +1 -1
- package/dist/components/report/FivePixels.d.ts +2 -2
- package/dist/components/report/FivePixels.d.ts.map +1 -1
- package/dist/components/report/FivePixels.js +2 -2
- package/dist/components/report/FivePixels.js.map +1 -1
- package/dist/components/report/ReportView.d.ts.map +1 -1
- package/dist/components/report/ReportView.js +3 -5
- package/dist/components/report/ReportView.js.map +1 -1
- package/dist/components/report/ShadowReportRoot.d.ts +2 -2
- package/dist/components/report/ShadowReportRoot.d.ts.map +1 -1
- package/dist/components/report/ShadowReportRoot.js +5 -3
- package/dist/components/report/ShadowReportRoot.js.map +1 -1
- package/dist/components/report/index.d.ts +5 -4
- package/dist/components/report/index.d.ts.map +1 -1
- package/dist/components/report/index.js +2 -1
- package/dist/components/report/index.js.map +1 -1
- package/dist/components/ui/MenuTooltip.d.ts +26 -0
- package/dist/components/ui/MenuTooltip.d.ts.map +1 -0
- package/dist/components/ui/MenuTooltip.js +25 -0
- package/dist/components/ui/MenuTooltip.js.map +1 -0
- package/dist/components/ui/PointerFollowTooltip.d.ts +4 -1
- package/dist/components/ui/PointerFollowTooltip.d.ts.map +1 -1
- package/dist/components/ui/PointerFollowTooltip.js +4 -1
- package/dist/components/ui/PointerFollowTooltip.js.map +1 -1
- package/dist/components/ui/StyleInspectTooltip.d.ts +21 -0
- package/dist/components/ui/StyleInspectTooltip.d.ts.map +1 -0
- package/dist/components/ui/StyleInspectTooltip.js +11 -0
- package/dist/components/ui/StyleInspectTooltip.js.map +1 -0
- package/dist/constants/feedbackCategory.d.ts +3 -1
- package/dist/constants/feedbackCategory.d.ts.map +1 -1
- package/dist/constants/feedbackCategory.js +3 -1
- package/dist/constants/feedbackCategory.js.map +1 -1
- package/dist/constants/loginMethod.d.ts +8 -0
- package/dist/constants/loginMethod.d.ts.map +1 -1
- package/dist/constants/loginMethod.js +18 -0
- package/dist/constants/loginMethod.js.map +1 -1
- package/dist/constants/panelTabPresets.js +10 -10
- package/dist/constants/panelTabPresets.js.map +1 -1
- package/dist/constants/panelTabRegistry.d.ts +2 -2
- package/dist/constants/panelTabRegistry.d.ts.map +1 -1
- package/dist/constants/panelTabRegistry.js +8 -0
- package/dist/constants/panelTabRegistry.js.map +1 -1
- package/dist/constants/storageKeys.d.ts +0 -2
- package/dist/constants/storageKeys.d.ts.map +1 -1
- package/dist/constants/storageKeys.js +0 -4
- package/dist/constants/storageKeys.js.map +1 -1
- package/dist/hooks/report/assembleReportContextValue.d.ts +10 -6
- package/dist/hooks/report/assembleReportContextValue.d.ts.map +1 -1
- package/dist/hooks/report/assembleReportContextValue.js +11 -7
- package/dist/hooks/report/assembleReportContextValue.js.map +1 -1
- package/dist/hooks/report/useReportAuthSession.d.ts +7 -1
- package/dist/hooks/report/useReportAuthSession.d.ts.map +1 -1
- package/dist/hooks/report/useReportAuthSession.js +51 -18
- package/dist/hooks/report/useReportAuthSession.js.map +1 -1
- package/dist/hooks/report/useReportDraftSession.d.ts +1 -8
- package/dist/hooks/report/useReportDraftSession.d.ts.map +1 -1
- package/dist/hooks/report/useReportDraftSession.js +51 -13
- package/dist/hooks/report/useReportDraftSession.js.map +1 -1
- package/dist/hooks/report/useReportPanelShell.d.ts +5 -2
- package/dist/hooks/report/useReportPanelShell.d.ts.map +1 -1
- package/dist/hooks/report/useReportPanelShell.js +6 -2
- package/dist/hooks/report/useReportPanelShell.js.map +1 -1
- package/dist/hooks/report/useReportPickProbe.d.ts.map +1 -1
- package/dist/hooks/report/useReportPickProbe.js +88 -1
- package/dist/hooks/report/useReportPickProbe.js.map +1 -1
- package/dist/hooks/report/useReportReplyReview.d.ts +1 -0
- package/dist/hooks/report/useReportReplyReview.d.ts.map +1 -1
- package/dist/hooks/report/useReportReplyReview.js +31 -3
- package/dist/hooks/report/useReportReplyReview.js.map +1 -1
- package/dist/hooks/report/useReportState.d.ts +14 -8
- package/dist/hooks/report/useReportState.d.ts.map +1 -1
- package/dist/hooks/report/useReportState.js +11 -6
- package/dist/hooks/report/useReportState.js.map +1 -1
- package/dist/hooks/usePanelAutoRefresh.d.ts +1 -1
- package/dist/hooks/useSelfProfile.d.ts +1 -0
- package/dist/hooks/useSelfProfile.d.ts.map +1 -1
- package/dist/hooks/useSelfProfile.js +13 -0
- package/dist/hooks/useSelfProfile.js.map +1 -1
- package/dist/hooks/useThreadLayoutPreference.d.ts +6 -0
- package/dist/hooks/useThreadLayoutPreference.d.ts.map +1 -0
- package/dist/hooks/useThreadLayoutPreference.js +40 -0
- package/dist/hooks/useThreadLayoutPreference.js.map +1 -0
- package/dist/i18n/en.d.ts.map +1 -1
- package/dist/i18n/en.js +39 -4
- package/dist/i18n/en.js.map +1 -1
- package/dist/i18n/ko.d.ts.map +1 -1
- package/dist/i18n/ko.js +39 -4
- package/dist/i18n/ko.js.map +1 -1
- package/dist/i18n/types.d.ts +19 -1
- package/dist/i18n/types.d.ts.map +1 -1
- package/dist/providers/ReportProvider.d.ts +1 -1
- package/dist/providers/ReportProvider.d.ts.map +1 -1
- package/dist/providers/ReportProvider.js +16 -4
- package/dist/providers/ReportProvider.js.map +1 -1
- package/dist/providers/reportContext.d.ts +52 -32
- package/dist/providers/reportContext.d.ts.map +1 -1
- package/dist/providers/reportContextPartitions.d.ts +2 -2
- package/dist/providers/reportContextPartitions.d.ts.map +1 -1
- package/dist/providers/reportContextPartitions.js +7 -6
- package/dist/providers/reportContextPartitions.js.map +1 -1
- package/dist/styles/reportStylesheet.d.ts +1 -1
- package/dist/styles/reportStylesheet.d.ts.map +1 -1
- package/dist/styles/reportStylesheet.js +1 -1
- package/dist/styles/reportStylesheet.js.map +1 -1
- package/dist/types/adapter.d.ts +66 -6
- package/dist/types/adapter.d.ts.map +1 -1
- package/dist/types/publicApi.d.ts +20 -4
- package/dist/types/publicApi.d.ts.map +1 -1
- package/dist/types/report-ui.d.ts +2 -1
- package/dist/types/report-ui.d.ts.map +1 -1
- package/dist/types/report.d.ts +17 -0
- package/dist/types/report.d.ts.map +1 -1
- package/dist/utils/adapter/resolveAdapter.d.ts +1 -1
- package/dist/utils/adapter/resolveAdapter.d.ts.map +1 -1
- package/dist/utils/adapter/resolveAdapter.js.map +1 -1
- package/dist/utils/auth/remoteAuthLifecycle.d.ts +16 -0
- package/dist/utils/auth/remoteAuthLifecycle.d.ts.map +1 -0
- package/dist/utils/auth/remoteAuthLifecycle.js +30 -0
- package/dist/utils/auth/remoteAuthLifecycle.js.map +1 -0
- package/dist/utils/auth/resolvePanelView.d.ts +3 -1
- package/dist/utils/auth/resolvePanelView.d.ts.map +1 -1
- package/dist/utils/auth/resolvePanelView.js +22 -3
- package/dist/utils/auth/resolvePanelView.js.map +1 -1
- package/dist/utils/feedback/feedbackCaseId.d.ts +2 -0
- package/dist/utils/feedback/feedbackCaseId.d.ts.map +1 -1
- package/dist/utils/feedback/feedbackCaseId.js +9 -0
- package/dist/utils/feedback/feedbackCaseId.js.map +1 -1
- package/dist/utils/integration/buildAdapterIntegrationStatus.d.ts +2 -1
- package/dist/utils/integration/buildAdapterIntegrationStatus.d.ts.map +1 -1
- package/dist/utils/integration/buildAdapterIntegrationStatus.js +81 -34
- package/dist/utils/integration/buildAdapterIntegrationStatus.js.map +1 -1
- package/dist/utils/network/formatApiFlowEntry.d.ts +2 -0
- package/dist/utils/network/formatApiFlowEntry.d.ts.map +1 -1
- package/dist/utils/network/formatApiFlowEntry.js +15 -0
- package/dist/utils/network/formatApiFlowEntry.js.map +1 -1
- package/dist/utils/network/networkMonitor.d.ts.map +1 -1
- package/dist/utils/network/networkMonitor.js +29 -21
- package/dist/utils/network/networkMonitor.js.map +1 -1
- package/dist/utils/panel/panelTabPreference.d.ts.map +1 -1
- package/dist/utils/panel/panelTabPreference.js +6 -1
- package/dist/utils/panel/panelTabPreference.js.map +1 -1
- package/dist/utils/report/reportTeam.d.ts +3 -1
- package/dist/utils/report/reportTeam.d.ts.map +1 -1
- package/dist/utils/report/reportTeam.js +2 -2
- package/dist/utils/report/reportTeam.js.map +1 -1
- package/dist/utils/report/reportUi.d.ts +2 -1
- package/dist/utils/report/reportUi.d.ts.map +1 -1
- package/dist/utils/report/reportUi.js +2 -0
- package/dist/utils/report/reportUi.js.map +1 -1
- package/dist/utils/report/reportVisual.d.ts.map +1 -1
- package/dist/utils/report/reportVisual.js +4 -0
- package/dist/utils/report/reportVisual.js.map +1 -1
- package/dist/utils/report/resolveRequire.d.ts +37 -0
- package/dist/utils/report/resolveRequire.d.ts.map +1 -0
- package/dist/utils/report/resolveRequire.js +14 -0
- package/dist/utils/report/resolveRequire.js.map +1 -0
- package/dist/utils/shared/format.d.ts +2 -0
- package/dist/utils/shared/format.d.ts.map +1 -1
- package/dist/utils/shared/format.js +18 -0
- package/dist/utils/shared/format.js.map +1 -1
- package/package.json +1 -1
- package/dist/components/overlay/ElementMemoComposer.d.ts +0 -2
- package/dist/components/overlay/ElementMemoComposer.d.ts.map +0 -1
- package/dist/components/overlay/ElementMemoComposer.js +0 -51
- package/dist/components/overlay/ElementMemoComposer.js.map +0 -1
- package/dist/components/point/MemoMarkersLayer.d.ts +0 -2
- package/dist/components/point/MemoMarkersLayer.d.ts.map +0 -1
- package/dist/components/point/MemoMarkersLayer.js +0 -60
- package/dist/components/point/MemoMarkersLayer.js.map +0 -1
- package/dist/hooks/report/useElementMemos.d.ts +0 -15
- package/dist/hooks/report/useElementMemos.d.ts.map +0 -1
- package/dist/hooks/report/useElementMemos.js +0 -45
- package/dist/hooks/report/useElementMemos.js.map +0 -1
- package/dist/utils/memo/elementMemoMarkers.d.ts +0 -17
- package/dist/utils/memo/elementMemoMarkers.d.ts.map +0 -1
- package/dist/utils/memo/elementMemoMarkers.js +0 -36
- package/dist/utils/memo/elementMemoMarkers.js.map +0 -1
- package/dist/utils/memo/elementMemos.d.ts +0 -15
- package/dist/utils/memo/elementMemos.d.ts.map +0 -1
- package/dist/utils/memo/elementMemos.js +0 -97
- package/dist/utils/memo/elementMemos.js.map +0 -1
|
@@ -3,13 +3,15 @@ import { useEffect, useState } from "react";
|
|
|
3
3
|
import { useReportPreferences } from "../../../providers/reportContext.js";
|
|
4
4
|
import { ChevronDownIcon } from "../../../components/icons/Icons.js";
|
|
5
5
|
import { ThreadChildReply } from "./ThreadChildReply.js";
|
|
6
|
-
import {
|
|
6
|
+
import { FeedSpineDot } from "./feed/FeedTimelineRow.js";
|
|
7
|
+
import { ThreadLayoutShell } from "./feed/ThreadLayoutShell.js";
|
|
7
8
|
export function QuestionThreadGroup({ questions, authors, originalAuthorName, actorName, forceExpanded = false }) {
|
|
8
|
-
const { messages, questionThreadDisplay } = useReportPreferences();
|
|
9
|
-
const
|
|
9
|
+
const { messages, questionThreadDisplay, threadLayout } = useReportPreferences();
|
|
10
|
+
const isFeed = threadLayout === "feed";
|
|
11
|
+
const [isExpanded, setIsExpanded] = useState(() => questionThreadDisplay === "expanded" || isFeed);
|
|
10
12
|
useEffect(() => {
|
|
11
|
-
setIsExpanded(questionThreadDisplay === "expanded");
|
|
12
|
-
}, [questionThreadDisplay]);
|
|
13
|
+
setIsExpanded(questionThreadDisplay === "expanded" || isFeed);
|
|
14
|
+
}, [questionThreadDisplay, isFeed]);
|
|
13
15
|
useEffect(() => {
|
|
14
16
|
if (forceExpanded) {
|
|
15
17
|
setIsExpanded(true);
|
|
@@ -23,7 +25,13 @@ export function QuestionThreadGroup({ questions, authors, originalAuthorName, ac
|
|
|
23
25
|
? messages.thread.questionsPending(questions.length)
|
|
24
26
|
: messages.thread.questionsHide(questions.length)
|
|
25
27
|
: messages.thread.questionsShow(questions.length);
|
|
26
|
-
|
|
28
|
+
if (isFeed) {
|
|
29
|
+
if (!isExpanded) {
|
|
30
|
+
return (_jsx(ThreadLayoutShell, { density: "activity", nested: true, feedNode: _jsx(FeedSpineDot, {}), children: _jsxs("button", { type: "button", "data-fivepixels-interactive": "", "aria-expanded": false, "aria-label": messages.thread.questionsToggleAriaLabel(questions.length, false), onClick: () => setIsExpanded(true), className: "inline-flex items-center gap-[4px] py-[1px] text-left text-[12px] text-[var(--adaptive-black500)] hover:opacity-80", children: [_jsx("span", { children: toggleLabel }), _jsx(ChevronDownIcon, { className: "h-[12px] w-[12px] shrink-0 text-[var(--adaptive-black400)]" })] }) }));
|
|
31
|
+
}
|
|
32
|
+
return (_jsxs("div", { className: "flex flex-col", children: [questions.map((question) => (_jsx(ThreadChildReply, { reply: question, authors: authors, originalAuthorName: originalAuthorName, actorName: actorName }, question.id))), !forceExpanded ? (_jsx(ThreadLayoutShell, { density: "activity", nested: true, feedNode: _jsx(FeedSpineDot, {}), children: _jsxs("button", { type: "button", "data-fivepixels-interactive": "", "aria-expanded": true, "aria-label": messages.thread.questionsToggleAriaLabel(questions.length, true), onClick: () => setIsExpanded(false), className: "inline-flex items-center gap-[4px] py-[1px] text-left text-[12px] text-[var(--adaptive-black500)] hover:opacity-80", children: [_jsx("span", { children: messages.thread.questionsHide(questions.length) }), _jsx(ChevronDownIcon, { className: "h-[12px] w-[12px] shrink-0 rotate-180 text-[var(--adaptive-black400)]" })] }) })) : null] }));
|
|
33
|
+
}
|
|
34
|
+
return (_jsxs("div", { className: "flex flex-col", children: [_jsx(ThreadLayoutShell, { children: _jsxs("button", { type: "button", "data-fivepixels-interactive": "", "aria-expanded": isExpanded, "aria-label": messages.thread.questionsToggleAriaLabel(questions.length, isExpanded), onClick: () => setIsExpanded((current) => !current), className: "flex items-center gap-[4px] rounded-[6px] py-[2px] text-left text-[12px] text-[var(--adaptive-black500)] hover:opacity-80", children: [_jsx(ChevronDownIcon, { className: `h-[12px] w-[12px] shrink-0 text-[var(--adaptive-black400)] transition-transform ${isExpanded ? "rotate-180" : ""}` }), _jsx("span", { className: "text-[12px] text-[var(--adaptive-black500)] font-medium", children: toggleLabel })] }) }), isExpanded
|
|
27
35
|
? questions.map((question) => (_jsx(ThreadChildReply, { reply: question, authors: authors, originalAuthorName: originalAuthorName, actorName: actorName }, question.id)))
|
|
28
36
|
: null] }));
|
|
29
37
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QuestionThreadGroup.js","sourceRoot":"","sources":["../../../../src/components/panel/feedback/QuestionThreadGroup.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAE5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"QuestionThreadGroup.js","sourceRoot":"","sources":["../../../../src/components/panel/feedback/QuestionThreadGroup.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ThreadChildReply.d.ts","sourceRoot":"","sources":["../../../../src/components/panel/feedback/ThreadChildReply.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"ThreadChildReply.d.ts","sourceRoot":"","sources":["../../../../src/components/panel/feedback/ThreadChildReply.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AASnE,KAAK,qBAAqB,GAAG;IACzB,KAAK,EAAE,WAAW,CAAC;IACnB,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,EAAE,qBAAqB,+BAuCxG"}
|
|
@@ -1,10 +1,15 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { formatClockTime } from "../../../utils/shared/format.js";
|
|
3
|
+
import { useReportPreferences } from "../../../providers/reportContext.js";
|
|
3
4
|
import { MentionMessage } from "./MentionMessage.js";
|
|
4
5
|
import { ThreadAuthorMeta } from "./ThreadAuthorMeta.js";
|
|
5
|
-
import {
|
|
6
|
+
import { FeedAuthorAvatar } from "./feed/FeedAuthorAvatar.js";
|
|
7
|
+
import { FeedCommentMeta } from "./feed/FeedCommentMeta.js";
|
|
8
|
+
import { ThreadLayoutShell } from "./feed/ThreadLayoutShell.js";
|
|
6
9
|
export function ThreadChildReply({ reply, authors, originalAuthorName, actorName }) {
|
|
10
|
+
const { threadLayout } = useReportPreferences();
|
|
7
11
|
const authorName = reply.author_name?.trim() ?? "";
|
|
8
|
-
|
|
12
|
+
const isFeed = threadLayout === "feed";
|
|
13
|
+
return (_jsxs(ThreadLayoutShell, { classicTime: formatClockTime(reply.created_at), classicReplyIndicator: true, nested: isFeed, density: "comment", feedNode: authorName ? _jsx(FeedAuthorAvatar, { name: authorName, size: "sm" }) : undefined, children: [isFeed && authorName ? (_jsx(FeedCommentMeta, { authorName: authorName, createdAt: reply.created_at, authors: authors, status: reply.status })) : null, _jsx("p", { className: `leading-[1.45] text-[var(--adaptive-text-primary)] ${isFeed ? "mt-[2px] text-[13px]" : "text-[13px]"}`, children: _jsx(MentionMessage, { message: reply.message, mentions: reply.mentions }) }), !isFeed && authorName ? (_jsx(ThreadAuthorMeta, { authorName: authorName, authors: authors, showMine: authorName === actorName, showCreator: authorName === originalAuthorName })) : null] }));
|
|
9
14
|
}
|
|
10
15
|
//# sourceMappingURL=ThreadChildReply.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ThreadChildReply.js","sourceRoot":"","sources":["../../../../src/components/panel/feedback/ThreadChildReply.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"ThreadChildReply.js","sourceRoot":"","sources":["../../../../src/components/panel/feedback/ThreadChildReply.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAShE,MAAM,UAAU,gBAAgB,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAyB;IACrG,MAAM,EAAE,YAAY,EAAE,GAAG,oBAAoB,EAAE,CAAC;IAChD,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACnD,MAAM,MAAM,GAAG,YAAY,KAAK,MAAM,CAAC;IAEvC,OAAO,CACH,MAAC,iBAAiB,IACd,WAAW,EAAE,eAAe,CAAC,KAAK,CAAC,UAAU,CAAC,EAC9C,qBAAqB,QACrB,MAAM,EAAE,MAAM,EACd,OAAO,EAAC,SAAS,EACjB,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,KAAC,gBAAgB,IAAC,IAAI,EAAE,UAAU,EAAE,IAAI,EAAC,IAAI,GAAG,CAAC,CAAC,CAAC,SAAS,aAElF,MAAM,IAAI,UAAU,CAAC,CAAC,CAAC,CACpB,KAAC,eAAe,IACZ,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,KAAK,CAAC,UAAU,EAC3B,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,KAAK,CAAC,MAAM,GACtB,CACL,CAAC,CAAC,CAAC,IAAI,EAER,YAAG,SAAS,EAAE,sDAAsD,MAAM,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,aAAa,EAAE,YACjH,KAAC,cAAc,IACX,OAAO,EAAE,KAAK,CAAC,OAAO,EACtB,QAAQ,EAAE,KAAK,CAAC,QAAQ,GAC1B,GACF,EAEH,CAAC,MAAM,IAAI,UAAU,CAAC,CAAC,CAAC,CACrB,KAAC,gBAAgB,IACb,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,UAAU,KAAK,SAAS,EAClC,WAAW,EAAE,UAAU,KAAK,kBAAkB,GAChD,CACL,CAAC,CAAC,CAAC,IAAI,IACQ,CACvB,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
type FeedAuthorAvatarProps = {
|
|
2
|
+
name: string;
|
|
3
|
+
size?: "sm" | "md";
|
|
4
|
+
className?: string;
|
|
5
|
+
};
|
|
6
|
+
export declare function FeedAuthorAvatar({ name, size, className }: FeedAuthorAvatarProps): import("react").JSX.Element;
|
|
7
|
+
export {};
|
|
8
|
+
//# sourceMappingURL=FeedAuthorAvatar.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FeedAuthorAvatar.d.ts","sourceRoot":"","sources":["../../../../../src/components/panel/feedback/feed/FeedAuthorAvatar.tsx"],"names":[],"mappings":"AAgBA,KAAK,qBAAqB,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,EAAE,IAAI,EAAE,IAAW,EAAE,SAAc,EAAE,EAAE,qBAAqB,+BAY5F"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
function getInitials(name) {
|
|
3
|
+
const parts = name.trim().split(/\s+/).filter(Boolean);
|
|
4
|
+
if (parts.length === 0) {
|
|
5
|
+
return "?";
|
|
6
|
+
}
|
|
7
|
+
if (parts.length === 1) {
|
|
8
|
+
const value = parts[0];
|
|
9
|
+
// Prefer first two syllables/chars for Korean single names like "김민수" → "김민"
|
|
10
|
+
return value.slice(0, 2);
|
|
11
|
+
}
|
|
12
|
+
return `${parts[0][0] ?? ""}${parts[1][0] ?? ""}`;
|
|
13
|
+
}
|
|
14
|
+
export function FeedAuthorAvatar({ name, size = "md", className = "" }) {
|
|
15
|
+
const dimension = size === "sm" ? "h-[22px] w-[22px] text-[9px]" : "h-[26px] w-[26px] text-[10px]";
|
|
16
|
+
return (_jsx("span", { "aria-hidden": true, className: `inline-flex shrink-0 items-center justify-center rounded-[8px] bg-[var(--adaptive-black300)] font-semibold leading-none text-[var(--adaptive-black700)] ${dimension} ${className}`, title: name, children: getInitials(name) }));
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=FeedAuthorAvatar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FeedAuthorAvatar.js","sourceRoot":"","sources":["../../../../../src/components/panel/feedback/feed/FeedAuthorAvatar.tsx"],"names":[],"mappings":";AAAA,SAAS,WAAW,CAAC,IAAY;IAC7B,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAEvD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,GAAG,CAAC;IACf,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrB,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACvB,6EAA6E;QAC7E,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7B,CAAC;IAED,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;AACtD,CAAC;AAQD,MAAM,UAAU,gBAAgB,CAAC,EAAE,IAAI,EAAE,IAAI,GAAG,IAAI,EAAE,SAAS,GAAG,EAAE,EAAyB;IACzF,MAAM,SAAS,GAAG,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,8BAA8B,CAAC,CAAC,CAAC,+BAA+B,CAAC;IAEnG,OAAO,CACH,oCAEI,SAAS,EAAE,2JAA2J,SAAS,IAAI,SAAS,EAAE,EAC9L,KAAK,EAAE,IAAI,YAEV,WAAW,CAAC,IAAI,CAAC,GACf,CACV,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { FeedbackDisplayStatus } from "../../../../constants/feedbackStatus.js";
|
|
2
|
+
type FeedCommentMetaProps = {
|
|
3
|
+
authorName: string;
|
|
4
|
+
createdAt: string;
|
|
5
|
+
authors?: Array<{
|
|
6
|
+
name: string;
|
|
7
|
+
department?: string;
|
|
8
|
+
}>;
|
|
9
|
+
/** Reply/case status shown after name + time (e.g. 확인 요청, 오류 발견). */
|
|
10
|
+
status?: FeedbackDisplayStatus;
|
|
11
|
+
};
|
|
12
|
+
/** Name + compact time + optional status label. */
|
|
13
|
+
export declare function FeedCommentMeta({ authorName, createdAt, authors, status }: FeedCommentMetaProps): import("react").JSX.Element;
|
|
14
|
+
type FeedActivityLineProps = {
|
|
15
|
+
actorName?: string;
|
|
16
|
+
action: string;
|
|
17
|
+
createdAt?: string;
|
|
18
|
+
};
|
|
19
|
+
/** Single-line activity: `Name action · 12m` */
|
|
20
|
+
export declare function FeedActivityLine({ actorName, action, createdAt }: FeedActivityLineProps): import("react").JSX.Element;
|
|
21
|
+
export {};
|
|
22
|
+
//# sourceMappingURL=FeedCommentMeta.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FeedCommentMeta.d.ts","sourceRoot":"","sources":["../../../../../src/components/panel/feedback/feed/FeedCommentMeta.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAM3E,KAAK,oBAAoB,GAAG;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACvD,qEAAqE;IACrE,MAAM,CAAC,EAAE,qBAAqB,CAAC;CAClC,CAAC;AAEF,mDAAmD;AACnD,wBAAgB,eAAe,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,oBAAoB,+BA2B/F;AAED,KAAK,qBAAqB,GAAG;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,gDAAgD;AAChD,wBAAgB,gBAAgB,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,qBAAqB,+BAWvF"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { FEEDBACK_STATUS_COLOR } from "../../../../constants/feedbackStatus.js";
|
|
3
|
+
import { useReportPreferences } from "../../../../providers/reportContext.js";
|
|
4
|
+
import { formatRelativeTimeCompact } from "../../../../utils/shared/format.js";
|
|
5
|
+
import { formatAssigneeLabel, resolveAuthorDepartment } from "../../../../utils/report/reportCases.js";
|
|
6
|
+
/** Name + compact time + optional status label. */
|
|
7
|
+
export function FeedCommentMeta({ authorName, createdAt, authors, status }) {
|
|
8
|
+
const { messages } = useReportPreferences();
|
|
9
|
+
const displayName = formatAssigneeLabel(authorName, authors ? resolveAuthorDepartment(authors, authorName) : null);
|
|
10
|
+
const relativeTime = formatRelativeTimeCompact(createdAt);
|
|
11
|
+
const statusLabel = status ? messages.status.feedback[status] : "";
|
|
12
|
+
// Match timestamp gray for issue_apply; keep accent colors for other statuses.
|
|
13
|
+
const statusColor = status && status !== "issue_apply" ? FEEDBACK_STATUS_COLOR[status] : undefined;
|
|
14
|
+
return (_jsxs("div", { className: "flex min-w-0 flex-wrap items-baseline gap-x-[6px] gap-y-[2px]", children: [_jsx("p", { className: "text-xs min-w-0 truncate font-semibold text-[var(--adaptive-black900)]", title: displayName, children: displayName }), relativeTime ? _jsx("span", { className: "text-xs shrink-0 font-semibold text-[var(--adaptive-black500)]", children: relativeTime }) : null, statusLabel ? (_jsx("span", { className: `text-xs shrink-0 font-semibold ${statusColor ? "" : "text-[var(--adaptive-black500)]"}`, style: statusColor ? { color: statusColor } : undefined, children: statusLabel })) : null] }));
|
|
15
|
+
}
|
|
16
|
+
/** Single-line activity: `Name action · 12m` */
|
|
17
|
+
export function FeedActivityLine({ actorName, action, createdAt }) {
|
|
18
|
+
const relativeTime = createdAt ? formatRelativeTimeCompact(createdAt) : "";
|
|
19
|
+
return (_jsxs("p", { className: "min-w-0 pt-[2px] text-[12px] leading-[1.35] text-[var(--adaptive-black600)]", children: [actorName ? _jsx("span", { className: "font-semibold text-[var(--adaptive-black800)]", children: actorName }) : null, actorName ? " " : null, _jsx("span", { children: action }), relativeTime ? _jsxs("span", { className: "text-[var(--adaptive-black500)]", children: [" \u00B7 ", relativeTime] }) : null] }));
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=FeedCommentMeta.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FeedCommentMeta.js","sourceRoot":"","sources":["../../../../../src/components/panel/feedback/feed/FeedCommentMeta.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAU7F,mDAAmD;AACnD,MAAM,UAAU,eAAe,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAwB;IAC5F,MAAM,EAAE,QAAQ,EAAE,GAAG,oBAAoB,EAAE,CAAC;IAC5C,MAAM,WAAW,GAAG,mBAAmB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,uBAAuB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACnH,MAAM,YAAY,GAAG,yBAAyB,CAAC,SAAS,CAAC,CAAC;IAC1D,MAAM,WAAW,GAAG,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACnE,+EAA+E;IAC/E,MAAM,WAAW,GAAG,MAAM,IAAI,MAAM,KAAK,aAAa,CAAC,CAAC,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAEnG,OAAO,CACH,eAAK,SAAS,EAAC,+DAA+D,aAC1E,YACI,SAAS,EAAC,wEAAwE,EAClF,KAAK,EAAE,WAAW,YAEjB,WAAW,GACZ,EACH,YAAY,CAAC,CAAC,CAAC,eAAM,SAAS,EAAC,gEAAgE,YAAE,YAAY,GAAQ,CAAC,CAAC,CAAC,IAAI,EAC5H,WAAW,CAAC,CAAC,CAAC,CACX,eACI,SAAS,EAAE,kCAAkC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,iCAAiC,EAAE,EACnG,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,SAAS,YAEtD,WAAW,GACT,CACV,CAAC,CAAC,CAAC,IAAI,IACN,CACT,CAAC;AACN,CAAC;AAQD,gDAAgD;AAChD,MAAM,UAAU,gBAAgB,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAyB;IACpF,MAAM,YAAY,GAAG,SAAS,CAAC,CAAC,CAAC,yBAAyB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAE3E,OAAO,CACH,aAAG,SAAS,EAAC,6EAA6E,aACrF,SAAS,CAAC,CAAC,CAAC,eAAM,SAAS,EAAC,+CAA+C,YAAE,SAAS,GAAQ,CAAC,CAAC,CAAC,IAAI,EACrG,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EACvB,yBAAO,MAAM,GAAQ,EACpB,YAAY,CAAC,CAAC,CAAC,gBAAM,SAAS,EAAC,iCAAiC,yBAAK,YAAY,IAAQ,CAAC,CAAC,CAAC,IAAI,IACjG,CACP,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import type { ReactNode } from "react";
|
|
2
|
+
import type { FeedActivityTone } from "./feedActivitySurface.js";
|
|
3
|
+
export declare const FEED_RAIL_WIDTH = 32;
|
|
4
|
+
/** Nested replies indent; L-branch connects back to the main track spine. */
|
|
5
|
+
export declare const FEED_NESTED_OFFSET = 20;
|
|
6
|
+
export type FeedRowDensity = "comment" | "activity";
|
|
7
|
+
type FeedTimelineRowProps = {
|
|
8
|
+
/** Visual node on the vertical spine (avatar or thin icon). */
|
|
9
|
+
node?: ReactNode;
|
|
10
|
+
/** Indent as a nested reply under a parent comment (keeps L-branch). */
|
|
11
|
+
nested?: boolean;
|
|
12
|
+
/** @deprecated Nested vertical rail removed; kept for API compat. */
|
|
13
|
+
nestedPosition?: string;
|
|
14
|
+
/** @deprecated Main spine is drawn by FeedTimelineTrack. */
|
|
15
|
+
hideLineBelow?: boolean;
|
|
16
|
+
/** @deprecated Main spine is drawn by FeedTimelineTrack. */
|
|
17
|
+
hideLineAbove?: boolean;
|
|
18
|
+
/** Activity rows stay tight; comments breathe a bit more. */
|
|
19
|
+
density?: FeedRowDensity;
|
|
20
|
+
children: ReactNode;
|
|
21
|
+
className?: string;
|
|
22
|
+
};
|
|
23
|
+
/**
|
|
24
|
+
* Feed row. Root rows sit on FeedTimelineTrack's continuous spine.
|
|
25
|
+
* Nested rows keep only the L horizontal stem (no nested vertical rail).
|
|
26
|
+
*/
|
|
27
|
+
export declare function FeedTimelineRow({ node, nested, density, children, className, }: FeedTimelineRowProps): import("react").JSX.Element;
|
|
28
|
+
type FeedSpineIconProps = {
|
|
29
|
+
children: ReactNode;
|
|
30
|
+
/** Matches the activity surface tone on the right. */
|
|
31
|
+
tone?: FeedActivityTone;
|
|
32
|
+
className?: string;
|
|
33
|
+
};
|
|
34
|
+
/** Spine status icon with the same soft tone fill as the activity chip. */
|
|
35
|
+
export declare function FeedSpineIcon({ children, tone, className }: FeedSpineIconProps): import("react").JSX.Element;
|
|
36
|
+
export declare function FeedSpineDot({ className }: {
|
|
37
|
+
className?: string;
|
|
38
|
+
}): import("react").JSX.Element;
|
|
39
|
+
export {};
|
|
40
|
+
//# sourceMappingURL=FeedTimelineRow.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FeedTimelineRow.d.ts","sourceRoot":"","sources":["../../../../../src/components/panel/feedback/feed/FeedTimelineRow.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAGjE,eAAO,MAAM,eAAe,KAAK,CAAC;AAClC,6EAA6E;AAC7E,eAAO,MAAM,kBAAkB,KAAK,CAAC;AAErC,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,UAAU,CAAC;AAEpD,KAAK,oBAAoB,GAAG;IACxB,+DAA+D;IAC/D,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,wEAAwE;IACxE,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,qEAAqE;IACrE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,4DAA4D;IAC5D,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,4DAA4D;IAC5D,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,6DAA6D;IAC7D,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF;;;GAGG;AACH,wBAAgB,eAAe,CAAC,EAC5B,IAAI,EACJ,MAAc,EACd,OAAmB,EACnB,QAAQ,EACR,SAAc,GACjB,EAAE,oBAAoB,+BAqCtB;AAED,KAAK,kBAAkB,GAAG;IACtB,QAAQ,EAAE,SAAS,CAAC;IACpB,sDAAsD;IACtD,IAAI,CAAC,EAAE,gBAAgB,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,2EAA2E;AAC3E,wBAAgB,aAAa,CAAC,EAAE,QAAQ,EAAE,IAAgB,EAAE,SAAc,EAAE,EAAE,kBAAkB,+BAQ/F;AAED,wBAAgB,YAAY,CAAC,EAAE,SAAc,EAAE,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,+BAStE"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { getFeedSpineNodeSurfaceClass } from "./feedActivitySurface.js";
|
|
3
|
+
export const FEED_RAIL_WIDTH = 32;
|
|
4
|
+
/** Nested replies indent; L-branch connects back to the main track spine. */
|
|
5
|
+
export const FEED_NESTED_OFFSET = 20;
|
|
6
|
+
/**
|
|
7
|
+
* Feed row. Root rows sit on FeedTimelineTrack's continuous spine.
|
|
8
|
+
* Nested rows keep only the L horizontal stem (no nested vertical rail).
|
|
9
|
+
*/
|
|
10
|
+
export function FeedTimelineRow({ node, nested = false, density = "comment", children, className = "", }) {
|
|
11
|
+
const bottomPad = density === "activity" ? "pb-[6px]" : "pb-[12px]";
|
|
12
|
+
const nodeCenter = density === "activity" ? 12 : 13;
|
|
13
|
+
const mainSpineX = FEED_RAIL_WIDTH / 2 - FEED_NESTED_OFFSET;
|
|
14
|
+
const branchWidth = FEED_RAIL_WIDTH / 2 - mainSpineX;
|
|
15
|
+
return (_jsxs("div", { className: `relative grid ${bottomPad} ${className}`, style: {
|
|
16
|
+
gridTemplateColumns: `${FEED_RAIL_WIDTH}px minmax(0, 1fr)`,
|
|
17
|
+
marginLeft: nested ? FEED_NESTED_OFFSET : undefined,
|
|
18
|
+
}, children: [_jsxs("div", { className: "relative flex items-start justify-center self-stretch", children: [nested ? (_jsx("span", { "aria-hidden": true, className: "absolute bg-[var(--adaptive-black300)]", style: {
|
|
19
|
+
left: mainSpineX,
|
|
20
|
+
top: nodeCenter,
|
|
21
|
+
width: branchWidth,
|
|
22
|
+
height: 1,
|
|
23
|
+
} })) : null, _jsx("div", { "data-feed-spine-node": "true", className: "relative z-[1] flex shrink-0 self-start", children: node })] }), _jsx("div", { className: `min-w-0 ${nested ? "pl-[8px]" : "pl-[10px]"}`, children: children })] }));
|
|
24
|
+
}
|
|
25
|
+
/** Spine status icon with the same soft tone fill as the activity chip. */
|
|
26
|
+
export function FeedSpineIcon({ children, tone = "neutral", className = "" }) {
|
|
27
|
+
return (_jsx("span", { className: `mt-[1px] inline-flex h-[22px] w-[22px] shrink-0 items-center justify-center rounded-[8px] ${getFeedSpineNodeSurfaceClass(tone)} ${className}`, children: children }));
|
|
28
|
+
}
|
|
29
|
+
export function FeedSpineDot({ className = "" }) {
|
|
30
|
+
return (_jsx("span", { "aria-hidden": true, className: `mt-[1px] inline-flex h-[22px] w-[22px] items-center justify-center rounded-[8px] bg-[var(--adaptive-black100)] ${className}`, children: _jsx("span", { className: "h-[6px] w-[6px] rounded-full bg-[var(--adaptive-black400)]" }) }));
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=FeedTimelineRow.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FeedTimelineRow.js","sourceRoot":"","sources":["../../../../../src/components/panel/feedback/feed/FeedTimelineRow.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,4BAA4B,EAAE,MAAM,0BAA0B,CAAC;AAExE,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,CAAC;AAClC,6EAA6E;AAC7E,MAAM,CAAC,MAAM,kBAAkB,GAAG,EAAE,CAAC;AAqBrC;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,EAC5B,IAAI,EACJ,MAAM,GAAG,KAAK,EACd,OAAO,GAAG,SAAS,EACnB,QAAQ,EACR,SAAS,GAAG,EAAE,GACK;IACnB,MAAM,SAAS,GAAG,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC;IACpE,MAAM,UAAU,GAAG,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACpD,MAAM,UAAU,GAAG,eAAe,GAAG,CAAC,GAAG,kBAAkB,CAAC;IAC5D,MAAM,WAAW,GAAG,eAAe,GAAG,CAAC,GAAG,UAAU,CAAC;IAErD,OAAO,CACH,eACI,SAAS,EAAE,iBAAiB,SAAS,IAAI,SAAS,EAAE,EACpD,KAAK,EAAE;YACH,mBAAmB,EAAE,GAAG,eAAe,mBAAmB;YAC1D,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,SAAS;SACtD,aAED,eAAK,SAAS,EAAC,uDAAuD,aACjE,MAAM,CAAC,CAAC,CAAC,CACN,oCAEI,SAAS,EAAC,wCAAwC,EAClD,KAAK,EAAE;4BACH,IAAI,EAAE,UAAU;4BAChB,GAAG,EAAE,UAAU;4BACf,KAAK,EAAE,WAAW;4BAClB,MAAM,EAAE,CAAC;yBACZ,GACH,CACL,CAAC,CAAC,CAAC,IAAI,EACR,sCACyB,MAAM,EAC3B,SAAS,EAAC,yCAAyC,YAElD,IAAI,GACH,IACJ,EACN,cAAK,SAAS,EAAE,WAAW,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,EAAE,YAAG,QAAQ,GAAO,IAC9E,CACT,CAAC;AACN,CAAC;AASD,2EAA2E;AAC3E,MAAM,UAAU,aAAa,CAAC,EAAE,QAAQ,EAAE,IAAI,GAAG,SAAS,EAAE,SAAS,GAAG,EAAE,EAAsB;IAC5F,OAAO,CACH,eACI,SAAS,EAAE,6FAA6F,4BAA4B,CAAC,IAAI,CAAC,IAAI,SAAS,EAAE,YAExJ,QAAQ,GACN,CACV,CAAC;AACN,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,EAAE,SAAS,GAAG,EAAE,EAA0B;IACnE,OAAO,CACH,oCAEI,SAAS,EAAE,kHAAkH,SAAS,EAAE,YAExI,eAAM,SAAS,EAAC,4DAA4D,GAAG,GAC5E,CACV,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { type ReactNode } from "react";
|
|
2
|
+
type FeedTimelineTrackProps = {
|
|
3
|
+
children: ReactNode;
|
|
4
|
+
className?: string;
|
|
5
|
+
};
|
|
6
|
+
/**
|
|
7
|
+
* Continuous main spine that ends at the center of the last spine node
|
|
8
|
+
* (no trailing line below the final history icon).
|
|
9
|
+
*/
|
|
10
|
+
export declare function FeedTimelineTrack({ children, className }: FeedTimelineTrackProps): import("react").JSX.Element;
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=FeedTimelineTrack.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FeedTimelineTrack.d.ts","sourceRoot":"","sources":["../../../../../src/components/panel/feedback/feed/FeedTimelineTrack.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAqC,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAG1E,KAAK,sBAAsB,GAAG;IAC1B,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,QAAQ,EAAE,SAAc,EAAE,EAAE,sBAAsB,+BAoErF"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useLayoutEffect, useRef, useState } from "react";
|
|
3
|
+
import { FEED_RAIL_WIDTH } from "./FeedTimelineRow.js";
|
|
4
|
+
/**
|
|
5
|
+
* Continuous main spine that ends at the center of the last spine node
|
|
6
|
+
* (no trailing line below the final history icon).
|
|
7
|
+
*/
|
|
8
|
+
export function FeedTimelineTrack({ children, className = "" }) {
|
|
9
|
+
const rootRef = useRef(null);
|
|
10
|
+
const [spineHeightPx, setSpineHeightPx] = useState(null);
|
|
11
|
+
useLayoutEffect(() => {
|
|
12
|
+
const root = rootRef.current;
|
|
13
|
+
if (!root) {
|
|
14
|
+
return;
|
|
15
|
+
}
|
|
16
|
+
const measure = () => {
|
|
17
|
+
const nodes = root.querySelectorAll("[data-feed-spine-node='true']");
|
|
18
|
+
const last = nodes[nodes.length - 1];
|
|
19
|
+
if (!last) {
|
|
20
|
+
setSpineHeightPx((current) => (current == null ? current : null));
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
const rootRect = root.getBoundingClientRect();
|
|
24
|
+
const nodeRect = last.getBoundingClientRect();
|
|
25
|
+
const centerY = Math.round(Math.max(0, nodeRect.top - rootRect.top + nodeRect.height / 2));
|
|
26
|
+
setSpineHeightPx((current) => (current === centerY ? current : centerY));
|
|
27
|
+
};
|
|
28
|
+
measure();
|
|
29
|
+
const resizeObserver = new ResizeObserver(measure);
|
|
30
|
+
resizeObserver.observe(root);
|
|
31
|
+
const observeSpineNodes = () => {
|
|
32
|
+
for (const node of root.querySelectorAll("[data-feed-spine-node='true']")) {
|
|
33
|
+
resizeObserver.observe(node);
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
observeSpineNodes();
|
|
37
|
+
const mutationObserver = new MutationObserver(() => {
|
|
38
|
+
observeSpineNodes();
|
|
39
|
+
measure();
|
|
40
|
+
});
|
|
41
|
+
mutationObserver.observe(root, { childList: true, subtree: true });
|
|
42
|
+
return () => {
|
|
43
|
+
resizeObserver.disconnect();
|
|
44
|
+
mutationObserver.disconnect();
|
|
45
|
+
};
|
|
46
|
+
}, []);
|
|
47
|
+
return (_jsxs("div", { ref: rootRef, className: `relative ${className}`, children: [_jsx("span", { "aria-hidden": true, className: "pointer-events-none absolute top-0 w-px bg-[var(--adaptive-black300)]", style: {
|
|
48
|
+
left: FEED_RAIL_WIDTH / 2,
|
|
49
|
+
transform: "translateX(-50%)",
|
|
50
|
+
height: spineHeightPx == null ? "100%" : spineHeightPx,
|
|
51
|
+
} }), children] }));
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=FeedTimelineTrack.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FeedTimelineTrack.js","sourceRoot":"","sources":["../../../../../src/components/panel/feedback/feed/FeedTimelineTrack.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { ReactNode } from "react";
|
|
2
|
+
import { type FeedRowDensity } from "./FeedTimelineRow.js";
|
|
3
|
+
type ThreadLayoutShellProps = {
|
|
4
|
+
classicTime?: string;
|
|
5
|
+
classicReplyIndicator?: boolean;
|
|
6
|
+
feedNode?: ReactNode;
|
|
7
|
+
nested?: boolean;
|
|
8
|
+
hideLineBelow?: boolean;
|
|
9
|
+
hideLineAbove?: boolean;
|
|
10
|
+
density?: FeedRowDensity;
|
|
11
|
+
children: ReactNode;
|
|
12
|
+
className?: string;
|
|
13
|
+
};
|
|
14
|
+
/** Picks classic time-rail vs feed spine based on Settings → Appearance → Thread layout. */
|
|
15
|
+
export declare function ThreadLayoutShell({ classicTime, classicReplyIndicator, feedNode, nested, hideLineBelow, hideLineAbove, density, children, className, }: ThreadLayoutShellProps): import("react").JSX.Element;
|
|
16
|
+
export {};
|
|
17
|
+
//# sourceMappingURL=ThreadLayoutShell.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ThreadLayoutShell.d.ts","sourceRoot":"","sources":["../../../../../src/components/panel/feedback/feed/ThreadLayoutShell.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC,OAAO,EAAmB,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE5E,KAAK,sBAAsB,GAAG;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,4FAA4F;AAC5F,wBAAgB,iBAAiB,CAAC,EAC9B,WAAW,EACX,qBAA6B,EAC7B,QAAQ,EACR,MAAc,EACd,aAAqB,EACrB,aAAqB,EACrB,OAAmB,EACnB,QAAQ,EACR,SAAc,GACjB,EAAE,sBAAsB,+BA2BxB"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useReportPreferences } from "../../../../providers/reportContext.js";
|
|
3
|
+
import { ThreadTimelineRow } from "../ThreadTimelineRow.js";
|
|
4
|
+
import { FeedTimelineRow } from "./FeedTimelineRow.js";
|
|
5
|
+
/** Picks classic time-rail vs feed spine based on Settings → Appearance → Thread layout. */
|
|
6
|
+
export function ThreadLayoutShell({ classicTime, classicReplyIndicator = false, feedNode, nested = false, hideLineBelow = false, hideLineAbove = false, density = "comment", children, className = "", }) {
|
|
7
|
+
const { threadLayout } = useReportPreferences();
|
|
8
|
+
if (threadLayout === "feed") {
|
|
9
|
+
return (_jsx(FeedTimelineRow, { node: feedNode, nested: nested, hideLineBelow: hideLineBelow, hideLineAbove: hideLineAbove, density: density, className: className, children: children }));
|
|
10
|
+
}
|
|
11
|
+
return (_jsx(ThreadTimelineRow, { time: classicTime, replyIndicator: classicReplyIndicator || nested, className: className, children: children }));
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=ThreadLayoutShell.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ThreadLayoutShell.js","sourceRoot":"","sources":["../../../../../src/components/panel/feedback/feed/ThreadLayoutShell.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAuB,MAAM,sBAAsB,CAAC;AAc5E,4FAA4F;AAC5F,MAAM,UAAU,iBAAiB,CAAC,EAC9B,WAAW,EACX,qBAAqB,GAAG,KAAK,EAC7B,QAAQ,EACR,MAAM,GAAG,KAAK,EACd,aAAa,GAAG,KAAK,EACrB,aAAa,GAAG,KAAK,EACrB,OAAO,GAAG,SAAS,EACnB,QAAQ,EACR,SAAS,GAAG,EAAE,GACO;IACrB,MAAM,EAAE,YAAY,EAAE,GAAG,oBAAoB,EAAE,CAAC;IAEhD,IAAI,YAAY,KAAK,MAAM,EAAE,CAAC;QAC1B,OAAO,CACH,KAAC,eAAe,IACZ,IAAI,EAAE,QAAQ,EACd,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,aAAa,EAC5B,aAAa,EAAE,aAAa,EAC5B,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,SAAS,YAEnB,QAAQ,GACK,CACrB,CAAC;IACN,CAAC;IAED,OAAO,CACH,KAAC,iBAAiB,IACd,IAAI,EAAE,WAAW,EACjB,cAAc,EAAE,qBAAqB,IAAI,MAAM,EAC/C,SAAS,EAAE,SAAS,YAEnB,QAAQ,GACO,CACvB,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { ReportReplyStatus } from "../../../../types/report.js";
|
|
2
|
+
export type FeedActivityTone = "resolved" | "denied" | "assignee" | "recheck" | "suggested" | "neutral";
|
|
3
|
+
export declare function getFeedActivitySurfaceClass(tone: FeedActivityTone): string;
|
|
4
|
+
export declare function getFeedSpineNodeSurfaceClass(tone: FeedActivityTone): string;
|
|
5
|
+
export declare function resolveFeedActivityTone(status: ReportReplyStatus | "detached"): FeedActivityTone;
|
|
6
|
+
//# sourceMappingURL=feedActivitySurface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feedActivitySurface.d.ts","sourceRoot":"","sources":["../../../../../src/components/panel/feedback/feed/feedActivitySurface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAE3D,MAAM,MAAM,gBAAgB,GAAG,UAAU,GAAG,QAAQ,GAAG,UAAU,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,CAAC;AAuBxG,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,gBAAgB,UAEjE;AAED,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,gBAAgB,UAElE;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,iBAAiB,GAAG,UAAU,GAAG,gBAAgB,CAkBhG"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
const FEED_ACTIVITY_SURFACE_BASE = "rounded-[8px] px-[8px] py-[4px]";
|
|
2
|
+
const FEED_ACTIVITY_SURFACE = {
|
|
3
|
+
resolved: `${FEED_ACTIVITY_SURFACE_BASE} bg-[color-mix(in_srgb,var(--adaptive-accent-green)_14%,transparent)]`,
|
|
4
|
+
denied: `${FEED_ACTIVITY_SURFACE_BASE} bg-[color-mix(in_srgb,var(--adaptive-accent-red)_12%,transparent)]`,
|
|
5
|
+
assignee: `${FEED_ACTIVITY_SURFACE_BASE} bg-[color-mix(in_srgb,var(--adaptive-accent-blue)_12%,transparent)]`,
|
|
6
|
+
recheck: `${FEED_ACTIVITY_SURFACE_BASE} bg-[color-mix(in_srgb,var(--adaptive-accent-coral)_12%,transparent)]`,
|
|
7
|
+
suggested: `${FEED_ACTIVITY_SURFACE_BASE} bg-[color-mix(in_srgb,var(--adaptive-accent-blue)_10%,transparent)]`,
|
|
8
|
+
neutral: `${FEED_ACTIVITY_SURFACE_BASE} bg-[var(--adaptive-black100)]`,
|
|
9
|
+
};
|
|
10
|
+
/** Compact spine-node chip — same tone mix as the activity surface, sized for icons. */
|
|
11
|
+
const FEED_SPINE_NODE_SURFACE = {
|
|
12
|
+
resolved: "bg-[color-mix(in_srgb,var(--adaptive-accent-green)_14%,transparent)] text-[var(--adaptive-accent-green)]",
|
|
13
|
+
denied: "bg-[color-mix(in_srgb,var(--adaptive-accent-red)_12%,transparent)] text-[var(--adaptive-accent-red)]",
|
|
14
|
+
assignee: "bg-[color-mix(in_srgb,var(--adaptive-accent-blue)_12%,transparent)] text-[var(--adaptive-accent-blue)]",
|
|
15
|
+
recheck: "bg-[color-mix(in_srgb,var(--adaptive-accent-coral)_12%,transparent)] text-[var(--adaptive-accent-coral)]",
|
|
16
|
+
suggested: "bg-[color-mix(in_srgb,var(--adaptive-accent-blue)_10%,transparent)] text-[var(--adaptive-accent-blue)]",
|
|
17
|
+
neutral: "bg-[var(--adaptive-black100)] text-[var(--adaptive-black500)]",
|
|
18
|
+
};
|
|
19
|
+
export function getFeedActivitySurfaceClass(tone) {
|
|
20
|
+
return FEED_ACTIVITY_SURFACE[tone];
|
|
21
|
+
}
|
|
22
|
+
export function getFeedSpineNodeSurfaceClass(tone) {
|
|
23
|
+
return FEED_SPINE_NODE_SURFACE[tone];
|
|
24
|
+
}
|
|
25
|
+
export function resolveFeedActivityTone(status) {
|
|
26
|
+
switch (status) {
|
|
27
|
+
case "resolved":
|
|
28
|
+
return "resolved";
|
|
29
|
+
case "found_error":
|
|
30
|
+
return "denied";
|
|
31
|
+
case "assignee_assigned":
|
|
32
|
+
case "assignee_transferred":
|
|
33
|
+
return "assignee";
|
|
34
|
+
case "recheck_requested":
|
|
35
|
+
return "recheck";
|
|
36
|
+
case "suggested":
|
|
37
|
+
return "suggested";
|
|
38
|
+
case "detached":
|
|
39
|
+
return "neutral";
|
|
40
|
+
default:
|
|
41
|
+
return "neutral";
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=feedActivitySurface.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feedActivitySurface.js","sourceRoot":"","sources":["../../../../../src/components/panel/feedback/feed/feedActivitySurface.ts"],"names":[],"mappings":"AAIA,MAAM,0BAA0B,GAAG,iCAAiC,CAAC;AAErE,MAAM,qBAAqB,GAAqC;IAC5D,QAAQ,EAAE,GAAG,0BAA0B,uEAAuE;IAC9G,MAAM,EAAE,GAAG,0BAA0B,qEAAqE;IAC1G,QAAQ,EAAE,GAAG,0BAA0B,sEAAsE;IAC7G,OAAO,EAAE,GAAG,0BAA0B,uEAAuE;IAC7G,SAAS,EAAE,GAAG,0BAA0B,sEAAsE;IAC9G,OAAO,EAAE,GAAG,0BAA0B,gCAAgC;CACzE,CAAC;AAEF,wFAAwF;AACxF,MAAM,uBAAuB,GAAqC;IAC9D,QAAQ,EAAE,0GAA0G;IACpH,MAAM,EAAE,sGAAsG;IAC9G,QAAQ,EAAE,wGAAwG;IAClH,OAAO,EAAE,0GAA0G;IACnH,SAAS,EAAE,wGAAwG;IACnH,OAAO,EAAE,+DAA+D;CAC3E,CAAC;AAEF,MAAM,UAAU,2BAA2B,CAAC,IAAsB;IAC9D,OAAO,qBAAqB,CAAC,IAAI,CAAC,CAAC;AACvC,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,IAAsB;IAC/D,OAAO,uBAAuB,CAAC,IAAI,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,MAAsC;IAC1E,QAAQ,MAAM,EAAE,CAAC;QACb,KAAK,UAAU;YACX,OAAO,UAAU,CAAC;QACtB,KAAK,aAAa;YACd,OAAO,QAAQ,CAAC;QACpB,KAAK,mBAAmB,CAAC;QACzB,KAAK,sBAAsB;YACvB,OAAO,UAAU,CAAC;QACtB,KAAK,mBAAmB;YACpB,OAAO,SAAS,CAAC;QACrB,KAAK,WAAW;YACZ,OAAO,WAAW,CAAC;QACvB,KAAK,UAAU;YACX,OAAO,SAAS,CAAC;QACrB;YACI,OAAO,SAAS,CAAC;IACzB,CAAC;AACL,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PanelOnboardingAuthSteps.d.ts","sourceRoot":"","sources":["../../../../src/components/panel/onboarding/PanelOnboardingAuthSteps.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAatD,KAAK,cAAc,GAAG,cAAc,CAAC,YAAY,CAAC,CAAC;AAsDnD,wBAAgB,YAAY,CAAC,EACzB,IAAI,EACJ,OAAO,EACP,QAAQ,EACR,KAAK,EACL,IAAI,EACJ,eAAe,EACf,gBAAgB,EAChB,OAAO,EACP,QAAQ,EACR,MAAM,GACT,EAAE;IACC,IAAI,EAAE,cAAc,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,OAAO,CAAC;IACd,eAAe,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,gBAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,MAAM,EAAE,MAAM,IAAI,CAAC;CACtB,+
|
|
1
|
+
{"version":3,"file":"PanelOnboardingAuthSteps.d.ts","sourceRoot":"","sources":["../../../../src/components/panel/onboarding/PanelOnboardingAuthSteps.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAatD,KAAK,cAAc,GAAG,cAAc,CAAC,YAAY,CAAC,CAAC;AAsDnD,wBAAgB,YAAY,CAAC,EACzB,IAAI,EACJ,OAAO,EACP,QAAQ,EACR,KAAK,EACL,IAAI,EACJ,eAAe,EACf,gBAAgB,EAChB,OAAO,EACP,QAAQ,EACR,MAAM,GACT,EAAE;IACC,IAAI,EAAE,cAAc,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,OAAO,CAAC;IACd,eAAe,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,gBAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,MAAM,EAAE,MAAM,IAAI,CAAC;CACtB,+BA8CA;AAED,wBAAgB,eAAe,CAAC,EAC5B,IAAI,EACJ,OAAO,EACP,QAAQ,EACR,eAAe,EACf,KAAK,EACL,QAAQ,EACR,IAAI,EACJ,eAAe,EACf,gBAAgB,EAChB,uBAAuB,EACvB,aAAa,EACb,gBAAgB,EAChB,QAAQ,EACR,MAAM,GACT,EAAE;IACC,IAAI,EAAE,cAAc,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,OAAO,CAAC;IACd,eAAe,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,gBAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,uBAAuB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACjD,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,gBAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,MAAM,EAAE,MAAM,IAAI,CAAC;CACtB,+BAwCA;AAED,wBAAgB,qBAAqB,CAAC,EAClC,IAAI,EACJ,OAAO,EACP,OAAO,EACP,QAAQ,GACX,EAAE;IACC,IAAI,EAAE,cAAc,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,IAAI,CAAC;CACxB,+BAcA;AAaD,wBAAgB,gBAAgB,CAAC,EAC7B,IAAI,EACJ,KAAK,EACL,IAAI,EACJ,aAAa,EACb,MAAM,GACT,EAAE;IACC,IAAI,EAAE,cAAc,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,OAAO,CAAC;IACd,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,MAAM,EAAE,MAAM,IAAI,CAAC;CACtB,+BA4BA"}
|
|
@@ -13,7 +13,7 @@ export function ApiLoginStep({ copy, loginId, password, error, busy, onLoginIdCh
|
|
|
13
13
|
const loginLock = useIntegrationLock("apiLogin");
|
|
14
14
|
const registerLock = useIntegrationLock("apiRegister");
|
|
15
15
|
const loginDisabled = !loginId.trim() || !password || busy || loginLock.locked;
|
|
16
|
-
return (_jsxs(_Fragment, { children: [_jsxs("div", { children: [_jsx("h6", { className: PANEL_GATE_TITLE_CLASS, children: copy.apiLoginTitle }), _jsx("p", { className: PANEL_GATE_DESCRIPTION_CLASS, children: copy.apiLoginDescription })] }), _jsxs("div", { className: "flex flex-col gap-[8px]", children: [_jsx(OnboardingField, { autoFocus: true, label: copy.loginIdLabel, value: loginId, onChange: onLoginIdChange }), _jsx(OnboardingField, { label: copy.passwordLabel, value: password, onChange: onPasswordChange, type: "password" })] }), error ? _jsx("p", { className: "text-[12px] text-rose-700", children: error }) : null, _jsxs("div", { className: "flex flex-col gap-[8px]", children: [_jsx(HoverTooltip, { label: loginLock.locked ? loginLock.tooltipLabel : undefined, multiline: loginLock.locked, disabled: !loginLock.locked, children: _jsxs("button", { type: "button", disabled: loginDisabled, onClick: onLogin, className: `${PANEL_GATE_PRIMARY_BUTTON_CLASS} inline-flex w-full items-center justify-center gap-[6px] py-[10px]`, children: [loginLock.locked ? _jsx(LockIcon, { className: "h-[12px] w-[12px]" }) : null, copy.loginAction] }) }),
|
|
16
|
+
return (_jsxs(_Fragment, { children: [_jsxs("div", { children: [_jsx("h6", { className: PANEL_GATE_TITLE_CLASS, children: copy.apiLoginTitle }), _jsx("p", { className: PANEL_GATE_DESCRIPTION_CLASS, children: copy.apiLoginDescription })] }), _jsxs("div", { className: "flex flex-col gap-[8px]", children: [_jsx(OnboardingField, { autoFocus: true, label: copy.loginIdLabel, value: loginId, onChange: onLoginIdChange }), _jsx(OnboardingField, { label: copy.passwordLabel, value: password, onChange: onPasswordChange, type: "password" })] }), error ? _jsx("p", { className: "text-[12px] text-rose-700", children: error }) : null, _jsxs("div", { className: "flex flex-col gap-[8px]", children: [_jsx(HoverTooltip, { label: loginLock.locked ? loginLock.tooltipLabel : undefined, multiline: loginLock.locked, disabled: !loginLock.locked, children: _jsxs("button", { type: "button", disabled: loginDisabled, onClick: onLogin, className: `${PANEL_GATE_PRIMARY_BUTTON_CLASS} inline-flex w-full items-center justify-center gap-[6px] py-[10px]`, children: [loginLock.locked ? _jsx(LockIcon, { className: "h-[12px] w-[12px]" }) : null, copy.loginAction] }) }), registerLock.locked ? null : (_jsx("button", { type: "button", disabled: busy, onClick: onSignUp, className: "inline-flex items-center justify-center gap-[6px] rounded-[8px] border border-[var(--adaptive-black200)] px-[12px] py-[10px] text-[12px] font-semibold text-[var(--adaptive-black700)] hover:bg-[var(--adaptive-black100)] disabled:cursor-not-allowed disabled:opacity-50", children: copy.signUpAction }))] }), _jsx(StepFooter, { backLabel: copy.back, onBack: onBack })] }));
|
|
17
17
|
}
|
|
18
18
|
export function ApiRegisterStep({ copy, loginId, password, passwordConfirm, email, username, busy, onLoginIdChange, onPasswordChange, onPasswordConfirmChange, onEmailChange, onUsernameChange, onSubmit, onBack, }) {
|
|
19
19
|
const registerLock = useIntegrationLock("apiRegister");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PanelOnboardingAuthSteps.js","sourceRoot":"","sources":["../../../../src/components/panel/onboarding/PanelOnboardingAuthSteps.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"PanelOnboardingAuthSteps.js","sourceRoot":"","sources":["../../../../src/components/panel/onboarding/PanelOnboardingAuthSteps.tsx"],"names":[],"mappings":"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"}
|
|
@@ -3,10 +3,11 @@ type MarkerCaseSidebarProps = {
|
|
|
3
3
|
report: ReportFeedback;
|
|
4
4
|
focusedCaseId: string | null;
|
|
5
5
|
isComposingNewCase?: boolean;
|
|
6
|
+
hasNewCaseDraftSession?: boolean;
|
|
6
7
|
composingCaseTitle?: string;
|
|
7
8
|
onSelectCase: (caseId: string) => void;
|
|
8
9
|
onSelectComposingCase?: () => void;
|
|
9
10
|
};
|
|
10
|
-
export declare function MarkerCaseSidebar({ report, focusedCaseId, isComposingNewCase, composingCaseTitle, onSelectCase, onSelectComposingCase, }: MarkerCaseSidebarProps): import("react").JSX.Element;
|
|
11
|
+
export declare function MarkerCaseSidebar({ report, focusedCaseId, isComposingNewCase, hasNewCaseDraftSession, composingCaseTitle, onSelectCase, onSelectComposingCase, }: MarkerCaseSidebarProps): import("react").JSX.Element;
|
|
11
12
|
export {};
|
|
12
13
|
//# sourceMappingURL=MarkerCaseSidebar.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MarkerCaseSidebar.d.ts","sourceRoot":"","sources":["../../../src/components/point/MarkerCaseSidebar.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAWxD,KAAK,sBAAsB,GAAG;IAC1B,MAAM,EAAE,cAAc,CAAC;IACvB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,qBAAqB,CAAC,EAAE,MAAM,IAAI,CAAC;CACtC,CAAC;AAkCF,wBAAgB,iBAAiB,CAAC,EAC9B,MAAM,EACN,aAAa,EACb,kBAA0B,EAC1B,kBAAkB,EAClB,YAAY,EACZ,qBAAqB,GACxB,EAAE,sBAAsB,+
|
|
1
|
+
{"version":3,"file":"MarkerCaseSidebar.d.ts","sourceRoot":"","sources":["../../../src/components/point/MarkerCaseSidebar.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAWxD,KAAK,sBAAsB,GAAG;IAC1B,MAAM,EAAE,cAAc,CAAC;IACvB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,qBAAqB,CAAC,EAAE,MAAM,IAAI,CAAC;CACtC,CAAC;AAkCF,wBAAgB,iBAAiB,CAAC,EAC9B,MAAM,EACN,aAAa,EACb,kBAA0B,EAC1B,sBAA8B,EAC9B,kBAAkB,EAClB,YAAY,EACZ,qBAAqB,GACxB,EAAE,sBAAsB,+BAsGxB"}
|
|
@@ -21,17 +21,20 @@ function CaseStatusLabel({ status, isNeedGray }) {
|
|
|
21
21
|
const color = FEEDBACK_STATUS_COLOR[status];
|
|
22
22
|
return (_jsx("span", { className: "shrink-0 whitespace-nowrap text-[11px] font-semibold leading-none", style: { color: isNeedGray ? "var(--adaptive-black500)" : color }, children: messages.status.feedback[status] }));
|
|
23
23
|
}
|
|
24
|
-
export function MarkerCaseSidebar({ report, focusedCaseId, isComposingNewCase = false, composingCaseTitle, onSelectCase, onSelectComposingCase, }) {
|
|
24
|
+
export function MarkerCaseSidebar({ report, focusedCaseId, isComposingNewCase = false, hasNewCaseDraftSession = false, composingCaseTitle, onSelectCase, onSelectComposingCase, }) {
|
|
25
25
|
const { messages } = useReportPreferences();
|
|
26
26
|
const { sessionActor, removePersistedCase, isUpdating } = useReport();
|
|
27
27
|
const cases = getReportCases(report);
|
|
28
28
|
const resolvedComposingTitle = composingCaseTitle ?? messages.cases.composingCaseTitle;
|
|
29
|
+
const showComposingCase = isComposingNewCase || hasNewCaseDraftSession;
|
|
29
30
|
return (_jsxs("div", { className: "flex min-h-0 flex-1 flex-col overflow-hidden", children: [_jsx("p", { className: "shrink-0 px-[14px] pb-[8px] pt-[4px] text-[12px] font-semibold text-[var(--adaptive-black500)]", children: messages.cases.title }), _jsxs("ul", { className: "flex min-h-0 flex-1 flex-col gap-[2px] overflow-auto px-[6px] pb-[10px]", children: [cases.map((item) => {
|
|
30
31
|
const isActive = !isComposingNewCase && item.id === focusedCaseId;
|
|
31
32
|
const status = getCaseLatestStatus(report, item.id);
|
|
32
33
|
const showRemove = canRemoveCase(report, item.id, sessionActor);
|
|
33
34
|
const caseRelativeTime = formatRelativeTime(item.created_at, messages.common.relativeTime);
|
|
34
35
|
return (_jsxs("li", { className: "group relative", children: [_jsxs("button", { type: "button", "data-fivepixels-interactive": "", "aria-current": isActive, onClick: () => onSelectCase(item.id), className: `flex w-full flex-col items-start justify-center gap-[8px] rounded-[8px] px-[8px] py-[8px] text-left transition-colors ${isActive ? "bg-[var(--adaptive-neutralTintOpacity900)] text-[var(--adaptive-black900)]" : "text-[var(--adaptive-black700)] hover:bg-[var(--adaptive-tintOpacity100)]"} ${showRemove ? "pr-[28px]" : ""}`, children: [_jsxs("section", { className: "flex w-full items-center gap-[4px]", children: [_jsx(CaseStatusIndicator, { caseStatus: item.status }), _jsx("span", { className: "min-w-0 flex-1 truncate text-[14px] leading-[1]", title: mentionMessageToPlainText(item.text, item.mentions), children: mentionMessageToPlainText(item.text, item.mentions) })] }), _jsxs("div", { className: "flex w-full min-w-0 items-center justify-between gap-[8px]", children: [_jsx(CaseStatusLabel, { status: status, isNeedGray: true }), _jsx("span", { className: "min-w-0 truncate text-[11px] tabular-nums leading-none text-[var(--adaptive-black500)]", children: caseRelativeTime })] })] }), showRemove ? (_jsx("div", { className: "absolute right-[6px] top-[10px] z-[1] opacity-0 transition-opacity group-hover:opacity-100 group-focus-within:opacity-100", children: _jsx(FeedbackDeleteAction, { reportId: item.id, onDelete: async () => removePersistedCase(report, item.id), disabled: isUpdating, messages: messages, deleteTitle: messages.cases.removeCaseTitle, deleteConfirmTitle: messages.cases.removeCaseConfirmTitle, deleteAriaLabel: messages.cases.removeCaseAriaLabel, deleteConfirmAriaLabel: messages.cases.removeCaseConfirmAriaLabel, className: "flex h-[20px] w-[20px] items-center justify-center disabled:opacity-50 text-[var(--adaptive-black400)] hover:text-[var(--adaptive-black900)]" }) })) : null] }, item.id));
|
|
35
|
-
}),
|
|
36
|
+
}), showComposingCase ? (_jsx("li", { children: _jsxs("button", { type: "button", "data-fivepixels-interactive": "", "aria-current": isComposingNewCase, onClick: () => onSelectComposingCase?.(), className: `flex w-full flex-col items-start justify-center gap-[8px] rounded-[8px] px-[8px] py-[8px] text-left ${isComposingNewCase
|
|
37
|
+
? "bg-[var(--adaptive-neutralTintOpacity900)] text-[var(--adaptive-black900)]"
|
|
38
|
+
: "text-[var(--adaptive-black700)] hover:bg-[var(--adaptive-tintOpacity100)]"}`, children: [_jsxs("section", { className: "flex w-full items-center gap-[4px]", children: [_jsx("span", { "aria-hidden": true, className: "inline-flex h-[12px] w-[12px] shrink-0 rounded-full border border-dashed border-[var(--adaptive-blue400)]" }), _jsx("span", { className: "min-w-0 flex-1 truncate text-[14px] font-semibold leading-[1] text-[var(--adaptive-blue400)]", children: resolvedComposingTitle })] }), _jsx("div", { className: "flex w-full min-w-0 items-center justify-between gap-[8px]", children: _jsx("span", { className: "shrink-0 whitespace-nowrap text-[11px] font-semibold leading-none text-[var(--adaptive-black500)]", children: messages.cases.open }) })] }) })) : null] })] }));
|
|
36
39
|
}
|
|
37
40
|
//# sourceMappingURL=MarkerCaseSidebar.js.map
|