Host tabs

hostTabs:active#

Emitted when the active host tab changes.

Type: signal.

Payload:

  • key — string — key name
  • id — string — entity id

Example:

app.on('hostTabs:active', ({ key, id }) => {
  console.log('hostTabs:active', { key, id });
});

hostTabs:content#

Emitted when host tab HTML content is assigned.

Type: signal.

Payload:

  • key — string — key name
  • id — string — entity id
  • html — HTML string

Example:

app.on('hostTabs:content', ({ html }) => {
  console.log(html.length);
});

hostTabs:remove#

Emitted after a host tab is removed.

Type: signal.

Payload:

  • key — string — key name
  • id — string — entity id

Example:

app.on('hostTabs:remove', ({ key, id }) => {
  console.log('hostTabs:remove', { key, id });
});

hostTabs:remove:after#

Emitted after host tab removal cleanup.

Type: signal.

Payload:

  • key — string — key name
  • id — string — entity id

Example:

app.on('hostTabs:remove:after', ({ key, id }) => {
  console.log('hostTabs:remove:after', { key, id });
});

hostTabs:remove:before#

Emitted during host tab removal (remove:before).

Type: hook (handler may return a value).

Payload:

  • key — string — key name
  • id — string — entity id
  • tab — event-specific value

Example:

app.on('hostTabs:remove:before', (payload) => {
  return { ...payload };
});

hostTabs:set#

Emitted when a host tab entry is set.

Type: signal.

Payload:

  • key — string — key name
  • tab — event-specific value

Example:

app.on('hostTabs:set', ({ key, tab }) => {
  console.log('hostTabs:set', { key, tab });
});

hostTabs:unmount#

Emitted when a host tab editor is unmounted.

Type: signal.

Payload:

  • key — string — key name
  • editorKey — event-specific value

Example:

app.on('hostTabs:unmount', ({ key, editorKey }) => {
  console.log('hostTabs:unmount', { key, editorKey });
});