mirror of https://github.com/logseq/logseq
Add agenda
parent
e2bf23ab0f
commit
f3bf9232c5
|
@ -15,7 +15,7 @@
|
|||
"browserfs": "^1.4.3",
|
||||
"dev": "^0.1.3",
|
||||
"isomorphic-git": "^1.1.2",
|
||||
"mldoc_org": "^0.2.0",
|
||||
"mldoc_org": "^0.2.3",
|
||||
"purgecss": "^2.1.0",
|
||||
"react": "^16.12.0",
|
||||
"react-dom": "^16.12.0",
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
<meta charset="utf-8">
|
||||
<meta content="minimum-scale=1, initial-scale=1, width=device-width, shrink-to-fit=no" name="viewport">
|
||||
<link href="/static/css/tailwind.min.css" rel="stylesheet" type="text/css">
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@tailwindcss/ui@latest/dist/tailwind-ui.min.css">
|
||||
<link href="/static/css/org.css" rel="stylesheet">
|
||||
<link href="/static/css/style.css" rel="stylesheet" type="text/css">
|
||||
<link href="https://fonts.googleapis.com/css?family=Roboto:300,400,500,700&display=swap" rel="stylesheet">
|
||||
|
|
|
@ -30,8 +30,6 @@
|
|||
font-size: medium;
|
||||
font-weight: bold;
|
||||
margin-top:0; }
|
||||
.tag { background-color: #eee; font-family: monospace;
|
||||
padding: 2px; font-size: 80%; font-weight: normal; }
|
||||
.timestamp { color: #bebebe; margin-left: 6px; }
|
||||
.timestamp-kwd { color: #5f9ea0; margin-left: 6px; }
|
||||
.org-right { margin-left: auto; margin-right: 0px; text-align: right; }
|
||||
|
@ -211,15 +209,15 @@ dt { font-weight: bold; }
|
|||
|
||||
/* scroll-bg */
|
||||
.scroll-background {
|
||||
height: 400%; width: 400%; top: -25%; left: -100%; background-size: 800px auto; background-image: url('/img/hero-pattern-lg.png');
|
||||
height: 400%; width: 400%; top: -25%; left: -100%; background-size: 800px auto; background-image: url('/static/img/hero-pattern-lg.png');
|
||||
}
|
||||
|
||||
.angled-background {
|
||||
background-image: url('/img/angled-background.svg'); background-size: 100% auto; background-position: -5px -5px;
|
||||
background-image: url('/static/img/angled-background.svg'); background-size: 100% auto; background-position: -5px -5px;
|
||||
}
|
||||
|
||||
.scroll-background-2 {
|
||||
height: 800%; width: 400%; top: -100%; left: -100%; background-size: 400px auto; background-image: url('/img/hero-pattern-lg.png');
|
||||
height: 800%; width: 400%; top: -100%; left: -100%; background-size: 400px auto; background-image: url('/static/img/hero-pattern-lg.png');
|
||||
}
|
||||
|
||||
@-webkit-keyframes scrollSmall {0%{transform:rotate(-13deg) translateY(0)}to{transform:rotate(-13deg) translateY(-639px)}}
|
||||
|
@ -235,23 +233,6 @@ dt { font-weight: bold; }
|
|||
.scroll-bg{-webkit-animation-name:scrollSmall;animation-name:scrollSmall;-webkit-animation-duration:15s;animation-duration:15s;-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}
|
||||
@media (min-width:1024px){.scroll-bg{-webkit-animation-name:scrollLarge;animation-name:scrollLarge;-webkit-animation-duration:35s;animation-duration:35s;-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}}
|
||||
|
||||
.text-gray-700 {
|
||||
color: #374151;
|
||||
}
|
||||
|
||||
.form-input {
|
||||
-webkit-appearance: none;
|
||||
-moz-appearance: none;
|
||||
appearance: none;
|
||||
background-color: #fff;
|
||||
border-color: #d2d6dc;
|
||||
border-width: 1px;
|
||||
border-radius: .375rem;
|
||||
padding: .5rem .75rem;
|
||||
font-size: 1rem;
|
||||
line-height: 1.5;
|
||||
}
|
||||
|
||||
h1, h2, h3, h4, h5, h6 {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
|
|
@ -6,11 +6,9 @@
|
|||
[frontend.state :as state]
|
||||
[clojure.string :as string]
|
||||
[frontend.format.org-mode :as org]
|
||||
[frontend.components.sidebar :as sidebar]))
|
||||
|
||||
(rum/defc agenda
|
||||
[]
|
||||
(sidebar/sidebar [:div "Agenda"]))
|
||||
[frontend.components.sidebar :as sidebar]
|
||||
[frontend.db :as db]
|
||||
[frontend.ui :as ui]))
|
||||
|
||||
(rum/defc timestamps-cp
|
||||
[timestamps]
|
||||
|
@ -30,73 +28,94 @@
|
|||
html (org/inline-list->html title-json)]
|
||||
(util/raw-html html)))
|
||||
|
||||
(rum/defc children-cp
|
||||
[children]
|
||||
(let [children-json (js/JSON.stringify (clj->js children))
|
||||
html (org/json->html children-json)]
|
||||
(util/raw-html html)))
|
||||
|
||||
(rum/defc marker-cp
|
||||
[marker]
|
||||
[:span {:class (str "marker-" (string/lower-case marker))
|
||||
:style {:margin-left 8}}
|
||||
(if (contains? #{"DOING" "IN-PROGRESS"} marker)
|
||||
(str " (" marker ")"))])
|
||||
(if marker
|
||||
[:span {:class (str "marker-" (string/lower-case marker))
|
||||
:style {:margin-left 8}}
|
||||
(if (contains? #{"DOING" "IN-PROGRESS"} marker)
|
||||
(str " (" marker ")"))]))
|
||||
|
||||
(rum/defc tags-cp
|
||||
[tags]
|
||||
[:span
|
||||
(for [tag tags]
|
||||
[:span.tag {:key tag}
|
||||
(for [{:keys [tag/name]} tags]
|
||||
[:span.tag {:key name}
|
||||
[:span
|
||||
tag]])])
|
||||
name]])])
|
||||
|
||||
;; (rum/defc agenda
|
||||
;; [tasks]
|
||||
;; [:span "TBD"]
|
||||
;; ;; [:div#agenda
|
||||
;; ;; (if (seq tasks)
|
||||
;; ;; (for [[section-name tasks] tasks]
|
||||
;; ;; [:div.section {:key (str "section-" section-name)}
|
||||
;; ;; [:h3 section-name]
|
||||
;; ;; (mui/list
|
||||
;; ;; (for [[idx {:keys [marker title priority level tags children timestamps meta]}] (util/indexed (block/sort-tasks tasks))]
|
||||
;; ;; (mui/list-item
|
||||
;; ;; {:key (str "task-" section-name "-" idx)
|
||||
;; ;; :style {:padding-left 8
|
||||
;; ;; :padding-right 8}}
|
||||
;; ;; [:div.column
|
||||
;; ;; [:div.row {:style {:align-items "center"}}
|
||||
;; ;; (let [marker (case marker
|
||||
;; ;; (list "DOING" "IN-PROGRESS" "TODO")
|
||||
;; ;; (mui/checkbox {:checked false
|
||||
;; ;; :on-change (fn [_]
|
||||
;; ;; ;; FIXME: Log timestamp
|
||||
;; ;; (handler/check marker (:pos meta)))
|
||||
;; ;; :color "primary"
|
||||
;; ;; :style {:padding 0}})
|
||||
(rum/defq agenda <
|
||||
{:q (fn [state] (db/sub-agenda))}
|
||||
[state tasks]
|
||||
(let [tasks-ids (db/seq-flatten tasks)
|
||||
tasks (db/pull-many tasks-ids)]
|
||||
(sidebar/sidebar
|
||||
[:div#agenda
|
||||
[:h2.mb-3 "Agenda"]
|
||||
(if (seq tasks)
|
||||
[:div.ml-1
|
||||
(let [parent-tasks (block/group-by-parent (block/sort-tasks tasks))]
|
||||
(for [[parent tasks] parent-tasks]
|
||||
(let [parent (cond
|
||||
(string? parent)
|
||||
parent
|
||||
|
||||
;; ;; "WAIT"
|
||||
;; ;; [:span {:style {:font-weight "bold"}}
|
||||
;; ;; "WAIT"]
|
||||
(and (map? parent)
|
||||
(:label parent))
|
||||
(title-cp (:label parent))
|
||||
|
||||
;; ;; "DONE"
|
||||
;; ;; (mui/checkbox {:checked true
|
||||
;; ;; :on-change (fn [_]
|
||||
;; ;; ;; FIXME: rollback to the last state if exists.
|
||||
;; ;; ;; it must not be `TODO`
|
||||
;; ;; (handler/uncheck (:pos meta)))
|
||||
;; ;; :color "primary"
|
||||
;; ;; :style {:padding 0}})
|
||||
:else
|
||||
"uncategorized")]
|
||||
[:div.mt-10
|
||||
[:h4.mb-3.text-gray-500 parent]
|
||||
(for [{:heading/keys [uuid marker title priority level tags children timestamps meta] :as task} tasks]
|
||||
[:div.mb-2
|
||||
{:key (str "task-" uuid)
|
||||
:style {:padding-left 8
|
||||
:padding-right 8}}
|
||||
[:div.column
|
||||
[:div.row {:style {:align-items "center"}}
|
||||
(case marker
|
||||
(list "DOING" "IN-PROGRESS" "TODO")
|
||||
(ui/checkbox {:on-change (fn [_]
|
||||
;; FIXME: Log timestamp
|
||||
;; (handler/check marker (:pos meta))
|
||||
)})
|
||||
|
||||
;; ;; nil)]
|
||||
;; ;; (if priority
|
||||
;; ;; (mui/badge {:badge-content (string/lower-case priority)
|
||||
;; ;; :overlay "circle"}
|
||||
;; ;; marker)
|
||||
;; ;; marker))
|
||||
"WAIT"
|
||||
[:span {:style {:font-weight "bold"}}
|
||||
"WAIT"]
|
||||
|
||||
;; ;; [:div.row {:style {:margin-left 8}}
|
||||
;; ;; (title-cp title)
|
||||
;; ;; (marker-cp marker)
|
||||
;; ;; (when (seq tags)
|
||||
;; ;; (tags-cp tags))]]
|
||||
;; ;; (when (seq timestamps)
|
||||
;; ;; (timestamps-cp timestamps))
|
||||
;; ;; ])))])
|
||||
;; ;; "Empty")]
|
||||
;; )
|
||||
"DONE"
|
||||
(do
|
||||
(prn marker)
|
||||
(ui/checkbox {:checked true
|
||||
:on-change (fn [_]
|
||||
;; FIXME: Log timestamp
|
||||
;; (handler/uncheck marker (:pos meta))
|
||||
)}))
|
||||
|
||||
nil)
|
||||
[:div.row.ml-2
|
||||
(if priority
|
||||
[:span.priority.mr-1
|
||||
(str "#[" priority "]")])
|
||||
(title-cp title)
|
||||
(marker-cp marker)
|
||||
(when (seq tags)
|
||||
(tags-cp tags))]]
|
||||
(when (seq timestamps)
|
||||
(timestamps-cp timestamps))
|
||||
|
||||
;; FIXME: parse error
|
||||
;; (when (seq children)
|
||||
;; (children-cp children))
|
||||
|
||||
]])])))]
|
||||
"Empty")])))
|
||||
|
|
|
@ -30,14 +30,12 @@
|
|||
suffix (last (string/split path #"\."))]
|
||||
(sidebar/sidebar
|
||||
(if (and suffix (contains? #{"md" "markdown" "org"} suffix))
|
||||
[:div#content.flex.justify-center
|
||||
[:div.m-6.flex-1 {:style {:position "relative"
|
||||
:max-width 800}}
|
||||
[:a {:href (str "/file/" encoded-path "/edit")}
|
||||
"edit"]
|
||||
(if content
|
||||
(util/raw-html (format/to-html content suffix))
|
||||
"Loading ...")]]
|
||||
[:div#content
|
||||
[:a {:href (str "/file/" encoded-path "/edit")}
|
||||
"edit"]
|
||||
(if content
|
||||
(util/raw-html (format/to-html content suffix))
|
||||
"Loading ...")]
|
||||
[:div "File " suffix " is not supported."]))))
|
||||
|
||||
(defn- count-newlines
|
||||
|
@ -54,25 +52,24 @@
|
|||
commit-message (get state ::commit-message)
|
||||
[_encoded-path path] (get-path state)]
|
||||
(sidebar/sidebar
|
||||
[:div#content.flex.justify-center
|
||||
[:div.m-6.flex-1 {:style {:max-width 800}}
|
||||
[:h3.mb-2 (str "Update " path)]
|
||||
[:textarea
|
||||
{:rows (+ 3 (count-newlines @content))
|
||||
:style {:min-height 300}
|
||||
:default-value initial-content
|
||||
:on-change #(reset! content (.. % -target -value))
|
||||
:auto-focus true}]
|
||||
[:div.mt-1.mb-1.relative.rounded-md.shadow-sm
|
||||
[:input.form-input.block.w-full.sm:text-sm.sm:leading-5
|
||||
{:placeholder "Commit message"
|
||||
:on-change (fn [e]
|
||||
(reset! commit-message (util/evalue e)))}]]
|
||||
(ui/button "Save" (fn []
|
||||
(when (and (not (string/blank? @content))
|
||||
(not (= initial-content
|
||||
@content)))
|
||||
(let [commit-message (if (string/blank? @commit-message)
|
||||
(str "Update " path)
|
||||
@commit-message)]
|
||||
(handler/alter-file path commit-message @content)))))]])))
|
||||
[:div#content
|
||||
[:h3.mb-2 (str "Update " path)]
|
||||
[:textarea
|
||||
{:rows (+ 3 (count-newlines @content))
|
||||
:style {:min-height 300}
|
||||
:default-value initial-content
|
||||
:on-change #(reset! content (.. % -target -value))
|
||||
:auto-focus true}]
|
||||
[:div.mt-1.mb-1.relative.rounded-md.shadow-sm
|
||||
[:input.form-input.block.w-full.sm:text-sm.sm:leading-5
|
||||
{:placeholder "Commit message"
|
||||
:on-change (fn [e]
|
||||
(reset! commit-message (util/evalue e)))}]]
|
||||
(ui/button "Save" (fn []
|
||||
(when (and (not (string/blank? @content))
|
||||
(not (= initial-content
|
||||
@content)))
|
||||
(let [commit-message (if (string/blank? @commit-message)
|
||||
(str "Update " path)
|
||||
@commit-message)]
|
||||
(handler/alter-file path commit-message @content)))))])))
|
||||
|
|
|
@ -23,7 +23,7 @@
|
|||
[:div
|
||||
[:img.h-6.lg:h-8.xl:h-9
|
||||
{:alt "Gitnotes",
|
||||
:src "/img/tailwindui-logo-on-dark.svg"}]]
|
||||
:src "/static/img/tailwindui-logo-on-dark.svg"}]]
|
||||
[:div
|
||||
[:a.text-sm.font-semibold.text-white.focus:outline-none.focus:underline
|
||||
{:href (str config/api "login/github")}
|
||||
|
@ -55,7 +55,7 @@
|
|||
{:href "https://twitter.com/adamwathan"}]
|
||||
[:div.flex-shrink-0
|
||||
[:img.h-12.w-12.rounded-full.border-2.border-white
|
||||
{:alt "", :src "/img/adam.jpg"}]]
|
||||
{:alt "", :src "/static/img/adam.jpg"}]]
|
||||
[:div.ml-3
|
||||
[:p.font-semibold.text-white.leading-tight "Adam Wathan"]
|
||||
[:p.text-sm.text-gray-500.leading-tight
|
||||
|
@ -64,7 +64,7 @@
|
|||
{:href "https://twitter.com/steveschoger"}]
|
||||
[:div.flex-shrink-0
|
||||
[:img.h-12.w-12.rounded-full.border-2.border-white
|
||||
{:alt "", :src "/img/steve.jpg"}]]
|
||||
{:alt "", :src "/static/img/steve.jpg"}]]
|
||||
[:div.ml-3
|
||||
[:p.font-semibold.text-white.leading-tight "Steve Schoger"]
|
||||
[:p.text-sm.text-gray-500.leading-tight
|
||||
|
|
|
@ -20,21 +20,24 @@
|
|||
|
||||
(rum/defcs add-repo < (rum/local "https://github.com/" ::repo-url)
|
||||
[state]
|
||||
(let [repo-url (get state ::repo-url)]
|
||||
(let [prefix "https://github.com/"
|
||||
repo-url (get state ::repo-url)]
|
||||
[:div.p-8.flex.items-center.justify-center.bg-white
|
||||
[:div.w-full.max-w-xs.mx-auto
|
||||
[:div
|
||||
[:label.block.text-sm.font-medium.leading-5.text-gray-700
|
||||
{:for "Repo"}
|
||||
"Specify your repo: "]
|
||||
[:div.mt-2.mb-2.relative.rounded-md.shadow-sm
|
||||
[:input.form-input.block.w-full.sm:text-sm.sm:leading-5
|
||||
{:auto-focus true
|
||||
:placeholder "https://github.com/yourname/repo"
|
||||
:value @repo-url
|
||||
:on-change (fn [e]
|
||||
(reset! repo-url (util/evalue e)))}]]]
|
||||
[:div
|
||||
[:h2 "Specify your repo:"]
|
||||
[:div.mt-2.mb-2.relative.rounded-md.shadow-sm
|
||||
[:div.absolute.inset-y-0.left-0.pl-3.flex.items-center.pointer-events-none
|
||||
[:span.text-gray-500.sm:text-sm.sm:leading-5
|
||||
prefix]]
|
||||
[:input#repo.form-input.block.w-full.pl-16.sm:pl-14.sm:text-sm.sm:leading-5
|
||||
{:autoFocus true
|
||||
:placeholder "username/repo"
|
||||
:on-change (fn [e]
|
||||
(reset! repo-url (util/evalue e)))
|
||||
:style {:padding-left "9.1em"}}]]]]
|
||||
(ui/button
|
||||
"Clone"
|
||||
(fn []
|
||||
(handler/clone-and-pull @repo-url)))]]))
|
||||
(handler/clone-and-pull (str prefix @repo-url))))]]))
|
||||
|
|
|
@ -150,9 +150,9 @@
|
|||
[:main.flex-1.relative.z-0.overflow-y-auto.py-6.focus:outline-none
|
||||
;; {:x-init "$el.focus()", :x-data "x-data", :tabindex "0"}
|
||||
{:tabIndex "0"}
|
||||
main-content
|
||||
[:div.max-w-7xl.mx-auto.px-4.sm:px-6.md:px-8
|
||||
[:div.py-4
|
||||
[:div.border-4.border-dashed.border-gray-200.rounded-lg.h-96]]]]
|
||||
[:div.flex.justify-center
|
||||
[:div.flex-1.m-6 {:style {:position "relative"
|
||||
:max-width 800}}
|
||||
main-content]]]
|
||||
|
||||
(ui/notification)]]))
|
||||
|
|
|
@ -71,7 +71,9 @@
|
|||
;; FIXME do not notify if tx-data is empty
|
||||
(prn "db changed.")
|
||||
(when-let [db (:db-after tx-report)]
|
||||
(js/setTimeout #(persist db) 0))))
|
||||
(js/setTimeout #(do
|
||||
(persist db)
|
||||
(posh/posh! conn)) 0))))
|
||||
|
||||
;; (new TextEncoder().encode('foo')).length
|
||||
(defn db-size
|
||||
|
@ -82,9 +84,9 @@
|
|||
|
||||
(defn restore! []
|
||||
(when-let [stored (js/localStorage.getItem datascript-db)]
|
||||
(let [stored-db (string->db stored)]
|
||||
(when (= (:schema stored-db) schema) ;; check for code update
|
||||
(reset-conn! stored-db)))))
|
||||
(let [stored-db (string->db stored)]
|
||||
(when (= (:schema stored-db) schema) ;; check for code update
|
||||
(reset-conn! stored-db)))))
|
||||
|
||||
;; TODO: added_at, started_at, schedule, deadline
|
||||
(def qualified-map
|
||||
|
@ -161,10 +163,10 @@
|
|||
(defn get-repo-headings
|
||||
[repo-url]
|
||||
(-> (d/q '[:find ?heading
|
||||
:in $ ?repo-url
|
||||
:where
|
||||
[?repo :repo/url ?repo-url]
|
||||
[?heading :heading/repo ?repo]]
|
||||
:in $ ?repo-url
|
||||
:where
|
||||
[?repo :repo/url ?repo-url]
|
||||
[?heading :heading/repo ?repo]]
|
||||
@conn repo-url)
|
||||
seq-flatten))
|
||||
|
||||
|
@ -189,21 +191,6 @@
|
|||
[?h :heading/title]]
|
||||
@conn)))
|
||||
|
||||
;; marker should be one of: TODO, DOING, IN-PROGRESS
|
||||
;; time duration
|
||||
(defn get-agenda
|
||||
[time]
|
||||
(let [duration (case time
|
||||
:today []
|
||||
:week []
|
||||
:month [])]
|
||||
(d/q '[:find (pull ?h [*])
|
||||
:where
|
||||
(or [?h :heading/marker "TODO"]
|
||||
[?h :heading/marker "DOING"]
|
||||
[?h :heading/marker "IN-PROGRESS"])]
|
||||
@conn)))
|
||||
|
||||
(defn search-headings-by-title
|
||||
[title])
|
||||
|
||||
|
@ -227,8 +214,10 @@
|
|||
(posh/pull conn selector eid))
|
||||
|
||||
(defn pull-many
|
||||
[selector eids]
|
||||
(posh/pull-many conn selector eids))
|
||||
([eids]
|
||||
(pull-many '[*] eids))
|
||||
([selector eids]
|
||||
(d/pull-many (d/db conn) selector eids)))
|
||||
|
||||
(defn q
|
||||
[query & inputs]
|
||||
|
@ -369,10 +358,27 @@
|
|||
[?repo :repo/url ?repo-url]
|
||||
[?file :file/repo ?repo]
|
||||
[?file :file/content ?content]
|
||||
[?file :file/path ?path]
|
||||
]
|
||||
[?file :file/path ?path]]
|
||||
@conn repo-url))
|
||||
|
||||
;; marker should be one of: TODO, DOING, IN-PROGRESS
|
||||
;; time duration
|
||||
(defn sub-agenda
|
||||
([]
|
||||
(sub-agenda :week))
|
||||
([time]
|
||||
(let [duration (case time
|
||||
:today []
|
||||
:week []
|
||||
:month [])]
|
||||
(q '[:find ?h
|
||||
:where
|
||||
(or [?h :heading/marker "TODO"]
|
||||
[?h :heading/marker "DOING"]
|
||||
[?h :heading/marker "IN-PROGRESS"]
|
||||
[?h :heading/marker "DONE"])]
|
||||
conn))))
|
||||
|
||||
(comment
|
||||
(d/transact! conn [{:db/id -1
|
||||
:repo/url "https://github.com/tiensonqin/notes"
|
||||
|
|
|
@ -82,18 +82,6 @@
|
|||
(recur child-level children children-headings result (rest rblocks) timestamps)))))
|
||||
(reverse result)))))
|
||||
|
||||
(defn get-sections
|
||||
[section-headings]
|
||||
(map first section-headings))
|
||||
|
||||
(defn get-section-headings
|
||||
[section-name section-headings]
|
||||
(-> (util/find-first
|
||||
(fn [[name headings]]
|
||||
(= name section-name))
|
||||
section-headings)
|
||||
second))
|
||||
|
||||
;; marker: DOING | IN-PROGRESS > TODO > WAITING | WAIT > DONE > CANCELED | CANCELLED
|
||||
;; priority: A > B > C
|
||||
(defn sort-tasks
|
||||
|
@ -103,11 +91,15 @@
|
|||
priorities ["A" "B" "C" "D" "E" "F" "G"]
|
||||
priorities (zipmap priorities (reverse (range 1 (count priorities))))]
|
||||
(sort (fn [t1 t2]
|
||||
(let [m1 (get markers (:marker t1) 0)
|
||||
m2 (get markers (:marker t2) 0)
|
||||
p1 (get priorities (:priority t1) 0)
|
||||
p2 (get priorities (:priority t2) 0)]
|
||||
(let [m1 (get markers (:heading/marker t1) 0)
|
||||
m2 (get markers (:heading/marker t2) 0)
|
||||
p1 (get priorities (:heading/priority t1) 0)
|
||||
p2 (get priorities (:heading/priority t2) 0)]
|
||||
(if (= m1 m2)
|
||||
(> p1 p2)
|
||||
(> m1 m2))))
|
||||
headings)))
|
||||
|
||||
(defn group-by-parent
|
||||
[headings]
|
||||
(group-by :heading/parent-title headings))
|
||||
|
|
|
@ -2,19 +2,26 @@
|
|||
(:require ["mldoc_org" :as org]
|
||||
[frontend.format.protocol :as protocol]))
|
||||
|
||||
(def config
|
||||
(js/JSON.stringify
|
||||
#js {:toc false
|
||||
:heading_number false}))
|
||||
|
||||
(def Org (.-MldocOrg org))
|
||||
|
||||
(defrecord OrgMode [content]
|
||||
protocol/Format
|
||||
(toHtml [this]
|
||||
(.parseHtml (.-MldocOrg org)
|
||||
content
|
||||
(js/JSON.stringify
|
||||
#js {:toc false
|
||||
:heading_number false}))))
|
||||
(.parseHtml Org content config)))
|
||||
|
||||
(defn parse-json
|
||||
[content]
|
||||
(.parseJson (.-MldocOrg org) content))
|
||||
(.parseJson Org content))
|
||||
|
||||
(defn inline-list->html
|
||||
[json]
|
||||
(.inlineListToHtmlStr (.-MldocOrg org) json))
|
||||
(.inlineListToHtmlStr Org json))
|
||||
|
||||
(defn json->html
|
||||
[json]
|
||||
(.jsonToHtmlStr Org json config))
|
||||
|
|
|
@ -3,7 +3,6 @@
|
|||
;; TODO: replace this with datascript
|
||||
(def state (atom
|
||||
{:route-match nil
|
||||
:tasks {}
|
||||
:notification/show? false
|
||||
:notification/text nil
|
||||
}))
|
||||
:tasks-transactions nil}))
|
||||
|
|
|
@ -65,7 +65,7 @@
|
|||
[:div.flex.items-start
|
||||
[:div.flex-shrink-0
|
||||
[:svg.h-6.w-6.text-green-400
|
||||
{:stroke "currentColor", :viewbox "0 0 24 24", :fill "none"}
|
||||
{:stroke "currentColor", :viewBox "0 0 24 24", :fill "none"}
|
||||
[:path
|
||||
{:d "M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z",
|
||||
:stroke-width "2",
|
||||
|
@ -79,7 +79,7 @@
|
|||
{:on-click (fn []
|
||||
(swap! state/state assoc :notification/show? false))}
|
||||
[:svg.h-5.w-5
|
||||
{:fill "currentColor", :viewbox "0 0 20 20"}
|
||||
{:fill "currentColor", :viewBox "0 0 20 20"}
|
||||
[:path
|
||||
{:clip-rule "evenodd",
|
||||
:d
|
||||
|
@ -93,3 +93,14 @@
|
|||
{:in show? :timeout 100}
|
||||
(fn [state]
|
||||
(notification-content state text)))))
|
||||
|
||||
(rum/defc checkbox
|
||||
[option]
|
||||
[:input.form-checkbox.h-4.w-4.text-indigo-600.transition.duration-150.ease-in-out
|
||||
(merge {:type "checkbox"} option)])
|
||||
|
||||
(rum/defc badge
|
||||
[text option]
|
||||
[:span.inline-flex.items-center.px-2.5.py-0.5.rounded-full.text-xs.font-medium.leading-4.bg-purple-100.text-purple-800
|
||||
option
|
||||
text])
|
||||
|
|
234
web/yarn.lock
234
web/yarn.lock
|
@ -2,117 +2,18 @@
|
|||
# yarn lockfile v1
|
||||
|
||||
|
||||
"@babel/runtime@^7.3.1", "@babel/runtime@^7.4.4", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.2", "@babel/runtime@^7.6.3":
|
||||
"@babel/runtime@^7.5.5", "@babel/runtime@^7.6.3":
|
||||
version "7.7.6"
|
||||
resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.7.6.tgz#d18c511121aff1b4f2cd1d452f1bac9601dd830f"
|
||||
integrity sha512-BWAJxpNVa0QlE5gZdWjSxXtemZyZ9RmrmVozxt3NUXeZhVIJ5ANyqmMc0JDrivBZyxUuQvFxlvH4OWWOogGfUw==
|
||||
dependencies:
|
||||
regenerator-runtime "^0.13.2"
|
||||
|
||||
"@emotion/hash@^0.7.1":
|
||||
version "0.7.3"
|
||||
resolved "https://registry.yarnpkg.com/@emotion/hash/-/hash-0.7.3.tgz#a166882c81c0c6040975dd30df24fae8549bd96f"
|
||||
integrity sha512-14ZVlsB9akwvydAdaEnVnvqu6J2P6ySv39hYyl/aoB6w/V+bXX0tay8cF6paqbgZsN2n5Xh15uF4pE+GvE+itw==
|
||||
|
||||
"@material-ui/core@^4.7.2":
|
||||
version "4.7.2"
|
||||
resolved "https://registry.yarnpkg.com/@material-ui/core/-/core-4.7.2.tgz#b4396eded7c85214c43c17a18bad66e94742f92c"
|
||||
integrity sha512-ZbeO6xshTEHcMU2jMNjBY26u9p5ILQFj0y7HvOPZ9WT6POaN6qNKYX2PdXnnRDE1MpN8W2K1cxM4KKkiYWNkCQ==
|
||||
dependencies:
|
||||
"@babel/runtime" "^7.4.4"
|
||||
"@material-ui/styles" "^4.7.1"
|
||||
"@material-ui/system" "^4.7.1"
|
||||
"@material-ui/types" "^4.1.1"
|
||||
"@material-ui/utils" "^4.7.1"
|
||||
"@types/react-transition-group" "^4.2.0"
|
||||
clsx "^1.0.2"
|
||||
convert-css-length "^2.0.1"
|
||||
hoist-non-react-statics "^3.2.1"
|
||||
normalize-scroll-left "^0.2.0"
|
||||
popper.js "^1.14.1"
|
||||
prop-types "^15.7.2"
|
||||
react-is "^16.8.0"
|
||||
react-transition-group "^4.3.0"
|
||||
|
||||
"@material-ui/icons@^4.5.1":
|
||||
version "4.5.1"
|
||||
resolved "https://registry.yarnpkg.com/@material-ui/icons/-/icons-4.5.1.tgz#6963bad139e938702ece85ca43067688018f04f8"
|
||||
integrity sha512-YZ/BgJbXX4a0gOuKWb30mBaHaoXRqPanlePam83JQPZ/y4kl+3aW0Wv9tlR70hB5EGAkEJGW5m4ktJwMgxQAeA==
|
||||
dependencies:
|
||||
"@babel/runtime" "^7.4.4"
|
||||
|
||||
"@material-ui/styles@^4.7.1":
|
||||
version "4.7.1"
|
||||
resolved "https://registry.yarnpkg.com/@material-ui/styles/-/styles-4.7.1.tgz#48fa70f06441c35e301a9c4b6c825526a97b7a29"
|
||||
integrity sha512-BBfxVThaPrglqHmKtSdrZJxnbFGJqKdZ5ZvDarj3HsmkteGCXsP1ohrDi5TWoa5JEJFo9S6q6NywqsENZn9rZA==
|
||||
dependencies:
|
||||
"@babel/runtime" "^7.4.4"
|
||||
"@emotion/hash" "^0.7.1"
|
||||
"@material-ui/types" "^4.1.1"
|
||||
"@material-ui/utils" "^4.7.1"
|
||||
clsx "^1.0.2"
|
||||
csstype "^2.5.2"
|
||||
hoist-non-react-statics "^3.2.1"
|
||||
jss "^10.0.0"
|
||||
jss-plugin-camel-case "^10.0.0"
|
||||
jss-plugin-default-unit "^10.0.0"
|
||||
jss-plugin-global "^10.0.0"
|
||||
jss-plugin-nested "^10.0.0"
|
||||
jss-plugin-props-sort "^10.0.0"
|
||||
jss-plugin-rule-value-function "^10.0.0"
|
||||
jss-plugin-vendor-prefixer "^10.0.0"
|
||||
prop-types "^15.7.2"
|
||||
|
||||
"@material-ui/system@^4.7.1":
|
||||
version "4.7.1"
|
||||
resolved "https://registry.yarnpkg.com/@material-ui/system/-/system-4.7.1.tgz#d928dacc0eeae6bea569ff3ee079f409efb3517d"
|
||||
integrity sha512-zH02p+FOimXLSKOW/OT2laYkl9bB3dD1AvnZqsHYoseUaq0aVrpbl2BGjQi+vJ5lg8w73uYlt9zOWzb3+1UdMQ==
|
||||
dependencies:
|
||||
"@babel/runtime" "^7.4.4"
|
||||
"@material-ui/utils" "^4.7.1"
|
||||
prop-types "^15.7.2"
|
||||
|
||||
"@material-ui/types@^4.1.1":
|
||||
version "4.1.1"
|
||||
resolved "https://registry.yarnpkg.com/@material-ui/types/-/types-4.1.1.tgz#b65e002d926089970a3271213a3ad7a21b17f02b"
|
||||
integrity sha512-AN+GZNXytX9yxGi0JOfxHrRTbhFybjUJ05rnsBVjcB+16e466Z0Xe5IxawuOayVZgTBNDxmPKo5j4V6OnMtaSQ==
|
||||
dependencies:
|
||||
"@types/react" "*"
|
||||
|
||||
"@material-ui/utils@^4.7.1":
|
||||
version "4.7.1"
|
||||
resolved "https://registry.yarnpkg.com/@material-ui/utils/-/utils-4.7.1.tgz#dc16c7f0d2cd02fbcdd5cfe601fd6863ae3cc652"
|
||||
integrity sha512-+ux0SlLdlehvzCk2zdQ3KiS3/ylWvuo/JwAGhvb8dFVvwR21K28z0PU9OQW2PGogrMEdvX3miEI5tGxTwwWiwQ==
|
||||
dependencies:
|
||||
"@babel/runtime" "^7.4.4"
|
||||
prop-types "^15.7.2"
|
||||
react-is "^16.8.0"
|
||||
|
||||
"@types/color-name@^1.1.1":
|
||||
version "1.1.1"
|
||||
resolved "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0"
|
||||
integrity sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==
|
||||
|
||||
"@types/prop-types@*":
|
||||
version "15.7.3"
|
||||
resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.3.tgz#2ab0d5da2e5815f94b0b9d4b95d1e5f243ab2ca7"
|
||||
integrity sha512-KfRL3PuHmqQLOG+2tGpRO26Ctg+Cq1E01D2DMriKEATHgWLfeNDmq9e29Q9WIky0dQ3NPkd1mzYH8Lm936Z9qw==
|
||||
|
||||
"@types/react-transition-group@^4.2.0":
|
||||
version "4.2.3"
|
||||
resolved "https://registry.yarnpkg.com/@types/react-transition-group/-/react-transition-group-4.2.3.tgz#4924133f7268694058e415bf7aea2d4c21131470"
|
||||
integrity sha512-Hk8jiuT7iLOHrcjKP/ZVSyCNXK73wJAUz60xm0mVhiRujrdiI++j4duLiL282VGxwAgxetHQFfqA29LgEeSkFA==
|
||||
dependencies:
|
||||
"@types/react" "*"
|
||||
|
||||
"@types/react@*":
|
||||
version "16.9.16"
|
||||
resolved "https://registry.yarnpkg.com/@types/react/-/react-16.9.16.tgz#4f12515707148b1f53a8eaa4341dae5dfefb066d"
|
||||
integrity sha512-dQ3wlehuBbYlfvRXfF5G+5TbZF3xqgkikK7DWAsQXe2KnzV+kjD4W2ea+ThCrKASZn9h98bjjPzoTYzfRqyBkw==
|
||||
dependencies:
|
||||
"@types/prop-types" "*"
|
||||
csstype "^2.2.0"
|
||||
|
||||
acorn-node@^1.6.1:
|
||||
version "1.8.2"
|
||||
resolved "https://registry.yarnpkg.com/acorn-node/-/acorn-node-1.8.2.tgz#114c95d64539e53dede23de8b9d96df7c7ae2af8"
|
||||
|
@ -420,11 +321,6 @@ cliui@^5.0.0:
|
|||
strip-ansi "^5.2.0"
|
||||
wrap-ansi "^5.1.0"
|
||||
|
||||
clsx@^1.0.2:
|
||||
version "1.0.4"
|
||||
resolved "https://registry.yarnpkg.com/clsx/-/clsx-1.0.4.tgz#0c0171f6d5cb2fe83848463c15fcc26b4df8c2ec"
|
||||
integrity sha512-1mQ557MIZTrL/140j+JVdRM6e31/OA4vTYxXgqIIZlndyfjHpyawKZia1Im05Vp9BWmImkcNrNtFYQMyFcgJDg==
|
||||
|
||||
code-point-at@^1.0.0:
|
||||
version "1.1.0"
|
||||
resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77"
|
||||
|
@ -474,11 +370,6 @@ constants-browserify@^1.0.0:
|
|||
resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75"
|
||||
integrity sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=
|
||||
|
||||
convert-css-length@^2.0.1:
|
||||
version "2.0.1"
|
||||
resolved "https://registry.yarnpkg.com/convert-css-length/-/convert-css-length-2.0.1.tgz#90a76bde5bfd24d72881a5b45d02249b2c1d257c"
|
||||
integrity sha512-iGpbcvhLPRKUbBc0Quxx7w/bV14AC3ItuBEGMahA5WTYqB8lq9jH0kTXFheCBASsYnqeMFZhiTruNxr1N59Axg==
|
||||
|
||||
core-util-is@~1.0.0:
|
||||
version "1.0.2"
|
||||
resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
|
||||
|
@ -556,20 +447,12 @@ css-unit-converter@^1.1.1:
|
|||
resolved "https://registry.yarnpkg.com/css-unit-converter/-/css-unit-converter-1.1.1.tgz#d9b9281adcfd8ced935bdbaba83786897f64e996"
|
||||
integrity sha1-2bkoGtz9jO2TW9urqDeGiX9k6ZY=
|
||||
|
||||
css-vendor@^2.0.6:
|
||||
version "2.0.7"
|
||||
resolved "https://registry.yarnpkg.com/css-vendor/-/css-vendor-2.0.7.tgz#4e6d53d953c187981576d6a542acc9fb57174bda"
|
||||
integrity sha512-VS9Rjt79+p7M0WkPqcAza4Yq1ZHrsHrwf7hPL/bjQB+c1lwmAI+1FXxYTYt818D/50fFVflw0XKleiBN5RITkg==
|
||||
dependencies:
|
||||
"@babel/runtime" "^7.6.2"
|
||||
is-in-browser "^1.0.2"
|
||||
|
||||
cssesc@^3.0.0:
|
||||
version "3.0.0"
|
||||
resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee"
|
||||
integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==
|
||||
|
||||
csstype@^2.2.0, csstype@^2.5.2, csstype@^2.6.5, csstype@^2.6.7:
|
||||
csstype@^2.6.7:
|
||||
version "2.6.7"
|
||||
resolved "https://registry.yarnpkg.com/csstype/-/csstype-2.6.7.tgz#20b0024c20b6718f4eda3853a1f5a1cce7f5e4a5"
|
||||
integrity sha512-9Mcn9sFbGBAdmimWb2gLVDtFJzeKtDGIr76TUqmjZrw9LFXBMSU70lcs+C0/7fyCd6iBDqmksUcCOUIkisPHsQ==
|
||||
|
@ -811,23 +694,11 @@ hmac-drbg@^1.0.0:
|
|||
minimalistic-assert "^1.0.0"
|
||||
minimalistic-crypto-utils "^1.0.1"
|
||||
|
||||
hoist-non-react-statics@^3.2.1:
|
||||
version "3.3.1"
|
||||
resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.1.tgz#101685d3aff3b23ea213163f6e8e12f4f111e19f"
|
||||
integrity sha512-wbg3bpgA/ZqWrZuMOeJi8+SKMhr7X9TesL/rXMjTzh0p0JUBo3II8DHboYbuIXWRlttrUFxwcu/5kygrCw8fJw==
|
||||
dependencies:
|
||||
react-is "^16.7.0"
|
||||
|
||||
https-browserify@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73"
|
||||
integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=
|
||||
|
||||
hyphenate-style-name@^1.0.3:
|
||||
version "1.0.3"
|
||||
resolved "https://registry.yarnpkg.com/hyphenate-style-name/-/hyphenate-style-name-1.0.3.tgz#097bb7fa0b8f1a9cf0bd5c734cf95899981a9b48"
|
||||
integrity sha512-EcuixamT82oplpoJ2XU4pDtKGWQ7b00CD9f1ug9IaQ3p1bkHMiKCZ9ut9QDI6qsa6cpUuB+A/I+zLtdNK4n2DQ==
|
||||
|
||||
ieee754@^1.1.4:
|
||||
version "1.1.13"
|
||||
resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.13.tgz#ec168558e95aa181fd87d37f55c32bbcb6708b84"
|
||||
|
@ -891,11 +762,6 @@ is-fullwidth-code-point@^2.0.0:
|
|||
resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f"
|
||||
integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=
|
||||
|
||||
is-in-browser@^1.0.2, is-in-browser@^1.1.3:
|
||||
version "1.1.3"
|
||||
resolved "https://registry.yarnpkg.com/is-in-browser/-/is-in-browser-1.1.3.tgz#56ff4db683a078c6082eb95dad7dc62e1d04f835"
|
||||
integrity sha1-Vv9NtoOgeMYILrldrX3GLh0E+DU=
|
||||
|
||||
is-stream@^1.1.0:
|
||||
version "1.1.0"
|
||||
resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44"
|
||||
|
@ -941,75 +807,6 @@ jsonfile@^4.0.0:
|
|||
optionalDependencies:
|
||||
graceful-fs "^4.1.6"
|
||||
|
||||
jss-plugin-camel-case@^10.0.0:
|
||||
version "10.0.0"
|
||||
resolved "https://registry.yarnpkg.com/jss-plugin-camel-case/-/jss-plugin-camel-case-10.0.0.tgz#d601bae2e8e2041cc526add289dcd7062db0a248"
|
||||
integrity sha512-yALDL00+pPR4FJh+k07A8FeDvfoPPuXU48HLy63enAubcVd3DnS+2rgqPXglHDGixIDVkCSXecl/l5GAMjzIbA==
|
||||
dependencies:
|
||||
"@babel/runtime" "^7.3.1"
|
||||
hyphenate-style-name "^1.0.3"
|
||||
jss "10.0.0"
|
||||
|
||||
jss-plugin-default-unit@^10.0.0:
|
||||
version "10.0.0"
|
||||
resolved "https://registry.yarnpkg.com/jss-plugin-default-unit/-/jss-plugin-default-unit-10.0.0.tgz#601caf5f576fc0c66986fbe8a9aa37307a3a3ea3"
|
||||
integrity sha512-sURozIOdCtGg9ap18erQ+ijndAfEGtTaetxfU3H4qwC18Bi+fdvjlY/ahKbuu0ASs7R/+WKCP7UaRZOjUDMcdQ==
|
||||
dependencies:
|
||||
"@babel/runtime" "^7.3.1"
|
||||
jss "10.0.0"
|
||||
|
||||
jss-plugin-global@^10.0.0:
|
||||
version "10.0.0"
|
||||
resolved "https://registry.yarnpkg.com/jss-plugin-global/-/jss-plugin-global-10.0.0.tgz#0fed1b6461e0d57d6e394f877529009bc1cb3cb6"
|
||||
integrity sha512-80ofWKSQUo62bxLtRoTNe0kFPtHgUbAJeOeR36WEGgWIBEsXLyXOnD5KNnjPqG4heuEkz9eSLccjYST50JnI7Q==
|
||||
dependencies:
|
||||
"@babel/runtime" "^7.3.1"
|
||||
jss "10.0.0"
|
||||
|
||||
jss-plugin-nested@^10.0.0:
|
||||
version "10.0.0"
|
||||
resolved "https://registry.yarnpkg.com/jss-plugin-nested/-/jss-plugin-nested-10.0.0.tgz#d37ecc013c3b0d0e4acc2b48f6b62da6ae53948b"
|
||||
integrity sha512-waxxwl/po1hN3azTyixKnr8ReEqUv5WK7WsO+5AWB0bFndML5Yqnt8ARZ90HEg8/P6WlqE/AB2413TkCRZE8bA==
|
||||
dependencies:
|
||||
"@babel/runtime" "^7.3.1"
|
||||
jss "10.0.0"
|
||||
tiny-warning "^1.0.2"
|
||||
|
||||
jss-plugin-props-sort@^10.0.0:
|
||||
version "10.0.0"
|
||||
resolved "https://registry.yarnpkg.com/jss-plugin-props-sort/-/jss-plugin-props-sort-10.0.0.tgz#38a13407384c2a4a7c026659488350669b953b18"
|
||||
integrity sha512-41mf22CImjwNdtOG3r+cdC8+RhwNm616sjHx5YlqTwtSJLyLFinbQC/a4PIFk8xqf1qpFH1kEAIw+yx9HaqZ3g==
|
||||
dependencies:
|
||||
"@babel/runtime" "^7.3.1"
|
||||
jss "10.0.0"
|
||||
|
||||
jss-plugin-rule-value-function@^10.0.0:
|
||||
version "10.0.0"
|
||||
resolved "https://registry.yarnpkg.com/jss-plugin-rule-value-function/-/jss-plugin-rule-value-function-10.0.0.tgz#3ec1b781b7c86080136dbef6c36e91f20244b72e"
|
||||
integrity sha512-Jw+BZ8JIw1f12V0SERqGlBT1JEPWax3vuZpMym54NAXpPb7R1LYHiCTIlaJUyqvIfEy3kiHMtgI+r2whGgRIxQ==
|
||||
dependencies:
|
||||
"@babel/runtime" "^7.3.1"
|
||||
jss "10.0.0"
|
||||
|
||||
jss-plugin-vendor-prefixer@^10.0.0:
|
||||
version "10.0.0"
|
||||
resolved "https://registry.yarnpkg.com/jss-plugin-vendor-prefixer/-/jss-plugin-vendor-prefixer-10.0.0.tgz#400280535b0f483a9c78105afe4eee61b70018eb"
|
||||
integrity sha512-qslqvL0MUbWuzXJWdUxpj6mdNUX8jr4FFTo3aZnAT65nmzWL7g8oTr9ZxmTXXgdp7ANhS1QWE7036/Q2isFBpw==
|
||||
dependencies:
|
||||
"@babel/runtime" "^7.3.1"
|
||||
css-vendor "^2.0.6"
|
||||
jss "10.0.0"
|
||||
|
||||
jss@10.0.0, jss@^10.0.0:
|
||||
version "10.0.0"
|
||||
resolved "https://registry.yarnpkg.com/jss/-/jss-10.0.0.tgz#998d5026c02accae15708de83bd6ba57bac977d2"
|
||||
integrity sha512-TPpDFsiBjuERiL+dFDq8QCdiF9oDasPcNqCKLGCo/qED3fNYOQ8PX2lZhknyTiAt3tZrfOFbb0lbQ9lTjPZxsQ==
|
||||
dependencies:
|
||||
"@babel/runtime" "^7.3.1"
|
||||
csstype "^2.6.5"
|
||||
is-in-browser "^1.1.3"
|
||||
tiny-warning "^1.0.2"
|
||||
|
||||
lcid@^2.0.0:
|
||||
version "2.0.0"
|
||||
resolved "https://registry.yarnpkg.com/lcid/-/lcid-2.0.0.tgz#6ef5d2df60e52f82eb228a4c373e8d1f397253cf"
|
||||
|
@ -1126,10 +923,10 @@ mkdirp@^0.5.1:
|
|||
dependencies:
|
||||
minimist "0.0.8"
|
||||
|
||||
mldoc_org@^0.2.0:
|
||||
version "0.2.0"
|
||||
resolved "https://registry.yarnpkg.com/mldoc_org/-/mldoc_org-0.2.0.tgz#b9643333939dbddf6b38e76ec130c4b2cc72d6ab"
|
||||
integrity sha512-s5QuzNWRX8XuAV6ymrBB43qwqvxjsCfUZX6/3AuCJ/dka3+jPxcQVjjOfueTFdzbQdPOBMxAhutV+AX9oQnv1A==
|
||||
mldoc_org@^0.2.3:
|
||||
version "0.2.3"
|
||||
resolved "https://registry.yarnpkg.com/mldoc_org/-/mldoc_org-0.2.3.tgz#585a866925a0952bb9175cd67604b137c3f6969b"
|
||||
integrity sha512-v+4Un+DxuLm9NurW7KJWbgTIjeG4Q6AWmOQ4raWa2WozlefDiA9/xcs+RtgQiQ45Jf7Exj+6sC9Eyf9s0GrKQg==
|
||||
dependencies:
|
||||
yargs "^12.0.2"
|
||||
|
||||
|
@ -1191,11 +988,6 @@ normalize-range@^0.1.2:
|
|||
resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942"
|
||||
integrity sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=
|
||||
|
||||
normalize-scroll-left@^0.2.0:
|
||||
version "0.2.0"
|
||||
resolved "https://registry.yarnpkg.com/normalize-scroll-left/-/normalize-scroll-left-0.2.0.tgz#9445d74275f303cc661e113329aefa492f58114c"
|
||||
integrity sha512-t5oCENZJl8TGusJKoCJm7+asaSsPuNmK6+iEjrZ5TyBj2f02brCRsd4c83hwtu+e5d4LCSBZ0uoDlMjBo+A8yA==
|
||||
|
||||
normalize.css@^8.0.1:
|
||||
version "8.0.1"
|
||||
resolved "https://registry.yarnpkg.com/normalize.css/-/normalize.css-8.0.1.tgz#9b98a208738b9cc2634caacbc42d131c97487bf3"
|
||||
|
@ -1336,11 +1128,6 @@ pify@^4.0.1:
|
|||
resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231"
|
||||
integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==
|
||||
|
||||
popper.js@^1.14.1:
|
||||
version "1.16.0"
|
||||
resolved "https://registry.yarnpkg.com/popper.js/-/popper.js-1.16.0.tgz#2e1816bcbbaa518ea6c2e15a466f4cb9c6e2fbb3"
|
||||
integrity sha512-+G+EkOPoE5S/zChTpmBSSDYmhXJ5PsW8eMhH8cP/CQHMFPBG/kC9Y5IIw6qNYgdJ+/COf0ddY2li28iHaZRSjw==
|
||||
|
||||
postcss-functions@^3.0.0:
|
||||
version "3.0.0"
|
||||
resolved "https://registry.yarnpkg.com/postcss-functions/-/postcss-functions-3.0.0.tgz#0e94d01444700a481de20de4d55fb2640564250e"
|
||||
|
@ -1424,7 +1211,7 @@ process@^0.11.10:
|
|||
resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182"
|
||||
integrity sha1-czIwDoQBYb2j5podHZGn1LwW8YI=
|
||||
|
||||
prop-types@^15.6.2, prop-types@^15.7.2:
|
||||
prop-types@^15.6.2:
|
||||
version "15.7.2"
|
||||
resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5"
|
||||
integrity sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==
|
||||
|
@ -1508,7 +1295,7 @@ react-dom@^16.12.0:
|
|||
prop-types "^15.6.2"
|
||||
scheduler "^0.18.0"
|
||||
|
||||
react-is@^16.7.0, react-is@^16.8.0, react-is@^16.8.1:
|
||||
react-is@^16.8.1:
|
||||
version "16.12.0"
|
||||
resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.12.0.tgz#2cc0fe0fba742d97fd527c42a13bec4eeb06241c"
|
||||
integrity sha512-rPCkf/mWBtKc97aLL9/txD8DZdemK0vkA3JMLShjlJB3Pj3s+lpf1KaBzMfQrAmhMQB0n1cU/SUGgKKBCe837Q==
|
||||
|
@ -1856,11 +1643,6 @@ timers-browserify@^2.0.4:
|
|||
dependencies:
|
||||
setimmediate "^1.0.4"
|
||||
|
||||
tiny-warning@^1.0.2:
|
||||
version "1.0.3"
|
||||
resolved "https://registry.yarnpkg.com/tiny-warning/-/tiny-warning-1.0.3.tgz#94a30db453df4c643d0fd566060d60a875d84754"
|
||||
integrity sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==
|
||||
|
||||
to-arraybuffer@^1.0.0:
|
||||
version "1.0.1"
|
||||
resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43"
|
||||
|
|
Loading…
Reference in New Issue