ALmost done on UI improvements.

This commit is contained in:
2022-07-23 07:18:52 -07:00
parent 6773af6442
commit 30f3909ee9
14 changed files with 114 additions and 509 deletions

View File

@@ -12,7 +12,7 @@
;; TODO just embrace the fact that it will need to be remounted, and use index based keys
(defn multi-field-v2-internal [{:keys [template key-fn allow-change? disable-new? disable-remove? schema on-change disabled new-text] prop-value :value :as props} ]
(let [prop-value (if (seq prop-value)
prop-value
(vec prop-value)
[])]
[form-builder/virtual-builder {:value prop-value
:schema schema
@@ -21,21 +21,18 @@
[:div {:style {:margin-bottom "0.25em"}}
(into [(if key-fn
appearing-group
[:<>])]
:<>)]
(for [[i override] (map vector (range) prop-value)
:let [extant? (if key-fn
(boolean (key-fn override))
true)
is-disabled? (boolean (and (= false allow-change?)
extant?))]]
^{:key (or (when key-fn (key-fn override))
(::key override)
i)}
extant?))
key (or (when key-fn (key-fn override))
(::key override)
i)]]
^{:key key}
[form-builder/with-scope {:scope [i]}
^{:key (or (when key-fn (key-fn override))
(::key override)
i)}
[:div.level {:style {:margin-bottom "0.25em"}}
[:div.level-left {:style {:padding "0.5em 1em"}
:class (when-not extant?
@@ -44,9 +41,9 @@
(template override)
template)]
[:fieldset.level-left {:disabled is-disabled?
:style {:padding "0.5em 1em"}
:class (when-not extant?
"has-background-info-light")}
:style {:padding "0.5em 1em"}
:class (when-not extant?
"has-background-info-light")}
(for [[idx template] (map vector (range ) template)]
^{:key idx}
[:div.level-item
@@ -67,6 +64,7 @@
[:button.button.is-outline
{:type "button"
:on-click (fn [e]
(println "ADDING" prop-value)
(on-change (conj prop-value {::key (random-uuid)}))
(.stopPropagation e)
(.preventDefault e))}