Merge branch 'feat/db' into chore/whiteboards-cleanup

This commit is contained in:
Konstantinos Kaloutas
2024-01-25 10:36:59 +02:00
22 changed files with 604 additions and 330 deletions

31
bb.edn
View File

@@ -32,15 +32,32 @@
dev:app-watch dev:app-watch
logseq.tasks.dev.mobile/app-watch logseq.tasks.dev.mobile/app-watch
dev:build-publishing -dev:build-publishing-frontend
logseq.tasks.dev/build-publishing logseq.tasks.dev/build-publishing-frontend
dev:publishing-backend
logseq.tasks.dev/publishing-backend
-dev:publishing-release
{:depends [-dev:build-publishing-frontend]
:doc "Build release publishing spa app given graph and output dirs"
:task (run 'dev:publishing-backend)}
-dev:watch-publishing-frontend
logseq.tasks.dev/watch-publishing-frontend
-dev:watch-publishing-backend
logseq.tasks.dev/watch-publishing-backend
-dev:publishing-dev
{:depends [-dev:watch-publishing-frontend -dev:watch-publishing-backend]
:doc "Watch dev publishing spa app given graph and output dirs"}
dev:publishing dev:publishing
{:depends [dev:build-publishing] {:doc "Builds full publishing app given graph and output dirs. Append --dev to watch frontend"
:doc "Build publishing spa app given graph and output dirs" :task (if ((set *command-line-args*) "--dev")
:task (apply shell {:dir "scripts"} (run '-dev:publishing-dev {:parallel true})
"yarn -s nbb-logseq -cp src -m logseq.tasks.dev.publishing" (run '-dev:publishing-release))}
(into ["static"] *command-line-args*))}
dev:validate-db dev:validate-db
{:doc "Validate a DB graph's datascript schema" {:doc "Validate a DB graph's datascript schema"

View File

@@ -3,5 +3,6 @@
logseq.common.util.page-ref logseq.common.util.page-ref
logseq.common.util.block-ref logseq.common.util.block-ref
logseq.common.util logseq.common.util
logseq.common.marker
logseq.common.config] logseq.common.config]
:report {:format :ignore}} :report {:format :ignore}}

View File

@@ -51,8 +51,12 @@
:schema :schema
{:type :default} {:type :default}
:closed-values :closed-values
(mapv #(hash-map :value % :uuid (random-uuid)) (mapv (fn [[status icon]]
["Backlog" "Todo" "Doing" "In Review" "Done" "Canceled"]) {:value status
:uuid (random-uuid)
:icon {:type :tabler-icon :id icon :name icon}})
[["Backlog" "Backlog"] ["Todo" "Todo"] ["Doing" "In Progress 50"]
["In Review" "In Review"] ["Done" "Done"] ["Canceled" "Cancelled"]])
:visible true} :visible true}
:priority {:original-name "Priority" :priority {:original-name "Priority"
:schema :schema

View File

@@ -9,6 +9,25 @@
[datascript.core :as d] [datascript.core :as d]
[logseq.db :as ldb])) [logseq.db :as ldb]))
(defn- build-initial-properties
[]
(let [;; Some uuids need to be pre-defined since they are referenced by other properties
default-property-uuids {:icon (d/squuid)}]
(mapcat
(fn [[k-keyword {:keys [schema original-name closed-values]}]]
(let [k-name (name k-keyword)]
(if closed-values
(db-property-util/build-closed-values
(or original-name k-name)
{:block/schema schema :block/uuid (d/squuid) :closed-values closed-values}
{:icon-id (get default-property-uuids :icon)})
[(sqlite-util/build-new-property
{:block/schema schema
:block/original-name (or original-name k-name)
:block/name (common-util/page-name-sanity-lc k-name)
:block/uuid (get default-property-uuids k-keyword (d/squuid))})])))
db-property/built-in-properties)))
(defn build-db-initial-data (defn build-db-initial-data
[config-content] [config-content]
(let [initial-data [{:db/ident :db/type :db/type "db"} (let [initial-data [{:db/ident :db/type :db/type "db"}
@@ -26,20 +45,7 @@
:file/content "" :file/content ""
:file/last-modified-at (js/Date.)}] :file/last-modified-at (js/Date.)}]
default-pages (ldb/build-default-pages-tx) default-pages (ldb/build-default-pages-tx)
default-properties (mapcat default-properties (build-initial-properties)
(fn [[k-keyword {:keys [schema original-name closed-values]}]]
(let [k-name (name k-keyword)]
(if closed-values
(db-property-util/build-closed-values
(or original-name k-name)
{:block/schema schema :block/uuid (d/squuid) :closed-values closed-values}
{})
[(sqlite-util/build-new-property
{:block/schema schema
:block/original-name (or original-name k-name)
:block/name (common-util/page-name-sanity-lc k-name)
:block/uuid (d/squuid)})])))
db-property/built-in-properties)
name->properties (zipmap name->properties (zipmap
(map :block/name default-properties) (map :block/name default-properties)
default-properties) default-properties)
@@ -58,4 +64,4 @@
id)) id))
(:properties schema))}}))) (:properties schema))}})))
db-class/built-in-classes)] db-class/built-in-classes)]
(concat initial-data initial-files default-pages default-classes default-properties))) (vec (concat initial-data initial-files default-pages default-classes default-properties))))

View File

@@ -366,7 +366,8 @@
m) m)
m (cond->> m' m (cond->> m'
db-based? db-based?
(db-marker-handle conn))] (db-marker-handle conn))
m (if db-based? (dissoc m :block/tags) m)]
;; Ensure block UUID never changes ;; Ensure block UUID never changes
(when (and db-id block-uuid) (when (and db-id block-uuid)

View File

@@ -42,10 +42,7 @@
(fs/symlinkSync (node-path/join source-static-dir "js" "publishing" "cljs-runtime") (fs/symlinkSync (node-path/join source-static-dir "js" "publishing" "cljs-runtime")
(node-path/join output-static-dir "js" "cljs-runtime"))) (node-path/join output-static-dir "js" "cljs-runtime")))
;; remove publishing-dir ;; remove publishing-dir
_ (when-not dev? (p/all (map (fn [file] _ (when-not dev? (fse/remove publishing-dir))
(fs/rmSync (node-path/join publishing-dir file)))
(fs/readdirSync publishing-dir))))
_ (when-not dev? (fs/rmdirSync publishing-dir))
;; remove source map files ;; remove source map files
_ (p/all (map (fn [file] _ (p/all (map (fn [file]
(fs/rmSync (node-path/join output-static-dir "js" (str file ".map")) #js {:force true})) (fs/rmSync (node-path/join output-static-dir "js" (str file ".map")) #js {:force true}))

View File

@@ -320,13 +320,20 @@ point out:
```sh ```sh
# One time setup # One time setup
$ cd scripts && yarn install && cd - $ cd scripts && yarn install && cd -
# Build a release export
# Build a release publishing app
$ bb dev:publishing /path/to/graph-dir tmp/publish $ bb dev:publishing /path/to/graph-dir tmp/publish
# OR build a dev export with `clojure -M:cljs watch publishing` and then
# OR build a dev publishing app that watches frontend changes
$ bb dev:publishing /path/to/graph-dir tmp/publish --dev $ bb dev:publishing /path/to/graph-dir tmp/publish --dev
# View the app in a browser # View the publishing app in a browser
$ python3 -m http.server 8080 -d tmp/db-publish &; open http://localhost:8080 $ python3 -m http.server 8080 -d tmp/publish &; open http://localhost:8080
# Rebuild the publishing backend for dev/release.
# Handy when making backend changes in deps/publishing or
# to test a different graph
$ bb dev:publishing-backend /path/graph-dir tmp/publish
``` ```

View File

@@ -161,14 +161,6 @@
"yargs-parser": "20.2.4" "yargs-parser": "20.2.4"
}, },
"resolutions": { "resolutions": {
"**/postcss": "8.4.17",
"**/postcss-colormin": "5.3.0",
"**/postcss-convert-values": "5.1.2",
"**/postcss-js": "4.0.0",
"**/postcss-merge-longhand": "5.1.6",
"**/postcss-merge-rules": "5.1.2",
"**/postcss-minify-params": "5.1.3",
"**/postcss-reduce-initial": "5.1.0",
"pixi-graph-fork/@pixi/app": "6.2.0", "pixi-graph-fork/@pixi/app": "6.2.0",
"pixi-graph-fork/@pixi/constants": "6.2.0", "pixi-graph-fork/@pixi/constants": "6.2.0",
"pixi-graph-fork/@pixi/core": "6.2.0", "pixi-graph-fork/@pixi/core": "6.2.0",

View File

@@ -4,6 +4,7 @@
(:require [babashka.process :refer [shell]] (:require [babashka.process :refer [shell]]
[babashka.fs :as fs] [babashka.fs :as fs]
[babashka.cli :as cli] [babashka.cli :as cli]
[logseq.tasks.util :as task-util]
[clojure.java.io :as io] [clojure.java.io :as io]
[clojure.pprint :as pp] [clojure.pprint :as pp]
[clojure.edn :as edn] [clojure.edn :as edn]
@@ -41,17 +42,6 @@
(pp/pprint (edn/read-string (:out (shell {:out :string} "node ./static/gen-malli-kondo-config.js")))))] (pp/pprint (edn/read-string (:out (shell {:out :string} "node ./static/gen-malli-kondo-config.js")))))]
(spit config-edn config)))) (spit config-edn config))))
(defn build-publishing
"Builds release publishing asset when files have changed"
[& _args]
(if-let [_files (and (not (System/getenv "SKIP_ASSET"))
(seq (set (fs/modified-since (fs/file "static/js/publishing/main.js")
(fs/glob "." "{src/main,deps/graph-parser/src}/**")))))]
(do
(println "Building publishing js asset...")
(shell "clojure -M:cljs release publishing"))
(println "Publishing js asset is up to date")))
(defn diff-datoms (defn diff-datoms
"Runs data/diff on two edn files written by dev:db-datoms" "Runs data/diff on two edn files written by dev:db-datoms"
[file1 file2 & args] [file1 file2 & args]
@@ -66,4 +56,39 @@
drop-last drop-last
;; Remove nils as we're only interested in diffs ;; Remove nils as we're only interested in diffs
(mapv #(vec (remove nil? %))))] (mapv #(vec (remove nil? %))))]
(pp/pprint data-diff))) (pp/pprint data-diff)))
(defn build-publishing-frontend
"Builds frontend release publishing asset when files have changed"
[& _args]
(if-let [_files (and (not (System/getenv "SKIP_ASSET"))
(seq (set (fs/modified-since (fs/file "static/js/publishing/main.js")
(fs/glob "." "{src/main,deps/graph-parser/src}/**")))))]
(do
(println "Building publishing js asset...")
(shell "clojure -M:cljs release publishing"))
(println "Publishing js asset is up to date")))
(defn publishing-backend
"Builds publishing backend and copies over supporting frontend assets"
[& args]
(apply shell {:dir "scripts"}
"yarn -s nbb-logseq -cp src -m logseq.tasks.dev.publishing"
(into ["static"] args)))
(defn watch-publishing-frontend
[& _args]
(shell "clojure -M:cljs watch publishing"))
(defn watch-publishing-backend
"Builds publishing backend once watch-publishing-frontend has built initial frontend"
[& args]
(let [start-time (java.time.Instant/now)]
(Thread/sleep 3000)
(loop [n 1000]
(if (and (fs/exists? "static/js/publishing/main.js")
(task-util/file-modified-later-than? "static/js/publishing/main.js" start-time))
(apply publishing-backend args)
(do (println "Waiting for publishing frontend to build...")
(Thread/sleep 1000)
(recur (inc n)))))))

View File

@@ -13,13 +13,13 @@
(defn- get-db [graph-dir] (defn- get-db [graph-dir]
(let [{:keys [conn]} (gp-cli/parse-graph graph-dir {:verbose false})] @conn)) (let [{:keys [conn]} (gp-cli/parse-graph graph-dir {:verbose false})] @conn))
(defn- publish-file-graph [static-dir graph-dir output-path] (defn- publish-file-graph [static-dir graph-dir output-path options]
(let [repo-config (-> (node-path/join graph-dir "logseq" "config.edn") fs/readFileSync str edn/read-string)] (let [repo-config (-> (node-path/join graph-dir "logseq" "config.edn") fs/readFileSync str edn/read-string)]
(publishing/export (get-db graph-dir) (publishing/export (get-db graph-dir)
static-dir static-dir
graph-dir graph-dir
output-path output-path
{:repo-config repo-config :ui/theme "dark" :ui/radix-color :purple}))) (merge options {:repo-config repo-config :ui/theme "dark" :ui/radix-color :purple}))))
(defn- publish-db-graph [static-dir graph-dir output-path opts] (defn- publish-db-graph [static-dir graph-dir output-path opts]
(let [db-name (node-path/basename graph-dir) (let [db-name (node-path/basename graph-dir)
@@ -42,7 +42,8 @@
(js/process.exit 1)) (js/process.exit 1))
(let [[static-dir graph-dir output-path] (let [[static-dir graph-dir output-path]
;; Offset relative paths since they are run in a different directory than user is in ;; Offset relative paths since they are run in a different directory than user is in
(map #(if (node-path/isAbsolute %) % (node-path/resolve ".." %)) args)] (map #(if (node-path/isAbsolute %) % (node-path/resolve ".." %)) args)
options {:dev? (contains? (set args) "--dev")}]
(if (sqlite-cli/db-graph-directory? graph-dir) (if (sqlite-cli/db-graph-directory? graph-dir)
(publish-db-graph static-dir graph-dir output-path {:dev? (contains? (set args) "--dev")}) (publish-db-graph static-dir graph-dir output-path options)
(publish-file-graph static-dir graph-dir output-path)))) (publish-file-graph static-dir graph-dir output-path options))))

View File

@@ -172,7 +172,10 @@
:nl #{:plugins :type :left-side-bar/nav-recent-pages :plugin/update} :nl #{:plugins :type :left-side-bar/nav-recent-pages :plugin/update}
:pl #{:port} :pl #{:port}
:pt-BR #{:plugins :right-side-bar/flashcards :settings-page/enable-flashcards :page/backlinks :pt-BR #{:plugins :right-side-bar/flashcards :settings-page/enable-flashcards :page/backlinks
:host :settings-page/tab-editor :shortcut.category/plugins :whiteboard/link} :host :settings-page/tab-editor :shortcut.category/plugins :whiteboard/link :settings-of-plugins :whiteboard
:whiteboards :on-boarding/quick-tour-journal-page-desc-2 :plugin/downloads :right-side-bar/history-global
:right-side-bar/whiteboards :search-item/whiteboard :settings-page/enable-whiteboards :settings-page/plugin-system
:shortcut.category/whiteboard :command.whiteboard/zoom-in :command.whiteboard/zoom-out}
:pt-PT #{:plugins :settings-of-plugins :plugin/downloads :right-side-bar/flashcards :pt-PT #{:plugins :settings-of-plugins :plugin/downloads :right-side-bar/flashcards
:settings-page/enable-flashcards :settings-page/plugin-system} :settings-page/enable-flashcards :settings-page/plugin-system}
:nb-NO #{:port :type :whiteboard :right-side-bar/flashcards :right-side-bar/whiteboards :nb-NO #{:port :type :whiteboard :right-side-bar/flashcards :right-side-bar/whiteboards

View File

@@ -98,11 +98,12 @@
:publishing {:target :browser :publishing {:target :browser
:module-loader true :module-loader true
:js-options {:ignore-asset-requires true :js-options {;; handle `require(xxx.css)`
:ignore-asset-requires true
:resolve {"react" {:target :global :resolve {"react" {:target :global
:global "React"} :global "React"}
"react-dom" {:target :global "react-dom" {:target :global
:global "ReactDOM"}}} ;; handle `require(xxx.css)` :global "ReactDOM"}}}
:modules {:shared :modules {:shared
{:entries []} {:entries []}
:main :main

View File

@@ -142,8 +142,7 @@
(empty? matched-pages) (empty? matched-pages)
(when-not (db/page-exists? q) (when-not (db/page-exists? q)
(if db-tag? (if db-tag?
(concat [(str (t :new-page) " " q) (concat [(str (t :new-class) " " q)]
(str (t :new-class) " " q)]
matched-pages) matched-pages)
(cons q matched-pages))) (cons q matched-pages)))

View File

@@ -721,13 +721,7 @@
(not (:page-configure? opts))) (not (:page-configure? opts)))
[:div.ls-properties-area (cond-> (if in-block-container? [:div.ls-properties-area (cond-> (if in-block-container?
{} {}
{:class [(cond {:class (when class-schema? "class-properties")})
class-schema?
"class-properties"
(config/db-based-graph? (state/get-current-repo))
nil
:else
"page-properties")]})
(:selected? opts) (:selected? opts)
(update :class conj "select-none")) (update :class conj "select-none"))
(properties-section block (if class-schema? properties own-properties) opts) (properties-section block (if class-schema? properties own-properties) opts)

View File

@@ -79,11 +79,17 @@
:db/ident key :db/ident key
key value}) key value})
(defn transact! (if util/node-test?
([repo tx-data] (defn transact!
(transact! repo tx-data nil)) ([repo tx-data]
([repo tx-data tx-meta] (transact! repo tx-data nil))
(ldb/transact! repo tx-data tx-meta))) ([repo tx-data tx-meta]
(ldb/transact! (get-db repo false) tx-data tx-meta)))
(defn transact!
([repo tx-data]
(transact! repo tx-data nil))
([repo tx-data tx-meta]
(ldb/transact! repo tx-data tx-meta))))
(defn start! (defn start!
([repo] ([repo]

View File

@@ -300,15 +300,21 @@
true true
(dissoc :insert-blocks?)))] (dissoc :insert-blocks?)))]
(when-not (and (:create-today-journal? tx-meta) (if (and (:create-today-journal? tx-meta)
(:today-journal-name tx-meta) (:today-journal-name tx-meta)
(seq tx-data) (seq tx-data)
(d/entity @conn [:block/name (:today-journal-name tx-meta)])) ; today journal created already (d/entity @conn [:block/name (:today-journal-name tx-meta)])) ; today journal created already
;; (prn :debug :transact :tx-data tx-data :tx-meta tx-meta') ;; remove task from ldb/*request-id->response
(worker-util/post-message :sync-db-changes (pr-str
(worker-util/profile "Worker db transact" {:request-id (:request-id tx-meta)
(ldb/transact! conn tx-data tx-meta'))) :repo repo
:tx-data []
:tx-meta nil}))
(do
;; (prn :debug :transact :tx-data tx-data :tx-meta tx-meta')
(worker-util/profile "Worker db transact"
(ldb/transact! conn tx-data tx-meta'))))
nil) nil)
(catch :default e (catch :default e
(prn :debug :error) (prn :debug :error)

View File

@@ -1300,37 +1300,37 @@
(save-current-block! {})) (save-current-block! {}))
([{:keys [force? skip-properties? current-block] :as opts}] ([{:keys [force? skip-properties? current-block] :as opts}]
;; non English input method ;; non English input method
(let [result (when-not (state/editor-in-composition?) (when-not (or (state/editor-in-composition?)
(when (state/get-current-repo) (state/get-editor-action))
(try (when (state/get-current-repo)
(let [input-id (state/get-edit-input-id) (try
block (state/get-edit-block) (let [input-id (state/get-edit-input-id)
db-block (when-let [block-id (:block/uuid block)] block (state/get-edit-block)
(db/pull [:block/uuid block-id])) db-block (when-let [block-id (:block/uuid block)]
elem (and input-id (gdom/getElement input-id)) (db/pull [:block/uuid block-id]))
db-content (:block/content db-block) elem (and input-id (gdom/getElement input-id))
db-content-without-heading (and db-content db-content (:block/content db-block)
(common-util/safe-subs db-content (:block/level db-block))) db-content-without-heading (and db-content
value (if (= (:block/uuid current-block) (:block/uuid block)) (common-util/safe-subs db-content (:block/level db-block)))
(:block/content current-block) value (if (= (:block/uuid current-block) (:block/uuid block))
(and elem (gobj/get elem "value")))] (:block/content current-block)
(when value (and elem (gobj/get elem "value")))]
(cond (when value
force? (cond
(save-block-aux! db-block value opts) force?
(save-block-aux! db-block value opts)
(and skip-properties? (and skip-properties?
(db-model/top-block? block) (db-model/top-block? block)
(when elem (thingatpt/properties-at-point elem))) (when elem (thingatpt/properties-at-point elem)))
nil nil
(and block value db-content-without-heading (and block value db-content-without-heading
(not= (string/trim db-content-without-heading) (not= (string/trim db-content-without-heading)
(string/trim value))) (string/trim value)))
(save-block-aux! db-block value opts)))) (save-block-aux! db-block value opts))))
(catch :default error (catch :default error
(log/error :save-block-failed error)))))] (log/error :save-block-failed error)))))))
result)))
(defn- clean-content! (defn- clean-content!
[repo format content] [repo format content]

View File

@@ -72,6 +72,7 @@
[logseq.db.frontend.schema :as db-schema] [logseq.db.frontend.schema :as db-schema]
[logseq.common.config :as common-config] [logseq.common.config :as common-config]
[promesa.core :as p] [promesa.core :as p]
[lambdaisland.glogi :as log]
[rum.core :as rum] [rum.core :as rum]
[frontend.persist-db.browser :as db-browser] [frontend.persist-db.browser :as db-browser]
[frontend.db.rtc.debug-ui :as rtc-debug-ui] [frontend.db.rtc.debug-ui :as rtc-debug-ui]
@@ -191,9 +192,15 @@
(p/let [writes-finished? (when sqlite (.file-writes-finished? sqlite)) (p/let [writes-finished? (when sqlite (.file-writes-finished? sqlite))
request-finished? (ldb/request-finished?)] request-finished? (ldb/request-finished?)]
(if (or (not request-finished?) (not writes-finished?)) ; TODO: test (:sync-graph/init? @state/state) (if (or (not request-finished?) (not writes-finished?)) ; TODO: test (:sync-graph/init? @state/state)
(notification/show! (do
"Please wait seconds until all changes are saved for the current graph." (log/info :graph/switch (cond->
:warning) {:request-finished? request-finished?
:file-writes-finished? writes-finished?}
(false? request-finished?)
(assoc :unfinished-requests? @ldb/*request-id->response)))
(notification/show!
"Please wait seconds until all changes are saved for the current graph."
:warning))
(graph-switch-on-persisted graph opts))))) (graph-switch-on-persisted graph opts)))))
(defmethod handle :graph/pull-down-remote-graph [[_ graph dir-name]] (defmethod handle :graph/pull-down-remote-graph [[_ graph dir-name]]

View File

@@ -218,7 +218,7 @@
(fn [chosen e] (fn [chosen e]
(util/stop e) (util/stop e)
(state/clear-editor-action!) (state/clear-editor-action!)
(let [class? (string/starts-with? chosen (t :new-class)) (let [class? (and db-based? hashtag?)
chosen (-> chosen chosen (-> chosen
(string/replace-first (str (t :new-class) " ") "") (string/replace-first (str (t :new-class) " ") "")
(string/replace-first (str (t :new-page) " ") "")) (string/replace-first (str (t :new-page) " ") ""))
@@ -242,11 +242,14 @@
_ (when-not tag-entity _ (when-not tag-entity
(<create! tag {:redirect? false (<create! tag {:redirect? false
:create-first-block? false :create-first-block? false
:class? class?}))] :class? class?}))
tag-entity (db/entity [:block/name (util/page-name-sanity-lc tag)])]
(when class? (when class?
(let [repo (state/get-current-repo) (let [repo (state/get-current-repo)
tag-entity (or tag-entity (db/entity [:block/name (util/page-name-sanity-lc tag)])) tag-entity (or tag-entity (db/entity [:block/name (util/page-name-sanity-lc tag)]))
tx-data [[:db/add [:block/uuid (:block/uuid edit-block)] :block/tags (:db/id tag-entity)] tx-data [[:db/add (:db/id tag-entity) :block/type "class"]
[:db/add [:block/uuid (:block/uuid edit-block)] :block/tags (:db/id tag-entity)]
;; TODO: Should classes counted as refs
[:db/add [:block/uuid (:block/uuid edit-block)] :block/refs (:db/id tag-entity)]]] [:db/add [:block/uuid (:block/uuid edit-block)] :block/refs (:db/id tag-entity)]]]
(db/transact! repo tx-data {:outliner-op :save-block}))))))) (db/transact! repo tx-data {:outliner-op :save-block})))))))
(editor-handler/insert-command! id (editor-handler/insert-command! id

View File

@@ -63,50 +63,50 @@
:on-boarding/section-computer "computador" :on-boarding/section-computer "computador"
:on-boarding/section-journals "Notas diárias" :on-boarding/section-journals "Notas diárias"
:on-boarding/section-pages "PÁGINAS" :on-boarding/section-pages "PÁGINAS"
:on-boarding/section-phone "telefone" :on-boarding/section-phone "telefone"
:on-boarding/section-app "Aplicativo interno" :on-boarding/section-app "Aplicativo interno"
:on-boarding/section-config "Arquivo de configuração" :on-boarding/section-config "Arquivo de configuração"
:query/config-property-settings "Configurações de propriedades para esta consulta:" :query/config-property-settings "Configurações de propriedades para esta consulta:"
:bug-report/main-title "Relatório de bug" :bug-report/main-title "Relatório de bug"
:bug-report/clipboard-inspector-title "Inspetor de dados da área de transferência" :bug-report/clipboard-inspector-title "Inspetor de dados da área de transferência"
:bug-report/main-desc "Você pode nos ajudar enviando um relatório de bug? Vamos resolver isso o mais rápido possível." :bug-report/main-desc "Você pode nos ajudar enviando um relatório de bug? Vamos resolver isso o mais rápido possível."
:bug-report/section-clipboard-title "O bug que você encontrou está relacionado a esses recursos?" :bug-report/section-clipboard-title "O bug que você encontrou está relacionado a esses recursos?"
:bug-report/section-clipboard-desc "Você pode usar essas ferramentas úteis para nos fornecer informações adicionais." :bug-report/section-clipboard-desc "Você pode usar essas ferramentas úteis para nos fornecer informações adicionais."
:bug-report/section-clipboard-btn-title "Auxiliar da área de transferência" :bug-report/section-clipboard-btn-title "Auxiliar da área de transferência"
:bug-report/section-clipboard-btn-desc "Inspetar e coletar dados da área de transferência" :bug-report/section-clipboard-btn-desc "Inspetar e coletar dados da área de transferência"
:bug-report/section-issues-title "Ou..." :bug-report/section-issues-title "Ou..."
:bug-report/section-issues-desc "Se não houver ferramentas disponíveis para coletar informações adicionais, relate o bug diretamente." :bug-report/section-issues-desc "Se não houver ferramentas disponíveis para coletar informações adicionais, relate o bug diretamente."
:bug-report/section-issues-btn-title "Enviar um relatório de bug" :bug-report/section-issues-btn-title "Enviar um relatório de bug"
:bug-report/section-issues-btn-desc "Ajude a melhorar o Logseq!" :bug-report/section-issues-btn-desc "Ajude a melhorar o Logseq!"
:bug-report/inspector-page-desc-1 "Pressione Ctrl+V / ⌘+V para inspecionar os dados da área de transferência" :bug-report/inspector-page-desc-1 "Pressione Ctrl+V / ⌘+V para inspecionar os dados da área de transferência"
:bug-report/inspector-page-desc-2 "ou clique aqui para colar se estiver usando a versão mobile" :bug-report/inspector-page-desc-2 "ou clique aqui para colar se estiver usando a versão mobile"
:bug-report/inspector-page-placeholder "Pressione e segure aqui para colar se estiver no mobile" :bug-report/inspector-page-placeholder "Pressione e segure aqui para colar se estiver no mobile"
:bug-report/inspector-page-tip "Algum problema? Sem problemas, clique para voltar para o passo anterior." :bug-report/inspector-page-tip "Algum problema? Sem problemas, clique para voltar para o passo anterior."
:bug-report/inspector-page-btn-back "Voltar" :bug-report/inspector-page-btn-back "Voltar"
:bug-report/inspector-page-btn-copy "Copiar o resultado" :bug-report/inspector-page-btn-copy "Copiar o resultado"
:bug-report/inspector-page-copy-notif "Copiado para a área de transferência!" :bug-report/inspector-page-copy-notif "Copiado para a área de transferência!"
:bug-report/inspector-page-btn-create-issue "Criar uma issue" :bug-report/inspector-page-btn-create-issue "Criar uma issue"
:bug-report/inspector-page-desc-clipboard "Aqui estão os dados lidos da área de transferência." :bug-report/inspector-page-desc-clipboard "Aqui estão os dados lidos da área de transferência."
:bug-report/inspector-page-desc-copy "Se for seguro compartilhar, clique no botão de cópia." :bug-report/inspector-page-desc-copy "Se for seguro compartilhar, clique no botão de cópia."
:bug-report/inspector-page-desc-create-issue "Agora você pode relatar o resultado colado na sua área de transferência. Cole o resultado na seção 'Contexto Adicional' e indique de onde você copiou o conteúdo original. Obrigado!" :bug-report/inspector-page-desc-create-issue "Agora você pode relatar o resultado colado na sua área de transferência. Cole o resultado na seção 'Contexto Adicional' e indique de onde você copiou o conteúdo original. Obrigado!"
:help/title-usage "Uso" :help/title-usage "Uso"
:help/title-community "Comunidade" :help/title-community "Comunidade"
:help/title-development "Desenvolvimento" :help/title-development "Desenvolvimento"
:help/title-about "Sobre" :help/title-about "Sobre"
:help/title-terms "Termos" :help/title-terms "Termos"
:help/start "Começando" :help/start "Começando"
:help/about "Sobre o Logseq" :help/about "Sobre o Logseq"
:help/roadmap "Roteiro" :help/roadmap "Roteiro"
:help/bug "Relatório de bug" :help/bug "Relatório de bug"
:help/feature "Solicitação de recurso" :help/feature "Solicitação de recurso"
:help/changelog "Registro de alterações" :help/changelog "Registro de alterações"
:help/blog "Blog do Logseq" :help/blog "Blog do Logseq"
:help/docs "Documentação" :help/docs "Documentação"
:help/privacy "Política de privacidade" :help/privacy "Política de privacidade"
:help/terms "Termos" :help/terms "Termos"
:help/forum-community "Comunidade do Fórum" :help/forum-community "Comunidade do Fórum"
:help/awesome-logseq "Incrível Logseq" :help/awesome-logseq "Incrível Logseq"
:help/shortcuts "Atalhos de teclado" :help/shortcuts "Atalhos de teclado"
:help/shortcuts-triggers "Gatilhos" :help/shortcuts-triggers "Gatilhos"
:help/shortcut "Atalho" :help/shortcut "Atalho"
:help/slash-autocomplete "Barra de preenchimento automático" :help/slash-autocomplete "Barra de preenchimento automático"
@@ -374,116 +374,116 @@
:whiteboard/arrow-head "Cabeça da seta" :whiteboard/arrow-head "Cabeça da seta"
:whiteboard/bold "Negrito" :whiteboard/bold "Negrito"
:whiteboard/italic "Itálico" :whiteboard/italic "Itálico"
:whiteboard/undo "Desfazer" :whiteboard/undo "Desfazer"
:whiteboard/redo "Refazer" :whiteboard/redo "Refazer"
:whiteboard/zoom-in "Aumentar zoom" :whiteboard/zoom-in "Aumentar zoom"
:whiteboard/zoom-out "Diminuir zoom" :whiteboard/zoom-out "Diminuir zoom"
:whiteboard/select "Selecionar" :whiteboard/select "Selecionar"
:whiteboard/pan "Arrastar" :whiteboard/pan "Arrastar"
:whiteboard/add-block-or-page "Adicionar bloco ou página" :whiteboard/add-block-or-page "Adicionar bloco ou página"
:whiteboard/draw "Desenhar" :whiteboard/draw "Desenhar"
:whiteboard/highlight "Destacar" :whiteboard/highlight "Destacar"
:whiteboard/eraser "Borracha" :whiteboard/eraser "Borracha"
:whiteboard/connector "Conector" :whiteboard/connector "Conector"
:whiteboard/text "Texto" :whiteboard/text "Texto"
:whiteboard/color "Cor" :whiteboard/color "Cor"
:whiteboard/select-custom-color "Selecionar cor personalizada" :whiteboard/select-custom-color "Selecionar cor personalizada"
:whiteboard/opacity "Opacidade" :whiteboard/opacity "Opacidade"
:whiteboard/extra-small "Extra Pequeno" :whiteboard/extra-small "Extra Pequeno"
:whiteboard/small "Pequeno" :whiteboard/small "Pequeno"
:whiteboard/medium "Médio" :whiteboard/medium "Médio"
:whiteboard/large "Grande" :whiteboard/large "Grande"
:whiteboard/extra-large "Extra Grande" :whiteboard/extra-large "Extra Grande"
:whiteboard/huge "Enorme" :whiteboard/huge "Enorme"
:whiteboard/scale-level "Nível de escala" :whiteboard/scale-level "Nível de escala"
:whiteboard/rectangle "Retângulo" :whiteboard/rectangle "Retângulo"
:whiteboard/circle "Círculo" :whiteboard/circle "Círculo"
:whiteboard/triangle "Triângulo" :whiteboard/triangle "Triângulo"
:whiteboard/shape "Forma" :whiteboard/shape "Forma"
:whiteboard/open-page "Abrir página" :whiteboard/open-page "Abrir página"
:whiteboard/open-page-in-sidebar "Abrir página na barra lateral" :whiteboard/open-page-in-sidebar "Abrir página na barra lateral"
:whiteboard/remove-link "Remover link" :whiteboard/remove-link "Remover link"
:whiteboard/link "Link" :whiteboard/link "Link"
:whiteboard/references "Referências" :whiteboard/references "Referências"
:whiteboard/link-to-any-page-or-block "Link para qualquer página ou bloco" :whiteboard/link-to-any-page-or-block "Link para qualquer página ou bloco"
:whiteboard/start-typing-to-search "Comece a digitar para pesquisar..." :whiteboard/start-typing-to-search "Comece a digitar para pesquisar..."
:whiteboard/new-block-no-colon "Novo bloco" :whiteboard/new-block-no-colon "Novo bloco"
:whiteboard/new-block "Novo bloco:" :whiteboard/new-block "Novo bloco:"
:whiteboard/new-page "Nova página:" :whiteboard/new-page "Nova página:"
:whiteboard/new-whiteboard "Novo whiteboard" :whiteboard/new-whiteboard "Novo whiteboard"
:whiteboard/search-only-blocks "Pesquisar apenas blocos" :whiteboard/search-only-blocks "Pesquisar apenas blocos"
:whiteboard/search-only-pages "Pesquisar apenas páginas" :whiteboard/search-only-pages "Pesquisar apenas páginas"
:whiteboard/cache-outdated "O cache está desatualizado. Clique no botão 'Re-indexar' no menu suspenso do grafo." :whiteboard/cache-outdated "O cache está desatualizado. Clique no botão 'Re-indexar' no menu suspenso do grafo."
:whiteboard/shape-quick-links "Links Rápidos de Forma" :whiteboard/shape-quick-links "Links Rápidos de Forma"
:whiteboard/edit-pdf "Editar PDF" :whiteboard/edit-pdf "Editar PDF"
:whiteboard/dashboard-card-new-whiteboard "Novo whiteboard" :whiteboard/dashboard-card-new-whiteboard "Novo whiteboard"
:whiteboard/dashboard-card-created "Criado " :whiteboard/dashboard-card-created "Criado "
:whiteboard/dashboard-card-edited "Editado " :whiteboard/dashboard-card-edited "Editado "
:whiteboard/toggle-grid "Alternar grade" :whiteboard/toggle-grid "Alternar grade"
:whiteboard/snap-to-grid "Encaixar na grade" :whiteboard/snap-to-grid "Encaixar na grade"
:whiteboard/toggle-pen-mode "Alternar modo de caneta" :whiteboard/toggle-pen-mode "Alternar modo de caneta"
:flashcards/modal-welcome-title "Hora de criar um cartão!" :flashcards/modal-welcome-title "Hora de criar um cartão!"
:flashcards/modal-welcome-desc-1 "Você pode adicionar \"#card\" a qualquer bloco para transformá-lo em um cartão ou acionar \"/cloze\" para adicionar algumas partes ocultas." :flashcards/modal-welcome-desc-1 "Você pode adicionar \"#card\" a qualquer bloco para transformá-lo em um cartão ou acionar \"/cloze\" para adicionar algumas partes ocultas."
:flashcards/modal-welcome-desc-2 "Você pode " :flashcards/modal-welcome-desc-2 "Você pode "
:flashcards/modal-welcome-desc-3 "clique neste link" :flashcards/modal-welcome-desc-3 "clique neste link"
:flashcards/modal-welcome-desc-4 " para verificar a documentação." :flashcards/modal-welcome-desc-4 " para verificar a documentação."
:flashcards/modal-btn-show-answers "Mostrar respostas" :flashcards/modal-btn-show-answers "Mostrar respostas"
:flashcards/modal-btn-hide-answers "Esconder respostas" :flashcards/modal-btn-hide-answers "Esconder respostas"
:flashcards/modal-btn-show-clozes "Mostrar partes ocultas" :flashcards/modal-btn-show-clozes "Mostrar partes ocultas"
:flashcards/modal-btn-next-card "Próximo" :flashcards/modal-btn-next-card "Próximo"
:flashcards/modal-btn-reset "Redefinir" :flashcards/modal-btn-reset "Redefinir"
:flashcards/modal-btn-reset-tip "Redefina este cartão para que você possa revisá-lo imediatamente." :flashcards/modal-btn-reset-tip "Redefina este cartão para que você possa revisá-lo imediatamente."
:flashcards/modal-btn-forgotten "Esquecido" :flashcards/modal-btn-forgotten "Esquecido"
:flashcards/modal-btn-remembered "Lembrado" :flashcards/modal-btn-remembered "Lembrado"
:flashcards/modal-btn-recall "Levou um tempo para lembrar" :flashcards/modal-btn-recall "Levou um tempo para lembrar"
:flashcards/modal-finished "Parabéns, você revisou todos os cartões para esta consulta, nos vemos na próxima vez! 💯" :flashcards/modal-finished "Parabéns, você revisou todos os cartões para esta consulta, nos vemos na próxima vez! 💯"
:flashcards/modal-select-all "Todos" :flashcards/modal-select-all "Todos"
:flashcards/modal-select-switch "Alternar para" :flashcards/modal-select-switch "Alternar para"
:flashcards/modal-current-total "Atual/Total" :flashcards/modal-current-total "Atual/Total"
:flashcards/modal-overdue-total "Atrasado/Total" :flashcards/modal-overdue-total "Atrasado/Total"
:flashcards/modal-toggle-preview-mode "Alternar modo de pré-visualização" :flashcards/modal-toggle-preview-mode "Alternar modo de pré-visualização"
:flashcards/modal-toggle-random-mode "Alternar modo aleatório" :flashcards/modal-toggle-random-mode "Alternar modo aleatório"
:home "Início" :home "Início"
:new-page "Nova página:" :new-page "Nova página:"
:new-graph "Adicionar novo grafo" :new-graph "Adicionar novo grafo"
:graph "Grafo" :graph "Grafo"
:graph/all-graphs "Todos os grafos" :graph/all-graphs "Todos os grafos"
:graph/local-graphs "Grafos locais:" :graph/local-graphs "Grafos locais:"
:graph/remote-graphs "Grafos remotos:" :graph/remote-graphs "Grafos remotos:"
:export "Exportar" :export "Exportar"
:export-graph "Exportar grafo" :export-graph "Exportar grafo"
:export-page "Exportar página" :export-page "Exportar página"
:export-markdown "Exportar como Markdown padrão (sem propriedades de bloco)" :export-markdown "Exportar como Markdown padrão (sem propriedades de bloco)"
:export-opml "Exportar como OPML" :export-opml "Exportar como OPML"
:export-public-pages "Exportar páginas públicas" :export-public-pages "Exportar páginas públicas"
:export-json "Exportar como JSON" :export-json "Exportar como JSON"
:export-roam-json "Exportar como Roam JSON" :export-roam-json "Exportar como Roam JSON"
:export-edn "Exportar como EDN" :export-edn "Exportar como EDN"
:export-transparent-background "Fundo transparente" :export-transparent-background "Fundo transparente"
:export-copy-to-clipboard "Copiar para a área de transferência" :export-copy-to-clipboard "Copiar para a área de transferência"
:export-copied-to-clipboard "Copiado para a área de transferência!" :export-copied-to-clipboard "Copiado para a área de transferência!"
:export-save-to-file "Salvar em arquivo" :export-save-to-file "Salvar em arquivo"
:all-graphs "Todos os grafos" :all-graphs "Todos os grafos"
:all-pages "Todas as páginas" :all-pages "Todas as páginas"
:all-whiteboards "Todos os whiteboards" :all-whiteboards "Todos os whiteboards"
:all-files "Todos os arquivos" :all-files "Todos os arquivos"
:remove-orphaned-pages "Remover páginas órfãs?" :remove-orphaned-pages "Remover páginas órfãs?"
:all-journals "Todos os diários" :all-journals "Todos os diários"
:settings "Configurações" :settings "Configurações"
:plugins "Plugins" :plugins "Plugins"
:themes "Temas" :themes "Temas"
:relaunch-confirm-to-work "Necessita reiniciar o aplicativo para funcionar. Deseja reiniciá-lo agora?" :relaunch-confirm-to-work "Necessita reiniciar o aplicativo para funcionar. Deseja reiniciá-lo agora?"
:import "Importar" :import "Importar"
:importing "Importando" :importing "Importando"
:join-community "Junte-se à comunidade" :join-community "Junte-se à comunidade"
:discourse-title "Nosso fórum!" :discourse-title "Nosso fórum!"
:help-shortcut-title "Clique para verificar os atalhos e outras dicas" :help-shortcut-title "Clique para verificar os atalhos e outras dicas"
:loading "Carregando..." :loading "Carregando..."
:parsing-files "Analisando arquivos" :parsing-files "Analisando arquivos"
:loading-files "Carregando arquivos" :loading-files "Carregando arquivos"
:login "Entrar" :login "Entrar"
:logout "Sair" :logout "Sair"
:logout-user "Sair ({1})" :logout-user "Sair ({1})"
:download "Baixar" :download "Baixar"
:language "Idioma" :language "Idioma"
@@ -496,7 +496,7 @@
:help/shortcut-page-title "Atalhos de teclado" :help/shortcut-page-title "Atalhos de teclado"
:plugin/installed "Instalado" :plugin/installed "Instalado"
:plugin/installed-plugin "Plugin instalado: {1}" :plugin/installed-plugin "Plugin instalado: {1}"
:plugin/not-installed "Não instalado" :plugin/not-installed "Não instalado"
:plugin/installing "Instalando" :plugin/installing "Instalando"
@@ -530,22 +530,22 @@
:plugin/unpacked-tips "Selecione o diretório do plugin" :plugin/unpacked-tips "Selecione o diretório do plugin"
:plugin/contribute "✨ Escreva e envie um novo plugin" :plugin/contribute "✨ Escreva e envie um novo plugin"
:plugin/up-to-date "Está atualizado {1}" :plugin/up-to-date "Está atualizado {1}"
:plugin/custom-js-alert "Encontrado o arquivo custom.js, permitir a execução? (Se você não entende o conteúdo deste arquivo, é recomendável não permitir a execução, pois isso tem certos riscos de segurança.)" :plugin/custom-js-alert "Encontrado o arquivo custom.js, permitir a execução? (Se você não entende o conteúdo deste arquivo, é recomendável não permitir a execução, pois isso tem certos riscos de segurança.)"
:plugin/security-warning "Os plugins podem acessar o seu grafo e os seus arquivos locais, fazer requisições de rede. :plugin/security-warning "Os plugins podem acessar o seu grafo e os seus arquivos locais, fazer requisições de rede.
Eles também podem causar corrupção ou perda de dados. Estamos trabalhando em regras de acesso adequadas para os seus grafos. Eles também podem causar corrupção ou perda de dados. Estamos trabalhando em regras de acesso adequadas para os seus grafos.
Enquanto isso, certifique-se de fazer backups regulares dos seus grafos e só instale os plugins quando puder ler e Enquanto isso, certifique-se de fazer backups regulares dos seus grafos e só instale os plugins quando puder ler e
entender o código-fonte." entender o código-fonte."
:plugin/search-plugin "Pesquisar plugins" :plugin/search-plugin "Pesquisar plugins"
:plugin/open-preferences "Abrir Preferências" :plugin/open-preferences "Abrir Preferências"
:plugin/open-logseq-dir "Abrir" :plugin/open-logseq-dir "Abrir"
:plugin/remote-error "Erro remoto: " :plugin/remote-error "Erro remoto: "
:plugin/checking-for-updates "Verificando atualizações de plugins ..." :plugin/checking-for-updates "Verificando atualizações de plugins ..."
:plugin/list-of-updates "Atualizações de plugins: " :plugin/list-of-updates "Atualizações de plugins: "
:plugin/auto-check-for-updates "Verificação automática de atualizações" :plugin/auto-check-for-updates "Verificação automática de atualizações"
:plugin.install-from-file/menu-title "Instalar a partir de plugins.edn" :plugin.install-from-file/menu-title "Instalar a partir de plugins.edn"
:plugin.install-from-file/title "Instalar plugins a partir de plugins.edn" :plugin.install-from-file/title "Instalar plugins a partir de plugins.edn"
:plugin.install-from-file/notice "Os seguintes plugins substituirão os seus plugins:" :plugin.install-from-file/notice "Os seguintes plugins substituirão os seus plugins:"
:plugin.install-from-file/success "Todos os plugins foram instalados!" :plugin.install-from-file/success "Todos os plugins foram instalados!"
:pdf/copy-ref "Copiar referência" :pdf/copy-ref "Copiar referência"
:pdf/copy-text "Copiar texto" :pdf/copy-text "Copiar texto"
@@ -612,6 +612,188 @@
:header/go-back "Voltar" :header/go-back "Voltar"
:header/go-forward "Avançar" :header/go-forward "Avançar"
:command.auto-complete/complete "Auto-completar: Escolher item selecionado"
:command.auto-complete/next "Auto-completar: Selecionar próximo item"
:command.auto-complete/open-link "Auto-completar: Abrir item selecionado no navegador"
:command.auto-complete/prev "Auto-completar: Selecionar item anterior"
:command.auto-complete/shift-complete "Auto-completar: Abrir item selecionado na barra lateral"
:command.cards/forgotten "Cartões: esquecidos"
:command.cards/next-card "Cartões: próximo cartão"
:command.cards/recall "Cartões: lembrar em algum tempo"
:command.cards/remembered "Cartões: lembrados"
:command.cards/toggle-answers "Cartões: mostrar/ocultar respostas/ocultados"
:command.command/run "Executar comando git"
:command.command/toggle-favorite "Adicionar/remover dos favoritos"
:command.command-palette/toggle "Pesquisar comandos"
:command.date-picker/complete "Seletor de data: Escolher dia selecionado"
:command.date-picker/next-day "Seletor de data: Selecionar próximo dia"
:command.date-picker/next-week "Seletor de data: Selecionar próxima semana"
:command.date-picker/prev-day "Seletor de data: Selecionar dia anterior"
:command.date-picker/prev-week "Seletor de data: Selecionar semana anterior"
:command.dev/show-block-ast "(Dev) Mostrar AST do bloco"
:command.dev/show-block-data "(Dev) Mostrar dados do bloco"
:command.dev/show-page-ast "(Dev) Mostrar AST da página"
:command.dev/show-page-data "(Dev) Mostrar dados da página"
:command.editor/backspace "Backspace / Apagar"
:command.editor/backward-kill-word "Excluir uma palavra com backspace"
:command.editor/backward-word "Mover cursor para trás da palavra"
:command.editor/beginning-of-block "Mover cursor para o início de um bloco"
:command.editor/bold "Negrito"
:command.editor/clear-block "Excluir conteúdo inteiro do bloco"
:command.editor/collapse-block-children "Contrair"
:command.editor/copy "Copiar (copia seleção ou referência de bloco)"
:command.editor/copy-current-file "Copiar arquivo atual"
:command.editor/copy-embed "Copiar incorporação de bloco apontando para o bloco atual"
:command.editor/copy-page-url "Copiar URL da página"
:command.editor/copy-text "Copiar seleções como texto"
:command.editor/cut "Cortar"
:command.editor/cycle-todo "Rotacionar o estado TODO do item atual"
:command.editor/delete "Delete / Tecla Excluir"
:command.editor/delete-selection "Excluir blocos selecionados"
:command.editor/down "Mover cursor para baixo / Selecionar para baixo"
:command.editor/end-of-block "Mover cursor para o final de um bloco"
:command.editor/escape-editing "Sair da edição"
:command.editor/expand-block-children "Expandir"
:command.editor/follow-link "Seguir link sob o cursor"
:command.editor/forward-kill-word "Excluir uma palavra com tecla delete"
:command.editor/forward-word "Mover cursor para frente da palavra"
:command.editor/highlight "Destacar"
:command.editor/indent "Indentar bloco"
:command.editor/insert-link "Link de HTML"
:command.editor/insert-youtube-timestamp "Inserir timestamp do YouTube"
:command.editor/italics "Itálico"
:command.editor/kill-line-after "Excluir linha após a posição do cursor"
:command.editor/kill-line-before "Excluir linha antes da posição do cursor"
:command.editor/left "Mover cursor para a esquerda / Abrir bloco selecionado no início"
:command.editor/move-block-down "Mover bloco para baixo"
:command.editor/move-block-up "Mover bloco para cima"
:command.editor/new-block "Criar novo bloco"
:command.editor/new-line "Nova linha no bloco atual"
:command.editor/new-whiteboard "Novo whiteboard"
:command.editor/open-edit "Editar bloco selecionado"
:command.editor/open-file-in-default-app "Abrir arquivo no aplicativo padrão"
:command.editor/open-file-in-directory "Abrir arquivo no diretório pai"
:command.editor/open-link-in-sidebar "Abrir link na barra lateral"
:command.editor/outdent "Diminuir recuo do bloco"
:command.editor/paste-text-in-one-block-at-point "Colar texto em um bloco no lugar"
:command.editor/redo "Refazer"
:command.editor/replace-block-reference-at-point "Substituir referência de bloco pelo seu conteúdo no lugar"
:command.editor/right "Mover cursor para a direita / Abrir bloco selecionado no final"
:command.editor/select-all-blocks "Selecionar todos os blocos"
:command.editor/select-block-down "Selecionar bloco abaixo"
:command.editor/select-block-up "Selecionar bloco acima"
:command.editor/select-down "Selecionar conteúdo abaixo"
:command.editor/select-parent "Selecionar bloco pai"
:command.editor/select-up "Selecionar conteúdo acima"
:command.editor/strike-through "Riscar"
:command.editor/toggle-number-list "Alternar lista numerada"
:command.editor/toggle-open-blocks "Alternar blocos abertos (contrair ou expandir todos os blocos)"
:command.editor/toggle-undo-redo-mode "Alternar modo desfazer/refazer (global ou apenas nesta página)"
:command.editor/undo "Desfazer"
:command.editor/up "Mover cursor para cima / Selecionar para cima"
:command.editor/zoom-in "Dar zoom no bloco em edição / Avançar caso contrário"
:command.editor/zoom-out "Dar zoom out no bloco em edição / Retroceder caso contrário"
:command.git/commit "Criar commit git com mensagem"
:command.go/all-graphs "Ir para todos os grafos"
:command.go/all-pages "Ir para todas as páginas"
:command.go/backward "Retroceder"
:command.go/electron-find-in-page "Encontrar texto na página"
:command.go/electron-jump-to-the-next "Pular para a próxima correspondência na sua busca na barra de pesquisa"
:command.go/electron-jump-to-the-previous "Pular para a correspondência anterior na sua busca na barra de pesquisa"
:command.go/flashcards "Alternar cartões de memorização"
:command.go/forward "Avançar"
:command.go/graph-view "Ir para visualização de grafo"
:command.go/home "Ir para a página inicial"
:command.go/journals "Ir para diários"
:command.go/keyboard-shortcuts "Ir para atalhos de teclado"
:command.go/next-journal "Ir para o próximo diário"
:command.go/prev-journal "Ir para o diário anterior"
:command.go/search "Pesquisar páginas e blocos"
:command.go/search-in-page "Pesquisar blocos na página"
:command.go/tomorrow "Ir para amanhã"
:command.go/whiteboards "Ir para whiteboards"
:command.graph/add "Adicionar um grafo"
:command.graph/export-as-html "Exportar páginas de grafos públicos como HTML"
:command.graph/open "Selecionar grafo para abrir"
:command.graph/re-index "Reindexar grafo atual"
:command.graph/remove "Remover um grafo"
:command.misc/copy "Copiar"
:command.pdf/close "PDF: Fechar documento PDF atual"
:command.pdf/find "PDF: Pesquisar texto do documento PDF atual"
:command.pdf/next-page "PDF: Próxima página do documento PDF atual"
:command.pdf/previous-page "PDF: Página anterior do documento PDF atual"
:command.search/re-index "Reconstruir índice de pesquisa"
:command.sidebar/clear "Limpar todos na barra lateral direita"
:command.sidebar/close-top "Fechar o item superior na barra lateral direita"
:command.sidebar/open-today-page "Abrir a página de hoje na barra lateral direita"
:command.ui/clear-all-notifications "Limpar todas as notificações"
:command.ui/cycle-color "Mudar cor"
:command.ui/cycle-color-off "Desativar mudança de cor"
:command.ui/goto-plugins "Ir para o painel de plugins"
:command.ui/install-plugins-from-file "Instalar plugins do arquivo plugins.edn"
:command.ui/select-theme-color "Selecionar cores de tema disponíveis"
:command.ui/toggle-brackets "Alternar se deve exibir colchetes"
:command.ui/toggle-contents "Alternar conteúdo na barra lateral"
:command.ui/toggle-document-mode "Alternar modo de documento"
:command.ui/toggle-help "Alternar ajuda"
:command.ui/toggle-left-sidebar "Alternar barra lateral esquerda"
:command.ui/toggle-right-sidebar "Alternar barra lateral direita"
:command.ui/toggle-settings "Alternar configurações"
:command.ui/toggle-theme "Alternar entre tema escuro/claro"
:command.ui/toggle-wide-mode "Alternar modo amplo"
:command.whiteboard/bring-forward "Mover para frente"
:command.whiteboard/bring-to-front "Mover para a frente"
:command.whiteboard/clone-down "Clonar para baixo"
:command.whiteboard/clone-left "Clonar para a esquerda"
:command.whiteboard/clone-right "Clonar para a direita"
:command.whiteboard/clone-up "Clonar para cima"
:command.whiteboard/connector "Ferramenta de conexão"
:command.whiteboard/ellipse "Ferramenta de elipse"
:command.whiteboard/eraser "Ferramenta de borracha"
:command.whiteboard/group "Seleção de grupo"
:command.whiteboard/highlighter "Ferramenta de marca-texto"
:command.whiteboard/lock "Travar seleção"
:command.whiteboard/pan "Ferramenta de movimentação"
:command.whiteboard/pencil "Ferramenta de lápis"
:command.whiteboard/portal "Ferramenta de portal"
:command.whiteboard/rectangle "Ferramenta de retângulo"
:command.whiteboard/reset-zoom "Redefinir zoom"
:command.whiteboard/select "Ferramenta de seleção"
:command.whiteboard/send-backward "Mover para trás"
:command.whiteboard/send-to-back "Mover para trás"
:command.whiteboard/text "Ferramenta de texto"
:command.whiteboard/toggle-grid "Alternar grade do canvas"
:command.whiteboard/ungroup "Desagrupar seleção"
:command.whiteboard/unlock "Destravar seleção"
:command.whiteboard/zoom-to-fit "Zoom para desenho"
:command.whiteboard/zoom-to-selection "Zoom para ajustar à seleção"
:command.window/close "Fechar janela"
:help/search "Pesquisar páginas/blocos/comandos"
:linked-references/filter-directions "Clique para incluir e shift-clique para excluir. Clique novamente para remover."
:linked-references/filter-excludes "Excluir: "
:linked-references/filter-heading "Filtrar"
:linked-references/filter-includes "Incluir: "
:linked-references/reference-count (fn [filtered-count total] (str (when filtered-count (str filtered-count " de ")) total (if (= total 1) " Referência Vinculada" " Referências Vinculadas")))
:settings-page/git-commit-on-close "Commitar mudanças no Git ao fechar a janela"
:unlinked-references/reference-count (fn [total] (str total (if (= total 1) " Referência Não-Vinculada" " Referências Não-Vinculadas")))
:whiteboard/reference-count (fn [refs-count] (if (= refs-count 1) "Referência" "Referências"))
;; Allowed duplicates - start
:settings-of-plugins "Plugins"
:whiteboard "Whiteboard"
:whiteboards "Whiteboards"
:on-boarding/quick-tour-journal-page-desc-2 "[[link]]"
:plugin/downloads "Downloads"
:right-side-bar/history-global "global"
:right-side-bar/whiteboards "Whiteboards"
:search-item/whiteboard "Whiteboard"
:settings-page/enable-whiteboards "Whiteboards"
:settings-page/plugin-system "Plugins"
:shortcut.category/whiteboard "Whiteboard"
:command.whiteboard/zoom-in "Zoom in"
:command.whiteboard/zoom-out "Zoom out"
;; Allowed duplicates - end
;; Os comandos estão aninhados por enquanto para permanecerem sincronizados com o sistema de atalhos. ;; Os comandos estão aninhados por enquanto para permanecerem sincronizados com o sistema de atalhos.
;; Outras linguagens não devem aninhar chaves em :commands ;; Outras linguagens não devem aninhar chaves em :commands

View File

@@ -204,11 +204,12 @@
(testing "Add classes to a block" (testing "Add classes to a block"
(editor-handler/save-block! repo fbid "Block 1 #class1 #class2 #class3") (editor-handler/save-block! repo fbid "Block 1 #class1 #class2 #class3")
(is (= 3 (count (:block/tags (db/entity [:block/uuid fbid])))))) (is (= 3 (count (:block/tags (db/entity [:block/uuid fbid]))))))
(testing "Remove a class from a block" ;; FIXME: @tiensonqin https://github.com/logseq/logseq/commit/575624c650b2b7e919033a79aa5d14b97507d86f
#_(testing "Remove a class from a block"
;; make sure class2 will not be deleted when removing it from the first block ;; make sure class2 will not be deleted when removing it from the first block
(editor-handler/save-block! repo sbid "Block 2 #class2") (editor-handler/save-block! repo sbid "Block 2 #class2")
(editor-handler/save-block! repo fbid "Block 1 #class1 #class3") (editor-handler/save-block! repo fbid "Block 1 #class1 #class3")
(is (= 2 (count (:block/tags (db/entity [:block/uuid fbid])))))) (is (= 2 (count (:block/tags (db/entity [:block/uuid fbid]))))))
(testing "Get block's classes properties" (testing "Get block's classes properties"
;; set c2 as parent of c3 ;; set c2 as parent of c3
(let [c3 (db/entity [:block/name "class3"])] (let [c3 (db/entity [:block/name "class3"])]
@@ -300,8 +301,8 @@
(testing "Convert property input string according to its schema type" (testing "Convert property input string according to its schema type"
(let [test-uuid (random-uuid)] (let [test-uuid (random-uuid)]
(are [x y] (are [x y]
(= (let [[schema-type value] x] (= (let [[schema-type value] x]
(db-property-handler/convert-property-input-string schema-type value)) y) (db-property-handler/convert-property-input-string schema-type value)) y)
[:number "1"] 1 [:number "1"] 1
[:number "1.2"] 1.2 [:number "1.2"] 1.2
[:page (str test-uuid)] test-uuid [:page (str test-uuid)] test-uuid
@@ -317,8 +318,7 @@
(testing "Replace property key with its uuid" (testing "Replace property key with its uuid"
(let [result (db-property-handler/replace-key-with-id {"property 1" "value 1" (let [result (db-property-handler/replace-key-with-id {"property 1" "value 1"
"property 2" "value 2"})] "property 2" "value 2"})]
(is (every? uuid? (keys result)))) (is (every? uuid? (keys result)))))
)
(testing "Throw an error if a property doesn't exists" (testing "Throw an error if a property doesn't exists"
(is (thrown? js/Error (db-property-handler/replace-key-with-id {"property not exists yet" "value 1"}))))) (is (thrown? js/Error (db-property-handler/replace-key-with-id {"property not exists yet" "value 1"})))))

View File

@@ -1654,7 +1654,7 @@ browserify-zlib@^0.2.0:
dependencies: dependencies:
pako "~1.0.5" pako "~1.0.5"
browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.16.6, browserslist@^4.20.3, browserslist@^4.21.10, browserslist@^4.21.4, browserslist@^4.21.9: browserslist@^4.0.0, browserslist@^4.12.0, browserslist@^4.21.10, browserslist@^4.21.4, browserslist@^4.21.9:
version "4.21.11" version "4.21.11"
resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.11.tgz#35f74a3e51adc4d193dcd76ea13858de7b8fecb8" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.11.tgz#35f74a3e51adc4d193dcd76ea13858de7b8fecb8"
integrity sha512-xn1UXOKUz7DjdGlg9RrUr0GGiWzI97UQJnugHtH0OLDfJB7jMgoIkYvRIEO1l9EeEERVqeqLYOcFBW9ldjypbQ== integrity sha512-xn1UXOKUz7DjdGlg9RrUr0GGiWzI97UQJnugHtH0OLDfJB7jMgoIkYvRIEO1l9EeEERVqeqLYOcFBW9ldjypbQ==
@@ -5100,6 +5100,11 @@ nanoid@^3.3.4:
resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.6.tgz#443380c856d6e9f9824267d960b4236ad583ea4c" resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.6.tgz#443380c856d6e9f9824267d960b4236ad583ea4c"
integrity sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA== integrity sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==
nanoid@^3.3.7:
version "3.3.7"
resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.7.tgz#d0c301a691bc8d54efa0a2226ccf3fe2fd656bd8"
integrity sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==
nanomatch@^1.2.9: nanomatch@^1.2.9:
version "1.2.13" version "1.2.13"
resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119"
@@ -5901,22 +5906,22 @@ postcss-cli@10.0.0:
slash "^4.0.0" slash "^4.0.0"
yargs "^17.0.0" yargs "^17.0.0"
postcss-colormin@5.3.0, postcss-colormin@^5.3.1: postcss-colormin@^5.3.1:
version "5.3.0" version "5.3.1"
resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-5.3.0.tgz#3cee9e5ca62b2c27e84fce63affc0cfb5901956a" resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-5.3.1.tgz#86c27c26ed6ba00d96c79e08f3ffb418d1d1988f"
integrity sha512-WdDO4gOFG2Z8n4P8TWBpshnL3JpmNmJwdnfP2gbk2qBA8PWwOYcmjmI/t3CmMeL72a7Hkd+x/Mg9O2/0rD54Pg== integrity sha512-UsWQG0AqTFQmpBegeLLc1+c3jIqBNB0zlDGRWR+dQ3pRKJL1oeMzyqmH3o2PIfn9MBdNrVPWhDbT769LxCTLJQ==
dependencies: dependencies:
browserslist "^4.16.6" browserslist "^4.21.4"
caniuse-api "^3.0.0" caniuse-api "^3.0.0"
colord "^2.9.1" colord "^2.9.1"
postcss-value-parser "^4.2.0" postcss-value-parser "^4.2.0"
postcss-convert-values@5.1.2, postcss-convert-values@^5.1.3: postcss-convert-values@^5.1.3:
version "5.1.2" version "5.1.3"
resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-5.1.2.tgz#31586df4e184c2e8890e8b34a0b9355313f503ab" resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-5.1.3.tgz#04998bb9ba6b65aa31035d669a6af342c5f9d393"
integrity sha512-c6Hzc4GAv95B7suy4udszX9Zy4ETyMCgFPUDtWjdFTKH1SE9eFY/jEpHSwTH1QPuwxHpWslhckUQWbNRM4ho5g== integrity sha512-82pC1xkJZtcJEfiLw6UXnXVXScgtBrjlO5CBmuDQc+dlb88ZYheFsjTn40+zBVi3DkfF7iezO0nJUPLcJK3pvA==
dependencies: dependencies:
browserslist "^4.20.3" browserslist "^4.21.4"
postcss-value-parser "^4.2.0" postcss-value-parser "^4.2.0"
postcss-discard-comments@^5.1.2: postcss-discard-comments@^5.1.2:
@@ -5980,10 +5985,10 @@ postcss-import@^15.1.0:
read-cache "^1.0.0" read-cache "^1.0.0"
resolve "^1.1.7" resolve "^1.1.7"
postcss-js@4.0.0, postcss-js@^4.0.1: postcss-js@^4.0.1:
version "4.0.0" version "4.0.1"
resolved "https://registry.yarnpkg.com/postcss-js/-/postcss-js-4.0.0.tgz#31db79889531b80dc7bc9b0ad283e418dce0ac00" resolved "https://registry.yarnpkg.com/postcss-js/-/postcss-js-4.0.1.tgz#61598186f3703bab052f1c4f7d805f3991bee9d2"
integrity sha512-77QESFBwgX4irogGVPgQ5s07vLvFqWr228qZY+w6lW599cRlK/HmnlivnnVUxkjHnCu4J16PDMHcH+e+2HbvTQ== integrity sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==
dependencies: dependencies:
camelcase-css "^2.0.1" camelcase-css "^2.0.1"
@@ -6007,20 +6012,20 @@ postcss-media-query-parser@^0.2.3:
resolved "https://registry.yarnpkg.com/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz#27b39c6f4d94f81b1a73b8f76351c609e5cef244" resolved "https://registry.yarnpkg.com/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz#27b39c6f4d94f81b1a73b8f76351c609e5cef244"
integrity sha512-3sOlxmbKcSHMjlUXQZKQ06jOswE7oVkXPxmZdoB1r5l0q6gTFTQSHxNxOrCccElbW7dxNytifNEo8qidX2Vsig== integrity sha512-3sOlxmbKcSHMjlUXQZKQ06jOswE7oVkXPxmZdoB1r5l0q6gTFTQSHxNxOrCccElbW7dxNytifNEo8qidX2Vsig==
postcss-merge-longhand@5.1.6, postcss-merge-longhand@^5.1.7: postcss-merge-longhand@^5.1.7:
version "5.1.6" version "5.1.7"
resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-5.1.6.tgz#f378a8a7e55766b7b644f48e5d8c789ed7ed51ce" resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-5.1.7.tgz#24a1bdf402d9ef0e70f568f39bdc0344d568fb16"
integrity sha512-6C/UGF/3T5OE2CEbOuX7iNO63dnvqhGZeUnKkDeifebY0XqkkvrctYSZurpNE902LDf2yKwwPFgotnfSoPhQiw== integrity sha512-YCI9gZB+PLNskrK0BB3/2OzPnGhPkBEwmwhfYk1ilBHYVAZB7/tkTHFBAnCrvBBOmeYyMYw3DMjT55SyxMBzjQ==
dependencies: dependencies:
postcss-value-parser "^4.2.0" postcss-value-parser "^4.2.0"
stylehacks "^5.1.0" stylehacks "^5.1.1"
postcss-merge-rules@5.1.2, postcss-merge-rules@^5.1.4: postcss-merge-rules@^5.1.4:
version "5.1.2" version "5.1.4"
resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-5.1.2.tgz#7049a14d4211045412116d79b751def4484473a5" resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-5.1.4.tgz#2f26fa5cacb75b1402e213789f6766ae5e40313c"
integrity sha512-zKMUlnw+zYCWoPN6yhPjtcEdlJaMUZ0WyVcxTAmw3lkkN/NDMRkOkiuctQEoWAOvH7twaxUUdvBWl0d4+hifRQ== integrity sha512-0R2IuYpgU93y9lhVbO/OylTtKMVcHb67zjWIfCiKR9rWL3GUk1677LAqD/BcHizukdZEjT8Ru3oHRoAYoJy44g==
dependencies: dependencies:
browserslist "^4.16.6" browserslist "^4.21.4"
caniuse-api "^3.0.0" caniuse-api "^3.0.0"
cssnano-utils "^3.1.0" cssnano-utils "^3.1.0"
postcss-selector-parser "^6.0.5" postcss-selector-parser "^6.0.5"
@@ -6041,12 +6046,12 @@ postcss-minify-gradients@^5.1.1:
cssnano-utils "^3.1.0" cssnano-utils "^3.1.0"
postcss-value-parser "^4.2.0" postcss-value-parser "^4.2.0"
postcss-minify-params@5.1.3, postcss-minify-params@^5.1.4: postcss-minify-params@^5.1.4:
version "5.1.3" version "5.1.4"
resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-5.1.3.tgz#ac41a6465be2db735099bbd1798d85079a6dc1f9" resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-5.1.4.tgz#c06a6c787128b3208b38c9364cfc40c8aa5d7352"
integrity sha512-bkzpWcjykkqIujNL+EVEPOlLYi/eZ050oImVtHU7b4lFS82jPnsCb44gvC6pxaNt38Els3jWYDHTjHKf0koTgg== integrity sha512-+mePA3MgdmVmv6g+30rn57USjOGSAyuxUmkfiWpzalZ8aiBkdPYjXWtHuwJGm1v5Ojy0Z0LaSYhHaLJQB0P8Jw==
dependencies: dependencies:
browserslist "^4.16.6" browserslist "^4.21.4"
cssnano-utils "^3.1.0" cssnano-utils "^3.1.0"
postcss-value-parser "^4.2.0" postcss-value-parser "^4.2.0"
@@ -6142,12 +6147,12 @@ postcss-ordered-values@^5.1.3:
cssnano-utils "^3.1.0" cssnano-utils "^3.1.0"
postcss-value-parser "^4.2.0" postcss-value-parser "^4.2.0"
postcss-reduce-initial@5.1.0, postcss-reduce-initial@^5.1.2: postcss-reduce-initial@^5.1.2:
version "5.1.0" version "5.1.2"
resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-5.1.0.tgz#fc31659ea6e85c492fb2a7b545370c215822c5d6" resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-5.1.2.tgz#798cd77b3e033eae7105c18c9d371d989e1382d6"
integrity sha512-5OgTUviz0aeH6MtBjHfbr57tml13PuedK/Ecg8szzd4XRMbYxH4572JFG067z+FqBIf6Zp/d+0581glkvvWMFw== integrity sha512-dE/y2XRaqAi6OvjzD22pjTUQ8eOfc6m/natGHgKFBK9DxFmIm69YmaRVQrGgFlEfc1HePIurY0TmDeROK05rIg==
dependencies: dependencies:
browserslist "^4.16.6" browserslist "^4.21.4"
caniuse-api "^3.0.0" caniuse-api "^3.0.0"
postcss-reduce-transforms@^5.1.0: postcss-reduce-transforms@^5.1.0:
@@ -6233,7 +6238,7 @@ postcss-value-parser@^4.0.0, postcss-value-parser@^4.1.0, postcss-value-parser@^
resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514" resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514"
integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ== integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==
postcss@8.4.17, postcss@^7.0.14, postcss@^7.0.2, postcss@^7.0.21, postcss@^7.0.26, postcss@^7.0.32, postcss@^7.0.35, postcss@^7.0.6, postcss@^8.2.1, postcss@^8.4.23: postcss@8.4.17, postcss@^8.2.1:
version "8.4.17" version "8.4.17"
resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.17.tgz#f87863ec7cd353f81f7ab2dec5d67d861bbb1be5" resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.17.tgz#f87863ec7cd353f81f7ab2dec5d67d861bbb1be5"
integrity sha512-UNxNOLQydcOFi41yHNMcKRZ39NeXlr8AxGuZJsdub8vIb12fHzcq37DTU/QtbI6WLxNg2gF9Z+8qtRwTj1UI1Q== integrity sha512-UNxNOLQydcOFi41yHNMcKRZ39NeXlr8AxGuZJsdub8vIb12fHzcq37DTU/QtbI6WLxNg2gF9Z+8qtRwTj1UI1Q==
@@ -6242,6 +6247,23 @@ postcss@8.4.17, postcss@^7.0.14, postcss@^7.0.2, postcss@^7.0.21, postcss@^7.0.2
picocolors "^1.0.0" picocolors "^1.0.0"
source-map-js "^1.0.2" source-map-js "^1.0.2"
postcss@^7.0.14, postcss@^7.0.2, postcss@^7.0.21, postcss@^7.0.26, postcss@^7.0.32, postcss@^7.0.35, postcss@^7.0.6:
version "7.0.39"
resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.39.tgz#9624375d965630e2e1f2c02a935c82a59cb48309"
integrity sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==
dependencies:
picocolors "^0.2.1"
source-map "^0.6.1"
postcss@^8.4.23:
version "8.4.33"
resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.33.tgz#1378e859c9f69bf6f638b990a0212f43e2aaa742"
integrity sha512-Kkpbhhdjw2qQs2O2DGX+8m5OVqEcbB9HRBvuYM9pgrjEFUg30A9LmXNlTAUj4S9kgtGyrMbTzVjH7E+s5Re2yg==
dependencies:
nanoid "^3.3.7"
picocolors "^1.0.0"
source-map-js "^1.0.2"
posthog-js@1.10.2: posthog-js@1.10.2:
version "1.10.2" version "1.10.2"
resolved "https://registry.yarnpkg.com/posthog-js/-/posthog-js-1.10.2.tgz#74d6c84f9675b65dfd4ff6f4051ed8d3cb974076" resolved "https://registry.yarnpkg.com/posthog-js/-/posthog-js-1.10.2.tgz#74d6c84f9675b65dfd4ff6f4051ed8d3cb974076"
@@ -7426,7 +7448,7 @@ style-search@^0.1.0:
resolved "https://registry.yarnpkg.com/style-search/-/style-search-0.1.0.tgz#7958c793e47e32e07d2b5cafe5c0bf8e12e77902" resolved "https://registry.yarnpkg.com/style-search/-/style-search-0.1.0.tgz#7958c793e47e32e07d2b5cafe5c0bf8e12e77902"
integrity sha512-Dj1Okke1C3uKKwQcetra4jSuk0DqbzbYtXipzFlFMZtowbF1x7BKJwB9AayVMyFARvU8EDrZdcax4At/452cAg== integrity sha512-Dj1Okke1C3uKKwQcetra4jSuk0DqbzbYtXipzFlFMZtowbF1x7BKJwB9AayVMyFARvU8EDrZdcax4At/452cAg==
stylehacks@^5.1.0: stylehacks@^5.1.1:
version "5.1.1" version "5.1.1"
resolved "https://registry.yarnpkg.com/stylehacks/-/stylehacks-5.1.1.tgz#7934a34eb59d7152149fa69d6e9e56f2fc34bcc9" resolved "https://registry.yarnpkg.com/stylehacks/-/stylehacks-5.1.1.tgz#7934a34eb59d7152149fa69d6e9e56f2fc34bcc9"
integrity sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw== integrity sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw==