@striae-org/striae 4.3.1 → 4.3.2

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.
@@ -3,7 +3,10 @@ import type { AuditAction, AuditResult, ValidationAuditEntry } from '~/types';
3
3
  import type { DateRangeFilter } from './types';
4
4
 
5
5
  const isConfirmationImportEntry = (entry: ValidationAuditEntry): boolean => {
6
- return entry.action === 'import' && entry.details.workflowPhase === 'confirmation';
6
+ return (
7
+ entry.action === 'confirmation-import' ||
8
+ (entry.action === 'import' && entry.details.workflowPhase === 'confirmation')
9
+ );
7
10
  };
8
11
 
9
12
  export const useAuditViewerFilters = (caseNumber?: string) => {
@@ -73,7 +76,7 @@ export const useAuditViewerFilters = (caseNumber?: string) => {
73
76
  } else if (filterAction === 'confirmation-export') {
74
77
  actionMatch = entry.action === 'export' && entry.details.workflowPhase === 'confirmation';
75
78
  } else if (filterAction === 'confirmation-import') {
76
- actionMatch = entry.action === 'import' && entry.details.workflowPhase === 'confirmation';
79
+ actionMatch = isConfirmationImportEntry(entry);
77
80
  } else {
78
81
  actionMatch = entry.action === filterAction;
79
82
  }
@@ -557,9 +557,12 @@ export const Striae = ({ user }: StriaePage) => {
557
557
  // Successful read-only case import - load the case
558
558
  handleCaseChange(result.caseNumber);
559
559
  } else if (result.caseNumber) {
560
- setConfirmationSaveVersion(prev => prev + 1);
561
560
  if (result.caseNumber === currentCase) {
561
+ // Current case updated - refresh annotations (also bumps confirmationSaveVersion)
562
562
  refreshAnnotationData();
563
+ } else {
564
+ // Different case's confirmations updated - bump confirmation version only
565
+ setConfirmationSaveVersion(prev => prev + 1);
563
566
  }
564
567
  } else if (!result.caseNumber && !result.isReadOnly) {
565
568
  // Read-only case cleared - reset all UI state
@@ -90,7 +90,6 @@ const generateConfirmationSummary = (entries: ValidationAuditEntry[]): string =>
90
90
  imports.forEach(entry => {
91
91
  const metrics = entry.details.performanceMetrics;
92
92
  const caseDetails = entry.details.caseDetails;
93
- const userProfileDetails = entry.details.userProfileDetails;
94
93
 
95
94
  if (metrics?.validationStepsCompleted) {
96
95
  totalConfirmationsImported += metrics.validationStepsCompleted;
@@ -100,7 +99,7 @@ const generateConfirmationSummary = (entries: ValidationAuditEntry[]): string =>
100
99
  }
101
100
  if (entry.details.reviewingExaminerUid) {
102
101
  const uid = entry.details.reviewingExaminerUid;
103
- const badgeId = userProfileDetails?.badgeId;
102
+ const badgeId = entry.details.reviewerBadgeId;
104
103
  const confirmedFileNames = caseDetails?.confirmedFileNames || [];
105
104
 
106
105
  if (!reviewingExaminers.has(uid)) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@striae-org/striae",
3
- "version": "4.3.1",
3
+ "version": "4.3.2",
4
4
  "private": false,
5
5
  "description": "Striae is a specialized, cloud-native platform designed to streamline forensic firearms identification by providing an intuitive environment for digital comparison image annotation, authenticated confirmations, and automated report generation.",
6
6
  "license": "Apache-2.0",