Skip to content

Commit 0b0125e

Browse files
committed
add reset schemaAnalysis and fix typing
1 parent 63a43af commit 0b0125e

File tree

2 files changed

+23
-7
lines changed

2 files changed

+23
-7
lines changed

packages/compass-collection/src/modules/collection-tab.ts

Lines changed: 20 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ import {
2121
type SchemaAnalysisState,
2222
} from '../schema-analysis-types';
2323
import { calculateSchemaDepth } from '../calculate-schema-depth';
24-
import type { MongoError } from 'mongodb';
24+
import type { Document, MongoError } from 'mongodb';
2525

2626
const DEFAULT_SAMPLE_SIZE = 100;
2727

@@ -79,13 +79,18 @@ enum CollectionActions {
7979
SchemaAnalysisStarted = 'compass-collection/SchemaAnalysisStarted',
8080
SchemaAnalysisFinished = 'compass-collection/SchemaAnalysisFinished',
8181
SchemaAnalysisFailed = 'compass-collection/SchemaAnalysisFailed',
82+
SchemaAnalysisReset = 'compass-collection/SchemaAnalysisReset',
8283
}
8384

8485
interface CollectionMetadataFetchedAction {
8586
type: CollectionActions.CollectionMetadataFetched;
8687
metadata: CollectionMetadata;
8788
}
8889

90+
interface SchemaAnalysisResetAction {
91+
type: CollectionActions.SchemaAnalysisReset;
92+
}
93+
8994
interface SchemaAnalysisStartedAction {
9095
type: CollectionActions.SchemaAnalysisStarted;
9196
}
@@ -129,6 +134,20 @@ const reducer: Reducer<CollectionState, Action> = (
129134
};
130135
}
131136

137+
if (
138+
isAction<SchemaAnalysisResetAction>(
139+
action,
140+
CollectionActions.SchemaAnalysisReset
141+
)
142+
) {
143+
return {
144+
...state,
145+
schemaAnalysis: {
146+
status: SCHEMA_ANALYSIS_STATE_INITIAL,
147+
},
148+
};
149+
}
150+
132151
if (
133152
isAction<SchemaAnalysisStartedAction>(
134153
action,
@@ -139,10 +158,6 @@ const reducer: Reducer<CollectionState, Action> = (
139158
...state,
140159
schemaAnalysis: {
141160
status: SCHEMA_ANALYSIS_STATE_ANALYZING,
142-
error: null,
143-
schema: null,
144-
sampleDocument: null,
145-
schemaMetadata: null,
146161
},
147162
};
148163
}

packages/compass-collection/src/schema-analysis-types.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import type { Document } from 'mongodb';
12
import { type Schema } from 'mongodb-schema';
23

34
export const SCHEMA_ANALYSIS_STATE_INITIAL = 'initial';
@@ -40,7 +41,7 @@ export type SchemaAnalysisCompletedState = {
4041
};
4142

4243
export type SchemaAnalysisState =
43-
| SchemaAnalysisErrorState
4444
| SchemaAnalysisInitialState
4545
| SchemaAnalysisStartedState
46-
| SchemaAnalysisCompletedState;
46+
| SchemaAnalysisCompletedState
47+
| SchemaAnalysisErrorState;

0 commit comments

Comments
 (0)