@fedify/vocab 2.1.0-dev.536 → 2.1.0-dev.565

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (148) hide show
  1. package/deno.json +1 -1
  2. package/dist/accept.yaml +1 -0
  3. package/dist/activity.yaml +1 -0
  4. package/dist/actor.test.js +5 -5
  5. package/dist/add.yaml +1 -0
  6. package/dist/announce.yaml +1 -0
  7. package/dist/announceauthorization.yaml +40 -0
  8. package/dist/announcerequest.yaml +24 -0
  9. package/dist/application.yaml +1 -0
  10. package/dist/arrive.yaml +1 -0
  11. package/dist/article.yaml +1 -0
  12. package/dist/audio.yaml +1 -0
  13. package/dist/block.yaml +1 -0
  14. package/dist/chatmessage.yaml +1 -0
  15. package/dist/collection.yaml +1 -0
  16. package/dist/collectionpage.yaml +1 -0
  17. package/dist/create.yaml +1 -0
  18. package/dist/delete.yaml +1 -0
  19. package/dist/{deno-DtLTceue.js → deno-D6ZtKO2-.js} +2 -2
  20. package/dist/dislike.yaml +1 -0
  21. package/dist/document.yaml +1 -0
  22. package/dist/emojireact.yaml +1 -0
  23. package/dist/event.yaml +1 -0
  24. package/dist/flag.yaml +1 -0
  25. package/dist/follow.yaml +1 -0
  26. package/dist/group.yaml +1 -0
  27. package/dist/ignore.yaml +1 -0
  28. package/dist/image.yaml +4 -1
  29. package/dist/interactionpolicy.yaml +54 -0
  30. package/dist/interactionrule.yaml +50 -0
  31. package/dist/intransitiveactivity.yaml +1 -0
  32. package/dist/invite.yaml +1 -0
  33. package/dist/join.yaml +1 -0
  34. package/dist/leave.yaml +1 -0
  35. package/dist/like.yaml +1 -0
  36. package/dist/likeauthorization.yaml +39 -0
  37. package/dist/likerequest.yaml +23 -0
  38. package/dist/listen.yaml +1 -0
  39. package/dist/lookup.test.js +7 -6
  40. package/dist/mod.cjs +3924 -405
  41. package/dist/mod.d.cts +2154 -1
  42. package/dist/mod.d.ts +2154 -1
  43. package/dist/mod.js +3917 -406
  44. package/dist/move.yaml +1 -0
  45. package/dist/note.yaml +1 -0
  46. package/dist/object.yaml +61 -0
  47. package/dist/offer.yaml +1 -0
  48. package/dist/orderedcollection.yaml +1 -0
  49. package/dist/orderedcollectionpage.yaml +1 -0
  50. package/dist/organization.yaml +1 -0
  51. package/dist/page.yaml +1 -0
  52. package/dist/person.yaml +1 -0
  53. package/dist/place.yaml +1 -0
  54. package/dist/profile.yaml +1 -0
  55. package/dist/question.yaml +1 -0
  56. package/dist/read.yaml +1 -0
  57. package/dist/reject.yaml +1 -0
  58. package/dist/relationship.yaml +1 -0
  59. package/dist/remove.yaml +1 -0
  60. package/dist/replyauthorization.yaml +39 -0
  61. package/dist/replyrequest.yaml +23 -0
  62. package/dist/service.yaml +1 -0
  63. package/dist/tentativeaccept.yaml +1 -0
  64. package/dist/tentativereject.yaml +1 -0
  65. package/dist/tombstone.yaml +1 -0
  66. package/dist/travel.yaml +1 -0
  67. package/dist/type.test.js +3 -2
  68. package/dist/undo.yaml +1 -0
  69. package/dist/update.yaml +1 -0
  70. package/dist/video.yaml +1 -0
  71. package/dist/view.yaml +1 -0
  72. package/dist/{vocab-DNa6QysH.js → vocab-DErmegmL.js} +6904 -9618
  73. package/dist/vocab.test.js +15 -5
  74. package/package.json +4 -4
  75. package/src/__snapshots__/vocab.test.ts.snap +1756 -34
  76. package/src/accept.yaml +1 -0
  77. package/src/activity.yaml +1 -0
  78. package/src/add.yaml +1 -0
  79. package/src/announce.yaml +1 -0
  80. package/src/announceauthorization.yaml +40 -0
  81. package/src/announcerequest.yaml +24 -0
  82. package/src/application.yaml +1 -0
  83. package/src/arrive.yaml +1 -0
  84. package/src/article.yaml +1 -0
  85. package/src/audio.yaml +1 -0
  86. package/src/block.yaml +1 -0
  87. package/src/chatmessage.yaml +1 -0
  88. package/src/collection.yaml +1 -0
  89. package/src/collectionpage.yaml +1 -0
  90. package/src/create.yaml +1 -0
  91. package/src/delete.yaml +1 -0
  92. package/src/dislike.yaml +1 -0
  93. package/src/document.yaml +1 -0
  94. package/src/emojireact.yaml +1 -0
  95. package/src/event.yaml +1 -0
  96. package/src/flag.yaml +1 -0
  97. package/src/follow.yaml +1 -0
  98. package/src/group.yaml +1 -0
  99. package/src/ignore.yaml +1 -0
  100. package/src/image.yaml +4 -1
  101. package/src/interactionpolicy.yaml +54 -0
  102. package/src/interactionrule.yaml +50 -0
  103. package/src/intransitiveactivity.yaml +1 -0
  104. package/src/invite.yaml +1 -0
  105. package/src/join.yaml +1 -0
  106. package/src/leave.yaml +1 -0
  107. package/src/like.yaml +1 -0
  108. package/src/likeauthorization.yaml +39 -0
  109. package/src/likerequest.yaml +23 -0
  110. package/src/listen.yaml +1 -0
  111. package/src/move.yaml +1 -0
  112. package/src/note.yaml +1 -0
  113. package/src/object.yaml +61 -0
  114. package/src/offer.yaml +1 -0
  115. package/src/orderedcollection.yaml +1 -0
  116. package/src/orderedcollectionpage.yaml +1 -0
  117. package/src/organization.yaml +1 -0
  118. package/src/page.yaml +1 -0
  119. package/src/person.yaml +1 -0
  120. package/src/place.yaml +1 -0
  121. package/src/profile.yaml +1 -0
  122. package/src/question.yaml +1 -0
  123. package/src/read.yaml +1 -0
  124. package/src/reject.yaml +1 -0
  125. package/src/relationship.yaml +1 -0
  126. package/src/remove.yaml +1 -0
  127. package/src/replyauthorization.yaml +39 -0
  128. package/src/replyrequest.yaml +23 -0
  129. package/src/service.yaml +1 -0
  130. package/src/tentativeaccept.yaml +1 -0
  131. package/src/tentativereject.yaml +1 -0
  132. package/src/tombstone.yaml +1 -0
  133. package/src/travel.yaml +1 -0
  134. package/src/undo.yaml +1 -0
  135. package/src/update.yaml +1 -0
  136. package/src/video.yaml +1 -0
  137. package/src/view.yaml +1 -0
  138. package/src/vocab.test.ts +7 -1
  139. package/tsdown.config.ts +1 -1
  140. package/dist/chunk-BeeFIeNn.js +0 -45
  141. package/dist/execAsync-Bj-9hhe9.js +0 -17
  142. package/dist/getMachineId-bsd-JZpH2DVB.js +0 -34
  143. package/dist/getMachineId-darwin-CIJUQhqg.js +0 -30
  144. package/dist/getMachineId-linux-l0DNcix-.js +0 -27
  145. package/dist/getMachineId-unsupported-DFK1bZgt.js +0 -20
  146. package/dist/getMachineId-win-B0bq2tSf.js +0 -32
  147. /package/dist/{type-Dnf0m2yO.js → type-CNuABalk.js} +0 -0
  148. /package/dist/{utils-Dm0Onkcz.js → utils-BSWXlrig.js} +0 -0
package/deno.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fedify/vocab",
3
- "version": "2.1.0-dev.536+e79f8887",
3
+ "version": "2.1.0-dev.565+b4d238a9",
4
4
  "license": "MIT",
5
5
  "exports": {
6
6
  ".": "./src/mod.ts"
package/dist/accept.yaml CHANGED
@@ -12,4 +12,5 @@ defaultContext:
12
12
  - "https://w3id.org/identity/v1"
13
13
  - "https://www.w3.org/ns/activitystreams"
14
14
  - "https://w3id.org/security/data-integrity/v1"
15
+ - "https://gotosocial.org/ns"
15
16
  properties: []
@@ -15,6 +15,7 @@ defaultContext:
15
15
  - "https://www.w3.org/ns/activitystreams"
16
16
  - "https://w3id.org/security/v1"
17
17
  - "https://w3id.org/security/data-integrity/v1"
18
+ - "https://gotosocial.org/ns"
18
19
 
19
20
  properties:
20
21
  - pluralName: actors
@@ -2,13 +2,13 @@
2
2
  import { Temporal } from "@js-temporal/polyfill";
3
3
  globalThis.addEventListener = () => {};
4
4
 
5
- import { __export } from "./chunk-BeeFIeNn.js";
6
- import { Application, Group, Organization, Person, Service, test } from "./vocab-DNa6QysH.js";
7
- import { deno_default, esm_default } from "./deno-DtLTceue.js";
8
- import { getTypeId } from "./type-Dnf0m2yO.js";
9
- import { SpanStatusCode, trace } from "@opentelemetry/api";
5
+ import { Application, Group, Organization, Person, Service, __export } from "./vocab-DErmegmL.js";
6
+ import { deno_default, esm_default } from "./deno-D6ZtKO2-.js";
7
+ import { getTypeId } from "./type-CNuABalk.js";
8
+ import { test } from "@fedify/fixture";
10
9
  import { deepStrictEqual, ok, rejects, strictEqual, throws } from "node:assert/strict";
11
10
  import { lookupWebFinger } from "@fedify/webfinger";
11
+ import { SpanStatusCode, trace } from "@opentelemetry/api";
12
12
  import { domainToASCII, domainToUnicode } from "node:url";
13
13
 
14
14
  //#region ../../node_modules/.pnpm/fast-check@3.23.2/node_modules/fast-check/lib/esm/check/precondition/PreconditionFailure.js
package/dist/add.yaml CHANGED
@@ -13,4 +13,5 @@ defaultContext:
13
13
  - "https://w3id.org/identity/v1"
14
14
  - "https://www.w3.org/ns/activitystreams"
15
15
  - "https://w3id.org/security/data-integrity/v1"
16
+ - "https://gotosocial.org/ns"
16
17
  properties: []
@@ -12,6 +12,7 @@ defaultContext:
12
12
  - "https://w3id.org/identity/v1"
13
13
  - "https://www.w3.org/ns/activitystreams"
14
14
  - "https://w3id.org/security/data-integrity/v1"
15
+ - "https://gotosocial.org/ns"
15
16
  - toot: "http://joinmastodon.org/ns#"
16
17
  misskey: "https://misskey-hub.net/ns#"
17
18
  fedibird: "http://fedibird.com/ns#"
@@ -0,0 +1,40 @@
1
+ $schema: ../../vocab-tools/schema.yaml
2
+ name: AnnounceAuthorization
3
+ compactName: AnnounceAuthorization
4
+ uri: "https://gotosocial.org/ns#AnnounceAuthorization"
5
+ extends: "https://www.w3.org/ns/activitystreams#Object"
6
+ entity: true
7
+ description: |
8
+ Proves that an {@link Announce} interaction has been approved by
9
+ the post author.
10
+
11
+ This object is dereferenceable and is used by third parties to verify
12
+ that an announce (boost) was authorized. The `attributedTo` property
13
+ identifies the post author who granted the approval.
14
+
15
+ See [GoToSocial interaction controls](https://docs.gotosocial.org/en/latest/federation/interaction_controls/)
16
+ for details.
17
+ defaultContext:
18
+ - "https://www.w3.org/ns/activitystreams"
19
+ - "https://w3id.org/security/data-integrity/v1"
20
+ - "https://gotosocial.org/ns"
21
+
22
+ properties:
23
+ - singularName: interactingObject
24
+ functional: true
25
+ compactName: interactingObject
26
+ uri: "https://gotosocial.org/ns#interactingObject"
27
+ description: |
28
+ The URI of the interaction (e.g., an {@link Announce} activity) that
29
+ has been authorized.
30
+ range:
31
+ - "https://www.w3.org/ns/activitystreams#Object"
32
+
33
+ - singularName: interactionTarget
34
+ functional: true
35
+ compactName: interactionTarget
36
+ uri: "https://gotosocial.org/ns#interactionTarget"
37
+ description: |
38
+ The URI of the post that is the target of the authorized announce.
39
+ range:
40
+ - "https://www.w3.org/ns/activitystreams#Object"
@@ -0,0 +1,24 @@
1
+ $schema: ../../vocab-tools/schema.yaml
2
+ name: AnnounceRequest
3
+ compactName: AnnounceRequest
4
+ uri: "https://gotosocial.org/ns#AnnounceRequest"
5
+ extends: "https://www.w3.org/ns/activitystreams#Activity"
6
+ entity: true
7
+ description: |
8
+ A request to announce (boost) a post that requires approval from
9
+ the post author.
10
+
11
+ The `object` property references the post to be announced, and
12
+ the `instrument` property contains the {@link Announce} activity itself.
13
+
14
+ The post author responds with an {@link Accept} (with an
15
+ {@link AnnounceAuthorization} as `result`) or a {@link Reject}.
16
+
17
+ See [GoToSocial interaction controls](https://docs.gotosocial.org/en/latest/federation/interaction_controls/)
18
+ for details.
19
+ defaultContext:
20
+ - "https://w3id.org/identity/v1"
21
+ - "https://www.w3.org/ns/activitystreams"
22
+ - "https://w3id.org/security/data-integrity/v1"
23
+ - "https://gotosocial.org/ns"
24
+ properties: []
@@ -11,6 +11,7 @@ defaultContext:
11
11
  - "https://w3id.org/security/data-integrity/v1"
12
12
  - "https://www.w3.org/ns/did/v1"
13
13
  - "https://w3id.org/security/multikey/v1"
14
+ - "https://gotosocial.org/ns"
14
15
  - alsoKnownAs:
15
16
  "@id": "as:alsoKnownAs"
16
17
  "@type": "@id"
package/dist/arrive.yaml CHANGED
@@ -12,4 +12,5 @@ defaultContext:
12
12
  - "https://w3id.org/identity/v1"
13
13
  - "https://www.w3.org/ns/activitystreams"
14
14
  - "https://w3id.org/security/data-integrity/v1"
15
+ - "https://gotosocial.org/ns"
15
16
  properties: []
package/dist/article.yaml CHANGED
@@ -8,6 +8,7 @@ description: Represents any kind of multi-paragraph written work.
8
8
  defaultContext:
9
9
  - "https://www.w3.org/ns/activitystreams"
10
10
  - "https://w3id.org/security/data-integrity/v1"
11
+ - "https://gotosocial.org/ns"
11
12
  - toot: "http://joinmastodon.org/ns#"
12
13
  misskey: "https://misskey-hub.net/ns#"
13
14
  fedibird: "http://fedibird.com/ns#"
package/dist/audio.yaml CHANGED
@@ -8,4 +8,5 @@ description: Represents an audio document of any kind.
8
8
  defaultContext:
9
9
  - "https://www.w3.org/ns/activitystreams"
10
10
  - "https://w3id.org/security/data-integrity/v1"
11
+ - "https://gotosocial.org/ns"
11
12
  properties: []
package/dist/block.yaml CHANGED
@@ -13,4 +13,5 @@ defaultContext:
13
13
  - "https://w3id.org/identity/v1"
14
14
  - "https://www.w3.org/ns/activitystreams"
15
15
  - "https://w3id.org/security/data-integrity/v1"
16
+ - "https://gotosocial.org/ns"
16
17
  properties: []
@@ -13,6 +13,7 @@ description: |
13
13
  defaultContext:
14
14
  - "https://www.w3.org/ns/activitystreams"
15
15
  - "https://w3id.org/security/data-integrity/v1"
16
+ - "https://gotosocial.org/ns"
16
17
  - toot: "http://joinmastodon.org/ns#"
17
18
  misskey: "https://misskey-hub.net/ns#"
18
19
  fedibird: "http://fedibird.com/ns#"
@@ -13,6 +13,7 @@ description: |
13
13
  defaultContext:
14
14
  - "https://www.w3.org/ns/activitystreams"
15
15
  - "https://w3id.org/security/data-integrity/v1"
16
+ - "https://gotosocial.org/ns"
16
17
  - toot: "http://joinmastodon.org/ns#"
17
18
  misskey: "https://misskey-hub.net/ns#"
18
19
  fedibird: "http://fedibird.com/ns#"
@@ -11,6 +11,7 @@ description: |
11
11
  defaultContext:
12
12
  - "https://www.w3.org/ns/activitystreams"
13
13
  - "https://w3id.org/security/data-integrity/v1"
14
+ - "https://gotosocial.org/ns"
14
15
  - toot: "http://joinmastodon.org/ns#"
15
16
  misskey: "https://misskey-hub.net/ns#"
16
17
  fedibird: "http://fedibird.com/ns#"
package/dist/create.yaml CHANGED
@@ -9,6 +9,7 @@ defaultContext:
9
9
  - "https://w3id.org/identity/v1"
10
10
  - "https://www.w3.org/ns/activitystreams"
11
11
  - "https://w3id.org/security/data-integrity/v1"
12
+ - "https://gotosocial.org/ns"
12
13
  - toot: "http://joinmastodon.org/ns#"
13
14
  misskey: "https://misskey-hub.net/ns#"
14
15
  fedibird: "http://fedibird.com/ns#"
package/dist/delete.yaml CHANGED
@@ -11,6 +11,7 @@ defaultContext:
11
11
  - "https://w3id.org/identity/v1"
12
12
  - "https://www.w3.org/ns/activitystreams"
13
13
  - "https://w3id.org/security/data-integrity/v1"
14
+ - "https://gotosocial.org/ns"
14
15
  - toot: "http://joinmastodon.org/ns#"
15
16
  misskey: "https://misskey-hub.net/ns#"
16
17
  fedibird: "http://fedibird.com/ns#"
@@ -2,7 +2,7 @@
2
2
  import { Temporal } from "@js-temporal/polyfill";
3
3
  globalThis.addEventListener = () => {};
4
4
 
5
- import { __commonJS, __toESM } from "./chunk-BeeFIeNn.js";
5
+ import { __commonJS, __toESM } from "./vocab-DErmegmL.js";
6
6
 
7
7
  //#region ../../node_modules/.pnpm/glob-to-regexp@0.4.1/node_modules/glob-to-regexp/index.js
8
8
  var require_glob_to_regexp = __commonJS({ "../../node_modules/.pnpm/glob-to-regexp@0.4.1/node_modules/glob-to-regexp/index.js"(exports, module) {
@@ -1240,7 +1240,7 @@ var esm_default = FetchMock_default;
1240
1240
  //#endregion
1241
1241
  //#region deno.json
1242
1242
  var name = "@fedify/vocab";
1243
- var version = "2.1.0-dev.536+e79f8887";
1243
+ var version = "2.1.0-dev.565+b4d238a9";
1244
1244
  var license = "MIT";
1245
1245
  var exports = { ".": "./src/mod.ts" };
1246
1246
  var description = "Vocabularies library for @fedify/fedify";
package/dist/dislike.yaml CHANGED
@@ -9,6 +9,7 @@ defaultContext:
9
9
  - "https://w3id.org/identity/v1"
10
10
  - "https://www.w3.org/ns/activitystreams"
11
11
  - "https://w3id.org/security/data-integrity/v1"
12
+ - "https://gotosocial.org/ns"
12
13
  - toot: "http://joinmastodon.org/ns#"
13
14
  Emoji: "toot:Emoji"
14
15
  properties: []
@@ -8,6 +8,7 @@ description: Represents a document of any kind.
8
8
  defaultContext:
9
9
  - "https://www.w3.org/ns/activitystreams"
10
10
  - "https://w3id.org/security/data-integrity/v1"
11
+ - "https://gotosocial.org/ns"
11
12
 
12
13
  properties:
13
14
  - singularName: width
@@ -10,6 +10,7 @@ defaultContext:
10
10
  - "https://w3id.org/identity/v1"
11
11
  - "https://www.w3.org/ns/activitystreams"
12
12
  - "https://w3id.org/security/data-integrity/v1"
13
+ - "https://gotosocial.org/ns"
13
14
  - litepub: "http://litepub.social/ns#"
14
15
  toot: "http://joinmastodon.org/ns#"
15
16
  EmojiReact: "litepub:EmojiReact"
package/dist/event.yaml CHANGED
@@ -8,4 +8,5 @@ description: Represents any kind of event.
8
8
  defaultContext:
9
9
  - "https://www.w3.org/ns/activitystreams"
10
10
  - "https://w3id.org/security/data-integrity/v1"
11
+ - "https://gotosocial.org/ns"
11
12
  properties: []
package/dist/flag.yaml CHANGED
@@ -12,4 +12,5 @@ defaultContext:
12
12
  - "https://w3id.org/identity/v1"
13
13
  - "https://www.w3.org/ns/activitystreams"
14
14
  - "https://w3id.org/security/data-integrity/v1"
15
+ - "https://gotosocial.org/ns"
15
16
  properties: []
package/dist/follow.yaml CHANGED
@@ -16,4 +16,5 @@ defaultContext:
16
16
  - "https://w3id.org/security/data-integrity/v1"
17
17
  - "https://www.w3.org/ns/did/v1"
18
18
  - "https://w3id.org/security/multikey/v1"
19
+ - "https://gotosocial.org/ns"
19
20
  properties: []
package/dist/group.yaml CHANGED
@@ -11,6 +11,7 @@ defaultContext:
11
11
  - "https://w3id.org/security/data-integrity/v1"
12
12
  - "https://www.w3.org/ns/did/v1"
13
13
  - "https://w3id.org/security/multikey/v1"
14
+ - "https://gotosocial.org/ns"
14
15
  - alsoKnownAs:
15
16
  "@id": "as:alsoKnownAs"
16
17
  "@type": "@id"
package/dist/ignore.yaml CHANGED
@@ -11,4 +11,5 @@ defaultContext:
11
11
  - "https://w3id.org/identity/v1"
12
12
  - "https://www.w3.org/ns/activitystreams"
13
13
  - "https://w3id.org/security/data-integrity/v1"
14
+ - "https://gotosocial.org/ns"
14
15
  properties: []
package/dist/image.yaml CHANGED
@@ -5,5 +5,8 @@ uri: "https://www.w3.org/ns/activitystreams#Image"
5
5
  extends: "https://www.w3.org/ns/activitystreams#Document"
6
6
  entity: true
7
7
  description: An image document of any kind.
8
- defaultContext: "https://www.w3.org/ns/activitystreams"
8
+ defaultContext:
9
+ - "https://www.w3.org/ns/activitystreams"
10
+ - "https://w3id.org/security/data-integrity/v1"
11
+ - "https://gotosocial.org/ns"
9
12
  properties: []
@@ -0,0 +1,54 @@
1
+ $schema: ../../vocab-tools/schema.yaml
2
+ name: InteractionPolicy
3
+ compactName: InteractionPolicy
4
+ uri: "https://gotosocial.org/ns#InteractionPolicy"
5
+ entity: false
6
+ typeless: true
7
+ description: |
8
+ Represents an interaction policy attached to a post, specifying who can
9
+ like, reply to, or announce it. Each sub-policy ({@link InteractionRule})
10
+ defines which actors receive automatic or manual approval.
11
+
12
+ See [GoToSocial interaction controls](https://docs.gotosocial.org/en/latest/federation/interaction_controls/)
13
+ for details.
14
+ defaultContext: "https://gotosocial.org/ns"
15
+
16
+ properties:
17
+ - singularName: canLike
18
+ functional: true
19
+ compactName: canLike
20
+ uri: "https://gotosocial.org/ns#canLike"
21
+ untyped: true
22
+ description: |
23
+ The sub-policy specifying who can like the post.
24
+
25
+ When absent, implementations should assume that anyone can like the post
26
+ (i.e., `automaticApproval` defaults to the public collection).
27
+ range:
28
+ - "https://gotosocial.org/ns#InteractionRule"
29
+
30
+ - singularName: canReply
31
+ functional: true
32
+ compactName: canReply
33
+ uri: "https://gotosocial.org/ns#canReply"
34
+ untyped: true
35
+ description: |
36
+ The sub-policy specifying who can reply to the post.
37
+
38
+ When absent, implementations should assume that anyone can reply
39
+ (i.e., `automaticApproval` defaults to the public collection).
40
+ range:
41
+ - "https://gotosocial.org/ns#InteractionRule"
42
+
43
+ - singularName: canAnnounce
44
+ functional: true
45
+ compactName: canAnnounce
46
+ uri: "https://gotosocial.org/ns#canAnnounce"
47
+ untyped: true
48
+ description: |
49
+ The sub-policy specifying who can announce (boost) the post.
50
+
51
+ When absent, implementations should assume that anyone can announce
52
+ (i.e., `automaticApproval` defaults to the public collection).
53
+ range:
54
+ - "https://gotosocial.org/ns#InteractionRule"
@@ -0,0 +1,50 @@
1
+ $schema: ../../vocab-tools/schema.yaml
2
+ name: InteractionRule
3
+ compactName: InteractionRule
4
+ uri: "https://gotosocial.org/ns#InteractionRule"
5
+ entity: false
6
+ typeless: true
7
+ description: |
8
+ Represents a sub-policy within an {@link InteractionPolicy}, defining which
9
+ actors receive automatic or manual approval for a specific interaction type
10
+ (like, reply, or announce).
11
+
12
+ Valid values in the approval lists include:
13
+
14
+ - The ActivityStreams public collection
15
+ (`https://www.w3.org/ns/activitystreams#Public`) for anyone
16
+ - The post author's `followers` or `following` collection URIs
17
+ - Individual actor URIs
18
+
19
+ When an actor appears in both `automaticApproval` and `manualApproval`,
20
+ the more specific value takes precedence (individual URI overrides
21
+ collection membership), and `automaticApproval` takes precedence over
22
+ `manualApproval` for identical URIs.
23
+
24
+ See [GoToSocial interaction controls](https://docs.gotosocial.org/en/latest/federation/interaction_controls/)
25
+ for details.
26
+ defaultContext: "https://gotosocial.org/ns"
27
+
28
+ properties:
29
+ - pluralName: automaticApprovals
30
+ singularName: automaticApproval
31
+ singularAccessor: true
32
+ compactName: automaticApproval
33
+ uri: "https://gotosocial.org/ns#automaticApproval"
34
+ description: |
35
+ URIs of actors or collections whose interactions are automatically
36
+ approved without requiring manual review by the post author.
37
+ range:
38
+ - "http://www.w3.org/2001/XMLSchema#anyURI"
39
+
40
+ - pluralName: manualApprovals
41
+ singularName: manualApproval
42
+ singularAccessor: true
43
+ compactName: manualApproval
44
+ uri: "https://gotosocial.org/ns#manualApproval"
45
+ description: |
46
+ URIs of actors or collections whose interactions require manual approval
47
+ by the post author. The post author can accept or reject these
48
+ interactions at their discretion.
49
+ range:
50
+ - "http://www.w3.org/2001/XMLSchema#anyURI"
@@ -12,4 +12,5 @@ defaultContext:
12
12
  - "https://w3id.org/identity/v1"
13
13
  - "https://www.w3.org/ns/activitystreams"
14
14
  - "https://w3id.org/security/data-integrity/v1"
15
+ - "https://gotosocial.org/ns"
15
16
  properties: []
package/dist/invite.yaml CHANGED
@@ -11,4 +11,5 @@ defaultContext:
11
11
  - "https://w3id.org/identity/v1"
12
12
  - "https://www.w3.org/ns/activitystreams"
13
13
  - "https://w3id.org/security/data-integrity/v1"
14
+ - "https://gotosocial.org/ns"
14
15
  properties: []
package/dist/join.yaml CHANGED
@@ -11,4 +11,5 @@ defaultContext:
11
11
  - "https://w3id.org/identity/v1"
12
12
  - "https://www.w3.org/ns/activitystreams"
13
13
  - "https://w3id.org/security/data-integrity/v1"
14
+ - "https://gotosocial.org/ns"
14
15
  properties: []
package/dist/leave.yaml CHANGED
@@ -11,4 +11,5 @@ defaultContext:
11
11
  - "https://w3id.org/identity/v1"
12
12
  - "https://www.w3.org/ns/activitystreams"
13
13
  - "https://w3id.org/security/data-integrity/v1"
14
+ - "https://gotosocial.org/ns"
14
15
  properties: []
package/dist/like.yaml CHANGED
@@ -11,6 +11,7 @@ defaultContext:
11
11
  - "https://w3id.org/identity/v1"
12
12
  - "https://www.w3.org/ns/activitystreams"
13
13
  - "https://w3id.org/security/data-integrity/v1"
14
+ - "https://gotosocial.org/ns"
14
15
  - toot: "http://joinmastodon.org/ns#"
15
16
  Emoji: "toot:Emoji"
16
17
  properties: []
@@ -0,0 +1,39 @@
1
+ $schema: ../../vocab-tools/schema.yaml
2
+ name: LikeAuthorization
3
+ compactName: LikeAuthorization
4
+ uri: "https://gotosocial.org/ns#LikeApproval"
5
+ extends: "https://www.w3.org/ns/activitystreams#Object"
6
+ entity: true
7
+ description: |
8
+ Proves that a {@link Like} interaction has been approved by the post author.
9
+
10
+ This object is dereferenceable and is used by third parties to verify
11
+ that a like was authorized. The `attributedTo` property identifies
12
+ the post author who granted the approval.
13
+
14
+ See [GoToSocial interaction controls](https://docs.gotosocial.org/en/latest/federation/interaction_controls/)
15
+ for details.
16
+ defaultContext:
17
+ - "https://www.w3.org/ns/activitystreams"
18
+ - "https://w3id.org/security/data-integrity/v1"
19
+ - "https://gotosocial.org/ns"
20
+
21
+ properties:
22
+ - singularName: interactingObject
23
+ functional: true
24
+ compactName: interactingObject
25
+ uri: "https://gotosocial.org/ns#interactingObject"
26
+ description: |
27
+ The URI of the interaction (e.g., a {@link Like} activity) that
28
+ has been authorized.
29
+ range:
30
+ - "https://www.w3.org/ns/activitystreams#Object"
31
+
32
+ - singularName: interactionTarget
33
+ functional: true
34
+ compactName: interactionTarget
35
+ uri: "https://gotosocial.org/ns#interactionTarget"
36
+ description: |
37
+ The URI of the post that is the target of the authorized interaction.
38
+ range:
39
+ - "https://www.w3.org/ns/activitystreams#Object"
@@ -0,0 +1,23 @@
1
+ $schema: ../../vocab-tools/schema.yaml
2
+ name: LikeRequest
3
+ compactName: LikeRequest
4
+ uri: "https://gotosocial.org/ns#LikeRequest"
5
+ extends: "https://www.w3.org/ns/activitystreams#Activity"
6
+ entity: true
7
+ description: |
8
+ A request to like a post that requires approval from the post author.
9
+
10
+ The `object` property references the post to be liked, and
11
+ the `instrument` property contains the {@link Like} activity itself.
12
+
13
+ The post author responds with an {@link Accept} (with a
14
+ {@link LikeAuthorization} as `result`) or a {@link Reject}.
15
+
16
+ See [GoToSocial interaction controls](https://docs.gotosocial.org/en/latest/federation/interaction_controls/)
17
+ for details.
18
+ defaultContext:
19
+ - "https://w3id.org/identity/v1"
20
+ - "https://www.w3.org/ns/activitystreams"
21
+ - "https://w3id.org/security/data-integrity/v1"
22
+ - "https://gotosocial.org/ns"
23
+ properties: []
package/dist/listen.yaml CHANGED
@@ -9,4 +9,5 @@ defaultContext:
9
9
  - "https://w3id.org/identity/v1"
10
10
  - "https://www.w3.org/ns/activitystreams"
11
11
  - "https://w3id.org/security/data-integrity/v1"
12
+ - "https://gotosocial.org/ns"
12
13
  properties: []
@@ -2,14 +2,15 @@
2
2
  import { Temporal } from "@js-temporal/polyfill";
3
3
  globalThis.addEventListener = () => {};
4
4
 
5
- import { Collection, Note, Object as Object$1, Person, createTestTracerProvider, mockDocumentLoader, test } from "./vocab-DNa6QysH.js";
6
- import { deno_default, esm_default } from "./deno-DtLTceue.js";
7
- import { getTypeId } from "./type-Dnf0m2yO.js";
8
- import { assertInstanceOf } from "./utils-Dm0Onkcz.js";
9
- import { getLogger } from "@logtape/logtape";
10
- import { SpanStatusCode, trace } from "@opentelemetry/api";
5
+ import { Collection, Note, Object as Object$1, Person } from "./vocab-DErmegmL.js";
6
+ import { deno_default, esm_default } from "./deno-D6ZtKO2-.js";
7
+ import { getTypeId } from "./type-CNuABalk.js";
8
+ import { assertInstanceOf } from "./utils-BSWXlrig.js";
9
+ import { createTestTracerProvider, mockDocumentLoader, test } from "@fedify/fixture";
11
10
  import { deepStrictEqual, equal, ok, rejects } from "node:assert/strict";
12
11
  import { lookupWebFinger } from "@fedify/webfinger";
12
+ import { SpanStatusCode, trace } from "@opentelemetry/api";
13
+ import { getLogger } from "@logtape/logtape";
13
14
  import { getDocumentLoader } from "@fedify/vocab-runtime";
14
15
  import { delay } from "es-toolkit";
15
16