diff options
author | sterni <sternenseemann@systemli.org> | 2022-01-12T23·33+0100 |
---|---|---|
committer | sterni <sternenseemann@systemli.org> | 2022-02-02T20·47+0000 |
commit | 56ec3b1803ed91b5b39ec001ff99d147d44f5e6d (patch) | |
tree | bb29e1e9a18b0750ad1dd52eeeee8b318b803816 /users/sterni/mblog/packages.lisp | |
parent | d0e30ed23a53f965f3003d9aa7282190fe3df088 (diff) |
refactor(sterni/mblog): add (sub)class for apple note messages r/3748
* 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>
Diffstat (limited to 'users/sterni/mblog/packages.lisp')
-rw-r--r-- | users/sterni/mblog/packages.lisp | 23 |
1 files changed, 19 insertions, 4 deletions
diff --git a/users/sterni/mblog/packages.lisp b/users/sterni/mblog/packages.lisp index a58aad27d11b..1d5aa07313ca 100644 --- a/users/sterni/mblog/packages.lisp +++ b/users/sterni/mblog/packages.lisp @@ -5,18 +5,33 @@ (:documentation "Very incomplete package for dealing with maildir(5).")) -(defpackage :mblog +(defpackage :note (:use :common-lisp - :mime4cl :closure-html :who - :uiop) - (:shadow :with-html-output) ; conflict between closure-html and 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)) |