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,1103 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* E-Signature Entity Types (Nouns)
|
|
3
|
+
*
|
|
4
|
+
* Semantic type definitions for electronic signature workflows compatible with
|
|
5
|
+
* DocuSign, DocuSeal, and other e-signature platforms. 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
|
+
// SignatureDocument
|
|
14
|
+
// =============================================================================
|
|
15
|
+
/**
|
|
16
|
+
* SignatureDocument entity
|
|
17
|
+
*
|
|
18
|
+
* Represents a document requiring electronic signatures from one or more signers.
|
|
19
|
+
* Tracks the lifecycle from draft through completion or voiding.
|
|
20
|
+
*/
|
|
21
|
+
export const SignatureDocument = {
|
|
22
|
+
singular: 'signature document',
|
|
23
|
+
plural: 'signature documents',
|
|
24
|
+
description: 'A document requiring electronic signatures from one or more signers',
|
|
25
|
+
properties: {
|
|
26
|
+
// Identity
|
|
27
|
+
title: {
|
|
28
|
+
type: 'string',
|
|
29
|
+
description: 'Document title',
|
|
30
|
+
},
|
|
31
|
+
description: {
|
|
32
|
+
type: 'string',
|
|
33
|
+
optional: true,
|
|
34
|
+
description: 'Document description or purpose',
|
|
35
|
+
},
|
|
36
|
+
// Status
|
|
37
|
+
status: {
|
|
38
|
+
type: 'string',
|
|
39
|
+
description: 'Document status: draft, sent, pending, completed, declined, voided',
|
|
40
|
+
examples: ['draft', 'sent', 'pending', 'completed', 'declined', 'voided'],
|
|
41
|
+
},
|
|
42
|
+
// File information
|
|
43
|
+
fileUrl: {
|
|
44
|
+
type: 'url',
|
|
45
|
+
description: 'URL to the document file',
|
|
46
|
+
},
|
|
47
|
+
fileName: {
|
|
48
|
+
type: 'string',
|
|
49
|
+
description: 'Original file name',
|
|
50
|
+
},
|
|
51
|
+
fileType: {
|
|
52
|
+
type: 'string',
|
|
53
|
+
description: 'File MIME type',
|
|
54
|
+
examples: ['application/pdf', 'application/msword', 'image/png'],
|
|
55
|
+
},
|
|
56
|
+
fileSize: {
|
|
57
|
+
type: 'number',
|
|
58
|
+
description: 'File size in bytes',
|
|
59
|
+
},
|
|
60
|
+
// Dates
|
|
61
|
+
createdAt: {
|
|
62
|
+
type: 'datetime',
|
|
63
|
+
description: 'When the document was created',
|
|
64
|
+
},
|
|
65
|
+
sentAt: {
|
|
66
|
+
type: 'datetime',
|
|
67
|
+
optional: true,
|
|
68
|
+
description: 'When the document was sent to signers',
|
|
69
|
+
},
|
|
70
|
+
completedAt: {
|
|
71
|
+
type: 'datetime',
|
|
72
|
+
optional: true,
|
|
73
|
+
description: 'When all signatures were completed',
|
|
74
|
+
},
|
|
75
|
+
expiresAt: {
|
|
76
|
+
type: 'datetime',
|
|
77
|
+
optional: true,
|
|
78
|
+
description: 'When the signature request expires',
|
|
79
|
+
},
|
|
80
|
+
// Email communication
|
|
81
|
+
subject: {
|
|
82
|
+
type: 'string',
|
|
83
|
+
optional: true,
|
|
84
|
+
description: 'Email subject line for signature requests',
|
|
85
|
+
},
|
|
86
|
+
message: {
|
|
87
|
+
type: 'string',
|
|
88
|
+
optional: true,
|
|
89
|
+
description: 'Email message or instructions for signers',
|
|
90
|
+
},
|
|
91
|
+
// Settings
|
|
92
|
+
requireAllSigners: {
|
|
93
|
+
type: 'boolean',
|
|
94
|
+
optional: true,
|
|
95
|
+
description: 'Whether all signers must complete or just one',
|
|
96
|
+
},
|
|
97
|
+
allowDecline: {
|
|
98
|
+
type: 'boolean',
|
|
99
|
+
optional: true,
|
|
100
|
+
description: 'Whether signers can decline to sign',
|
|
101
|
+
},
|
|
102
|
+
allowReassign: {
|
|
103
|
+
type: 'boolean',
|
|
104
|
+
optional: true,
|
|
105
|
+
description: 'Whether signers can reassign to someone else',
|
|
106
|
+
},
|
|
107
|
+
enableReminders: {
|
|
108
|
+
type: 'boolean',
|
|
109
|
+
optional: true,
|
|
110
|
+
description: 'Whether to send automatic reminders',
|
|
111
|
+
},
|
|
112
|
+
reminderFrequency: {
|
|
113
|
+
type: 'number',
|
|
114
|
+
optional: true,
|
|
115
|
+
description: 'Reminder frequency in days',
|
|
116
|
+
},
|
|
117
|
+
// Security
|
|
118
|
+
requireAuthentication: {
|
|
119
|
+
type: 'boolean',
|
|
120
|
+
optional: true,
|
|
121
|
+
description: 'Whether signers must authenticate',
|
|
122
|
+
},
|
|
123
|
+
requireAccessCode: {
|
|
124
|
+
type: 'boolean',
|
|
125
|
+
optional: true,
|
|
126
|
+
description: 'Whether an access code is required',
|
|
127
|
+
},
|
|
128
|
+
accessCode: {
|
|
129
|
+
type: 'string',
|
|
130
|
+
optional: true,
|
|
131
|
+
description: 'Access code for viewing/signing',
|
|
132
|
+
},
|
|
133
|
+
// Completion
|
|
134
|
+
completedFileUrl: {
|
|
135
|
+
type: 'url',
|
|
136
|
+
optional: true,
|
|
137
|
+
description: 'URL to the signed/completed document',
|
|
138
|
+
},
|
|
139
|
+
certificateUrl: {
|
|
140
|
+
type: 'url',
|
|
141
|
+
optional: true,
|
|
142
|
+
description: 'URL to completion certificate',
|
|
143
|
+
},
|
|
144
|
+
// Metadata
|
|
145
|
+
tags: {
|
|
146
|
+
type: 'string',
|
|
147
|
+
array: true,
|
|
148
|
+
optional: true,
|
|
149
|
+
description: 'Tags for categorizing the document',
|
|
150
|
+
},
|
|
151
|
+
folder: {
|
|
152
|
+
type: 'string',
|
|
153
|
+
optional: true,
|
|
154
|
+
description: 'Folder or workspace the document belongs to',
|
|
155
|
+
},
|
|
156
|
+
metadata: {
|
|
157
|
+
type: 'json',
|
|
158
|
+
optional: true,
|
|
159
|
+
description: 'Additional document metadata',
|
|
160
|
+
},
|
|
161
|
+
},
|
|
162
|
+
relationships: {
|
|
163
|
+
requests: {
|
|
164
|
+
type: 'SignatureRequest[]',
|
|
165
|
+
backref: 'document',
|
|
166
|
+
description: 'Signature requests for this document',
|
|
167
|
+
},
|
|
168
|
+
fields: {
|
|
169
|
+
type: 'SignatureField[]',
|
|
170
|
+
backref: 'document',
|
|
171
|
+
description: 'Signature and input fields in the document',
|
|
172
|
+
},
|
|
173
|
+
auditTrail: {
|
|
174
|
+
type: 'AuditTrail[]',
|
|
175
|
+
backref: 'document',
|
|
176
|
+
description: 'Audit log entries for this document',
|
|
177
|
+
},
|
|
178
|
+
owner: {
|
|
179
|
+
type: 'Contact',
|
|
180
|
+
description: 'Owner who created the document',
|
|
181
|
+
},
|
|
182
|
+
template: {
|
|
183
|
+
type: 'SignatureTemplate',
|
|
184
|
+
required: false,
|
|
185
|
+
description: 'Template used to create this document',
|
|
186
|
+
},
|
|
187
|
+
},
|
|
188
|
+
actions: [
|
|
189
|
+
'create',
|
|
190
|
+
'edit',
|
|
191
|
+
'delete',
|
|
192
|
+
'send',
|
|
193
|
+
'resend',
|
|
194
|
+
'void',
|
|
195
|
+
'download',
|
|
196
|
+
'downloadCertificate',
|
|
197
|
+
'addSigner',
|
|
198
|
+
'removeSigner',
|
|
199
|
+
'addField',
|
|
200
|
+
'removeField',
|
|
201
|
+
'duplicate',
|
|
202
|
+
'preview',
|
|
203
|
+
'remind',
|
|
204
|
+
'archive',
|
|
205
|
+
],
|
|
206
|
+
events: [
|
|
207
|
+
'created',
|
|
208
|
+
'edited',
|
|
209
|
+
'deleted',
|
|
210
|
+
'sent',
|
|
211
|
+
'resent',
|
|
212
|
+
'voided',
|
|
213
|
+
'downloaded',
|
|
214
|
+
'signerAdded',
|
|
215
|
+
'signerRemoved',
|
|
216
|
+
'fieldAdded',
|
|
217
|
+
'fieldRemoved',
|
|
218
|
+
'viewed',
|
|
219
|
+
'completed',
|
|
220
|
+
'declined',
|
|
221
|
+
'expired',
|
|
222
|
+
'reminderSent',
|
|
223
|
+
'archived',
|
|
224
|
+
],
|
|
225
|
+
};
|
|
226
|
+
// =============================================================================
|
|
227
|
+
// SignatureRequest
|
|
228
|
+
// =============================================================================
|
|
229
|
+
/**
|
|
230
|
+
* SignatureRequest entity
|
|
231
|
+
*
|
|
232
|
+
* Represents a request for a specific person to sign a document.
|
|
233
|
+
* Tracks individual signer status and actions.
|
|
234
|
+
*/
|
|
235
|
+
export const SignatureRequest = {
|
|
236
|
+
singular: 'signature request',
|
|
237
|
+
plural: 'signature requests',
|
|
238
|
+
description: 'A request for a specific person to sign a document',
|
|
239
|
+
properties: {
|
|
240
|
+
// Status
|
|
241
|
+
status: {
|
|
242
|
+
type: 'string',
|
|
243
|
+
description: 'Request status: pending, viewed, signed, declined',
|
|
244
|
+
examples: ['pending', 'viewed', 'signed', 'declined'],
|
|
245
|
+
},
|
|
246
|
+
// Signing order
|
|
247
|
+
order: {
|
|
248
|
+
type: 'number',
|
|
249
|
+
optional: true,
|
|
250
|
+
description: 'Signing order (1-based, null for parallel signing)',
|
|
251
|
+
},
|
|
252
|
+
// Dates
|
|
253
|
+
sentAt: {
|
|
254
|
+
type: 'datetime',
|
|
255
|
+
description: 'When the request was sent',
|
|
256
|
+
},
|
|
257
|
+
viewedAt: {
|
|
258
|
+
type: 'datetime',
|
|
259
|
+
optional: true,
|
|
260
|
+
description: 'When the signer first viewed the document',
|
|
261
|
+
},
|
|
262
|
+
signedAt: {
|
|
263
|
+
type: 'datetime',
|
|
264
|
+
optional: true,
|
|
265
|
+
description: 'When the signer completed signing',
|
|
266
|
+
},
|
|
267
|
+
declinedAt: {
|
|
268
|
+
type: 'datetime',
|
|
269
|
+
optional: true,
|
|
270
|
+
description: 'When the signer declined',
|
|
271
|
+
},
|
|
272
|
+
// Communication
|
|
273
|
+
message: {
|
|
274
|
+
type: 'string',
|
|
275
|
+
optional: true,
|
|
276
|
+
description: 'Custom message for this specific signer',
|
|
277
|
+
},
|
|
278
|
+
// Decline
|
|
279
|
+
declineReason: {
|
|
280
|
+
type: 'string',
|
|
281
|
+
optional: true,
|
|
282
|
+
description: 'Reason provided for declining',
|
|
283
|
+
},
|
|
284
|
+
// Reassignment
|
|
285
|
+
reassignedTo: {
|
|
286
|
+
type: 'string',
|
|
287
|
+
optional: true,
|
|
288
|
+
description: 'Email address if reassigned to another person',
|
|
289
|
+
},
|
|
290
|
+
reassignedAt: {
|
|
291
|
+
type: 'datetime',
|
|
292
|
+
optional: true,
|
|
293
|
+
description: 'When the request was reassigned',
|
|
294
|
+
},
|
|
295
|
+
reassignReason: {
|
|
296
|
+
type: 'string',
|
|
297
|
+
optional: true,
|
|
298
|
+
description: 'Reason for reassignment',
|
|
299
|
+
},
|
|
300
|
+
// Reminders
|
|
301
|
+
reminderCount: {
|
|
302
|
+
type: 'number',
|
|
303
|
+
optional: true,
|
|
304
|
+
description: 'Number of reminders sent',
|
|
305
|
+
},
|
|
306
|
+
lastReminderAt: {
|
|
307
|
+
type: 'datetime',
|
|
308
|
+
optional: true,
|
|
309
|
+
description: 'When the last reminder was sent',
|
|
310
|
+
},
|
|
311
|
+
// Access
|
|
312
|
+
accessCode: {
|
|
313
|
+
type: 'string',
|
|
314
|
+
optional: true,
|
|
315
|
+
description: 'Access code for this specific signer',
|
|
316
|
+
},
|
|
317
|
+
viewToken: {
|
|
318
|
+
type: 'string',
|
|
319
|
+
optional: true,
|
|
320
|
+
description: 'Unique token for viewing the document',
|
|
321
|
+
},
|
|
322
|
+
// Metadata
|
|
323
|
+
metadata: {
|
|
324
|
+
type: 'json',
|
|
325
|
+
optional: true,
|
|
326
|
+
description: 'Additional request metadata',
|
|
327
|
+
},
|
|
328
|
+
},
|
|
329
|
+
relationships: {
|
|
330
|
+
document: {
|
|
331
|
+
type: 'SignatureDocument',
|
|
332
|
+
backref: 'requests',
|
|
333
|
+
description: 'Document being signed',
|
|
334
|
+
},
|
|
335
|
+
signer: {
|
|
336
|
+
type: 'Signer',
|
|
337
|
+
description: 'Person who needs to sign',
|
|
338
|
+
},
|
|
339
|
+
signatures: {
|
|
340
|
+
type: 'Signature[]',
|
|
341
|
+
backref: 'request',
|
|
342
|
+
description: 'Signatures created by this signer',
|
|
343
|
+
},
|
|
344
|
+
},
|
|
345
|
+
actions: [
|
|
346
|
+
'send',
|
|
347
|
+
'resend',
|
|
348
|
+
'remind',
|
|
349
|
+
'view',
|
|
350
|
+
'sign',
|
|
351
|
+
'decline',
|
|
352
|
+
'reassign',
|
|
353
|
+
'cancel',
|
|
354
|
+
'withdraw',
|
|
355
|
+
],
|
|
356
|
+
events: [
|
|
357
|
+
'sent',
|
|
358
|
+
'resent',
|
|
359
|
+
'reminded',
|
|
360
|
+
'viewed',
|
|
361
|
+
'signed',
|
|
362
|
+
'declined',
|
|
363
|
+
'reassigned',
|
|
364
|
+
'cancelled',
|
|
365
|
+
'withdrawn',
|
|
366
|
+
],
|
|
367
|
+
};
|
|
368
|
+
// =============================================================================
|
|
369
|
+
// Signer
|
|
370
|
+
// =============================================================================
|
|
371
|
+
/**
|
|
372
|
+
* Signer entity
|
|
373
|
+
*
|
|
374
|
+
* Represents a person who needs to sign, view, or approve a document.
|
|
375
|
+
* Can have different roles and authentication requirements.
|
|
376
|
+
*/
|
|
377
|
+
export const Signer = {
|
|
378
|
+
singular: 'signer',
|
|
379
|
+
plural: 'signers',
|
|
380
|
+
description: 'A person who needs to sign, view, or approve a document',
|
|
381
|
+
properties: {
|
|
382
|
+
// Identity
|
|
383
|
+
name: {
|
|
384
|
+
type: 'string',
|
|
385
|
+
description: 'Full name of the signer',
|
|
386
|
+
},
|
|
387
|
+
email: {
|
|
388
|
+
type: 'string',
|
|
389
|
+
description: 'Email address',
|
|
390
|
+
},
|
|
391
|
+
phone: {
|
|
392
|
+
type: 'string',
|
|
393
|
+
optional: true,
|
|
394
|
+
description: 'Phone number for SMS authentication',
|
|
395
|
+
},
|
|
396
|
+
// Role
|
|
397
|
+
role: {
|
|
398
|
+
type: 'string',
|
|
399
|
+
description: 'Signer role: signer, viewer, approver, editor',
|
|
400
|
+
examples: ['signer', 'viewer', 'approver', 'editor'],
|
|
401
|
+
},
|
|
402
|
+
roleName: {
|
|
403
|
+
type: 'string',
|
|
404
|
+
optional: true,
|
|
405
|
+
description: 'Custom role name (e.g., "Buyer", "Seller", "Witness")',
|
|
406
|
+
},
|
|
407
|
+
// Authentication
|
|
408
|
+
authMethod: {
|
|
409
|
+
type: 'string',
|
|
410
|
+
description: 'Authentication method: email, sms, none, oauth',
|
|
411
|
+
examples: ['email', 'sms', 'none', 'oauth'],
|
|
412
|
+
},
|
|
413
|
+
requireIdVerification: {
|
|
414
|
+
type: 'boolean',
|
|
415
|
+
optional: true,
|
|
416
|
+
description: 'Whether ID verification is required',
|
|
417
|
+
},
|
|
418
|
+
// Status
|
|
419
|
+
status: {
|
|
420
|
+
type: 'string',
|
|
421
|
+
description: 'Signer status: pending, active, completed, declined',
|
|
422
|
+
examples: ['pending', 'active', 'completed', 'declined'],
|
|
423
|
+
},
|
|
424
|
+
// Notifications
|
|
425
|
+
receiveEmailNotifications: {
|
|
426
|
+
type: 'boolean',
|
|
427
|
+
optional: true,
|
|
428
|
+
description: 'Whether to receive email notifications',
|
|
429
|
+
},
|
|
430
|
+
receiveSmsNotifications: {
|
|
431
|
+
type: 'boolean',
|
|
432
|
+
optional: true,
|
|
433
|
+
description: 'Whether to receive SMS notifications',
|
|
434
|
+
},
|
|
435
|
+
// Company
|
|
436
|
+
company: {
|
|
437
|
+
type: 'string',
|
|
438
|
+
optional: true,
|
|
439
|
+
description: 'Company or organization name',
|
|
440
|
+
},
|
|
441
|
+
title: {
|
|
442
|
+
type: 'string',
|
|
443
|
+
optional: true,
|
|
444
|
+
description: 'Job title',
|
|
445
|
+
},
|
|
446
|
+
// Metadata
|
|
447
|
+
metadata: {
|
|
448
|
+
type: 'json',
|
|
449
|
+
optional: true,
|
|
450
|
+
description: 'Additional signer metadata',
|
|
451
|
+
},
|
|
452
|
+
},
|
|
453
|
+
relationships: {
|
|
454
|
+
requests: {
|
|
455
|
+
type: 'SignatureRequest[]',
|
|
456
|
+
backref: 'signer',
|
|
457
|
+
description: 'Signature requests for this signer',
|
|
458
|
+
},
|
|
459
|
+
contact: {
|
|
460
|
+
type: 'Contact',
|
|
461
|
+
required: false,
|
|
462
|
+
description: 'Associated contact record',
|
|
463
|
+
},
|
|
464
|
+
},
|
|
465
|
+
actions: [
|
|
466
|
+
'create',
|
|
467
|
+
'edit',
|
|
468
|
+
'delete',
|
|
469
|
+
'sendInvitation',
|
|
470
|
+
'resendInvitation',
|
|
471
|
+
'verify',
|
|
472
|
+
'updateRole',
|
|
473
|
+
'updateAuthMethod',
|
|
474
|
+
],
|
|
475
|
+
events: [
|
|
476
|
+
'created',
|
|
477
|
+
'edited',
|
|
478
|
+
'deleted',
|
|
479
|
+
'invitationSent',
|
|
480
|
+
'invitationResent',
|
|
481
|
+
'verified',
|
|
482
|
+
'roleUpdated',
|
|
483
|
+
'authMethodUpdated',
|
|
484
|
+
],
|
|
485
|
+
};
|
|
486
|
+
// =============================================================================
|
|
487
|
+
// SignatureField
|
|
488
|
+
// =============================================================================
|
|
489
|
+
/**
|
|
490
|
+
* SignatureField entity
|
|
491
|
+
*
|
|
492
|
+
* Represents a field in the document where a signer must provide input.
|
|
493
|
+
* Includes signatures, initials, dates, text, checkboxes, and more.
|
|
494
|
+
*/
|
|
495
|
+
export const SignatureField = {
|
|
496
|
+
singular: 'signature field',
|
|
497
|
+
plural: 'signature fields',
|
|
498
|
+
description: 'A field in the document where a signer must provide input',
|
|
499
|
+
properties: {
|
|
500
|
+
// Type
|
|
501
|
+
type: {
|
|
502
|
+
type: 'string',
|
|
503
|
+
description: 'Field type: signature, initials, date, text, checkbox, radio, dropdown, image',
|
|
504
|
+
examples: [
|
|
505
|
+
'signature',
|
|
506
|
+
'initials',
|
|
507
|
+
'date',
|
|
508
|
+
'text',
|
|
509
|
+
'textarea',
|
|
510
|
+
'checkbox',
|
|
511
|
+
'radio',
|
|
512
|
+
'dropdown',
|
|
513
|
+
'image',
|
|
514
|
+
'email',
|
|
515
|
+
'phone',
|
|
516
|
+
'number',
|
|
517
|
+
],
|
|
518
|
+
},
|
|
519
|
+
// Position
|
|
520
|
+
page: {
|
|
521
|
+
type: 'number',
|
|
522
|
+
description: 'Page number (0-based)',
|
|
523
|
+
},
|
|
524
|
+
x: {
|
|
525
|
+
type: 'number',
|
|
526
|
+
description: 'X coordinate on the page',
|
|
527
|
+
},
|
|
528
|
+
y: {
|
|
529
|
+
type: 'number',
|
|
530
|
+
description: 'Y coordinate on the page',
|
|
531
|
+
},
|
|
532
|
+
width: {
|
|
533
|
+
type: 'number',
|
|
534
|
+
description: 'Field width',
|
|
535
|
+
},
|
|
536
|
+
height: {
|
|
537
|
+
type: 'number',
|
|
538
|
+
description: 'Field height',
|
|
539
|
+
},
|
|
540
|
+
// Validation
|
|
541
|
+
required: {
|
|
542
|
+
type: 'boolean',
|
|
543
|
+
optional: true,
|
|
544
|
+
description: 'Whether the field must be filled',
|
|
545
|
+
},
|
|
546
|
+
// Labels and help
|
|
547
|
+
label: {
|
|
548
|
+
type: 'string',
|
|
549
|
+
optional: true,
|
|
550
|
+
description: 'Field label',
|
|
551
|
+
},
|
|
552
|
+
placeholder: {
|
|
553
|
+
type: 'string',
|
|
554
|
+
optional: true,
|
|
555
|
+
description: 'Placeholder text',
|
|
556
|
+
},
|
|
557
|
+
tooltip: {
|
|
558
|
+
type: 'string',
|
|
559
|
+
optional: true,
|
|
560
|
+
description: 'Tooltip or help text',
|
|
561
|
+
},
|
|
562
|
+
// Options (for dropdown, radio)
|
|
563
|
+
options: {
|
|
564
|
+
type: 'string',
|
|
565
|
+
array: true,
|
|
566
|
+
optional: true,
|
|
567
|
+
description: 'Options for dropdown or radio fields',
|
|
568
|
+
},
|
|
569
|
+
// Default value
|
|
570
|
+
defaultValue: {
|
|
571
|
+
type: 'string',
|
|
572
|
+
optional: true,
|
|
573
|
+
description: 'Default or pre-filled value',
|
|
574
|
+
},
|
|
575
|
+
// Validation rules
|
|
576
|
+
validation: {
|
|
577
|
+
type: 'json',
|
|
578
|
+
optional: true,
|
|
579
|
+
description: 'Validation rules (regex, min/max length, format)',
|
|
580
|
+
},
|
|
581
|
+
minLength: {
|
|
582
|
+
type: 'number',
|
|
583
|
+
optional: true,
|
|
584
|
+
description: 'Minimum text length',
|
|
585
|
+
},
|
|
586
|
+
maxLength: {
|
|
587
|
+
type: 'number',
|
|
588
|
+
optional: true,
|
|
589
|
+
description: 'Maximum text length',
|
|
590
|
+
},
|
|
591
|
+
// Conditional logic
|
|
592
|
+
conditionalLogic: {
|
|
593
|
+
type: 'json',
|
|
594
|
+
optional: true,
|
|
595
|
+
description: 'Conditions for showing/hiding this field',
|
|
596
|
+
},
|
|
597
|
+
// Read-only
|
|
598
|
+
readOnly: {
|
|
599
|
+
type: 'boolean',
|
|
600
|
+
optional: true,
|
|
601
|
+
description: 'Whether the field is read-only',
|
|
602
|
+
},
|
|
603
|
+
// Group
|
|
604
|
+
group: {
|
|
605
|
+
type: 'string',
|
|
606
|
+
optional: true,
|
|
607
|
+
description: 'Field group for related fields',
|
|
608
|
+
},
|
|
609
|
+
// Value
|
|
610
|
+
value: {
|
|
611
|
+
type: 'string',
|
|
612
|
+
optional: true,
|
|
613
|
+
description: 'Current field value',
|
|
614
|
+
},
|
|
615
|
+
completedAt: {
|
|
616
|
+
type: 'datetime',
|
|
617
|
+
optional: true,
|
|
618
|
+
description: 'When the field was completed',
|
|
619
|
+
},
|
|
620
|
+
// Metadata
|
|
621
|
+
metadata: {
|
|
622
|
+
type: 'json',
|
|
623
|
+
optional: true,
|
|
624
|
+
description: 'Additional field metadata',
|
|
625
|
+
},
|
|
626
|
+
},
|
|
627
|
+
relationships: {
|
|
628
|
+
document: {
|
|
629
|
+
type: 'SignatureDocument',
|
|
630
|
+
backref: 'fields',
|
|
631
|
+
description: 'Document this field belongs to',
|
|
632
|
+
},
|
|
633
|
+
signer: {
|
|
634
|
+
type: 'Signer',
|
|
635
|
+
required: false,
|
|
636
|
+
description: 'Signer assigned to this field (null for shared fields)',
|
|
637
|
+
},
|
|
638
|
+
signature: {
|
|
639
|
+
type: 'Signature',
|
|
640
|
+
required: false,
|
|
641
|
+
backref: 'field',
|
|
642
|
+
description: 'Signature data for this field',
|
|
643
|
+
},
|
|
644
|
+
},
|
|
645
|
+
actions: [
|
|
646
|
+
'create',
|
|
647
|
+
'edit',
|
|
648
|
+
'delete',
|
|
649
|
+
'move',
|
|
650
|
+
'resize',
|
|
651
|
+
'duplicate',
|
|
652
|
+
'setValue',
|
|
653
|
+
'clearValue',
|
|
654
|
+
'validate',
|
|
655
|
+
],
|
|
656
|
+
events: [
|
|
657
|
+
'created',
|
|
658
|
+
'edited',
|
|
659
|
+
'deleted',
|
|
660
|
+
'moved',
|
|
661
|
+
'resized',
|
|
662
|
+
'duplicated',
|
|
663
|
+
'valueSet',
|
|
664
|
+
'valueCleared',
|
|
665
|
+
'completed',
|
|
666
|
+
'validated',
|
|
667
|
+
],
|
|
668
|
+
};
|
|
669
|
+
// =============================================================================
|
|
670
|
+
// Signature
|
|
671
|
+
// =============================================================================
|
|
672
|
+
/**
|
|
673
|
+
* Signature entity
|
|
674
|
+
*
|
|
675
|
+
* Represents an actual signature or input provided by a signer.
|
|
676
|
+
* Captures the signature image/data and metadata for audit trail.
|
|
677
|
+
*/
|
|
678
|
+
export const Signature = {
|
|
679
|
+
singular: 'signature',
|
|
680
|
+
plural: 'signatures',
|
|
681
|
+
description: 'An actual signature or input provided by a signer',
|
|
682
|
+
properties: {
|
|
683
|
+
// Type
|
|
684
|
+
type: {
|
|
685
|
+
type: 'string',
|
|
686
|
+
description: 'Signature type: drawn, typed, uploaded, stamp, mobile',
|
|
687
|
+
examples: ['drawn', 'typed', 'uploaded', 'stamp', 'mobile'],
|
|
688
|
+
},
|
|
689
|
+
// Data
|
|
690
|
+
imageUrl: {
|
|
691
|
+
type: 'url',
|
|
692
|
+
optional: true,
|
|
693
|
+
description: 'URL to the signature image',
|
|
694
|
+
},
|
|
695
|
+
imageData: {
|
|
696
|
+
type: 'string',
|
|
697
|
+
optional: true,
|
|
698
|
+
description: 'Base64-encoded signature image data',
|
|
699
|
+
},
|
|
700
|
+
textValue: {
|
|
701
|
+
type: 'string',
|
|
702
|
+
optional: true,
|
|
703
|
+
description: 'Text value for typed signatures or text fields',
|
|
704
|
+
},
|
|
705
|
+
// Timestamp
|
|
706
|
+
signedAt: {
|
|
707
|
+
type: 'datetime',
|
|
708
|
+
description: 'When the signature was created',
|
|
709
|
+
},
|
|
710
|
+
// Security and audit
|
|
711
|
+
ipAddress: {
|
|
712
|
+
type: 'string',
|
|
713
|
+
optional: true,
|
|
714
|
+
description: 'IP address where signature was created',
|
|
715
|
+
},
|
|
716
|
+
userAgent: {
|
|
717
|
+
type: 'string',
|
|
718
|
+
optional: true,
|
|
719
|
+
description: 'Browser user agent',
|
|
720
|
+
},
|
|
721
|
+
device: {
|
|
722
|
+
type: 'string',
|
|
723
|
+
optional: true,
|
|
724
|
+
description: 'Device type: desktop, mobile, tablet',
|
|
725
|
+
examples: ['desktop', 'mobile', 'tablet'],
|
|
726
|
+
},
|
|
727
|
+
location: {
|
|
728
|
+
type: 'json',
|
|
729
|
+
optional: true,
|
|
730
|
+
description: 'Geographic location data',
|
|
731
|
+
},
|
|
732
|
+
// Biometric data (for advanced security)
|
|
733
|
+
biometricData: {
|
|
734
|
+
type: 'json',
|
|
735
|
+
optional: true,
|
|
736
|
+
description: 'Biometric signature data (pressure, speed, etc.)',
|
|
737
|
+
},
|
|
738
|
+
// Font (for typed signatures)
|
|
739
|
+
fontFamily: {
|
|
740
|
+
type: 'string',
|
|
741
|
+
optional: true,
|
|
742
|
+
description: 'Font family for typed signatures',
|
|
743
|
+
},
|
|
744
|
+
fontSize: {
|
|
745
|
+
type: 'number',
|
|
746
|
+
optional: true,
|
|
747
|
+
description: 'Font size for typed signatures',
|
|
748
|
+
},
|
|
749
|
+
// Validation
|
|
750
|
+
validated: {
|
|
751
|
+
type: 'boolean',
|
|
752
|
+
optional: true,
|
|
753
|
+
description: 'Whether the signature has been validated',
|
|
754
|
+
},
|
|
755
|
+
validatedAt: {
|
|
756
|
+
type: 'datetime',
|
|
757
|
+
optional: true,
|
|
758
|
+
description: 'When the signature was validated',
|
|
759
|
+
},
|
|
760
|
+
// Metadata
|
|
761
|
+
metadata: {
|
|
762
|
+
type: 'json',
|
|
763
|
+
optional: true,
|
|
764
|
+
description: 'Additional signature metadata',
|
|
765
|
+
},
|
|
766
|
+
},
|
|
767
|
+
relationships: {
|
|
768
|
+
field: {
|
|
769
|
+
type: 'SignatureField',
|
|
770
|
+
backref: 'signature',
|
|
771
|
+
description: 'Field this signature belongs to',
|
|
772
|
+
},
|
|
773
|
+
signer: {
|
|
774
|
+
type: 'Signer',
|
|
775
|
+
description: 'Person who created the signature',
|
|
776
|
+
},
|
|
777
|
+
request: {
|
|
778
|
+
type: 'SignatureRequest',
|
|
779
|
+
backref: 'signatures',
|
|
780
|
+
description: 'Signature request this belongs to',
|
|
781
|
+
},
|
|
782
|
+
},
|
|
783
|
+
actions: [
|
|
784
|
+
'create',
|
|
785
|
+
'validate',
|
|
786
|
+
'verify',
|
|
787
|
+
'export',
|
|
788
|
+
'delete',
|
|
789
|
+
],
|
|
790
|
+
events: [
|
|
791
|
+
'created',
|
|
792
|
+
'validated',
|
|
793
|
+
'verified',
|
|
794
|
+
'exported',
|
|
795
|
+
'deleted',
|
|
796
|
+
],
|
|
797
|
+
};
|
|
798
|
+
// =============================================================================
|
|
799
|
+
// SignatureTemplate
|
|
800
|
+
// =============================================================================
|
|
801
|
+
/**
|
|
802
|
+
* SignatureTemplate entity
|
|
803
|
+
*
|
|
804
|
+
* Represents a reusable template for signature documents.
|
|
805
|
+
* Defines document structure, fields, and signer roles.
|
|
806
|
+
*/
|
|
807
|
+
export const SignatureTemplate = {
|
|
808
|
+
singular: 'signature template',
|
|
809
|
+
plural: 'signature templates',
|
|
810
|
+
description: 'A reusable template for signature documents',
|
|
811
|
+
properties: {
|
|
812
|
+
// Identity
|
|
813
|
+
name: {
|
|
814
|
+
type: 'string',
|
|
815
|
+
description: 'Template name',
|
|
816
|
+
},
|
|
817
|
+
description: {
|
|
818
|
+
type: 'string',
|
|
819
|
+
optional: true,
|
|
820
|
+
description: 'Template description',
|
|
821
|
+
},
|
|
822
|
+
// Document
|
|
823
|
+
documentUrl: {
|
|
824
|
+
type: 'url',
|
|
825
|
+
optional: true,
|
|
826
|
+
description: 'URL to the template document',
|
|
827
|
+
},
|
|
828
|
+
documentFileName: {
|
|
829
|
+
type: 'string',
|
|
830
|
+
optional: true,
|
|
831
|
+
description: 'Template document file name',
|
|
832
|
+
},
|
|
833
|
+
// Fields configuration
|
|
834
|
+
fields: {
|
|
835
|
+
type: 'json',
|
|
836
|
+
description: 'Field definitions with positions and properties',
|
|
837
|
+
},
|
|
838
|
+
// Roles
|
|
839
|
+
roles: {
|
|
840
|
+
type: 'json',
|
|
841
|
+
description: 'Signer role definitions',
|
|
842
|
+
},
|
|
843
|
+
// Settings
|
|
844
|
+
settings: {
|
|
845
|
+
type: 'json',
|
|
846
|
+
optional: true,
|
|
847
|
+
description: 'Default template settings (reminders, expiration, etc.)',
|
|
848
|
+
},
|
|
849
|
+
// Usage
|
|
850
|
+
useCount: {
|
|
851
|
+
type: 'number',
|
|
852
|
+
optional: true,
|
|
853
|
+
description: 'Number of times template has been used',
|
|
854
|
+
},
|
|
855
|
+
lastUsedAt: {
|
|
856
|
+
type: 'datetime',
|
|
857
|
+
optional: true,
|
|
858
|
+
description: 'When the template was last used',
|
|
859
|
+
},
|
|
860
|
+
// Organization
|
|
861
|
+
category: {
|
|
862
|
+
type: 'string',
|
|
863
|
+
optional: true,
|
|
864
|
+
description: 'Template category',
|
|
865
|
+
},
|
|
866
|
+
tags: {
|
|
867
|
+
type: 'string',
|
|
868
|
+
array: true,
|
|
869
|
+
optional: true,
|
|
870
|
+
description: 'Tags for categorizing the template',
|
|
871
|
+
},
|
|
872
|
+
folder: {
|
|
873
|
+
type: 'string',
|
|
874
|
+
optional: true,
|
|
875
|
+
description: 'Folder or workspace',
|
|
876
|
+
},
|
|
877
|
+
// Sharing
|
|
878
|
+
shared: {
|
|
879
|
+
type: 'boolean',
|
|
880
|
+
optional: true,
|
|
881
|
+
description: 'Whether template is shared with organization',
|
|
882
|
+
},
|
|
883
|
+
public: {
|
|
884
|
+
type: 'boolean',
|
|
885
|
+
optional: true,
|
|
886
|
+
description: 'Whether template is publicly available',
|
|
887
|
+
},
|
|
888
|
+
// Version
|
|
889
|
+
version: {
|
|
890
|
+
type: 'number',
|
|
891
|
+
optional: true,
|
|
892
|
+
description: 'Template version number',
|
|
893
|
+
},
|
|
894
|
+
versionNotes: {
|
|
895
|
+
type: 'string',
|
|
896
|
+
optional: true,
|
|
897
|
+
description: 'Notes about this version',
|
|
898
|
+
},
|
|
899
|
+
// Metadata
|
|
900
|
+
metadata: {
|
|
901
|
+
type: 'json',
|
|
902
|
+
optional: true,
|
|
903
|
+
description: 'Additional template metadata',
|
|
904
|
+
},
|
|
905
|
+
},
|
|
906
|
+
relationships: {
|
|
907
|
+
documents: {
|
|
908
|
+
type: 'SignatureDocument[]',
|
|
909
|
+
backref: 'template',
|
|
910
|
+
description: 'Documents created from this template',
|
|
911
|
+
},
|
|
912
|
+
owner: {
|
|
913
|
+
type: 'Contact',
|
|
914
|
+
description: 'Template owner',
|
|
915
|
+
},
|
|
916
|
+
collaborators: {
|
|
917
|
+
type: 'Contact[]',
|
|
918
|
+
description: 'People with edit access to the template',
|
|
919
|
+
},
|
|
920
|
+
},
|
|
921
|
+
actions: [
|
|
922
|
+
'create',
|
|
923
|
+
'edit',
|
|
924
|
+
'delete',
|
|
925
|
+
'duplicate',
|
|
926
|
+
'use',
|
|
927
|
+
'share',
|
|
928
|
+
'unshare',
|
|
929
|
+
'publish',
|
|
930
|
+
'unpublish',
|
|
931
|
+
'archive',
|
|
932
|
+
'export',
|
|
933
|
+
'import',
|
|
934
|
+
'createVersion',
|
|
935
|
+
],
|
|
936
|
+
events: [
|
|
937
|
+
'created',
|
|
938
|
+
'edited',
|
|
939
|
+
'deleted',
|
|
940
|
+
'duplicated',
|
|
941
|
+
'used',
|
|
942
|
+
'shared',
|
|
943
|
+
'unshared',
|
|
944
|
+
'published',
|
|
945
|
+
'unpublished',
|
|
946
|
+
'archived',
|
|
947
|
+
'exported',
|
|
948
|
+
'imported',
|
|
949
|
+
'versionCreated',
|
|
950
|
+
],
|
|
951
|
+
};
|
|
952
|
+
// =============================================================================
|
|
953
|
+
// AuditTrail
|
|
954
|
+
// =============================================================================
|
|
955
|
+
/**
|
|
956
|
+
* AuditTrail entity
|
|
957
|
+
*
|
|
958
|
+
* Represents an audit log entry for compliance and tracking.
|
|
959
|
+
* Records all actions taken on signature documents.
|
|
960
|
+
*/
|
|
961
|
+
export const AuditTrail = {
|
|
962
|
+
singular: 'audit trail entry',
|
|
963
|
+
plural: 'audit trail entries',
|
|
964
|
+
description: 'An audit log entry for tracking document actions and compliance',
|
|
965
|
+
properties: {
|
|
966
|
+
// Action
|
|
967
|
+
action: {
|
|
968
|
+
type: 'string',
|
|
969
|
+
description: 'Action performed',
|
|
970
|
+
examples: [
|
|
971
|
+
'created',
|
|
972
|
+
'sent',
|
|
973
|
+
'viewed',
|
|
974
|
+
'signed',
|
|
975
|
+
'declined',
|
|
976
|
+
'completed',
|
|
977
|
+
'voided',
|
|
978
|
+
'downloaded',
|
|
979
|
+
'email_sent',
|
|
980
|
+
'reminder_sent',
|
|
981
|
+
'signer_added',
|
|
982
|
+
'signer_removed',
|
|
983
|
+
'field_added',
|
|
984
|
+
'field_modified',
|
|
985
|
+
'reassigned',
|
|
986
|
+
],
|
|
987
|
+
},
|
|
988
|
+
// Actor
|
|
989
|
+
actor: {
|
|
990
|
+
type: 'string',
|
|
991
|
+
description: 'Who performed the action (name or email)',
|
|
992
|
+
},
|
|
993
|
+
actorRole: {
|
|
994
|
+
type: 'string',
|
|
995
|
+
optional: true,
|
|
996
|
+
description: 'Role of the actor: owner, signer, viewer, system',
|
|
997
|
+
examples: ['owner', 'signer', 'viewer', 'approver', 'system'],
|
|
998
|
+
},
|
|
999
|
+
// Timestamp
|
|
1000
|
+
timestamp: {
|
|
1001
|
+
type: 'datetime',
|
|
1002
|
+
description: 'When the action occurred',
|
|
1003
|
+
},
|
|
1004
|
+
// Location and device
|
|
1005
|
+
ipAddress: {
|
|
1006
|
+
type: 'string',
|
|
1007
|
+
optional: true,
|
|
1008
|
+
description: 'IP address where action was performed',
|
|
1009
|
+
},
|
|
1010
|
+
userAgent: {
|
|
1011
|
+
type: 'string',
|
|
1012
|
+
optional: true,
|
|
1013
|
+
description: 'Browser user agent',
|
|
1014
|
+
},
|
|
1015
|
+
device: {
|
|
1016
|
+
type: 'string',
|
|
1017
|
+
optional: true,
|
|
1018
|
+
description: 'Device type: desktop, mobile, tablet',
|
|
1019
|
+
examples: ['desktop', 'mobile', 'tablet'],
|
|
1020
|
+
},
|
|
1021
|
+
location: {
|
|
1022
|
+
type: 'json',
|
|
1023
|
+
optional: true,
|
|
1024
|
+
description: 'Geographic location data',
|
|
1025
|
+
},
|
|
1026
|
+
// Details
|
|
1027
|
+
details: {
|
|
1028
|
+
type: 'json',
|
|
1029
|
+
optional: true,
|
|
1030
|
+
description: 'Additional action details and metadata',
|
|
1031
|
+
},
|
|
1032
|
+
description: {
|
|
1033
|
+
type: 'string',
|
|
1034
|
+
optional: true,
|
|
1035
|
+
description: 'Human-readable action description',
|
|
1036
|
+
},
|
|
1037
|
+
// Related entities
|
|
1038
|
+
entityType: {
|
|
1039
|
+
type: 'string',
|
|
1040
|
+
optional: true,
|
|
1041
|
+
description: 'Type of entity affected: document, request, field, signature',
|
|
1042
|
+
examples: ['document', 'request', 'field', 'signature', 'template'],
|
|
1043
|
+
},
|
|
1044
|
+
entityId: {
|
|
1045
|
+
type: 'string',
|
|
1046
|
+
optional: true,
|
|
1047
|
+
description: 'ID of the affected entity',
|
|
1048
|
+
},
|
|
1049
|
+
// Security
|
|
1050
|
+
verified: {
|
|
1051
|
+
type: 'boolean',
|
|
1052
|
+
optional: true,
|
|
1053
|
+
description: 'Whether the action has been verified/validated',
|
|
1054
|
+
},
|
|
1055
|
+
hash: {
|
|
1056
|
+
type: 'string',
|
|
1057
|
+
optional: true,
|
|
1058
|
+
description: 'Cryptographic hash of the audit entry for tamper detection',
|
|
1059
|
+
},
|
|
1060
|
+
},
|
|
1061
|
+
relationships: {
|
|
1062
|
+
document: {
|
|
1063
|
+
type: 'SignatureDocument',
|
|
1064
|
+
backref: 'auditTrail',
|
|
1065
|
+
description: 'Document this audit entry relates to',
|
|
1066
|
+
},
|
|
1067
|
+
},
|
|
1068
|
+
actions: [
|
|
1069
|
+
'view',
|
|
1070
|
+
'export',
|
|
1071
|
+
'verify',
|
|
1072
|
+
],
|
|
1073
|
+
events: [
|
|
1074
|
+
'created',
|
|
1075
|
+
'exported',
|
|
1076
|
+
'verified',
|
|
1077
|
+
],
|
|
1078
|
+
};
|
|
1079
|
+
// =============================================================================
|
|
1080
|
+
// Export all entities as a schema
|
|
1081
|
+
// =============================================================================
|
|
1082
|
+
/**
|
|
1083
|
+
* All signature entity types
|
|
1084
|
+
*/
|
|
1085
|
+
export const SignatureEntities = {
|
|
1086
|
+
SignatureDocument,
|
|
1087
|
+
SignatureRequest,
|
|
1088
|
+
Signer,
|
|
1089
|
+
SignatureField,
|
|
1090
|
+
Signature,
|
|
1091
|
+
SignatureTemplate,
|
|
1092
|
+
AuditTrail,
|
|
1093
|
+
};
|
|
1094
|
+
/**
|
|
1095
|
+
* Entity categories for organization
|
|
1096
|
+
*/
|
|
1097
|
+
export const SignatureCategories = {
|
|
1098
|
+
documents: ['SignatureDocument', 'SignatureTemplate'],
|
|
1099
|
+
workflow: ['SignatureRequest', 'Signer'],
|
|
1100
|
+
fields: ['SignatureField', 'Signature'],
|
|
1101
|
+
compliance: ['AuditTrail'],
|
|
1102
|
+
};
|
|
1103
|
+
//# sourceMappingURL=signature.js.map
|