@geekity/cms 0.36.1 → 0.38.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 (214) hide show
  1. package/admin/components/admin-bar.njk +1 -2
  2. package/admin/components/blocks.njk +250 -0
  3. package/admin/components/card.njk +8 -4
  4. package/admin/layouts/base.njk +1 -1
  5. package/admin/pages/comments/all.njk +1 -1
  6. package/admin/pages/dashboard/home.njk +33 -32
  7. package/admin/pages/documents/editor.njk +6 -6
  8. package/admin/pages/federation/followers.njk +2 -2
  9. package/admin/pages/media/file.njk +1 -1
  10. package/admin/pages/media/library.njk +4 -4
  11. package/admin/pages/plugins/add.njk +46 -0
  12. package/admin/pages/plugins/installed.njk +5 -32
  13. package/admin/pages/plugins/screen.njk +5 -35
  14. package/admin/pages/settings/general.njk +1 -1
  15. package/admin/pages/tools/export.njk +1 -1
  16. package/admin/pages/tools/maintenance.njk +1 -1
  17. package/admin/pages/users/edit.njk +1 -1
  18. package/admin/static/admin.css +300 -0
  19. package/dist/admin/admin-bar.js +1 -2
  20. package/dist/admin/admin-bar.js.map +1 -1
  21. package/dist/admin/blocks.d.ts +133 -0
  22. package/dist/admin/blocks.d.ts.map +1 -0
  23. package/dist/admin/blocks.js +454 -0
  24. package/dist/admin/blocks.js.map +1 -0
  25. package/dist/admin/core-widgets.d.ts +3 -0
  26. package/dist/admin/core-widgets.d.ts.map +1 -0
  27. package/dist/admin/core-widgets.js +17 -0
  28. package/dist/admin/core-widgets.js.map +1 -0
  29. package/dist/admin/engagement.d.ts +16 -0
  30. package/dist/admin/engagement.d.ts.map +1 -0
  31. package/dist/admin/engagement.js +38 -0
  32. package/dist/admin/engagement.js.map +1 -0
  33. package/dist/admin/federation.d.ts +2 -0
  34. package/dist/admin/federation.d.ts.map +1 -1
  35. package/dist/admin/federation.js +2 -1
  36. package/dist/admin/federation.js.map +1 -1
  37. package/dist/admin/formatting.d.ts +1 -0
  38. package/dist/admin/formatting.d.ts.map +1 -1
  39. package/dist/admin/formatting.js +18 -0
  40. package/dist/admin/formatting.js.map +1 -1
  41. package/dist/admin/index.d.ts +1 -1
  42. package/dist/admin/index.d.ts.map +1 -1
  43. package/dist/admin/index.js +1 -1
  44. package/dist/admin/index.js.map +1 -1
  45. package/dist/admin/plugins.d.ts.map +1 -1
  46. package/dist/admin/plugins.js +27 -13
  47. package/dist/admin/plugins.js.map +1 -1
  48. package/dist/admin/posts-by-path.d.ts +11 -0
  49. package/dist/admin/posts-by-path.d.ts.map +1 -0
  50. package/dist/admin/posts-by-path.js +59 -0
  51. package/dist/admin/posts-by-path.js.map +1 -0
  52. package/dist/admin/routes.d.ts +0 -2
  53. package/dist/admin/routes.d.ts.map +1 -1
  54. package/dist/admin/routes.js +23 -13
  55. package/dist/admin/routes.js.map +1 -1
  56. package/dist/admin/templates.d.ts +6 -0
  57. package/dist/admin/templates.d.ts.map +1 -1
  58. package/dist/admin/templates.js +14 -0
  59. package/dist/admin/templates.js.map +1 -1
  60. package/dist/admin/tools.js +1 -1
  61. package/dist/admin/tools.js.map +1 -1
  62. package/dist/admin/widget-fediverse.d.ts +3 -0
  63. package/dist/admin/widget-fediverse.d.ts.map +1 -0
  64. package/dist/admin/widget-fediverse.js +49 -0
  65. package/dist/admin/widget-fediverse.js.map +1 -0
  66. package/dist/admin/widget-followers.d.ts +3 -0
  67. package/dist/admin/widget-followers.d.ts.map +1 -0
  68. package/dist/admin/widget-followers.js +37 -0
  69. package/dist/admin/widget-followers.js.map +1 -0
  70. package/dist/admin/widget-health.d.ts +3 -0
  71. package/dist/admin/widget-health.d.ts.map +1 -0
  72. package/dist/admin/widget-health.js +103 -0
  73. package/dist/admin/widget-health.js.map +1 -0
  74. package/dist/admin/widget-interactions.d.ts +4 -0
  75. package/dist/admin/widget-interactions.d.ts.map +1 -0
  76. package/dist/admin/widget-interactions.js +99 -0
  77. package/dist/admin/widget-interactions.js.map +1 -0
  78. package/dist/admin/widget-posting.d.ts +3 -0
  79. package/dist/admin/widget-posting.d.ts.map +1 -0
  80. package/dist/admin/widget-posting.js +111 -0
  81. package/dist/admin/widget-posting.js.map +1 -0
  82. package/dist/admin/widget-scheduled.d.ts +4 -0
  83. package/dist/admin/widget-scheduled.d.ts.map +1 -0
  84. package/dist/admin/widget-scheduled.js +30 -0
  85. package/dist/admin/widget-scheduled.js.map +1 -0
  86. package/dist/admin/widget-top-posts.d.ts +4 -0
  87. package/dist/admin/widget-top-posts.d.ts.map +1 -0
  88. package/dist/admin/widget-top-posts.js +55 -0
  89. package/dist/admin/widget-top-posts.js.map +1 -0
  90. package/dist/admin/widgets.d.ts +35 -0
  91. package/dist/admin/widgets.d.ts.map +1 -0
  92. package/dist/admin/widgets.js +103 -0
  93. package/dist/admin/widgets.js.map +1 -0
  94. package/dist/cms/app.d.ts.map +1 -1
  95. package/dist/cms/app.js +2 -1
  96. package/dist/cms/app.js.map +1 -1
  97. package/dist/cms/boot.d.ts.map +1 -1
  98. package/dist/cms/boot.js +3 -2
  99. package/dist/cms/boot.js.map +1 -1
  100. package/dist/cms/server-error.d.ts.map +1 -1
  101. package/dist/cms/server-error.js +1 -2
  102. package/dist/cms/server-error.js.map +1 -1
  103. package/dist/cms/services.d.ts.map +1 -1
  104. package/dist/cms/services.js +19 -0
  105. package/dist/cms/services.js.map +1 -1
  106. package/dist/content/alt-text.d.ts +1 -0
  107. package/dist/content/alt-text.d.ts.map +1 -1
  108. package/dist/content/alt-text.js +26 -1
  109. package/dist/content/alt-text.js.map +1 -1
  110. package/dist/content/sqlite/catalog.d.ts.map +1 -1
  111. package/dist/content/sqlite/catalog.js +15 -2
  112. package/dist/content/sqlite/catalog.js.map +1 -1
  113. package/dist/content/store.d.ts +10 -0
  114. package/dist/content/store.d.ts.map +1 -1
  115. package/dist/content/store.js.map +1 -1
  116. package/dist/content/write.d.ts.map +1 -1
  117. package/dist/content/write.js +3 -1
  118. package/dist/content/write.js.map +1 -1
  119. package/dist/federation/backfill.d.ts +1 -1
  120. package/dist/federation/backfill.d.ts.map +1 -1
  121. package/dist/federation/backfill.js +5 -1
  122. package/dist/federation/backfill.js.map +1 -1
  123. package/dist/federation/follower-history.d.ts +16 -0
  124. package/dist/federation/follower-history.d.ts.map +1 -0
  125. package/dist/federation/follower-history.js +61 -0
  126. package/dist/federation/follower-history.js.map +1 -0
  127. package/dist/federation/inbox.d.ts.map +1 -1
  128. package/dist/federation/inbox.js +2 -1
  129. package/dist/federation/inbox.js.map +1 -1
  130. package/dist/federation/records.d.ts +1 -0
  131. package/dist/federation/records.d.ts.map +1 -1
  132. package/dist/federation/records.js +24 -6
  133. package/dist/federation/records.js.map +1 -1
  134. package/dist/files/data-files.d.ts +1 -0
  135. package/dist/files/data-files.d.ts.map +1 -1
  136. package/dist/files/data-files.js +6 -0
  137. package/dist/files/data-files.js.map +1 -1
  138. package/dist/jobs/queue.d.ts.map +1 -1
  139. package/dist/jobs/queue.js +5 -0
  140. package/dist/jobs/queue.js.map +1 -1
  141. package/dist/jobs/types.d.ts +7 -0
  142. package/dist/jobs/types.d.ts.map +1 -1
  143. package/dist/jobs/types.js.map +1 -1
  144. package/dist/plugin.d.ts +275 -21
  145. package/dist/plugin.d.ts.map +1 -1
  146. package/dist/plugin.js +9 -8
  147. package/dist/plugin.js.map +1 -1
  148. package/dist/plugins/fetch.d.ts +0 -5
  149. package/dist/plugins/fetch.d.ts.map +1 -1
  150. package/dist/plugins/fetch.js +31 -7
  151. package/dist/plugins/fetch.js.map +1 -1
  152. package/dist/plugins/host-api.d.ts +3 -0
  153. package/dist/plugins/host-api.d.ts.map +1 -0
  154. package/dist/plugins/host-api.js +8 -0
  155. package/dist/plugins/host-api.js.map +1 -0
  156. package/dist/plugins/install.d.ts.map +1 -1
  157. package/dist/plugins/install.js +4 -2
  158. package/dist/plugins/install.js.map +1 -1
  159. package/dist/plugins/page-tags.d.ts +8 -0
  160. package/dist/plugins/page-tags.d.ts.map +1 -0
  161. package/dist/plugins/page-tags.js +73 -0
  162. package/dist/plugins/page-tags.js.map +1 -0
  163. package/dist/plugins/registry.d.ts +4 -1
  164. package/dist/plugins/registry.d.ts.map +1 -1
  165. package/dist/plugins/registry.js +50 -9
  166. package/dist/plugins/registry.js.map +1 -1
  167. package/dist/plugins/site.js +1 -1
  168. package/dist/plugins/site.js.map +1 -1
  169. package/dist/store/admin-store.d.ts +2 -2
  170. package/dist/store/admin-store.d.ts.map +1 -1
  171. package/dist/store/admin-store.js.map +1 -1
  172. package/dist/store/comments.d.ts +7 -0
  173. package/dist/store/comments.d.ts.map +1 -1
  174. package/dist/store/comments.js +21 -0
  175. package/dist/store/comments.js.map +1 -1
  176. package/dist/store/deliveries.d.ts +1 -0
  177. package/dist/store/deliveries.d.ts.map +1 -1
  178. package/dist/store/deliveries.js +6 -0
  179. package/dist/store/deliveries.js.map +1 -1
  180. package/dist/store/inbox.d.ts +16 -0
  181. package/dist/store/inbox.d.ts.map +1 -1
  182. package/dist/store/inbox.js +62 -0
  183. package/dist/store/inbox.js.map +1 -1
  184. package/dist/store/queue-database.d.ts +6 -0
  185. package/dist/store/queue-database.d.ts.map +1 -1
  186. package/dist/store/queue-database.js +16 -1
  187. package/dist/store/queue-database.js.map +1 -1
  188. package/dist/store/webmentions.d.ts +1 -0
  189. package/dist/store/webmentions.d.ts.map +1 -1
  190. package/dist/store/webmentions.js +6 -0
  191. package/dist/store/webmentions.js.map +1 -1
  192. package/dist/web/env.d.ts +3 -0
  193. package/dist/web/env.d.ts.map +1 -1
  194. package/dist/web/feed-item.d.ts +4 -3
  195. package/dist/web/feed-item.d.ts.map +1 -1
  196. package/dist/web/feed-item.js +8 -2
  197. package/dist/web/feed-item.js.map +1 -1
  198. package/dist/web/listing-pages.d.ts.map +1 -1
  199. package/dist/web/listing-pages.js +7 -2
  200. package/dist/web/listing-pages.js.map +1 -1
  201. package/dist/web/page-tags.d.ts +4 -0
  202. package/dist/web/page-tags.d.ts.map +1 -0
  203. package/dist/web/page-tags.js +39 -0
  204. package/dist/web/page-tags.js.map +1 -0
  205. package/dist/web/render.d.ts +2 -0
  206. package/dist/web/render.d.ts.map +1 -1
  207. package/dist/web/render.js +14 -0
  208. package/dist/web/render.js.map +1 -1
  209. package/dist/web/routes.d.ts +2 -1
  210. package/dist/web/routes.d.ts.map +1 -1
  211. package/dist/web/routes.js +3 -1
  212. package/dist/web/routes.js.map +1 -1
  213. package/package.json +12 -12
  214. package/themes/default/layouts/base.njk +6 -4
@@ -1 +1 @@
1
- {"version":3,"file":"routes.js","sourceRoot":"","sources":["../../src/admin/routes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"routes.js","sourceRoot":"","sources":["../../src/admin/routes.ts"],"names":[],"mappings":"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"}
@@ -47,6 +47,7 @@ export declare const ADMIN_TEMPLATES: {
47
47
  readonly mediaFile: 'pages/media/file.njk';
48
48
  readonly themes: 'pages/appearance/themes.njk';
49
49
  readonly plugins: 'pages/plugins/installed.njk';
50
+ readonly pluginAdd: 'pages/plugins/add.njk';
50
51
  readonly pluginScreen: 'pages/plugins/screen.njk';
51
52
  readonly pluginConfirm: 'pages/plugins/confirm.njk';
52
53
  readonly comments: 'pages/comments/all.njk';
@@ -75,6 +76,11 @@ export declare const ADMIN_TEMPLATES: {
75
76
  readonly serverError: 'pages/error.njk';
76
77
  readonly publicAdminBar: 'components/public-admin-bar.njk';
77
78
  };
79
+ /**
80
+ * The query names the running CMS version, so an upgrade changes every URL and
81
+ * a browser does not keep the last release's file for the hour it may cache it.
82
+ */
83
+ export declare function adminAssetUrl(name: string): string;
78
84
  /** How to build an {@link createAdminTemplateEnvironment}. */
79
85
  export interface CreateAdminTemplateEnvironmentOptions {
80
86
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../../src/admin/templates.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAoB,MAAM,UAAU,CAAC;AAKzD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,kBAAkB,EAAE,MAAgE,CAAC;AAElG;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe;aAC1B,KAAK,EAAE,yBAAyB;aAChC,KAAK,EAAE,yBAAyB;aAChC,MAAM,EAAE,0BAA0B;aAClC,KAAK,EAAE,yBAAyB;aAChC,SAAS,EAAE,0BAA0B;aACrC,WAAW,EAAE,uBAAuB;aACpC,YAAY,EAAE,0BAA0B;aACxC,eAAe,EAAE,6BAA6B;aAC9C,cAAc,EAAE,4BAA4B;aAC5C,gBAAgB,EAAE,8BAA8B;aAChD,QAAQ,EAAE,8BAA8B;aACxC,WAAW,EAAE,iCAAiC;aAC9C,UAAU,EAAE,4BAA4B;aACxC,KAAK,EAAE,yBAAyB;aAChC,SAAS,EAAE,sBAAsB;aACjC,MAAM,EAAE,6BAA6B;aACrC,OAAO,EAAE,6BAA6B;aACtC,YAAY,EAAE,0BAA0B;aACxC,aAAa,EAAE,2BAA2B;aAC1C,QAAQ,EAAE,wBAAwB;aAClC,QAAQ,EAAE,wBAAwB;aAClC,eAAe,EAAE,4BAA4B;aAC7C,eAAe,EAAE,4BAA4B;aAC7C,kBAAkB,EAAE,+BAA+B;aACnD,kBAAkB,EAAE,+BAA+B;aACnD,aAAa,EAAE,0BAA0B;aACzC,eAAe,EAAE,4BAA4B;aAC7C,iBAAiB,EAAE,+BAA+B;aAClD,iBAAiB,EAAE,+BAA+B;aAClD,YAAY,EAAE,0BAA0B;aACxC,WAAW,EAAE,wBAAwB;aACrC,gBAAgB,EAAE,6BAA6B;aAC/C,SAAS,EAAE,sBAAsB;aACjC,QAAQ,EAAE,qBAAqB;aAC/B,SAAS,EAAE,sBAAsB;aACjC,aAAa,EAAE,sBAAsB;aACrC,WAAW,EAAE,0BAA0B;aACvC,gBAAgB,EAAE,gCAAgC;aAClD,UAAU,EAAE,gCAAgC;aAC5C,kBAAkB,EAAE,+BAA+B;aACnD,gBAAgB,EAAE,6BAA6B;aAC/C,gBAAgB,EAAE,6BAA6B;aAC/C,WAAW,EAAE,iBAAiB;aAC9B,cAAc,EAAE,iCAAiC;CACzC,CAAC;AAEX,8DAA8D;AAC9D,MAAM,WAAW,qCAAqC;IACpD;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC/B;AAqBD,+EAA+E;AAC/E,wBAAgB,8BAA8B,CAC5C,OAAO,GAAE,qCAA0C,GAClD,WAAW,CAuBb"}
1
+ {"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../../src/admin/templates.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAoB,MAAM,UAAU,CAAC;AAQzD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,kBAAkB,EAAE,MAAgE,CAAC;AAElG;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe;aAC1B,KAAK,EAAE,yBAAyB;aAChC,KAAK,EAAE,yBAAyB;aAChC,MAAM,EAAE,0BAA0B;aAClC,KAAK,EAAE,yBAAyB;aAChC,SAAS,EAAE,0BAA0B;aACrC,WAAW,EAAE,uBAAuB;aACpC,YAAY,EAAE,0BAA0B;aACxC,eAAe,EAAE,6BAA6B;aAC9C,cAAc,EAAE,4BAA4B;aAC5C,gBAAgB,EAAE,8BAA8B;aAChD,QAAQ,EAAE,8BAA8B;aACxC,WAAW,EAAE,iCAAiC;aAC9C,UAAU,EAAE,4BAA4B;aACxC,KAAK,EAAE,yBAAyB;aAChC,SAAS,EAAE,sBAAsB;aACjC,MAAM,EAAE,6BAA6B;aACrC,OAAO,EAAE,6BAA6B;aACtC,SAAS,EAAE,uBAAuB;aAClC,YAAY,EAAE,0BAA0B;aACxC,aAAa,EAAE,2BAA2B;aAC1C,QAAQ,EAAE,wBAAwB;aAClC,QAAQ,EAAE,wBAAwB;aAClC,eAAe,EAAE,4BAA4B;aAC7C,eAAe,EAAE,4BAA4B;aAC7C,kBAAkB,EAAE,+BAA+B;aACnD,kBAAkB,EAAE,+BAA+B;aACnD,aAAa,EAAE,0BAA0B;aACzC,eAAe,EAAE,4BAA4B;aAC7C,iBAAiB,EAAE,+BAA+B;aAClD,iBAAiB,EAAE,+BAA+B;aAClD,YAAY,EAAE,0BAA0B;aACxC,WAAW,EAAE,wBAAwB;aACrC,gBAAgB,EAAE,6BAA6B;aAC/C,SAAS,EAAE,sBAAsB;aACjC,QAAQ,EAAE,qBAAqB;aAC/B,SAAS,EAAE,sBAAsB;aACjC,aAAa,EAAE,sBAAsB;aACrC,WAAW,EAAE,0BAA0B;aACvC,gBAAgB,EAAE,gCAAgC;aAClD,UAAU,EAAE,gCAAgC;aAC5C,kBAAkB,EAAE,+BAA+B;aACnD,gBAAgB,EAAE,6BAA6B;aAC/C,gBAAgB,EAAE,6BAA6B;aAC/C,WAAW,EAAE,iBAAiB;aAC9B,cAAc,EAAE,iCAAiC;CACzC,CAAC;AAIX;;;GAGG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAElD;AAED,8DAA8D;AAC9D,MAAM,WAAW,qCAAqC;IACpD;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC/B;AAqBD,+EAA+E;AAC/E,wBAAgB,8BAA8B,CAC5C,OAAO,GAAE,qCAA0C,GAClD,WAAW,CAyBb"}
@@ -1,6 +1,9 @@
1
1
  import { fileURLToPath } from 'node:url';
2
2
  import { Environment, FileSystemLoader } from 'nunjucks';
3
+ import { ownManifest } from '../init.js';
4
+ import { ADMIN_ASSET_PREFIX } from '../site/admin-paths.js';
3
5
  import { formatDate } from '../theme/templates.js';
6
+ import { drawBlock } from './blocks.js';
4
7
  import { formatFileSize } from './formatting.js';
5
8
  /**
6
9
  * The admin's templates, resolved from this module rather than the working
@@ -50,6 +53,7 @@ export const ADMIN_TEMPLATES = {
50
53
  mediaFile: 'pages/media/file.njk',
51
54
  themes: 'pages/appearance/themes.njk',
52
55
  plugins: 'pages/plugins/installed.njk',
56
+ pluginAdd: 'pages/plugins/add.njk',
53
57
  pluginScreen: 'pages/plugins/screen.njk',
54
58
  pluginConfirm: 'pages/plugins/confirm.njk',
55
59
  comments: 'pages/comments/all.njk',
@@ -78,6 +82,14 @@ export const ADMIN_TEMPLATES = {
78
82
  serverError: 'pages/error.njk',
79
83
  publicAdminBar: 'components/public-admin-bar.njk',
80
84
  };
85
+ const CMS_VERSION = ownManifest().version;
86
+ /**
87
+ * The query names the running CMS version, so an upgrade changes every URL and
88
+ * a browser does not keep the last release's file for the hour it may cache it.
89
+ */
90
+ export function adminAssetUrl(name) {
91
+ return `${ADMIN_ASSET_PREFIX}${name}?v=${encodeURIComponent(CMS_VERSION)}`;
92
+ }
81
93
  /**
82
94
  * The `modifier` filter, `{{ COLORS | modifier(color) }}`: the class `classes`
83
95
  * maps `value` to with a space before it, so `class="btn{{ … }}"` reads right,
@@ -112,6 +124,8 @@ export function createAdminTemplateEnvironment(options = {}) {
112
124
  environment.addFilter('date', (value, format = 'readable') => formatDate(value, typeof format === 'string' ? format : 'readable'));
113
125
  environment.addFilter('fileSize', (value) => typeof value === 'number' ? formatFileSize(value) : '');
114
126
  environment.addFilter('modifier', modifierClass);
127
+ environment.addFilter('drawn', drawBlock);
128
+ environment.addGlobal('adminAsset', adminAssetUrl);
115
129
  return environment;
116
130
  }
117
131
  //# sourceMappingURL=templates.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"templates.js","sourceRoot":"","sources":["../../src/admin/templates.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"templates.js","sourceRoot":"","sources":["../../src/admin/templates.ts"],"names":[],"mappings":"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"}
@@ -68,7 +68,7 @@ export const TOOLS_FIELDS = {
68
68
  export async function rebuildContentIndex(options) {
69
69
  const { store, admin, contentDir, dataDir, rescan } = options;
70
70
  store.clear();
71
- const federation = rebuildFederationIndexes({ admin, contentDir });
71
+ const federation = rebuildFederationIndexes({ admin, contentDir, dataDir });
72
72
  const comments = rebuildCommentIndexes({ admin, contentDir, dataDir });
73
73
  const scan = await rescan();
74
74
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/admin/tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/admin/tools.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { CoreWidget } from './widgets.ts';
2
+ export declare const FEDIVERSE_WIDGET: CoreWidget;
3
+ //# sourceMappingURL=widget-fediverse.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"widget-fediverse.d.ts","sourceRoot":"","sources":["../../src/admin/widget-fediverse.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAQ/C,eAAO,MAAM,gBAAgB,EAAE,UA0C9B,CAAC"}
@@ -0,0 +1,49 @@
1
+ import { calendarDayIn, toUtcInstant } from '../content/time.js';
2
+ import { daysEndingToday } from './widgets.js';
3
+ const SERIES = [
4
+ { kind: 'like', name: 'Likes' },
5
+ { kind: 'boost', name: 'Boosts' },
6
+ { kind: 'reply', name: 'Replies' },
7
+ ];
8
+ export const FEDIVERSE_WIDGET = {
9
+ id: 'fediverse-activity',
10
+ title: 'Fediverse',
11
+ width: 'full',
12
+ refreshSeconds: 300,
13
+ load(vars, period) {
14
+ const timezone = vars.siteAtRequestStart.timezone;
15
+ const days = daysEndingToday(vars, 2 * period);
16
+ const since = toUtcInstant(days[0] ?? '', timezone);
17
+ if (since === undefined)
18
+ throw new Error('The period does not start on a date.');
19
+ const counts = new Map(SERIES.map(({ kind }) => [kind, new Map()]));
20
+ for (const { kind, receivedAt } of vars.admin.listInteractionsSince(since)) {
21
+ const day = calendarDayIn(receivedAt, timezone);
22
+ const perDay = counts.get(kind);
23
+ if (day === undefined || perDay === undefined)
24
+ continue;
25
+ perDay.set(day, (perDay.get(day) ?? 0) + 1);
26
+ }
27
+ const previousDays = days.slice(0, period);
28
+ const shownDays = days.slice(period);
29
+ const valuesOf = (kind, over) => over.map((day) => counts.get(kind)?.get(day) ?? 0);
30
+ const total = (values) => values.reduce((sum, n) => sum + n, 0);
31
+ return [
32
+ {
33
+ stats: SERIES.map(({ kind, name }) => ({
34
+ label: name,
35
+ value: total(valuesOf(kind, shownDays)),
36
+ previous: total(valuesOf(kind, previousDays)),
37
+ })),
38
+ },
39
+ {
40
+ timeSeries: {
41
+ caption: 'Likes, boosts and replies per day',
42
+ days: shownDays,
43
+ series: SERIES.map(({ kind, name }) => ({ name, values: valuesOf(kind, shownDays) })),
44
+ },
45
+ },
46
+ ];
47
+ },
48
+ };
49
+ //# sourceMappingURL=widget-fediverse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"widget-fediverse.js","sourceRoot":"","sources":["../../src/admin/widget-fediverse.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { CoreWidget } from './widgets.ts';
2
+ export declare const FOLLOWERS_WIDGET: CoreWidget;
3
+ //# sourceMappingURL=widget-followers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"widget-followers.d.ts","sourceRoot":"","sources":["../../src/admin/widget-followers.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C,eAAO,MAAM,gBAAgB,EAAE,UAyC9B,CAAC"}
@@ -0,0 +1,37 @@
1
+ import { followerDays, readFollowerChanges } from '../federation/follower-history.js';
2
+ import { daysEndingToday } from './widgets.js';
3
+ export const FOLLOWERS_WIDGET = {
4
+ id: 'followers',
5
+ title: 'Followers',
6
+ width: 'half',
7
+ refreshSeconds: 300,
8
+ load(vars, period) {
9
+ const days = followerDays(readFollowerChanges(vars.config.dataDir), daysEndingToday(vars, 2 * period), vars.siteAtRequestStart.timezone, vars.admin.countFollowers());
10
+ const previous = days.slice(0, period);
11
+ const shown = days.slice(period);
12
+ const countAtEnd = (over) => over.at(-1)?.count ?? 0;
13
+ const total = (over, key) => over.reduce((sum, day) => sum + day[key], 0);
14
+ return [
15
+ {
16
+ stats: [
17
+ { label: 'Followers', value: countAtEnd(shown), previous: countAtEnd(previous) },
18
+ { label: 'Gained', value: total(shown, 'gained'), previous: total(previous, 'gained') },
19
+ {
20
+ label: 'Lost',
21
+ value: total(shown, 'lost'),
22
+ previous: total(previous, 'lost'),
23
+ better: 'down',
24
+ },
25
+ ],
26
+ },
27
+ {
28
+ timeSeries: {
29
+ caption: 'Followers at the end of each day',
30
+ days: shown.map((day) => day.day),
31
+ series: [{ name: 'Followers', values: shown.map((day) => day.count) }],
32
+ },
33
+ },
34
+ ];
35
+ },
36
+ };
37
+ //# sourceMappingURL=widget-followers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"widget-followers.js","sourceRoot":"","sources":["../../src/admin/widget-followers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAEtF,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAG/C,MAAM,CAAC,MAAM,gBAAgB,GAAe;IAC1C,EAAE,EAAE,WAAW;IACf,KAAK,EAAE,WAAW;IAClB,KAAK,EAAE,MAAM;IACb,cAAc,EAAE,GAAG;IACnB,IAAI,CAAC,IAAI,EAAE,MAAM;QACf,MAAM,IAAI,GAAG,YAAY,CACvB,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,EACxC,eAAe,CAAC,IAAI,EAAE,CAAC,GAAG,MAAM,CAAC,EACjC,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAChC,IAAI,CAAC,KAAK,CAAC,cAAc,EAAE,CAC5B,CAAC;QAEF,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QACvC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,UAAU,GAAG,CAAC,IAA4B,EAAU,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC;QACrF,MAAM,KAAK,GAAG,CAAC,IAA4B,EAAE,GAAsB,EAAU,EAAE,CAC7E,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QAE/C,OAAO;YACL;gBACE,KAAK,EAAE;oBACL,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,UAAU,CAAC,QAAQ,CAAC,EAAE;oBAChF,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE;oBACvF;wBACE,KAAK,EAAE,MAAM;wBACb,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC;wBAC3B,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC;wBACjC,MAAM,EAAE,MAAM;qBACf;iBACF;aACF;YACD;gBACE,UAAU,EAAE;oBACV,OAAO,EAAE,kCAAkC;oBAC3C,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC;oBACjC,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;iBACvE;aACF;SACF,CAAC;IACJ,CAAC;CACF,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { CoreWidget } from './widgets.ts';
2
+ export declare const HEALTH_WIDGET: CoreWidget;
3
+ //# sourceMappingURL=widget-health.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"widget-health.d.ts","sourceRoot":"","sources":["../../src/admin/widget-health.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AA6D/C,eAAO,MAAM,aAAa,EAAE,UA6C3B,CAAC"}
@@ -0,0 +1,103 @@
1
+ import { STRIP_METADATA_JOB } from '../content/metadata/strip-job.js';
2
+ import { SITE_EXPORT_JOB_NAME } from '../export/site-export.js';
3
+ import { RESEND_JOB } from '../federation/resend-job.js';
4
+ import { countRetryingDeliveries } from '../store/queue-database.js';
5
+ import { EXPORT_PATH } from './export.js';
6
+ import { DELIVERY_PANEL, RESEND_PANEL } from './federation.js';
7
+ import { MAINTENANCE_PATH, STRIP_METADATA_PANEL } from './maintenance.js';
8
+ const FAILURES_SINCE_MS = 7 * 24 * 60 * 60 * 1000;
9
+ const LONG_RUNNING_MS = 60 * 60 * 1000;
10
+ const JOB_PANELS = {
11
+ [STRIP_METADATA_JOB.name]: { label: 'Metadata sweep', href: STRIP_METADATA_PANEL },
12
+ [RESEND_JOB.name]: { label: 'Resend', href: RESEND_PANEL },
13
+ [SITE_EXPORT_JOB_NAME]: { label: 'Site export', href: EXPORT_PATH },
14
+ };
15
+ function jobPanel(name) {
16
+ return JOB_PANELS[name] ?? { label: name, href: MAINTENANCE_PATH };
17
+ }
18
+ function endedBadlyAt(job) {
19
+ if (job.state === 'failed')
20
+ return job.finishedAt;
21
+ if (job.state === 'interrupted')
22
+ return job.interruptedAt;
23
+ return undefined;
24
+ }
25
+ function failedJobs(jobs, since) {
26
+ const lastFinished = new Map();
27
+ for (const job of jobs) {
28
+ if (job.state !== 'finished')
29
+ continue;
30
+ if (job.finishedAt > (lastFinished.get(job.name) ?? '')) {
31
+ lastFinished.set(job.name, job.finishedAt);
32
+ }
33
+ }
34
+ const failures = new Map();
35
+ for (const job of jobs) {
36
+ const at = endedBadlyAt(job);
37
+ if (at === undefined || at < since || at < (lastFinished.get(job.name) ?? ''))
38
+ continue;
39
+ failures.set(job.name, (failures.get(job.name) ?? 0) + 1);
40
+ }
41
+ return [...failures].map(([name, count]) => {
42
+ const panel = jobPanel(name);
43
+ return { text: `${panel.label} failed`, href: panel.href, count };
44
+ });
45
+ }
46
+ function longRunningJobs(jobs, before) {
47
+ const running = new Map();
48
+ for (const job of jobs) {
49
+ if (job.state === 'running' && job.startedAt < before) {
50
+ running.set(job.name, (running.get(job.name) ?? 0) + 1);
51
+ }
52
+ }
53
+ return [...running].map(([name, count]) => {
54
+ const panel = jobPanel(name);
55
+ return { text: `${panel.label} running for over an hour`, href: panel.href, count };
56
+ });
57
+ }
58
+ export const HEALTH_WIDGET = {
59
+ id: 'health',
60
+ title: 'Needs attention',
61
+ width: 'full',
62
+ refreshSeconds: 60,
63
+ placement: 'alerts',
64
+ async load(vars) {
65
+ const now = vars.config.now().getTime();
66
+ const since = new Date(now - FAILURES_SINCE_MS).toISOString();
67
+ const jobs = await vars.jobs.list(['failed', 'interrupted', 'finished', 'running']);
68
+ const problems = [
69
+ ...failedJobs(jobs, since),
70
+ ...longRunningJobs(jobs, new Date(now - LONG_RUNNING_MS).toISOString()),
71
+ {
72
+ text: 'Failed federation deliveries',
73
+ href: DELIVERY_PANEL,
74
+ count: vars.admin.countFailedDeliveriesSince(since),
75
+ },
76
+ {
77
+ text: 'Federation deliveries being retried',
78
+ href: DELIVERY_PANEL,
79
+ count: countRetryingDeliveries(vars.config.dataDir, since),
80
+ },
81
+ {
82
+ text: 'Failed webmentions',
83
+ href: DELIVERY_PANEL,
84
+ count: vars.admin.countFailedWebmentionsSince(since),
85
+ },
86
+ ].filter((problem) => problem.count > 0);
87
+ if (problems.length === 0)
88
+ return [];
89
+ return [
90
+ {
91
+ table: {
92
+ caption: 'Failures in the last 7 days, and jobs running for over an hour',
93
+ columns: ['Problem', 'Count'],
94
+ rows: problems.map((problem) => [
95
+ { text: problem.text, href: problem.href },
96
+ String(problem.count),
97
+ ]),
98
+ },
99
+ },
100
+ ];
101
+ },
102
+ };
103
+ //# sourceMappingURL=widget-health.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"widget-health.js","sourceRoot":"","sources":["../../src/admin/widget-health.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { CoreWidget } from './widgets.ts';
2
+ export declare const RECENT_INTERACTIONS = 10;
3
+ export declare const INTERACTIONS_WIDGET: CoreWidget;
4
+ //# sourceMappingURL=widget-interactions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"widget-interactions.d.ts","sourceRoot":"","sources":["../../src/admin/widget-interactions.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C,eAAO,MAAM,mBAAmB,KAAK,CAAC;AAwBtC,eAAO,MAAM,mBAAmB,EAAE,UA4FjC,CAAC"}
@@ -0,0 +1,99 @@
1
+ import { postLabel } from '../content/post-type.js';
2
+ import { readObjectIds } from '../federation/object-ids.js';
3
+ import { actorHandle, guessedName } from '../store/inbox-replies.js';
4
+ import { COMMENTS_PATH } from './comments.js';
5
+ import { FEDERATION_PATH, localPosts } from './federation.js';
6
+ import { formatShortTime } from './formatting.js';
7
+ export const RECENT_INTERACTIONS = 10;
8
+ const INBOX_OVERREAD_FOR_OTHER_PEOPLES_POSTS = 4;
9
+ const FEDIVERSE_KINDS = {
10
+ like: 'Fediverse like of',
11
+ boost: 'Fediverse boost of',
12
+ reply: 'Fediverse reply to',
13
+ };
14
+ const WEBMENTION_KINDS = {
15
+ reply: 'Webmention reply to',
16
+ like: 'Webmention like of',
17
+ boost: 'Webmention repost of',
18
+ repost: 'Webmention repost of',
19
+ mention: 'Mention of',
20
+ };
21
+ export const INTERACTIONS_WIDGET = {
22
+ id: 'recent-interactions',
23
+ title: 'Recent interactions',
24
+ width: 'half',
25
+ refreshSeconds: 60,
26
+ load(vars) {
27
+ const { admin, store } = vars;
28
+ const timezone = vars.siteAtRequestStart.timezone;
29
+ const cited = (url) => vars.replyContexts.read(url, vars.siteAtRequestStart);
30
+ const followers = admin.listFollowers();
31
+ const names = new Map(followers.map((follower) => [follower.actorId, follower.name ?? follower.handle]));
32
+ const nameOf = (actorId) => {
33
+ const profile = admin.getActorProfile(actorId);
34
+ return (names.get(actorId) ??
35
+ profile?.name ??
36
+ profile?.handle ??
37
+ actorHandle(actorId) ??
38
+ guessedName(actorId));
39
+ };
40
+ const comments = admin
41
+ .listLatestCommentsExceptImportedFediverse(RECENT_INTERACTIONS)
42
+ .map((comment) => {
43
+ const document = store.getBySlug(comment.slug);
44
+ const kind = comment.source === 'webmention' ? WEBMENTION_KINDS[comment.kind] : 'Comment on';
45
+ const title = document === undefined ? comment.slug : postLabel(document, cited);
46
+ return {
47
+ at: comment.submitted,
48
+ who: comment.author.name,
49
+ what: {
50
+ text: `${kind} ${title}${comment.status === 'pending' ? ', waiting' : ''}`,
51
+ href: `${COMMENTS_PATH}?status=${comment.status}#comment-${comment.id}`,
52
+ },
53
+ };
54
+ });
55
+ const post = localPosts(store, vars.config.baseUrl, readObjectIds(vars.config.contentDir), cited, (url) => vars.conversation.documentOf(url));
56
+ const fediverse = admin
57
+ .listLatestInteractions(RECENT_INTERACTIONS * INBOX_OVERREAD_FOR_OTHER_PEOPLES_POSTS)
58
+ .flatMap((interaction) => {
59
+ const about = post(interaction.about);
60
+ if (about === null)
61
+ return [];
62
+ return [
63
+ {
64
+ at: interaction.receivedAt,
65
+ who: nameOf(interaction.actorId),
66
+ what: {
67
+ text: `${FEDIVERSE_KINDS[interaction.kind]} ${about.title}`,
68
+ href: about.editUrl,
69
+ },
70
+ },
71
+ ];
72
+ });
73
+ const follows = followers.slice(0, RECENT_INTERACTIONS).map((follower) => ({
74
+ at: follower.followedAt,
75
+ who: follower.name ?? follower.handle ?? guessedName(follower.actorId),
76
+ what: { text: 'New follower', href: FEDERATION_PATH },
77
+ }));
78
+ const entries = [...comments, ...fediverse, ...follows]
79
+ .toSorted((a, b) => (a.at < b.at ? 1 : a.at > b.at ? -1 : 0))
80
+ .slice(0, RECENT_INTERACTIONS);
81
+ if (entries.length === 0) {
82
+ return [{ paragraph: ['No comments, mentions, reactions or new followers yet.'] }];
83
+ }
84
+ return [
85
+ {
86
+ table: {
87
+ caption: 'The newest interactions',
88
+ columns: ['Who', 'What', 'When'],
89
+ rows: entries.map((entry) => [
90
+ entry.who,
91
+ entry.what,
92
+ formatShortTime(entry.at, timezone),
93
+ ]),
94
+ },
95
+ },
96
+ ];
97
+ },
98
+ };
99
+ //# sourceMappingURL=widget-interactions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"widget-interactions.js","sourceRoot":"","sources":["../../src/admin/widget-interactions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { CoreWidget } from './widgets.ts';
2
+ export declare const POSTING_WIDGET: CoreWidget;
3
+ //# sourceMappingURL=widget-posting.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"widget-posting.d.ts","sourceRoot":"","sources":["../../src/admin/widget-posting.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAsC/C,eAAO,MAAM,cAAc,EAAE,UAiF5B,CAAC"}