Versions

versions:capture#

Hook emitted while capturing a version snapshot. Return { meta, content } to extend the snapshot.

Type: hook (handler may return a value).

Payload:

  • snapshot — value passed to the handler

Example:

app.on('versions:capture', (payload) => {
  return { ...payload };
});

versions:change#

Emitted when the versions store changes.

Type: signal.

Payload: none.

Example:

app.on('versions:change', () => {
  // react to the signal
});

versions:close#

Emitted when the versions panel closes.

Type: signal.

Payload:

  • id — string — entity id

Example:

app.on('versions:close', ({ id }) => {
  console.log('versions:close', { id });
});

versions:error#

Emitted when a versions operation fails.

Type: signal.

Payload:

  • operation — event-specific value
  • error — error value

Example:

app.on('versions:error', ({ operation, error }) => {
  console.log('versions:error', { operation, error });
});

versions:original:restored#

Emitted when the original baseline version is restored.

Type: signal.

Payload:

  • original — event-specific value

Example:

app.on('versions:original:restored', ({ original }) => {
  console.log('versions:original:restored', { original });
});

versions:restore#

Hook emitted before a version is restored.

Type: hook (handler may return a value).

Payload:

  • item — event-specific value
  • restoreReviews — event-specific value

Example:

app.on('versions:restore', (payload) => {
  return { ...payload };
});

versions:restored#

Emitted after version content is restored.

Type: signal.

Payload:

  • id — string — entity id
  • version — event-specific value

Example:

app.on('versions:restored', ({ id, version }) => {
  console.log('versions:restored', { id, version });
});

versions:saved#

Emitted after a version snapshot is saved.

Type: signal.

Payload:

  • id — string — entity id
  • version — event-specific value
  • saved — event-specific value
  • reason — string — why a history entry was recorded

Example:

app.on('versions:saved', ({ id, version, saved, reason }) => {
  console.log('versions:saved', { id, version, saved, reason });
});

versions:show#

Emitted when the versions panel opens for a version.

Type: signal.

Payload:

  • id — string — entity id
  • version — event-specific value
  • original — event-specific value

Example:

app.on('versions:show', ({ id, version, original }) => {
  console.log('versions:show', { id, version, original });
});