diff --git a/blog b/blog index 81c14b0..0862290 100755 --- a/blog +++ b/blog @@ -2,6 +2,7 @@ use v6.e.PREVIEW; use DB; +use DB::MarkdownPost; my %*SUB-MAIN-OPTS = :named-anywhere, @@ -83,7 +84,7 @@ multi MAIN( my $db = load-db $db-file; my $id = $db.insert-post: - DB::MarkdownPost.new( + MarkdownPost.new( source => $source.absolute.IO, posted-at => $posted-at, hidden => $hidden, diff --git a/lib/DB.rakumod b/lib/DB.rakumod index fab8ae1..1b8fd90 100644 --- a/lib/DB.rakumod +++ b/lib/DB.rakumod @@ -8,18 +8,7 @@ use JSON::Class:auth; use DB::Post; use DB::BlogMeta; - -#| A plain markdown post -class MarkdownPost does Post is json { - #| Marker for disambiguation between post types in json representation, the - #| cheaty way - has Bool:D $.markdown = True; - - method title(--> Str:D) { - markdown-title($!source) - } -} - +use DB::MarkdownPost; #| A plain markdown post class IdrisPost does Post is json { diff --git a/lib/DB/MarkdownPost.rakumod b/lib/DB/MarkdownPost.rakumod new file mode 100644 index 0000000..03a3559 --- /dev/null +++ b/lib/DB/MarkdownPost.rakumod @@ -0,0 +1,17 @@ +use v6.e.PREVIEW; + +use Pandoc; +use JSON::Class:auth; + +use DB::Post; + +#| A plain markdown post +unit class MarkdownPost does Post is json; + +#| Marker for disambiguation between post types in json representation, the +#| cheaty way +has Bool:D $.markdown = True; + +method title(--> Str:D) { + markdown-title($!source) +}