Skip to content

Commit

Permalink
Show a user visible error if semanticSort fails.
Browse files Browse the repository at this point in the history
Note the message likely won't be very useful, I presume I'm not unpacking the server side error well.

Part of #688.
  • Loading branch information
jkomoros committed May 12, 2024
1 parent 4e04e8e commit 7dbe4c9
Show file tree
Hide file tree
Showing 3 changed files with 30 additions and 7 deletions.
7 changes: 7 additions & 0 deletions src/actions.ts
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,7 @@ export const TURN_SUGGEST_MISSING_CONCEPTS = 'TURN_SUGGEST_MISSING_CONCEPTS';
export const BULK_IMPORT_DIALOG_OPEN = 'BULK_IMPORT_DIALOG_OPEN';
export const BULK_IMPORT_PENDING = 'BULK_IMPORT_DIALOG_PENDING';
export const BULK_IMPORT_SUCCESS = 'BULK_IMPORT_SUCCESS';
export const BULK_IMPORT_FAILURE = 'BULK_IMPORT_FAILURE';
export const BULK_IMPORT_DIALOG_CLOSE = 'BULK_IMPORT_DIAOG_CLOSE';
export const BULK_IMPORT_SET_BODIES = 'BULK_IMPORT_SET_BODIES';
export const BULK_IMPORT_SET_OVERRIDE_CARD_ORDER = 'BULK_IMPORT_SET_OVERRIDE_CARD_ORDER';
Expand Down Expand Up @@ -368,6 +369,11 @@ type ActionBulkImportDialogSetOverrideCardOrder = {
order: CardID[]
};

type ActionBulkImportFailure = {
type: typeof BULK_IMPORT_FAILURE,
error: string
};

type ActionBulkImportSuccees = {
type: typeof BULK_IMPORT_SUCCESS
}
Expand Down Expand Up @@ -1028,6 +1034,7 @@ export type SomeAction = ActionAIRequestStarted
| ActionBulkImportDialogOpen
| ActionBulkImportPending
| ActionBulkImportSuccees
| ActionBulkImportFailure
| ActionBulkImportDialogClose
| ActionBulkImportSetBodies
| ActionBulkImportDialogSetOverrideCardOrder
Expand Down
20 changes: 14 additions & 6 deletions src/actions/bulk-import.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import {
BULK_IMPORT_DIALOG_CLOSE,
BULK_IMPORT_DIALOG_OPEN,
BULK_IMPORT_FAILURE,
BULK_IMPORT_PENDING,
BULK_IMPORT_SET_BODIES,
BULK_IMPORT_SET_OVERRIDE_CARD_ORDER,
Expand Down Expand Up @@ -94,10 +95,17 @@ export const semanticSortExport = () : ThunkSomeAction => async (dispatch, getSt
dispatch({
type: BULK_IMPORT_PENDING
});
const result = await semanticSortCallable({cards: cardIDs});
console.log('Number of swaps made: ', result.data.swaps);
dispatch({
type: BULK_IMPORT_SET_OVERRIDE_CARD_ORDER,
order: result.data.cards
});
try {
const result = await semanticSortCallable({cards: cardIDs});
console.log('Number of swaps made: ', result.data.swaps);
dispatch({
type: BULK_IMPORT_SET_OVERRIDE_CARD_ORDER,
order: result.data.cards
});
} catch(e) {
dispatch({
type: BULK_IMPORT_FAILURE,
error: String(e)
});
}
};
10 changes: 9 additions & 1 deletion src/reducers/bulk-import.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,8 @@ import {
BULK_IMPORT_SET_BODIES,
BULK_IMPORT_SUCCESS,
BULK_IMPORT_SET_OVERRIDE_CARD_ORDER,
SomeAction
SomeAction,
BULK_IMPORT_FAILURE
} from '../actions.js';

import {
Expand Down Expand Up @@ -51,6 +52,13 @@ const app = (state : BulkImportState = INITIAL_STATE, action : SomeAction) : Bul
pending: false,
open: false
};
case BULK_IMPORT_FAILURE:
//TODO: is it weird to have an alert here?
alert('Failure: ' + action.error);
return {
...state,
pending: false
};
case BULK_IMPORT_SET_BODIES:
return {
...state,
Expand Down

0 comments on commit 7dbe4c9

Please sign in to comment.