@geekity/cms 0.29.0 → 0.30.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +84 -32
- package/dist/admin/store.d.ts +42 -15
- package/dist/admin/store.d.ts.map +1 -1
- package/dist/admin/store.js +71 -31
- package/dist/admin/store.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +10 -3
- package/dist/cli.js.map +1 -1
- package/dist/comments/index.d.ts +2 -2
- package/dist/comments/index.d.ts.map +1 -1
- package/dist/comments/index.js +1 -1
- package/dist/comments/index.js.map +1 -1
- package/dist/comments/records.d.ts +32 -4
- package/dist/comments/records.d.ts.map +1 -1
- package/dist/comments/records.js +182 -9
- package/dist/comments/records.js.map +1 -1
- package/dist/comments/routes.js +3 -3
- package/dist/comments/routes.js.map +1 -1
- package/dist/federation/backfill.js +6 -4
- package/dist/federation/backfill.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -3
- package/dist/index.js.map +1 -1
- package/dist/plugin.d.ts +28 -2
- package/dist/plugin.d.ts.map +1 -1
- package/dist/plugin.js +10 -2
- package/dist/plugin.js.map +1 -1
- package/dist/plugins/site.d.ts.map +1 -1
- package/dist/plugins/site.js +7 -1
- package/dist/plugins/site.js.map +1 -1
- package/dist/web/conversation.d.ts +47 -23
- package/dist/web/conversation.d.ts.map +1 -1
- package/dist/web/conversation.js +151 -120
- package/dist/web/conversation.js.map +1 -1
- package/dist/web/feed-source.d.ts +10 -7
- package/dist/web/feed-source.d.ts.map +1 -1
- package/dist/web/feed-source.js +21 -13
- package/dist/web/feed-source.js.map +1 -1
- package/dist/web/guids.d.ts +4 -16
- package/dist/web/guids.d.ts.map +1 -1
- package/dist/web/guids.js +5 -17
- package/dist/web/guids.js.map +1 -1
- package/dist/web/routes.d.ts.map +1 -1
- package/dist/web/routes.js +63 -53
- package/dist/web/routes.js.map +1 -1
- package/dist/webmention/receive.js +5 -5
- package/dist/webmention/receive.js.map +1 -1
- package/package.json +1 -1
- package/themes/default/README.md +41 -31
- package/themes/default/layouts/comment.njk +3 -3
- package/themes/default/partials/comment.njk +5 -5
package/README.md
CHANGED
|
@@ -711,8 +711,9 @@ front of it, an `actor` taken from the note's `attributedTo` and the id
|
|
|
711
711
|
under the reply it answers with its own URL, counted, given a `/replies/` feed
|
|
712
712
|
and listed on the federation screen, and its author's `Delete` takes it back.
|
|
713
713
|
A note held once is never logged twice. The sweep skips a note the inbox
|
|
714
|
-
already holds
|
|
715
|
-
fetched line.
|
|
714
|
+
already holds or the site holds as a [migrated comment](#migrated-comments),
|
|
715
|
+
and a delivery of a note the sweep fetched first replaces the fetched line. An
|
|
716
|
+
imported fediverse reply's collection is read by its note id, its `origin`.
|
|
716
717
|
|
|
717
718
|
The site removes a fetched reply, with the fetched replies under it, when its
|
|
718
719
|
server answers 404 or 410 for it, or when a collection read to its end no
|
|
@@ -1079,6 +1080,56 @@ from a version that kept the email in the comment file has it moved there on
|
|
|
1079
1080
|
the next boot, and so does an email somebody types into a comment file by
|
|
1080
1081
|
hand.
|
|
1081
1082
|
|
|
1083
|
+
### Keys
|
|
1084
|
+
|
|
1085
|
+
Every comment has one key, 16 lowercase hex digits (decision-51). It is the
|
|
1086
|
+
comment's `id` in its file, its anchor `#comment-{key}` on the post, its
|
|
1087
|
+
replies feed `/replies/{key}/` and, for a comment left through the form, its
|
|
1088
|
+
page `/comment/{key}/`. No URL the site prints carries an id of any other shape.
|
|
1089
|
+
|
|
1090
|
+
| Comment | Its key |
|
|
1091
|
+
| ----------------------------------------------- | ------------------------------------------------------------------------------------------- |
|
|
1092
|
+
| Left through the form | 16 random hex digits, minted when it is submitted. |
|
|
1093
|
+
| A webmention | The first 16 hex digits of the SHA-256 of its source URL, a space and the post's permalink. |
|
|
1094
|
+
| A fediverse reply, like or boost | The first 16 hex digits of the SHA-256 of its note or activity id. |
|
|
1095
|
+
| Imported, with an identity elsewhere (`origin`) | The key the same comment would get arriving here, from its `origin`. |
|
|
1096
|
+
| Imported, with none (a WordPress form comment) | The first 16 hex digits of the SHA-256 of its old comment URL. |
|
|
1097
|
+
|
|
1098
|
+
A comment file holding any other id is refused, naming the file and the id. A
|
|
1099
|
+
site upgrading from 0.29 has its UUID ids, and the URL ids plugin-wordpress
|
|
1100
|
+
0.2.0 wrote, re-keyed in place on the next boot to the key of the old id; the
|
|
1101
|
+
replies naming them, the emails in `data/comments/` and any Markdown linking
|
|
1102
|
+
`/comment/{old}/` or `#comment-{old}` follow. Nothing redirects from the old
|
|
1103
|
+
URLs. A site whose ids are all keys reads its files and writes nothing.
|
|
1104
|
+
|
|
1105
|
+
### Migrated comments
|
|
1106
|
+
|
|
1107
|
+
A comment imported from another system carries `migrated: true`, and `origin`
|
|
1108
|
+
when it had an identity elsewhere: a fediverse reply's note id, a like's or a
|
|
1109
|
+
boost's activity id, a webmention's source URL. A migrated fediverse comment
|
|
1110
|
+
also carries `actor`, the id of the actor who wrote it, when the export named
|
|
1111
|
+
one. plugin-wordpress writes all three.
|
|
1112
|
+
|
|
1113
|
+
A migrated comment shows on its post, in its thread and on its own page like
|
|
1114
|
+
any other, and replies to it thread under it. It is in no feed and no count a
|
|
1115
|
+
feed advertises: not `/comments/feed/`, not `{permalink}feed/`, not
|
|
1116
|
+
`/replies/{key}/` and not `source:comments`. It was published before the site
|
|
1117
|
+
moved here, so a reader of the old comments feed sees nothing new at cutover. A
|
|
1118
|
+
native reply under it is news, and names it in `source:inReplyTo` by its guid:
|
|
1119
|
+
its `/comment/{key}/` page for an imported form comment, its `origin`
|
|
1120
|
+
otherwise, else its `url`.
|
|
1121
|
+
|
|
1122
|
+
The same comment arriving again is the one the site holds, and the stored one
|
|
1123
|
+
wins, with the moderator's decision on it. A resent webmention is matched by
|
|
1124
|
+
its source. A redelivered `Create` or `Like`, and a note the
|
|
1125
|
+
[reply backfill](#replies-to-fediverse-replies) reads, are matched by their
|
|
1126
|
+
note or activity id against the stored comment's `origin`, so the inbox line is
|
|
1127
|
+
not shown and the backfill does not log the note. A like or a boost from the
|
|
1128
|
+
same actor as an imported one, matched by the inbox line's actor against the
|
|
1129
|
+
stored comment's `actor`, is the same reaction.
|
|
1130
|
+
An answer to an imported fediverse note threads under the imported comment,
|
|
1131
|
+
and the backfill reads that note's `replies` collection by its `origin`.
|
|
1132
|
+
|
|
1082
1133
|
Three settings and one front-matter key decide whether a post is still taking
|
|
1083
1134
|
them, and they are read in one place so the form and the endpoint can never
|
|
1084
1135
|
disagree:
|
|
@@ -1121,10 +1172,10 @@ moderation queue and the dashboard carries the number waiting.
|
|
|
1121
1172
|
|
|
1122
1173
|
### A comment's own page
|
|
1123
1174
|
|
|
1124
|
-
A comment left through the form has a page of its own at `/comment/{
|
|
1125
|
-
|
|
1175
|
+
A comment left through the form has a page of its own at `/comment/{key}/`
|
|
1176
|
+
(see [Keys](#keys)). That page is the comment's URL in the thread
|
|
1126
1177
|
and in both comments feeds, so a site that replies to the comment fetches the
|
|
1127
|
-
comment rather than the whole post. The `#comment-{
|
|
1178
|
+
comment rather than the whole post. The `#comment-{key}` anchor on the post
|
|
1128
1179
|
stays, so an old link still scrolls to it. A webmention or a fediverse reply
|
|
1129
1180
|
has no such page: its URL is where it came from.
|
|
1130
1181
|
|
|
@@ -1150,7 +1201,7 @@ what it answers. Its `in-reply-to` is what it answers:
|
|
|
1150
1201
|
| Answering | `in-reply-to` | It also |
|
|
1151
1202
|
| ------------------ | --------------------------------- | -------------------------------------------------------- |
|
|
1152
1203
|
| The post | The post's permalink | |
|
|
1153
|
-
| A native comment | The comment's `/comment/{
|
|
1204
|
+
| A native comment | The comment's `/comment/{key}/` | Emails the commenter once, if they asked about replies. |
|
|
1154
1205
|
| A webmention reply | The page the webmention came from | Sends that page a webmention. |
|
|
1155
1206
|
| A fediverse reply | The note's id | Federates in reply to the note, addressed to its author. |
|
|
1156
1207
|
| A reply post | The reply post's permalink | |
|
|
@@ -1339,10 +1390,10 @@ can tell one from a form submission by its `source`. Akismet is told it is a
|
|
|
1339
1390
|
`webmention` rather than a `comment`.
|
|
1340
1391
|
|
|
1341
1392
|
A reply whose `u-in-reply-to` names a reply already on the post (a comment by
|
|
1342
|
-
its own page or its `#comment-{
|
|
1393
|
+
its own page or its `#comment-{key}` anchor, an earlier webmention by the page it
|
|
1343
1394
|
was sent from, a fediverse reply by its url or id) threads under that reply, and
|
|
1344
1395
|
moves with it when the source is edited and sent again. A webmention sent to a
|
|
1345
|
-
comment's page, `/comment/{
|
|
1396
|
+
comment's page, `/comment/{key}/`, lands on that comment's post.
|
|
1346
1397
|
|
|
1347
1398
|
The source URL is its identity. A page that sends its webmention again updates
|
|
1348
1399
|
what it left rather than adding a second, and one whose link has gone — or which
|
|
@@ -2817,7 +2868,7 @@ Booting mounts the public site on the app. The routes are:
|
|
|
2817
2868
|
| `/author/{username}/feed/` and siblings | The same, for one person. |
|
|
2818
2869
|
| `/comments/feed/` | Every reply the inbox has been sent, as RSS 2.0. |
|
|
2819
2870
|
| `{permalink}feed/` | One post's replies, the same way. |
|
|
2820
|
-
| `/comment/{
|
|
2871
|
+
| `/comment/{key}/` | One comment left through the form, on a page of its own: see [Comments](#comments). Noindex and on no list. |
|
|
2821
2872
|
| `/sitemap.xml` | Every public URL, for a search engine. |
|
|
2822
2873
|
| `/sitemap-{n}.xml` | One file of a sitemap too big to be a single one. |
|
|
2823
2874
|
| `/robots.txt` | What a crawler may have, and where the sitemap is. |
|
|
@@ -3231,7 +3282,7 @@ so a site moving off it keeps every subscriber it had:
|
|
|
3231
3282
|
| `/category/{name}/feed/` | One category archive, the same three |
|
|
3232
3283
|
| `/comments/feed/` | Every reply the site has been sent, in RSS |
|
|
3233
3284
|
| `{permalink}feed/` | One post's replies, in RSS |
|
|
3234
|
-
| `/replies/{
|
|
3285
|
+
| `/replies/{key}/` | One item's direct replies, in RSS |
|
|
3235
3286
|
|
|
3236
3287
|
`/feed/` is RSS because that is the format nearly every existing subscriber
|
|
3237
3288
|
holds. The two archive bases are settings (`tagBase`, `categoryBase`), so the
|
|
@@ -3396,7 +3447,13 @@ the page draws under the post, so they carry what a reader sees there:
|
|
|
3396
3447
|
post its author approved;
|
|
3397
3448
|
- reply posts written on this site that answer the post or a reply under it.
|
|
3398
3449
|
|
|
3399
|
-
Likes, boosts and reposts
|
|
3450
|
+
That is replies and mentions. Likes, boosts and reposts say nothing, so they
|
|
3451
|
+
are shown and counted on the page and are in no feed, and no `source:comments`
|
|
3452
|
+
count includes them: a post answered only with reactions advertises no replies
|
|
3453
|
+
feed. An RSVP to an event is shown with the people answering, not in the
|
|
3454
|
+
thread, so it is in no feed either, words or not; an RSVP sent to a post that
|
|
3455
|
+
is no event is a reply like any other. Neither feed carries a
|
|
3456
|
+
[migrated comment](#migrated-comments).
|
|
3400
3457
|
|
|
3401
3458
|
Both are RSS 2.0 and nothing else: a comments feed has no Atom or JSON spelling
|
|
3402
3459
|
here, so `{permalink}feed/atom/` 404s. A post has a comments feed whether or
|
|
@@ -3413,13 +3470,12 @@ A channel carries the usual `title` (`Comments on: {post}`), `link`,
|
|
|
3413
3470
|
`description`, `language`, `lastBuildDate`, `generator`, `atom:link rel="self"`
|
|
3414
3471
|
and the same notify-server elements every other feed carries. An item carries the author's name as its `title` and `dc:creator`,
|
|
3415
3472
|
the reply's `url` as its `link` (a comment left through the form links to its
|
|
3416
|
-
own page at `/comment/{
|
|
3473
|
+
own page at `/comment/{key}/`), a `guid`, the `published` time the reply gave (or
|
|
3417
3474
|
when it arrived, if it gave none), `description` holding a plain-text excerpt
|
|
3418
3475
|
and `content:encoded` holding the reply. The `guid` of a comment left through the
|
|
3419
|
-
form is its page, `isPermaLink="true"`;
|
|
3420
|
-
|
|
3421
|
-
|
|
3422
|
-
published, so a reader sees nothing new after the move.
|
|
3476
|
+
form is its page, `isPermaLink="true"`; a fediverse note's is its id, a
|
|
3477
|
+
webmention's its source URL, a reply post's its object id. A migrated comment
|
|
3478
|
+
is in neither feed, so its old `guid` never has to survive the move.
|
|
3423
3479
|
`isPermaLink` is `true` exactly when the `guid` is the `link`.
|
|
3424
3480
|
|
|
3425
3481
|
Each item also carries, from the [source namespace][source-ns]:
|
|
@@ -3468,20 +3524,16 @@ replies that answer the post directly, and from each of those items' own
|
|
|
3468
3524
|
`source:comments` to the replies that answer it, until an item has none.
|
|
3469
3525
|
Every reply a reader can see is reached once.
|
|
3470
3526
|
|
|
3471
|
-
Each of those feeds is
|
|
3472
|
-
|
|
3473
|
-
|
|
3474
|
-
|
|
3475
|
-
|
|
3476
|
-
|
|
3477
|
-
|
|
3478
|
-
|
|
3479
|
-
|
|
3480
|
-
|
|
3481
|
-
A segment of exactly 16 lowercase hex digits is a key, and anything else is a
|
|
3482
|
-
comment id. A comment whose id happens to look like a key is named by its key
|
|
3483
|
-
instead, so no segment can name two items. An item nobody answered answers an
|
|
3484
|
-
empty feed; a key or an id that names nothing a reader can see 404s.
|
|
3527
|
+
Each of those feeds is `/replies/{key}/`, RSS 2.0, newest first, its items in
|
|
3528
|
+
the same shape as the comments feeds. It carries replies only: a mention
|
|
3529
|
+
answers nothing in the thread, and a like, a boost, a repost or an event's RSVP
|
|
3530
|
+
is in no feed. A comment's key is its id (see
|
|
3531
|
+
[Keys](#keys)); a post's, a page's, a fediverse reply's or a reply post's is
|
|
3532
|
+
the first 16 hex digits of the SHA-256 of its feed `guid`, since a document has
|
|
3533
|
+
no id of its own and slugs are not unique across posts and pages. An item
|
|
3534
|
+
nobody answered answers an empty feed; a segment that is no key, or a key that
|
|
3535
|
+
names nothing a reader can see, 404s. A migrated comment's feed still answers,
|
|
3536
|
+
with the native replies under it, though no feed links to it.
|
|
3485
3537
|
|
|
3486
3538
|
[rss-chat]: https://github.com/scripting/rss.chat
|
|
3487
3539
|
|
|
@@ -4217,8 +4269,8 @@ search or listing pagination.
|
|
|
4217
4269
|
Some things do not carry over. `/feed/`, `/feed/atom/` and `/feed/json/` are
|
|
4218
4270
|
generated in code here, not by a template, so an Eleventy build needs its own;
|
|
4219
4271
|
`/sitemap.xml` and `/robots.txt` are the same story, for the same reason. A
|
|
4220
|
-
comment's own page at `/comment/{
|
|
4221
|
-
server to take a comment, so a comment links to its `#comment-{
|
|
4272
|
+
comment's own page at `/comment/{key}/` is not written, since a build has no
|
|
4273
|
+
server to take a comment, so a comment links to its `#comment-{key}` anchor on
|
|
4222
4274
|
the post. The site's own reply posts are not threaded under what they answer,
|
|
4223
4275
|
and a document's backlinks are not listed: both read the CMS's index of every
|
|
4224
4276
|
document, which the config's filters do not have. The config's header lists
|
package/dist/admin/store.d.ts
CHANGED
|
@@ -3,12 +3,6 @@ import type { RsvpValue } from '../content/rsvp.ts';
|
|
|
3
3
|
export interface OpenAdminStoreOptions {
|
|
4
4
|
/** Directory the database lives in. Created if it is missing. */
|
|
5
5
|
dataDir: string;
|
|
6
|
-
/**
|
|
7
|
-
* The site's base URL, which a native comment's `/replies/` key is worked
|
|
8
|
-
* out against (TASK-327). Opening with a different one than last time works
|
|
9
|
-
* every key out again; opening with none leaves new comments without keys.
|
|
10
|
-
*/
|
|
11
|
-
baseUrl?: string | undefined;
|
|
12
6
|
}
|
|
13
7
|
/**
|
|
14
8
|
* A login, or the anonymous session that carries a CSRF token to a visitor who
|
|
@@ -441,10 +435,10 @@ export interface CommentAuthor {
|
|
|
441
435
|
/**
|
|
442
436
|
* Their avatar, or `null`.
|
|
443
437
|
*
|
|
444
|
-
*
|
|
445
|
-
*
|
|
446
|
-
*
|
|
447
|
-
*
|
|
438
|
+
* A webmention has one out of the `u-photo` of the source page's `h-card`
|
|
439
|
+
* (TASK-51), and an imported fediverse comment its actor's icon (TASK-338).
|
|
440
|
+
* A form asks for no picture: one it did ask for would be a stranger's file
|
|
441
|
+
* on somebody else's page. The page serves it through the avatar cache.
|
|
448
442
|
*/
|
|
449
443
|
avatar: string | null;
|
|
450
444
|
}
|
|
@@ -533,7 +527,45 @@ export interface CommentRecord {
|
|
|
533
527
|
* TASK-320). Absent for every other comment.
|
|
534
528
|
*/
|
|
535
529
|
via?: string;
|
|
530
|
+
/**
|
|
531
|
+
* Whether it was imported from another system (TASK-336), the word a
|
|
532
|
+
* migrated post uses. It was published before the site came here, so it is
|
|
533
|
+
* shown in its thread and carried by no feed. Absent for every other comment.
|
|
534
|
+
*/
|
|
535
|
+
migrated?: true;
|
|
536
|
+
/**
|
|
537
|
+
* The name it has where it was first published, for a migrated comment
|
|
538
|
+
* that has one: a fediverse note or activity id, or a webmention's source.
|
|
539
|
+
* What the feeds call it when a native reply answers it, and what a later
|
|
540
|
+
* delivery of the same thing is recognised by. Absent for every other comment.
|
|
541
|
+
*/
|
|
542
|
+
origin?: string;
|
|
543
|
+
/**
|
|
544
|
+
* The site user who wrote it, by username, for a comment written by
|
|
545
|
+
* somebody signed in to the system it was imported from (TASK-337). The
|
|
546
|
+
* thread names them as it names their reply posts. Absent for every other
|
|
547
|
+
* comment.
|
|
548
|
+
*/
|
|
549
|
+
user?: string;
|
|
550
|
+
/**
|
|
551
|
+
* The fediverse actor who wrote it, by id, for a migrated fediverse comment
|
|
552
|
+
* whose actor the export named (TASK-338). What tells their like here from
|
|
553
|
+
* the same person's like delivered since, whatever profile page each names.
|
|
554
|
+
* Absent for every other comment.
|
|
555
|
+
*/
|
|
556
|
+
actor?: string;
|
|
536
557
|
}
|
|
558
|
+
/**
|
|
559
|
+
* What a comment brought from the system it was imported from, as a record
|
|
560
|
+
* carries it: each of {@link CommentRecord.migrated}, `origin`, `user` and
|
|
561
|
+
* `actor` present only when set.
|
|
562
|
+
*/
|
|
563
|
+
export declare function importedFields(fields: {
|
|
564
|
+
readonly migrated?: boolean | null | undefined;
|
|
565
|
+
readonly origin?: string | null | undefined;
|
|
566
|
+
readonly user?: string | null | undefined;
|
|
567
|
+
readonly actor?: string | null | undefined;
|
|
568
|
+
}): Pick<CommentRecord, 'migrated' | 'origin' | 'user' | 'actor'>;
|
|
537
569
|
/** A comment's {@link CommentRecord.rsvp} as a record carries it: present only when there is one. */
|
|
538
570
|
export declare function rsvpField(rsvp: RsvpValue | undefined): Pick<CommentRecord, 'rsvp'>;
|
|
539
571
|
/** A comment's {@link CommentRecord.via} as a record carries it: present only when there is one. */
|
|
@@ -792,11 +824,6 @@ export interface AdminStore {
|
|
|
792
824
|
getComment(id: string): PostComment | undefined;
|
|
793
825
|
/** The comments whose `url` is this one, whatever their status (TASK-300). */
|
|
794
826
|
listCommentsAt(url: string): PostComment[];
|
|
795
|
-
/**
|
|
796
|
-
* The comments and webmentions whose feed guid has this `/replies/` key,
|
|
797
|
-
* whatever their status (TASK-327): one indexed lookup.
|
|
798
|
-
*/
|
|
799
|
-
listCommentsByRepliesKey(key: string): PostComment[];
|
|
800
827
|
/** The logged replies whose note's id has this `/replies/` key (TASK-327). */
|
|
801
828
|
listRepliesByKey(key: string): InboxActivity[];
|
|
802
829
|
/** How many comments stand at each status. What the dashboard shows. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/admin/store.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/admin/store.ts"],"names":[],"mappings":"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"}
|
package/dist/admin/store.js
CHANGED
|
@@ -4,7 +4,6 @@ import { databaseFile, openDatabase } from '../cache.js';
|
|
|
4
4
|
import { rsvpValue } from '../content/rsvp.js';
|
|
5
5
|
import { REPLY_ACTIVITY_TYPE, replyIdOf, replyTargetOf } from '../federation/replies.js';
|
|
6
6
|
import { repliesKey } from '../web/feed-source.js';
|
|
7
|
-
import { replyGuid } from '../web/guids.js';
|
|
8
7
|
/**
|
|
9
8
|
* Which rows of the inbox log are replies: a `Create` that named something it
|
|
10
9
|
* answers. Spelled once, because a count and a listing that disagreed about it
|
|
@@ -27,6 +26,20 @@ export const COMMENT_KINDS = ['reply', 'like', 'boost', 'mention', 'repost'];
|
|
|
27
26
|
export const COMMENT_STATUSES = ['pending', 'approved', 'spam'];
|
|
28
27
|
/** What a comment can have had removed from it for privacy (TASK-135). */
|
|
29
28
|
export const REDACTED_FIELDS = ['email', 'addressHash', 'author'];
|
|
29
|
+
/**
|
|
30
|
+
* What a comment brought from the system it was imported from, as a record
|
|
31
|
+
* carries it: each of {@link CommentRecord.migrated}, `origin`, `user` and
|
|
32
|
+
* `actor` present only when set.
|
|
33
|
+
*/
|
|
34
|
+
export function importedFields(fields) {
|
|
35
|
+
const { migrated, origin, user, actor } = fields;
|
|
36
|
+
return {
|
|
37
|
+
...(migrated === true ? { migrated: true } : {}),
|
|
38
|
+
...(origin ? { origin } : {}),
|
|
39
|
+
...(user ? { user } : {}),
|
|
40
|
+
...(actor ? { actor } : {}),
|
|
41
|
+
};
|
|
42
|
+
}
|
|
30
43
|
/** A comment's {@link CommentRecord.rsvp} as a record carries it: present only when there is one. */
|
|
31
44
|
export function rsvpField(rsvp) {
|
|
32
45
|
return rsvp === undefined ? {} : { rsvp };
|
|
@@ -179,9 +192,6 @@ export function openAdminStore(options) {
|
|
|
179
192
|
`),
|
|
180
193
|
commentById: db.prepare('SELECT * FROM comments WHERE id = ?'),
|
|
181
194
|
commentsAt: db.prepare('SELECT * FROM comments WHERE url = ? ORDER BY submitted_at'),
|
|
182
|
-
commentsByRepliesKey: db.prepare('SELECT * FROM comments WHERE replies_key = ? ORDER BY submitted_at, id'),
|
|
183
|
-
staleCommentKeys: db.prepare('SELECT id, source FROM comments WHERE keys_base IS NOT ?'),
|
|
184
|
-
writeCommentKey: db.prepare('UPDATE comments SET replies_key = ?, keys_base = ? WHERE id = ?'),
|
|
185
195
|
repliesByKey: db.prepare(`
|
|
186
196
|
SELECT * FROM ap_inbox WHERE ${IS_REPLY} AND reply_key = ? ORDER BY received_at, id
|
|
187
197
|
`),
|
|
@@ -197,8 +207,8 @@ export function openAdminStore(options) {
|
|
|
197
207
|
id, slug, permalink, source, kind, status,
|
|
198
208
|
author_name, author_url, author_email,
|
|
199
209
|
markdown, html, submitted_at, address_hash, in_reply_to, url, author_avatar, notify,
|
|
200
|
-
redacted, rsvp, via,
|
|
201
|
-
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
210
|
+
redacted, rsvp, via, migrated, origin, user, actor
|
|
211
|
+
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
202
212
|
ON CONFLICT (id) DO UPDATE SET
|
|
203
213
|
slug = excluded.slug,
|
|
204
214
|
permalink = excluded.permalink,
|
|
@@ -219,8 +229,10 @@ export function openAdminStore(options) {
|
|
|
219
229
|
redacted = excluded.redacted,
|
|
220
230
|
rsvp = excluded.rsvp,
|
|
221
231
|
via = excluded.via,
|
|
222
|
-
|
|
223
|
-
|
|
232
|
+
migrated = excluded.migrated,
|
|
233
|
+
origin = excluded.origin,
|
|
234
|
+
user = excluded.user,
|
|
235
|
+
actor = excluded.actor
|
|
224
236
|
`),
|
|
225
237
|
deleteComment: db.prepare('DELETE FROM comments WHERE id = ?'),
|
|
226
238
|
clearComments: db.prepare('DELETE FROM comments'),
|
|
@@ -343,20 +355,6 @@ export function openAdminStore(options) {
|
|
|
343
355
|
return [];
|
|
344
356
|
}
|
|
345
357
|
}
|
|
346
|
-
/** Work out again every comment key worked out against another base, or none. */
|
|
347
|
-
function refreshCommentKeys(baseUrl) {
|
|
348
|
-
inTransaction(() => {
|
|
349
|
-
for (const row of statements.staleCommentKeys.all(baseUrl)) {
|
|
350
|
-
const comment = {
|
|
351
|
-
id: String(row['id']),
|
|
352
|
-
source: oneOf(row['source'], COMMENT_SOURCES, 'comment'),
|
|
353
|
-
};
|
|
354
|
-
statements.writeCommentKey.run(...commentKey(comment, baseUrl), comment.id);
|
|
355
|
-
}
|
|
356
|
-
});
|
|
357
|
-
}
|
|
358
|
-
if (options.baseUrl !== undefined)
|
|
359
|
-
refreshCommentKeys(options.baseUrl);
|
|
360
358
|
const listeners = new Set();
|
|
361
359
|
const written = (change) => {
|
|
362
360
|
for (const listener of listeners)
|
|
@@ -590,9 +588,6 @@ export function openAdminStore(options) {
|
|
|
590
588
|
listCommentsAt(url) {
|
|
591
589
|
return statements.commentsAt.all(url).map(toComment);
|
|
592
590
|
},
|
|
593
|
-
listCommentsByRepliesKey(key) {
|
|
594
|
-
return statements.commentsByRepliesKey.all(key).map(toComment);
|
|
595
|
-
},
|
|
596
591
|
listRepliesByKey(key) {
|
|
597
592
|
return statements.repliesByKey.all(key).map(toInboxActivity);
|
|
598
593
|
},
|
|
@@ -610,7 +605,7 @@ export function openAdminStore(options) {
|
|
|
610
605
|
},
|
|
611
606
|
putComment(comment) {
|
|
612
607
|
const before = statements.commentById.get(comment.id);
|
|
613
|
-
statements.putComment.run(
|
|
608
|
+
statements.putComment.run(...commentColumns(comment));
|
|
614
609
|
written({
|
|
615
610
|
kind: 'comment',
|
|
616
611
|
slug: comment.slug,
|
|
@@ -631,7 +626,7 @@ export function openAdminStore(options) {
|
|
|
631
626
|
inTransaction(() => {
|
|
632
627
|
statements.clearComments.run();
|
|
633
628
|
for (const comment of comments) {
|
|
634
|
-
statements.putComment.run(
|
|
629
|
+
statements.putComment.run(...commentColumns(comment));
|
|
635
630
|
}
|
|
636
631
|
});
|
|
637
632
|
},
|
|
@@ -901,6 +896,12 @@ function toComment(row) {
|
|
|
901
896
|
...redactedOf(row['redacted']),
|
|
902
897
|
...rsvpField(rsvpValue(row['rsvp'])),
|
|
903
898
|
...viaField(nullableText(row['via'])),
|
|
899
|
+
...importedFields({
|
|
900
|
+
migrated: Number(row['migrated'] ?? 0) === 1,
|
|
901
|
+
origin: nullableText(row['origin']),
|
|
902
|
+
user: nullableText(row['user']),
|
|
903
|
+
actor: nullableText(row['actor']),
|
|
904
|
+
}),
|
|
904
905
|
};
|
|
905
906
|
}
|
|
906
907
|
/** A comment's {@link CommentRecord.redacted} as its column holds it: JSON, or `NULL`. */
|
|
@@ -1568,7 +1569,50 @@ const MIGRATIONS = [
|
|
|
1568
1569
|
version: 25,
|
|
1569
1570
|
sql: `ALTER TABLE ap_inbox ADD COLUMN fetched INTEGER NOT NULL DEFAULT 0;`,
|
|
1570
1571
|
},
|
|
1572
|
+
{
|
|
1573
|
+
// A comment's key is its id (decision-51), so the key worked out from its
|
|
1574
|
+
// guid against the base URL has nothing left to say.
|
|
1575
|
+
version: 26,
|
|
1576
|
+
sql: `
|
|
1577
|
+
DROP INDEX comments_replies_key;
|
|
1578
|
+
ALTER TABLE comments DROP COLUMN replies_key;
|
|
1579
|
+
ALTER TABLE comments DROP COLUMN keys_base;
|
|
1580
|
+
ALTER TABLE comments ADD COLUMN migrated INTEGER NOT NULL DEFAULT 0;
|
|
1581
|
+
ALTER TABLE comments ADD COLUMN origin TEXT;
|
|
1582
|
+
ALTER TABLE comments ADD COLUMN user TEXT;
|
|
1583
|
+
ALTER TABLE comments ADD COLUMN actor TEXT;
|
|
1584
|
+
`,
|
|
1585
|
+
},
|
|
1571
1586
|
];
|
|
1587
|
+
/** A comment as the values of the comments table's columns, in the order `putComment` names them. */
|
|
1588
|
+
function commentColumns(comment) {
|
|
1589
|
+
return [
|
|
1590
|
+
comment.id,
|
|
1591
|
+
comment.slug,
|
|
1592
|
+
comment.permalink,
|
|
1593
|
+
comment.source,
|
|
1594
|
+
comment.kind,
|
|
1595
|
+
comment.status,
|
|
1596
|
+
comment.author.name,
|
|
1597
|
+
comment.author.url,
|
|
1598
|
+
comment.author.email,
|
|
1599
|
+
comment.content.markdown,
|
|
1600
|
+
comment.content.html,
|
|
1601
|
+
comment.submitted,
|
|
1602
|
+
comment.addressHash,
|
|
1603
|
+
comment.inReplyTo,
|
|
1604
|
+
comment.url,
|
|
1605
|
+
comment.author.avatar,
|
|
1606
|
+
comment.notify ? 1 : 0,
|
|
1607
|
+
redactedColumn(comment.redacted),
|
|
1608
|
+
comment.rsvp ?? null,
|
|
1609
|
+
comment.via ?? null,
|
|
1610
|
+
comment.migrated === true ? 1 : 0,
|
|
1611
|
+
comment.origin ?? null,
|
|
1612
|
+
comment.user ?? null,
|
|
1613
|
+
comment.actor ?? null,
|
|
1614
|
+
];
|
|
1615
|
+
}
|
|
1572
1616
|
/** What {@link AdminStore.onConversationWrite} hears about one logged activity. */
|
|
1573
1617
|
function activityWrite(activity) {
|
|
1574
1618
|
return {
|
|
@@ -1581,8 +1625,4 @@ function replyKeyOf(activity) {
|
|
|
1581
1625
|
const id = replyIdOf(activity);
|
|
1582
1626
|
return id === null ? null : repliesKey(id);
|
|
1583
1627
|
}
|
|
1584
|
-
/** A comment's `/replies/` key and the base it was worked out against, as columns. */
|
|
1585
|
-
function commentKey(comment, baseUrl) {
|
|
1586
|
-
return baseUrl === undefined ? [null, null] : [repliesKey(replyGuid(comment, baseUrl)), baseUrl];
|
|
1587
|
-
}
|
|
1588
1628
|
//# sourceMappingURL=store.js.map
|