diff --git a/src/cljs/auto_ap/effects.cljs b/src/cljs/auto_ap/effects.cljs index 3b035cc8..1c34e97f 100644 --- a/src/cljs/auto_ap/effects.cljs +++ b/src/cljs/auto_ap/effects.cljs @@ -40,6 +40,11 @@ (fn [url] (.open js/window url))) +#_(re-frame/reg-fx + :dispatch-sync + (fn [event] + (re-frame/dispatch-sync event))) + (re-frame/reg-fx :set-local-storage (fn [[name value]] diff --git a/src/cljs/auto_ap/views/components/grid.cljs b/src/cljs/auto_ap/views/components/grid.cljs index 81ed2988..a025a8eb 100644 --- a/src/cljs/auto_ap/views/components/grid.cljs +++ b/src/cljs/auto_ap/views/components/grid.cljs @@ -142,7 +142,9 @@ (let [children (r/children (r/current-component))] [:> Consumer {} (fn [consume] - (let [{:strs [on-params-change params check-boxes? on-check-changed checked] :as consume} (js->clj consume)] + (let [on-check-changed (aget consume "on-check-changed") + check-boxes? (aget consume "check-boxes?") + checked (aget consume "checked")] (apply r/create-element "tr" #js {:className class} (when check-boxes? (r/as-element [:th {:style {:width "35px"}} diff --git a/src/cljs/auto_ap/views/pages/data_page.cljs b/src/cljs/auto_ap/views/pages/data_page.cljs index cb6d9746..4ee93036 100644 --- a/src/cljs/auto_ap/views/pages/data_page.cljs +++ b/src/cljs/auto_ap/views/pages/data_page.cljs @@ -68,6 +68,7 @@ (re-frame/reg-event-db ::dispose (fn [db [_ id]] + (println "TABLE" (::table-params db) (::table-params (update db ::table-params dissoc id))) (-> db (update ::data dissoc id) (update ::checked dissoc id) @@ -132,7 +133,9 @@ (re-frame/reg-event-fx ::filters-settled (fn [{:keys [db]} [_ id]] - {:db (assoc-in db [::settled-filters id] @(re-frame/subscribe [::filters id]))})) + {:db (-> db + (assoc-in [::settled-filters id] @(re-frame/subscribe [::filters id])) + (update-in [::table-params id ] dissoc :start))})) (re-frame/reg-sub ::settled-filters @@ -146,7 +149,8 @@ [which val] (if (= 3 (count params)) [(into [a] b) c] [[a] b])] - {:db (assoc-in db (into [::filters id] which) val) + {:db (-> db + (assoc-in (into [::filters id] which) val)) :dispatch-debounce {:event [::filters-settled id] :time 800 diff --git a/src/cljs/auto_ap/views/pages/import_invoices.cljs b/src/cljs/auto_ap/views/pages/import_invoices.cljs index 2c0699f2..d593f3a4 100644 --- a/src/cljs/auto_ap/views/pages/import_invoices.cljs +++ b/src/cljs/auto_ap/views/pages/import_invoices.cljs @@ -97,13 +97,13 @@ ::forward/register [{:id ::received :events #{::data-page/received} :event-fn (fn [[_ _ {:keys [data]}]] - [::received data])}] - :dispatch [::data-page/dispose :import-invoices]})) + [::received data])}]})) (re-frame/reg-event-fx ::unmounted (fn [cofx [_ params]] - {::track/dispose {:id ::params}})) + {::track/dispose {:id ::params} + :dispatch [::data-page/dispose :import-invoices]})) (re-frame/reg-event-fx diff --git a/src/cljs/auto_ap/views/pages/unpaid_invoices.cljs b/src/cljs/auto_ap/views/pages/unpaid_invoices.cljs index eed0ae72..2230f4bc 100644 --- a/src/cljs/auto_ap/views/pages/unpaid_invoices.cljs +++ b/src/cljs/auto_ap/views/pages/unpaid_invoices.cljs @@ -61,6 +61,7 @@ (re-frame/reg-event-fx ::mounted (fn [{:keys [db]} _] + (println "MOUNTING") {::track/register [{:id ::params :subscription [::data-page/params :invoices] :event-fn (fn [params] @@ -195,7 +196,7 @@ (defn unpaid-invoices-page [params] (r/create-class {:display-name "invoices-page" - :component-will-unmount #(re-frame/dispatch [::unmounted]) + :component-will-unmount #(re-frame/dispatch-sync [::unmounted]) :component-did-mount #(re-frame/dispatch [::mounted]) :reagent-render (fn []