Skip to content

Commit

Permalink
chore: update connector label as connector filter applied
Browse files Browse the repository at this point in the history
  • Loading branch information
gitanjli525 committed Oct 9, 2024
1 parent 3b0954e commit 8b04f85
Show file tree
Hide file tree
Showing 5 changed files with 52 additions and 28 deletions.
24 changes: 16 additions & 8 deletions src/screens/Disputes/DisputesUtils.res
Original file line number Diff line number Diff line change
Expand Up @@ -145,6 +145,13 @@ let initialFixedFilter = () => [
),
]

let getValueFromFilterType = (filter: filter) => {
switch filter {
| #connector_label => "merchant_connector_id"
| _ => (filter :> string)
}
}

let getConditionalFilter = (key, dict, filterValues) => {
switch key->getFilterTypeFromString {
| #connector_label =>
Expand Down Expand Up @@ -193,14 +200,20 @@ let itemToObjMapper = dict => {
}
}

let initialFilters = (json, filtervalues) => {
let initialFilters = (json, filtervalues, setfilterKeys, filterKeys) => {
let connectorFilter = filtervalues->getArrayFromDict("connector", [])->getStrArrayFromJsonArray

let filterDict = json->getDictFromJsonObject
let arr = filterDict->Dict.keysToArray->Array.filter(item => item != "currency")

if connectorFilter->Array.length !== 0 {
arr->Array.push("connector_label")
arr->Array.push((#connector_label: filter :> string))

if !(filterKeys->Array.includes(getValueFromFilterType(#connector_label))) {
filterKeys->Array.push(getValueFromFilterType(#connector_label))
}

setfilterKeys(_ => filterKeys)
}

let filterArr = filterDict->itemToObjMapper
Expand All @@ -222,15 +235,10 @@ let initialFilters = (json, filtervalues) => {
| _ => values->FilterSelectBox.makeOptions
}

let name = switch key->getFilterTypeFromString {
| #connector_label => "merchant_connector_id"
| _ => key
}

{
field: FormRenderer.makeFieldInfo(
~label=key,
~name,
~name=getValueFromFilterType(key->getFilterTypeFromString),
~customInput=InputFields.filterMultiSelectInput(
~options,
~buttonText=title,
Expand Down
4 changes: 2 additions & 2 deletions src/screens/HSwitchRemoteFilter.res
Original file line number Diff line number Diff line change
Expand Up @@ -133,7 +133,7 @@ module RemoteTableFilters = {
let getURL = useGetURL()
let {userInfo: transactionEntity} = React.useContext(UserInfoProvider.defaultContext)

let {filterValue, updateExistingKeys, filterValueJson, reset} =
let {filterValue, updateExistingKeys, filterValueJson, reset, setfilterKeys, filterKeys} =
FilterContext.filterContext->React.useContext
let defaultFilters = {""->JSON.Encode.string}
let showToast = ToastState.useShowToast()
Expand Down Expand Up @@ -233,7 +233,7 @@ module RemoteTableFilters = {
->Dict.fromArray

let remoteFilters = React.useMemo(() => {
filterData->initialFilters(getAllFilter)
filterData->initialFilters(getAllFilter, setfilterKeys, filterKeys)
}, [getAllFilter])

let initialDisplayFilters =
Expand Down
26 changes: 17 additions & 9 deletions src/screens/Order/OrderUIUtils.res
Original file line number Diff line number Diff line change
Expand Up @@ -182,6 +182,13 @@ let filterByData = (txnArr, value) => {
})
}

let getValueFromFilterType = (filter: filter) => {
switch filter {
| #connector_label => "merchant_connector_id"
| _ => (filter :> string)
}
}

let getConditionalFilter = (key, dict, filterValues) => {
open LogicUtils

Expand Down Expand Up @@ -265,7 +272,7 @@ let itemToObjMapper = dict => {
}
}

let initialFilters = (json, filtervalues) => {
let initialFilters = (json, filtervalues, setfilterKeys, filterKeys) => {
open LogicUtils

let connectorFilter = filtervalues->getArrayFromDict("connector", [])->getStrArrayFromJsonArray
Expand All @@ -275,9 +282,15 @@ let initialFilters = (json, filtervalues) => {
let arr = filterDict->Dict.keysToArray

if connectorFilter->Array.length !== 0 {
arr->Array.push("connector_label")
arr->Array.push((#connector_label: filter :> string))

if !(filterKeys->Array.includes(getValueFromFilterType(#connector_label))) {
filterKeys->Array.push(getValueFromFilterType(#connector_label))
}

setfilterKeys(_ => filterKeys)
}
arr->Array.push("payment_method_type")
arr->Array.push((#payment_method_type: filter :> string))

arr->Array.map((key): EntityType.initialFilters<'t> => {
let values = switch key->getFilterTypeFromString {
Expand Down Expand Up @@ -308,15 +321,10 @@ let initialFilters = (json, filtervalues) => {
| _ => values->makeOptions
}

let name = switch key->getFilterTypeFromString {
| #connector_label => "merchant_connector_id"
| _ => key
}

{
field: FormRenderer.makeFieldInfo(
~label=key,
~name,
~name=getValueFromFilterType(key->getFilterTypeFromString),
~customInput=InputFields.filterMultiSelectInput(
~options,
~buttonText=title,
Expand Down
2 changes: 1 addition & 1 deletion src/screens/Payouts/PayoutsUtils.res
Original file line number Diff line number Diff line change
Expand Up @@ -130,7 +130,7 @@ let getOptionsForPayoutFilters = (dict, filterValues) => {
newArr
}

let initialFilters = (json, _) => {
let initialFilters = (json, _, _, _) => {
open LogicUtils

let dropdownValue =
Expand Down
24 changes: 16 additions & 8 deletions src/screens/Refunds/RefundUtils.res
Original file line number Diff line number Diff line change
Expand Up @@ -137,6 +137,13 @@ let initialFixedFilter = () => [
),
]

let getValueFromFilterType = (filter: filter) => {
switch filter {
| #connector_label => "merchant_connector_id"
| _ => (filter :> string)
}
}

let getConditionalFilter = (key, dict, filterValues) => {
open LogicUtils

Expand Down Expand Up @@ -185,7 +192,7 @@ let itemToObjMapper = dict => {
}
}

let initialFilters = (json, filtervalues) => {
let initialFilters = (json, filtervalues, setfilterKeys, filterKeys) => {
open LogicUtils

let connectorFilter = filtervalues->getArrayFromDict("connector", [])->getStrArrayFromJsonArray
Expand All @@ -194,7 +201,13 @@ let initialFilters = (json, filtervalues) => {
let arr = filterDict->Dict.keysToArray->Array.filterWithIndex((_item, index) => index <= 2)

if connectorFilter->Array.length !== 0 {
arr->Array.push("connector_label")
arr->Array.push((#connector_label: filter :> string))

if !(filterKeys->Array.includes(getValueFromFilterType(#connector_label))) {
filterKeys->Array.push(getValueFromFilterType(#connector_label))
}

setfilterKeys(_ => filterKeys)
}

let filterArr = filterDict->itemToObjMapper
Expand All @@ -215,15 +228,10 @@ let initialFilters = (json, filtervalues) => {
| _ => values->FilterSelectBox.makeOptions
}

let name = switch key->getFilterTypeFromString {
| #connector_label => "merchant_connector_id"
| _ => key
}

{
field: FormRenderer.makeFieldInfo(
~label=key,
~name,
~name=getValueFromFilterType(key->getFilterTypeFromString),
~customInput=InputFields.filterMultiSelectInput(
~options,
~buttonText=title,
Expand Down

0 comments on commit 8b04f85

Please sign in to comment.