Commit 1fd02704 authored by Randy Wressell's avatar Randy Wressell
Browse files

Add more missing vocab items

parent 3d6cea3b
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -8,6 +8,12 @@ Version 0.11.0

To be released.

 -  Added `Invite` class to Activity Vocabulary API.
    Added `Join` class to Activity Vocabulary API.
    Added `Leave` class to Activity Vocabulary API.
    Added `Listen` class to Activity Vocabulary API.
    [[#65], [#80] by Randy Wressell]

 -  Improved runtime type error messages for Activity Vocabulary API.  [[#79]]

 -  Added `suppressError` option to dereferencing accessors of Activity
+4 −0
Original line number Diff line number Diff line
@@ -56,7 +56,11 @@ lists the activity types that Fedify provides:
 -  [`Flag`](https://jsr.io/@fedify/fedify/doc/vocab/~/Flag)
 -  [`Follow`](https://jsr.io/@fedify/fedify/doc/vocab/~/Follow)
 -  [`Ignore`](https://jsr.io/@fedify/fedify/doc/vocab/~/Ignore)
 -  [`Invite`](https://jsr.io/@fedify/fedify/doc/vocab/~/Invite)
 -  [`Join`](https://jsr.io/@fedify/fedify/doc/vocab/~/Join)
 -  [`Leave`](https://jsr.io/@fedify/fedify/doc/vocab/~/Leave)
 -  [`Like`](https://jsr.io/@fedify/fedify/doc/vocab/~/Like)
 -  [`Listen`](https://jsr.io/@fedify/fedify/doc/vocab/~/Listen)
 -  [`Offer`](https://jsr.io/@fedify/fedify/doc/vocab/~/Offer)
 -  [`Question`](https://jsr.io/@fedify/fedify/doc/vocab/~/Question)
 -  [`Reject`](https://jsr.io/@fedify/fedify/doc/vocab/~/Reject)
+971 −76

File changed.

Preview size limit exceeded, changes collapsed.

+480 −0
Original line number Diff line number Diff line
@@ -2988,6 +2988,366 @@ snapshot[`Deno.inspect(IntransitiveActivity) [auto] 3`] = `
}'
`;

snapshot[`Deno.inspect(Invite) [auto] 1`] = `
'Invite {
  id: URL "https://example.com/",
  attachments: [ Object {}, Link {}, PropertyValue {} ],
  attributions: [ Application {}, Group {}, Organization {}, Person {}, Service {} ],
  audience: Object {},
  contents: [ "hello", <en> "hello" ],
  contexts: [ Object {}, Link {} ],
  names: [ "hello", <en> "hello" ],
  endTime: 2024-03-03T08:30:06.796196096Z,
  generators: [ Object {}, Link {} ],
  icon: Image {},
  image: Image {},
  replyTargets: [ Object {}, Link {} ],
  locations: [ Object {}, Link {} ],
  previews: [ Link {}, Object {} ],
  published: 2024-03-03T08:30:06.796196096Z,
  replies: Collection {},
  startTime: 2024-03-03T08:30:06.796196096Z,
  summaries: [ "hello", <en> "hello" ],
  tags: [ Object {}, Link {} ],
  updated: 2024-03-03T08:30:06.796196096Z,
  urls: [ URL "https://example.com/", Link {} ],
  to: Object {},
  bto: Object {},
  cc: Object {},
  bcc: Object {},
  mediaType: "hello",
  duration: PT1H,
  sensitive: true,
  proof: DataIntegrityProof {},
  actors: [ Application {}, Group {}, Organization {}, Person {}, Service {} ],
  object: Object {},
  target: Object {},
  result: Object {},
  origin: Object {},
  instrument: Object {}
}'
`;

snapshot[`Deno.inspect(Invite) [auto] 2`] = `
'Invite {
  id: URL "https://example.com/",
  attachments: [ URL "https://example.com/" ],
  attribution: URL "https://example.com/",
  audience: URL "https://example.com/",
  contents: [ "hello", <en> "hello" ],
  contexts: [ URL "https://example.com/" ],
  names: [ "hello", <en> "hello" ],
  endTime: 2024-03-03T08:30:06.796196096Z,
  generators: [ URL "https://example.com/" ],
  icon: URL "https://example.com/",
  image: URL "https://example.com/",
  replyTarget: URL "https://example.com/",
  location: URL "https://example.com/",
  preview: URL "https://example.com/",
  published: 2024-03-03T08:30:06.796196096Z,
  replies: URL "https://example.com/",
  startTime: 2024-03-03T08:30:06.796196096Z,
  summaries: [ "hello", <en> "hello" ],
  tags: [ URL "https://example.com/" ],
  updated: 2024-03-03T08:30:06.796196096Z,
  urls: [ URL "https://example.com/", Link {} ],
  to: URL "https://example.com/",
  bto: URL "https://example.com/",
  cc: URL "https://example.com/",
  bcc: URL "https://example.com/",
  mediaType: "hello",
  duration: PT1H,
  sensitive: true,
  proof: URL "https://example.com/",
  actor: URL "https://example.com/",
  object: URL "https://example.com/",
  target: URL "https://example.com/",
  result: URL "https://example.com/",
  origin: URL "https://example.com/",
  instrument: URL "https://example.com/"
}'
`;

snapshot[`Deno.inspect(Invite) [auto] 3`] = `
'Invite {
  id: URL "https://example.com/",
  attachments: [ Object {}, Object {} ],
  attributions: [ Application {}, Application {} ],
  audiences: [ Object {}, Object {} ],
  contents: [ "hello", "hello" ],
  contexts: [ Object {}, Object {} ],
  names: [ "hello", "hello" ],
  endTime: 2024-03-03T08:30:06.796196096Z,
  generators: [ Object {}, Object {} ],
  icons: [ Image {}, Image {} ],
  images: [ Image {}, Image {} ],
  replyTargets: [ Object {}, Object {} ],
  locations: [ Object {}, Object {} ],
  previews: [ Link {}, Link {} ],
  published: 2024-03-03T08:30:06.796196096Z,
  replies: Collection {},
  startTime: 2024-03-03T08:30:06.796196096Z,
  summaries: [ "hello", "hello" ],
  tags: [ Object {}, Object {} ],
  updated: 2024-03-03T08:30:06.796196096Z,
  urls: [ URL "https://example.com/", URL "https://example.com/" ],
  tos: [ Object {}, Object {} ],
  btos: [ Object {}, Object {} ],
  ccs: [ Object {}, Object {} ],
  bccs: [ Object {}, Object {} ],
  mediaType: "hello",
  duration: PT1H,
  sensitive: true,
  proofs: [ DataIntegrityProof {}, DataIntegrityProof {} ],
  actors: [ Application {}, Application {} ],
  objects: [ Object {}, Object {} ],
  targets: [ Object {}, Object {} ],
  results: [ Object {}, Object {} ],
  origins: [ Object {}, Object {} ],
  instruments: [ Object {}, Object {} ]
}'
`;

snapshot[`Deno.inspect(Join) [auto] 1`] = `
'Join {
  id: URL "https://example.com/",
  attachments: [ Object {}, Link {}, PropertyValue {} ],
  attributions: [ Application {}, Group {}, Organization {}, Person {}, Service {} ],
  audience: Object {},
  contents: [ "hello", <en> "hello" ],
  contexts: [ Object {}, Link {} ],
  names: [ "hello", <en> "hello" ],
  endTime: 2024-03-03T08:30:06.796196096Z,
  generators: [ Object {}, Link {} ],
  icon: Image {},
  image: Image {},
  replyTargets: [ Object {}, Link {} ],
  locations: [ Object {}, Link {} ],
  previews: [ Link {}, Object {} ],
  published: 2024-03-03T08:30:06.796196096Z,
  replies: Collection {},
  startTime: 2024-03-03T08:30:06.796196096Z,
  summaries: [ "hello", <en> "hello" ],
  tags: [ Object {}, Link {} ],
  updated: 2024-03-03T08:30:06.796196096Z,
  urls: [ URL "https://example.com/", Link {} ],
  to: Object {},
  bto: Object {},
  cc: Object {},
  bcc: Object {},
  mediaType: "hello",
  duration: PT1H,
  sensitive: true,
  proof: DataIntegrityProof {},
  actors: [ Application {}, Group {}, Organization {}, Person {}, Service {} ],
  object: Object {},
  target: Object {},
  result: Object {},
  origin: Object {},
  instrument: Object {}
}'
`;

snapshot[`Deno.inspect(Join) [auto] 2`] = `
'Join {
  id: URL "https://example.com/",
  attachments: [ URL "https://example.com/" ],
  attribution: URL "https://example.com/",
  audience: URL "https://example.com/",
  contents: [ "hello", <en> "hello" ],
  contexts: [ URL "https://example.com/" ],
  names: [ "hello", <en> "hello" ],
  endTime: 2024-03-03T08:30:06.796196096Z,
  generators: [ URL "https://example.com/" ],
  icon: URL "https://example.com/",
  image: URL "https://example.com/",
  replyTarget: URL "https://example.com/",
  location: URL "https://example.com/",
  preview: URL "https://example.com/",
  published: 2024-03-03T08:30:06.796196096Z,
  replies: URL "https://example.com/",
  startTime: 2024-03-03T08:30:06.796196096Z,
  summaries: [ "hello", <en> "hello" ],
  tags: [ URL "https://example.com/" ],
  updated: 2024-03-03T08:30:06.796196096Z,
  urls: [ URL "https://example.com/", Link {} ],
  to: URL "https://example.com/",
  bto: URL "https://example.com/",
  cc: URL "https://example.com/",
  bcc: URL "https://example.com/",
  mediaType: "hello",
  duration: PT1H,
  sensitive: true,
  proof: URL "https://example.com/",
  actor: URL "https://example.com/",
  object: URL "https://example.com/",
  target: URL "https://example.com/",
  result: URL "https://example.com/",
  origin: URL "https://example.com/",
  instrument: URL "https://example.com/"
}'
`;

snapshot[`Deno.inspect(Join) [auto] 3`] = `
'Join {
  id: URL "https://example.com/",
  attachments: [ Object {}, Object {} ],
  attributions: [ Application {}, Application {} ],
  audiences: [ Object {}, Object {} ],
  contents: [ "hello", "hello" ],
  contexts: [ Object {}, Object {} ],
  names: [ "hello", "hello" ],
  endTime: 2024-03-03T08:30:06.796196096Z,
  generators: [ Object {}, Object {} ],
  icons: [ Image {}, Image {} ],
  images: [ Image {}, Image {} ],
  replyTargets: [ Object {}, Object {} ],
  locations: [ Object {}, Object {} ],
  previews: [ Link {}, Link {} ],
  published: 2024-03-03T08:30:06.796196096Z,
  replies: Collection {},
  startTime: 2024-03-03T08:30:06.796196096Z,
  summaries: [ "hello", "hello" ],
  tags: [ Object {}, Object {} ],
  updated: 2024-03-03T08:30:06.796196096Z,
  urls: [ URL "https://example.com/", URL "https://example.com/" ],
  tos: [ Object {}, Object {} ],
  btos: [ Object {}, Object {} ],
  ccs: [ Object {}, Object {} ],
  bccs: [ Object {}, Object {} ],
  mediaType: "hello",
  duration: PT1H,
  sensitive: true,
  proofs: [ DataIntegrityProof {}, DataIntegrityProof {} ],
  actors: [ Application {}, Application {} ],
  objects: [ Object {}, Object {} ],
  targets: [ Object {}, Object {} ],
  results: [ Object {}, Object {} ],
  origins: [ Object {}, Object {} ],
  instruments: [ Object {}, Object {} ]
}'
`;

snapshot[`Deno.inspect(Leave) [auto] 1`] = `
'Leave {
  id: URL "https://example.com/",
  attachments: [ Object {}, Link {}, PropertyValue {} ],
  attributions: [ Application {}, Group {}, Organization {}, Person {}, Service {} ],
  audience: Object {},
  contents: [ "hello", <en> "hello" ],
  contexts: [ Object {}, Link {} ],
  names: [ "hello", <en> "hello" ],
  endTime: 2024-03-03T08:30:06.796196096Z,
  generators: [ Object {}, Link {} ],
  icon: Image {},
  image: Image {},
  replyTargets: [ Object {}, Link {} ],
  locations: [ Object {}, Link {} ],
  previews: [ Link {}, Object {} ],
  published: 2024-03-03T08:30:06.796196096Z,
  replies: Collection {},
  startTime: 2024-03-03T08:30:06.796196096Z,
  summaries: [ "hello", <en> "hello" ],
  tags: [ Object {}, Link {} ],
  updated: 2024-03-03T08:30:06.796196096Z,
  urls: [ URL "https://example.com/", Link {} ],
  to: Object {},
  bto: Object {},
  cc: Object {},
  bcc: Object {},
  mediaType: "hello",
  duration: PT1H,
  sensitive: true,
  proof: DataIntegrityProof {},
  actors: [ Application {}, Group {}, Organization {}, Person {}, Service {} ],
  object: Object {},
  target: Object {},
  result: Object {},
  origin: Object {},
  instrument: Object {}
}'
`;

snapshot[`Deno.inspect(Leave) [auto] 2`] = `
'Leave {
  id: URL "https://example.com/",
  attachments: [ URL "https://example.com/" ],
  attribution: URL "https://example.com/",
  audience: URL "https://example.com/",
  contents: [ "hello", <en> "hello" ],
  contexts: [ URL "https://example.com/" ],
  names: [ "hello", <en> "hello" ],
  endTime: 2024-03-03T08:30:06.796196096Z,
  generators: [ URL "https://example.com/" ],
  icon: URL "https://example.com/",
  image: URL "https://example.com/",
  replyTarget: URL "https://example.com/",
  location: URL "https://example.com/",
  preview: URL "https://example.com/",
  published: 2024-03-03T08:30:06.796196096Z,
  replies: URL "https://example.com/",
  startTime: 2024-03-03T08:30:06.796196096Z,
  summaries: [ "hello", <en> "hello" ],
  tags: [ URL "https://example.com/" ],
  updated: 2024-03-03T08:30:06.796196096Z,
  urls: [ URL "https://example.com/", Link {} ],
  to: URL "https://example.com/",
  bto: URL "https://example.com/",
  cc: URL "https://example.com/",
  bcc: URL "https://example.com/",
  mediaType: "hello",
  duration: PT1H,
  sensitive: true,
  proof: URL "https://example.com/",
  actor: URL "https://example.com/",
  object: URL "https://example.com/",
  target: URL "https://example.com/",
  result: URL "https://example.com/",
  origin: URL "https://example.com/",
  instrument: URL "https://example.com/"
}'
`;

snapshot[`Deno.inspect(Leave) [auto] 3`] = `
'Leave {
  id: URL "https://example.com/",
  attachments: [ Object {}, Object {} ],
  attributions: [ Application {}, Application {} ],
  audiences: [ Object {}, Object {} ],
  contents: [ "hello", "hello" ],
  contexts: [ Object {}, Object {} ],
  names: [ "hello", "hello" ],
  endTime: 2024-03-03T08:30:06.796196096Z,
  generators: [ Object {}, Object {} ],
  icons: [ Image {}, Image {} ],
  images: [ Image {}, Image {} ],
  replyTargets: [ Object {}, Object {} ],
  locations: [ Object {}, Object {} ],
  previews: [ Link {}, Link {} ],
  published: 2024-03-03T08:30:06.796196096Z,
  replies: Collection {},
  startTime: 2024-03-03T08:30:06.796196096Z,
  summaries: [ "hello", "hello" ],
  tags: [ Object {}, Object {} ],
  updated: 2024-03-03T08:30:06.796196096Z,
  urls: [ URL "https://example.com/", URL "https://example.com/" ],
  tos: [ Object {}, Object {} ],
  btos: [ Object {}, Object {} ],
  ccs: [ Object {}, Object {} ],
  bccs: [ Object {}, Object {} ],
  mediaType: "hello",
  duration: PT1H,
  sensitive: true,
  proofs: [ DataIntegrityProof {}, DataIntegrityProof {} ],
  actors: [ Application {}, Application {} ],
  objects: [ Object {}, Object {} ],
  targets: [ Object {}, Object {} ],
  results: [ Object {}, Object {} ],
  origins: [ Object {}, Object {} ],
  instruments: [ Object {}, Object {} ]
}'
`;

snapshot[`Deno.inspect(Like) [auto] 1`] = `
'Like {
  id: URL "https://example.com/",
@@ -3168,6 +3528,126 @@ snapshot[`Deno.inspect(Link) [auto] 3`] = `
}'
`;

snapshot[`Deno.inspect(Listen) [auto] 1`] = `
'Listen {
  id: URL "https://example.com/",
  attachments: [ Object {}, Link {}, PropertyValue {} ],
  attributions: [ Application {}, Group {}, Organization {}, Person {}, Service {} ],
  audience: Object {},
  contents: [ "hello", <en> "hello" ],
  contexts: [ Object {}, Link {} ],
  names: [ "hello", <en> "hello" ],
  endTime: 2024-03-03T08:30:06.796196096Z,
  generators: [ Object {}, Link {} ],
  icon: Image {},
  image: Image {},
  replyTargets: [ Object {}, Link {} ],
  locations: [ Object {}, Link {} ],
  previews: [ Link {}, Object {} ],
  published: 2024-03-03T08:30:06.796196096Z,
  replies: Collection {},
  startTime: 2024-03-03T08:30:06.796196096Z,
  summaries: [ "hello", <en> "hello" ],
  tags: [ Object {}, Link {} ],
  updated: 2024-03-03T08:30:06.796196096Z,
  urls: [ URL "https://example.com/", Link {} ],
  to: Object {},
  bto: Object {},
  cc: Object {},
  bcc: Object {},
  mediaType: "hello",
  duration: PT1H,
  sensitive: true,
  proof: DataIntegrityProof {},
  actors: [ Application {}, Group {}, Organization {}, Person {}, Service {} ],
  object: Object {},
  target: Object {},
  result: Object {},
  origin: Object {},
  instrument: Object {}
}'
`;

snapshot[`Deno.inspect(Listen) [auto] 2`] = `
'Listen {
  id: URL "https://example.com/",
  attachments: [ URL "https://example.com/" ],
  attribution: URL "https://example.com/",
  audience: URL "https://example.com/",
  contents: [ "hello", <en> "hello" ],
  contexts: [ URL "https://example.com/" ],
  names: [ "hello", <en> "hello" ],
  endTime: 2024-03-03T08:30:06.796196096Z,
  generators: [ URL "https://example.com/" ],
  icon: URL "https://example.com/",
  image: URL "https://example.com/",
  replyTarget: URL "https://example.com/",
  location: URL "https://example.com/",
  preview: URL "https://example.com/",
  published: 2024-03-03T08:30:06.796196096Z,
  replies: URL "https://example.com/",
  startTime: 2024-03-03T08:30:06.796196096Z,
  summaries: [ "hello", <en> "hello" ],
  tags: [ URL "https://example.com/" ],
  updated: 2024-03-03T08:30:06.796196096Z,
  urls: [ URL "https://example.com/", Link {} ],
  to: URL "https://example.com/",
  bto: URL "https://example.com/",
  cc: URL "https://example.com/",
  bcc: URL "https://example.com/",
  mediaType: "hello",
  duration: PT1H,
  sensitive: true,
  proof: URL "https://example.com/",
  actor: URL "https://example.com/",
  object: URL "https://example.com/",
  target: URL "https://example.com/",
  result: URL "https://example.com/",
  origin: URL "https://example.com/",
  instrument: URL "https://example.com/"
}'
`;

snapshot[`Deno.inspect(Listen) [auto] 3`] = `
'Listen {
  id: URL "https://example.com/",
  attachments: [ Object {}, Object {} ],
  attributions: [ Application {}, Application {} ],
  audiences: [ Object {}, Object {} ],
  contents: [ "hello", "hello" ],
  contexts: [ Object {}, Object {} ],
  names: [ "hello", "hello" ],
  endTime: 2024-03-03T08:30:06.796196096Z,
  generators: [ Object {}, Object {} ],
  icons: [ Image {}, Image {} ],
  images: [ Image {}, Image {} ],
  replyTargets: [ Object {}, Object {} ],
  locations: [ Object {}, Object {} ],
  previews: [ Link {}, Link {} ],
  published: 2024-03-03T08:30:06.796196096Z,
  replies: Collection {},
  startTime: 2024-03-03T08:30:06.796196096Z,
  summaries: [ "hello", "hello" ],
  tags: [ Object {}, Object {} ],
  updated: 2024-03-03T08:30:06.796196096Z,
  urls: [ URL "https://example.com/", URL "https://example.com/" ],
  tos: [ Object {}, Object {} ],
  btos: [ Object {}, Object {} ],
  ccs: [ Object {}, Object {} ],
  bccs: [ Object {}, Object {} ],
  mediaType: "hello",
  duration: PT1H,
  sensitive: true,
  proofs: [ DataIntegrityProof {}, DataIntegrityProof {} ],
  actors: [ Application {}, Application {} ],
  objects: [ Object {}, Object {} ],
  targets: [ Object {}, Object {} ],
  results: [ Object {}, Object {} ],
  origins: [ Object {}, Object {} ],
  instruments: [ Object {}, Object {} ]
}'
`;

snapshot[`Deno.inspect(Mention) [auto] 1`] = `
'Mention {
  id: URL "https://example.com/",

vocab/invite.yaml

0 → 100644
+11 −0
Original line number Diff line number Diff line
$schema: ../codegen/schema.yaml
name: Invite
uri: "https://www.w3.org/ns/activitystreams#Invite"
extends: "https://www.w3.org/ns/activitystreams#Offer"
entity: true
description: |
  	A specialization of `Offer` in which the `actor` is extending an invitation for the `object` to the `target`.
defaultContext:
  - "https://www.w3.org/ns/activitystreams"
  - "https://w3id.org/security/data-integrity/v1"
properties: []
Loading