;ELC   
;;; Compiled
;;; in Emacs version 30.2
;;; with all optimizations.


#@168 The path to file where the Org-roam database is stored.

It is the user's responsibility to set this correctly, especially
when used with multiple Org-roam instances.#@2 #@631 The value to temporarily set the `gc-cons-threshold' threshold to.
During `org-roam-db-sync', Emacs can pause multiple times to
perform garbage collection because of the large number of
temporary structures generated (e.g. parsed ASTs).

`gc-cons-threshold' is temporarily set to
`org-roam-db-gc-threshold' during this operation, and increasing
`gc-cons-threshold' will help reduce the number of GC operations,
at the cost of memory usage. Tweaking this value may lead to
better overall performance.

For example, to reduce the number of GCs to the minimum, on
machines with large memory one may set it to
`most-positive-fixnum'.#@318 A custom function to check if the point contains a valid node.
This function is called each time a node (both file and headline)
is about to be saved into the Org-roam database.

If the function returns nil, Org-roam will skip the node. This
function is useful for excluding certain nodes from the Org-roam
database.#@130 If t, update the Org-roam database upon saving the file.
Disable this if your files are large and updating the database is
slow.#@280 The list of Org element types to include for parsing by Org-roam.

By default, when parsing Org's AST, links within keywords and
property drawers are not parsed as links. Sometimes however, it
is desirable to parse and cache these links (e.g. hiding links in
a property drawer).#@274 Keys to ignore when mapping over links.

The car of the association list is the Org element type (e.g.
keyword). The cdr is a list of case-insensitive strings to
exclude from being treated as links.

For example, we use this to prevent self-referential links in
ROAM_REFS.
(byte-code "\300\301!\210\300\302!\210\300\303!\210\304\305\306\307\310DD\311\312\313\314\301&\210\304\315\306\307\316DD\317\312\320\314\301&\210\304\321\306\307\322DD\323\312\307\314\301&\210\304\324\306\307\325DD\326\312\327\314\301&\210\304\330\306\307\331DD\332\333\334\314\301\312\335&	\210\304\336\306\307\337DD\340\333\341\314\301\312\342&	\207" [require org-roam url-parse ol custom-declare-variable org-roam-db-location funcall function #[0 "\300\301!\207" [locate-user-emacs-file "org-roam.db"] 2 (#$ . 255)] (#$ . 84) :type string :group org-roam-db-gc-threshold #[0 "\207" [gc-cons-threshold] 1 (#$ . 255)] (#$ . 262) int org-roam-db-node-include-function #[0 "\300\207" [#[0 "\300\207" [t] 1]] 1 (#$ . 255)] (#$ . 898) org-roam-db-update-on-save #[0 "\300\207" [t] 1 (#$ . 255)] (#$ . 1221) boolean org-roam-db-extra-links-elements #[0 "\300\207" [(node-property keyword)] 1 (#$ . 255)] (#$ . 1356) :package-version (org-roam . "2.2.0") (set (const :tag "keywords" keyword) (const :tag "property drawers" node-property)) org-roam-db-extra-links-exclude-keys #[0 "\300\207" [((node-property "ROAM_REFS") (keyword "transclude"))] 1 (#$ . 255)] (#$ . 1641) (org-roam . "2.2.0") (alist)] 10)
(defconst org-roam-db-version 20)#@43 Database connection to Org-roam database.
(defvar org-roam-db--connection (make-hash-table :test 'equal) (#$ . 3159))#@41 Return the database connection, if any.
(defalias 'org-roam-db--get-connection #[0 "\302\303\304!!	\"\207" [org-roam-directory org-roam-db--connection gethash expand-file-name file-name-as-directory] 4 (#$ . 3282)])#@154 Entrypoint to the Org-roam sqlite database.
Initializes and stores the database, and the database connection.
Performs a database upgrade when required.
(defalias 'org-roam-db #[0 "\304 \203\f \305\304 !\204Z \306!?\307\310!\311\"\210\312!\313\314\315	!!\n#\210\203, \316!\210\317\320\"@@\321\"\211V\203I \322!\210\323\324\325\"\266\202Z \211W\203X \322!\210\326\327\330\"\210\266\304 \207" [org-roam-db-location org-roam-directory org-roam-db--connection org-roam-db-version org-roam-db--get-connection emacsql-live-p file-exists-p make-directory file-name-directory t emacsql-sqlite-open puthash expand-file-name file-name-as-directory org-roam-db--init emacsql "PRAGMA user_version" org-roam-db--upgrade-maybe emacsql-close user-error "The Org-roam database was created with a newer Org-roam version.  %s" "You need to update the Org-roam package" error "BUG: The Org-roam database scheme changed %s" "and there is no upgrade path"] 7 (#$ . 3505)])#@134 Run SQL query on Org-roam database with ARGS.
SQL can be either the emacsql vector representation, or a string.

(fn SQL &rest ARGS)
(define-error 'emacsql-constraint "SQL constraint violation")
(defalias 'org-roam-db-query #[385 "\300\301\302 $\207" [apply emacsql org-roam-db] 7 (#$ . 4478)])#@216 Run SQL query on Org-roam database with ARGS.
SQL can be either the emacsql vector representation, or a string.
The query is expected to be able to fail, in this situation, run HANDLER.

(fn HANDLER SQL &rest ARGS)
(defalias 'org-roam-db-query! #[642 "\3001\n \301\"0\207!\207" [(emacsql-constraint) org-roam-db-query] 6 (#$ . 4781)])
(defconst org-roam-db--table-schemata '((files [(file :unique :primary-key) title (hash :not-null) (atime :not-null) (mtime :not-null)]) (nodes ([(id :not-null :primary-key) (file :not-null) (level :not-null) (pos :not-null) todo priority (scheduled text) (deadline text) title properties olp] (:foreign-key [file] :references files [file] :on-delete :cascade))) (aliases ([(node-id :not-null) alias] (:foreign-key [node-id] :references nodes [id] :on-delete :cascade))) (citations ([(node-id :not-null) (cite-key :not-null) (pos :not-null) properties] (:foreign-key [node-id] :references nodes [id] :on-delete :cascade))) (refs ([(node-id :not-null) (ref :not-null) (type :not-null)] (:foreign-key [node-id] :references nodes [id] :on-delete :cascade))) (tags ([(node-id :not-null) tag] (:foreign-key [node-id] :references nodes [id] :on-delete :cascade))) (links ([(pos :not-null) (source :not-null) (dest :not-null) (type :not-null) (properties :not-null)] (:foreign-key [source] :references nodes [id] :on-delete :cascade)))))
(defconst org-roam-db--table-indices '((alias-node-id aliases [node-id]) (refs-node-id refs [node-id]) (tags-node-id tags [node-id])))#@75 Initialize database DB with the correct schema and user version.

(fn DB)
(defalias 'org-roam-db--init #[257 "\304CT\304\305\306#\216\242\204\221 \3071\204 \310U\203\" \311\312\"\210	\211\203? \211@\211\242\243\211\242\243\311\n\313$\266A\202# \210\n\211\203d \211@\211\242\243\211\242\243\211\242\243\311\f\314%\266A\202A \210\311\315\316\"\"\211\262\310U\203z \311\317\"\210\320\240\2620\210\202 \210\311\321\"\210\322\323!\210\202 *\207" [emacsql--transaction-level org-roam-db--table-schemata org-roam-db--table-indices org-roam-db-version nil make-closure #[0 "\n\303U\205 \300\242?\205 \304\301\305\"\207" [V0 V1 emacsql--transaction-level 1 emacsql [:rollback]] 3] (emacsql-locked) 1 emacsql [:begin] [:create-table $i1 $S2] [:create-index $i1 :on $i2 $S3] format "PRAGMA user_version = %s" [:commit] t [:rollback] sleep-for 0.05] 18 (#$ . 6291)])#@74 Upgrades the database schema for DB, if VERSION is old.

(fn DB VERSION)
(defalias 'org-roam-db--upgrade-maybe #[514 "\302CT\302\303\304#\216\242\204Z \3051M \306U\203\" \307\310\"\210	W\2054 \311\312\313	#!\210\314\315!\211\262\306U\203C \307\316\"\210\315\240\2620\210\202 \210\307\317\"\210\320\321!\210\202 *\266\207" [emacsql--transaction-level org-roam-db-version nil make-closure #[0 "\n\303U\205 \300\242?\205 \304\301\305\"\207" [V0 V1 emacsql--transaction-level 1 emacsql [:rollback]] 3] (emacsql-locked) 1 emacsql [:begin] org-roam-message format "Upgrading the Org-roam database from version %d to version %d" org-roam-db-sync t [:commit] [:rollback] sleep-for 0.05] 10 (#$ . 7190)])#@167 Closes the database connection for database DB.
If DB is nil, closes the database connection for the database in
the current `org-roam-directory'.

(fn &optional DB)
(defalias 'org-roam-db--close #[256 "\211\204 \300 \262\211\205 \301!\205 \302!\207" [org-roam-db--get-connection emacsql-live-p emacsql-close] 3 (#$ . 7916)])#@51 Closes all database connections made by Org-roam.
(defalias 'org-roam-db--close-all #[0 "\301C\302\303\304\"\"\210\262\242\211\205 \211@\305!\266A\202 \207" [org-roam-db--connection nil maphash make-closure #[514 "\300\300\242B\240\207" [V0] 5 "\n\n(fn _ V)"] org-roam-db--close] 6 (#$ . 8253)])#@43 Clears all entries in the Org-roam cache.
(defalias 'org-roam-db-clear-all #[0 "\302!\205 \303\304	\"\211\205 \211@\305\306\307\310#!\266A\202\n \262\207" [org-roam-db-location org-roam-db--table-schemata file-exists-p mapcar car org-roam-db-query vector :delete :from] 7 (#$ . 8563) nil])#@158 Remove any related links to the FILE.
This is equivalent to removing the node from the graph.
If FILE is nil, clear the current buffer.

(fn &optional FILE)
(defalias 'org-roam-db-clear-file #[256 "\211\206 \300\301 !\262\302\303\"\207" [buffer-file-name buffer-base-buffer org-roam-db-query [:delete :from files :where (= file $s1)]] 4 (#$ . 8865)])#@116 In current Org buffer, get the title.
If there is no title, return the file name relative to
`org-roam-directory'.
(defalias 'org-roam-db--file-title #[0 "\301\302\303\304\305!\"A\306\307\310#\266\202\206 \311\312\313\314 !\"!!\207" [org-roam-directory org-link-display-format assoc "TITLE" org-collect-keywords ("title") " " mapconcat identity file-name-sans-extension file-relative-name buffer-file-name buffer-base-buffer] 7 (#$ . 9225)])#@206 Update the files table for the current buffer.
If UPDATE-P is non-nil, first remove the file in the database.
If HASH is non-nil, use that as the file's hash without recalculating it.

(fn &optional HASH)
(defalias 'org-roam-db-insert-file #[256 "\300 \301 \302!\211\3038\262\3048\262\206 \305!\306\307\310%C\"\207" [buffer-file-name org-roam-db--file-title file-attributes 4 5 org-roam-db--file-hash org-roam-db-query [:insert :into files :values $v1] vector] 15 (#$ . 9677)])#@55 Return the scheduled time at point in ISO8601 format.
(defalias 'org-roam-db-get-scheduled-time #[0 "\300`!\211\205 \301\302\"\207" [org-get-scheduled-time format-time-string "%FT%T"] 4 (#$ . 10178)])#@54 Return the deadline time at point in ISO8601 format.
(defalias 'org-roam-db-get-deadline-time #[0 "\300`!\211\205 \301\302\"\207" [org-get-deadline-time format-time-string "%FT%T"] 4 (#$ . 10386)])#@69 Return t if headline at point is an Org-roam node, else return nil.
(defalias 'org-roam-db-node-p #[0 "\301 \205 \302`\303\"?\205  \207" [org-roam-db-node-include-function org-id-get org-entry-get "ROAM_EXCLUDE"] 3 (#$ . 10591)])#@57 Run FNS over all nodes in the current buffer.

(fn FNS)
(defalias 'org-roam-db-map-nodes #[257 "\212\214~\210\300\301\302\"ed#*\207" [org-map-region make-closure #[0 "\301 \205 \300\211\205 \211@\211 \266A\202 \262\207" [V0 org-roam-db-node-p] 3]] 5 (#$ . 10829)])#@57 Run FNS over all links in the current buffer.

(fn FNS)
(defalias 'org-roam-db-map-links #[257 "\303\212\212\214~\210\211\206 `b\210\304\305\306#\205k \307u\210\310\224\311 \312!\305\313=\203+ \210\202Q 	\235\203Q \314\315\316\305\211$\317\n\"A\"\204Q \212b\210\320 \321\322\"\216\323 *\266\202\211\203f \211\203e \211@\211!\266A\202V \210\266\202 +\207" [org-link-any-re org-roam-db-extra-links-elements org-roam-db-extra-links-exclude-keys 1 re-search-forward nil :no-error -1 0 org-element-context org-element-type link member-ignore-case org-element--property :key assoc match-data make-closure #[0 "\301\300\302\"\207" [V0 set-match-data t] 3] org-element-link-parser] 12 (#$ . 11105)])#@105 Run FNS over all citations in the current buffer.
INFO is the org-element parsed buffer.

(fn INFO FNS)#@13 

(fn CITE)
(defalias 'org-roam-db-map-citations #[514 "\300\301\302\303\"#\207" [org-element-map citation-reference make-closure #[257 "\300\211\205 \211@\211!\266A\202 \207" [V0] 5 (#$ . 11927)]] 8 (#$ . 11818)])#@53 Insert the file-level node into the Org-roam cache.#@12 

(fn ERR)#@12 

(fn TAG)
(defalias 'org-roam-db-insert-file-node #[0 "\301\212\212\214~\210\211\206 `b\210\302 \303U\205b \304 \205b \305 \211\205` \306\307 !\310 `\311 \312\313\314\n$\315\316		\303	\317\211\211\211\317&#\210\203Y \320\321\322\313\323\n\"\"\"\210\324 \210\325 \266\205\262+\207" [org-file-tags 1 org-outline-level 0 org-roam-db-node-p org-id-get buffer-file-name buffer-base-buffer org-roam-db--file-title org-entry-properties org-roam-db-query! make-closure #[257 "\303\304\305\306\307!\300\302\301&\207" [V0 V1 V2 lwarn org-roam :warning "%s for %s (%s) in %s" error-message-string] 9 (#$ . 12210)] [:insert :into nodes :values $v1] vector nil org-roam-db-query [:insert :into tags :values $v1] mapcar #[257 "\301\300\302!\"\207" [V0 vector substring-no-properties] 5 (#$ . 12226)] org-roam-db-insert-aliases org-roam-db-insert-refs] 22 (#$ . 12153)])#@65 Insert node data for headline at point into the Org-roam cache.
(defalias 'org-roam-db-insert-node-data #[0 "\3002k \301 \211\205h \302\303 !\304 `\3058\3068A@\307 \310 \3118\2069 \312\313\314\315\316 `\317 ZT&\210\320\300\321\"\322 \323\321\324\"\325!\326\327\330$\331\332\f\f&#\266\214\2620\207" [--cl-block-org-roam-db-insert-node-data-- org-id-get buffer-file-name buffer-base-buffer org-heading-components 2 3 org-roam-db-get-scheduled-time org-roam-db-get-deadline-time 4 lwarn org-roam :warning "Node in %s:%s:%s has no title, skipping..." line-number-at-pos line-beginning-position throw nil org-entry-properties org-get-outline-path use-cache org-link-display-format org-roam-db-query! make-closure #[257 "\303\304\305\306\307!\300\302\301&\207" [V0 V1 V2 lwarn org-roam :warning "%s for %s (%s) in %s" error-message-string] 9 (#$ . 12210)] [:insert :into nodes :values $v1] vector] 28 (#$ . 13110)])#@55 Insert aliases for node at point into Org-roam cache.#@14 

(fn ALIAS)
(defalias 'org-roam-db-insert-aliases #[0 "\300 \211\205\n \301`\302\"\211\205 \303!\211\205  \304\305\306\307\310\"\"\"\207" [org-id-get org-entry-get "ROAM_ALIASES" split-string-and-unquote org-roam-db-query [:insert :into aliases :values $v1] mapcar make-closure #[257 "\301\300\"\207" [V0 vector] 4 (#$ . 14122)]] 9 (#$ . 14063)])#@52 Insert tags for node at point into Org-roam cache.
(defalias 'org-roam-db-insert-tags #[0 "\300 \211\205 \301 \211\205 \302\303\304\305\306\"\"\"\207" [org-id-get org-get-tags org-roam-db-query [:insert :into tags :values $v1] mapcar make-closure #[257 "\301\300\302!\"\207" [V0 vector substring-no-properties] 5 (#$ . 12226)]] 8 (#$ . 14481)])#@52 Insert refs for node at point into Org-roam cache.
(defalias 'org-roam-db-insert-refs #[0 "\303 \211\205\n \304`\305\"\211\205 \306!\211\205#\307C\211\203\211@\310 \311\312\"\216\313\314\"\203> \315\316\307O\317#\242B\240\210\202\313\320\"\203n \3211^ \322!\323\324\311\325	##\2620\210\202\210\326\327\330\331\332 `&\210\202\333\334\335\"\"\203\334\336\"\262\337\340\341\"\206\212 \340\342\"!\307\211\343!	>\204\234 \344\345\346D\"\210\316H\262\343!	>\204\260 \344\345\346D\"\210\316\307I\210\347\350!!\262\351\302!\203\361 \352\n\"\204\317 \n\235\203\361 \353!\211\203\354 \211@\315#\n\242B\240\266A\202\322 \266\202\315#\242B\240\266\202\326\354\330\355\332 `&\210)\266A\202 \210\211\242\205!\356\357\242\"\262\207" [org-link-any-re cl-struct-url-tags org-ref-cite-types org-id-get org-entry-get "ROAM_REFS" split-string-and-unquote nil match-data make-closure #[0 "\301\300\302\"\207" [V0 set-match-data t] 3] string-prefix-p "@" vector 1 "cite" "[cite:" (error) org-cite-parse-objects org-element-map citation-reference #[257 "\302\303\304\211$\300\305\301\306#\300\242B\240\207" [V0 V1 org-element--property :key nil vector "cite"] 7 (#$ . 11927)] lwarn (org-roam) :warning "%s:%s	Invalid cite %s, skipping..." buffer-file-name string-match org-link-encode (32) (32) url-generic-parse-url match-string 2 0 type-of signal wrong-type-argument url org-link-decode url-recreate-url boundp assoc org-roam-org-ref-path-to-keys (org-roam) "%s:%s	Invalid ref %s, skipping..." org-roam-db-query [:insert :into refs :values $v1]] 17 (#$ . 14837)])#@80 Insert link data for LINK at current point into the Org-roam cache.

(fn LINK)#@10 

(fn K)
(defalias 'org-roam-db-insert-link #[257 "\212\301!\211\302\267\202 \210\303\202. \210\303\202. A@@\304=\203& \210\211A@A@\202. \305A@\304\"\262\211\203B \211\306H\211\307=?\205= \211\266\202\202c \301!\211\310\267\202[ \266\303\202c \311\306\312#\266\202\202c \305A@\312\"\266\202b\210\313\314\303\211$\313\315\303\211$\316\317\"\205| \320\321\"\211\204\204 \202\211 \306\211\224O\322 \323\3241\230 \325\326\327\"0\202\232 \210\303D\203\250 \330\331#\202\251 \211\205\346 \205\346 \332\300!\203\330 \333\"\204\306 \235\203\330 \334\335\336\337\340#\341!\"\"\202\346 \334\342\343`\f%\")\207" [org-ref-cite-types org-element-type #s(hash-table test eq purecopy t data (nil 10 plain-text 15)) nil :standard-properties plist-get 0 org-element-ast--nil #s(hash-table test eq purecopy t data (nil 75 plain-text 81)) get-text-property :begin org-element--property :type :path string-match "::\\(.*\\)\\'" match-string 1 org-roam-id-at-point :outline (error) org-get-outline-path with-self use-cache plist-put :search-option boundp assoc org-roam-db-query [:insert :into citations :values $v1] mapcar make-closure #[257 "\302\301`\300$\207" [V0 V1 vector] 6 (#$ . 16551)] org-roam-org-ref-path-to-keys [:insert :into links :values $v1] vector] 16 (#$ . 16467)])#@83 Insert data for CITATION at current point into the Org-roam cache.

(fn CITATION)
(defalias 'org-roam-db-insert-citation #[257 "\212\300!\211\301\267\202 \210\302\202. \210\302\202. A@@\303=\203& \210\211A@A@\202. \304A@\303\"\262\211\203B \211\305H\211\306=?\205= \211\266\202\202c \300!\211\307\267\202[ \266\302\202c \310\305\311#\266\202\202c \304A@\311\"\266\202b\210\312\313\302\211$\314 \315\3161z \317\320\321\"0\202| \210\302D\205\220 \205\220 \322\323\324`$\")\207" [org-element-type #s(hash-table test eq purecopy t data (nil 10 plain-text 15)) nil :standard-properties plist-get 0 org-element-ast--nil #s(hash-table test eq purecopy t data (nil 75 plain-text 81)) get-text-property :begin org-element--property :key org-roam-id-at-point :outline (error) org-get-outline-path with-self use-cache org-roam-db-query [:insert :into citations :values $v1] vector] 11 (#$ . 17860)])#@63 Return a hash-table of file to the hash of its file contents.
(defalias 'org-roam-db--get-current-files #[0 "\300\301!\302\303\304\"\211\203 \211@\305@A@#\266A\202 \210\207" [org-roam-db-query [:select [file hash] :from files] make-hash-table :test equal puthash] 8 (#$ . 18771)])#@48 Compute the hash of FILE-PATH.

(fn FILE-PATH)
(defalias 'org-roam-db--file-hash #[257 "\300\301\302\"r\211q\210\303\304\"\216\305\306!\210\307!\210\310\311p\"*\207" [generate-new-buffer " *temp*" t make-closure #[0 "\301\300!\205	 \302\300!\207" [V0 buffer-name kill-buffer] 2] set-buffer-multibyte nil insert-file-contents-literally secure-hash sha1] 5 (#$ . 19064)])#@349 Update Org-roam cache for FILE-PATH.

If the file does not exist anymore, remove it from the cache.

If the file exists, update the cache with information.

If NO-REQUIRE, don't require optional libraries. Set NO-REQUIRE
when the libraries are already required at some toplevel, e.g.
in `org-roam-db-sync'.

(fn &optional FILE-PATH DEPRECATED-ARG)
(defalias 'org-roam-db-update-file #[512 "\206 \306\307 !\262\310!\311\312\"@@\313\230?\205\371 \314\315\313\316#\210\313\211\313\204. p\206; \317!\206; \210\316\320!\313rq\210\321\322!\204W \323\302!\210\316\211\313\322 \210\324 +\210\325 \313CT\313\326\327#\216\242\204\331 \3301\314 \331U\203{ \332\333\"\210\212\214~\210\334\335!\210\336 \210\337\n!\210\340 \210\3132\341\342\343\344\345F!\210\3132\346 \262\347\350C!\210\314\351\313\316#\205\263 \352\353C\"*\211\262\331U\203\302 \332\354\"\210\316\240\2620\210\202g \210\332\355\"\210\356\357!\210\202g *\266\204\204\343 \360 \210)\203\366 \317!\203\366 \361\317	!!\210*\266\202\207" [auto-mode-alist find-file-hook delay-mode-hooks org-agenda-files org-inhibit-startup emacsql--transaction-level buffer-file-name buffer-base-buffer org-roam-db--file-hash org-roam-db-query [:select hash :from files :where (= file $s1)] nil require org-ref t find-buffer-visiting find-file-noselect derived-mode-p org-mode make-local-variable hack-local-variables org-roam-db make-closure #[0 "\n\303U\205 \300\242?\205 \304\301\305\"\207" [V0 V1 emacsql--transaction-level 1 emacsql [:rollback]] 3] (emacsql-locked) 1 emacsql [:begin] org-set-regexps-and-options tags-only org-roam-db-clear-file org-roam-db-insert-file org-roam-db-insert-file-node org-roam-db-map-nodes org-roam-db-insert-node-data org-roam-db-insert-aliases org-roam-db-insert-tags org-roam-db-insert-refs org-element-parse-buffer org-roam-db-map-links org-roam-db-insert-link oc org-roam-db-map-citations org-roam-db-insert-citation [:commit] [:rollback] sleep-for 0.05 save-buffer kill-buffer org-outline-path-cache] 18 (#$ . 19442)])#@140 Synchronize the cache state with the current Org files on-disk.
If FORCE, force a rebuild of the cache from scratch.

(fn &optional FORCE)
(defalias 'org-roam-db-sync #[256 "\305 \210\211\203 \306!\210\307 \210\310\311\312\313#\210\310\314\312\313#\210	\312\315 \316 \312\211\203G \211@\317!\320\"\230\204< B\262\210\321\"\266A\202$ \210\307 \312C\fT\312\322\323#\216\242\204-\3241 \f\325U\203l \326\327\"\210\330\331\312C\332\322\333\"\"\210\262\242\334\330\331G#\262\211\211\203\256 \211@\335!\210T\211\262\312\247\203\243 @Y\205\250 \336#\266A\202\206 \210\337!\266\340\331\334\340\331	G#\262\211\203\211@\3411\323 \342!0\210\202\343 \335!\210\343\344\345\346\347!%\266T\211\262\312\247\203\366 @Y\205\373 \336#\266A\202\301 \210\337!\266\312\211\262\f\325U\203\326\350\"\210\313\240\2620\210\202X \210\326\351\"\210\352\353!\210\202X ,\207" [org-roam-db-location org-roam-db-gc-threshold gc-cons-threshold org-agenda-files emacsql--transaction-level org-roam-db--close delete-file org-roam-db require org-ref nil t oc org-roam-list-files org-roam-db--get-current-files org-roam-db--file-hash gethash remhash make-closure #[0 "\n\303U\205 \300\242?\205 \304\301\305\"\207" [V0 V1 emacsql--transaction-level 1 emacsql [:rollback]] 3] (emacsql-locked) 1 emacsql [:begin] "Clearing removed files..." 0 maphash #[514 "\300\300\242B\240\207" [V0] 5 "\n\n(fn K _)"] make-progress-reporter org-roam-db-clear-file progress-reporter-do-update progress-reporter-done "Processing modified files..." (error) org-roam-db-update-file lwarn org-roam :error "Failed to process %s with error %s, skipping..." error-message-string [:commit] [:rollback] sleep-for 0.05] 20 (#$ . 21489) "P"])#@296 Non-nil if Org-Roam-Db-Autosync mode is enabled.
See the `org-roam-db-autosync-mode' command
for a description of this minor mode.
Setting this variable directly does not take effect;
either customize it (see the info node `Easy Customization')
or call the function `org-roam-db-autosync-mode'.#@999 Global minor mode to keep your Org-roam session automatically synchronized.

Through the session this will continue to setup your
buffers (that are Org-roam file visiting), keep track of the
related changes, maintain cache consistency and incrementally
update the currently active database.

If you need to manually trigger resync of the currently active
database, see `org-roam-db-sync' command.

This is a global minor mode.  If called interactively, toggle the
`Org-Roam-Db-Autosync mode' mode.  If the prefix argument is positive,
enable the mode, and if it is zero or negative, disable the mode.

If called from Lisp, toggle the mode if ARG is `toggle'.  Enable the
mode if ARG is nil, omitted, or is a positive number.  Disable the mode
if ARG is a negative number.

To check whether the minor mode is enabled in the current buffer,
evaluate `(default-value \='org-roam-db-autosync-mode)'.

The mode's hook is called both when the mode is enabled and when it is
disabled.

(fn &optional ARG)
(byte-code "\300\301\302\303\304DD\305\306\307\310\311\312\313\314\315&\207" [custom-declare-variable org-roam-db-autosync-mode funcall function #[0 "\300\207" [nil] 1 (#$ . 255)] (#$ . 23250) :set custom-set-minor-mode :initialize custom-initialize-default :type boolean :group org-roam] 12)
(defalias 'org-roam-db-autosync-mode #[256 "\302 \303\301\304=\203 \305\301!?\202! \247\203  \306W\203  \307\202! \310\"\210\311\300!\2038 \312\301\"\305\301!\2038 \301B	\211\203` \313\314\315\"\210\313\316\317\"\210\320\321\322\323#\210\320\324\325\326#\210\320\327\330\331#\210\332 \266\202\226 \333\314\315\"\210\333\316\317\"\210\334\321\323\"\210\334\324\326\"\210\334\327\331\"\210\317 \210\335 \211\203\224 \211@r\211q\210\333\336\337\310#)\266A\202~ \266\340\341\305\301!\203\242 \342\202\243 \343\"\210\344\345!\203\314 \346\301!\210\302 \203\273 \211\302 \232\203\314 \347\350\351\305\301!\203\310 \352\202\311 \353\354$\210\210\355 \210\305\301!\207" [global-minor-modes org-roam-db-autosync-mode current-message set-default toggle default-value 1 nil t boundp delq add-hook find-file-hook org-roam-db-autosync--setup-file-h kill-emacs-hook org-roam-db--close-all advice-add rename-file :after org-roam-db-autosync--rename-file-a delete-file :before org-roam-db-autosync--delete-file-a vc-delete-file :around org-roam-db-autosync--vc-delete-file-a org-roam-db-sync remove-hook advice-remove org-roam-buffer-list after-save-hook org-roam-db-autosync--try-update-on-save-h run-hooks org-roam-db-autosync-mode-hook org-roam-db-autosync-mode-on-hook org-roam-db-autosync-mode-off-hook called-interactively-p any customize-mark-as-set message "%s %sabled%s" "Org-Roam-Db-Autosync mode" "en" "dis" "" force-mode-line-update] 9 (#$ . 23551) (byte-code "\203\n \301!\202 \302C\207" [current-prefix-arg prefix-numeric-value toggle] 2)])
(defvar org-roam-db-autosync-mode-hook nil)#@109 Maintain cache consistency when file deletes.
FILE is removed from the database.

(fn FILE &optional TRASH)
(byte-code "\301\302N\204\f \303\301\302\304#\210\303\301\305\306#\210\303\301\307\310C#\210\311\312\310\313\300!\205# \310\211%\207" [org-roam-db-autosync-mode-map org-roam-db-autosync-mode-hook variable-documentation put "Hook run after entering or leaving `org-roam-db-autosync-mode'.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" custom-type hook standard-value nil add-minor-mode org-roam-db-autosync-mode boundp] 6)
(defalias 'org-roam-db-autosync--delete-file-a #[513 "\300!?\205 \301!?\205 \302!\205 \303\304!!\207" [auto-save-file-name-p backup-file-name-p org-roam-file-p org-roam-db-clear-file expand-file-name] 5 (#$ . 26446)])#@103 Maintain cache consistency on file deletion by FUN.
FILE is removed from the database.

(fn FUN FILE)
(defalias 'org-roam-db-autosync--vc-delete-file-a #[514 "\300!?\205 \301!?\205 \302!!\210\211\205% \303!?\205% \304\305!!\207" [auto-save-file-name-p backup-file-name-p org-roam-file-p file-exists-p org-roam-db-clear-file expand-file-name] 6 (#$ . 27290)])#@155 Maintain cache consistency of file rename.
OLD-FILE is cleared from the database, and NEW-FILE-OR-DIR is added.

(fn OLD-FILE NEW-FILE-OR-DIR &rest ARGS)
(defalias 'org-roam-db-autosync--rename-file-a #[642 "\300!\203 \301\302!\"\202 \301!\262\301!\262\303!\204< \303!\204< \304!\204< \304!\204< \305!\203< \306!\210\305!\205E \307!\207" [directory-name-p expand-file-name file-name-nondirectory auto-save-file-name-p backup-file-name-p org-roam-file-p org-roam-db-clear-file org-roam-db-update-file] 6 (#$ . 27664)])#@57 Setup the current buffer if it visits an Org-roam file.
(defalias 'org-roam-db-autosync--setup-file-h #[0 "\300 \205 \301\302!\207" [org-roam-file-p run-hooks org-roam-find-file-hook] 2 (#$ . 28205)])#@74 Setup the current buffer to update the DB after saving the current file.
(add-hook 'org-roam-find-file-hook 'org-roam-db-autosync--setup-update-on-save-h)
(defalias 'org-roam-db-autosync--setup-update-on-save-h #[0 "\300\301\302\303\304$\207" [add-hook after-save-hook org-roam-db-autosync--try-update-on-save-h nil t] 5 (#$ . 28412)])#@79 If appropriate, update the database for the current file after saving buffer.
(defalias 'org-roam-db-autosync--try-update-on-save-h #[0 "\205 \301 \207" [org-roam-db-update-on-save org-roam-db-update-file] 1 (#$ . 28753)])#@40 Print information about node at point.
(defalias 'org-roam-db-diagnose-node #[0 "\300\301 !\207" [prin1 org-roam-node-at-point] 2 (#$ . 28983) nil])#@35 Explore the org-roam DB contents.
(defalias 'org-roam-db-explore #[0 "\301\302\303\304#\210\305\306!\203 \306!\207\307\310!\207" [org-roam-db-location require sqlite-mode nil t fboundp sqlite-mode-open-file message "org-roam-db-explore: This command requires Emacs 29"] 4 (#$ . 29137) nil])
(provide 'org-roam-db)
