mirror of
https://github.com/penpot/penpot.git
synced 2025-06-14 07:41:42 +02:00
Merge remote-tracking branch 'origin/staging' into develop
This commit is contained in:
commit
83bd479176
4 changed files with 21 additions and 21 deletions
|
@ -270,19 +270,17 @@
|
||||||
:else (throw (IllegalArgumentException. "unable to resolve connectable"))))
|
:else (throw (IllegalArgumentException. "unable to resolve connectable"))))
|
||||||
|
|
||||||
(def ^:private params-mapping
|
(def ^:private params-mapping
|
||||||
{::return-keys? :return-keys
|
{::return-keys :return-keys})
|
||||||
::return-keys :return-keys})
|
|
||||||
|
|
||||||
(defn rename-opts
|
(defn rename-opts
|
||||||
[opts]
|
[opts]
|
||||||
(set/rename-keys opts params-mapping))
|
(set/rename-keys opts params-mapping))
|
||||||
|
|
||||||
(def ^:private default-insert-opts
|
(def ^:private default-insert-opts
|
||||||
{:builder-fn sql/as-kebab-maps
|
(assoc sql/default-opts :return-keys true))
|
||||||
:return-keys true})
|
|
||||||
|
|
||||||
(def ^:private default-opts
|
(def ^:private default-opts
|
||||||
{:builder-fn sql/as-kebab-maps})
|
sql/default-opts)
|
||||||
|
|
||||||
(defn exec!
|
(defn exec!
|
||||||
([ds sv] (exec! ds sv nil))
|
([ds sv] (exec! ds sv nil))
|
||||||
|
@ -333,7 +331,7 @@
|
||||||
(defn update!
|
(defn update!
|
||||||
"A helper that build an UPDATE SQL statement and executes it.
|
"A helper that build an UPDATE SQL statement and executes it.
|
||||||
|
|
||||||
Given a connectable object, a table name, a hash map of columns and
|
Given a connectable object, a table name, a hash map of columns and
|
||||||
values to set, and either a hash map of columns and values to search
|
values to set, and either a hash map of columns and values to search
|
||||||
on or a vector of a SQL where clause and parameters, perform an
|
on or a vector of a SQL where clause and parameters, perform an
|
||||||
update on the table.
|
update on the table.
|
||||||
|
@ -413,13 +411,20 @@
|
||||||
:hint "database object not found"))
|
:hint "database object not found"))
|
||||||
row))
|
row))
|
||||||
|
|
||||||
|
(def ^:private default-plan-opts
|
||||||
|
(-> default-opts
|
||||||
|
(assoc :fetch-size 1)
|
||||||
|
(assoc :concurrency :read-only)
|
||||||
|
(assoc :cursors :close)
|
||||||
|
(assoc :result-type :forward-only)))
|
||||||
|
|
||||||
(defn plan
|
(defn plan
|
||||||
([ds sql]
|
([ds sql]
|
||||||
(-> (get-connectable ds)
|
(-> (get-connectable ds)
|
||||||
(jdbc/plan sql default-opts)))
|
(jdbc/plan sql default-plan-opts)))
|
||||||
([ds sql opts]
|
([ds sql opts]
|
||||||
(-> (get-connectable ds)
|
(-> (get-connectable ds)
|
||||||
(jdbc/plan sql (merge default-opts opts)))))
|
(jdbc/plan sql (merge default-plan-opts opts)))))
|
||||||
|
|
||||||
(defn cursor
|
(defn cursor
|
||||||
"Return a lazy seq of rows using server side cursors"
|
"Return a lazy seq of rows using server side cursors"
|
||||||
|
|
|
@ -15,14 +15,15 @@
|
||||||
(defn kebab-case [s] (str/replace s #"_" "-"))
|
(defn kebab-case [s] (str/replace s #"_" "-"))
|
||||||
(defn snake-case [s] (str/replace s #"-" "_"))
|
(defn snake-case [s] (str/replace s #"-" "_"))
|
||||||
|
|
||||||
(def default-opts
|
|
||||||
{:table-fn snake-case
|
|
||||||
:column-fn snake-case})
|
|
||||||
|
|
||||||
(defn as-kebab-maps
|
(defn as-kebab-maps
|
||||||
[rs opts]
|
[rs opts]
|
||||||
(jdbc-opt/as-unqualified-modified-maps rs (assoc opts :label-fn kebab-case)))
|
(jdbc-opt/as-unqualified-modified-maps rs (assoc opts :label-fn kebab-case)))
|
||||||
|
|
||||||
|
(def default-opts
|
||||||
|
{:table-fn snake-case
|
||||||
|
:column-fn snake-case
|
||||||
|
:builder-fn as-kebab-maps})
|
||||||
|
|
||||||
(defn insert
|
(defn insert
|
||||||
([table key-map]
|
([table key-map]
|
||||||
(insert table key-map nil))
|
(insert table key-map nil))
|
||||||
|
|
|
@ -67,7 +67,7 @@
|
||||||
:is-owner true
|
:is-owner true
|
||||||
:is-admin true
|
:is-admin true
|
||||||
:can-edit true}
|
:can-edit true}
|
||||||
{::db/return-keys? false}))
|
{::db/return-keys false}))
|
||||||
|
|
||||||
(doseq [params (sequence (comp
|
(doseq [params (sequence (comp
|
||||||
(map #(bfc/remap-id % :file-id))
|
(map #(bfc/remap-id % :file-id))
|
||||||
|
|
|
@ -56,12 +56,6 @@
|
||||||
(map :data)
|
(map :data)
|
||||||
(mapcat bfc/collect-used-media)))
|
(mapcat bfc/collect-used-media)))
|
||||||
|
|
||||||
(def ^:private plan-opts
|
|
||||||
{:fetch-size 1
|
|
||||||
:concurrency :read-only
|
|
||||||
:cursors :close
|
|
||||||
:result-type :forward-only})
|
|
||||||
|
|
||||||
(defn- clean-file-media!
|
(defn- clean-file-media!
|
||||||
"Performs the garbage collection of file media objects."
|
"Performs the garbage collection of file media objects."
|
||||||
[{:keys [::db/conn] :as cfg} {:keys [id] :as file}]
|
[{:keys [::db/conn] :as cfg} {:keys [id] :as file}]
|
||||||
|
@ -69,7 +63,7 @@
|
||||||
(map (partial decode-file cfg))
|
(map (partial decode-file cfg))
|
||||||
xf:collect-used-media)
|
xf:collect-used-media)
|
||||||
|
|
||||||
used (->> (db/plan conn [sql:get-snapshots id] plan-opts)
|
used (->> (db/plan conn [sql:get-snapshots id])
|
||||||
(transduce xform conj #{}))
|
(transduce xform conj #{}))
|
||||||
used (into used xf:collect-used-media [file])
|
used (into used xf:collect-used-media [file])
|
||||||
|
|
||||||
|
@ -175,7 +169,7 @@
|
||||||
(mapcat (partial get-used-components deleted-components file-id))
|
(mapcat (partial get-used-components deleted-components file-id))
|
||||||
|
|
||||||
used-remote
|
used-remote
|
||||||
(->> (db/plan conn [sql:get-files-for-library file-id] plan-opts)
|
(->> (db/plan conn [sql:get-files-for-library file-id])
|
||||||
(transduce (comp (map (partial decode-file cfg)) xform) conj #{}))
|
(transduce (comp (map (partial decode-file cfg)) xform) conj #{}))
|
||||||
|
|
||||||
used-local
|
used-local
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue