@geekity/cms 0.22.0 → 0.24.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +19 -4
- package/admin/pages/documents/editor.njk +18 -0
- package/admin/static/editor.js +1 -1
- package/dist/admin/comments.js +2 -2
- package/dist/admin/comments.js.map +1 -1
- package/dist/admin/documents.d.ts +36 -7
- package/dist/admin/documents.d.ts.map +1 -1
- package/dist/admin/documents.js +140 -29
- package/dist/admin/documents.js.map +1 -1
- package/dist/admin/editor-layout.d.ts +1 -1
- package/dist/admin/editor-layout.d.ts.map +1 -1
- package/dist/admin/editor-layout.js +6 -1
- package/dist/admin/editor-layout.js.map +1 -1
- package/dist/admin/event-field.d.ts +26 -0
- package/dist/admin/event-field.d.ts.map +1 -0
- package/dist/admin/event-field.js +74 -0
- package/dist/admin/event-field.js.map +1 -0
- package/dist/admin/federation.js +3 -3
- package/dist/admin/federation.js.map +1 -1
- package/dist/admin/media.js +2 -2
- package/dist/admin/media.js.map +1 -1
- package/dist/admin/preview.d.ts.map +1 -1
- package/dist/admin/preview.js +16 -1
- package/dist/admin/preview.js.map +1 -1
- package/dist/admin/store.d.ts +9 -0
- package/dist/admin/store.d.ts.map +1 -1
- package/dist/admin/store.js +16 -5
- package/dist/admin/store.js.map +1 -1
- package/dist/avatars/avatars.js +1 -1
- package/dist/avatars/avatars.js.map +1 -1
- package/dist/comments/policy.d.ts +10 -0
- package/dist/comments/policy.d.ts.map +1 -1
- package/dist/comments/policy.js +12 -0
- package/dist/comments/policy.js.map +1 -1
- package/dist/comments/records.d.ts +5 -1
- package/dist/comments/records.d.ts.map +1 -1
- package/dist/comments/records.js +16 -2
- package/dist/comments/records.js.map +1 -1
- package/dist/content/event.d.ts +40 -0
- package/dist/content/event.d.ts.map +1 -0
- package/dist/content/event.js +51 -0
- package/dist/content/event.js.map +1 -0
- package/dist/content/handles.d.ts +22 -0
- package/dist/content/handles.d.ts.map +1 -0
- package/dist/content/handles.js +68 -0
- package/dist/content/handles.js.map +1 -0
- package/dist/content/markdown.d.ts +8 -2
- package/dist/content/markdown.d.ts.map +1 -1
- package/dist/content/markdown.js +55 -5
- package/dist/content/markdown.js.map +1 -1
- package/dist/content/parser.d.ts +3 -0
- package/dist/content/parser.d.ts.map +1 -1
- package/dist/content/parser.js +1 -1
- package/dist/content/parser.js.map +1 -1
- package/dist/content/post-type.d.ts +12 -8
- package/dist/content/post-type.d.ts.map +1 -1
- package/dist/content/post-type.js +12 -2
- package/dist/content/post-type.js.map +1 -1
- package/dist/content/rsvp.d.ts +29 -0
- package/dist/content/rsvp.d.ts.map +1 -0
- package/dist/content/rsvp.js +49 -0
- package/dist/content/rsvp.js.map +1 -0
- package/dist/content/save.d.ts +2 -1
- package/dist/content/save.d.ts.map +1 -1
- package/dist/content/save.js +10 -3
- package/dist/content/save.js.map +1 -1
- package/dist/content/store.d.ts +11 -4
- package/dist/content/store.d.ts.map +1 -1
- package/dist/content/store.js +15 -4
- package/dist/content/store.js.map +1 -1
- package/dist/content/sync.d.ts.map +1 -1
- package/dist/content/sync.js +7 -6
- package/dist/content/sync.js.map +1 -1
- package/dist/env.d.ts +3 -0
- package/dist/env.d.ts.map +1 -1
- package/dist/federation/article.d.ts +9 -3
- package/dist/federation/article.d.ts.map +1 -1
- package/dist/federation/article.js +90 -34
- package/dist/federation/article.js.map +1 -1
- package/dist/federation/cited-post.d.ts +13 -0
- package/dist/federation/cited-post.d.ts.map +1 -0
- package/dist/federation/cited-post.js +75 -0
- package/dist/federation/cited-post.js.map +1 -0
- package/dist/federation/delivery.d.ts.map +1 -1
- package/dist/federation/delivery.js +31 -2
- package/dist/federation/delivery.js.map +1 -1
- package/dist/federation/handles.d.ts +28 -0
- package/dist/federation/handles.d.ts.map +1 -0
- package/dist/federation/handles.js +65 -0
- package/dist/federation/handles.js.map +1 -0
- package/dist/federation/inbox.d.ts +2 -1
- package/dist/federation/inbox.d.ts.map +1 -1
- package/dist/federation/inbox.js +11 -3
- package/dist/federation/inbox.js.map +1 -1
- package/dist/federation/mount.d.ts.map +1 -1
- package/dist/federation/mount.js +18 -2
- package/dist/federation/mount.js.map +1 -1
- package/dist/federation/profiles.d.ts.map +1 -1
- package/dist/federation/profiles.js +2 -8
- package/dist/federation/profiles.js.map +1 -1
- package/dist/federation/site-loaders.d.ts +15 -0
- package/dist/federation/site-loaders.d.ts.map +1 -0
- package/dist/federation/site-loaders.js +19 -0
- package/dist/federation/site-loaders.js.map +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +23 -1
- package/dist/index.js.map +1 -1
- package/dist/indieauth/client.js +2 -2
- package/dist/indieauth/client.js.map +1 -1
- package/dist/micropub/create.d.ts +2 -1
- package/dist/micropub/create.d.ts.map +1 -1
- package/dist/micropub/create.js +57 -8
- package/dist/micropub/create.js.map +1 -1
- package/dist/micropub/endpoint.d.ts.map +1 -1
- package/dist/micropub/endpoint.js +12 -4
- package/dist/micropub/endpoint.js.map +1 -1
- package/dist/micropub/update.d.ts +3 -0
- package/dist/micropub/update.d.ts.map +1 -1
- package/dist/micropub/update.js +29 -4
- package/dist/micropub/update.js.map +1 -1
- package/dist/web/context.d.ts +32 -4
- package/dist/web/context.d.ts.map +1 -1
- package/dist/web/context.js +28 -1
- package/dist/web/context.js.map +1 -1
- package/dist/web/conversation.d.ts +26 -1
- package/dist/web/conversation.d.ts.map +1 -1
- package/dist/web/conversation.js +67 -10
- package/dist/web/conversation.js.map +1 -1
- package/dist/web/documents.d.ts +12 -0
- package/dist/web/documents.d.ts.map +1 -1
- package/dist/web/documents.js +20 -0
- package/dist/web/documents.js.map +1 -1
- package/dist/web/errors.d.ts.map +1 -1
- package/dist/web/errors.js +5 -3
- package/dist/web/errors.js.map +1 -1
- package/dist/web/feed-item.d.ts.map +1 -1
- package/dist/web/feed-item.js +8 -3
- package/dist/web/feed-item.js.map +1 -1
- package/dist/web/llms.d.ts +8 -0
- package/dist/web/llms.d.ts.map +1 -1
- package/dist/web/llms.js +25 -7
- package/dist/web/llms.js.map +1 -1
- package/dist/web/maintenance.d.ts.map +1 -1
- package/dist/web/maintenance.js +5 -2
- package/dist/web/maintenance.js.map +1 -1
- package/dist/web/negotiate.d.ts +4 -2
- package/dist/web/negotiate.d.ts.map +1 -1
- package/dist/web/negotiate.js +17 -7
- package/dist/web/negotiate.js.map +1 -1
- package/dist/web/render.d.ts +3 -0
- package/dist/web/render.d.ts.map +1 -1
- package/dist/web/render.js +39 -6
- package/dist/web/render.js.map +1 -1
- package/dist/web/routes.d.ts.map +1 -1
- package/dist/web/routes.js +67 -25
- package/dist/web/routes.js.map +1 -1
- package/dist/web/templates.d.ts +4 -1
- package/dist/web/templates.d.ts.map +1 -1
- package/dist/web/templates.js +11 -0
- package/dist/web/templates.js.map +1 -1
- package/dist/webmention/cited-picture.d.ts +11 -4
- package/dist/webmention/cited-picture.d.ts.map +1 -1
- package/dist/webmention/cited-picture.js +22 -13
- package/dist/webmention/cited-picture.js.map +1 -1
- package/dist/webmention/cited-start.d.ts +10 -0
- package/dist/webmention/cited-start.d.ts.map +1 -0
- package/dist/webmention/cited-start.js +21 -0
- package/dist/webmention/cited-start.js.map +1 -0
- package/dist/webmention/fetch-public.d.ts +2 -2
- package/dist/webmention/fetch-public.d.ts.map +1 -1
- package/dist/webmention/fetch-public.js +1 -1
- package/dist/webmention/fetch-public.js.map +1 -1
- package/dist/webmention/html.d.ts +2 -0
- package/dist/webmention/html.d.ts.map +1 -1
- package/dist/webmention/html.js +6 -0
- package/dist/webmention/html.js.map +1 -1
- package/dist/webmention/index.d.ts +2 -1
- package/dist/webmention/index.d.ts.map +1 -1
- package/dist/webmention/index.js +1 -0
- package/dist/webmention/index.js.map +1 -1
- package/dist/webmention/microformats.d.ts +25 -2
- package/dist/webmention/microformats.d.ts.map +1 -1
- package/dist/webmention/microformats.js +38 -4
- package/dist/webmention/microformats.js.map +1 -1
- package/dist/webmention/pingback.d.ts +42 -0
- package/dist/webmention/pingback.d.ts.map +1 -0
- package/dist/webmention/pingback.js +229 -0
- package/dist/webmention/pingback.js.map +1 -0
- package/dist/webmention/receive.d.ts +20 -2
- package/dist/webmention/receive.d.ts.map +1 -1
- package/dist/webmention/receive.js +25 -16
- package/dist/webmention/receive.js.map +1 -1
- package/dist/webmention/reply-context.d.ts +65 -18
- package/dist/webmention/reply-context.d.ts.map +1 -1
- package/dist/webmention/reply-context.js +403 -99
- package/dist/webmention/reply-context.js.map +1 -1
- package/dist/webmention/reply-contexts.d.ts +3 -1
- package/dist/webmention/reply-contexts.d.ts.map +1 -1
- package/dist/webmention/reply-contexts.js +53 -17
- package/dist/webmention/reply-contexts.js.map +1 -1
- package/dist/webmention/routes.d.ts.map +1 -1
- package/dist/webmention/routes.js +2 -0
- package/dist/webmention/routes.js.map +1 -1
- package/dist/webmention/service.d.ts +11 -0
- package/dist/webmention/service.d.ts.map +1 -1
- package/dist/webmention/service.js +27 -6
- package/dist/webmention/service.js.map +1 -1
- package/dist/webmention/syndication.d.ts +6 -0
- package/dist/webmention/syndication.d.ts.map +1 -1
- package/dist/webmention/syndication.js +12 -0
- package/dist/webmention/syndication.js.map +1 -1
- package/package.json +7 -7
- package/themes/default/README.md +127 -37
- package/themes/default/layouts/410.njk +10 -0
- package/themes/default/layouts/base.njk +3 -0
- package/themes/default/layouts/page.njk +7 -0
- package/themes/default/layouts/post.njk +7 -4
- package/themes/default/layouts/search.njk +1 -1
- package/themes/default/partials/cited-page.njk +7 -0
- package/themes/default/partials/conversation.njk +25 -5
- package/themes/default/partials/event.njk +27 -0
- package/themes/default/partials/jsonld.njk +28 -0
- package/themes/default/partials/post-list.njk +5 -2
- package/themes/default/partials/reply-context.njk +24 -4
- package/themes/default/partials/rsvp.njk +7 -0
- package/themes/default/src/style.css +20 -0
- package/themes/default/static/style.css +35 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"html.js","sourceRoot":"","sources":["../../src/webmention/html.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;
|
|
1
|
+
{"version":3,"file":"html.js","sourceRoot":"","sources":["../../src/webmention/html.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,8 +5,9 @@ export { externalLinks } from './links.ts';
|
|
|
5
5
|
export { itemsIn, linksTo, sourceEntry } from './microformats.ts';
|
|
6
6
|
export type { MicroformatItem, MicroformatValue, SourceEntry, WebmentionKind, } from './microformats.ts';
|
|
7
7
|
export { checkWebmentionRequest, VERIFY_TIMEOUT_MS, verifyWebmention } from './receive.ts';
|
|
8
|
-
export type { CheckWebmentionOptions, IncomingWebmention, VerifyWebmentionOptions, WebmentionOutcome, WebmentionRequest, } from './receive.ts';
|
|
8
|
+
export type { CheckWebmentionOptions, IncomingWebmention, NotStored, RequestProblem, VerifyWebmentionOptions, WebmentionOutcome, WebmentionRequest, } from './receive.ts';
|
|
9
9
|
export { mountWebmentions, WEBMENTION_FIELDS, WEBMENTION_PATH, webmentionEndpointFor, } from './routes.ts';
|
|
10
|
+
export { mountPingbacks, PINGBACK_FAULTS, PINGBACK_MAX_BYTES, PINGBACK_PATH, pingbackEndpointFor, } from './pingback.ts';
|
|
10
11
|
export { isPrivateHost, publicHost, systemHostLookup } from './public-address.ts';
|
|
11
12
|
export type { HostLookup } from './public-address.ts';
|
|
12
13
|
export { fetchReplyContext, readReplyContext, REPLY_CONTEXT_MAX_BYTES, REPLY_CONTEXT_TIMEOUT_MS, } from './reply-context.ts';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/webmention/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,qBAAqB,GACtB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,SAAS,EACT,UAAU,EACV,WAAW,EACX,SAAS,EACT,SAAS,EACT,SAAS,EACT,MAAM,GACP,MAAM,WAAW,CAAC;AACnB,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAClE,YAAY,EACV,eAAe,EACf,gBAAgB,EAChB,WAAW,EACX,cAAc,GACf,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAC3F,YAAY,EACV,sBAAsB,EACtB,kBAAkB,EAClB,uBAAuB,EACvB,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,qBAAqB,GACtB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAClF,YAAY,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,uBAAuB,EACvB,wBAAwB,GACzB,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EAAE,wBAAwB,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACpG,OAAO,EAAE,yBAAyB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AACrF,YAAY,EACV,gCAAgC,EAChC,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,uBAAuB,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACxE,YAAY,EACV,8BAA8B,EAC9B,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,uBAAuB,EACvB,eAAe,EACf,6BAA6B,EAC7B,gBAAgB,EAChB,4BAA4B,EAC5B,wBAAwB,EACxB,wBAAwB,GACzB,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EACV,wBAAwB,EACxB,iBAAiB,EACjB,wBAAwB,GACzB,MAAM,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/webmention/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,qBAAqB,GACtB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,SAAS,EACT,UAAU,EACV,WAAW,EACX,SAAS,EACT,SAAS,EACT,SAAS,EACT,MAAM,GACP,MAAM,WAAW,CAAC;AACnB,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAClE,YAAY,EACV,eAAe,EACf,gBAAgB,EAChB,WAAW,EACX,cAAc,GACf,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAC3F,YAAY,EACV,sBAAsB,EACtB,kBAAkB,EAClB,SAAS,EACT,cAAc,EACd,uBAAuB,EACvB,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,qBAAqB,GACtB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,cAAc,EACd,eAAe,EACf,kBAAkB,EAClB,aAAa,EACb,mBAAmB,GACpB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAClF,YAAY,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,uBAAuB,EACvB,wBAAwB,GACzB,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EAAE,wBAAwB,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACpG,OAAO,EAAE,yBAAyB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AACrF,YAAY,EACV,gCAAgC,EAChC,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,uBAAuB,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACxE,YAAY,EACV,8BAA8B,EAC9B,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,uBAAuB,EACvB,eAAe,EACf,6BAA6B,EAC7B,gBAAgB,EAChB,4BAA4B,EAC5B,wBAAwB,EACxB,wBAAwB,GACzB,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EACV,wBAAwB,EACxB,iBAAiB,EACjB,wBAAwB,GACzB,MAAM,kBAAkB,CAAC"}
|
package/dist/webmention/index.js
CHANGED
|
@@ -4,6 +4,7 @@ export { externalLinks } from './links.js';
|
|
|
4
4
|
export { itemsIn, linksTo, sourceEntry } from './microformats.js';
|
|
5
5
|
export { checkWebmentionRequest, VERIFY_TIMEOUT_MS, verifyWebmention } from './receive.js';
|
|
6
6
|
export { mountWebmentions, WEBMENTION_FIELDS, WEBMENTION_PATH, webmentionEndpointFor, } from './routes.js';
|
|
7
|
+
export { mountPingbacks, PINGBACK_FAULTS, PINGBACK_MAX_BYTES, PINGBACK_PATH, pingbackEndpointFor, } from './pingback.js';
|
|
7
8
|
export { isPrivateHost, publicHost, systemHostLookup } from './public-address.js';
|
|
8
9
|
export { fetchReplyContext, readReplyContext, REPLY_CONTEXT_MAX_BYTES, REPLY_CONTEXT_TIMEOUT_MS, } from './reply-context.js';
|
|
9
10
|
export { createReplyContextService, REPLY_CONTEXTS_FILE } from './reply-contexts.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/webmention/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,qBAAqB,GACtB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,SAAS,EACT,UAAU,EACV,WAAW,EACX,SAAS,EACT,SAAS,EACT,SAAS,EACT,MAAM,GACP,MAAM,WAAW,CAAC;AAEnB,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAOlE,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/webmention/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,qBAAqB,GACtB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,SAAS,EACT,UAAU,EACV,WAAW,EACX,SAAS,EACT,SAAS,EACT,SAAS,EACT,MAAM,GACP,MAAM,WAAW,CAAC;AAEnB,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAOlE,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAU3F,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,qBAAqB,GACtB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,cAAc,EACd,eAAe,EACf,kBAAkB,EAClB,aAAa,EACb,mBAAmB,GACpB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAElF,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,uBAAuB,EACvB,wBAAwB,GACzB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,yBAAyB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAMrF,OAAO,EAAE,uBAAuB,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAOxE,OAAO,EACL,uBAAuB,EACvB,eAAe,EACf,6BAA6B,EAC7B,gBAAgB,EAChB,4BAA4B,EAC5B,wBAAwB,EACxB,wBAAwB,GACzB,MAAM,kBAAkB,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { RsvpValue } from '../content/rsvp.ts';
|
|
1
2
|
import type { HtmlElement } from './html.ts';
|
|
2
3
|
/**
|
|
3
4
|
* What somebody else's page says about this one.
|
|
@@ -46,6 +47,8 @@ export interface SourceEntry {
|
|
|
46
47
|
readonly published: string | null;
|
|
47
48
|
/** Where it lives: its own `u-url`, else the URL it was fetched from. */
|
|
48
49
|
readonly url: string;
|
|
50
|
+
/** A reply's `p-rsvp`, when it is one of the four values (TASK-198). */
|
|
51
|
+
readonly rsvp?: RsvpValue;
|
|
49
52
|
}
|
|
50
53
|
/**
|
|
51
54
|
* Whether a source page really links to the target.
|
|
@@ -74,21 +77,41 @@ export interface CitedEntry {
|
|
|
74
77
|
readonly name: string;
|
|
75
78
|
/** Its `e-content` as text, or its `p-summary`, or empty. */
|
|
76
79
|
readonly text: string;
|
|
77
|
-
/** Who wrote it, when the entry says, with their page when it gives
|
|
80
|
+
/** Who wrote it, when the entry says, with their page and avatar when it gives them. */
|
|
78
81
|
readonly author: {
|
|
79
82
|
readonly name: string;
|
|
80
83
|
readonly url: string | null;
|
|
84
|
+
readonly photo: string | null;
|
|
81
85
|
} | undefined;
|
|
82
86
|
/** When it says it was published, as an ISO 8601 instant, or `null`. */
|
|
83
87
|
readonly published: string | null;
|
|
88
|
+
/** Its `u-url` and `u-uid`, which a silo copy points at its original with (TASK-197). */
|
|
89
|
+
readonly urls: readonly string[];
|
|
90
|
+
/** Its `u-syndication`: the copies of it elsewhere. */
|
|
91
|
+
readonly syndication: readonly string[];
|
|
84
92
|
}
|
|
85
93
|
/**
|
|
86
94
|
* What the first `h-entry` on a parsed page says about itself, or `undefined`
|
|
87
95
|
* when the page has none. Unlike {@link sourceEntry} nothing is filled in from
|
|
88
96
|
* the page around it: a citation names who wrote a post only when the post
|
|
89
|
-
* does.
|
|
97
|
+
* does. Only the author's avatar may come from elsewhere on the page, from an
|
|
98
|
+
* `h-card` that is the same person: the same page, or the same name when the
|
|
99
|
+
* entry's author has no page.
|
|
90
100
|
*/
|
|
91
101
|
export declare function citedEntry(root: HtmlElement, pageUrl: string): CitedEntry | undefined;
|
|
102
|
+
/** The first `h-event` on a page, as the parts an RSVP's citation of it shows (TASK-198). */
|
|
103
|
+
export interface CitedEvent {
|
|
104
|
+
/** Its `p-name`, or empty. */
|
|
105
|
+
readonly name: string;
|
|
106
|
+
/** Its `p-summary`, `p-description` or `e-content` as text, or empty. */
|
|
107
|
+
readonly text: string;
|
|
108
|
+
/** Its `dt-start` as written, or empty. */
|
|
109
|
+
readonly start: string;
|
|
110
|
+
/** Its `p-location`: a place's name when it is an `h-card` or `h-adr`, else its text. */
|
|
111
|
+
readonly location: string;
|
|
112
|
+
}
|
|
113
|
+
/** What the first `h-event` on a parsed page says about itself, or `undefined`. */
|
|
114
|
+
export declare function citedEvent(root: HtmlElement, pageUrl: string): CitedEvent | undefined;
|
|
92
115
|
/** One microformat found on a page. */
|
|
93
116
|
export interface MicroformatItem {
|
|
94
117
|
/** Its types: `h-entry`, `h-card` and so on. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"microformats.d.ts","sourceRoot":"","sources":["../../src/webmention/microformats.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAE7C;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,8EAA8E;AAC9E,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,CAAC;AASrE,2CAA2C;AAC3C,MAAM,WAAW,WAAW;IAC1B,+BAA+B;IAC/B,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAC9B,6CAA6C;IAC7C,QAAQ,CAAC,MAAM,EAAE;QACf,sEAAsE;QACtE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,iCAAiC;QACjC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;QAC5B,+BAA+B;QAC/B,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;KAC/B,CAAC;IACF,oBAAoB;IACpB,QAAQ,CAAC,OAAO,EAAE;QAChB,gEAAgE;QAChE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,2EAA2E;QAC3E,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,wEAAwE;IACxE,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,yEAAyE;IACzE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"microformats.d.ts","sourceRoot":"","sources":["../../src/webmention/microformats.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { rsvpValue } from '../content/rsvp.js';
|
|
1
2
|
import { classesOf, elementsIn, innerHtmlOf, isElement, parseHtml, textOf } from './html.js';
|
|
2
3
|
/** The property whose value naming the target makes a mention that kind. */
|
|
3
4
|
const KIND_PROPERTIES = {
|
|
@@ -58,8 +59,11 @@ export function sourceEntry(html, sourceUrl, target) {
|
|
|
58
59
|
const chosen = chooseEntry(entries, wanted, base);
|
|
59
60
|
const author = authorOf(chosen, items, sourceUrl);
|
|
60
61
|
const content = contentOf(chosen, root);
|
|
62
|
+
const kind = chosen === undefined ? 'mention' : kindOf(chosen, wanted);
|
|
63
|
+
const rsvp = chosen === undefined || kind !== 'reply' ? undefined : rsvpValue(first(chosen, 'rsvp')?.text);
|
|
61
64
|
return {
|
|
62
|
-
kind
|
|
65
|
+
kind,
|
|
66
|
+
...(rsvp === undefined ? {} : { rsvp }),
|
|
63
67
|
author,
|
|
64
68
|
content,
|
|
65
69
|
published: chosen === undefined ? null : instantOf(first(chosen, 'published')),
|
|
@@ -70,22 +74,52 @@ export function sourceEntry(html, sourceUrl, target) {
|
|
|
70
74
|
* What the first `h-entry` on a parsed page says about itself, or `undefined`
|
|
71
75
|
* when the page has none. Unlike {@link sourceEntry} nothing is filled in from
|
|
72
76
|
* the page around it: a citation names who wrote a post only when the post
|
|
73
|
-
* does.
|
|
77
|
+
* does. Only the author's avatar may come from elsewhere on the page, from an
|
|
78
|
+
* `h-card` that is the same person: the same page, or the same name when the
|
|
79
|
+
* entry's author has no page.
|
|
74
80
|
*/
|
|
75
81
|
export function citedEntry(root, pageUrl) {
|
|
76
|
-
const
|
|
82
|
+
const items = itemsIn(root, baseOf(root, pageUrl));
|
|
83
|
+
const entry = itemsOfType(items, 'h-entry')[0];
|
|
77
84
|
if (entry === undefined)
|
|
78
85
|
return undefined;
|
|
79
86
|
const author = first(entry, 'author');
|
|
80
87
|
const card = author?.item === undefined ? undefined : cardOf(author.item);
|
|
81
88
|
const authorName = card?.name ?? author?.text ?? '';
|
|
89
|
+
const authorUrl = card?.url ?? null;
|
|
90
|
+
const photo = card?.photo ??
|
|
91
|
+
itemsOfType(items, 'h-card')
|
|
92
|
+
.map(cardOf)
|
|
93
|
+
.find((other) => other.photo !== null &&
|
|
94
|
+
(authorUrl === null ? other.name === authorName : other.url === authorUrl))?.photo ??
|
|
95
|
+
null;
|
|
82
96
|
return {
|
|
83
97
|
name: first(entry, 'name')?.text ?? '',
|
|
84
98
|
text: first(entry, 'content')?.text ?? first(entry, 'summary')?.text ?? '',
|
|
85
|
-
author: authorName === '' ? undefined : { name: authorName, url:
|
|
99
|
+
author: authorName === '' ? undefined : { name: authorName, url: authorUrl, photo },
|
|
86
100
|
published: instantOf(first(entry, 'published')),
|
|
101
|
+
urls: [...valuesOf(entry, 'url'), ...valuesOf(entry, 'uid')],
|
|
102
|
+
syndication: valuesOf(entry, 'syndication'),
|
|
87
103
|
};
|
|
88
104
|
}
|
|
105
|
+
/** What the first `h-event` on a parsed page says about itself, or `undefined`. */
|
|
106
|
+
export function citedEvent(root, pageUrl) {
|
|
107
|
+
const event = itemsOfType(itemsIn(root, baseOf(root, pageUrl)), 'h-event')[0];
|
|
108
|
+
if (event === undefined)
|
|
109
|
+
return undefined;
|
|
110
|
+
return {
|
|
111
|
+
name: first(event, 'name')?.text ?? '',
|
|
112
|
+
text: first(event, 'summary')?.text ??
|
|
113
|
+
first(event, 'description')?.text ??
|
|
114
|
+
first(event, 'content')?.text ??
|
|
115
|
+
'',
|
|
116
|
+
start: first(event, 'start')?.text ?? '',
|
|
117
|
+
location: first(event, 'location')?.text ?? '',
|
|
118
|
+
};
|
|
119
|
+
}
|
|
120
|
+
function valuesOf(item, property) {
|
|
121
|
+
return (item.properties[property] ?? []).map((value) => value.text).filter((text) => text !== '');
|
|
122
|
+
}
|
|
89
123
|
/** The entry a webmention is about, or `undefined` when the page has none. */
|
|
90
124
|
function chooseEntry(entries, target, base) {
|
|
91
125
|
if (target !== undefined) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"microformats.js","sourceRoot":"","sources":["../../src/webmention/microformats.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"microformats.js","sourceRoot":"","sources":["../../src/webmention/microformats.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import type { Hono } from 'hono';
|
|
2
|
+
import type { Document } from '../content/document.ts';
|
|
3
|
+
import type { GeekityEnv } from '../env.ts';
|
|
4
|
+
/**
|
|
5
|
+
* Pingback 1.0, which is how most WordPress sites say they linked here.
|
|
6
|
+
*
|
|
7
|
+
* A pingback is a webmention that arrived another way: the same source and
|
|
8
|
+
* target, put through the same check, verification, spam checker and
|
|
9
|
+
* moderation queue, and filed as the same comment. Only the envelope differs.
|
|
10
|
+
* It is an XML-RPC call, and the spec has the receiver answer once it knows,
|
|
11
|
+
* so the source is fetched inside the request rather than after it, and the
|
|
12
|
+
* answer is one of the fault codes the spec defines.
|
|
13
|
+
*/
|
|
14
|
+
/** Where a pingback is sent. */
|
|
15
|
+
export declare const PINGBACK_PATH = "/_geekity/pingback";
|
|
16
|
+
/** Far more than two URLs in an XML-RPC envelope could need. */
|
|
17
|
+
export declare const PINGBACK_MAX_BYTES: number;
|
|
18
|
+
/**
|
|
19
|
+
* The fault codes a pingback is answered with: the spec's own, and the XML-RPC
|
|
20
|
+
* interoperability codes for a call that is not a pingback at all.
|
|
21
|
+
*/
|
|
22
|
+
export declare const PINGBACK_FAULTS: {
|
|
23
|
+
readonly generic: 0;
|
|
24
|
+
readonly sourceMissing: 16;
|
|
25
|
+
readonly noLink: 17;
|
|
26
|
+
readonly targetMissing: 32;
|
|
27
|
+
readonly notATarget: 33;
|
|
28
|
+
readonly alreadyRegistered: 48;
|
|
29
|
+
readonly notWellFormed: -32700;
|
|
30
|
+
readonly unknownMethod: -32601;
|
|
31
|
+
readonly badParams: -32602;
|
|
32
|
+
};
|
|
33
|
+
/**
|
|
34
|
+
* The endpoint a document should advertise, or `undefined` when it should not.
|
|
35
|
+
*
|
|
36
|
+
* Every post, and a page only while it takes comments, and nothing when the
|
|
37
|
+
* site takes no webmentions: the same switch, since they are the same thing.
|
|
38
|
+
*/
|
|
39
|
+
export declare function pingbackEndpointFor(site: Record<string, unknown>, document: Document, now: Date): string | undefined;
|
|
40
|
+
/** Register the pingback endpoint. Mounted by the public site. */
|
|
41
|
+
export declare function mountPingbacks(app: Hono<GeekityEnv>): void;
|
|
42
|
+
//# sourceMappingURL=pingback.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pingback.d.ts","sourceRoot":"","sources":["../../src/webmention/pingback.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAW,IAAI,EAAE,MAAM,MAAM,CAAC;AAK1C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAO5C;;;;;;;;;GASG;AAEH,gCAAgC;AAChC,eAAO,MAAM,aAAa,uBAAuB,CAAC;AAElD,gEAAgE;AAChE,eAAO,MAAM,kBAAkB,QAAY,CAAC;AAE5C;;;GAGG;AACH,eAAO,MAAM,eAAe;aAC1B,OAAO,EAAE,CAAC;aACV,aAAa,EAAE,EAAM;aACrB,MAAM,EAAE,EAAM;aACd,aAAa,EAAE,EAAM;aACrB,UAAU,EAAE,EAAM;aAClB,iBAAiB,EAAE,EAAM;aACzB,aAAa,EAAE,CAAC,KAAK;aACrB,aAAa,EAAE,CAAC,KAAK;aACrB,SAAS,EAAE,CAAC,KAAK;CACT,CAAC;AAcX;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,QAAQ,EAAE,QAAQ,EAClB,GAAG,EAAE,IAAI,GACR,MAAM,GAAG,SAAS,CAGpB;AAED,kEAAkE;AAClE,wBAAgB,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,UAAU,CAAC,GAAG,IAAI,CAgB1D"}
|
|
@@ -0,0 +1,229 @@
|
|
|
1
|
+
import { readSiteSettings } from '../admin/settings.js';
|
|
2
|
+
import { clientAddress } from '../admin/throttle.js';
|
|
3
|
+
import { answerable, commentPolicyOf } from '../comments/policy.js';
|
|
4
|
+
import { publicDocumentAt } from '../web/documents.js';
|
|
5
|
+
import { escapeXml } from '../web/feed-xml.js';
|
|
6
|
+
import { checkWebmentionRequest } from './receive.js';
|
|
7
|
+
import { webmentionEndpointFor } from './routes.js';
|
|
8
|
+
/**
|
|
9
|
+
* Pingback 1.0, which is how most WordPress sites say they linked here.
|
|
10
|
+
*
|
|
11
|
+
* A pingback is a webmention that arrived another way: the same source and
|
|
12
|
+
* target, put through the same check, verification, spam checker and
|
|
13
|
+
* moderation queue, and filed as the same comment. Only the envelope differs.
|
|
14
|
+
* It is an XML-RPC call, and the spec has the receiver answer once it knows,
|
|
15
|
+
* so the source is fetched inside the request rather than after it, and the
|
|
16
|
+
* answer is one of the fault codes the spec defines.
|
|
17
|
+
*/
|
|
18
|
+
/** Where a pingback is sent. */
|
|
19
|
+
export const PINGBACK_PATH = '/_geekity/pingback';
|
|
20
|
+
/** Far more than two URLs in an XML-RPC envelope could need. */
|
|
21
|
+
export const PINGBACK_MAX_BYTES = 16 * 1024;
|
|
22
|
+
/**
|
|
23
|
+
* The fault codes a pingback is answered with: the spec's own, and the XML-RPC
|
|
24
|
+
* interoperability codes for a call that is not a pingback at all.
|
|
25
|
+
*/
|
|
26
|
+
export const PINGBACK_FAULTS = {
|
|
27
|
+
generic: 0,
|
|
28
|
+
sourceMissing: 0x0010,
|
|
29
|
+
noLink: 0x0011,
|
|
30
|
+
targetMissing: 0x0020,
|
|
31
|
+
notATarget: 0x0021,
|
|
32
|
+
alreadyRegistered: 0x0030,
|
|
33
|
+
notWellFormed: -32700,
|
|
34
|
+
unknownMethod: -32601,
|
|
35
|
+
badParams: -32602,
|
|
36
|
+
};
|
|
37
|
+
const REQUEST_FAULTS = {
|
|
38
|
+
source: PINGBACK_FAULTS.sourceMissing,
|
|
39
|
+
target: PINGBACK_FAULTS.targetMissing,
|
|
40
|
+
elsewhere: PINGBACK_FAULTS.notATarget,
|
|
41
|
+
same: PINGBACK_FAULTS.notATarget,
|
|
42
|
+
};
|
|
43
|
+
/**
|
|
44
|
+
* The endpoint a document should advertise, or `undefined` when it should not.
|
|
45
|
+
*
|
|
46
|
+
* Every post, and a page only while it takes comments, and nothing when the
|
|
47
|
+
* site takes no webmentions: the same switch, since they are the same thing.
|
|
48
|
+
*/
|
|
49
|
+
export function pingbackEndpointFor(site, document, now) {
|
|
50
|
+
if (webmentionEndpointFor(site) === undefined)
|
|
51
|
+
return undefined;
|
|
52
|
+
return answerable(document, commentPolicyOf(site), now) ? PINGBACK_PATH : undefined;
|
|
53
|
+
}
|
|
54
|
+
/** Register the pingback endpoint. Mounted by the public site. */
|
|
55
|
+
export function mountPingbacks(app) {
|
|
56
|
+
app.post(PINGBACK_PATH, async (c) => {
|
|
57
|
+
if (!readSiteSettings(c.var.config.contentDir).webmentionsReceive) {
|
|
58
|
+
return c.text('This site does not take pingbacks.', 404);
|
|
59
|
+
}
|
|
60
|
+
const answer = await answerPing(c);
|
|
61
|
+
return c.body(typeof answer === 'string' ? success(answer) : fault(answer), 200, {
|
|
62
|
+
'content-type': 'text/xml; charset=utf-8',
|
|
63
|
+
});
|
|
64
|
+
});
|
|
65
|
+
app.get(PINGBACK_PATH, (c) => {
|
|
66
|
+
c.header('allow', 'POST');
|
|
67
|
+
return c.text('Send a pingback here as an XML-RPC pingback.ping POST.', 405);
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
async function answerPing(c) {
|
|
71
|
+
const { store, config, webmentions, renderer } = c.var;
|
|
72
|
+
const xml = await readBounded(c.req.raw, PINGBACK_MAX_BYTES);
|
|
73
|
+
if (xml === undefined) {
|
|
74
|
+
return { code: PINGBACK_FAULTS.notWellFormed, message: 'The call is too large.' };
|
|
75
|
+
}
|
|
76
|
+
const call = readMethodCall(xml);
|
|
77
|
+
if ('code' in call)
|
|
78
|
+
return call;
|
|
79
|
+
if (call.method !== 'pingback.ping') {
|
|
80
|
+
return { code: PINGBACK_FAULTS.unknownMethod, message: 'Only pingback.ping is served here.' };
|
|
81
|
+
}
|
|
82
|
+
const [source, target] = call.params;
|
|
83
|
+
if (call.params.length !== 2 || source === undefined || target === undefined) {
|
|
84
|
+
return {
|
|
85
|
+
code: PINGBACK_FAULTS.badParams,
|
|
86
|
+
message: 'pingback.ping takes a source and a target.',
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
const checked = checkWebmentionRequest(source, target, {
|
|
90
|
+
baseUrl: config.baseUrl,
|
|
91
|
+
documentAt: (pathname) => publicDocumentAt(store, pathname),
|
|
92
|
+
});
|
|
93
|
+
if (!checked.ok)
|
|
94
|
+
return { code: REQUEST_FAULTS[checked.problem], message: checked.message };
|
|
95
|
+
if (pingbackEndpointFor(renderer.site(), checked.document, config.now()) === undefined) {
|
|
96
|
+
return { code: PINGBACK_FAULTS.notATarget, message: 'That page takes no pingbacks.' };
|
|
97
|
+
}
|
|
98
|
+
const outcome = await webmentions.receive({
|
|
99
|
+
source: checked.source,
|
|
100
|
+
target: checked.target,
|
|
101
|
+
document: checked.document,
|
|
102
|
+
address: clientAddress(c, config),
|
|
103
|
+
userAgent: c.req.header('user-agent'),
|
|
104
|
+
referrer: c.req.header('referer'),
|
|
105
|
+
});
|
|
106
|
+
return answerFor(outcome);
|
|
107
|
+
}
|
|
108
|
+
function answerFor(outcome) {
|
|
109
|
+
switch (outcome.kind) {
|
|
110
|
+
case 'stored':
|
|
111
|
+
// The entry has been rewritten from the source as it now reads, exactly
|
|
112
|
+
// as a webmention sent again rewrites it; the sender is told it was
|
|
113
|
+
// already here, which is what the spec has it told.
|
|
114
|
+
return outcome.created
|
|
115
|
+
? 'Thanks. The pingback is waiting for a moderator.'
|
|
116
|
+
: { code: PINGBACK_FAULTS.alreadyRegistered, message: 'That pingback is already here.' };
|
|
117
|
+
case 'unreachable':
|
|
118
|
+
return {
|
|
119
|
+
code: PINGBACK_FAULTS.generic,
|
|
120
|
+
message: `The source could not be read: ${outcome.reason}`,
|
|
121
|
+
};
|
|
122
|
+
case 'deleted':
|
|
123
|
+
case 'ignored':
|
|
124
|
+
switch (outcome.why) {
|
|
125
|
+
case 'gone':
|
|
126
|
+
return { code: PINGBACK_FAULTS.sourceMissing, message: 'The source does not exist.' };
|
|
127
|
+
case 'unlinked':
|
|
128
|
+
return { code: PINGBACK_FAULTS.noLink, message: 'The source does not link here.' };
|
|
129
|
+
case 'discarded':
|
|
130
|
+
return { code: PINGBACK_FAULTS.generic, message: 'The pingback was not accepted.' };
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
const CALL = /^<methodCall>\s*<methodName>([^<]*)<\/methodName>\s*(?:<params>([^]*)<\/params>\s*)?<\/methodCall>$/;
|
|
135
|
+
const PARAM = /\s*<param>\s*<value>(?:\s*<string>([^<]*)<\/string>\s*|([^<]*))<\/value>\s*<\/param>\s*/y;
|
|
136
|
+
function readMethodCall(xml) {
|
|
137
|
+
const refused = { code: PINGBACK_FAULTS.notWellFormed, message: 'The call is not well formed.' };
|
|
138
|
+
const body = xml
|
|
139
|
+
.replace(/^\s*<\?xml[^?]*\?>/, '')
|
|
140
|
+
.replaceAll(/<!--[^]*?-->/g, '')
|
|
141
|
+
.trim();
|
|
142
|
+
if (hasDeclarationOrInstruction(body))
|
|
143
|
+
return refused;
|
|
144
|
+
const call = CALL.exec(body);
|
|
145
|
+
if (call === null)
|
|
146
|
+
return refused;
|
|
147
|
+
const params = [];
|
|
148
|
+
const list = (call[2] ?? '').trim();
|
|
149
|
+
PARAM.lastIndex = 0;
|
|
150
|
+
while (PARAM.lastIndex < list.length) {
|
|
151
|
+
const param = PARAM.exec(list);
|
|
152
|
+
if (param === null)
|
|
153
|
+
return refused;
|
|
154
|
+
const value = decodeText(param[1] ?? param[2] ?? '');
|
|
155
|
+
if (value === undefined)
|
|
156
|
+
return refused;
|
|
157
|
+
params.push(value);
|
|
158
|
+
}
|
|
159
|
+
const method = decodeText(call[1] ?? '');
|
|
160
|
+
if (method === undefined)
|
|
161
|
+
return refused;
|
|
162
|
+
return { method: method.trim(), params: params.map((param) => param.trim()) };
|
|
163
|
+
}
|
|
164
|
+
function hasDeclarationOrInstruction(body) {
|
|
165
|
+
return body.includes('<!') || body.includes('<?');
|
|
166
|
+
}
|
|
167
|
+
const PREDEFINED = {
|
|
168
|
+
amp: '&',
|
|
169
|
+
lt: '<',
|
|
170
|
+
gt: '>',
|
|
171
|
+
quot: '"',
|
|
172
|
+
apos: "'",
|
|
173
|
+
};
|
|
174
|
+
function decodeText(text) {
|
|
175
|
+
let unknown = false;
|
|
176
|
+
const decoded = text.replaceAll(/&([^;&]*);|&/g, (whole, name) => {
|
|
177
|
+
const resolved = name === undefined ? undefined : reference(name);
|
|
178
|
+
if (resolved === undefined)
|
|
179
|
+
unknown = true;
|
|
180
|
+
return resolved ?? whole;
|
|
181
|
+
});
|
|
182
|
+
return unknown ? undefined : decoded;
|
|
183
|
+
}
|
|
184
|
+
function reference(name) {
|
|
185
|
+
const numeric = /^#(?:x([0-9a-f]+)|([0-9]+))$/i.exec(name);
|
|
186
|
+
if (numeric === null)
|
|
187
|
+
return PREDEFINED[name];
|
|
188
|
+
const point = numeric[1] === undefined ? Number(numeric[2]) : parseInt(numeric[1], 16);
|
|
189
|
+
return point > 0 && point <= 0x10ffff ? String.fromCodePoint(point) : undefined;
|
|
190
|
+
}
|
|
191
|
+
async function readBounded(request, max) {
|
|
192
|
+
if (Number(request.headers.get('content-length') ?? 0) > max)
|
|
193
|
+
return undefined;
|
|
194
|
+
if (request.body === null)
|
|
195
|
+
return '';
|
|
196
|
+
const reader = request.body.getReader();
|
|
197
|
+
const decoder = new TextDecoder();
|
|
198
|
+
let text = '';
|
|
199
|
+
let read = 0;
|
|
200
|
+
try {
|
|
201
|
+
for (;;) {
|
|
202
|
+
const chunk = await reader.read();
|
|
203
|
+
if (chunk.done)
|
|
204
|
+
break;
|
|
205
|
+
read += chunk.value.length;
|
|
206
|
+
if (read > max)
|
|
207
|
+
return undefined;
|
|
208
|
+
text += decoder.decode(chunk.value, { stream: true });
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
finally {
|
|
212
|
+
await reader.cancel().catch(() => undefined);
|
|
213
|
+
}
|
|
214
|
+
return text + decoder.decode();
|
|
215
|
+
}
|
|
216
|
+
function success(message) {
|
|
217
|
+
return `<?xml version="1.0"?>
|
|
218
|
+
<methodResponse><params><param><value><string>${escapeXml(message)}</string></value></param></params></methodResponse>
|
|
219
|
+
`;
|
|
220
|
+
}
|
|
221
|
+
function fault({ code, message }) {
|
|
222
|
+
return `<?xml version="1.0"?>
|
|
223
|
+
<methodResponse><fault><value><struct>
|
|
224
|
+
<member><name>faultCode</name><value><int>${String(code)}</int></value></member>
|
|
225
|
+
<member><name>faultString</name><value><string>${escapeXml(message)}</string></value></member>
|
|
226
|
+
</struct></value></fault></methodResponse>
|
|
227
|
+
`;
|
|
228
|
+
}
|
|
229
|
+
//# sourceMappingURL=pingback.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pingback.js","sourceRoot":"","sources":["../../src/webmention/pingback.ts"],"names":[],"mappings":"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"}
|