52 lines
2.5 KiB
Clojure
52 lines
2.5 KiB
Clojure
(ns auto-ap.views.pages.payments.side-bar
|
|
(:require [auto-ap.routes :as routes]
|
|
[auto-ap.subs :as subs]
|
|
[auto-ap.views.utils :refer [active-when dispatch-value-change]]
|
|
[auto-ap.views.components.vendor-filter :refer [vendor-filter]]
|
|
[auto-ap.views.components.date-range-filter :refer [date-range-filter]]
|
|
[auto-ap.views.components.number-filter :refer [number-filter]]
|
|
[auto-ap.views.components.bank-account-filter :refer [bank-account-filter]]
|
|
[auto-ap.views.components.typeahead :refer [typeahead-entity]]
|
|
[bidi.bidi :as bidi]
|
|
[re-frame.core :as re-frame]
|
|
[auto-ap.views.pages.data-page :as data-page]))
|
|
|
|
|
|
(defn side-bar [{:keys [data-page]}]
|
|
(let [ap @(re-frame/subscribe [::subs/active-page])
|
|
user @(re-frame/subscribe [::subs/user])]
|
|
[:div
|
|
[:div
|
|
[:p.menu-label "Vendor"]
|
|
[:div
|
|
[typeahead-entity {:matches @(re-frame/subscribe [::subs/searchable-vendors])
|
|
:on-change #(re-frame/dispatch [::data-page/filter-changed data-page :vendor %])
|
|
:include-keys [:name :id]
|
|
:match->text :name
|
|
:type "typeahead-entity"
|
|
:value @(re-frame/subscribe [::data-page/filter data-page :vendor])}]]
|
|
|
|
[:p.menu-label "Date Range"]
|
|
[:div
|
|
[date-range-filter
|
|
{:on-change-event [::data-page/filter-changed data-page :date-range]
|
|
:value @(re-frame/subscribe [::data-page/filter data-page :date-range])}]]
|
|
|
|
[:p.menu-label "Amount"]
|
|
[:div
|
|
[number-filter
|
|
{:on-change-event [::data-page/filter-changed data-page :amount-range]
|
|
:value @(re-frame/subscribe [::data-page/filter data-page :amount-range])}]]
|
|
|
|
[:p.menu-label "Check #"]
|
|
[:div.field
|
|
[:div.control [:input.input {:placeholder "10001"
|
|
:value @(re-frame/subscribe [::data-page/filter data-page :check-number-like])
|
|
:on-change (dispatch-value-change [::data-page/filter-changed data-page :check-number-like])} ]]]
|
|
|
|
[:p.menu-label "Invoice #"]
|
|
[:div.field
|
|
[:div.control [:input.input {:placeholder "SJ-12345"
|
|
:value @(re-frame/subscribe [::data-page/filter data-page :invoice-number])
|
|
:on-change (dispatch-value-change [::data-page/filter-changed data-page :invoice-number])} ]]]]]))
|