@geekity/cms 0.3.0 → 0.4.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 +2091 -214
- package/admin/components/fields.njk +165 -0
- package/admin/layouts/base.njk +1 -1
- package/admin/layouts/settings-page.njk +26 -0
- package/admin/layouts/shell.njk +17 -3
- package/admin/pages/account/forgot.njk +47 -0
- package/admin/pages/account/login.njk +26 -0
- package/admin/pages/account/reset.njk +38 -0
- package/admin/pages/account/setup.njk +28 -0
- package/admin/pages/appearance/themes.njk +69 -0
- package/admin/pages/comments/all.njk +133 -0
- package/admin/{layouts/dashboard.njk → pages/dashboard/home.njk} +8 -15
- package/admin/{layouts/document-conflict.njk → pages/documents/conflict.njk} +1 -0
- package/admin/pages/documents/editor.njk +196 -0
- package/admin/{layouts/document-list.njk → pages/documents/list.njk} +19 -2
- package/admin/pages/documents/taxonomy.njk +95 -0
- package/admin/pages/federation/followers.njk +238 -0
- package/admin/pages/media/library.njk +160 -0
- package/admin/pages/messages/all.njk +110 -0
- package/admin/{layouts → pages}/placeholder.njk +5 -1
- package/admin/pages/settings/discussion.njk +99 -0
- package/admin/pages/settings/email.njk +203 -0
- package/admin/pages/settings/federation.njk +75 -0
- package/admin/pages/settings/general.njk +29 -0
- package/admin/pages/settings/permalinks.njk +50 -0
- package/admin/pages/settings/reading.njk +72 -0
- package/admin/pages/users/edit.njk +239 -0
- package/admin/pages/users/list.njk +48 -0
- package/admin/pages/users/new.njk +41 -0
- package/admin/static/admin.css +498 -3
- package/admin/static/copy.js +52 -0
- package/admin/static/editor.js +16 -16
- package/admin/static/slug.js +61 -0
- package/dist/admin/accounts.d.ts +413 -0
- package/dist/admin/accounts.d.ts.map +1 -0
- package/dist/admin/accounts.js +680 -0
- package/dist/admin/accounts.js.map +1 -0
- package/dist/admin/appearance.d.ts +80 -0
- package/dist/admin/appearance.d.ts.map +1 -0
- package/dist/admin/appearance.js +136 -0
- package/dist/admin/appearance.js.map +1 -0
- package/dist/admin/comments.d.ts +90 -0
- package/dist/admin/comments.d.ts.map +1 -0
- package/dist/admin/comments.js +244 -0
- package/dist/admin/comments.js.map +1 -0
- package/dist/admin/credentials.d.ts +26 -2
- package/dist/admin/credentials.d.ts.map +1 -1
- package/dist/admin/credentials.js +35 -2
- package/dist/admin/credentials.js.map +1 -1
- package/dist/admin/documents.d.ts +127 -10
- package/dist/admin/documents.d.ts.map +1 -1
- package/dist/admin/documents.js +360 -41
- package/dist/admin/documents.js.map +1 -1
- package/dist/admin/federation.d.ts +151 -50
- package/dist/admin/federation.d.ts.map +1 -1
- package/dist/admin/federation.js +225 -93
- package/dist/admin/federation.js.map +1 -1
- package/dist/admin/formatting.d.ts +20 -0
- package/dist/admin/formatting.d.ts.map +1 -0
- package/dist/admin/formatting.js +72 -0
- package/dist/admin/formatting.js.map +1 -0
- package/dist/admin/headers.d.ts +65 -0
- package/dist/admin/headers.d.ts.map +1 -0
- package/dist/admin/headers.js +104 -0
- package/dist/admin/headers.js.map +1 -0
- package/dist/admin/index.d.ts +38 -12
- package/dist/admin/index.d.ts.map +1 -1
- package/dist/admin/index.js +25 -7
- package/dist/admin/index.js.map +1 -1
- package/dist/admin/media.d.ts +168 -0
- package/dist/admin/media.d.ts.map +1 -0
- package/dist/admin/media.js +295 -0
- package/dist/admin/media.js.map +1 -0
- package/dist/admin/menu.d.ts +79 -0
- package/dist/admin/menu.d.ts.map +1 -0
- package/dist/admin/menu.js +126 -0
- package/dist/admin/menu.js.map +1 -0
- package/dist/admin/messages.d.ts +80 -0
- package/dist/admin/messages.d.ts.map +1 -0
- package/dist/admin/messages.js +152 -0
- package/dist/admin/messages.js.map +1 -0
- package/dist/admin/preview.d.ts.map +1 -1
- package/dist/admin/preview.js +31 -7
- package/dist/admin/preview.js.map +1 -1
- package/dist/admin/recovery.d.ts +92 -0
- package/dist/admin/recovery.d.ts.map +1 -0
- package/dist/admin/recovery.js +229 -0
- package/dist/admin/recovery.js.map +1 -0
- package/dist/admin/routes.d.ts +0 -20
- package/dist/admin/routes.d.ts.map +1 -1
- package/dist/admin/routes.js +155 -105
- package/dist/admin/routes.js.map +1 -1
- package/dist/admin/settings-discussion.d.ts +37 -0
- package/dist/admin/settings-discussion.d.ts.map +1 -0
- package/dist/admin/settings-discussion.js +117 -0
- package/dist/admin/settings-discussion.js.map +1 -0
- package/dist/admin/settings-email.d.ts +54 -0
- package/dist/admin/settings-email.d.ts.map +1 -0
- package/dist/admin/settings-email.js +189 -0
- package/dist/admin/settings-email.js.map +1 -0
- package/dist/admin/settings-federation.d.ts +39 -0
- package/dist/admin/settings-federation.d.ts.map +1 -0
- package/dist/admin/settings-federation.js +103 -0
- package/dist/admin/settings-federation.js.map +1 -0
- package/dist/admin/settings-general.d.ts +12 -0
- package/dist/admin/settings-general.d.ts.map +1 -0
- package/dist/admin/settings-general.js +48 -0
- package/dist/admin/settings-general.js.map +1 -0
- package/dist/admin/settings-page.d.ts +102 -0
- package/dist/admin/settings-page.d.ts.map +1 -0
- package/dist/admin/settings-page.js +126 -0
- package/dist/admin/settings-page.js.map +1 -0
- package/dist/admin/settings-pages.d.ts +19 -0
- package/dist/admin/settings-pages.d.ts.map +1 -0
- package/dist/admin/settings-pages.js +33 -0
- package/dist/admin/settings-pages.js.map +1 -0
- package/dist/admin/settings-permalinks.d.ts +16 -0
- package/dist/admin/settings-permalinks.d.ts.map +1 -0
- package/dist/admin/settings-permalinks.js +32 -0
- package/dist/admin/settings-permalinks.js.map +1 -0
- package/dist/admin/settings-reading.d.ts +33 -0
- package/dist/admin/settings-reading.d.ts.map +1 -0
- package/dist/admin/settings-reading.js +48 -0
- package/dist/admin/settings-reading.js.map +1 -0
- package/dist/admin/settings.d.ts +325 -96
- package/dist/admin/settings.d.ts.map +1 -1
- package/dist/admin/settings.js +650 -308
- package/dist/admin/settings.js.map +1 -1
- package/dist/admin/store.d.ts +606 -152
- package/dist/admin/store.d.ts.map +1 -1
- package/dist/admin/store.js +863 -268
- package/dist/admin/store.js.map +1 -1
- package/dist/admin/taxonomy.d.ts +114 -0
- package/dist/admin/taxonomy.d.ts.map +1 -0
- package/dist/admin/taxonomy.js +289 -0
- package/dist/admin/taxonomy.js.map +1 -0
- package/dist/admin/templates.d.ts +44 -14
- package/dist/admin/templates.d.ts.map +1 -1
- package/dist/admin/templates.js +44 -14
- package/dist/admin/templates.js.map +1 -1
- package/dist/admin/throttle.d.ts +84 -0
- package/dist/admin/throttle.d.ts.map +1 -0
- package/dist/admin/throttle.js +143 -0
- package/dist/admin/throttle.js.map +1 -0
- package/dist/admin/uploads.d.ts +28 -2
- package/dist/admin/uploads.d.ts.map +1 -1
- package/dist/admin/uploads.js +43 -4
- package/dist/admin/uploads.js.map +1 -1
- package/dist/admin/users.d.ts +100 -13
- package/dist/admin/users.d.ts.map +1 -1
- package/dist/admin/users.js +412 -39
- package/dist/admin/users.js.map +1 -1
- package/dist/cache.d.ts +141 -0
- package/dist/cache.d.ts.map +1 -0
- package/dist/cache.js +207 -0
- package/dist/cache.js.map +1 -0
- package/dist/cli.d.ts +14 -2
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +424 -21
- package/dist/cli.js.map +1 -1
- package/dist/comments/akismet.d.ts +130 -0
- package/dist/comments/akismet.d.ts.map +1 -0
- package/dist/comments/akismet.js +274 -0
- package/dist/comments/akismet.js.map +1 -0
- package/dist/comments/conversation.d.ts +29 -0
- package/dist/comments/conversation.d.ts.map +1 -0
- package/dist/comments/conversation.js +60 -0
- package/dist/comments/conversation.js.map +1 -0
- package/dist/comments/form.d.ts +75 -0
- package/dist/comments/form.d.ts.map +1 -0
- package/dist/comments/form.js +64 -0
- package/dist/comments/form.js.map +1 -0
- package/dist/comments/index.d.ts +15 -0
- package/dist/comments/index.d.ts.map +1 -0
- package/dist/comments/index.js +9 -0
- package/dist/comments/index.js.map +1 -0
- package/dist/comments/markdown.d.ts +8 -0
- package/dist/comments/markdown.d.ts.map +1 -0
- package/dist/comments/markdown.js +85 -0
- package/dist/comments/markdown.js.map +1 -0
- package/dist/comments/moderate.d.ts +71 -0
- package/dist/comments/moderate.d.ts.map +1 -0
- package/dist/comments/moderate.js +88 -0
- package/dist/comments/moderate.js.map +1 -0
- package/dist/comments/policy.d.ts +57 -0
- package/dist/comments/policy.d.ts.map +1 -0
- package/dist/comments/policy.js +80 -0
- package/dist/comments/policy.js.map +1 -0
- package/dist/comments/records.d.ts +266 -0
- package/dist/comments/records.d.ts.map +1 -0
- package/dist/comments/records.js +487 -0
- package/dist/comments/records.js.map +1 -0
- package/dist/comments/routes.d.ts +58 -0
- package/dist/comments/routes.d.ts.map +1 -0
- package/dist/comments/routes.js +177 -0
- package/dist/comments/routes.js.map +1 -0
- package/dist/comments/submission.d.ts +263 -0
- package/dist/comments/submission.d.ts.map +1 -0
- package/dist/comments/submission.js +241 -0
- package/dist/comments/submission.js.map +1 -0
- package/dist/config.d.ts +190 -5
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +118 -6
- package/dist/config.js.map +1 -1
- package/dist/contact/delivery.d.ts +60 -0
- package/dist/contact/delivery.d.ts.map +1 -0
- package/dist/contact/delivery.js +87 -0
- package/dist/contact/delivery.js.map +1 -0
- package/dist/contact/form.d.ts +130 -0
- package/dist/contact/form.d.ts.map +1 -0
- package/dist/contact/form.js +163 -0
- package/dist/contact/form.js.map +1 -0
- package/dist/contact/index.d.ts +17 -0
- package/dist/contact/index.d.ts.map +1 -0
- package/dist/contact/index.js +13 -0
- package/dist/contact/index.js.map +1 -0
- package/dist/contact/records.d.ts +124 -0
- package/dist/contact/records.d.ts.map +1 -0
- package/dist/contact/records.js +218 -0
- package/dist/contact/records.js.map +1 -0
- package/dist/contact/routes.d.ts +17 -0
- package/dist/contact/routes.d.ts.map +1 -0
- package/dist/contact/routes.js +127 -0
- package/dist/contact/routes.js.map +1 -0
- package/dist/contact/submission.d.ts +103 -0
- package/dist/contact/submission.d.ts.map +1 -0
- package/dist/contact/submission.js +166 -0
- package/dist/contact/submission.js.map +1 -0
- package/dist/content/document.d.ts +7 -2
- package/dist/content/document.d.ts.map +1 -1
- package/dist/content/document.js +1 -0
- package/dist/content/document.js.map +1 -1
- package/dist/content/index.d.ts +7 -2
- package/dist/content/index.d.ts.map +1 -1
- package/dist/content/index.js +4 -1
- package/dist/content/index.js.map +1 -1
- package/dist/content/markdown.d.ts.map +1 -1
- package/dist/content/markdown.js +24 -2
- package/dist/content/markdown.js.map +1 -1
- package/dist/content/parser.d.ts.map +1 -1
- package/dist/content/parser.js +11 -4
- package/dist/content/parser.js.map +1 -1
- package/dist/content/save.d.ts +5 -0
- package/dist/content/save.d.ts.map +1 -1
- package/dist/content/save.js +44 -1
- package/dist/content/save.js.map +1 -1
- package/dist/content/schedule.d.ts +125 -0
- package/dist/content/schedule.d.ts.map +1 -0
- package/dist/content/schedule.js +207 -0
- package/dist/content/schedule.js.map +1 -0
- package/dist/content/search.d.ts +64 -0
- package/dist/content/search.d.ts.map +1 -0
- package/dist/content/search.js +136 -0
- package/dist/content/search.js.map +1 -0
- package/dist/content/store.d.ts +202 -7
- package/dist/content/store.d.ts.map +1 -1
- package/dist/content/store.js +374 -67
- package/dist/content/store.js.map +1 -1
- package/dist/content/sync.d.ts +7 -1
- package/dist/content/sync.d.ts.map +1 -1
- package/dist/content/sync.js +18 -10
- package/dist/content/sync.js.map +1 -1
- package/dist/content/time.d.ts +56 -0
- package/dist/content/time.d.ts.map +1 -0
- package/dist/content/time.js +141 -0
- package/dist/content/time.js.map +1 -0
- package/dist/content/writer.d.ts.map +1 -1
- package/dist/content/writer.js +3 -0
- package/dist/content/writer.js.map +1 -1
- package/dist/env.d.ts +58 -4
- package/dist/env.d.ts.map +1 -1
- package/dist/federation/actor.d.ts +95 -41
- package/dist/federation/actor.d.ts.map +1 -1
- package/dist/federation/actor.js +180 -53
- package/dist/federation/actor.js.map +1 -1
- package/dist/federation/article.d.ts +44 -17
- package/dist/federation/article.d.ts.map +1 -1
- package/dist/federation/article.js +98 -46
- package/dist/federation/article.js.map +1 -1
- package/dist/federation/delivery.d.ts +63 -15
- package/dist/federation/delivery.d.ts.map +1 -1
- package/dist/federation/delivery.js +154 -80
- package/dist/federation/delivery.js.map +1 -1
- package/dist/federation/federation.d.ts +22 -17
- package/dist/federation/federation.d.ts.map +1 -1
- package/dist/federation/federation.js +98 -77
- package/dist/federation/federation.js.map +1 -1
- package/dist/federation/followers.d.ts +3 -2
- package/dist/federation/followers.d.ts.map +1 -1
- package/dist/federation/followers.js +6 -5
- package/dist/federation/followers.js.map +1 -1
- package/dist/federation/import-wordpress.d.ts +128 -0
- package/dist/federation/import-wordpress.d.ts.map +1 -0
- package/dist/federation/import-wordpress.js +426 -0
- package/dist/federation/import-wordpress.js.map +1 -0
- package/dist/federation/inbox.d.ts +36 -13
- package/dist/federation/inbox.d.ts.map +1 -1
- package/dist/federation/inbox.js +120 -49
- package/dist/federation/inbox.js.map +1 -1
- package/dist/federation/index.d.ts +22 -10
- package/dist/federation/index.d.ts.map +1 -1
- package/dist/federation/index.js +13 -8
- package/dist/federation/index.js.map +1 -1
- package/dist/federation/keys.d.ts +98 -20
- package/dist/federation/keys.d.ts.map +1 -1
- package/dist/federation/keys.js +269 -39
- package/dist/federation/keys.js.map +1 -1
- package/dist/federation/mount.d.ts +42 -10
- package/dist/federation/mount.d.ts.map +1 -1
- package/dist/federation/mount.js +266 -26
- package/dist/federation/mount.js.map +1 -1
- package/dist/federation/paths.d.ts +23 -35
- package/dist/federation/paths.d.ts.map +1 -1
- package/dist/federation/paths.js +26 -39
- package/dist/federation/paths.js.map +1 -1
- package/dist/federation/records.d.ts +223 -0
- package/dist/federation/records.d.ts.map +1 -0
- package/dist/federation/records.js +506 -0
- package/dist/federation/records.js.map +1 -0
- package/dist/federation/relays.d.ts +114 -0
- package/dist/federation/relays.d.ts.map +1 -0
- package/dist/federation/relays.js +290 -0
- package/dist/federation/relays.js.map +1 -0
- package/dist/federation/replies.d.ts +80 -0
- package/dist/federation/replies.d.ts.map +1 -0
- package/dist/federation/replies.js +166 -0
- package/dist/federation/replies.js.map +1 -0
- package/dist/federation/wordpress.d.ts +131 -0
- package/dist/federation/wordpress.d.ts.map +1 -0
- package/dist/federation/wordpress.js +341 -0
- package/dist/federation/wordpress.js.map +1 -0
- package/dist/files/atomic.d.ts +103 -0
- package/dist/files/atomic.d.ts.map +1 -0
- package/dist/files/atomic.js +150 -0
- package/dist/files/atomic.js.map +1 -0
- package/dist/files/index.d.ts +3 -0
- package/dist/files/index.d.ts.map +1 -0
- package/dist/files/index.js +2 -0
- package/dist/files/index.js.map +1 -0
- package/dist/forms/protection.d.ts +85 -0
- package/dist/forms/protection.d.ts.map +1 -0
- package/dist/forms/protection.js +116 -0
- package/dist/forms/protection.js.map +1 -0
- package/dist/images/icons.d.ts +59 -0
- package/dist/images/icons.d.ts.map +1 -0
- package/dist/images/icons.js +131 -0
- package/dist/images/icons.js.map +1 -0
- package/dist/images/index.d.ts +7 -0
- package/dist/images/index.d.ts.map +1 -0
- package/dist/images/index.js +4 -0
- package/dist/images/index.js.map +1 -0
- package/dist/images/markup.d.ts +47 -0
- package/dist/images/markup.d.ts.map +1 -0
- package/dist/images/markup.js +175 -0
- package/dist/images/markup.js.map +1 -0
- package/dist/images/paths.d.ts +34 -0
- package/dist/images/paths.d.ts.map +1 -0
- package/dist/images/paths.js +41 -0
- package/dist/images/paths.js.map +1 -0
- package/dist/images/variants.d.ts +104 -0
- package/dist/images/variants.d.ts.map +1 -0
- package/dist/images/variants.js +320 -0
- package/dist/images/variants.js.map +1 -0
- package/dist/index.d.ts +123 -19
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +327 -25
- package/dist/index.js.map +1 -1
- package/dist/init.d.ts +18 -0
- package/dist/init.d.ts.map +1 -1
- package/dist/init.js +34 -3
- package/dist/init.js.map +1 -1
- package/dist/mail/brevo.d.ts +35 -0
- package/dist/mail/brevo.d.ts.map +1 -0
- package/dist/mail/brevo.js +85 -0
- package/dist/mail/brevo.js.map +1 -0
- package/dist/mail/credentials.d.ts +62 -0
- package/dist/mail/credentials.d.ts.map +1 -0
- package/dist/mail/credentials.js +86 -0
- package/dist/mail/credentials.js.map +1 -0
- package/dist/mail/index.d.ts +15 -0
- package/dist/mail/index.d.ts.map +1 -0
- package/dist/mail/index.js +8 -0
- package/dist/mail/index.js.map +1 -0
- package/dist/mail/memory.d.ts +35 -0
- package/dist/mail/memory.d.ts.map +1 -0
- package/dist/mail/memory.js +29 -0
- package/dist/mail/memory.js.map +1 -0
- package/dist/mail/provider.d.ts +80 -0
- package/dist/mail/provider.d.ts.map +1 -0
- package/dist/mail/provider.js +23 -0
- package/dist/mail/provider.js.map +1 -0
- package/dist/mail/service.d.ts +156 -0
- package/dist/mail/service.d.ts.map +1 -0
- package/dist/mail/service.js +265 -0
- package/dist/mail/service.js.map +1 -0
- package/dist/mail/smtp.d.ts +39 -0
- package/dist/mail/smtp.d.ts.map +1 -0
- package/dist/mail/smtp.js +58 -0
- package/dist/mail/smtp.js.map +1 -0
- package/dist/mail/templates.d.ts +91 -0
- package/dist/mail/templates.d.ts.map +1 -0
- package/dist/mail/templates.js +69 -0
- package/dist/mail/templates.js.map +1 -0
- package/dist/notifications/comments.d.ts +66 -0
- package/dist/notifications/comments.d.ts.map +1 -0
- package/dist/notifications/comments.js +151 -0
- package/dist/notifications/comments.js.map +1 -0
- package/dist/notifications/digest.d.ts +135 -0
- package/dist/notifications/digest.d.ts.map +1 -0
- package/dist/notifications/digest.js +287 -0
- package/dist/notifications/digest.js.map +1 -0
- package/dist/notifications/index.d.ts +13 -0
- package/dist/notifications/index.d.ts.map +1 -0
- package/dist/notifications/index.js +8 -0
- package/dist/notifications/index.js.map +1 -0
- package/dist/notifications/links.d.ts +60 -0
- package/dist/notifications/links.d.ts.map +1 -0
- package/dist/notifications/links.js +63 -0
- package/dist/notifications/links.js.map +1 -0
- package/dist/notifications/optouts.d.ts +48 -0
- package/dist/notifications/optouts.d.ts.map +1 -0
- package/dist/notifications/optouts.js +93 -0
- package/dist/notifications/optouts.js.map +1 -0
- package/dist/notifications/preferences.d.ts +158 -0
- package/dist/notifications/preferences.d.ts.map +1 -0
- package/dist/notifications/preferences.js +195 -0
- package/dist/notifications/preferences.js.map +1 -0
- package/dist/notifications/routes.d.ts +28 -0
- package/dist/notifications/routes.d.ts.map +1 -0
- package/dist/notifications/routes.js +184 -0
- package/dist/notifications/routes.js.map +1 -0
- package/dist/notifications/tokens.d.ts +60 -0
- package/dist/notifications/tokens.d.ts.map +1 -0
- package/dist/notifications/tokens.js +125 -0
- package/dist/notifications/tokens.js.map +1 -0
- package/dist/notify.d.ts +84 -0
- package/dist/notify.d.ts.map +1 -0
- package/dist/notify.js +149 -0
- package/dist/notify.js.map +1 -0
- package/dist/web/archive.d.ts +49 -0
- package/dist/web/archive.d.ts.map +1 -0
- package/dist/web/archive.js +59 -0
- package/dist/web/archive.js.map +1 -0
- package/dist/web/assets.d.ts +6 -5
- package/dist/web/assets.d.ts.map +1 -1
- package/dist/web/assets.js +5 -7
- package/dist/web/assets.js.map +1 -1
- package/dist/web/authors.d.ts +143 -0
- package/dist/web/authors.d.ts.map +1 -0
- package/dist/web/authors.js +178 -0
- package/dist/web/authors.js.map +1 -0
- package/dist/web/comments.d.ts +60 -0
- package/dist/web/comments.d.ts.map +1 -0
- package/dist/web/comments.js +207 -0
- package/dist/web/comments.js.map +1 -0
- package/dist/web/context.d.ts +162 -28
- package/dist/web/context.d.ts.map +1 -1
- package/dist/web/context.js +123 -26
- package/dist/web/context.js.map +1 -1
- package/dist/web/conversation.d.ts +209 -0
- package/dist/web/conversation.d.ts.map +1 -0
- package/dist/web/conversation.js +557 -0
- package/dist/web/conversation.js.map +1 -0
- package/dist/web/documents.d.ts +36 -6
- package/dist/web/documents.d.ts.map +1 -1
- package/dist/web/documents.js +52 -10
- package/dist/web/documents.js.map +1 -1
- package/dist/web/feed-atom.d.ts +22 -0
- package/dist/web/feed-atom.d.ts.map +1 -0
- package/dist/web/feed-atom.js +83 -0
- package/dist/web/feed-atom.js.map +1 -0
- package/dist/web/feed-item.d.ts +145 -0
- package/dist/web/feed-item.d.ts.map +1 -0
- package/dist/web/feed-item.js +120 -0
- package/dist/web/feed-item.js.map +1 -0
- package/dist/web/feed-json.d.ts +79 -0
- package/dist/web/feed-json.d.ts.map +1 -0
- package/dist/web/feed-json.js +53 -0
- package/dist/web/feed-json.js.map +1 -0
- package/dist/web/feed-rss.d.ts +26 -0
- package/dist/web/feed-rss.d.ts.map +1 -0
- package/dist/web/feed-rss.js +203 -0
- package/dist/web/feed-rss.js.map +1 -0
- package/dist/web/feed-source.d.ts +244 -0
- package/dist/web/feed-source.d.ts.map +1 -0
- package/dist/web/feed-source.js +201 -0
- package/dist/web/feed-source.js.map +1 -0
- package/dist/web/feed-xml.d.ts +63 -0
- package/dist/web/feed-xml.d.ts.map +1 -0
- package/dist/web/feed-xml.js +116 -0
- package/dist/web/feed-xml.js.map +1 -0
- package/dist/web/feeds.d.ts +31 -96
- package/dist/web/feeds.d.ts.map +1 -1
- package/dist/web/feeds.js +94 -198
- package/dist/web/feeds.js.map +1 -1
- package/dist/web/health.d.ts +31 -0
- package/dist/web/health.d.ts.map +1 -0
- package/dist/web/health.js +44 -0
- package/dist/web/health.js.map +1 -0
- package/dist/web/index.d.ts +30 -10
- package/dist/web/index.d.ts.map +1 -1
- package/dist/web/index.js +18 -7
- package/dist/web/index.js.map +1 -1
- package/dist/web/navigation.d.ts +73 -0
- package/dist/web/navigation.d.ts.map +1 -0
- package/dist/web/navigation.js +110 -0
- package/dist/web/navigation.js.map +1 -0
- package/dist/web/negotiate.d.ts +9 -0
- package/dist/web/negotiate.d.ts.map +1 -1
- package/dist/web/negotiate.js +6 -1
- package/dist/web/negotiate.js.map +1 -1
- package/dist/web/recent.d.ts +43 -0
- package/dist/web/recent.d.ts.map +1 -0
- package/dist/web/recent.js +37 -0
- package/dist/web/recent.js.map +1 -0
- package/dist/web/render.d.ts +197 -9
- package/dist/web/render.d.ts.map +1 -1
- package/dist/web/render.js +334 -17
- package/dist/web/render.js.map +1 -1
- package/dist/web/routes.d.ts +25 -8
- package/dist/web/routes.d.ts.map +1 -1
- package/dist/web/routes.js +845 -93
- package/dist/web/routes.js.map +1 -1
- package/dist/web/sanitize.d.ts +19 -0
- package/dist/web/sanitize.d.ts.map +1 -0
- package/dist/web/sanitize.js +272 -0
- package/dist/web/sanitize.js.map +1 -0
- package/dist/web/search.d.ts +79 -0
- package/dist/web/search.d.ts.map +1 -0
- package/dist/web/search.js +94 -0
- package/dist/web/search.js.map +1 -0
- package/dist/web/sitemap.d.ts +120 -0
- package/dist/web/sitemap.d.ts.map +1 -0
- package/dist/web/sitemap.js +199 -0
- package/dist/web/sitemap.js.map +1 -0
- package/dist/web/taxonomy.d.ts +152 -0
- package/dist/web/taxonomy.d.ts.map +1 -0
- package/dist/web/taxonomy.js +237 -0
- package/dist/web/taxonomy.js.map +1 -0
- package/dist/web/templates.d.ts +54 -16
- package/dist/web/templates.d.ts.map +1 -1
- package/dist/web/templates.js +109 -28
- package/dist/web/templates.js.map +1 -1
- package/dist/web/themes.d.ts +205 -0
- package/dist/web/themes.d.ts.map +1 -0
- package/dist/web/themes.js +277 -0
- package/dist/web/themes.js.map +1 -0
- package/dist/webmention/discovery.d.ts +51 -0
- package/dist/webmention/discovery.d.ts.map +1 -0
- package/dist/webmention/discovery.js +176 -0
- package/dist/webmention/discovery.js.map +1 -0
- package/dist/webmention/html.d.ts +71 -0
- package/dist/webmention/html.d.ts.map +1 -0
- package/dist/webmention/html.js +285 -0
- package/dist/webmention/html.js.map +1 -0
- package/dist/webmention/index.d.ts +12 -0
- package/dist/webmention/index.d.ts.map +1 -0
- package/dist/webmention/index.js +8 -0
- package/dist/webmention/index.js.map +1 -0
- package/dist/webmention/links.d.ts +18 -0
- package/dist/webmention/links.d.ts.map +1 -0
- package/dist/webmention/links.js +64 -0
- package/dist/webmention/links.js.map +1 -0
- package/dist/webmention/microformats.d.ts +93 -0
- package/dist/webmention/microformats.d.ts.map +1 -0
- package/dist/webmention/microformats.js +376 -0
- package/dist/webmention/microformats.js.map +1 -0
- package/dist/webmention/receive.d.ts +141 -0
- package/dist/webmention/receive.d.ts.map +1 -0
- package/dist/webmention/receive.js +264 -0
- package/dist/webmention/receive.js.map +1 -0
- package/dist/webmention/routes.d.ts +37 -0
- package/dist/webmention/routes.d.ts.map +1 -0
- package/dist/webmention/routes.js +75 -0
- package/dist/webmention/routes.js.map +1 -0
- package/dist/webmention/service.d.ts +94 -0
- package/dist/webmention/service.d.ts.map +1 -0
- package/dist/webmention/service.js +207 -0
- package/dist/webmention/service.js.map +1 -0
- package/package.json +11 -6
- package/templates/site/content/_data/site.json +1 -0
- package/templates/site/content/posts/2026-01-01-hello-world.md +5 -3
- package/templates/site/geekity.config.ts +11 -1
- package/templates/site/tsconfig.json +1 -1
- package/themes/default/README.md +1096 -50
- package/themes/default/layouts/404.njk +2 -3
- package/themes/default/layouts/author.njk +37 -0
- package/themes/default/layouts/base.njk +172 -31
- package/themes/default/layouts/category.njk +27 -0
- package/themes/default/layouts/front-page.njk +57 -0
- package/themes/default/layouts/home.njk +17 -1
- package/themes/default/layouts/page.njk +57 -5
- package/themes/default/layouts/post.njk +78 -19
- package/themes/default/layouts/search.njk +57 -0
- package/themes/default/layouts/tag.njk +3 -6
- package/themes/default/mail/comment-digest.html.njk +37 -0
- package/themes/default/mail/comment-digest.subject.njk +3 -0
- package/themes/default/mail/comment-digest.txt.njk +40 -0
- package/themes/default/mail/comment-pending.html.njk +27 -0
- package/themes/default/mail/comment-pending.subject.njk +2 -0
- package/themes/default/mail/comment-pending.txt.njk +24 -0
- package/themes/default/mail/comment-reply.html.njk +21 -0
- package/themes/default/mail/comment-reply.subject.njk +2 -0
- package/themes/default/mail/comment-reply.txt.njk +22 -0
- package/themes/default/mail/contact-message.html.njk +24 -0
- package/themes/default/mail/contact-message.subject.njk +5 -0
- package/themes/default/mail/contact-message.txt.njk +20 -0
- package/themes/default/mail/password-changed.html.njk +18 -0
- package/themes/default/mail/password-changed.subject.njk +2 -0
- package/themes/default/mail/password-changed.txt.njk +17 -0
- package/themes/default/mail/password-reset.html.njk +22 -0
- package/themes/default/mail/password-reset.subject.njk +2 -0
- package/themes/default/mail/password-reset.txt.njk +18 -0
- package/themes/default/mail/test.html.njk +14 -0
- package/themes/default/mail/test.subject.njk +2 -0
- package/themes/default/mail/test.txt.njk +12 -0
- package/themes/default/partials/archive.njk +27 -0
- package/themes/default/partials/bio.njk +77 -0
- package/themes/default/partials/comment-form.njk +109 -0
- package/themes/default/partials/contact-form.njk +88 -0
- package/themes/default/partials/conversation.njk +139 -0
- package/themes/default/partials/feeds.njk +26 -0
- package/themes/default/partials/jsonld.njk +120 -0
- package/themes/default/partials/pagination.njk +12 -6
- package/themes/default/partials/post-list.njk +51 -18
- package/themes/default/partials/search-form.njk +17 -0
- package/themes/default/partials/tags.njk +26 -5
- package/themes/default/static/highlight.js +4 -0
- package/themes/default/static/style.css +1119 -194
- package/themes/default/theme.json +5 -0
- package/admin/layouts/document-editor.njk +0 -167
- package/admin/layouts/federation.njk +0 -145
- package/admin/layouts/login.njk +0 -23
- package/admin/layouts/settings.njk +0 -116
- package/admin/layouts/setup.njk +0 -27
- package/admin/layouts/users.njk +0 -91
- /package/admin/{layouts/_flash.njk → components/flash.njk} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"headers.d.ts","sourceRoot":"","sources":["../../src/admin/headers.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,MAAM,CAAC;AAG9C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAG5C;;;GAGG;AACH,eAAO,MAAM,YAAY,WAAa,CAAC;AAEvC,mFAAmF;AACnF,eAAO,MAAM,UAAU,wCAA+C,CAAC;AAEvE,kFAAkF;AAClF,eAAO,MAAM,WAAW,KAAK,CAAC;AAE9B;;;;;;;;;;GAUG;AACH,eAAO,MAAM,uBAAuB,EAAE,iBAAiB,CAAC,UAAU,CAGjE,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,EAAE,iBAAiB,CAAC,UAAU,CAa9D,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,WAAW,IAAI,MAAM,CAEpC;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAehE"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import { randomBytes } from 'node:crypto';
|
|
2
|
+
import { usesSecureCookies } from './session.js';
|
|
3
|
+
/**
|
|
4
|
+
* How long a browser is told to insist on https, in seconds. One year, which
|
|
5
|
+
* is what every preload list asks for.
|
|
6
|
+
*/
|
|
7
|
+
export const HSTS_MAX_AGE = 31_536_000;
|
|
8
|
+
/** The value of `Strict-Transport-Security`, sent only under an https base URL. */
|
|
9
|
+
export const HSTS_VALUE = `max-age=${HSTS_MAX_AGE}; includeSubDomains`;
|
|
10
|
+
/** Bytes behind one CSP nonce. Sixteen is what the CSP specification asks for. */
|
|
11
|
+
export const NONCE_BYTES = 16;
|
|
12
|
+
/**
|
|
13
|
+
* The headers every response gets, admin or not.
|
|
14
|
+
*
|
|
15
|
+
* Deliberately two of them. `nosniff` says the `Content-Type` the CMS sends is
|
|
16
|
+
* the one to believe, which constrains nothing a theme might want to do, and
|
|
17
|
+
* HSTS is about the host rather than the page — the admin and the public site
|
|
18
|
+
* are the same origin, so sending it on one and not the other would be a
|
|
19
|
+
* distinction the browser does not make. Everything else that would tell a
|
|
20
|
+
* browser what a page may load stays off the public site: a theme is somebody
|
|
21
|
+
* else's HTML and the CMS has no business deciding what it may reference.
|
|
22
|
+
*/
|
|
23
|
+
export const baselineSecurityHeaders = async (c, next) => {
|
|
24
|
+
await next();
|
|
25
|
+
applyBaseline(c.res.headers, c.var.config);
|
|
26
|
+
};
|
|
27
|
+
/**
|
|
28
|
+
* The headers an admin response gets, on top of the baseline.
|
|
29
|
+
*
|
|
30
|
+
* A nonce is minted before the handler runs, because the templates put it on
|
|
31
|
+
* the editor's script tag, and the policy naming it is written afterwards, so
|
|
32
|
+
* a handler that replaced the response cannot lose the headers.
|
|
33
|
+
*/
|
|
34
|
+
export const adminSecurityHeaders = async (c, next) => {
|
|
35
|
+
const nonce = createNonce();
|
|
36
|
+
c.set('cspNonce', nonce);
|
|
37
|
+
await next();
|
|
38
|
+
const headers = c.res.headers;
|
|
39
|
+
applyBaseline(headers, c.var.config);
|
|
40
|
+
headers.set('Content-Security-Policy', adminContentSecurityPolicy(nonce));
|
|
41
|
+
headers.set('Referrer-Policy', 'same-origin');
|
|
42
|
+
// Not DENY: the editor puts its preview in a sandboxed iframe of its own, and
|
|
43
|
+
// `frame-ancestors 'self'` below is the modern half of the same statement.
|
|
44
|
+
headers.set('X-Frame-Options', 'SAMEORIGIN');
|
|
45
|
+
};
|
|
46
|
+
/**
|
|
47
|
+
* One nonce: 128 random bits, fresh for every response.
|
|
48
|
+
*
|
|
49
|
+
* base64url rather than plain base64. CSP's `base64-value` accepts both, and
|
|
50
|
+
* the url alphabet has no `+` or `/`, which are the two characters that would
|
|
51
|
+
* otherwise need escaping every time the value is put in a pattern or a URL.
|
|
52
|
+
*/
|
|
53
|
+
export function createNonce() {
|
|
54
|
+
return randomBytes(NONCE_BYTES).toString('base64url');
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* The admin's Content-Security-Policy.
|
|
58
|
+
*
|
|
59
|
+
* Everything the admin loads is its own: the stylesheet and the editor bundle
|
|
60
|
+
* come from `/admin/_static/`, the editor's preview and upload calls are
|
|
61
|
+
* same-origin `fetch`, and the preview frame renders the site's own theme and
|
|
62
|
+
* uploads. So `'self'` is the whole allowlist, with three exceptions worth
|
|
63
|
+
* naming:
|
|
64
|
+
*
|
|
65
|
+
* - `style-src` also carries a per-response nonce. CodeMirror 6 injects its
|
|
66
|
+
* themes as `<style>` elements at runtime through `style-mod`, which is an
|
|
67
|
+
* inline style however it is written; the nonce is threaded to it through
|
|
68
|
+
* `EditorView.cspNonce` so the admin never has to say `'unsafe-inline'`.
|
|
69
|
+
* - `img-src` also allows `data:`, because a preview of a post somebody is
|
|
70
|
+
* writing may hold a data URI image and refusing it would make the preview
|
|
71
|
+
* lie about what publishing would show.
|
|
72
|
+
* - `frame-ancestors` is `'self'` rather than `'none'`: the editor's preview
|
|
73
|
+
* is a `srcdoc` iframe, which inherits this policy, and its ancestor is the
|
|
74
|
+
* admin page itself.
|
|
75
|
+
*
|
|
76
|
+
* There is no inline script at all — the slug and permalink enhancement moved
|
|
77
|
+
* into `admin/static/slug.js` — so `script-src` needs neither a nonce nor
|
|
78
|
+
* `'unsafe-inline'`.
|
|
79
|
+
*/
|
|
80
|
+
export function adminContentSecurityPolicy(nonce) {
|
|
81
|
+
return [
|
|
82
|
+
"default-src 'self'",
|
|
83
|
+
"base-uri 'self'",
|
|
84
|
+
"form-action 'self'",
|
|
85
|
+
"frame-ancestors 'self'",
|
|
86
|
+
"object-src 'none'",
|
|
87
|
+
"script-src 'self'",
|
|
88
|
+
`style-src 'self' 'nonce-${nonce}'`,
|
|
89
|
+
"img-src 'self' data:",
|
|
90
|
+
"font-src 'self' data:",
|
|
91
|
+
"media-src 'self'",
|
|
92
|
+
"connect-src 'self'",
|
|
93
|
+
"frame-src 'self'",
|
|
94
|
+
].join('; ');
|
|
95
|
+
}
|
|
96
|
+
/** The two headers every response carries. */
|
|
97
|
+
function applyBaseline(headers, config) {
|
|
98
|
+
headers.set('X-Content-Type-Options', 'nosniff');
|
|
99
|
+
// The same test the session cookie's `Secure` uses, so the two can never
|
|
100
|
+
// disagree about whether the site is served over https.
|
|
101
|
+
if (usesSecureCookies(config))
|
|
102
|
+
headers.set('Strict-Transport-Security', HSTS_VALUE);
|
|
103
|
+
}
|
|
104
|
+
//# sourceMappingURL=headers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"headers.js","sourceRoot":"","sources":["../../src/admin/headers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAM1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEjD;;;GAGG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,UAAU,CAAC;AAEvC,mFAAmF;AACnF,MAAM,CAAC,MAAM,UAAU,GAAG,WAAW,YAAY,qBAAqB,CAAC;AAEvE,kFAAkF;AAClF,MAAM,CAAC,MAAM,WAAW,GAAG,EAAE,CAAC;AAE9B;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAkC,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE;IACtF,MAAM,IAAI,EAAE,CAAC;IACb,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AAC7C,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAkC,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE;IACnF,MAAM,KAAK,GAAG,WAAW,EAAE,CAAC;IAC5B,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAEzB,MAAM,IAAI,EAAE,CAAC;IAEb,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC;IAC9B,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACrC,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE,0BAA0B,CAAC,KAAK,CAAC,CAAC,CAAC;IAC1E,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,aAAa,CAAC,CAAC;IAC9C,8EAA8E;IAC9E,2EAA2E;IAC3E,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,YAAY,CAAC,CAAC;AAC/C,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,UAAU,WAAW;IACzB,OAAO,WAAW,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;AACxD,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,UAAU,0BAA0B,CAAC,KAAa;IACtD,OAAO;QACL,oBAAoB;QACpB,iBAAiB;QACjB,oBAAoB;QACpB,wBAAwB;QACxB,mBAAmB;QACnB,mBAAmB;QACnB,2BAA2B,KAAK,GAAG;QACnC,sBAAsB;QACtB,uBAAuB;QACvB,kBAAkB;QAClB,oBAAoB;QACpB,kBAAkB;KACnB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,8CAA8C;AAC9C,SAAS,aAAa,CAAC,OAAgB,EAAE,MAAsB;IAC7D,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,SAAS,CAAC,CAAC;IACjD,yEAAyE;IACzE,wDAAwD;IACxD,IAAI,iBAAiB,CAAC,MAAM,CAAC;QAAE,OAAO,CAAC,GAAG,CAAC,2BAA2B,EAAE,UAAU,CAAC,CAAC;AACtF,CAAC"}
|
package/dist/admin/index.d.ts
CHANGED
|
@@ -1,23 +1,49 @@
|
|
|
1
1
|
export { ADMIN_ASSET_MAX_AGE, ADMIN_ASSET_PREFIX, ADMIN_STATIC_DIR, adminAssetResponse, findAdminAsset, } from './assets.ts';
|
|
2
|
-
export {
|
|
2
|
+
export { countUsers, createUser, deleteUser, DuplicateUsernameError, findUser, findUserById, findUserByIdentifier, listUsers, primaryUser, migrateUsersToFile, cleanProfile, setUserEmail, setUserPassword, setUserProfile, setUserWordPressActor, ConflictingActorIdError, UnknownUserError, USERS_FILE, USERS_FILE_MODE, usersFile, verifyUserPassword, } from './accounts.ts';
|
|
3
|
+
export type { CreateUserInput, ProfileLink, StoredUser, User, UserProfile } from './accounts.ts';
|
|
4
|
+
export { credentialProblem, emailProblem, MAXIMUM_USERNAME_LENGTH, MINIMUM_PASSWORD_LENGTH, passwordProblem, USERNAME_PATTERN, usernameProblem, } from './credentials.ts';
|
|
3
5
|
export { blankForm, DOCUMENT_FILTERS, DOCUMENTS_PER_PAGE, documentFilter, editorPath, EXCLUDE_KEY, findBySlug, formFor, listingUrl, listOptionsFor, mountDocumentScreens, newEditorPath, PAGE_KIND, POST_KIND, returnPath, splitTags, } from './documents.ts';
|
|
4
6
|
export type { AdminRender, DocumentFilter, DocumentKind, DocumentRow, EditorForm, MountDocumentScreensOptions, } from './documents.ts';
|
|
5
|
-
export {
|
|
6
|
-
export type {
|
|
7
|
+
export { applyTermChange, CATEGORY_KIND, deletePath, mountTaxonomyScreens, renamePath, renameProblem, rewriteTerm, TAG_KIND, TAXONOMY_FIELDS, TAXONOMY_KINDS, } from './taxonomy.ts';
|
|
8
|
+
export type { MountTaxonomyScreensOptions, TaxonomyKind, TermRewriteReport, TermRow, } from './taxonomy.ts';
|
|
9
|
+
export { actorSummary, deliveryRows, FEDERATION_FIELDS, FEDERATION_PATH, FEDERATION_RECENT, followerRow, INBOX_INTERACTIONS, inboxRows, localPosts, mountFederationScreen, RELAY_RETRY_PATH, RELAY_STATE_LABELS, relayRow, RESEND_PATH, resendMessage, } from './federation.ts';
|
|
10
|
+
export type { ActorSummary, DeliveryRow, DeliveryRowsContext, FollowerRow, InboxRow, InboxRowsContext, LocalPost, MountFederationScreenOptions, RelayRow, } from './federation.ts';
|
|
11
|
+
export { COMMENT_ACTIONS, COMMENT_ADMIN_FIELDS, COMMENT_TABS, COMMENTS_MODERATE_PATH, COMMENTS_PATH, COMMENTS_PER_PAGE, COMMENTS_REPLY_PATH, COMMENTS_SECTION, listUrl as commentListUrl, mountCommentsScreen, pendingComments, } from './comments.ts';
|
|
12
|
+
export type { CommentAction, CommentRow, MountCommentsScreenOptions } from './comments.ts';
|
|
13
|
+
export { MESSAGE_FIELDS, MESSAGE_TABS, MESSAGES_DELETE_PATH, MESSAGES_PATH, MESSAGES_PER_PAGE, MESSAGES_READ_PATH, MESSAGES_SECTION, listUrl as messageListUrl, mountMessagesScreen, unreadMessages, } from './messages.ts';
|
|
14
|
+
export type { MessageRow, MountMessagesScreenOptions } from './messages.ts';
|
|
7
15
|
export { flash, takeFlash } from './flash.ts';
|
|
16
|
+
export { deleteUpload, describeUpload, listUploads, MEDIA_DELETE_PATH, MEDIA_FIELDS, MEDIA_PATH, MEDIA_PER_PAGE, MEDIA_SECTION, MEDIA_UPLOAD_PATH, mediaPageUrl, mentionsUpload, mountMediaScreen, referencesTo, resolveUpload, } from './media.ts';
|
|
17
|
+
export type { DeleteUploadOptions, MediaFile, MediaReference, MountMediaScreenOptions, RemoveDerived, } from './media.ts';
|
|
18
|
+
export { formatInTimezone } from './formatting.ts';
|
|
19
|
+
export { adminContentSecurityPolicy, adminSecurityHeaders, baselineSecurityHeaders, createNonce, HSTS_MAX_AGE, HSTS_VALUE, NONCE_BYTES, } from './headers.ts';
|
|
20
|
+
export { clientAddress, createLoginThrottle, describeWait, LOCKOUT_GROWTH_LIMIT, loginKeys, } from './throttle.ts';
|
|
21
|
+
export type { LoginThrottle, LoginThrottleOptions } from './throttle.ts';
|
|
8
22
|
export { mountPreview, PREVIEW_PATH } from './preview.ts';
|
|
9
23
|
export { ARGON2_PARAMETERS, hashPassword, verifyPasswordHash } from './passwords.ts';
|
|
10
|
-
export {
|
|
11
|
-
export
|
|
12
|
-
export {
|
|
13
|
-
export
|
|
14
|
-
export {
|
|
24
|
+
export { DASHBOARD_RECENT_POSTS, guard, LOGIN_PATH, LOGOUT_PATH, mountAdmin, postEditorPath, SETUP_PATH, } from './routes.ts';
|
|
25
|
+
export { ADMIN_SECTIONS, adminMenu, UnknownAdminScreenError } from './menu.ts';
|
|
26
|
+
export type { AdminMenuChild, AdminMenuCurrentChild, AdminMenuSection, AdminScreenLocation, AdminSection, } from './menu.ts';
|
|
27
|
+
export { LANGUAGE_TAG_PATTERN, DEFAULT_SITE_SETTINGS, effectiveBaseUrl, EMAIL_PATTERN, formFromSettings, migrateSettingsToFile, readSiteSettings, SETTINGS_FIELD_NAMES, SETTINGS_FIELDS, SETTINGS_PATH, settingsFromForm, settingsFromSiteJson, settingsProblems, siteDataPath, normalizeRelayInbox, relayList, siteJsonFor, updateSiteSettings, writeSiteJson, } from './settings.ts';
|
|
28
|
+
export type { SettingsField, SettingsForm, SettingsProblems, SiteSettings } from './settings.ts';
|
|
29
|
+
export { bodyField, mountSettingsPage, settingsPagePath, settingsScreen } from './settings-page.ts';
|
|
30
|
+
export type { MountSettingsOptions, SettingsPage, SubmittedBody } from './settings-page.ts';
|
|
31
|
+
export { mountSettings, SETTINGS_PAGES } from './settings-pages.ts';
|
|
32
|
+
export { GENERAL_SETTINGS } from './settings-general.ts';
|
|
33
|
+
export { READING_SETTINGS } from './settings-reading.ts';
|
|
34
|
+
export { PERMALINKS_SETTINGS } from './settings-permalinks.ts';
|
|
35
|
+
export { AKISMET_FIELDS, AKISMET_PATH, AKISMET_REMOVE, akismetPanel, DISCUSSION_SETTINGS, } from './settings-discussion.ts';
|
|
36
|
+
export { EMAIL_SETTINGS, MAIL_FIELDS, MAIL_PATH, MAIL_REMOVE, MAIL_TEST_FIELDS, MAIL_TEST_PATH, MAIL_TEST_TEMPLATE, mailPanel, } from './settings-email.ts';
|
|
37
|
+
export { FEDERATION_SETTINGS } from './settings-federation.ts';
|
|
38
|
+
export { addUserProblems, changePasswordProblems, CHANGE_PASSWORD_PATH, deleteUserRefusal, DELETE_USER_PATH, generatePassword, GENERATED_PASSWORD_ALPHABET, GENERATED_PASSWORD_LENGTH, mountUsers, USER_EMAIL_PATH, USER_FIELDS, USERS_PATH, } from './users.ts';
|
|
15
39
|
export type { AddUserProblems, ChangePasswordProblems, MountUsersOptions } from './users.ts';
|
|
40
|
+
export { FORGOT_PATH, mountRecovery, newPasswordProblem, PASSWORD_CHANGED_TEMPLATE, RECOVERY_ANSWER, RECOVERY_FIELDS, RESET_PATH, RESET_TEMPLATE, RESET_TOKEN_LIFETIME_SECONDS, resetLink, } from './recovery.ts';
|
|
41
|
+
export type { MountRecoveryOptions } from './recovery.ts';
|
|
16
42
|
export { ADMIN_PREFIX, clearSessionCookie, CSRF_FIELD, csrfTokenMatches, SESSION_COOKIE, sessionIdFrom, setSessionCookie, usesSecureCookies, } from './session.ts';
|
|
17
|
-
export {
|
|
18
|
-
export type {
|
|
43
|
+
export { COMMENT_KINDS, COMMENT_SOURCES, COMMENT_STATUSES, DELIVERY_STATUSES, openAdminStore, RELAY_STATES, SESSION_ID_BYTES, } from './store.ts';
|
|
44
|
+
export type { AdminStore, CommentAuthor, CommentContent, CommentKind, CommentRecord, CommentSource, CommentStatus, ListCommentsOptions, PostComment, CreatePasswordResetInput, CreateSessionInput, Delivery, DeliveryStatus, FlashKind, FlashMessage, Follower, InboxActivity, LegacyActorKey, LegacySetting, LegacyUser, ListPageOptions, NewDelivery, NewFollower, NewInboxActivity, NewRelay, IssuedPasswordReset, OpenAdminStoreOptions, PasswordReset, Relay, RelayState, Session, } from './store.ts';
|
|
19
45
|
export { ADMIN_TEMPLATES, createAdminTemplateEnvironment, PACKAGED_ADMIN_DIR, } from './templates.ts';
|
|
20
46
|
export type { CreateAdminTemplateEnvironmentOptions } from './templates.ts';
|
|
21
|
-
export { mountUploads, refuseOversizedUpload, refusedUpload, storeUpload, tooLargeMessage, UPLOAD_ENVELOPE_BYTES, UPLOAD_FIELD, UPLOADS_PATH, } from './uploads.ts';
|
|
22
|
-
export type { StoredUpload, StoreUploadOptions, UploadConfig, UploadRefusal, UploadResult, } from './uploads.ts';
|
|
47
|
+
export { mountUploads, refuseOversizedUpload, refusedUpload, storeUpload, tooLargeMessage, uploadMarkdown, UPLOAD_ENVELOPE_BYTES, UPLOAD_FIELD, UPLOADS_PATH, } from './uploads.ts';
|
|
48
|
+
export type { StoredUpload, StoreUploadOptions, UploadConfig, UploadMarkdownOptions, UploadRefusal, UploadResult, } from './uploads.ts';
|
|
23
49
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/admin/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,GACf,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EACvB,uBAAuB,EACvB,eAAe,EACf,gBAAgB,EAChB,eAAe,GAChB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,SAAS,EACT,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,EACd,UAAU,EACV,WAAW,EACX,UAAU,EACV,OAAO,EACP,UAAU,EACV,cAAc,EACd,oBAAoB,EACpB,aAAa,EACb,SAAS,EACT,SAAS,EACT,UAAU,EACV,SAAS,GACV,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACV,WAAW,EACX,cAAc,EACd,YAAY,EACZ,WAAW,EACX,UAAU,EACV,2BAA2B,GAC5B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,WAAW,EACX,kBAAkB,EAClB,SAAS,EACT,UAAU,EACV,qBAAqB,EACrB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/admin/index.ts"],"names":[],"mappings":"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"}
|
package/dist/admin/index.js
CHANGED
|
@@ -1,15 +1,33 @@
|
|
|
1
1
|
export { ADMIN_ASSET_MAX_AGE, ADMIN_ASSET_PREFIX, ADMIN_STATIC_DIR, adminAssetResponse, findAdminAsset, } from './assets.js';
|
|
2
|
-
export {
|
|
2
|
+
export { countUsers, createUser, deleteUser, DuplicateUsernameError, findUser, findUserById, findUserByIdentifier, listUsers, primaryUser, migrateUsersToFile, cleanProfile, setUserEmail, setUserPassword, setUserProfile, setUserWordPressActor, ConflictingActorIdError, UnknownUserError, USERS_FILE, USERS_FILE_MODE, usersFile, verifyUserPassword, } from './accounts.js';
|
|
3
|
+
export { credentialProblem, emailProblem, MAXIMUM_USERNAME_LENGTH, MINIMUM_PASSWORD_LENGTH, passwordProblem, USERNAME_PATTERN, usernameProblem, } from './credentials.js';
|
|
3
4
|
export { blankForm, DOCUMENT_FILTERS, DOCUMENTS_PER_PAGE, documentFilter, editorPath, EXCLUDE_KEY, findBySlug, formFor, listingUrl, listOptionsFor, mountDocumentScreens, newEditorPath, PAGE_KIND, POST_KIND, returnPath, splitTags, } from './documents.js';
|
|
4
|
-
export {
|
|
5
|
+
export { applyTermChange, CATEGORY_KIND, deletePath, mountTaxonomyScreens, renamePath, renameProblem, rewriteTerm, TAG_KIND, TAXONOMY_FIELDS, TAXONOMY_KINDS, } from './taxonomy.js';
|
|
6
|
+
export { actorSummary, deliveryRows, FEDERATION_FIELDS, FEDERATION_PATH, FEDERATION_RECENT, followerRow, INBOX_INTERACTIONS, inboxRows, localPosts, mountFederationScreen, RELAY_RETRY_PATH, RELAY_STATE_LABELS, relayRow, RESEND_PATH, resendMessage, } from './federation.js';
|
|
7
|
+
export { COMMENT_ACTIONS, COMMENT_ADMIN_FIELDS, COMMENT_TABS, COMMENTS_MODERATE_PATH, COMMENTS_PATH, COMMENTS_PER_PAGE, COMMENTS_REPLY_PATH, COMMENTS_SECTION, listUrl as commentListUrl, mountCommentsScreen, pendingComments, } from './comments.js';
|
|
8
|
+
export { MESSAGE_FIELDS, MESSAGE_TABS, MESSAGES_DELETE_PATH, MESSAGES_PATH, MESSAGES_PER_PAGE, MESSAGES_READ_PATH, MESSAGES_SECTION, listUrl as messageListUrl, mountMessagesScreen, unreadMessages, } from './messages.js';
|
|
5
9
|
export { flash, takeFlash } from './flash.js';
|
|
10
|
+
export { deleteUpload, describeUpload, listUploads, MEDIA_DELETE_PATH, MEDIA_FIELDS, MEDIA_PATH, MEDIA_PER_PAGE, MEDIA_SECTION, MEDIA_UPLOAD_PATH, mediaPageUrl, mentionsUpload, mountMediaScreen, referencesTo, resolveUpload, } from './media.js';
|
|
11
|
+
export { formatInTimezone } from './formatting.js';
|
|
12
|
+
export { adminContentSecurityPolicy, adminSecurityHeaders, baselineSecurityHeaders, createNonce, HSTS_MAX_AGE, HSTS_VALUE, NONCE_BYTES, } from './headers.js';
|
|
13
|
+
export { clientAddress, createLoginThrottle, describeWait, LOCKOUT_GROWTH_LIMIT, loginKeys, } from './throttle.js';
|
|
6
14
|
export { mountPreview, PREVIEW_PATH } from './preview.js';
|
|
7
15
|
export { ARGON2_PARAMETERS, hashPassword, verifyPasswordHash } from './passwords.js';
|
|
8
|
-
export {
|
|
9
|
-
export {
|
|
10
|
-
export {
|
|
16
|
+
export { DASHBOARD_RECENT_POSTS, guard, LOGIN_PATH, LOGOUT_PATH, mountAdmin, postEditorPath, SETUP_PATH, } from './routes.js';
|
|
17
|
+
export { ADMIN_SECTIONS, adminMenu, UnknownAdminScreenError } from './menu.js';
|
|
18
|
+
export { LANGUAGE_TAG_PATTERN, DEFAULT_SITE_SETTINGS, effectiveBaseUrl, EMAIL_PATTERN, formFromSettings, migrateSettingsToFile, readSiteSettings, SETTINGS_FIELD_NAMES, SETTINGS_FIELDS, SETTINGS_PATH, settingsFromForm, settingsFromSiteJson, settingsProblems, siteDataPath, normalizeRelayInbox, relayList, siteJsonFor, updateSiteSettings, writeSiteJson, } from './settings.js';
|
|
19
|
+
export { bodyField, mountSettingsPage, settingsPagePath, settingsScreen } from './settings-page.js';
|
|
20
|
+
export { mountSettings, SETTINGS_PAGES } from './settings-pages.js';
|
|
21
|
+
export { GENERAL_SETTINGS } from './settings-general.js';
|
|
22
|
+
export { READING_SETTINGS } from './settings-reading.js';
|
|
23
|
+
export { PERMALINKS_SETTINGS } from './settings-permalinks.js';
|
|
24
|
+
export { AKISMET_FIELDS, AKISMET_PATH, AKISMET_REMOVE, akismetPanel, DISCUSSION_SETTINGS, } from './settings-discussion.js';
|
|
25
|
+
export { EMAIL_SETTINGS, MAIL_FIELDS, MAIL_PATH, MAIL_REMOVE, MAIL_TEST_FIELDS, MAIL_TEST_PATH, MAIL_TEST_TEMPLATE, mailPanel, } from './settings-email.js';
|
|
26
|
+
export { FEDERATION_SETTINGS } from './settings-federation.js';
|
|
27
|
+
export { addUserProblems, changePasswordProblems, CHANGE_PASSWORD_PATH, deleteUserRefusal, DELETE_USER_PATH, generatePassword, GENERATED_PASSWORD_ALPHABET, GENERATED_PASSWORD_LENGTH, mountUsers, USER_EMAIL_PATH, USER_FIELDS, USERS_PATH, } from './users.js';
|
|
28
|
+
export { FORGOT_PATH, mountRecovery, newPasswordProblem, PASSWORD_CHANGED_TEMPLATE, RECOVERY_ANSWER, RECOVERY_FIELDS, RESET_PATH, RESET_TEMPLATE, RESET_TOKEN_LIFETIME_SECONDS, resetLink, } from './recovery.js';
|
|
11
29
|
export { ADMIN_PREFIX, clearSessionCookie, CSRF_FIELD, csrfTokenMatches, SESSION_COOKIE, sessionIdFrom, setSessionCookie, usesSecureCookies, } from './session.js';
|
|
12
|
-
export {
|
|
30
|
+
export { COMMENT_KINDS, COMMENT_SOURCES, COMMENT_STATUSES, DELIVERY_STATUSES, openAdminStore, RELAY_STATES, SESSION_ID_BYTES, } from './store.js';
|
|
13
31
|
export { ADMIN_TEMPLATES, createAdminTemplateEnvironment, PACKAGED_ADMIN_DIR, } from './templates.js';
|
|
14
|
-
export { mountUploads, refuseOversizedUpload, refusedUpload, storeUpload, tooLargeMessage, UPLOAD_ENVELOPE_BYTES, UPLOAD_FIELD, UPLOADS_PATH, } from './uploads.js';
|
|
32
|
+
export { mountUploads, refuseOversizedUpload, refusedUpload, storeUpload, tooLargeMessage, uploadMarkdown, UPLOAD_ENVELOPE_BYTES, UPLOAD_FIELD, UPLOADS_PATH, } from './uploads.js';
|
|
15
33
|
//# sourceMappingURL=index.js.map
|
package/dist/admin/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/admin/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,GACf,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EACvB,uBAAuB,EACvB,eAAe,EACf,gBAAgB,EAChB,eAAe,GAChB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,SAAS,EACT,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,EACd,UAAU,EACV,WAAW,EACX,UAAU,EACV,OAAO,EACP,UAAU,EACV,cAAc,EACd,oBAAoB,EACpB,aAAa,EACb,SAAS,EACT,SAAS,EACT,UAAU,EACV,SAAS,GACV,MAAM,gBAAgB,CAAC;AASxB,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,WAAW,EACX,kBAAkB,EAClB,SAAS,EACT,UAAU,EACV,qBAAqB,EACrB,cAAc,EACd,iBAAiB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/admin/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The media screen: what is under `content/uploads/`, what links to it, and
|
|
3
|
+
* the two things that can be done to it — add one, and take one away.
|
|
4
|
+
*
|
|
5
|
+
* The listing is a walk of the directory rather than a query, because the
|
|
6
|
+
* directory is the truth (decision-1, decision-9). Nothing records that a file
|
|
7
|
+
* exists; a file dropped in by hand over ssh, by a git pull, or by an Eleventy
|
|
8
|
+
* build is on the screen the next time it is asked for, and a file taken away
|
|
9
|
+
* the same way is off it. The only thing the index is asked is which documents
|
|
10
|
+
* mention a URL, which is a question a directory cannot answer.
|
|
11
|
+
*/
|
|
12
|
+
import type { Hono } from 'hono';
|
|
13
|
+
import type { ContentStore } from '../content/store.ts';
|
|
14
|
+
import type { GeekityEnv } from '../env.ts';
|
|
15
|
+
import type { AdminRender } from './documents.ts';
|
|
16
|
+
/** Where the media screen lives. */
|
|
17
|
+
export declare const MEDIA_PATH = "/admin/media";
|
|
18
|
+
/** The navigation section the screen marks as current. */
|
|
19
|
+
export declare const MEDIA_SECTION = "media";
|
|
20
|
+
/** Where the screen's upload form posts. */
|
|
21
|
+
export declare const MEDIA_UPLOAD_PATH = "/admin/media/upload";
|
|
22
|
+
/** Where a row's Delete button posts. */
|
|
23
|
+
export declare const MEDIA_DELETE_PATH = "/admin/media/delete";
|
|
24
|
+
/** How many files one page of the library shows. */
|
|
25
|
+
export declare const MEDIA_PER_PAGE = 24;
|
|
26
|
+
/** The fields the forms on the media screen submit. */
|
|
27
|
+
export declare const MEDIA_FIELDS: {
|
|
28
|
+
/** The file being added, on the upload form. */
|
|
29
|
+
readonly file: 'file';
|
|
30
|
+
/** The upload being deleted, as a path under `content/uploads/`. */
|
|
31
|
+
readonly path: 'path';
|
|
32
|
+
/** Set once the admin has been shown what still references the file. */
|
|
33
|
+
readonly confirm: 'confirm';
|
|
34
|
+
};
|
|
35
|
+
/** One file under `content/uploads/`, as the screen shows it. */
|
|
36
|
+
export interface MediaFile {
|
|
37
|
+
/**
|
|
38
|
+
* Where it is under `content/uploads/`, with `/` separators — `2026/09/a.png`.
|
|
39
|
+
* This is the file's identity: it is what the delete form carries, and what
|
|
40
|
+
* a variant directory would mirror.
|
|
41
|
+
*/
|
|
42
|
+
path: string;
|
|
43
|
+
/** The public URL the site serves it at. */
|
|
44
|
+
url: string;
|
|
45
|
+
/** The last segment of {@link MediaFile.path}. */
|
|
46
|
+
name: string;
|
|
47
|
+
/** Its extension, lower case, with the dot. Empty when it has none. */
|
|
48
|
+
extension: string;
|
|
49
|
+
/** How big it is, in bytes. */
|
|
50
|
+
bytes: number;
|
|
51
|
+
/** When it last changed, as an ISO 8601 instant, which is what sorts the list. */
|
|
52
|
+
modified: string;
|
|
53
|
+
/** Whether a browser will render it as a picture, so the row shows a thumbnail. */
|
|
54
|
+
image: boolean;
|
|
55
|
+
/** The Markdown for it: an embed for an image, a link for anything else. */
|
|
56
|
+
markdown: string;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Every file under `content/uploads/`, newest first.
|
|
60
|
+
*
|
|
61
|
+
* Recursive, because uploads land under `{yyyy}/{mm}/`, and a site that has
|
|
62
|
+
* been copying files in by hand may have any shape at all under there. The
|
|
63
|
+
* order is by modification time rather than by the dated path: the path is
|
|
64
|
+
* only a hint about when a file arrived, and a file dropped in by hand may
|
|
65
|
+
* have no dated path to read.
|
|
66
|
+
*
|
|
67
|
+
* A directory that does not exist yet is an empty library rather than an
|
|
68
|
+
* error — a site that has never uploaded anything has no `uploads/`.
|
|
69
|
+
*/
|
|
70
|
+
export declare function listUploads(contentDir: string): Promise<MediaFile[]>;
|
|
71
|
+
/** One upload as the screen shows it, from what a directory walk knows. */
|
|
72
|
+
export declare function describeUpload(relative: string, bytes: number, modified: Date): MediaFile;
|
|
73
|
+
/** One document that mentions an upload, as the confirmation names it. */
|
|
74
|
+
export interface MediaReference {
|
|
75
|
+
/** Path relative to the content directory: what identifies the document. */
|
|
76
|
+
path: string;
|
|
77
|
+
/** Its title, or its path when it has none worth showing. */
|
|
78
|
+
title: string;
|
|
79
|
+
/** Where to edit it. */
|
|
80
|
+
editUrl: string;
|
|
81
|
+
/** Whether it is in the trash rather than the live tree. */
|
|
82
|
+
trashed: boolean;
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Every document whose body mentions an upload's URL, trash included.
|
|
86
|
+
*
|
|
87
|
+
* The trash counts. A trashed post can be restored tomorrow, and restoring one
|
|
88
|
+
* whose picture was deleted in the meantime is a broken post nobody was warned
|
|
89
|
+
* about — so a file the trash still points at asks for confirmation exactly as
|
|
90
|
+
* a published one does.
|
|
91
|
+
*
|
|
92
|
+
* This is the one thing on the screen that comes out of the index rather than
|
|
93
|
+
* off the disk. The index is a cache of the files (decision-1), so it may be a
|
|
94
|
+
* moment behind a hand edit; that is acceptable here because the answer is a
|
|
95
|
+
* warning rather than a decision, and the confirmation step is what makes an
|
|
96
|
+
* out-of-date answer harmless in both directions.
|
|
97
|
+
*/
|
|
98
|
+
export declare function referencesTo(store: ContentStore, url: string): MediaReference[];
|
|
99
|
+
/**
|
|
100
|
+
* Whether a body points at an upload URL.
|
|
101
|
+
*
|
|
102
|
+
* A substring search with one guard on the end of it: `/uploads/a.png` must not
|
|
103
|
+
* count as a mention of `/uploads/a.pn`, and `/uploads/logo.png` must not count
|
|
104
|
+
* as a mention of `/uploads/logo`. Anything that could still be part of the
|
|
105
|
+
* same filename disqualifies the match; a quote, a bracket, a space or the end
|
|
106
|
+
* of the body ends it.
|
|
107
|
+
*
|
|
108
|
+
* Deliberately blind to whether the mention is Markdown, HTML or prose. All
|
|
109
|
+
* three break when the file goes, and a warning that only understood
|
|
110
|
+
* `` would be a warning that missed most of them.
|
|
111
|
+
*/
|
|
112
|
+
export declare function mentionsUpload(body: string, url: string): boolean;
|
|
113
|
+
/** What {@link deleteUpload} needs to take a file away. */
|
|
114
|
+
export interface DeleteUploadOptions {
|
|
115
|
+
/** The site's content directory. */
|
|
116
|
+
contentDir: string;
|
|
117
|
+
/** The file, as a path under `content/uploads/` with `/` separators. */
|
|
118
|
+
path: string;
|
|
119
|
+
/**
|
|
120
|
+
* Take the file's derived files with it.
|
|
121
|
+
*
|
|
122
|
+
* The original under `content/uploads/` is the only source of truth
|
|
123
|
+
* (decision-10); the image variants beside it are derived, and derived state
|
|
124
|
+
* that outlives what it was derived from is rubbish nobody will ever clean
|
|
125
|
+
* up. The hook is passed the same content-relative path, is awaited before
|
|
126
|
+
* the delete reports success, and is expected to be forgiving: a file with
|
|
127
|
+
* no variants at all is the normal case.
|
|
128
|
+
*/
|
|
129
|
+
removeDerived?: RemoveDerived | undefined;
|
|
130
|
+
}
|
|
131
|
+
/** Takes an upload's derived files away with it. See {@link DeleteUploadOptions.removeDerived}. */
|
|
132
|
+
export type RemoveDerived = (uploadPath: string) => Promise<void>;
|
|
133
|
+
/**
|
|
134
|
+
* Delete one upload, and whatever was derived from it.
|
|
135
|
+
*
|
|
136
|
+
* Returns `false` when there was no such file, which is what a second click on
|
|
137
|
+
* a Delete button on a stale page is, rather than throwing: the end state the
|
|
138
|
+
* admin asked for is the end state they have.
|
|
139
|
+
*/
|
|
140
|
+
export declare function deleteUpload(options: DeleteUploadOptions): Promise<boolean>;
|
|
141
|
+
/**
|
|
142
|
+
* A submitted path as an absolute file under `content/uploads/`, or
|
|
143
|
+
* `undefined` when it is not one.
|
|
144
|
+
*
|
|
145
|
+
* The path arrives in a form, so it is an attacker's string as much as an
|
|
146
|
+
* admin's. Containment is checked after resolution rather than by inspecting
|
|
147
|
+
* the string, so `..`, an encoded one, or an absolute path cannot slip past —
|
|
148
|
+
* the same rule {@link findAsset} applies to a request for a file.
|
|
149
|
+
*/
|
|
150
|
+
export declare function resolveUpload(contentDir: string, relative: string): string | undefined;
|
|
151
|
+
/** What {@link mountMediaScreen} needs from the admin around it. */
|
|
152
|
+
export interface MountMediaScreenOptions {
|
|
153
|
+
/** The admin's renderer, which injects the chrome, the CSRF token and the flash. */
|
|
154
|
+
render: AdminRender;
|
|
155
|
+
/** Passed to every {@link deleteUpload}. See {@link DeleteUploadOptions.removeDerived}. */
|
|
156
|
+
removeDerived?: RemoveDerived | undefined;
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* Register the media screen: the library, the upload form and the delete.
|
|
160
|
+
*
|
|
161
|
+
* Uploading here is {@link storeUpload}, exactly as the editor's control and
|
|
162
|
+
* the avatar are, so what a site accepts is one answer given in one place
|
|
163
|
+
* rather than three screens that might disagree.
|
|
164
|
+
*/
|
|
165
|
+
export declare function mountMediaScreen(app: Hono<GeekityEnv>, options: MountMediaScreenOptions): void;
|
|
166
|
+
/** The URL of one page of the library. Page one is the screen's own URL. */
|
|
167
|
+
export declare function mediaPageUrl(page: number): string;
|
|
168
|
+
//# sourceMappingURL=media.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"media.d.ts","sourceRoot":"","sources":["../../src/admin/media.ts"],"names":[],"mappings":"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"}
|