refactor: make journal-day page's uuid like this

00000001-2024-0620-0000-000000000000
experiment/tanstack-table
rcmerci 2024-06-20 16:55:09 +08:00
parent 62a2564f4d
commit dc785a92a7
5 changed files with 51 additions and 32 deletions

15
deps/common/src/logseq/common/uuid.cljs vendored Normal file
View File

@ -0,0 +1,15 @@
(ns logseq.common.uuid
"uuid generators"
(:require [datascript.core :as d]))
(defn- gen-journal-page-uuid
[journal-day]
{:pre [(int? journal-day)]}
(let [journal-day-str (str journal-day)
part1 (subs journal-day-str 0 4)
part2 (subs journal-day-str 4 8)]
(uuid (str "00000001-" part1 "-" part2 "-0000-000000000000"))))
(defn gen-uuid
([] (d/squuid))
([journal-day] (gen-journal-page-uuid journal-day)))

View File

@ -1,16 +1,17 @@
(ns logseq.db
"Main namespace for public db fns. For DB and file graphs.
For shared file graph only fns, use logseq.graph-parser.db"
(:require [datascript.core :as d]
[clojure.string :as string]
[logseq.common.util :as common-util]
(:require [clojure.string :as string]
[datascript.core :as d]
[datascript.impl.entity :as de]
[logseq.common.config :as common-config]
[logseq.db.frontend.rules :as rules]
[logseq.db.frontend.entity-plus :as entity-plus]
[logseq.db.sqlite.util :as sqlite-util]
[logseq.db.sqlite.common-db :as sqlite-common-db]
[logseq.common.util :as common-util]
[logseq.common.uuid :as common-uuid]
[logseq.db.frontend.delete-blocks :as delete-blocks]
[datascript.impl.entity :as de]))
[logseq.db.frontend.entity-plus :as entity-plus]
[logseq.db.frontend.rules :as rules]
[logseq.db.sqlite.common-db :as sqlite-common-db]
[logseq.db.sqlite.util :as sqlite-util]))
;; Use it as an input argument for datalog queries
(def block-attrs
@ -365,7 +366,7 @@
(defn new-block-id
[]
(d/squuid))
(common-uuid/gen-uuid))
(defn get-tag-blocks
[db tag-name]
@ -468,7 +469,7 @@
(transact!
repo
[(sqlite-util/block-with-timestamps
{:block/uuid (d/squuid)
{:block/uuid (common-uuid/gen-uuid)
:block/name common-config/favorites-page-name
:block/original-name common-config/favorites-page-name
:block/type #{"hidden"}

View File

@ -4,18 +4,19 @@
[clojure.string :as string]
[clojure.walk :as walk]
[datascript.core :as d]
[datascript.impl.entity :as de]
[logseq.common.config :as common-config]
[logseq.common.util :as common-util]
[logseq.common.util.block-ref :as block-ref]
[logseq.common.util.date-time :as date-time-util]
[logseq.common.util.page-ref :as page-ref]
[logseq.common.uuid :as common-uuid]
[logseq.db :as ldb]
[logseq.db.frontend.order :as db-order]
[logseq.graph-parser.mldoc :as gp-mldoc]
[logseq.graph-parser.property :as gp-property]
[logseq.graph-parser.text :as text]
[logseq.graph-parser.utf8 :as utf8]
[logseq.common.util :as common-util]
[logseq.common.util.block-ref :as block-ref]
[logseq.common.util.page-ref :as page-ref]
[datascript.impl.entity :as de]
[logseq.db :as ldb]
[logseq.db.frontend.order :as db-order]))
[logseq.graph-parser.utf8 :as utf8]))
(defn heading-block?
[block]
@ -321,12 +322,13 @@
(merge
{:block/name page-name
:block/original-name original-page-name}
(let [new-uuid (if skip-existing-page-check?
(d/squuid)
(let [new-uuid* (if journal-day (common-uuid/gen-uuid journal-day) (common-uuid/gen-uuid))
new-uuid (if skip-existing-page-check?
new-uuid*
(or
(cond page-entity (:block/uuid page-entity)
(uuid? page-uuid) page-uuid)
(d/squuid)))]
new-uuid*))]
{:block/uuid new-uuid})
(when namespace?
(let [namespace (first (common-util/split-last "/" original-page-name))]

View File

@ -2,13 +2,13 @@
(:require [cljs-time.coerce :as tc]
[cljs-time.core :as t]
[clojure.string :as string]
[datascript.core :as d]
[frontend.components.lazy-editor :as lazy-editor]
[frontend.components.svg :as svg]
[frontend.config :as config]
[frontend.context.i18n :refer [t]]
[frontend.date :as date]
[frontend.db :as db]
[frontend.db.async :as db-async]
[frontend.fs :as fs]
[frontend.state :as state]
[frontend.ui :as ui]
@ -16,12 +16,12 @@
[goog.object :as gobj]
[goog.string :as gstring]
[logseq.common.config :as common-config]
[logseq.common.path :as path]
[logseq.common.util :as common-util]
[logseq.common.uuid :as common-uuid]
[promesa.core :as p]
[reitit.frontend.easy :as rfe]
[rum.core :as rum]
[logseq.common.path :as path]
[frontend.db.async :as db-async]))
[rum.core :as rum]))
(defn- get-path
[state]
@ -115,7 +115,7 @@
:else
path)
random-id (str (d/squuid))
random-id (str (common-uuid/gen-uuid))
content (rum/react (::file-content state))]
[:div.file {:id (str "file-edit-wrapper-" random-id)
:key path}

View File

@ -1,12 +1,12 @@
(ns frontend.extensions.pdf.utils
(:require [promesa.core :as p]
(:require ["/frontend/extensions/pdf/utils" :as js-utils]
[cljs-bean.core :as bean]
[frontend.util :as util]
[clojure.string :as string]
[frontend.config :as config]
[frontend.state :as state]
["/frontend/extensions/pdf/utils" :as js-utils]
[datascript.core :as d]
[clojure.string :as string]))
[frontend.util :as util]
[logseq.common.uuid :as common-uuid]
[promesa.core :as p]))
(defonce MAX-SCALE 5.0)
(defonce MIN-SCALE 0.25)
@ -124,8 +124,9 @@
(when (sequential? its)
(mapv #(if (map? %) % (bean/->clj %)) its)))
(defn gen-uuid []
(d/squuid))
(defn gen-uuid
[]
(common-uuid/gen-uuid))
(defn load-base-assets$
[]