2019-11-21 12:13:41 +00:00
|
|
|
import { IntlShape } from "react-intl";
|
|
|
|
|
2019-11-22 15:39:20 +00:00
|
|
|
import { UseNavigatorResult } from "@saleor/hooks/useNavigator";
|
|
|
|
import { OrderDraftCreate } from "@saleor/orders/types/OrderDraftCreate";
|
|
|
|
import { MutationFunction } from "react-apollo";
|
2019-11-21 12:13:41 +00:00
|
|
|
import { QuickSearchAction, QuickSearchMode } from "../types";
|
2019-11-22 15:39:20 +00:00
|
|
|
import getCommandModeActions from "./commands";
|
2019-11-21 12:13:41 +00:00
|
|
|
import getDefaultModeActions from "./default";
|
|
|
|
import getOrdersModeActions from "./orders";
|
2019-11-21 17:47:06 +00:00
|
|
|
import { ActionQueries } from "./types";
|
2019-11-21 12:13:41 +00:00
|
|
|
|
|
|
|
function getModeActions(
|
|
|
|
mode: QuickSearchMode,
|
|
|
|
query: string,
|
2019-11-21 17:47:06 +00:00
|
|
|
intl: IntlShape,
|
2019-11-22 15:39:20 +00:00
|
|
|
queries: ActionQueries,
|
|
|
|
cbs: {
|
|
|
|
navigate: UseNavigatorResult;
|
|
|
|
createOrder: MutationFunction<OrderDraftCreate, {}>;
|
|
|
|
}
|
2019-11-21 12:13:41 +00:00
|
|
|
): QuickSearchAction[] {
|
|
|
|
switch (mode) {
|
2019-11-22 15:39:20 +00:00
|
|
|
case "commands":
|
|
|
|
return getCommandModeActions(query, intl, cbs.navigate, cbs.createOrder);
|
2019-11-21 12:13:41 +00:00
|
|
|
case "orders":
|
2019-11-22 15:39:20 +00:00
|
|
|
return getOrdersModeActions(query, intl, cbs.navigate, queries.order);
|
2019-11-21 12:13:41 +00:00
|
|
|
default:
|
2019-11-22 15:39:20 +00:00
|
|
|
return getDefaultModeActions(query, intl, cbs.navigate, cbs.createOrder);
|
2019-11-21 12:13:41 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
export default getModeActions;
|