Skip to main content

builtinIntegrations

Ordered array of every built-in integration descriptor shipped by this library — the always-available ones that mirror OpenRegister's built-in PHP IntegrationProviders, plus the bespoke leaf overrides that need a richer UI than the generic CnIntegrationTab / CnIntegrationCard pair.

Each descriptor maps onto a CnObjectSidebar tab plus a compact widget for dashboard and detail surfaces.

Most consumers don't touch the array directly — call registerBuiltinIntegrations() instead. Use it when you want to inspect or filter the set (registering a subset, reading defaultSize for a layout, listing requiredApp values for a capability probe).

Signature​

import { builtinIntegrations } from '@conduction/nextcloud-vue'

builtinIntegrations.map((d) => d.id)
// ['files', 'notes', 'tags', 'tasks', 'audit-trail', 'version-history', …]

Descriptor shape​

Each entry is a ready-to-register() integration descriptor: { id, label, icon, requiredApp, order, group, referenceType, tab, widget, defaultSize }. See the registration shape reference for the full contract.

Importing a single descriptor​

Every descriptor below is also a named export of the package root, so an app that wants one integration without registering the whole set can import it directly:

import { flowIntegration, registerIntegration } from '@conduction/nextcloud-vue'

registerIntegration(flowIntegration)

Fixed in 2.1.0-vue3.16. Twenty-four of these twenty-six names were missing from the package barrel in every earlier release. The named import resolved to undefined, registering an undefined descriptor was a silent no-op, and the missing tab was indistinguishable from "that Nextcloud app is not installed on this instance". Only talkIntegration and fieldInspectionIntegration worked. npm run check:integration-parity now fails the build when a descriptor in builtinIntegrations[] is not exported from both barrels.

The descriptors​

Core — always available (no requiredApp)​

exportidordergroup
filesIntegrationfiles1core
notesIntegrationnotes2core
tagsIntegrationtags3core
tasksIntegrationtasks4core
auditTrailIntegrationaudit-trail5core
versionHistoryIntegrationversion-history6core
sharesIntegrationshares10core

Comms​

exportidorderrequiredApp
calendarIntegrationcalendar20calendar
contactsIntegrationcontacts21contacts
emailIntegrationemail22mail
talkIntegrationtalk23spreed

talkIntegration also has a dedicated page.

Docs​

exportidorderrequiredApp
bookmarksIntegrationbookmarks40bookmarks
collectivesIntegrationcollectives41collectives
mapsIntegrationmaps42maps
photosIntegrationphotos43photos

Workflow​

exportidorderrequiredApp
activityIntegrationactivity60activity
analyticsIntegrationanalytics61analytics
cospendIntegrationcospend62cospend
deckIntegrationdeck63deck
flowIntegrationflow64workflowengine
formsIntegrationforms65forms
pollsIntegrationpolls66polls
timeTrackerIntegrationtime-tracker67timemanager
fieldInspectionIntegrationfield-inspection68—

fieldInspectionIntegration also has a dedicated page.

External (via Integriq)​

exportidorderrequiredApp
openprojectIntegrationopenproject31openconnector
xwikiIntegrationxwiki32openconnector

See also​