mirror of
https://github.com/penpot/penpot.git
synced 2025-05-30 02:16:10 +02:00
🔥 Remove deprecated queries.
This commit is contained in:
parent
f0cf3e6411
commit
d58b6e5117
4 changed files with 0 additions and 146 deletions
|
@ -148,7 +148,6 @@
|
||||||
'app.rpc.queries.teams
|
'app.rpc.queries.teams
|
||||||
'app.rpc.queries.comments
|
'app.rpc.queries.comments
|
||||||
'app.rpc.queries.profile
|
'app.rpc.queries.profile
|
||||||
'app.rpc.queries.recent-files
|
|
||||||
'app.rpc.queries.viewer
|
'app.rpc.queries.viewer
|
||||||
'app.rpc.queries.fonts
|
'app.rpc.queries.fonts
|
||||||
'app.rpc.queries.svg)
|
'app.rpc.queries.svg)
|
||||||
|
|
|
@ -131,29 +131,6 @@
|
||||||
profile-id team-id
|
profile-id team-id
|
||||||
search-term])))
|
search-term])))
|
||||||
|
|
||||||
|
|
||||||
;; --- Query: Files
|
|
||||||
|
|
||||||
;; DEPRECATED: should be removed probably on 1.6.x
|
|
||||||
|
|
||||||
(def ^:private sql:files
|
|
||||||
"select f.*
|
|
||||||
from file as f
|
|
||||||
where f.project_id = ?
|
|
||||||
and f.deleted_at is null
|
|
||||||
order by f.modified_at desc")
|
|
||||||
|
|
||||||
(s/def ::project-id ::us/uuid)
|
|
||||||
(s/def ::files
|
|
||||||
(s/keys :req-un [::profile-id ::project-id]))
|
|
||||||
|
|
||||||
(sv/defmethod ::files
|
|
||||||
[{:keys [pool] :as cfg} {:keys [profile-id project-id] :as params}]
|
|
||||||
(with-open [conn (db/open pool)]
|
|
||||||
(projects/check-read-permissions! conn profile-id project-id)
|
|
||||||
(into [] decode-row-xf (db/exec! conn [sql:files project-id]))))
|
|
||||||
|
|
||||||
|
|
||||||
;; --- Query: Project Files
|
;; --- Query: Project Files
|
||||||
|
|
||||||
(def ^:private sql:project-files
|
(def ^:private sql:project-files
|
||||||
|
@ -250,28 +227,6 @@
|
||||||
|
|
||||||
;; --- Query: Shared Library Files
|
;; --- Query: Shared Library Files
|
||||||
|
|
||||||
;; DEPRECATED: and will be removed on 1.6.x
|
|
||||||
|
|
||||||
(def ^:private sql:shared-files
|
|
||||||
"select f.*
|
|
||||||
from file as f
|
|
||||||
inner join project as p on (p.id = f.project_id)
|
|
||||||
where f.is_shared = true
|
|
||||||
and f.deleted_at is null
|
|
||||||
and p.deleted_at is null
|
|
||||||
and p.team_id = ?
|
|
||||||
order by f.modified_at desc")
|
|
||||||
|
|
||||||
(s/def ::shared-files
|
|
||||||
(s/keys :req-un [::profile-id ::team-id]))
|
|
||||||
|
|
||||||
(sv/defmethod ::shared-files
|
|
||||||
[{:keys [pool] :as cfg} {:keys [team-id] :as params}]
|
|
||||||
(into [] decode-row-xf (db/exec! pool [sql:shared-files team-id])))
|
|
||||||
|
|
||||||
|
|
||||||
;; --- Query: Shared Library Files
|
|
||||||
|
|
||||||
(def ^:private sql:team-shared-files
|
(def ^:private sql:team-shared-files
|
||||||
"select f.id,
|
"select f.id,
|
||||||
f.project_id,
|
f.project_id,
|
||||||
|
|
|
@ -1,42 +0,0 @@
|
||||||
;; This Source Code Form is subject to the terms of the Mozilla Public
|
|
||||||
;; License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
||||||
;; file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
||||||
;;
|
|
||||||
;; Copyright (c) UXBOX Labs SL
|
|
||||||
|
|
||||||
(ns app.rpc.queries.recent-files
|
|
||||||
(:require
|
|
||||||
[app.common.spec :as us]
|
|
||||||
[app.db :as db]
|
|
||||||
[app.rpc.queries.files :refer [decode-row-xf]]
|
|
||||||
[app.rpc.queries.teams :as teams]
|
|
||||||
[app.util.services :as sv]
|
|
||||||
[clojure.spec.alpha :as s]))
|
|
||||||
|
|
||||||
;; DEPRECATED: should be removed on 1.6.x
|
|
||||||
|
|
||||||
(def sql:recent-files
|
|
||||||
"with recent_files as (
|
|
||||||
select f.*, row_number() over w as row_num
|
|
||||||
from file as f
|
|
||||||
join project as p on (p.id = f.project_id)
|
|
||||||
where p.team_id = ?
|
|
||||||
and p.deleted_at is null
|
|
||||||
and f.deleted_at is null
|
|
||||||
window w as (partition by f.project_id order by f.modified_at desc)
|
|
||||||
order by f.modified_at desc
|
|
||||||
)
|
|
||||||
select * from recent_files where row_num <= 10;")
|
|
||||||
|
|
||||||
(s/def ::team-id ::us/uuid)
|
|
||||||
(s/def ::profile-id ::us/uuid)
|
|
||||||
|
|
||||||
(s/def ::recent-files
|
|
||||||
(s/keys :req-un [::profile-id ::team-id]))
|
|
||||||
|
|
||||||
(sv/defmethod ::recent-files
|
|
||||||
[{:keys [pool] :as cfg} {:keys [profile-id team-id]}]
|
|
||||||
(with-open [conn (db/open pool)]
|
|
||||||
(teams/check-read-permissions! conn profile-id team-id)
|
|
||||||
(let [files (db/exec! conn [sql:recent-files team-id])]
|
|
||||||
(into [] decode-row-xf files))))
|
|
|
@ -97,61 +97,3 @@
|
||||||
(-> data
|
(-> data
|
||||||
(update :pages (fn [pages] (filterv #(contains? allowed-pages %) pages)))
|
(update :pages (fn [pages] (filterv #(contains? allowed-pages %) pages)))
|
||||||
(update :pages-index (fn [index] (select-keys index allowed-pages)))))))))))
|
(update :pages-index (fn [index] (select-keys index allowed-pages)))))))))))
|
||||||
|
|
||||||
;; --- Query: Viewer Bundle (by Page ID)
|
|
||||||
|
|
||||||
;; DEPRECATED: should be removed in 1.9.x
|
|
||||||
|
|
||||||
(declare check-shared-token!)
|
|
||||||
(declare retrieve-shared-token)
|
|
||||||
|
|
||||||
(s/def ::id ::us/uuid)
|
|
||||||
(s/def ::page-id ::us/uuid)
|
|
||||||
(s/def ::token ::us/string)
|
|
||||||
|
|
||||||
(s/def ::viewer-bundle
|
|
||||||
(s/keys :req-un [::file-id ::page-id]
|
|
||||||
:opt-un [::profile-id ::token]))
|
|
||||||
|
|
||||||
(sv/defmethod ::viewer-bundle {:auth false}
|
|
||||||
[{:keys [pool] :as cfg} {:keys [profile-id file-id page-id token] :as params}]
|
|
||||||
(db/with-atomic [conn pool]
|
|
||||||
(let [cfg (assoc cfg :conn conn)
|
|
||||||
file (files/retrieve-file cfg file-id)
|
|
||||||
project (retrieve-project conn (:project-id file))
|
|
||||||
page (get-in file [:data :pages-index page-id])
|
|
||||||
file (merge (dissoc file :data)
|
|
||||||
(select-keys (:data file) [:colors :media :typographies]))
|
|
||||||
libs (files/retrieve-file-libraries cfg false file-id)
|
|
||||||
users (teams/retrieve-users conn (:team-id project))
|
|
||||||
|
|
||||||
fonts (db/query conn :team-font-variant
|
|
||||||
{:team-id (:team-id project)
|
|
||||||
:deleted-at nil})
|
|
||||||
|
|
||||||
bundle {:file file
|
|
||||||
:page page
|
|
||||||
:users users
|
|
||||||
:fonts fonts
|
|
||||||
:project project
|
|
||||||
:libraries libs}]
|
|
||||||
|
|
||||||
(if (string? token)
|
|
||||||
(do
|
|
||||||
(check-shared-token! conn file-id page-id token)
|
|
||||||
(assoc bundle :token token))
|
|
||||||
(let [stoken (retrieve-shared-token conn file-id page-id)]
|
|
||||||
(files/check-read-permissions! conn profile-id file-id)
|
|
||||||
(assoc bundle :token (:token stoken)))))))
|
|
||||||
|
|
||||||
(defn check-shared-token!
|
|
||||||
[conn file-id page-id token]
|
|
||||||
(let [sql "select exists(select 1 from file_share_token where file_id=? and page_id=? and token=?) as exists"]
|
|
||||||
(when-not (:exists (db/exec-one! conn [sql file-id page-id token]))
|
|
||||||
(ex/raise :type :not-found
|
|
||||||
:code :object-not-found))))
|
|
||||||
|
|
||||||
(defn retrieve-shared-token
|
|
||||||
[conn file-id page-id]
|
|
||||||
(let [sql "select * from file_share_token where file_id=? and page_id=?"]
|
|
||||||
(db/exec-one! conn [sql file-id page-id])))
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue