tvl-depot/users/sterni/mblog/packages.lisp
sterni 56ec3b1803 refactor(sterni/mblog): add (sub)class for apple note messages
* Upon creation of an apple-note object we can check if certain fields
  we are interested in are present and of the right type etc.

  These currently are:

  - UUID (for links later)
  - Subject (title)
  - Time
  - Text part with supported MIME type

  These are then put into their own shortcut fields in the apple-note
  subclass which allows for easier access and forces us to make sure
  they are present.

* Split out everything note related into its own package. Using the new
  type, we can expose an interface which sort of makes sense.

Change-Id: Ic9d67518354e61a3cc8388bb0e566fce661e90d0
Reviewed-on: https://cl.tvl.fyi/c/depot/+/5072
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
2022-02-02 20:47:45 +00:00

37 lines
690 B
Common Lisp

(defpackage :maildir
(:use :common-lisp)
(:shadow :list)
(:export :list)
(:documentation
"Very incomplete package for dealing with maildir(5)."))
(defpackage :note
(:use
:common-lisp
:closure-html
:who
:cl-date-time-parser
:mime4cl
:who)
(:import-from
:alexandria
:when-let*
:when-let
:starts-with-subseq
:ends-with-subseq)
(:shadow :with-html-output) ; conflict between closure-html and who
(:export
:apple-note
:apple-note-uuid
:apple-note-subject
:apple-note-time
:apple-note-text-part
:make-apple-note
:apple-note-html-fragment))
(defpackage :mblog
(:use
:common-lisp
:uiop
:note)
(:export :main))