pipeline.cljs 820 B

1234567891011121314151617181920
  1. (ns frontend.modules.outliner.pipeline
  2. (:require [frontend.modules.datascript-report.core :as ds-report]
  3. [frontend.modules.outliner.file :as file]
  4. [frontend.state :as state]))
  5. (defn updated-page-hook
  6. [_tx-report page]
  7. (file/sync-to-file page))
  8. (defn invoke-hooks
  9. [tx-report]
  10. (when (and (not (:from-disk? (:tx-meta tx-report)))
  11. (not (:new-graph? (:tx-meta tx-report))))
  12. (let [{:keys [pages blocks]} (ds-report/get-blocks-and-pages tx-report)]
  13. (doseq [p (seq pages)] (updated-page-hook tx-report p))
  14. (when (and state/lsp-enabled? (seq blocks))
  15. (state/pub-event! [:plugin/hook-db-tx
  16. {:blocks blocks
  17. :tx-data (:tx-data tx-report)
  18. :tx-meta (:tx-meta tx-report)}])))))