Use search instead of email field

This commit is contained in:
dominik-zeglen 2019-09-16 13:22:15 +02:00
parent 1106cb8c92
commit 186b373821
8 changed files with 32 additions and 7 deletions

View file

@ -168,7 +168,6 @@ export const orderListQuery = gql`
$after: String $after: String
$last: Int $last: Int
$before: String $before: String
$status: OrderStatusFilter
$filter: OrderFilterInput $filter: OrderFilterInput
) { ) {
orders( orders(
@ -176,7 +175,6 @@ export const orderListQuery = gql`
after: $after after: $after
first: $first first: $first
last: $last last: $last
status: $status
filter: $filter filter: $filter
) { ) {
edges { edges {

View file

@ -2,7 +2,7 @@
/* eslint-disable */ /* eslint-disable */
// This file was automatically generated and should not be edited. // This file was automatically generated and should not be edited.
import { OrderStatusFilter, OrderFilterInput, PaymentChargeStatusEnum, OrderStatus } from "./../../types/globalTypes"; import { OrderFilterInput, PaymentChargeStatusEnum, OrderStatus } from "./../../types/globalTypes";
// ==================================================== // ====================================================
// GraphQL query operation: OrderList // GraphQL query operation: OrderList
@ -81,6 +81,5 @@ export interface OrderListVariables {
after?: string | null; after?: string | null;
last?: number | null; last?: number | null;
before?: string | null; before?: string | null;
status?: OrderStatusFilter | null;
filter?: OrderFilterInput | null; filter?: OrderFilterInput | null;
} }

View file

@ -19,7 +19,8 @@ export enum OrderListUrlFiltersEnum {
dateFrom = "dateFrom", dateFrom = "dateFrom",
dateTo = "dateTo", dateTo = "dateTo",
email = "email", email = "email",
payment = "payment" payment = "payment",
query = "query"
} }
export enum OrderListUrlFiltersWithMultipleValuesEnum { export enum OrderListUrlFiltersWithMultipleValuesEnum {
status = "status" status = "status"

View file

@ -228,14 +228,14 @@ export const OrderList: React.StatelessComponent<OrderListProps> = ({
/> />
</Button> </Button>
} }
onSearchChange={email => changeFilterField({ email })} onSearchChange={query => changeFilterField({ query })}
onFilterAdd={data => onFilterAdd={data =>
changeFilterField(createFilter(params, data)) changeFilterField(createFilter(params, data))
} }
onTabSave={() => openModal("save-search")} onTabSave={() => openModal("save-search")}
onTabDelete={() => openModal("delete-search")} onTabDelete={() => openModal("delete-search")}
onTabChange={handleTabChange} onTabChange={handleTabChange}
initialSearch={params.email || ""} initialSearch={params.query || ""}
tabs={getFilterTabs().map(tab => tab.name)} tabs={getFilterTabs().map(tab => tab.name)}
onAll={() => onAll={() =>
changeFilters({ changeFilters({

View file

@ -10,6 +10,10 @@ Array [
"label": "Date to 2019-09-10", "label": "Date to 2019-09-10",
"onClick": [Function], "onClick": [Function],
}, },
Object {
"label": "email@example.com",
"onClick": [Function],
},
Object { Object {
"label": "Fulfilled", "label": "Fulfilled",
"onClick": [Function], "onClick": [Function],
@ -88,6 +92,7 @@ Object {
"lte": "2019-09-10", "lte": "2019-09-10",
}, },
"customer": "email@example.com", "customer": "email@example.com",
"search": "24",
"status": Array [ "status": Array [
"FULFILLED", "FULFILLED",
"PARTIALLY_FULFILLED", "PARTIALLY_FULFILLED",
@ -102,6 +107,7 @@ Object {
"lte": "2019-09-10", "lte": "2019-09-10",
}, },
"customer": "email@example.com", "customer": "email@example.com",
"search": "24",
"status": Array [ "status": Array [
"FULFILLED", "FULFILLED",
], ],

View file

@ -115,6 +115,7 @@ test("Crate filter chips", () => {
{ {
dateFrom: "2019-09-01", dateFrom: "2019-09-01",
dateTo: "2019-09-10", dateTo: "2019-09-10",
email: "email@example.com",
status: [OrderStatus.FULFILLED, OrderStatus.PARTIALLY_FULFILLED] status: [OrderStatus.FULFILLED, OrderStatus.PARTIALLY_FULFILLED]
}, },
{ {
@ -133,6 +134,7 @@ describe("Get filter variables", () => {
dateFrom: "2019-09-01", dateFrom: "2019-09-01",
dateTo: "2019-09-10", dateTo: "2019-09-10",
email: "email@example.com", email: "email@example.com",
query: "24",
status: OrderStatus.FULFILLED.toString() status: OrderStatus.FULFILLED.toString()
}); });
@ -144,6 +146,7 @@ describe("Get filter variables", () => {
dateFrom: "2019-09-01", dateFrom: "2019-09-01",
dateTo: "2019-09-10", dateTo: "2019-09-10",
email: "email@example.com", email: "email@example.com",
query: "24",
status: [ status: [
OrderStatus.FULFILLED.toString(), OrderStatus.FULFILLED.toString(),
OrderStatus.PARTIALLY_FULFILLED.toString() OrderStatus.PARTIALLY_FULFILLED.toString()

View file

@ -84,6 +84,7 @@ export function getFilterVariables(
lte: params.dateTo lte: params.dateTo
}, },
customer: params.email, customer: params.email,
search: params.query,
status: Array.isArray(params.status) status: Array.isArray(params.status)
? params.status.map(status => findInEnum(status, OrderStatusFilter)) ? params.status.map(status => findInEnum(status, OrderStatusFilter))
: params.status : params.status
@ -191,6 +192,20 @@ export function createFilterChips(
} }
} }
if (!!filters.email) {
filterChips = [
...filterChips,
{
label: filters.email,
onClick: () =>
onFilterDelete({
...filters,
email: undefined
})
}
];
}
if (!!filters.status) { if (!!filters.status) {
const statusFilterChips = Array.isArray(filters.status) const statusFilterChips = Array.isArray(filters.status)
? filters.status.map((status, statusIndex) => ({ ? filters.status.map((status, statusIndex) => ({

View file

@ -2,6 +2,8 @@
/* eslint-disable */ /* eslint-disable */
// This file was automatically generated and should not be edited. // This file was automatically generated and should not be edited.
import { ProductTypeFilterInput } from "./../../types/globalTypes";
// ==================================================== // ====================================================
// GraphQL query operation: ProductTypeList // GraphQL query operation: ProductTypeList
// ==================================================== // ====================================================
@ -49,4 +51,5 @@ export interface ProductTypeListVariables {
before?: string | null; before?: string | null;
first?: number | null; first?: number | null;
last?: number | null; last?: number | null;
filter?: ProductTypeFilterInput | null;
} }