@geekity/cms 0.22.0 → 0.24.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.
Files changed (227) hide show
  1. package/README.md +19 -4
  2. package/admin/pages/documents/editor.njk +18 -0
  3. package/admin/static/editor.js +1 -1
  4. package/dist/admin/comments.js +2 -2
  5. package/dist/admin/comments.js.map +1 -1
  6. package/dist/admin/documents.d.ts +36 -7
  7. package/dist/admin/documents.d.ts.map +1 -1
  8. package/dist/admin/documents.js +140 -29
  9. package/dist/admin/documents.js.map +1 -1
  10. package/dist/admin/editor-layout.d.ts +1 -1
  11. package/dist/admin/editor-layout.d.ts.map +1 -1
  12. package/dist/admin/editor-layout.js +6 -1
  13. package/dist/admin/editor-layout.js.map +1 -1
  14. package/dist/admin/event-field.d.ts +26 -0
  15. package/dist/admin/event-field.d.ts.map +1 -0
  16. package/dist/admin/event-field.js +74 -0
  17. package/dist/admin/event-field.js.map +1 -0
  18. package/dist/admin/federation.js +3 -3
  19. package/dist/admin/federation.js.map +1 -1
  20. package/dist/admin/media.js +2 -2
  21. package/dist/admin/media.js.map +1 -1
  22. package/dist/admin/preview.d.ts.map +1 -1
  23. package/dist/admin/preview.js +16 -1
  24. package/dist/admin/preview.js.map +1 -1
  25. package/dist/admin/store.d.ts +9 -0
  26. package/dist/admin/store.d.ts.map +1 -1
  27. package/dist/admin/store.js +16 -5
  28. package/dist/admin/store.js.map +1 -1
  29. package/dist/avatars/avatars.js +1 -1
  30. package/dist/avatars/avatars.js.map +1 -1
  31. package/dist/comments/policy.d.ts +10 -0
  32. package/dist/comments/policy.d.ts.map +1 -1
  33. package/dist/comments/policy.js +12 -0
  34. package/dist/comments/policy.js.map +1 -1
  35. package/dist/comments/records.d.ts +5 -1
  36. package/dist/comments/records.d.ts.map +1 -1
  37. package/dist/comments/records.js +16 -2
  38. package/dist/comments/records.js.map +1 -1
  39. package/dist/content/event.d.ts +40 -0
  40. package/dist/content/event.d.ts.map +1 -0
  41. package/dist/content/event.js +51 -0
  42. package/dist/content/event.js.map +1 -0
  43. package/dist/content/handles.d.ts +22 -0
  44. package/dist/content/handles.d.ts.map +1 -0
  45. package/dist/content/handles.js +68 -0
  46. package/dist/content/handles.js.map +1 -0
  47. package/dist/content/markdown.d.ts +8 -2
  48. package/dist/content/markdown.d.ts.map +1 -1
  49. package/dist/content/markdown.js +55 -5
  50. package/dist/content/markdown.js.map +1 -1
  51. package/dist/content/parser.d.ts +3 -0
  52. package/dist/content/parser.d.ts.map +1 -1
  53. package/dist/content/parser.js +1 -1
  54. package/dist/content/parser.js.map +1 -1
  55. package/dist/content/post-type.d.ts +12 -8
  56. package/dist/content/post-type.d.ts.map +1 -1
  57. package/dist/content/post-type.js +12 -2
  58. package/dist/content/post-type.js.map +1 -1
  59. package/dist/content/rsvp.d.ts +29 -0
  60. package/dist/content/rsvp.d.ts.map +1 -0
  61. package/dist/content/rsvp.js +49 -0
  62. package/dist/content/rsvp.js.map +1 -0
  63. package/dist/content/save.d.ts +2 -1
  64. package/dist/content/save.d.ts.map +1 -1
  65. package/dist/content/save.js +10 -3
  66. package/dist/content/save.js.map +1 -1
  67. package/dist/content/store.d.ts +11 -4
  68. package/dist/content/store.d.ts.map +1 -1
  69. package/dist/content/store.js +15 -4
  70. package/dist/content/store.js.map +1 -1
  71. package/dist/content/sync.d.ts.map +1 -1
  72. package/dist/content/sync.js +7 -6
  73. package/dist/content/sync.js.map +1 -1
  74. package/dist/env.d.ts +3 -0
  75. package/dist/env.d.ts.map +1 -1
  76. package/dist/federation/article.d.ts +9 -3
  77. package/dist/federation/article.d.ts.map +1 -1
  78. package/dist/federation/article.js +90 -34
  79. package/dist/federation/article.js.map +1 -1
  80. package/dist/federation/cited-post.d.ts +13 -0
  81. package/dist/federation/cited-post.d.ts.map +1 -0
  82. package/dist/federation/cited-post.js +75 -0
  83. package/dist/federation/cited-post.js.map +1 -0
  84. package/dist/federation/delivery.d.ts.map +1 -1
  85. package/dist/federation/delivery.js +31 -2
  86. package/dist/federation/delivery.js.map +1 -1
  87. package/dist/federation/handles.d.ts +28 -0
  88. package/dist/federation/handles.d.ts.map +1 -0
  89. package/dist/federation/handles.js +65 -0
  90. package/dist/federation/handles.js.map +1 -0
  91. package/dist/federation/inbox.d.ts +2 -1
  92. package/dist/federation/inbox.d.ts.map +1 -1
  93. package/dist/federation/inbox.js +11 -3
  94. package/dist/federation/inbox.js.map +1 -1
  95. package/dist/federation/mount.d.ts.map +1 -1
  96. package/dist/federation/mount.js +18 -2
  97. package/dist/federation/mount.js.map +1 -1
  98. package/dist/federation/profiles.d.ts.map +1 -1
  99. package/dist/federation/profiles.js +2 -8
  100. package/dist/federation/profiles.js.map +1 -1
  101. package/dist/federation/site-loaders.d.ts +15 -0
  102. package/dist/federation/site-loaders.d.ts.map +1 -0
  103. package/dist/federation/site-loaders.js +19 -0
  104. package/dist/federation/site-loaders.js.map +1 -0
  105. package/dist/index.d.ts.map +1 -1
  106. package/dist/index.js +23 -1
  107. package/dist/index.js.map +1 -1
  108. package/dist/indieauth/client.js +2 -2
  109. package/dist/indieauth/client.js.map +1 -1
  110. package/dist/micropub/create.d.ts +2 -1
  111. package/dist/micropub/create.d.ts.map +1 -1
  112. package/dist/micropub/create.js +57 -8
  113. package/dist/micropub/create.js.map +1 -1
  114. package/dist/micropub/endpoint.d.ts.map +1 -1
  115. package/dist/micropub/endpoint.js +12 -4
  116. package/dist/micropub/endpoint.js.map +1 -1
  117. package/dist/micropub/update.d.ts +3 -0
  118. package/dist/micropub/update.d.ts.map +1 -1
  119. package/dist/micropub/update.js +29 -4
  120. package/dist/micropub/update.js.map +1 -1
  121. package/dist/web/context.d.ts +32 -4
  122. package/dist/web/context.d.ts.map +1 -1
  123. package/dist/web/context.js +28 -1
  124. package/dist/web/context.js.map +1 -1
  125. package/dist/web/conversation.d.ts +26 -1
  126. package/dist/web/conversation.d.ts.map +1 -1
  127. package/dist/web/conversation.js +67 -10
  128. package/dist/web/conversation.js.map +1 -1
  129. package/dist/web/documents.d.ts +12 -0
  130. package/dist/web/documents.d.ts.map +1 -1
  131. package/dist/web/documents.js +20 -0
  132. package/dist/web/documents.js.map +1 -1
  133. package/dist/web/errors.d.ts.map +1 -1
  134. package/dist/web/errors.js +5 -3
  135. package/dist/web/errors.js.map +1 -1
  136. package/dist/web/feed-item.d.ts.map +1 -1
  137. package/dist/web/feed-item.js +8 -3
  138. package/dist/web/feed-item.js.map +1 -1
  139. package/dist/web/llms.d.ts +8 -0
  140. package/dist/web/llms.d.ts.map +1 -1
  141. package/dist/web/llms.js +25 -7
  142. package/dist/web/llms.js.map +1 -1
  143. package/dist/web/maintenance.d.ts.map +1 -1
  144. package/dist/web/maintenance.js +5 -2
  145. package/dist/web/maintenance.js.map +1 -1
  146. package/dist/web/negotiate.d.ts +4 -2
  147. package/dist/web/negotiate.d.ts.map +1 -1
  148. package/dist/web/negotiate.js +17 -7
  149. package/dist/web/negotiate.js.map +1 -1
  150. package/dist/web/render.d.ts +3 -0
  151. package/dist/web/render.d.ts.map +1 -1
  152. package/dist/web/render.js +39 -6
  153. package/dist/web/render.js.map +1 -1
  154. package/dist/web/routes.d.ts.map +1 -1
  155. package/dist/web/routes.js +67 -25
  156. package/dist/web/routes.js.map +1 -1
  157. package/dist/web/templates.d.ts +4 -1
  158. package/dist/web/templates.d.ts.map +1 -1
  159. package/dist/web/templates.js +11 -0
  160. package/dist/web/templates.js.map +1 -1
  161. package/dist/webmention/cited-picture.d.ts +11 -4
  162. package/dist/webmention/cited-picture.d.ts.map +1 -1
  163. package/dist/webmention/cited-picture.js +22 -13
  164. package/dist/webmention/cited-picture.js.map +1 -1
  165. package/dist/webmention/cited-start.d.ts +10 -0
  166. package/dist/webmention/cited-start.d.ts.map +1 -0
  167. package/dist/webmention/cited-start.js +21 -0
  168. package/dist/webmention/cited-start.js.map +1 -0
  169. package/dist/webmention/fetch-public.d.ts +2 -2
  170. package/dist/webmention/fetch-public.d.ts.map +1 -1
  171. package/dist/webmention/fetch-public.js +1 -1
  172. package/dist/webmention/fetch-public.js.map +1 -1
  173. package/dist/webmention/html.d.ts +2 -0
  174. package/dist/webmention/html.d.ts.map +1 -1
  175. package/dist/webmention/html.js +6 -0
  176. package/dist/webmention/html.js.map +1 -1
  177. package/dist/webmention/index.d.ts +2 -1
  178. package/dist/webmention/index.d.ts.map +1 -1
  179. package/dist/webmention/index.js +1 -0
  180. package/dist/webmention/index.js.map +1 -1
  181. package/dist/webmention/microformats.d.ts +25 -2
  182. package/dist/webmention/microformats.d.ts.map +1 -1
  183. package/dist/webmention/microformats.js +38 -4
  184. package/dist/webmention/microformats.js.map +1 -1
  185. package/dist/webmention/pingback.d.ts +42 -0
  186. package/dist/webmention/pingback.d.ts.map +1 -0
  187. package/dist/webmention/pingback.js +229 -0
  188. package/dist/webmention/pingback.js.map +1 -0
  189. package/dist/webmention/receive.d.ts +20 -2
  190. package/dist/webmention/receive.d.ts.map +1 -1
  191. package/dist/webmention/receive.js +25 -16
  192. package/dist/webmention/receive.js.map +1 -1
  193. package/dist/webmention/reply-context.d.ts +65 -18
  194. package/dist/webmention/reply-context.d.ts.map +1 -1
  195. package/dist/webmention/reply-context.js +403 -99
  196. package/dist/webmention/reply-context.js.map +1 -1
  197. package/dist/webmention/reply-contexts.d.ts +3 -1
  198. package/dist/webmention/reply-contexts.d.ts.map +1 -1
  199. package/dist/webmention/reply-contexts.js +53 -17
  200. package/dist/webmention/reply-contexts.js.map +1 -1
  201. package/dist/webmention/routes.d.ts.map +1 -1
  202. package/dist/webmention/routes.js +2 -0
  203. package/dist/webmention/routes.js.map +1 -1
  204. package/dist/webmention/service.d.ts +11 -0
  205. package/dist/webmention/service.d.ts.map +1 -1
  206. package/dist/webmention/service.js +27 -6
  207. package/dist/webmention/service.js.map +1 -1
  208. package/dist/webmention/syndication.d.ts +6 -0
  209. package/dist/webmention/syndication.d.ts.map +1 -1
  210. package/dist/webmention/syndication.js +12 -0
  211. package/dist/webmention/syndication.js.map +1 -1
  212. package/package.json +7 -7
  213. package/themes/default/README.md +127 -37
  214. package/themes/default/layouts/410.njk +10 -0
  215. package/themes/default/layouts/base.njk +3 -0
  216. package/themes/default/layouts/page.njk +7 -0
  217. package/themes/default/layouts/post.njk +7 -4
  218. package/themes/default/layouts/search.njk +1 -1
  219. package/themes/default/partials/cited-page.njk +7 -0
  220. package/themes/default/partials/conversation.njk +25 -5
  221. package/themes/default/partials/event.njk +27 -0
  222. package/themes/default/partials/jsonld.njk +28 -0
  223. package/themes/default/partials/post-list.njk +5 -2
  224. package/themes/default/partials/reply-context.njk +24 -4
  225. package/themes/default/partials/rsvp.njk +7 -0
  226. package/themes/default/src/style.css +20 -0
  227. package/themes/default/static/style.css +35 -0
@@ -1,8 +1,11 @@
1
1
  import { formFor } from '../admin/documents.js';
2
+ import { eventFrontMatter } from '../admin/event-field.js';
2
3
  import { photoRows } from '../admin/photo-field.js';
3
4
  import { citationsOf } from '../content/citation.js';
5
+ import { eventOf } from '../content/event.js';
4
6
  import { locationToMicropub } from '../content/location.js';
5
7
  import { readOf } from '../content/read.js';
8
+ import { rsvpOf } from '../content/rsvp.js';
6
9
  import { visibilityOf } from '../content/visibility.js';
7
10
  import { absoluteUrl } from '../web/negotiate.js';
8
11
  import { syndicateToOf } from '../webmention/syndication.js';
@@ -19,6 +22,7 @@ const UPDATABLE = {
19
22
  summary: ['description'],
20
23
  category: ['tags'],
21
24
  'in-reply-to': ['inReplyTo'],
25
+ rsvp: ['rsvp'],
22
26
  'repost-of': ['repostOf'],
23
27
  'like-of': ['likeOf'],
24
28
  'bookmark-of': ['bookmarkOf'],
@@ -32,7 +36,19 @@ const UPDATABLE = {
32
36
  location: ['location'],
33
37
  checkin: ['location'],
34
38
  'mp-syndicate-to': ['syndicateTo'],
39
+ start: ['event'],
40
+ end: ['event'],
35
41
  };
42
+ const UPDATABLE_BY_TYPE = {
43
+ 'h-entry': UPDATABLE,
44
+ 'h-event': { ...UPDATABLE, location: ['event'] },
45
+ };
46
+ const EVENT_FIELD_PROPERTIES = Object.entries(UPDATABLE_BY_TYPE['h-event'])
47
+ .filter(([, fields]) => fields.includes('event'))
48
+ .map(([property]) => property);
49
+ export function micropubType(document) {
50
+ return eventOf(document.extra) === undefined ? 'h-entry' : 'h-event';
51
+ }
36
52
  /**
37
53
  * A post's properties as `q=source` answers them: the create mapping
38
54
  * (decision-27) read backwards, so a client can send them back as they came.
@@ -49,11 +65,17 @@ export function sourceProperties(document, site) {
49
65
  properties[name] = [value];
50
66
  };
51
67
  text('name', document.title);
68
+ const event = eventOf(document.extra);
69
+ if (event !== undefined) {
70
+ for (const [name, value] of Object.entries(eventFrontMatter(event)))
71
+ text(name, value);
72
+ }
52
73
  text('content', document.body.trim());
53
74
  text('summary', document.description);
54
75
  if (document.tags.length > 0)
55
76
  properties['category'] = [...document.tags];
56
77
  text('in-reply-to', document.inReplyTo);
78
+ text('rsvp', rsvpOf(document.extra));
57
79
  for (const { property, url } of citationsOf(document.extra))
58
80
  text(property, url);
59
81
  const read = readOf(document.extra);
@@ -74,7 +96,7 @@ export function sourceProperties(document, site) {
74
96
  if (photos.length > 0)
75
97
  properties['photo'] = photos;
76
98
  const authorLocation = site.locations.read(document.permalink);
77
- if (authorLocation !== undefined) {
99
+ if (authorLocation !== undefined && (event === undefined || authorLocation.checkin === true)) {
78
100
  properties[authorLocation.checkin === true ? 'checkin' : 'location'] = [
79
101
  locationToMicropub(authorLocation),
80
102
  ];
@@ -139,14 +161,17 @@ export function updateForm(document, given, site) {
139
161
  const unknown = touched.filter((property) => !(property in UPDATABLE) && !keptPrivately(property));
140
162
  if (unknown.length > 0)
141
163
  return { errors: [`This endpoint cannot update ${unknown.join(', ')}.`] };
164
+ const type = micropubType(document);
165
+ const updatable = UPDATABLE_BY_TYPE[type];
166
+ const sourced = type === 'h-event' ? [...new Set([...touched, ...EVENT_FIELD_PROPERTIES])] : touched;
142
167
  const source = sourceProperties(document, site);
143
- const properties = new Map(touched.map((property) => [property, source[property] ?? []]));
168
+ const properties = new Map(sourced.map((property) => [property, source[property] ?? []]));
144
169
  for (const change of changes) {
145
170
  const current = properties.get(change.property) ?? [];
146
171
  properties.set(change.property, changed(current, change));
147
172
  }
148
173
  const mapped = new Map([...properties].filter(([name]) => !keptPrivately(name)));
149
- const created = createForm({ type: 'h-entry', properties: mapped }, { ...site, author: document.author ?? '' });
174
+ const created = createForm({ type, properties: mapped }, { ...site, author: document.author ?? '' });
150
175
  if ('errors' in created)
151
176
  return created;
152
177
  let keptProperties;
@@ -159,7 +184,7 @@ export function updateForm(document, given, site) {
159
184
  }
160
185
  const form = formFor(document, site.timezone, site.locations.read(document.permalink));
161
186
  for (const property of touched) {
162
- for (const field of UPDATABLE[property] ?? []) {
187
+ for (const field of updatable[property] ?? []) {
163
188
  Object.assign(form, { [field]: created.form[field] });
164
189
  }
165
190
  }
@@ -1 +1 @@
1
- {"version":3,"file":"update.js","sourceRoot":"","sources":["../../src/micropub/update.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../../src/micropub/update.ts"],"names":[],"mappings":"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"}
@@ -2,8 +2,10 @@ import type { ResolvedConfig } from '../config.ts';
2
2
  import type { Document } from '../content/document.ts';
3
3
  import type { Enclosure, Transcript } from '../content/enclosure.ts';
4
4
  import type { SharedLocation } from '../content/location.ts';
5
- import type { CitedPicture } from '../webmention/cited-picture.ts';
5
+ import type { CitedImage, CitedPicture } from '../webmention/cited-picture.ts';
6
6
  import type { Citation, CitedPageReader } from '../content/citation.ts';
7
+ import type { EventLocation } from '../content/event.ts';
8
+ import type { RsvpValue } from '../content/rsvp.ts';
7
9
  import type { ReadOf, ReadStatus } from '../content/read.ts';
8
10
  import type { PostType } from '../content/post-type.ts';
9
11
  import type { ImageLoading } from '../images/markup.ts';
@@ -134,9 +136,9 @@ export interface DocumentContext {
134
136
  /** Display title. Empty for an untitled post. */
135
137
  title: string;
136
138
  /**
137
- * `repost`, `like`, `reply`, `photo`, `read`, `bookmark`, `note` or `article`,
138
- * discovered from the front matter, the title and the body (Post Type
139
- * Discovery) on every render rather than read from the file.
139
+ * `event`, `rsvp`, `repost`, `like`, `reply`, `photo`, `read`, `bookmark`,
140
+ * `note` or `article`, discovered from the front matter, the title and the
141
+ * body (Post Type Discovery) on every render rather than read from the file.
140
142
  */
141
143
  postType: PostType;
142
144
  /**
@@ -148,6 +150,27 @@ export interface DocumentContext {
148
150
  named: boolean;
149
151
  /** The URL a reply answers, present only on a reply. */
150
152
  inReplyTo?: string | undefined;
153
+ /**
154
+ * What an RSVP says (TASK-198): its `rsvp` value, the words for it, and
155
+ * `line`, the `p-rsvp` as the HTML its content opens with. Present only on
156
+ * a post whose front matter names one of the four values.
157
+ */
158
+ rsvp?: {
159
+ value: RsvpValue;
160
+ label: string;
161
+ line: string;
162
+ } | undefined;
163
+ /**
164
+ * When and where an event is (TASK-200): `start` and, when it has one,
165
+ * `end`, as instants a theme formats in the site's zone, and `location`,
166
+ * either `{ kind: 'place', name }` or `{ kind: 'virtual', url }`. Present
167
+ * only on a post whose front matter has a readable `start`.
168
+ */
169
+ event?: {
170
+ start: Date;
171
+ end?: Date;
172
+ location?: EventLocation;
173
+ } | undefined;
151
174
  /**
152
175
  * What the post reposts, likes or bookmarks (TASK-169): each valid
153
176
  * `repost-of`, `like-of` and `bookmark-of`, as its property and its URL, in
@@ -396,6 +419,11 @@ export declare function taxonomyBases(site: SiteData): TaxonomyBases;
396
419
  * may have written the key by hand.
397
420
  */
398
421
  export declare function termRedirects(site: SiteData): TaxonomyRedirect[];
422
+ export interface CitedPhotoContext extends CitedImage {
423
+ readonly imgHtml: string;
424
+ }
425
+ /** A cited author's photo, beside their name: decorative, since the name says who it is. */
426
+ export declare function citedPhotoContext(photo: CitedImage, images: ImageConfig): CitedPhotoContext;
399
427
  export interface CitedPictureContext extends CitedPicture {
400
428
  readonly shownInFull: boolean;
401
429
  readonly imgHtml: string;
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/web/context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/web/context.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,8 @@ import { photoAlt, photosOf } from '../content/photo.js';
5
5
  import { citationsOf } from '../content/citation.js';
6
6
  import { shownInFull } from '../webmention/cited-picture.js';
7
7
  import { READ_STATUS_LABELS, readLine, readOf, uidLabel } from '../content/read.js';
8
+ import { eventOf } from '../content/event.js';
9
+ import { RSVP_LABELS, rsvpLine, rsvpOf } from '../content/rsvp.js';
8
10
  import { postLabel, postTypeOf, replyTarget, showsTitle } from '../content/post-type.js';
9
11
  import { DEFAULT_TIMEZONE } from '../content/time.js';
10
12
  import { readAltTexts } from '../images/alt-text.js';
@@ -72,8 +74,9 @@ export function syndicationLinks(urls) {
72
74
  export function documentContext(document, images, author, loading, cited) {
73
75
  const date = toDate(document.date);
74
76
  const photos = photoContexts(document, images, loading);
77
+ const { location: _frontMatterLocation, ...extra } = document.extra;
75
78
  return {
76
- ...document.extra,
79
+ ...extra,
77
80
  permalink: document.permalink,
78
81
  slug: document.slug,
79
82
  draft: document.draft,
@@ -85,6 +88,8 @@ export function documentContext(document, images, author, loading, cited) {
85
88
  postType: postTypeOf(document),
86
89
  named: showsTitle(document),
87
90
  ...optional('inReplyTo', replyTarget(document)),
91
+ rsvp: rsvpContext(document),
92
+ event: eventContext(document),
88
93
  citations: citationsOf(document.extra),
89
94
  read: readContext(document),
90
95
  // Over the raw front-matter value the spread above put here.
@@ -289,6 +294,12 @@ function photoContexts(document, images, loading) {
289
294
  return { url: photo.url, alt, html };
290
295
  });
291
296
  }
297
+ /** A cited author's photo, beside their name: decorative, since the name says who it is. */
298
+ export function citedPhotoContext(photo, images) {
299
+ const tag = `<img class="u-photo cite-avatar" src="${escapeAttribute(photo.src)}" alt=""` +
300
+ ` width="${String(photo.width)}" height="${String(photo.height)}" loading="lazy" decoding="async">`;
301
+ return { ...photo, imgHtml: siteImageMarkup(images, tag) };
302
+ }
292
303
  export function citedPictureContext(picture, property, alt, images) {
293
304
  const tag = `<img class="u-photo" src="${escapeAttribute(picture.src)}" alt="${escapeAttribute(alt)}"` +
294
305
  ` width="${String(picture.width)}" height="${String(picture.height)}" loading="lazy" decoding="async">`;
@@ -318,6 +329,22 @@ function enclosureContext(document) {
318
329
  : { transcript: { ...transcript, captions: isCaptions(transcript) } }),
319
330
  };
320
331
  }
332
+ function rsvpContext(document) {
333
+ const value = rsvpOf(document.extra);
334
+ if (value === undefined)
335
+ return undefined;
336
+ return { value, label: RSVP_LABELS[value], line: rsvpLine(value) };
337
+ }
338
+ function eventContext(document) {
339
+ const event = eventOf(document.extra);
340
+ if (event === undefined)
341
+ return undefined;
342
+ return {
343
+ start: new Date(event.start),
344
+ ...(event.end === undefined ? {} : { end: new Date(event.end) }),
345
+ ...(event.location === undefined ? {} : { location: event.location }),
346
+ };
347
+ }
321
348
  function readContext(document) {
322
349
  const read = readOf(document.extra);
323
350
  if (read === undefined)
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/web/context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/web/context.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import type { AdminStore } from '../admin/store.ts';
2
2
  import type { Document } from '../content/document.ts';
3
3
  import type { CitedPageReader } from '../content/citation.ts';
4
+ import type { RsvpValue } from '../content/rsvp.ts';
4
5
  import type { ContentStore } from '../content/store.ts';
5
6
  import type { FeedComment } from './feeds.ts';
6
7
  /**
@@ -93,6 +94,15 @@ export interface Interaction {
93
94
  readonly status: InteractionStatus;
94
95
  /** The replies to this one, oldest first. */
95
96
  readonly replies: Interaction[];
97
+ /**
98
+ * What a reply that is an RSVP says (TASK-198): its `rsvp` value and the
99
+ * words for it. A webmention carries one, and so does a fediverse answer
100
+ * to an event (TASK-200).
101
+ */
102
+ readonly rsvp?: {
103
+ readonly value: RsvpValue;
104
+ readonly label: string;
105
+ };
96
106
  }
97
107
  /** How many of each a conversation holds. */
98
108
  export interface InteractionCounts {
@@ -104,7 +114,9 @@ export interface InteractionCounts {
104
114
  readonly boosts: number;
105
115
  /** Mentions: pages that linked to this one without answering it. */
106
116
  readonly mentions: number;
107
- /** All four added up: zero is what "no conversation" means. */
117
+ /** RSVPs to an event, one per person, in every group. */
118
+ readonly rsvps: number;
119
+ /** All of them added up: zero is what "no conversation" means. */
108
120
  readonly total: number;
109
121
  }
110
122
  /** Everything under one post. */
@@ -117,9 +129,22 @@ export interface Conversation {
117
129
  readonly boosts: Interaction[];
118
130
  /** The pages that linked here without answering, oldest first. */
119
131
  readonly mentions: Interaction[];
132
+ /**
133
+ * The answers to an event (TASK-200), grouped as going, maybe, interested
134
+ * and not going, each group oldest first and only when it has somebody in
135
+ * it. Empty on a post that is no event.
136
+ */
137
+ readonly rsvps: RsvpGroup[];
120
138
  /** How many of each. */
121
139
  readonly counts: InteractionCounts;
122
140
  }
141
+ /** Everybody who gave an event one answer. */
142
+ export interface RsvpGroup {
143
+ readonly value: RsvpValue;
144
+ readonly label: string;
145
+ /** Each person's latest answer, oldest first, each an RSVP interaction. */
146
+ readonly people: Interaction[];
147
+ }
123
148
  /** One interaction with the post it is about, which a site-wide list needs. */
124
149
  export interface SiteInteraction extends Interaction {
125
150
  /** The post it answers. */
@@ -1 +1 @@
1
- {"version":3,"file":"conversation.d.ts","sourceRoot":"","sources":["../../src/web/conversation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"conversation.d.ts","sourceRoot":"","sources":["../../src/web/conversation.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,17 @@
1
1
  import { avatarHref } from '../avatars/avatars.js';
2
- import { postLabel } from '../content/post-type.js';
2
+ import { postLabel, postTypeOf } from '../content/post-type.js';
3
+ import { RSVP_LABELS } from '../content/rsvp.js';
3
4
  import { readAllQuoteAuthorizations } from '../federation/quotes.js';
4
5
  import { actorHandle, guessedName, quoteFrom, replyFrom, REPLY_ACTIVITY_TYPE, } from '../federation/replies.js';
5
6
  import { activityStreamsId, isListed, permalinkOfObjectId } from './documents.js';
6
7
  import { absoluteUrl } from './negotiate.js';
7
8
  import { sanitizeCommentHtml } from './sanitize.js';
9
+ const RSVP_GROUP_ORDER = ['yes', 'maybe', 'interested', 'no'];
10
+ const RSVP_ACTIVITIES = {
11
+ Accept: 'yes',
12
+ TentativeAccept: 'maybe',
13
+ Reject: 'no',
14
+ };
8
15
  /**
9
16
  * The reader over one site's two indexes.
10
17
  *
@@ -26,7 +33,8 @@ const NOTHING = {
26
33
  likes: [],
27
34
  boosts: [],
28
35
  mentions: [],
29
- counts: { replies: 0, likes: 0, boosts: 0, mentions: 0, total: 0 },
36
+ rsvps: [],
37
+ counts: { replies: 0, likes: 0, boosts: 0, mentions: 0, rsvps: 0, total: 0 },
30
38
  };
31
39
  /**
32
40
  * The conversation under one post: everything said about it, from every source
@@ -55,8 +63,32 @@ function postConversation(context, document) {
55
63
  const likes = [];
56
64
  const boosts = [];
57
65
  const mentions = [...quotes];
66
+ const answers = [];
58
67
  const reacted = new Set();
68
+ const isEvent = postTypeOf(document) === 'event';
59
69
  for (const activity of activities) {
70
+ const answer = isEvent ? RSVP_ACTIVITIES[activity.activityType] : undefined;
71
+ if (answer !== undefined) {
72
+ if (activity.objectId !== objectId)
73
+ continue;
74
+ if (activity.activityId !== null && withdrawn.has(activity.activityId))
75
+ continue;
76
+ const author = naming(activity.actorId);
77
+ answers.push({
78
+ id: activity.activityId ?? `${activity.actorId}#rsvp`,
79
+ source: 'activitypub',
80
+ kind: 'reply',
81
+ author,
82
+ url: author.url,
83
+ content: '',
84
+ published: new Date(activity.receivedAt),
85
+ inReplyTo: null,
86
+ status: 'published',
87
+ replies: [],
88
+ rsvp: { value: answer, label: RSVP_LABELS[answer] },
89
+ });
90
+ continue;
91
+ }
60
92
  const kind = REACTIONS[activity.activityType];
61
93
  if (kind !== undefined) {
62
94
  // Only a reaction to the post itself: a like of one of the replies
@@ -95,13 +127,15 @@ function postConversation(context, document) {
95
127
  // A repost joins the boosts, because a reader looking at the page is being
96
128
  // told the same thing by both; a mention is its own group, because it is
97
129
  // neither an answer nor a reaction.
98
- const group = comment.kind === 'reply'
99
- ? written
100
- : comment.kind === 'like'
101
- ? likes
102
- : comment.kind === 'mention'
103
- ? mentions
104
- : boosts;
130
+ const group = isEvent && comment.rsvp !== undefined
131
+ ? answers
132
+ : comment.kind === 'reply'
133
+ ? written
134
+ : comment.kind === 'like'
135
+ ? likes
136
+ : comment.kind === 'mention'
137
+ ? mentions
138
+ : boosts;
105
139
  group.push({ ...comment, replies: [] });
106
140
  }
107
141
  // Sorted before threading rather than after, because a thread is built by
@@ -115,20 +149,40 @@ function postConversation(context, document) {
115
149
  boosts.sort(byPublished);
116
150
  mentions.sort(byPublished);
117
151
  const counted = countReplies(replies);
152
+ const rsvps = rsvpGroups(answers);
153
+ const answered = rsvps.reduce((sum, group) => sum + group.people.length, 0);
118
154
  return {
119
155
  replies,
120
156
  likes,
121
157
  boosts,
122
158
  mentions,
159
+ rsvps,
123
160
  counts: {
124
161
  replies: counted,
125
162
  likes: likes.length,
126
163
  boosts: boosts.length,
127
164
  mentions: mentions.length,
128
- total: counted + likes.length + boosts.length + mentions.length,
165
+ rsvps: answered,
166
+ total: counted + likes.length + boosts.length + mentions.length + answered,
129
167
  },
130
168
  };
131
169
  }
170
+ function rsvpGroups(answers) {
171
+ const people = latestAnswerPerPerson(answers);
172
+ return RSVP_GROUP_ORDER.map((value) => ({
173
+ value,
174
+ label: RSVP_LABELS[value],
175
+ people: people.filter((person) => person.rsvp?.value === value),
176
+ })).filter((group) => group.people.length > 0);
177
+ }
178
+ function latestAnswerPerPerson(answers) {
179
+ const latest = new Map();
180
+ for (const answer of [...answers].sort(byPublished)) {
181
+ const { author } = answer;
182
+ latest.set(author.actorId ?? author.url ?? answer.id, answer);
183
+ }
184
+ return [...latest.values()].sort(byPublished);
185
+ }
132
186
  /**
133
187
  * The whole site's latest answers, newest first, each with its post.
134
188
  *
@@ -303,6 +357,9 @@ function interactionOf(comment, permalink) {
303
357
  inReplyTo: comment.inReplyTo,
304
358
  status: comment.status,
305
359
  replies: [],
360
+ ...(comment.rsvp === undefined
361
+ ? {}
362
+ : { rsvp: { value: comment.rsvp, label: RSVP_LABELS[comment.rsvp] } }),
306
363
  };
307
364
  }
308
365
  /**