diff --git a/src/main/frontend/components/property/value.cljs b/src/main/frontend/components/property/value.cljs index 238a1d19b8..c2c1450ebf 100644 --- a/src/main/frontend/components/property/value.cljs +++ b/src/main/frontend/components/property/value.cljs @@ -234,12 +234,13 @@ (let [selected-choices (->> selected-choices (remove nil?) (remove #(= :logseq.property/empty-placeholder %))) - clear-value (str "No " (:block/original-name property)) + clear-value (str "Remove property " (:block/original-name property)) items' (->> (if (and (seq selected-choices) (not multiple-choices?)) - (cons {:value clear-value - :label clear-value} - items) + (concat items + [{:value clear-value + :label clear-value + :clear? true}]) items) (remove #(= :logseq.property/empty-placeholder (:value %)))) k :on-chosen diff --git a/src/main/frontend/components/select.cljs b/src/main/frontend/components/select.cljs index 7cce04dbcf..2cf92edcc8 100644 --- a/src/main/frontend/components/select.cljs +++ b/src/main/frontend/components/select.cljs @@ -79,9 +79,12 @@ *toggle (::toggle state) *selected-choices (::selected-choices state) selected-choices (rum/react *selected-choices) - full-choices (->> (concat (map (fn [v] {:value v}) selected-choices) items) - (util/distinct-by-last-wins :value) - (remove nil?)) + full-choices (cond->> + (->> (concat (map (fn [v] {:value v}) selected-choices) items) + (util/distinct-by-last-wins :value) + (remove nil?)) + (seq @input) + (remove :clear?)) search-result' (->> (cond-> (search/fuzzy-search full-choices @input :limit limit :extract-fn extract-fn) (fn? transform-fn)