Add vendor pre-population for bulk code and individual edit forms

- Add vendor-changed HTMX handlers for both bulk code and individual edit
- Pre-populate default account at 100% when vendor is selected and no accounts exist
- Fix render-accounts-section to render from step-params correctly
- Change bulk code vendor-changed from hx-get to hx-post to include form data
- Add routes for vendor-changed endpoints
- Update e2e tests to cover vendor pre-population
- Run lein cljfmt fix across codebase
This commit is contained in:
2026-05-21 14:45:19 -07:00
parent 8bd0cee1b1
commit ba87805d4c
210 changed files with 8694 additions and 9627 deletions

View File

@@ -15,14 +15,14 @@
[datomic.api :as dc]))
#_(t/use-fixtures :each (fn [f]
(dc/transact conn [{:db/id "vendor-id"
:vendor/name "Test Vendor"
:vendor/default-account {:db/id "account-id"}}
{:db/id "client-id"
:client/code "TEST"
:client/locations ["Z" "E"]
:client/bank-accounts ["bank-account-id"]}])
(f)))
(dc/transact conn [{:db/id "vendor-id"
:vendor/name "Test Vendor"
:vendor/default-account {:db/id "account-id"}}
{:db/id "client-id"
:client/code "TEST"
:client/locations ["Z" "E"]
:client/bank-accounts ["bank-account-id"]}])
(f)))
(t/use-fixtures :each wrap-setup)
(t/deftest get-vendor-test
@@ -39,11 +39,11 @@
(t/deftest clientize-vendor-test
(t/testing "Should transform vendor data for a specific client"
(let [vendor {:db/id "vendor-id"
:vendor/name "Test Vendor"
:vendor/default-account {:db/id "account-id"}
:vendor/terms-overrides [{:vendor-terms-override/client {:db/id "client-id"}
:vendor/name "Test Vendor"
:vendor/default-account {:db/id "account-id"}
:vendor/terms-overrides [{:vendor-terms-override/client {:db/id "client-id"}
:vendor-terms-override/terms "New Terms"}]
:vendor/account-overrides [{:vendor-account-override/client {:db/id "client-id"}
:vendor/account-overrides [{:vendor-account-override/client {:db/id "client-id"}
:vendor-account-override/account {:db/id "client-specific-account-id"}}]}
clientized-vendor (clientize-vendor vendor "client-id")]
(t/is (= "New Terms" (:vendor/terms clientized-vendor)))