digital-tools 2.0.1
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.
- package/.turbo/turbo-build.log +5 -0
- package/CHANGELOG.md +9 -0
- package/README.md +1144 -0
- package/dist/define.d.ts +109 -0
- package/dist/define.d.ts.map +1 -0
- package/dist/define.js +268 -0
- package/dist/define.js.map +1 -0
- package/dist/entities/advertising.d.ts +79 -0
- package/dist/entities/advertising.d.ts.map +1 -0
- package/dist/entities/advertising.js +1000 -0
- package/dist/entities/advertising.js.map +1 -0
- package/dist/entities/ai.d.ts +69 -0
- package/dist/entities/ai.d.ts.map +1 -0
- package/dist/entities/ai.js +757 -0
- package/dist/entities/ai.js.map +1 -0
- package/dist/entities/analytics.d.ts +83 -0
- package/dist/entities/analytics.d.ts.map +1 -0
- package/dist/entities/analytics.js +1589 -0
- package/dist/entities/analytics.js.map +1 -0
- package/dist/entities/automation.d.ts +61 -0
- package/dist/entities/automation.d.ts.map +1 -0
- package/dist/entities/automation.js +602 -0
- package/dist/entities/automation.js.map +1 -0
- package/dist/entities/communication.d.ts +96 -0
- package/dist/entities/communication.d.ts.map +1 -0
- package/dist/entities/communication.js +1151 -0
- package/dist/entities/communication.js.map +1 -0
- package/dist/entities/crm.d.ts +91 -0
- package/dist/entities/crm.d.ts.map +1 -0
- package/dist/entities/crm.js +1387 -0
- package/dist/entities/crm.js.map +1 -0
- package/dist/entities/design.d.ts +61 -0
- package/dist/entities/design.d.ts.map +1 -0
- package/dist/entities/design.js +547 -0
- package/dist/entities/design.js.map +1 -0
- package/dist/entities/development.d.ts +145 -0
- package/dist/entities/development.d.ts.map +1 -0
- package/dist/entities/development.js +2213 -0
- package/dist/entities/development.js.map +1 -0
- package/dist/entities/document.d.ts +54 -0
- package/dist/entities/document.d.ts.map +1 -0
- package/dist/entities/document.js +875 -0
- package/dist/entities/document.js.map +1 -0
- package/dist/entities/ecommerce.d.ts +93 -0
- package/dist/entities/ecommerce.d.ts.map +1 -0
- package/dist/entities/ecommerce.js +1430 -0
- package/dist/entities/ecommerce.js.map +1 -0
- package/dist/entities/experiment.d.ts +89 -0
- package/dist/entities/experiment.d.ts.map +1 -0
- package/dist/entities/experiment.js +1040 -0
- package/dist/entities/experiment.js.map +1 -0
- package/dist/entities/finance.d.ts +272 -0
- package/dist/entities/finance.d.ts.map +1 -0
- package/dist/entities/finance.js +3479 -0
- package/dist/entities/finance.js.map +1 -0
- package/dist/entities/forms.d.ts +91 -0
- package/dist/entities/forms.d.ts.map +1 -0
- package/dist/entities/forms.js +1893 -0
- package/dist/entities/forms.js.map +1 -0
- package/dist/entities/hr.d.ts +62 -0
- package/dist/entities/hr.d.ts.map +1 -0
- package/dist/entities/hr.js +662 -0
- package/dist/entities/hr.js.map +1 -0
- package/dist/entities/identity.d.ts +90 -0
- package/dist/entities/identity.d.ts.map +1 -0
- package/dist/entities/identity.js +998 -0
- package/dist/entities/identity.js.map +1 -0
- package/dist/entities/index.d.ts +410 -0
- package/dist/entities/index.d.ts.map +1 -0
- package/dist/entities/index.js +283 -0
- package/dist/entities/index.js.map +1 -0
- package/dist/entities/infrastructure.d.ts +98 -0
- package/dist/entities/infrastructure.d.ts.map +1 -0
- package/dist/entities/infrastructure.js +1154 -0
- package/dist/entities/infrastructure.js.map +1 -0
- package/dist/entities/knowledge.d.ts +98 -0
- package/dist/entities/knowledge.d.ts.map +1 -0
- package/dist/entities/knowledge.js +1439 -0
- package/dist/entities/knowledge.js.map +1 -0
- package/dist/entities/marketing.d.ts +82 -0
- package/dist/entities/marketing.d.ts.map +1 -0
- package/dist/entities/marketing.js +1611 -0
- package/dist/entities/marketing.js.map +1 -0
- package/dist/entities/media.d.ts +83 -0
- package/dist/entities/media.d.ts.map +1 -0
- package/dist/entities/media.js +1635 -0
- package/dist/entities/media.js.map +1 -0
- package/dist/entities/notification.d.ts +76 -0
- package/dist/entities/notification.d.ts.map +1 -0
- package/dist/entities/notification.js +1200 -0
- package/dist/entities/notification.js.map +1 -0
- package/dist/entities/presentation.d.ts +61 -0
- package/dist/entities/presentation.d.ts.map +1 -0
- package/dist/entities/presentation.js +1275 -0
- package/dist/entities/presentation.js.map +1 -0
- package/dist/entities/productivity.d.ts +92 -0
- package/dist/entities/productivity.d.ts.map +1 -0
- package/dist/entities/productivity.js +1318 -0
- package/dist/entities/productivity.js.map +1 -0
- package/dist/entities/project-management.d.ts +89 -0
- package/dist/entities/project-management.d.ts.map +1 -0
- package/dist/entities/project-management.js +1137 -0
- package/dist/entities/project-management.js.map +1 -0
- package/dist/entities/recruiting.d.ts +54 -0
- package/dist/entities/recruiting.d.ts.map +1 -0
- package/dist/entities/recruiting.js +737 -0
- package/dist/entities/recruiting.js.map +1 -0
- package/dist/entities/shipping.d.ts +52 -0
- package/dist/entities/shipping.d.ts.map +1 -0
- package/dist/entities/shipping.js +510 -0
- package/dist/entities/shipping.js.map +1 -0
- package/dist/entities/signature.d.ts +83 -0
- package/dist/entities/signature.d.ts.map +1 -0
- package/dist/entities/signature.js +1103 -0
- package/dist/entities/signature.js.map +1 -0
- package/dist/entities/site.d.ts +33 -0
- package/dist/entities/site.d.ts.map +1 -0
- package/dist/entities/site.js +223 -0
- package/dist/entities/site.js.map +1 -0
- package/dist/entities/spreadsheet.d.ts +68 -0
- package/dist/entities/spreadsheet.d.ts.map +1 -0
- package/dist/entities/spreadsheet.js +1342 -0
- package/dist/entities/spreadsheet.js.map +1 -0
- package/dist/entities/storage.d.ts +74 -0
- package/dist/entities/storage.d.ts.map +1 -0
- package/dist/entities/storage.js +1199 -0
- package/dist/entities/storage.js.map +1 -0
- package/dist/entities/support.d.ts +83 -0
- package/dist/entities/support.d.ts.map +1 -0
- package/dist/entities/support.js +1167 -0
- package/dist/entities/support.js.map +1 -0
- package/dist/entities/video-conferencing.d.ts +129 -0
- package/dist/entities/video-conferencing.d.ts.map +1 -0
- package/dist/entities/video-conferencing.js +1751 -0
- package/dist/entities/video-conferencing.js.map +1 -0
- package/dist/entities/video.d.ts +76 -0
- package/dist/entities/video.d.ts.map +1 -0
- package/dist/entities/video.js +951 -0
- package/dist/entities/video.js.map +1 -0
- package/dist/entities.d.ts +147 -0
- package/dist/entities.d.ts.map +1 -0
- package/dist/entities.js +1664 -0
- package/dist/entities.js.map +1 -0
- package/dist/index.d.ts +29 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +75 -0
- package/dist/index.js.map +1 -0
- package/dist/providers/analytics/index.d.ts +19 -0
- package/dist/providers/analytics/index.d.ts.map +1 -0
- package/dist/providers/analytics/index.js +18 -0
- package/dist/providers/analytics/index.js.map +1 -0
- package/dist/providers/analytics/mixpanel.d.ts +25 -0
- package/dist/providers/analytics/mixpanel.d.ts.map +1 -0
- package/dist/providers/analytics/mixpanel.js +256 -0
- package/dist/providers/analytics/mixpanel.js.map +1 -0
- package/dist/providers/calendar/cal-com.d.ts +26 -0
- package/dist/providers/calendar/cal-com.d.ts.map +1 -0
- package/dist/providers/calendar/cal-com.js +304 -0
- package/dist/providers/calendar/cal-com.js.map +1 -0
- package/dist/providers/calendar/google-calendar.d.ts +25 -0
- package/dist/providers/calendar/google-calendar.d.ts.map +1 -0
- package/dist/providers/calendar/google-calendar.js +336 -0
- package/dist/providers/calendar/google-calendar.js.map +1 -0
- package/dist/providers/calendar/index.d.ts +20 -0
- package/dist/providers/calendar/index.d.ts.map +1 -0
- package/dist/providers/calendar/index.js +21 -0
- package/dist/providers/calendar/index.js.map +1 -0
- package/dist/providers/crm/hubspot.d.ts +25 -0
- package/dist/providers/crm/hubspot.d.ts.map +1 -0
- package/dist/providers/crm/hubspot.js +567 -0
- package/dist/providers/crm/hubspot.js.map +1 -0
- package/dist/providers/crm/index.d.ts +19 -0
- package/dist/providers/crm/index.d.ts.map +1 -0
- package/dist/providers/crm/index.js +18 -0
- package/dist/providers/crm/index.js.map +1 -0
- package/dist/providers/development/github.d.ts +25 -0
- package/dist/providers/development/github.d.ts.map +1 -0
- package/dist/providers/development/github.js +473 -0
- package/dist/providers/development/github.js.map +1 -0
- package/dist/providers/development/index.d.ts +19 -0
- package/dist/providers/development/index.d.ts.map +1 -0
- package/dist/providers/development/index.js +18 -0
- package/dist/providers/development/index.js.map +1 -0
- package/dist/providers/ecommerce/index.d.ts +19 -0
- package/dist/providers/ecommerce/index.d.ts.map +1 -0
- package/dist/providers/ecommerce/index.js +18 -0
- package/dist/providers/ecommerce/index.js.map +1 -0
- package/dist/providers/ecommerce/shopify.d.ts +25 -0
- package/dist/providers/ecommerce/shopify.d.ts.map +1 -0
- package/dist/providers/ecommerce/shopify.js +379 -0
- package/dist/providers/ecommerce/shopify.js.map +1 -0
- package/dist/providers/email/index.d.ts +20 -0
- package/dist/providers/email/index.d.ts.map +1 -0
- package/dist/providers/email/index.js +21 -0
- package/dist/providers/email/index.js.map +1 -0
- package/dist/providers/email/resend.d.ts +25 -0
- package/dist/providers/email/resend.d.ts.map +1 -0
- package/dist/providers/email/resend.js +259 -0
- package/dist/providers/email/resend.js.map +1 -0
- package/dist/providers/email/sendgrid.d.ts +25 -0
- package/dist/providers/email/sendgrid.d.ts.map +1 -0
- package/dist/providers/email/sendgrid.js +162 -0
- package/dist/providers/email/sendgrid.js.map +1 -0
- package/dist/providers/finance/index.d.ts +19 -0
- package/dist/providers/finance/index.d.ts.map +1 -0
- package/dist/providers/finance/index.js +18 -0
- package/dist/providers/finance/index.js.map +1 -0
- package/dist/providers/finance/stripe.d.ts +25 -0
- package/dist/providers/finance/stripe.d.ts.map +1 -0
- package/dist/providers/finance/stripe.js +550 -0
- package/dist/providers/finance/stripe.js.map +1 -0
- package/dist/providers/forms/index.d.ts +19 -0
- package/dist/providers/forms/index.d.ts.map +1 -0
- package/dist/providers/forms/index.js +18 -0
- package/dist/providers/forms/index.js.map +1 -0
- package/dist/providers/forms/typeform.d.ts +25 -0
- package/dist/providers/forms/typeform.d.ts.map +1 -0
- package/dist/providers/forms/typeform.js +501 -0
- package/dist/providers/forms/typeform.js.map +1 -0
- package/dist/providers/index.d.ts +56 -0
- package/dist/providers/index.d.ts.map +1 -0
- package/dist/providers/index.js +124 -0
- package/dist/providers/index.js.map +1 -0
- package/dist/providers/knowledge/index.d.ts +19 -0
- package/dist/providers/knowledge/index.d.ts.map +1 -0
- package/dist/providers/knowledge/index.js +18 -0
- package/dist/providers/knowledge/index.js.map +1 -0
- package/dist/providers/knowledge/notion.d.ts +25 -0
- package/dist/providers/knowledge/notion.d.ts.map +1 -0
- package/dist/providers/knowledge/notion.js +390 -0
- package/dist/providers/knowledge/notion.js.map +1 -0
- package/dist/providers/marketing/index.d.ts +19 -0
- package/dist/providers/marketing/index.d.ts.map +1 -0
- package/dist/providers/marketing/index.js +18 -0
- package/dist/providers/marketing/index.js.map +1 -0
- package/dist/providers/marketing/mailchimp.d.ts +25 -0
- package/dist/providers/marketing/mailchimp.d.ts.map +1 -0
- package/dist/providers/marketing/mailchimp.js +444 -0
- package/dist/providers/marketing/mailchimp.js.map +1 -0
- package/dist/providers/media/cloudinary.d.ts +25 -0
- package/dist/providers/media/cloudinary.d.ts.map +1 -0
- package/dist/providers/media/cloudinary.js +319 -0
- package/dist/providers/media/cloudinary.js.map +1 -0
- package/dist/providers/media/index.d.ts +19 -0
- package/dist/providers/media/index.d.ts.map +1 -0
- package/dist/providers/media/index.js +18 -0
- package/dist/providers/media/index.js.map +1 -0
- package/dist/providers/messaging/index.d.ts +24 -0
- package/dist/providers/messaging/index.d.ts.map +1 -0
- package/dist/providers/messaging/index.js +21 -0
- package/dist/providers/messaging/index.js.map +1 -0
- package/dist/providers/messaging/slack.d.ts +25 -0
- package/dist/providers/messaging/slack.d.ts.map +1 -0
- package/dist/providers/messaging/slack.js +394 -0
- package/dist/providers/messaging/slack.js.map +1 -0
- package/dist/providers/messaging/twilio-sms.d.ts +25 -0
- package/dist/providers/messaging/twilio-sms.d.ts.map +1 -0
- package/dist/providers/messaging/twilio-sms.js +250 -0
- package/dist/providers/messaging/twilio-sms.js.map +1 -0
- package/dist/providers/project-management/index.d.ts +19 -0
- package/dist/providers/project-management/index.d.ts.map +1 -0
- package/dist/providers/project-management/index.js +18 -0
- package/dist/providers/project-management/index.js.map +1 -0
- package/dist/providers/project-management/linear.d.ts +25 -0
- package/dist/providers/project-management/linear.d.ts.map +1 -0
- package/dist/providers/project-management/linear.js +576 -0
- package/dist/providers/project-management/linear.js.map +1 -0
- package/dist/providers/registry.d.ts +41 -0
- package/dist/providers/registry.d.ts.map +1 -0
- package/dist/providers/registry.js +87 -0
- package/dist/providers/registry.js.map +1 -0
- package/dist/providers/spreadsheet/google-sheets.d.ts +25 -0
- package/dist/providers/spreadsheet/google-sheets.d.ts.map +1 -0
- package/dist/providers/spreadsheet/google-sheets.js +376 -0
- package/dist/providers/spreadsheet/google-sheets.js.map +1 -0
- package/dist/providers/spreadsheet/index.d.ts +20 -0
- package/dist/providers/spreadsheet/index.d.ts.map +1 -0
- package/dist/providers/spreadsheet/index.js +21 -0
- package/dist/providers/spreadsheet/index.js.map +1 -0
- package/dist/providers/spreadsheet/xlsx.d.ts +26 -0
- package/dist/providers/spreadsheet/xlsx.d.ts.map +1 -0
- package/dist/providers/spreadsheet/xlsx.js +424 -0
- package/dist/providers/spreadsheet/xlsx.js.map +1 -0
- package/dist/providers/storage/index.d.ts +30 -0
- package/dist/providers/storage/index.d.ts.map +1 -0
- package/dist/providers/storage/index.js +25 -0
- package/dist/providers/storage/index.js.map +1 -0
- package/dist/providers/storage/s3.d.ts +25 -0
- package/dist/providers/storage/s3.d.ts.map +1 -0
- package/dist/providers/storage/s3.js +420 -0
- package/dist/providers/storage/s3.js.map +1 -0
- package/dist/providers/support/index.d.ts +19 -0
- package/dist/providers/support/index.d.ts.map +1 -0
- package/dist/providers/support/index.js +18 -0
- package/dist/providers/support/index.js.map +1 -0
- package/dist/providers/support/zendesk.d.ts +25 -0
- package/dist/providers/support/zendesk.d.ts.map +1 -0
- package/dist/providers/support/zendesk.js +374 -0
- package/dist/providers/support/zendesk.js.map +1 -0
- package/dist/providers/tasks/index.d.ts +19 -0
- package/dist/providers/tasks/index.d.ts.map +1 -0
- package/dist/providers/tasks/index.js +18 -0
- package/dist/providers/tasks/index.js.map +1 -0
- package/dist/providers/tasks/todoist.d.ts +25 -0
- package/dist/providers/tasks/todoist.d.ts.map +1 -0
- package/dist/providers/tasks/todoist.js +287 -0
- package/dist/providers/tasks/todoist.js.map +1 -0
- package/dist/providers/types.d.ts +1753 -0
- package/dist/providers/types.d.ts.map +1 -0
- package/dist/providers/types.js +10 -0
- package/dist/providers/types.js.map +1 -0
- package/dist/providers/video-conferencing/google-meet.d.ts +26 -0
- package/dist/providers/video-conferencing/google-meet.d.ts.map +1 -0
- package/dist/providers/video-conferencing/google-meet.js +287 -0
- package/dist/providers/video-conferencing/google-meet.js.map +1 -0
- package/dist/providers/video-conferencing/index.d.ts +22 -0
- package/dist/providers/video-conferencing/index.d.ts.map +1 -0
- package/dist/providers/video-conferencing/index.js +32 -0
- package/dist/providers/video-conferencing/index.js.map +1 -0
- package/dist/providers/video-conferencing/jitsi.d.ts +26 -0
- package/dist/providers/video-conferencing/jitsi.d.ts.map +1 -0
- package/dist/providers/video-conferencing/jitsi.js +255 -0
- package/dist/providers/video-conferencing/jitsi.js.map +1 -0
- package/dist/providers/video-conferencing/teams.d.ts +26 -0
- package/dist/providers/video-conferencing/teams.d.ts.map +1 -0
- package/dist/providers/video-conferencing/teams.js +271 -0
- package/dist/providers/video-conferencing/teams.js.map +1 -0
- package/dist/providers/video-conferencing/zoom.d.ts +25 -0
- package/dist/providers/video-conferencing/zoom.d.ts.map +1 -0
- package/dist/providers/video-conferencing/zoom.js +333 -0
- package/dist/providers/video-conferencing/zoom.js.map +1 -0
- package/dist/providers/voice/vapi.d.ts +27 -0
- package/dist/providers/voice/vapi.d.ts.map +1 -0
- package/dist/providers/voice/vapi.js +440 -0
- package/dist/providers/voice/vapi.js.map +1 -0
- package/dist/registry.d.ts +38 -0
- package/dist/registry.d.ts.map +1 -0
- package/dist/registry.js +129 -0
- package/dist/registry.js.map +1 -0
- package/dist/tools/communication.d.ts +94 -0
- package/dist/tools/communication.d.ts.map +1 -0
- package/dist/tools/communication.js +185 -0
- package/dist/tools/communication.js.map +1 -0
- package/dist/tools/data.d.ts +61 -0
- package/dist/tools/data.d.ts.map +1 -0
- package/dist/tools/data.js +206 -0
- package/dist/tools/data.js.map +1 -0
- package/dist/tools/index.d.ts +12 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +12 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/web.d.ts +45 -0
- package/dist/tools/web.d.ts.map +1 -0
- package/dist/tools/web.js +138 -0
- package/dist/tools/web.js.map +1 -0
- package/dist/types.d.ts +330 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +11 -0
- package/dist/types.js.map +1 -0
- package/package.json +45 -0
- package/src/define.ts +321 -0
- package/src/entities/advertising.ts +1086 -0
- package/src/entities/ai.ts +835 -0
- package/src/entities/analytics.ts +1690 -0
- package/src/entities/automation.ts +669 -0
- package/src/entities/communication.ts +1255 -0
- package/src/entities/crm.ts +1481 -0
- package/src/entities/design.ts +606 -0
- package/src/entities/development.ts +2392 -0
- package/src/entities/document.ts +930 -0
- package/src/entities/ecommerce.ts +1539 -0
- package/src/entities/experiment.ts +1139 -0
- package/src/entities/finance.ts +3907 -0
- package/src/entities/forms.ts +2021 -0
- package/src/entities/hr.ts +725 -0
- package/src/entities/identity.ts +1093 -0
- package/src/entities/index.ts +731 -0
- package/src/entities/infrastructure.ts +1254 -0
- package/src/entities/knowledge.ts +1547 -0
- package/src/entities/marketing.ts +1718 -0
- package/src/entities/media.ts +1747 -0
- package/src/entities/notification.ts +1260 -0
- package/src/entities/presentation.ts +1360 -0
- package/src/entities/productivity.ts +1411 -0
- package/src/entities/project-management.ts +1222 -0
- package/src/entities/recruiting.ts +797 -0
- package/src/entities/shipping.ts +566 -0
- package/src/entities/signature.ts +1204 -0
- package/src/entities/site.ts +244 -0
- package/src/entities/spreadsheet.ts +1434 -0
- package/src/entities/storage.ts +1290 -0
- package/src/entities/support.ts +1267 -0
- package/src/entities/video-conferencing.ts +1874 -0
- package/src/entities/video.ts +1035 -0
- package/src/entities.ts +1795 -0
- package/src/index.ts +176 -0
- package/src/providers/analytics/index.ts +21 -0
- package/src/providers/analytics/mixpanel.ts +311 -0
- package/src/providers/calendar/cal-com.ts +435 -0
- package/src/providers/calendar/google-calendar.ts +412 -0
- package/src/providers/calendar/index.ts +24 -0
- package/src/providers/crm/hubspot.ts +667 -0
- package/src/providers/crm/index.ts +21 -0
- package/src/providers/development/github.ts +608 -0
- package/src/providers/development/index.ts +21 -0
- package/src/providers/ecommerce/index.ts +21 -0
- package/src/providers/ecommerce/shopify.ts +451 -0
- package/src/providers/email/index.ts +24 -0
- package/src/providers/email/resend.ts +301 -0
- package/src/providers/email/sendgrid.ts +196 -0
- package/src/providers/finance/index.ts +21 -0
- package/src/providers/finance/stripe.ts +665 -0
- package/src/providers/forms/index.ts +21 -0
- package/src/providers/forms/typeform.ts +598 -0
- package/src/providers/index.ts +281 -0
- package/src/providers/knowledge/index.ts +21 -0
- package/src/providers/knowledge/notion.ts +497 -0
- package/src/providers/marketing/index.ts +21 -0
- package/src/providers/marketing/mailchimp.ts +656 -0
- package/src/providers/media/cloudinary.ts +373 -0
- package/src/providers/media/index.ts +21 -0
- package/src/providers/messaging/index.ts +24 -0
- package/src/providers/messaging/slack.ts +487 -0
- package/src/providers/messaging/twilio-sms.ts +301 -0
- package/src/providers/project-management/index.ts +21 -0
- package/src/providers/project-management/linear.ts +693 -0
- package/src/providers/registry.ts +119 -0
- package/src/providers/spreadsheet/google-sheets.ts +464 -0
- package/src/providers/spreadsheet/index.ts +24 -0
- package/src/providers/spreadsheet/xlsx.ts +542 -0
- package/src/providers/storage/index.ts +35 -0
- package/src/providers/storage/s3.ts +513 -0
- package/src/providers/support/index.ts +21 -0
- package/src/providers/support/zendesk.ts +417 -0
- package/src/providers/tasks/index.ts +21 -0
- package/src/providers/tasks/todoist.ts +407 -0
- package/src/providers/types.ts +2113 -0
- package/src/providers/video-conferencing/google-meet.ts +412 -0
- package/src/providers/video-conferencing/index.ts +35 -0
- package/src/providers/video-conferencing/jitsi.ts +324 -0
- package/src/providers/video-conferencing/teams.ts +408 -0
- package/src/providers/video-conferencing/zoom.ts +451 -0
- package/src/registry.ts +172 -0
- package/src/tools/communication.ts +256 -0
- package/src/tools/data.ts +236 -0
- package/src/tools/index.ts +12 -0
- package/src/tools/web.ts +161 -0
- package/src/types.ts +539 -0
- package/test/define.test.ts +367 -0
- package/test/registry.test.ts +444 -0
- package/test/tools.test.ts +453 -0
- package/tsconfig.json +20 -0
|
@@ -0,0 +1,1439 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Knowledge & Wiki Entity Types (Nouns)
|
|
3
|
+
*
|
|
4
|
+
* Semantic type definitions for knowledge management and wiki systems
|
|
5
|
+
* that can be used by both remote human workers AND AI agents. Each entity defines:
|
|
6
|
+
* - Properties: The data fields
|
|
7
|
+
* - Actions: Operations that can be performed (Verbs)
|
|
8
|
+
* - Events: State changes that occur
|
|
9
|
+
*
|
|
10
|
+
* @packageDocumentation
|
|
11
|
+
*/
|
|
12
|
+
// =============================================================================
|
|
13
|
+
// Wiki
|
|
14
|
+
// =============================================================================
|
|
15
|
+
/**
|
|
16
|
+
* WikiPage entity
|
|
17
|
+
*
|
|
18
|
+
* Represents a wiki page with title, content, and version history
|
|
19
|
+
*/
|
|
20
|
+
export const WikiPage = {
|
|
21
|
+
singular: 'wiki page',
|
|
22
|
+
plural: 'wiki pages',
|
|
23
|
+
description: 'A wiki page containing collaborative documentation',
|
|
24
|
+
properties: {
|
|
25
|
+
// Identity
|
|
26
|
+
title: {
|
|
27
|
+
type: 'string',
|
|
28
|
+
description: 'Page title',
|
|
29
|
+
},
|
|
30
|
+
slug: {
|
|
31
|
+
type: 'string',
|
|
32
|
+
description: 'URL-friendly page identifier',
|
|
33
|
+
},
|
|
34
|
+
// Content
|
|
35
|
+
content: {
|
|
36
|
+
type: 'markdown',
|
|
37
|
+
description: 'Page content in markdown or wiki markup',
|
|
38
|
+
},
|
|
39
|
+
rawContent: {
|
|
40
|
+
type: 'string',
|
|
41
|
+
optional: true,
|
|
42
|
+
description: 'Raw content before rendering',
|
|
43
|
+
},
|
|
44
|
+
summary: {
|
|
45
|
+
type: 'string',
|
|
46
|
+
optional: true,
|
|
47
|
+
description: 'Brief summary or excerpt of the page',
|
|
48
|
+
},
|
|
49
|
+
format: {
|
|
50
|
+
type: 'string',
|
|
51
|
+
description: 'Content format: markdown, wiki, html, plaintext',
|
|
52
|
+
examples: ['markdown', 'wiki', 'html', 'plaintext'],
|
|
53
|
+
},
|
|
54
|
+
// Hierarchy
|
|
55
|
+
path: {
|
|
56
|
+
type: 'string',
|
|
57
|
+
description: 'Full hierarchical path (e.g., /docs/api/overview)',
|
|
58
|
+
},
|
|
59
|
+
level: {
|
|
60
|
+
type: 'number',
|
|
61
|
+
description: 'Depth level in the page hierarchy',
|
|
62
|
+
},
|
|
63
|
+
// Version Control
|
|
64
|
+
version: {
|
|
65
|
+
type: 'number',
|
|
66
|
+
description: 'Current version number',
|
|
67
|
+
},
|
|
68
|
+
revisionCount: {
|
|
69
|
+
type: 'number',
|
|
70
|
+
optional: true,
|
|
71
|
+
description: 'Total number of revisions',
|
|
72
|
+
},
|
|
73
|
+
// Metadata
|
|
74
|
+
status: {
|
|
75
|
+
type: 'string',
|
|
76
|
+
description: 'Page status: draft, published, archived, deleted',
|
|
77
|
+
examples: ['draft', 'published', 'archived', 'deleted'],
|
|
78
|
+
},
|
|
79
|
+
visibility: {
|
|
80
|
+
type: 'string',
|
|
81
|
+
description: 'Visibility level: public, private, restricted',
|
|
82
|
+
examples: ['public', 'private', 'restricted'],
|
|
83
|
+
},
|
|
84
|
+
featured: {
|
|
85
|
+
type: 'boolean',
|
|
86
|
+
optional: true,
|
|
87
|
+
description: 'Whether the page is featured or highlighted',
|
|
88
|
+
},
|
|
89
|
+
locked: {
|
|
90
|
+
type: 'boolean',
|
|
91
|
+
optional: true,
|
|
92
|
+
description: 'Whether the page is locked from editing',
|
|
93
|
+
},
|
|
94
|
+
template: {
|
|
95
|
+
type: 'boolean',
|
|
96
|
+
optional: true,
|
|
97
|
+
description: 'Whether this page is a template for creating new pages',
|
|
98
|
+
},
|
|
99
|
+
// Statistics
|
|
100
|
+
viewCount: {
|
|
101
|
+
type: 'number',
|
|
102
|
+
optional: true,
|
|
103
|
+
description: 'Number of times the page has been viewed',
|
|
104
|
+
},
|
|
105
|
+
editCount: {
|
|
106
|
+
type: 'number',
|
|
107
|
+
optional: true,
|
|
108
|
+
description: 'Number of edits made to the page',
|
|
109
|
+
},
|
|
110
|
+
wordCount: {
|
|
111
|
+
type: 'number',
|
|
112
|
+
optional: true,
|
|
113
|
+
description: 'Number of words in the page',
|
|
114
|
+
},
|
|
115
|
+
characterCount: {
|
|
116
|
+
type: 'number',
|
|
117
|
+
optional: true,
|
|
118
|
+
description: 'Number of characters',
|
|
119
|
+
},
|
|
120
|
+
// Timestamps
|
|
121
|
+
publishedAt: {
|
|
122
|
+
type: 'datetime',
|
|
123
|
+
optional: true,
|
|
124
|
+
description: 'When the page was first published',
|
|
125
|
+
},
|
|
126
|
+
lastEditedAt: {
|
|
127
|
+
type: 'datetime',
|
|
128
|
+
optional: true,
|
|
129
|
+
description: 'When the page was last edited',
|
|
130
|
+
},
|
|
131
|
+
},
|
|
132
|
+
relationships: {
|
|
133
|
+
space: {
|
|
134
|
+
type: 'WikiSpace',
|
|
135
|
+
backref: 'pages',
|
|
136
|
+
description: 'The wiki space this page belongs to',
|
|
137
|
+
},
|
|
138
|
+
parent: {
|
|
139
|
+
type: 'WikiPage',
|
|
140
|
+
required: false,
|
|
141
|
+
description: 'Parent page in the hierarchy',
|
|
142
|
+
},
|
|
143
|
+
children: {
|
|
144
|
+
type: 'WikiPage[]',
|
|
145
|
+
description: 'Child pages under this page',
|
|
146
|
+
},
|
|
147
|
+
author: {
|
|
148
|
+
type: 'Contact',
|
|
149
|
+
description: 'Original author of the page',
|
|
150
|
+
},
|
|
151
|
+
lastEditor: {
|
|
152
|
+
type: 'Contact',
|
|
153
|
+
description: 'Person who last edited the page',
|
|
154
|
+
},
|
|
155
|
+
contributors: {
|
|
156
|
+
type: 'Contact[]',
|
|
157
|
+
description: 'All people who have edited this page',
|
|
158
|
+
},
|
|
159
|
+
revisions: {
|
|
160
|
+
type: 'WikiRevision[]',
|
|
161
|
+
backref: 'page',
|
|
162
|
+
description: 'Version history of the page',
|
|
163
|
+
},
|
|
164
|
+
comments: {
|
|
165
|
+
type: 'Comment[]',
|
|
166
|
+
backref: 'page',
|
|
167
|
+
description: 'Comments on the page',
|
|
168
|
+
},
|
|
169
|
+
attachments: {
|
|
170
|
+
type: 'Attachment[]',
|
|
171
|
+
description: 'Files attached to the page',
|
|
172
|
+
},
|
|
173
|
+
tags: {
|
|
174
|
+
type: 'Tag[]',
|
|
175
|
+
description: 'Tags categorizing this page',
|
|
176
|
+
},
|
|
177
|
+
linkedPages: {
|
|
178
|
+
type: 'WikiPage[]',
|
|
179
|
+
description: 'Pages that this page links to',
|
|
180
|
+
},
|
|
181
|
+
backlinks: {
|
|
182
|
+
type: 'WikiPage[]',
|
|
183
|
+
description: 'Pages that link to this page',
|
|
184
|
+
},
|
|
185
|
+
},
|
|
186
|
+
actions: [
|
|
187
|
+
'create',
|
|
188
|
+
'edit',
|
|
189
|
+
'save',
|
|
190
|
+
'publish',
|
|
191
|
+
'unpublish',
|
|
192
|
+
'archive',
|
|
193
|
+
'restore',
|
|
194
|
+
'delete',
|
|
195
|
+
'rename',
|
|
196
|
+
'move',
|
|
197
|
+
'duplicate',
|
|
198
|
+
'lock',
|
|
199
|
+
'unlock',
|
|
200
|
+
'watch',
|
|
201
|
+
'unwatch',
|
|
202
|
+
'comment',
|
|
203
|
+
'tag',
|
|
204
|
+
'untag',
|
|
205
|
+
'export',
|
|
206
|
+
'print',
|
|
207
|
+
'share',
|
|
208
|
+
'revert',
|
|
209
|
+
'compare',
|
|
210
|
+
],
|
|
211
|
+
events: [
|
|
212
|
+
'created',
|
|
213
|
+
'edited',
|
|
214
|
+
'saved',
|
|
215
|
+
'published',
|
|
216
|
+
'unpublished',
|
|
217
|
+
'archived',
|
|
218
|
+
'restored',
|
|
219
|
+
'deleted',
|
|
220
|
+
'renamed',
|
|
221
|
+
'moved',
|
|
222
|
+
'duplicated',
|
|
223
|
+
'locked',
|
|
224
|
+
'unlocked',
|
|
225
|
+
'viewed',
|
|
226
|
+
'commented',
|
|
227
|
+
'tagged',
|
|
228
|
+
'exported',
|
|
229
|
+
'shared',
|
|
230
|
+
'reverted',
|
|
231
|
+
],
|
|
232
|
+
};
|
|
233
|
+
/**
|
|
234
|
+
* WikiSpace entity
|
|
235
|
+
*
|
|
236
|
+
* Represents a wiki space or namespace containing related pages
|
|
237
|
+
*/
|
|
238
|
+
export const WikiSpace = {
|
|
239
|
+
singular: 'wiki space',
|
|
240
|
+
plural: 'wiki spaces',
|
|
241
|
+
description: 'A container or namespace for organizing related wiki pages',
|
|
242
|
+
properties: {
|
|
243
|
+
// Identity
|
|
244
|
+
name: {
|
|
245
|
+
type: 'string',
|
|
246
|
+
description: 'Space name',
|
|
247
|
+
},
|
|
248
|
+
key: {
|
|
249
|
+
type: 'string',
|
|
250
|
+
description: 'Unique space key or identifier',
|
|
251
|
+
},
|
|
252
|
+
description: {
|
|
253
|
+
type: 'string',
|
|
254
|
+
optional: true,
|
|
255
|
+
description: 'Space description',
|
|
256
|
+
},
|
|
257
|
+
// Appearance
|
|
258
|
+
icon: {
|
|
259
|
+
type: 'url',
|
|
260
|
+
optional: true,
|
|
261
|
+
description: 'Space icon or logo URL',
|
|
262
|
+
},
|
|
263
|
+
color: {
|
|
264
|
+
type: 'string',
|
|
265
|
+
optional: true,
|
|
266
|
+
description: 'Space color theme',
|
|
267
|
+
},
|
|
268
|
+
homepage: {
|
|
269
|
+
type: 'string',
|
|
270
|
+
optional: true,
|
|
271
|
+
description: 'Path to the space homepage',
|
|
272
|
+
},
|
|
273
|
+
// Configuration
|
|
274
|
+
visibility: {
|
|
275
|
+
type: 'string',
|
|
276
|
+
description: 'Space visibility: public, private, organization',
|
|
277
|
+
examples: ['public', 'private', 'organization'],
|
|
278
|
+
},
|
|
279
|
+
status: {
|
|
280
|
+
type: 'string',
|
|
281
|
+
description: 'Space status: active, archived, deleted',
|
|
282
|
+
examples: ['active', 'archived', 'deleted'],
|
|
283
|
+
},
|
|
284
|
+
template: {
|
|
285
|
+
type: 'string',
|
|
286
|
+
optional: true,
|
|
287
|
+
description: 'Space template used',
|
|
288
|
+
},
|
|
289
|
+
// Settings
|
|
290
|
+
allowAnonymousAccess: {
|
|
291
|
+
type: 'boolean',
|
|
292
|
+
optional: true,
|
|
293
|
+
description: 'Whether anonymous users can view the space',
|
|
294
|
+
},
|
|
295
|
+
allowComments: {
|
|
296
|
+
type: 'boolean',
|
|
297
|
+
optional: true,
|
|
298
|
+
description: 'Whether comments are enabled',
|
|
299
|
+
},
|
|
300
|
+
requireApproval: {
|
|
301
|
+
type: 'boolean',
|
|
302
|
+
optional: true,
|
|
303
|
+
description: 'Whether edits require approval',
|
|
304
|
+
},
|
|
305
|
+
// Statistics
|
|
306
|
+
pageCount: {
|
|
307
|
+
type: 'number',
|
|
308
|
+
optional: true,
|
|
309
|
+
description: 'Number of pages in the space',
|
|
310
|
+
},
|
|
311
|
+
memberCount: {
|
|
312
|
+
type: 'number',
|
|
313
|
+
optional: true,
|
|
314
|
+
description: 'Number of members with access',
|
|
315
|
+
},
|
|
316
|
+
},
|
|
317
|
+
relationships: {
|
|
318
|
+
pages: {
|
|
319
|
+
type: 'WikiPage[]',
|
|
320
|
+
backref: 'space',
|
|
321
|
+
description: 'Pages in this space',
|
|
322
|
+
},
|
|
323
|
+
owner: {
|
|
324
|
+
type: 'Contact',
|
|
325
|
+
description: 'Space owner',
|
|
326
|
+
},
|
|
327
|
+
admins: {
|
|
328
|
+
type: 'Contact[]',
|
|
329
|
+
description: 'Space administrators',
|
|
330
|
+
},
|
|
331
|
+
members: {
|
|
332
|
+
type: 'Contact[]',
|
|
333
|
+
description: 'Members with access to the space',
|
|
334
|
+
},
|
|
335
|
+
categories: {
|
|
336
|
+
type: 'Category[]',
|
|
337
|
+
description: 'Categories for organizing pages',
|
|
338
|
+
},
|
|
339
|
+
},
|
|
340
|
+
actions: [
|
|
341
|
+
'create',
|
|
342
|
+
'configure',
|
|
343
|
+
'archive',
|
|
344
|
+
'restore',
|
|
345
|
+
'delete',
|
|
346
|
+
'invite',
|
|
347
|
+
'removeMember',
|
|
348
|
+
'setPermissions',
|
|
349
|
+
'export',
|
|
350
|
+
],
|
|
351
|
+
events: [
|
|
352
|
+
'created',
|
|
353
|
+
'configured',
|
|
354
|
+
'archived',
|
|
355
|
+
'restored',
|
|
356
|
+
'deleted',
|
|
357
|
+
'memberJoined',
|
|
358
|
+
'memberLeft',
|
|
359
|
+
'memberRemoved',
|
|
360
|
+
'exported',
|
|
361
|
+
],
|
|
362
|
+
};
|
|
363
|
+
/**
|
|
364
|
+
* WikiRevision entity
|
|
365
|
+
*
|
|
366
|
+
* Represents a specific revision in a wiki page's history
|
|
367
|
+
*/
|
|
368
|
+
export const WikiRevision = {
|
|
369
|
+
singular: 'wiki revision',
|
|
370
|
+
plural: 'wiki revisions',
|
|
371
|
+
description: 'A specific version in a wiki page history',
|
|
372
|
+
properties: {
|
|
373
|
+
version: {
|
|
374
|
+
type: 'number',
|
|
375
|
+
description: 'Version number',
|
|
376
|
+
},
|
|
377
|
+
content: {
|
|
378
|
+
type: 'markdown',
|
|
379
|
+
description: 'Page content at this revision',
|
|
380
|
+
},
|
|
381
|
+
comment: {
|
|
382
|
+
type: 'string',
|
|
383
|
+
optional: true,
|
|
384
|
+
description: 'Edit comment or summary of changes',
|
|
385
|
+
},
|
|
386
|
+
changeSize: {
|
|
387
|
+
type: 'number',
|
|
388
|
+
optional: true,
|
|
389
|
+
description: 'Size of change in characters (positive or negative)',
|
|
390
|
+
},
|
|
391
|
+
isMajor: {
|
|
392
|
+
type: 'boolean',
|
|
393
|
+
optional: true,
|
|
394
|
+
description: 'Whether this is a major revision',
|
|
395
|
+
},
|
|
396
|
+
isReverted: {
|
|
397
|
+
type: 'boolean',
|
|
398
|
+
optional: true,
|
|
399
|
+
description: 'Whether this revision was later reverted',
|
|
400
|
+
},
|
|
401
|
+
},
|
|
402
|
+
relationships: {
|
|
403
|
+
page: {
|
|
404
|
+
type: 'WikiPage',
|
|
405
|
+
backref: 'revisions',
|
|
406
|
+
description: 'Page this is a revision of',
|
|
407
|
+
},
|
|
408
|
+
author: {
|
|
409
|
+
type: 'Contact',
|
|
410
|
+
description: 'Who made this revision',
|
|
411
|
+
},
|
|
412
|
+
previousRevision: {
|
|
413
|
+
type: 'WikiRevision',
|
|
414
|
+
required: false,
|
|
415
|
+
description: 'Previous revision',
|
|
416
|
+
},
|
|
417
|
+
},
|
|
418
|
+
actions: ['view', 'restore', 'compare', 'revert', 'export'],
|
|
419
|
+
events: ['created', 'viewed', 'restored', 'compared', 'reverted'],
|
|
420
|
+
};
|
|
421
|
+
// =============================================================================
|
|
422
|
+
// Knowledge Base
|
|
423
|
+
// =============================================================================
|
|
424
|
+
/**
|
|
425
|
+
* Article entity
|
|
426
|
+
*
|
|
427
|
+
* Represents a knowledge base article (more structured than wiki pages)
|
|
428
|
+
*/
|
|
429
|
+
export const Article = {
|
|
430
|
+
singular: 'article',
|
|
431
|
+
plural: 'articles',
|
|
432
|
+
description: 'A knowledge base article with structured content',
|
|
433
|
+
properties: {
|
|
434
|
+
// Identity
|
|
435
|
+
title: {
|
|
436
|
+
type: 'string',
|
|
437
|
+
description: 'Article title',
|
|
438
|
+
},
|
|
439
|
+
slug: {
|
|
440
|
+
type: 'string',
|
|
441
|
+
description: 'URL-friendly identifier',
|
|
442
|
+
},
|
|
443
|
+
// Content
|
|
444
|
+
content: {
|
|
445
|
+
type: 'markdown',
|
|
446
|
+
description: 'Article content',
|
|
447
|
+
},
|
|
448
|
+
excerpt: {
|
|
449
|
+
type: 'string',
|
|
450
|
+
optional: true,
|
|
451
|
+
description: 'Short excerpt or summary',
|
|
452
|
+
},
|
|
453
|
+
format: {
|
|
454
|
+
type: 'string',
|
|
455
|
+
description: 'Content format: markdown, html, richtext',
|
|
456
|
+
examples: ['markdown', 'html', 'richtext'],
|
|
457
|
+
},
|
|
458
|
+
// Organization
|
|
459
|
+
category: {
|
|
460
|
+
type: 'string',
|
|
461
|
+
optional: true,
|
|
462
|
+
description: 'Primary category',
|
|
463
|
+
},
|
|
464
|
+
section: {
|
|
465
|
+
type: 'string',
|
|
466
|
+
optional: true,
|
|
467
|
+
description: 'Section within category',
|
|
468
|
+
},
|
|
469
|
+
order: {
|
|
470
|
+
type: 'number',
|
|
471
|
+
optional: true,
|
|
472
|
+
description: 'Sort order within section or category',
|
|
473
|
+
},
|
|
474
|
+
// Status
|
|
475
|
+
status: {
|
|
476
|
+
type: 'string',
|
|
477
|
+
description: 'Article status: draft, review, published, archived',
|
|
478
|
+
examples: ['draft', 'review', 'published', 'archived'],
|
|
479
|
+
},
|
|
480
|
+
visibility: {
|
|
481
|
+
type: 'string',
|
|
482
|
+
description: 'Visibility: public, internal, private',
|
|
483
|
+
examples: ['public', 'internal', 'private'],
|
|
484
|
+
},
|
|
485
|
+
featured: {
|
|
486
|
+
type: 'boolean',
|
|
487
|
+
optional: true,
|
|
488
|
+
description: 'Whether the article is featured',
|
|
489
|
+
},
|
|
490
|
+
pinned: {
|
|
491
|
+
type: 'boolean',
|
|
492
|
+
optional: true,
|
|
493
|
+
description: 'Whether the article is pinned to the top',
|
|
494
|
+
},
|
|
495
|
+
// Metadata
|
|
496
|
+
language: {
|
|
497
|
+
type: 'string',
|
|
498
|
+
optional: true,
|
|
499
|
+
description: 'Article language code',
|
|
500
|
+
},
|
|
501
|
+
locale: {
|
|
502
|
+
type: 'string',
|
|
503
|
+
optional: true,
|
|
504
|
+
description: 'Locale for localized content',
|
|
505
|
+
},
|
|
506
|
+
// Quality
|
|
507
|
+
reviewStatus: {
|
|
508
|
+
type: 'string',
|
|
509
|
+
optional: true,
|
|
510
|
+
description: 'Review status: pending, approved, rejected',
|
|
511
|
+
examples: ['pending', 'approved', 'rejected'],
|
|
512
|
+
},
|
|
513
|
+
qualityScore: {
|
|
514
|
+
type: 'number',
|
|
515
|
+
optional: true,
|
|
516
|
+
description: 'Quality score from 0-100',
|
|
517
|
+
},
|
|
518
|
+
lastReviewedAt: {
|
|
519
|
+
type: 'datetime',
|
|
520
|
+
optional: true,
|
|
521
|
+
description: 'When the article was last reviewed',
|
|
522
|
+
},
|
|
523
|
+
// Engagement
|
|
524
|
+
viewCount: {
|
|
525
|
+
type: 'number',
|
|
526
|
+
optional: true,
|
|
527
|
+
description: 'Number of views',
|
|
528
|
+
},
|
|
529
|
+
helpfulCount: {
|
|
530
|
+
type: 'number',
|
|
531
|
+
optional: true,
|
|
532
|
+
description: 'Number of helpful votes',
|
|
533
|
+
},
|
|
534
|
+
unhelpfulCount: {
|
|
535
|
+
type: 'number',
|
|
536
|
+
optional: true,
|
|
537
|
+
description: 'Number of unhelpful votes',
|
|
538
|
+
},
|
|
539
|
+
// SEO
|
|
540
|
+
metaTitle: {
|
|
541
|
+
type: 'string',
|
|
542
|
+
optional: true,
|
|
543
|
+
description: 'SEO meta title',
|
|
544
|
+
},
|
|
545
|
+
metaDescription: {
|
|
546
|
+
type: 'string',
|
|
547
|
+
optional: true,
|
|
548
|
+
description: 'SEO meta description',
|
|
549
|
+
},
|
|
550
|
+
keywords: {
|
|
551
|
+
type: 'string',
|
|
552
|
+
array: true,
|
|
553
|
+
optional: true,
|
|
554
|
+
description: 'SEO keywords',
|
|
555
|
+
},
|
|
556
|
+
// Timestamps
|
|
557
|
+
publishedAt: {
|
|
558
|
+
type: 'datetime',
|
|
559
|
+
optional: true,
|
|
560
|
+
description: 'When the article was published',
|
|
561
|
+
},
|
|
562
|
+
scheduledAt: {
|
|
563
|
+
type: 'datetime',
|
|
564
|
+
optional: true,
|
|
565
|
+
description: 'Scheduled publication time',
|
|
566
|
+
},
|
|
567
|
+
},
|
|
568
|
+
relationships: {
|
|
569
|
+
knowledgeBase: {
|
|
570
|
+
type: 'KnowledgeBase',
|
|
571
|
+
backref: 'articles',
|
|
572
|
+
description: 'Knowledge base this article belongs to',
|
|
573
|
+
},
|
|
574
|
+
author: {
|
|
575
|
+
type: 'Contact',
|
|
576
|
+
description: 'Article author',
|
|
577
|
+
},
|
|
578
|
+
reviewers: {
|
|
579
|
+
type: 'Contact[]',
|
|
580
|
+
description: 'People who have reviewed this article',
|
|
581
|
+
},
|
|
582
|
+
relatedArticles: {
|
|
583
|
+
type: 'Article[]',
|
|
584
|
+
description: 'Related or similar articles',
|
|
585
|
+
},
|
|
586
|
+
tags: {
|
|
587
|
+
type: 'Tag[]',
|
|
588
|
+
description: 'Tags categorizing this article',
|
|
589
|
+
},
|
|
590
|
+
attachments: {
|
|
591
|
+
type: 'Attachment[]',
|
|
592
|
+
description: 'Attached files and media',
|
|
593
|
+
},
|
|
594
|
+
comments: {
|
|
595
|
+
type: 'Comment[]',
|
|
596
|
+
backref: 'article',
|
|
597
|
+
description: 'Comments and feedback',
|
|
598
|
+
},
|
|
599
|
+
translations: {
|
|
600
|
+
type: 'Article[]',
|
|
601
|
+
description: 'Translated versions of this article',
|
|
602
|
+
},
|
|
603
|
+
},
|
|
604
|
+
actions: [
|
|
605
|
+
'create',
|
|
606
|
+
'edit',
|
|
607
|
+
'save',
|
|
608
|
+
'publish',
|
|
609
|
+
'unpublish',
|
|
610
|
+
'schedule',
|
|
611
|
+
'review',
|
|
612
|
+
'approve',
|
|
613
|
+
'reject',
|
|
614
|
+
'archive',
|
|
615
|
+
'restore',
|
|
616
|
+
'delete',
|
|
617
|
+
'duplicate',
|
|
618
|
+
'translate',
|
|
619
|
+
'export',
|
|
620
|
+
'vote',
|
|
621
|
+
'report',
|
|
622
|
+
],
|
|
623
|
+
events: [
|
|
624
|
+
'created',
|
|
625
|
+
'edited',
|
|
626
|
+
'saved',
|
|
627
|
+
'published',
|
|
628
|
+
'unpublished',
|
|
629
|
+
'scheduled',
|
|
630
|
+
'reviewed',
|
|
631
|
+
'approved',
|
|
632
|
+
'rejected',
|
|
633
|
+
'archived',
|
|
634
|
+
'restored',
|
|
635
|
+
'deleted',
|
|
636
|
+
'duplicated',
|
|
637
|
+
'viewed',
|
|
638
|
+
'voted',
|
|
639
|
+
'translated',
|
|
640
|
+
'reported',
|
|
641
|
+
],
|
|
642
|
+
};
|
|
643
|
+
/**
|
|
644
|
+
* KnowledgeBase entity
|
|
645
|
+
*
|
|
646
|
+
* Represents a knowledge base container
|
|
647
|
+
*/
|
|
648
|
+
export const KnowledgeBase = {
|
|
649
|
+
singular: 'knowledge base',
|
|
650
|
+
plural: 'knowledge bases',
|
|
651
|
+
description: 'A structured collection of articles and documentation',
|
|
652
|
+
properties: {
|
|
653
|
+
// Identity
|
|
654
|
+
name: {
|
|
655
|
+
type: 'string',
|
|
656
|
+
description: 'Knowledge base name',
|
|
657
|
+
},
|
|
658
|
+
description: {
|
|
659
|
+
type: 'string',
|
|
660
|
+
optional: true,
|
|
661
|
+
description: 'Knowledge base description',
|
|
662
|
+
},
|
|
663
|
+
slug: {
|
|
664
|
+
type: 'string',
|
|
665
|
+
description: 'URL-friendly identifier',
|
|
666
|
+
},
|
|
667
|
+
// Appearance
|
|
668
|
+
logo: {
|
|
669
|
+
type: 'url',
|
|
670
|
+
optional: true,
|
|
671
|
+
description: 'Logo URL',
|
|
672
|
+
},
|
|
673
|
+
icon: {
|
|
674
|
+
type: 'url',
|
|
675
|
+
optional: true,
|
|
676
|
+
description: 'Icon URL',
|
|
677
|
+
},
|
|
678
|
+
theme: {
|
|
679
|
+
type: 'json',
|
|
680
|
+
optional: true,
|
|
681
|
+
description: 'Theme configuration',
|
|
682
|
+
},
|
|
683
|
+
// Configuration
|
|
684
|
+
visibility: {
|
|
685
|
+
type: 'string',
|
|
686
|
+
description: 'Visibility: public, private, organization',
|
|
687
|
+
examples: ['public', 'private', 'organization'],
|
|
688
|
+
},
|
|
689
|
+
status: {
|
|
690
|
+
type: 'string',
|
|
691
|
+
description: 'Status: active, archived, maintenance',
|
|
692
|
+
examples: ['active', 'archived', 'maintenance'],
|
|
693
|
+
},
|
|
694
|
+
language: {
|
|
695
|
+
type: 'string',
|
|
696
|
+
description: 'Default language code',
|
|
697
|
+
},
|
|
698
|
+
supportedLanguages: {
|
|
699
|
+
type: 'string',
|
|
700
|
+
array: true,
|
|
701
|
+
optional: true,
|
|
702
|
+
description: 'Supported language codes',
|
|
703
|
+
},
|
|
704
|
+
// Features
|
|
705
|
+
enableSearch: {
|
|
706
|
+
type: 'boolean',
|
|
707
|
+
optional: true,
|
|
708
|
+
description: 'Whether search is enabled',
|
|
709
|
+
},
|
|
710
|
+
enableComments: {
|
|
711
|
+
type: 'boolean',
|
|
712
|
+
optional: true,
|
|
713
|
+
description: 'Whether comments are enabled',
|
|
714
|
+
},
|
|
715
|
+
enableVoting: {
|
|
716
|
+
type: 'boolean',
|
|
717
|
+
optional: true,
|
|
718
|
+
description: 'Whether article voting is enabled',
|
|
719
|
+
},
|
|
720
|
+
enableSuggestions: {
|
|
721
|
+
type: 'boolean',
|
|
722
|
+
optional: true,
|
|
723
|
+
description: 'Whether article suggestions are enabled',
|
|
724
|
+
},
|
|
725
|
+
// Statistics
|
|
726
|
+
articleCount: {
|
|
727
|
+
type: 'number',
|
|
728
|
+
optional: true,
|
|
729
|
+
description: 'Number of articles',
|
|
730
|
+
},
|
|
731
|
+
categoryCount: {
|
|
732
|
+
type: 'number',
|
|
733
|
+
optional: true,
|
|
734
|
+
description: 'Number of categories',
|
|
735
|
+
},
|
|
736
|
+
viewCount: {
|
|
737
|
+
type: 'number',
|
|
738
|
+
optional: true,
|
|
739
|
+
description: 'Total views across all articles',
|
|
740
|
+
},
|
|
741
|
+
// SEO
|
|
742
|
+
domain: {
|
|
743
|
+
type: 'string',
|
|
744
|
+
optional: true,
|
|
745
|
+
description: 'Custom domain',
|
|
746
|
+
},
|
|
747
|
+
basePath: {
|
|
748
|
+
type: 'string',
|
|
749
|
+
optional: true,
|
|
750
|
+
description: 'Base URL path',
|
|
751
|
+
},
|
|
752
|
+
},
|
|
753
|
+
relationships: {
|
|
754
|
+
articles: {
|
|
755
|
+
type: 'Article[]',
|
|
756
|
+
backref: 'knowledgeBase',
|
|
757
|
+
description: 'Articles in this knowledge base',
|
|
758
|
+
},
|
|
759
|
+
categories: {
|
|
760
|
+
type: 'Category[]',
|
|
761
|
+
description: 'Categories for organizing articles',
|
|
762
|
+
},
|
|
763
|
+
owner: {
|
|
764
|
+
type: 'Contact',
|
|
765
|
+
description: 'Knowledge base owner',
|
|
766
|
+
},
|
|
767
|
+
editors: {
|
|
768
|
+
type: 'Contact[]',
|
|
769
|
+
description: 'People with edit permissions',
|
|
770
|
+
},
|
|
771
|
+
searchIndex: {
|
|
772
|
+
type: 'SearchIndex',
|
|
773
|
+
required: false,
|
|
774
|
+
description: 'Search index for this knowledge base',
|
|
775
|
+
},
|
|
776
|
+
},
|
|
777
|
+
actions: [
|
|
778
|
+
'create',
|
|
779
|
+
'configure',
|
|
780
|
+
'archive',
|
|
781
|
+
'restore',
|
|
782
|
+
'delete',
|
|
783
|
+
'addEditor',
|
|
784
|
+
'removeEditor',
|
|
785
|
+
'export',
|
|
786
|
+
'import',
|
|
787
|
+
'rebuildIndex',
|
|
788
|
+
],
|
|
789
|
+
events: [
|
|
790
|
+
'created',
|
|
791
|
+
'configured',
|
|
792
|
+
'archived',
|
|
793
|
+
'restored',
|
|
794
|
+
'deleted',
|
|
795
|
+
'editorAdded',
|
|
796
|
+
'editorRemoved',
|
|
797
|
+
'exported',
|
|
798
|
+
'imported',
|
|
799
|
+
'indexRebuilt',
|
|
800
|
+
],
|
|
801
|
+
};
|
|
802
|
+
// =============================================================================
|
|
803
|
+
// Glossary
|
|
804
|
+
// =============================================================================
|
|
805
|
+
/**
|
|
806
|
+
* Glossary entity
|
|
807
|
+
*
|
|
808
|
+
* Represents a glossary or dictionary of terms
|
|
809
|
+
*/
|
|
810
|
+
export const Glossary = {
|
|
811
|
+
singular: 'glossary',
|
|
812
|
+
plural: 'glossaries',
|
|
813
|
+
description: 'A collection of term definitions and explanations',
|
|
814
|
+
properties: {
|
|
815
|
+
// Identity
|
|
816
|
+
name: {
|
|
817
|
+
type: 'string',
|
|
818
|
+
description: 'Glossary name',
|
|
819
|
+
},
|
|
820
|
+
description: {
|
|
821
|
+
type: 'string',
|
|
822
|
+
optional: true,
|
|
823
|
+
description: 'Glossary description',
|
|
824
|
+
},
|
|
825
|
+
slug: {
|
|
826
|
+
type: 'string',
|
|
827
|
+
description: 'URL-friendly identifier',
|
|
828
|
+
},
|
|
829
|
+
// Configuration
|
|
830
|
+
visibility: {
|
|
831
|
+
type: 'string',
|
|
832
|
+
description: 'Visibility: public, private, organization',
|
|
833
|
+
examples: ['public', 'private', 'organization'],
|
|
834
|
+
},
|
|
835
|
+
language: {
|
|
836
|
+
type: 'string',
|
|
837
|
+
description: 'Primary language code',
|
|
838
|
+
},
|
|
839
|
+
domain: {
|
|
840
|
+
type: 'string',
|
|
841
|
+
optional: true,
|
|
842
|
+
description: 'Subject domain or field (e.g., medical, legal, technical)',
|
|
843
|
+
},
|
|
844
|
+
// Organization
|
|
845
|
+
sortOrder: {
|
|
846
|
+
type: 'string',
|
|
847
|
+
description: 'Sort order: alphabetical, custom, date',
|
|
848
|
+
examples: ['alphabetical', 'custom', 'date'],
|
|
849
|
+
},
|
|
850
|
+
groupBy: {
|
|
851
|
+
type: 'string',
|
|
852
|
+
optional: true,
|
|
853
|
+
description: 'Grouping method: letter, category, none',
|
|
854
|
+
examples: ['letter', 'category', 'none'],
|
|
855
|
+
},
|
|
856
|
+
// Features
|
|
857
|
+
allowAbbreviations: {
|
|
858
|
+
type: 'boolean',
|
|
859
|
+
optional: true,
|
|
860
|
+
description: 'Whether abbreviations are supported',
|
|
861
|
+
},
|
|
862
|
+
allowSynonyms: {
|
|
863
|
+
type: 'boolean',
|
|
864
|
+
optional: true,
|
|
865
|
+
description: 'Whether synonyms are supported',
|
|
866
|
+
},
|
|
867
|
+
enableSearch: {
|
|
868
|
+
type: 'boolean',
|
|
869
|
+
optional: true,
|
|
870
|
+
description: 'Whether search is enabled',
|
|
871
|
+
},
|
|
872
|
+
// Statistics
|
|
873
|
+
termCount: {
|
|
874
|
+
type: 'number',
|
|
875
|
+
optional: true,
|
|
876
|
+
description: 'Number of terms',
|
|
877
|
+
},
|
|
878
|
+
},
|
|
879
|
+
relationships: {
|
|
880
|
+
terms: {
|
|
881
|
+
type: 'GlossaryTerm[]',
|
|
882
|
+
backref: 'glossary',
|
|
883
|
+
description: 'Terms in this glossary',
|
|
884
|
+
},
|
|
885
|
+
owner: {
|
|
886
|
+
type: 'Contact',
|
|
887
|
+
description: 'Glossary owner',
|
|
888
|
+
},
|
|
889
|
+
contributors: {
|
|
890
|
+
type: 'Contact[]',
|
|
891
|
+
description: 'People who have contributed terms',
|
|
892
|
+
},
|
|
893
|
+
categories: {
|
|
894
|
+
type: 'Category[]',
|
|
895
|
+
description: 'Categories for organizing terms',
|
|
896
|
+
},
|
|
897
|
+
},
|
|
898
|
+
actions: [
|
|
899
|
+
'create',
|
|
900
|
+
'configure',
|
|
901
|
+
'addTerm',
|
|
902
|
+
'removeTerm',
|
|
903
|
+
'export',
|
|
904
|
+
'import',
|
|
905
|
+
'merge',
|
|
906
|
+
'archive',
|
|
907
|
+
'delete',
|
|
908
|
+
],
|
|
909
|
+
events: [
|
|
910
|
+
'created',
|
|
911
|
+
'configured',
|
|
912
|
+
'termAdded',
|
|
913
|
+
'termRemoved',
|
|
914
|
+
'exported',
|
|
915
|
+
'imported',
|
|
916
|
+
'merged',
|
|
917
|
+
'archived',
|
|
918
|
+
'deleted',
|
|
919
|
+
],
|
|
920
|
+
};
|
|
921
|
+
/**
|
|
922
|
+
* GlossaryTerm entity
|
|
923
|
+
*
|
|
924
|
+
* Represents a term definition in a glossary
|
|
925
|
+
*/
|
|
926
|
+
export const GlossaryTerm = {
|
|
927
|
+
singular: 'glossary term',
|
|
928
|
+
plural: 'glossary terms',
|
|
929
|
+
description: 'A term and its definition in a glossary',
|
|
930
|
+
properties: {
|
|
931
|
+
// Term
|
|
932
|
+
term: {
|
|
933
|
+
type: 'string',
|
|
934
|
+
description: 'The term being defined',
|
|
935
|
+
},
|
|
936
|
+
pronunciation: {
|
|
937
|
+
type: 'string',
|
|
938
|
+
optional: true,
|
|
939
|
+
description: 'Phonetic pronunciation',
|
|
940
|
+
},
|
|
941
|
+
partOfSpeech: {
|
|
942
|
+
type: 'string',
|
|
943
|
+
optional: true,
|
|
944
|
+
description: 'Part of speech: noun, verb, adjective, etc.',
|
|
945
|
+
examples: ['noun', 'verb', 'adjective', 'adverb', 'acronym', 'abbreviation'],
|
|
946
|
+
},
|
|
947
|
+
// Definition
|
|
948
|
+
definition: {
|
|
949
|
+
type: 'markdown',
|
|
950
|
+
description: 'Term definition',
|
|
951
|
+
},
|
|
952
|
+
shortDefinition: {
|
|
953
|
+
type: 'string',
|
|
954
|
+
optional: true,
|
|
955
|
+
description: 'Brief one-line definition',
|
|
956
|
+
},
|
|
957
|
+
etymology: {
|
|
958
|
+
type: 'string',
|
|
959
|
+
optional: true,
|
|
960
|
+
description: 'Origin and history of the term',
|
|
961
|
+
},
|
|
962
|
+
// Variations
|
|
963
|
+
pluralForm: {
|
|
964
|
+
type: 'string',
|
|
965
|
+
optional: true,
|
|
966
|
+
description: 'Plural form of the term',
|
|
967
|
+
},
|
|
968
|
+
abbreviation: {
|
|
969
|
+
type: 'string',
|
|
970
|
+
optional: true,
|
|
971
|
+
description: 'Abbreviated form',
|
|
972
|
+
},
|
|
973
|
+
acronymFor: {
|
|
974
|
+
type: 'string',
|
|
975
|
+
optional: true,
|
|
976
|
+
description: 'What the acronym stands for',
|
|
977
|
+
},
|
|
978
|
+
synonyms: {
|
|
979
|
+
type: 'string',
|
|
980
|
+
array: true,
|
|
981
|
+
optional: true,
|
|
982
|
+
description: 'Synonymous terms',
|
|
983
|
+
},
|
|
984
|
+
antonyms: {
|
|
985
|
+
type: 'string',
|
|
986
|
+
array: true,
|
|
987
|
+
optional: true,
|
|
988
|
+
description: 'Opposite terms',
|
|
989
|
+
},
|
|
990
|
+
// Context
|
|
991
|
+
category: {
|
|
992
|
+
type: 'string',
|
|
993
|
+
optional: true,
|
|
994
|
+
description: 'Category or subject area',
|
|
995
|
+
},
|
|
996
|
+
examples: {
|
|
997
|
+
type: 'string',
|
|
998
|
+
array: true,
|
|
999
|
+
optional: true,
|
|
1000
|
+
description: 'Usage examples',
|
|
1001
|
+
},
|
|
1002
|
+
usageNotes: {
|
|
1003
|
+
type: 'string',
|
|
1004
|
+
optional: true,
|
|
1005
|
+
description: 'Notes on proper usage',
|
|
1006
|
+
},
|
|
1007
|
+
// Status
|
|
1008
|
+
status: {
|
|
1009
|
+
type: 'string',
|
|
1010
|
+
description: 'Status: draft, published, deprecated',
|
|
1011
|
+
examples: ['draft', 'published', 'deprecated'],
|
|
1012
|
+
},
|
|
1013
|
+
visibility: {
|
|
1014
|
+
type: 'string',
|
|
1015
|
+
description: 'Visibility: public, private',
|
|
1016
|
+
examples: ['public', 'private'],
|
|
1017
|
+
},
|
|
1018
|
+
// Metadata
|
|
1019
|
+
language: {
|
|
1020
|
+
type: 'string',
|
|
1021
|
+
description: 'Language code',
|
|
1022
|
+
},
|
|
1023
|
+
sortKey: {
|
|
1024
|
+
type: 'string',
|
|
1025
|
+
optional: true,
|
|
1026
|
+
description: 'Custom sort key',
|
|
1027
|
+
},
|
|
1028
|
+
},
|
|
1029
|
+
relationships: {
|
|
1030
|
+
glossary: {
|
|
1031
|
+
type: 'Glossary',
|
|
1032
|
+
backref: 'terms',
|
|
1033
|
+
description: 'Glossary this term belongs to',
|
|
1034
|
+
},
|
|
1035
|
+
author: {
|
|
1036
|
+
type: 'Contact',
|
|
1037
|
+
description: 'Who created this term',
|
|
1038
|
+
},
|
|
1039
|
+
relatedTerms: {
|
|
1040
|
+
type: 'GlossaryTerm[]',
|
|
1041
|
+
description: 'Related terms',
|
|
1042
|
+
},
|
|
1043
|
+
seeAlso: {
|
|
1044
|
+
type: 'GlossaryTerm[]',
|
|
1045
|
+
description: 'Cross-reference terms',
|
|
1046
|
+
},
|
|
1047
|
+
translations: {
|
|
1048
|
+
type: 'GlossaryTerm[]',
|
|
1049
|
+
description: 'Translations in other languages',
|
|
1050
|
+
},
|
|
1051
|
+
references: {
|
|
1052
|
+
type: 'Article[]',
|
|
1053
|
+
description: 'Articles or pages that reference this term',
|
|
1054
|
+
},
|
|
1055
|
+
},
|
|
1056
|
+
actions: [
|
|
1057
|
+
'create',
|
|
1058
|
+
'edit',
|
|
1059
|
+
'publish',
|
|
1060
|
+
'unpublish',
|
|
1061
|
+
'deprecate',
|
|
1062
|
+
'delete',
|
|
1063
|
+
'translate',
|
|
1064
|
+
'link',
|
|
1065
|
+
'unlink',
|
|
1066
|
+
],
|
|
1067
|
+
events: [
|
|
1068
|
+
'created',
|
|
1069
|
+
'edited',
|
|
1070
|
+
'published',
|
|
1071
|
+
'unpublished',
|
|
1072
|
+
'deprecated',
|
|
1073
|
+
'deleted',
|
|
1074
|
+
'translated',
|
|
1075
|
+
'linked',
|
|
1076
|
+
'viewed',
|
|
1077
|
+
],
|
|
1078
|
+
};
|
|
1079
|
+
// =============================================================================
|
|
1080
|
+
// Search
|
|
1081
|
+
// =============================================================================
|
|
1082
|
+
/**
|
|
1083
|
+
* SearchIndex entity
|
|
1084
|
+
*
|
|
1085
|
+
* Represents a search index for content
|
|
1086
|
+
*/
|
|
1087
|
+
export const SearchIndex = {
|
|
1088
|
+
singular: 'search index',
|
|
1089
|
+
plural: 'search indexes',
|
|
1090
|
+
description: 'A search index for finding content quickly',
|
|
1091
|
+
properties: {
|
|
1092
|
+
// Identity
|
|
1093
|
+
name: {
|
|
1094
|
+
type: 'string',
|
|
1095
|
+
description: 'Index name',
|
|
1096
|
+
},
|
|
1097
|
+
description: {
|
|
1098
|
+
type: 'string',
|
|
1099
|
+
optional: true,
|
|
1100
|
+
description: 'Index description',
|
|
1101
|
+
},
|
|
1102
|
+
// Configuration
|
|
1103
|
+
type: {
|
|
1104
|
+
type: 'string',
|
|
1105
|
+
description: 'Index type: full-text, semantic, vector, hybrid',
|
|
1106
|
+
examples: ['full-text', 'semantic', 'vector', 'hybrid'],
|
|
1107
|
+
},
|
|
1108
|
+
language: {
|
|
1109
|
+
type: 'string',
|
|
1110
|
+
description: 'Primary language for text analysis',
|
|
1111
|
+
},
|
|
1112
|
+
supportedLanguages: {
|
|
1113
|
+
type: 'string',
|
|
1114
|
+
array: true,
|
|
1115
|
+
optional: true,
|
|
1116
|
+
description: 'Supported languages',
|
|
1117
|
+
},
|
|
1118
|
+
// Schema
|
|
1119
|
+
fields: {
|
|
1120
|
+
type: 'json',
|
|
1121
|
+
description: 'Indexed field configurations',
|
|
1122
|
+
},
|
|
1123
|
+
boosts: {
|
|
1124
|
+
type: 'json',
|
|
1125
|
+
optional: true,
|
|
1126
|
+
description: 'Field boost weights for relevance scoring',
|
|
1127
|
+
},
|
|
1128
|
+
// Status
|
|
1129
|
+
status: {
|
|
1130
|
+
type: 'string',
|
|
1131
|
+
description: 'Index status: building, ready, updating, error',
|
|
1132
|
+
examples: ['building', 'ready', 'updating', 'error'],
|
|
1133
|
+
},
|
|
1134
|
+
lastBuiltAt: {
|
|
1135
|
+
type: 'datetime',
|
|
1136
|
+
optional: true,
|
|
1137
|
+
description: 'When the index was last built',
|
|
1138
|
+
},
|
|
1139
|
+
lastUpdatedAt: {
|
|
1140
|
+
type: 'datetime',
|
|
1141
|
+
optional: true,
|
|
1142
|
+
description: 'When the index was last updated',
|
|
1143
|
+
},
|
|
1144
|
+
// Statistics
|
|
1145
|
+
documentCount: {
|
|
1146
|
+
type: 'number',
|
|
1147
|
+
optional: true,
|
|
1148
|
+
description: 'Number of documents indexed',
|
|
1149
|
+
},
|
|
1150
|
+
size: {
|
|
1151
|
+
type: 'number',
|
|
1152
|
+
optional: true,
|
|
1153
|
+
description: 'Index size in bytes',
|
|
1154
|
+
},
|
|
1155
|
+
// Performance
|
|
1156
|
+
queryTimeMs: {
|
|
1157
|
+
type: 'number',
|
|
1158
|
+
optional: true,
|
|
1159
|
+
description: 'Average query time in milliseconds',
|
|
1160
|
+
},
|
|
1161
|
+
indexingTimeMs: {
|
|
1162
|
+
type: 'number',
|
|
1163
|
+
optional: true,
|
|
1164
|
+
description: 'Time taken to build the index',
|
|
1165
|
+
},
|
|
1166
|
+
},
|
|
1167
|
+
relationships: {
|
|
1168
|
+
knowledgeBase: {
|
|
1169
|
+
type: 'KnowledgeBase',
|
|
1170
|
+
required: false,
|
|
1171
|
+
description: 'Knowledge base this index belongs to',
|
|
1172
|
+
},
|
|
1173
|
+
wikiSpace: {
|
|
1174
|
+
type: 'WikiSpace',
|
|
1175
|
+
required: false,
|
|
1176
|
+
description: 'Wiki space this index belongs to',
|
|
1177
|
+
},
|
|
1178
|
+
},
|
|
1179
|
+
actions: [
|
|
1180
|
+
'create',
|
|
1181
|
+
'build',
|
|
1182
|
+
'update',
|
|
1183
|
+
'rebuild',
|
|
1184
|
+
'optimize',
|
|
1185
|
+
'clear',
|
|
1186
|
+
'delete',
|
|
1187
|
+
'search',
|
|
1188
|
+
'suggest',
|
|
1189
|
+
],
|
|
1190
|
+
events: [
|
|
1191
|
+
'created',
|
|
1192
|
+
'built',
|
|
1193
|
+
'updated',
|
|
1194
|
+
'rebuilt',
|
|
1195
|
+
'optimized',
|
|
1196
|
+
'cleared',
|
|
1197
|
+
'deleted',
|
|
1198
|
+
'searched',
|
|
1199
|
+
],
|
|
1200
|
+
};
|
|
1201
|
+
// =============================================================================
|
|
1202
|
+
// Supporting Entities
|
|
1203
|
+
// =============================================================================
|
|
1204
|
+
/**
|
|
1205
|
+
* Tag entity
|
|
1206
|
+
*
|
|
1207
|
+
* Represents a tag for categorizing content
|
|
1208
|
+
*/
|
|
1209
|
+
export const Tag = {
|
|
1210
|
+
singular: 'tag',
|
|
1211
|
+
plural: 'tags',
|
|
1212
|
+
description: 'A label for categorizing and organizing content',
|
|
1213
|
+
properties: {
|
|
1214
|
+
// Identity
|
|
1215
|
+
name: {
|
|
1216
|
+
type: 'string',
|
|
1217
|
+
description: 'Tag name',
|
|
1218
|
+
},
|
|
1219
|
+
slug: {
|
|
1220
|
+
type: 'string',
|
|
1221
|
+
description: 'URL-friendly identifier',
|
|
1222
|
+
},
|
|
1223
|
+
description: {
|
|
1224
|
+
type: 'string',
|
|
1225
|
+
optional: true,
|
|
1226
|
+
description: 'Tag description',
|
|
1227
|
+
},
|
|
1228
|
+
// Appearance
|
|
1229
|
+
color: {
|
|
1230
|
+
type: 'string',
|
|
1231
|
+
optional: true,
|
|
1232
|
+
description: 'Tag color (hex code)',
|
|
1233
|
+
},
|
|
1234
|
+
icon: {
|
|
1235
|
+
type: 'string',
|
|
1236
|
+
optional: true,
|
|
1237
|
+
description: 'Tag icon or emoji',
|
|
1238
|
+
},
|
|
1239
|
+
// Organization
|
|
1240
|
+
category: {
|
|
1241
|
+
type: 'string',
|
|
1242
|
+
optional: true,
|
|
1243
|
+
description: 'Tag category for grouping',
|
|
1244
|
+
},
|
|
1245
|
+
group: {
|
|
1246
|
+
type: 'string',
|
|
1247
|
+
optional: true,
|
|
1248
|
+
description: 'Tag group',
|
|
1249
|
+
},
|
|
1250
|
+
// Metadata
|
|
1251
|
+
type: {
|
|
1252
|
+
type: 'string',
|
|
1253
|
+
optional: true,
|
|
1254
|
+
description: 'Tag type: general, system, custom',
|
|
1255
|
+
examples: ['general', 'system', 'custom'],
|
|
1256
|
+
},
|
|
1257
|
+
visibility: {
|
|
1258
|
+
type: 'string',
|
|
1259
|
+
description: 'Visibility: public, private',
|
|
1260
|
+
examples: ['public', 'private'],
|
|
1261
|
+
},
|
|
1262
|
+
// Statistics
|
|
1263
|
+
usageCount: {
|
|
1264
|
+
type: 'number',
|
|
1265
|
+
optional: true,
|
|
1266
|
+
description: 'Number of items tagged with this',
|
|
1267
|
+
},
|
|
1268
|
+
},
|
|
1269
|
+
relationships: {
|
|
1270
|
+
parent: {
|
|
1271
|
+
type: 'Tag',
|
|
1272
|
+
required: false,
|
|
1273
|
+
description: 'Parent tag for hierarchical tags',
|
|
1274
|
+
},
|
|
1275
|
+
children: {
|
|
1276
|
+
type: 'Tag[]',
|
|
1277
|
+
description: 'Child tags',
|
|
1278
|
+
},
|
|
1279
|
+
synonyms: {
|
|
1280
|
+
type: 'Tag[]',
|
|
1281
|
+
description: 'Synonym tags',
|
|
1282
|
+
},
|
|
1283
|
+
relatedTags: {
|
|
1284
|
+
type: 'Tag[]',
|
|
1285
|
+
description: 'Related tags',
|
|
1286
|
+
},
|
|
1287
|
+
},
|
|
1288
|
+
actions: [
|
|
1289
|
+
'create',
|
|
1290
|
+
'edit',
|
|
1291
|
+
'delete',
|
|
1292
|
+
'merge',
|
|
1293
|
+
'split',
|
|
1294
|
+
'rename',
|
|
1295
|
+
'link',
|
|
1296
|
+
'unlink',
|
|
1297
|
+
],
|
|
1298
|
+
events: [
|
|
1299
|
+
'created',
|
|
1300
|
+
'edited',
|
|
1301
|
+
'deleted',
|
|
1302
|
+
'merged',
|
|
1303
|
+
'split',
|
|
1304
|
+
'renamed',
|
|
1305
|
+
'applied',
|
|
1306
|
+
'removed',
|
|
1307
|
+
],
|
|
1308
|
+
};
|
|
1309
|
+
/**
|
|
1310
|
+
* Category entity
|
|
1311
|
+
*
|
|
1312
|
+
* Represents a category for organizing content
|
|
1313
|
+
*/
|
|
1314
|
+
export const Category = {
|
|
1315
|
+
singular: 'category',
|
|
1316
|
+
plural: 'categories',
|
|
1317
|
+
description: 'A category for organizing related content',
|
|
1318
|
+
properties: {
|
|
1319
|
+
// Identity
|
|
1320
|
+
name: {
|
|
1321
|
+
type: 'string',
|
|
1322
|
+
description: 'Category name',
|
|
1323
|
+
},
|
|
1324
|
+
slug: {
|
|
1325
|
+
type: 'string',
|
|
1326
|
+
description: 'URL-friendly identifier',
|
|
1327
|
+
},
|
|
1328
|
+
description: {
|
|
1329
|
+
type: 'string',
|
|
1330
|
+
optional: true,
|
|
1331
|
+
description: 'Category description',
|
|
1332
|
+
},
|
|
1333
|
+
// Hierarchy
|
|
1334
|
+
path: {
|
|
1335
|
+
type: 'string',
|
|
1336
|
+
description: 'Full hierarchical path',
|
|
1337
|
+
},
|
|
1338
|
+
level: {
|
|
1339
|
+
type: 'number',
|
|
1340
|
+
description: 'Depth level in hierarchy',
|
|
1341
|
+
},
|
|
1342
|
+
order: {
|
|
1343
|
+
type: 'number',
|
|
1344
|
+
optional: true,
|
|
1345
|
+
description: 'Sort order',
|
|
1346
|
+
},
|
|
1347
|
+
// Appearance
|
|
1348
|
+
icon: {
|
|
1349
|
+
type: 'string',
|
|
1350
|
+
optional: true,
|
|
1351
|
+
description: 'Category icon or emoji',
|
|
1352
|
+
},
|
|
1353
|
+
color: {
|
|
1354
|
+
type: 'string',
|
|
1355
|
+
optional: true,
|
|
1356
|
+
description: 'Category color',
|
|
1357
|
+
},
|
|
1358
|
+
// Configuration
|
|
1359
|
+
visibility: {
|
|
1360
|
+
type: 'string',
|
|
1361
|
+
description: 'Visibility: public, private',
|
|
1362
|
+
examples: ['public', 'private'],
|
|
1363
|
+
},
|
|
1364
|
+
status: {
|
|
1365
|
+
type: 'string',
|
|
1366
|
+
description: 'Status: active, archived',
|
|
1367
|
+
examples: ['active', 'archived'],
|
|
1368
|
+
},
|
|
1369
|
+
// Statistics
|
|
1370
|
+
itemCount: {
|
|
1371
|
+
type: 'number',
|
|
1372
|
+
optional: true,
|
|
1373
|
+
description: 'Number of items in this category',
|
|
1374
|
+
},
|
|
1375
|
+
},
|
|
1376
|
+
relationships: {
|
|
1377
|
+
parent: {
|
|
1378
|
+
type: 'Category',
|
|
1379
|
+
required: false,
|
|
1380
|
+
description: 'Parent category',
|
|
1381
|
+
},
|
|
1382
|
+
children: {
|
|
1383
|
+
type: 'Category[]',
|
|
1384
|
+
description: 'Child categories',
|
|
1385
|
+
},
|
|
1386
|
+
},
|
|
1387
|
+
actions: [
|
|
1388
|
+
'create',
|
|
1389
|
+
'edit',
|
|
1390
|
+
'delete',
|
|
1391
|
+
'move',
|
|
1392
|
+
'merge',
|
|
1393
|
+
'archive',
|
|
1394
|
+
'restore',
|
|
1395
|
+
],
|
|
1396
|
+
events: [
|
|
1397
|
+
'created',
|
|
1398
|
+
'edited',
|
|
1399
|
+
'deleted',
|
|
1400
|
+
'moved',
|
|
1401
|
+
'merged',
|
|
1402
|
+
'archived',
|
|
1403
|
+
'restored',
|
|
1404
|
+
],
|
|
1405
|
+
};
|
|
1406
|
+
// =============================================================================
|
|
1407
|
+
// Export all entities as a schema
|
|
1408
|
+
// =============================================================================
|
|
1409
|
+
/**
|
|
1410
|
+
* All knowledge & wiki entity types
|
|
1411
|
+
*/
|
|
1412
|
+
export const KnowledgeEntities = {
|
|
1413
|
+
// Wiki
|
|
1414
|
+
WikiPage,
|
|
1415
|
+
WikiSpace,
|
|
1416
|
+
WikiRevision,
|
|
1417
|
+
// Knowledge Base
|
|
1418
|
+
Article,
|
|
1419
|
+
KnowledgeBase,
|
|
1420
|
+
// Glossary
|
|
1421
|
+
Glossary,
|
|
1422
|
+
GlossaryTerm,
|
|
1423
|
+
// Search
|
|
1424
|
+
SearchIndex,
|
|
1425
|
+
// Supporting
|
|
1426
|
+
Tag,
|
|
1427
|
+
Category,
|
|
1428
|
+
};
|
|
1429
|
+
/**
|
|
1430
|
+
* Entity categories for organization
|
|
1431
|
+
*/
|
|
1432
|
+
export const KnowledgeCategories = {
|
|
1433
|
+
wiki: ['WikiPage', 'WikiSpace', 'WikiRevision'],
|
|
1434
|
+
knowledgeBase: ['Article', 'KnowledgeBase'],
|
|
1435
|
+
glossary: ['Glossary', 'GlossaryTerm'],
|
|
1436
|
+
search: ['SearchIndex'],
|
|
1437
|
+
organization: ['Tag', 'Category'],
|
|
1438
|
+
};
|
|
1439
|
+
//# sourceMappingURL=knowledge.js.map
|