@aglyn/aglyn 1.0.0-beta.218 → 1.0.0-beta.220
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/package.json +12 -12
- package/src/lib/app-utils/actions.d.ts +26 -433
- package/src/lib/app-utils/actions.js +108 -633
- package/src/lib/app-utils/actions.js.map +1 -1
- package/src/lib/app-utils/activity-presenter.d.ts +3 -3
- package/src/lib/app-utils/activity-presenter.js +36 -52
- package/src/lib/app-utils/activity-presenter.js.map +1 -1
- package/src/lib/app-utils/analytics-events.d.ts +1 -1
- package/src/lib/app-utils/analytics-events.js.map +1 -1
- package/src/lib/app-utils/analytics-provider.d.ts +182 -0
- package/src/lib/app-utils/analytics-provider.js +133 -0
- package/src/lib/app-utils/analytics-provider.js.map +1 -0
- package/src/lib/app-utils/api-plugins.d.ts +46 -0
- package/src/lib/app-utils/api-plugins.js +19 -0
- package/src/lib/app-utils/api-plugins.js.map +1 -1
- package/src/lib/app-utils/{marketplace-overrides.d.ts → artifact-overrides.d.ts} +9 -6
- package/src/lib/app-utils/{marketplace-overrides.js → artifact-overrides.js} +10 -7
- package/src/lib/app-utils/artifact-overrides.js.map +1 -0
- package/src/lib/app-utils/{marketplace-provenance.d.ts → artifact-provenance.d.ts} +12 -10
- package/src/lib/app-utils/{marketplace-provenance.js → artifact-provenance.js} +9 -7
- package/src/lib/app-utils/artifact-provenance.js.map +1 -0
- package/src/lib/app-utils/binding-token-catalog.d.ts +5 -13
- package/src/lib/app-utils/binding-token-catalog.js +17 -41
- package/src/lib/app-utils/binding-token-catalog.js.map +1 -1
- package/src/lib/app-utils/brand-support-line.d.ts +36 -0
- package/src/lib/app-utils/brand-support-line.js +38 -0
- package/src/lib/app-utils/brand-support-line.js.map +1 -0
- package/src/lib/app-utils/collection-entries.d.ts +2 -2
- package/src/lib/app-utils/collection-entries.js.map +1 -1
- package/src/lib/app-utils/consent-group-change.d.ts +4 -0
- package/src/lib/app-utils/consent-group-change.js.map +1 -1
- package/src/lib/app-utils/consent-groups.d.ts +1 -1
- package/src/lib/app-utils/consent-groups.js.map +1 -1
- package/src/lib/app-utils/console-routes.d.ts +15 -42
- package/src/lib/app-utils/console-routes.js +10 -39
- package/src/lib/app-utils/console-routes.js.map +1 -1
- package/src/lib/app-utils/contacts.d.ts +24 -2
- package/src/lib/app-utils/contacts.js +21 -5
- package/src/lib/app-utils/contacts.js.map +1 -1
- package/src/lib/app-utils/container-membership.d.ts +93 -0
- package/src/lib/app-utils/container-membership.js +165 -0
- package/src/lib/app-utils/container-membership.js.map +1 -0
- package/src/lib/app-utils/crm-task-reminders.d.ts +23 -6
- package/src/lib/app-utils/crm-task-reminders.js +32 -11
- package/src/lib/app-utils/crm-task-reminders.js.map +1 -1
- package/src/lib/app-utils/crm.d.ts +24 -4
- package/src/lib/app-utils/crm.js +23 -0
- package/src/lib/app-utils/crm.js.map +1 -1
- package/src/lib/app-utils/cross-pool-desync.d.ts +39 -0
- package/src/lib/app-utils/cross-pool-desync.js +47 -0
- package/src/lib/app-utils/cross-pool-desync.js.map +1 -0
- package/src/lib/app-utils/csv-upload.d.ts +29 -0
- package/src/lib/app-utils/csv-upload.js +29 -0
- package/src/lib/app-utils/csv-upload.js.map +1 -0
- package/src/lib/app-utils/{dataset-csv.d.ts → csv.d.ts} +10 -43
- package/src/lib/app-utils/{dataset-csv.js → csv.js} +10 -81
- package/src/lib/app-utils/csv.js.map +1 -0
- package/src/lib/app-utils/dataset-models.d.ts +5 -5
- package/src/lib/app-utils/dataset-models.js +19 -2
- package/src/lib/app-utils/dataset-models.js.map +1 -1
- package/src/lib/app-utils/datasets.d.ts +65 -30
- package/src/lib/app-utils/datasets.js +74 -24
- package/src/lib/app-utils/datasets.js.map +1 -1
- package/src/lib/app-utils/docs-deflection.d.ts +6 -6
- package/src/lib/app-utils/docs-deflection.js.map +1 -1
- package/src/lib/app-utils/docs-help.generated.d.ts +14 -8
- package/src/lib/app-utils/docs-help.generated.js +23 -6
- package/src/lib/app-utils/docs-help.generated.js.map +1 -1
- package/src/lib/app-utils/docs-index.generated.d.ts +2 -2
- package/src/lib/app-utils/docs-index.generated.js +570 -346
- package/src/lib/app-utils/docs-index.generated.js.map +1 -1
- package/src/lib/app-utils/docs-retrieval.d.ts +3 -3
- package/src/lib/app-utils/docs-retrieval.js +14 -10
- package/src/lib/app-utils/docs-retrieval.js.map +1 -1
- package/src/lib/app-utils/duplicate-resource.d.ts +4 -1
- package/src/lib/app-utils/duplicate-resource.js +7 -4
- package/src/lib/app-utils/duplicate-resource.js.map +1 -1
- package/src/lib/app-utils/dynamic-list-rule.d.ts +1 -1
- package/src/lib/app-utils/dynamic-list-rule.js +3 -3
- package/src/lib/app-utils/dynamic-list-rule.js.map +1 -1
- package/src/lib/app-utils/element-ui.d.ts +1 -1
- package/src/lib/app-utils/element-ui.js +1 -1
- package/src/lib/app-utils/element-ui.js.map +1 -1
- package/src/lib/app-utils/email-starter-policy.js +3 -3
- package/src/lib/app-utils/email-starter-policy.js.map +1 -1
- package/src/lib/app-utils/email-text.d.ts +80 -0
- package/src/lib/app-utils/email-text.js +189 -0
- package/src/lib/app-utils/email-text.js.map +1 -0
- package/src/lib/app-utils/{list-assignment-policy.d.ts → enrollment-basis.d.ts} +4 -0
- package/src/lib/app-utils/{list-assignment-policy.js → enrollment-basis.js} +5 -1
- package/src/lib/app-utils/enrollment-basis.js.map +1 -0
- package/src/lib/app-utils/entity-picker-context.d.ts +10 -5
- package/src/lib/app-utils/entity-picker-context.js.map +1 -1
- package/src/lib/app-utils/error-beacon.d.ts +75 -6
- package/src/lib/app-utils/error-beacon.js +160 -21
- package/src/lib/app-utils/error-beacon.js.map +1 -1
- package/src/lib/app-utils/expand-repeatables.d.ts +10 -10
- package/src/lib/app-utils/expand-repeatables.js +14 -14
- package/src/lib/app-utils/expand-repeatables.js.map +1 -1
- package/src/lib/app-utils/forms.js +2 -2
- package/src/lib/app-utils/forms.js.map +1 -1
- package/src/lib/app-utils/health-report.d.ts +2 -3
- package/src/lib/app-utils/health-report.js +8 -6
- package/src/lib/app-utils/health-report.js.map +1 -1
- package/src/lib/app-utils/host-events.d.ts +82 -0
- package/src/lib/app-utils/host-events.js +62 -0
- package/src/lib/app-utils/host-events.js.map +1 -0
- package/src/lib/app-utils/inbound-mail-domain.d.ts +27 -0
- package/src/lib/app-utils/inbound-mail-domain.js +31 -0
- package/src/lib/app-utils/inbound-mail-domain.js.map +1 -0
- package/src/lib/app-utils/lockdown.d.ts +11 -0
- package/src/lib/app-utils/lockdown.js +33 -3
- package/src/lib/app-utils/lockdown.js.map +1 -1
- package/src/lib/app-utils/margin-utilization.d.ts +4 -69
- package/src/lib/app-utils/margin-utilization.js +82 -69
- package/src/lib/app-utils/margin-utilization.js.map +1 -1
- package/src/lib/app-utils/member-email-aliases.d.ts +25 -0
- package/src/lib/app-utils/member-email-aliases.js +29 -0
- package/src/lib/app-utils/member-email-aliases.js.map +1 -1
- package/src/lib/app-utils/node-definition-sanitizer.d.ts +16 -16
- package/src/lib/app-utils/node-definition-sanitizer.js +24 -20
- package/src/lib/app-utils/node-definition-sanitizer.js.map +1 -1
- package/src/lib/app-utils/node-interactions.d.ts +7 -7
- package/src/lib/app-utils/node-interactions.js.map +1 -1
- package/src/lib/app-utils/notifications.d.ts +147 -47
- package/src/lib/app-utils/notifications.js +182 -44
- package/src/lib/app-utils/notifications.js.map +1 -1
- package/src/lib/app-utils/operator-alerts.d.ts +15 -1
- package/src/lib/app-utils/operator-alerts.js +47 -10
- package/src/lib/app-utils/operator-alerts.js.map +1 -1
- package/src/lib/app-utils/payments-configured.d.ts +8 -21
- package/src/lib/app-utils/payments-configured.js +8 -23
- package/src/lib/app-utils/payments-configured.js.map +1 -1
- package/src/lib/app-utils/plan-entitlements.d.ts +207 -306
- package/src/lib/app-utils/plan-entitlements.js +345 -528
- package/src/lib/app-utils/plan-entitlements.js.map +1 -1
- package/src/lib/app-utils/platform-brand.d.ts +10 -0
- package/src/lib/app-utils/platform-brand.js +14 -3
- package/src/lib/app-utils/platform-brand.js.map +1 -1
- package/src/lib/app-utils/platform-marketing-consent.d.ts +56 -2
- package/src/lib/app-utils/platform-marketing-consent.js +6 -5
- package/src/lib/app-utils/platform-marketing-consent.js.map +1 -1
- package/src/lib/app-utils/plugin-api-rate-limit.d.ts +7 -1
- package/src/lib/app-utils/plugin-api-rate-limit.js +11 -3
- package/src/lib/app-utils/plugin-api-rate-limit.js.map +1 -1
- package/src/lib/app-utils/plugin-bundle-checks.js +2 -2
- package/src/lib/app-utils/plugin-bundle-checks.js.map +1 -1
- package/src/lib/app-utils/plugin-host-events.generated.d.ts +12 -0
- package/src/lib/app-utils/plugin-host-events.generated.js +169 -0
- package/src/lib/app-utils/plugin-host-events.generated.js.map +1 -0
- package/src/lib/app-utils/plugin-release-flags.generated.d.ts +12 -0
- package/src/lib/app-utils/plugin-release-flags.generated.js +106 -0
- package/src/lib/app-utils/plugin-release-flags.generated.js.map +1 -0
- package/src/lib/app-utils/plugin-starter-templates.generated.d.ts +12 -0
- package/src/lib/app-utils/plugin-starter-templates.generated.js +711 -0
- package/src/lib/app-utils/plugin-starter-templates.generated.js.map +1 -0
- package/src/lib/app-utils/realm-host-surface.generated.js +2 -0
- package/src/lib/app-utils/realm-host-surface.generated.js.map +1 -1
- package/src/lib/app-utils/release-flags.d.ts +14 -5
- package/src/lib/app-utils/release-flags.js +21 -125
- package/src/lib/app-utils/release-flags.js.map +1 -1
- package/src/lib/app-utils/repeat-query.d.ts +56 -0
- package/src/lib/app-utils/{dataset-query.js → repeat-query.js} +16 -16
- package/src/lib/app-utils/repeat-query.js.map +1 -0
- package/src/lib/app-utils/repeat-sources.d.ts +9 -0
- package/src/lib/app-utils/repeat-sources.js.map +1 -1
- package/src/lib/app-utils/retained-refusals.d.ts +73 -0
- package/src/lib/app-utils/retained-refusals.js +186 -0
- package/src/lib/app-utils/retained-refusals.js.map +1 -0
- package/src/lib/app-utils/scope-tokens.d.ts +27 -0
- package/src/lib/app-utils/scope-tokens.js +61 -0
- package/src/lib/app-utils/scope-tokens.js.map +1 -1
- package/src/lib/app-utils/screen-link-context.js +3 -3
- package/src/lib/app-utils/screen-link-context.js.map +1 -1
- package/src/lib/app-utils/screen-route.js +1 -1
- package/src/lib/app-utils/screen-route.js.map +1 -1
- package/src/lib/app-utils/seo-audit.d.ts +132 -0
- package/src/lib/app-utils/seo-audit.js +246 -0
- package/src/lib/app-utils/seo-audit.js.map +1 -0
- package/src/lib/app-utils/seo-keywords.d.ts +48 -0
- package/src/lib/app-utils/seo-keywords.js +60 -0
- package/src/lib/app-utils/seo-keywords.js.map +1 -0
- package/src/lib/app-utils/seo-page-facts.d.ts +66 -0
- package/src/lib/app-utils/seo-page-facts.js +155 -0
- package/src/lib/app-utils/seo-page-facts.js.map +1 -0
- package/src/lib/app-utils/seo-site-scan.d.ts +126 -0
- package/src/lib/app-utils/seo-site-scan.js +162 -0
- package/src/lib/app-utils/seo-site-scan.js.map +1 -0
- package/src/lib/app-utils/seo-title-variables.js +1 -1
- package/src/lib/app-utils/seo-title-variables.js.map +1 -1
- package/src/lib/app-utils/server.d.ts +13 -18
- package/src/lib/app-utils/server.js +33 -51
- package/src/lib/app-utils/server.js.map +1 -1
- package/src/lib/app-utils/site-interactions.d.ts +501 -0
- package/src/lib/app-utils/site-interactions.js +554 -0
- package/src/lib/app-utils/site-interactions.js.map +1 -0
- package/src/lib/app-utils/{marketplace-theme.d.ts → site-theme.d.ts} +13 -2
- package/src/lib/app-utils/{marketplace-theme.js → site-theme.js} +2 -2
- package/src/lib/app-utils/site-theme.js.map +1 -0
- package/src/lib/app-utils/sitemap.d.ts +4 -3
- package/src/lib/app-utils/sitemap.js +9 -7
- package/src/lib/app-utils/sitemap.js.map +1 -1
- package/src/lib/app-utils/stale-build-error.d.ts +51 -0
- package/src/lib/app-utils/stale-build-error.js +100 -1
- package/src/lib/app-utils/stale-build-error.js.map +1 -1
- package/src/lib/app-utils/starter-template-nodes.d.ts +137 -0
- package/src/lib/app-utils/starter-template-nodes.js +129 -0
- package/src/lib/app-utils/starter-template-nodes.js.map +1 -0
- package/src/lib/app-utils/starter-templates.d.ts +11 -34
- package/src/lib/app-utils/starter-templates.js +19 -230
- package/src/lib/app-utils/starter-templates.js.map +1 -1
- package/src/lib/app-utils/{email-topics.d.ts → subscription-topics.d.ts} +64 -48
- package/src/lib/app-utils/{email-topics.js → subscription-topics.js} +39 -109
- package/src/lib/app-utils/subscription-topics.js.map +1 -0
- package/src/lib/app-utils/tax-jurisdiction-figures.d.ts +118 -0
- package/src/lib/app-utils/tax-jurisdiction-figures.js +123 -0
- package/src/lib/app-utils/tax-jurisdiction-figures.js.map +1 -0
- package/src/lib/app-utils/theme-library.d.ts +10 -3
- package/src/lib/app-utils/theme-library.js +13 -4
- package/src/lib/app-utils/theme-library.js.map +1 -1
- package/src/lib/app-utils/usage-budget.d.ts +73 -188
- package/src/lib/app-utils/usage-budget.js +58 -194
- package/src/lib/app-utils/usage-budget.js.map +1 -1
- package/src/lib/app-utils/{campaign-attribution.d.ts → utm-attribution.d.ts} +11 -6
- package/src/lib/app-utils/{campaign-attribution.js → utm-attribution.js} +13 -8
- package/src/lib/app-utils/utm-attribution.js.map +1 -0
- package/src/lib/app-utils/{campaign-forwarding.d.ts → utm-forwarding.d.ts} +14 -14
- package/src/lib/app-utils/{campaign-forwarding.js → utm-forwarding.js} +26 -26
- package/src/lib/app-utils/utm-forwarding.js.map +1 -0
- package/src/lib/app-utils/{campaign-touch.d.ts → utm-touch.d.ts} +25 -17
- package/src/lib/app-utils/{campaign-touch.js → utm-touch.js} +38 -30
- package/src/lib/app-utils/utm-touch.js.map +1 -0
- package/src/lib/app-utils/variables.d.ts +9 -9
- package/src/lib/app-utils/variables.js.map +1 -1
- package/src/lib/app-utils/video-object.js +6 -5
- package/src/lib/app-utils/video-object.js.map +1 -1
- package/src/lib/app-utils/visitor-consent.d.ts +41 -164
- package/src/lib/app-utils/visitor-consent.js +66 -277
- package/src/lib/app-utils/visitor-consent.js.map +1 -1
- package/src/lib/app-utils/visitor-record-ceiling.d.ts +32 -0
- package/src/lib/app-utils/visitor-record-ceiling.js +39 -0
- package/src/lib/app-utils/visitor-record-ceiling.js.map +1 -1
- package/src/lib/app-utils/web-vitals-rum.d.ts +7 -7
- package/src/lib/app-utils/web-vitals-rum.js +31 -63
- package/src/lib/app-utils/web-vitals-rum.js.map +1 -1
- package/src/lib/app-utils/where-used.d.ts +11 -6
- package/src/lib/app-utils/where-used.js +3 -8
- package/src/lib/app-utils/where-used.js.map +1 -1
- package/src/lib/foundation/definitions/components.types.d.ts +1 -1
- package/src/lib/foundation/definitions/components.types.js +1 -1
- package/src/lib/foundation/definitions/components.types.js.map +1 -1
- package/src/lib/foundation/definitions/org-billing.types.d.ts +11 -137
- package/src/lib/foundation/definitions/org-billing.types.js.map +1 -1
- package/src/lib/foundation/definitions/organization.types.d.ts +1 -3
- package/src/lib/foundation/definitions/organization.types.js.map +1 -1
- package/src/lib/foundation/definitions/platform.types.d.ts +11 -5
- package/src/lib/foundation/definitions/platform.types.js.map +1 -1
- package/src/lib/foundation/definitions/write-deny-coverage.util.d.ts +16 -0
- package/src/lib/foundation/definitions/write-deny-coverage.util.js +20 -0
- package/src/lib/foundation/definitions/write-deny-coverage.util.js.map +1 -1
- package/src/lib/foundation/index.d.ts +1 -1
- package/src/lib/foundation/index.js.map +1 -1
- package/src/lib/plugin-manager/besigner-documents.d.ts +96 -0
- package/src/lib/plugin-manager/besigner-documents.js +61 -0
- package/src/lib/plugin-manager/besigner-documents.js.map +1 -0
- package/src/lib/plugin-manager/computed-variables.d.ts +71 -0
- package/src/lib/plugin-manager/computed-variables.js +74 -0
- package/src/lib/plugin-manager/computed-variables.js.map +1 -0
- package/src/lib/plugin-manager/custom-fields.d.ts +29 -2
- package/src/lib/plugin-manager/custom-fields.js +47 -1
- package/src/lib/plugin-manager/custom-fields.js.map +1 -1
- package/src/lib/plugin-manager/feature-plugins.d.ts +372 -99
- package/src/lib/plugin-manager/feature-plugins.js +126 -51
- package/src/lib/plugin-manager/feature-plugins.js.map +1 -1
- package/src/lib/plugin-manager/first-party-plugins.generated.d.ts +134 -0
- package/src/lib/plugin-manager/first-party-plugins.generated.js +840 -10
- package/src/lib/plugin-manager/first-party-plugins.generated.js.map +1 -1
- package/src/lib/plugin-manager/index.d.ts +0 -1
- package/src/lib/plugin-manager/index.js +0 -1
- package/src/lib/plugin-manager/index.js.map +1 -1
- package/src/lib/plugin-manager/plugin-activity-actions.d.ts +12 -0
- package/src/lib/plugin-manager/plugin-activity-actions.js +25 -0
- package/src/lib/plugin-manager/plugin-activity-actions.js.map +1 -1
- package/src/lib/plugin-manager/plugin-contact-capture.d.ts +9 -4
- package/src/lib/plugin-manager/plugin-contact-capture.js.map +1 -1
- package/src/lib/plugin-manager/plugin-containers.d.ts +68 -0
- package/src/lib/plugin-manager/plugin-containers.generated.d.ts +10 -0
- package/src/lib/plugin-manager/plugin-containers.generated.js +20 -0
- package/src/lib/plugin-manager/plugin-containers.generated.js.map +1 -0
- package/src/lib/plugin-manager/plugin-containers.js +27 -0
- package/src/lib/plugin-manager/plugin-containers.js.map +1 -0
- package/src/lib/plugin-manager/plugin-contributions.d.ts +1 -1
- package/src/lib/plugin-manager/plugin-contributions.js.map +1 -1
- package/src/lib/plugin-manager/plugin-declarations-repair.d.ts +36 -0
- package/src/lib/plugin-manager/plugin-declarations-repair.js +64 -0
- package/src/lib/plugin-manager/plugin-declarations-repair.js.map +1 -0
- package/src/lib/plugin-manager/plugin-dependents.d.ts +101 -0
- package/src/lib/plugin-manager/plugin-dependents.js +75 -0
- package/src/lib/plugin-manager/plugin-dependents.js.map +1 -0
- package/src/lib/plugin-manager/plugin-distribution.d.ts +55 -0
- package/src/lib/plugin-manager/plugin-distribution.js +45 -0
- package/src/lib/plugin-manager/plugin-distribution.js.map +1 -0
- package/src/lib/plugin-manager/plugin-entitlements.d.ts +8 -0
- package/src/lib/plugin-manager/plugin-entitlements.js.map +1 -1
- package/src/lib/plugin-manager/plugin-host-collections.d.ts +17 -0
- package/src/lib/plugin-manager/plugin-host-collections.js +6 -0
- package/src/lib/plugin-manager/plugin-host-collections.js.map +1 -1
- package/src/lib/plugin-manager/plugin-host-resources.d.ts +133 -0
- package/src/lib/plugin-manager/plugin-host-resources.js +52 -0
- package/src/lib/plugin-manager/plugin-host-resources.js.map +1 -0
- package/src/lib/plugin-manager/plugin-membership-detach.js +1 -1
- package/src/lib/plugin-manager/plugin-membership-detach.js.map +1 -1
- package/src/lib/plugin-manager/plugin-org-erasure.d.ts +28 -2
- package/src/lib/plugin-manager/plugin-org-erasure.js +61 -2
- package/src/lib/plugin-manager/plugin-org-erasure.js.map +1 -1
- package/src/lib/plugin-manager/plugin-plan-entitlements.d.ts +123 -0
- package/src/lib/plugin-manager/plugin-plan-entitlements.js +101 -0
- package/src/lib/plugin-manager/plugin-plan-entitlements.js.map +1 -0
- package/src/lib/plugin-manager/plugin-record-email-state.d.ts +69 -0
- package/src/lib/plugin-manager/plugin-record-email-state.js +32 -0
- package/src/lib/plugin-manager/plugin-record-email-state.js.map +1 -1
- package/src/lib/plugin-manager/plugin-record-index.d.ts +95 -0
- package/src/lib/plugin-manager/plugin-record-index.js +51 -0
- package/src/lib/plugin-manager/plugin-record-index.js.map +1 -0
- package/src/lib/plugin-manager/plugin-record-lists.d.ts +115 -0
- package/src/lib/plugin-manager/plugin-record-lists.js +75 -0
- package/src/lib/plugin-manager/plugin-record-lists.js.map +1 -0
- package/src/lib/plugin-manager/plugin-record-timeline.d.ts +42 -8
- package/src/lib/plugin-manager/plugin-record-timeline.js.map +1 -1
- package/src/lib/plugin-manager/plugin-record-written.d.ts +58 -0
- package/src/lib/plugin-manager/plugin-record-written.js +42 -0
- package/src/lib/plugin-manager/plugin-record-written.js.map +1 -0
- package/src/lib/plugin-manager/plugin-revenue-sources.d.ts +213 -0
- package/src/lib/plugin-manager/plugin-revenue-sources.js +194 -0
- package/src/lib/plugin-manager/plugin-revenue-sources.js.map +1 -0
- package/src/lib/plugin-manager/plugin-site-beacons.d.ts +71 -0
- package/src/lib/plugin-manager/plugin-site-beacons.js +54 -0
- package/src/lib/plugin-manager/plugin-site-beacons.js.map +1 -0
- package/src/lib/plugin-manager/plugin-site-bundle.d.ts +145 -0
- package/src/lib/plugin-manager/plugin-site-bundle.js +78 -0
- package/src/lib/plugin-manager/plugin-site-bundle.js.map +1 -0
- package/src/lib/plugin-manager/plugin-site-cache.d.ts +12 -0
- package/src/lib/plugin-manager/plugin-site-cache.js.map +1 -1
- package/src/lib/plugin-manager/plugin-site-export.d.ts +81 -0
- package/src/lib/plugin-manager/plugin-site-export.js +40 -0
- package/src/lib/plugin-manager/plugin-site-export.js.map +1 -0
- package/src/lib/plugin-manager/plugin-sitemap-sections.d.ts +88 -0
- package/src/lib/plugin-manager/plugin-sitemap-sections.js +29 -0
- package/src/lib/plugin-manager/plugin-sitemap-sections.js.map +1 -0
- package/src/lib/plugin-manager/plugin-subscription-topics.generated.d.ts +11 -0
- package/src/lib/plugin-manager/plugin-subscription-topics.generated.js +41 -0
- package/src/lib/plugin-manager/plugin-subscription-topics.generated.js.map +1 -0
- package/src/lib/plugin-manager/plugin-tax-profile.d.ts +20 -4
- package/src/lib/plugin-manager/plugin-tax-profile.js.map +1 -1
- package/src/lib/plugin-manager/plugin-tax-return-sources.d.ts +255 -0
- package/src/lib/plugin-manager/plugin-tax-return-sources.js +191 -0
- package/src/lib/plugin-manager/plugin-tax-return-sources.js.map +1 -0
- package/src/lib/plugin-manager/plugin-template-sources.d.ts +75 -0
- package/src/lib/plugin-manager/plugin-template-sources.js +37 -0
- package/src/lib/plugin-manager/plugin-template-sources.js.map +1 -0
- package/src/lib/plugin-manager/plugin-usage-axes.d.ts +319 -0
- package/src/lib/plugin-manager/plugin-usage-axes.js +186 -0
- package/src/lib/plugin-manager/plugin-usage-axes.js.map +1 -0
- package/src/lib/plugin-manager/plugin-usage-meters.d.ts +108 -0
- package/src/lib/plugin-manager/plugin-usage-meters.js +105 -0
- package/src/lib/plugin-manager/plugin-usage-meters.js.map +1 -0
- package/src/lib/plugin-manager/plugin-zones.d.ts +4 -5
- package/src/lib/plugin-manager/plugin-zones.js.map +1 -1
- package/src/lib/plugin-manager/realm-host-aglyn.generated.js +2 -0
- package/src/lib/plugin-manager/realm-host-aglyn.generated.js.map +1 -1
- package/src/lib/plugin-manager/record-captured-contact.d.ts +1 -14
- package/src/lib/plugin-manager/record-captured-contact.js +10 -32
- package/src/lib/plugin-manager/record-captured-contact.js.map +1 -1
- package/src/lib/plugin-manager/repeat-rows.d.ts +124 -0
- package/src/lib/plugin-manager/repeat-rows.js +108 -0
- package/src/lib/plugin-manager/repeat-rows.js.map +1 -0
- package/src/lib/plugin-manager/submission-record-target.d.ts +144 -0
- package/src/lib/plugin-manager/submission-record-target.js +125 -0
- package/src/lib/plugin-manager/submission-record-target.js.map +1 -0
- package/src/lib/plugin-manager/usage-alert-contributors.d.ts +76 -6
- package/src/lib/plugin-manager/usage-alert-contributors.js +23 -10
- package/src/lib/plugin-manager/usage-alert-contributors.js.map +1 -1
- package/src/lib/plugin-manager/video-embed-provider.d.ts +108 -0
- package/src/lib/plugin-manager/video-embed-provider.js +165 -0
- package/src/lib/plugin-manager/video-embed-provider.js.map +1 -0
- package/src/lib/types/nodes.d.ts +2 -2
- package/src/lib/types/nodes.js.map +1 -1
- package/src/lib/app-utils/assist-credits.d.ts +0 -482
- package/src/lib/app-utils/assist-credits.js +0 -509
- package/src/lib/app-utils/assist-credits.js.map +0 -1
- package/src/lib/app-utils/campaign-attribution.js.map +0 -1
- package/src/lib/app-utils/campaign-forwarding.js.map +0 -1
- package/src/lib/app-utils/campaign-membership.d.ts +0 -121
- package/src/lib/app-utils/campaign-membership.js +0 -189
- package/src/lib/app-utils/campaign-membership.js.map +0 -1
- package/src/lib/app-utils/campaign-touch.js.map +0 -1
- package/src/lib/app-utils/console-record-links.d.ts +0 -163
- package/src/lib/app-utils/console-record-links.js +0 -180
- package/src/lib/app-utils/console-record-links.js.map +0 -1
- package/src/lib/app-utils/contact-holder.d.ts +0 -68
- package/src/lib/app-utils/contact-holder.js +0 -129
- package/src/lib/app-utils/contact-holder.js.map +0 -1
- package/src/lib/app-utils/contact-merge.d.ts +0 -136
- package/src/lib/app-utils/contact-merge.js +0 -412
- package/src/lib/app-utils/contact-merge.js.map +0 -1
- package/src/lib/app-utils/crm-booking.d.ts +0 -75
- package/src/lib/app-utils/crm-booking.js +0 -133
- package/src/lib/app-utils/crm-booking.js.map +0 -1
- package/src/lib/app-utils/crm-csv.d.ts +0 -239
- package/src/lib/app-utils/crm-csv.js +0 -467
- package/src/lib/app-utils/crm-csv.js.map +0 -1
- package/src/lib/app-utils/crm-digest.d.ts +0 -185
- package/src/lib/app-utils/crm-digest.js +0 -272
- package/src/lib/app-utils/crm-digest.js.map +0 -1
- package/src/lib/app-utils/crm-inbound.d.ts +0 -245
- package/src/lib/app-utils/crm-inbound.js +0 -407
- package/src/lib/app-utils/crm-inbound.js.map +0 -1
- package/src/lib/app-utils/crm-reports.d.ts +0 -479
- package/src/lib/app-utils/crm-reports.js +0 -680
- package/src/lib/app-utils/crm-reports.js.map +0 -1
- package/src/lib/app-utils/dataset-csv.js.map +0 -1
- package/src/lib/app-utils/dataset-query.d.ts +0 -57
- package/src/lib/app-utils/dataset-query.js.map +0 -1
- package/src/lib/app-utils/email-topics.js.map +0 -1
- package/src/lib/app-utils/form-dataset-binding.d.ts +0 -50
- package/src/lib/app-utils/form-dataset-binding.js +0 -74
- package/src/lib/app-utils/form-dataset-binding.js.map +0 -1
- package/src/lib/app-utils/list-assignment-policy.js.map +0 -1
- package/src/lib/app-utils/list-import.d.ts +0 -158
- package/src/lib/app-utils/list-import.js +0 -332
- package/src/lib/app-utils/list-import.js.map +0 -1
- package/src/lib/app-utils/marketplace-listing-visibility.d.ts +0 -122
- package/src/lib/app-utils/marketplace-listing-visibility.js +0 -147
- package/src/lib/app-utils/marketplace-listing-visibility.js.map +0 -1
- package/src/lib/app-utils/marketplace-overrides.js.map +0 -1
- package/src/lib/app-utils/marketplace-provenance.js.map +0 -1
- package/src/lib/app-utils/marketplace-theme.js.map +0 -1
- package/src/lib/app-utils/marketplace-update-state.d.ts +0 -119
- package/src/lib/app-utils/marketplace-update-state.js +0 -132
- package/src/lib/app-utils/marketplace-update-state.js.map +0 -1
- package/src/lib/app-utils/publisher-agreement.d.ts +0 -289
- package/src/lib/app-utils/publisher-agreement.js +0 -321
- package/src/lib/app-utils/publisher-agreement.js.map +0 -1
- package/src/lib/app-utils/wistia-embed.d.ts +0 -104
- package/src/lib/app-utils/wistia-embed.js +0 -138
- package/src/lib/app-utils/wistia-embed.js.map +0 -1
- package/src/lib/app-utils/workflows.d.ts +0 -136
- package/src/lib/app-utils/workflows.js +0 -346
- package/src/lib/app-utils/workflows.js.map +0 -1
- package/src/lib/plugin-manager/commerce-zone-props.d.ts +0 -172
- package/src/lib/plugin-manager/commerce-zone-props.js +0 -31
- package/src/lib/plugin-manager/commerce-zone-props.js.map +0 -1
- package/src/lib/plugin-manager/plugin-metered-lines.d.ts +0 -97
- package/src/lib/plugin-manager/plugin-metered-lines.js +0 -123
- package/src/lib/plugin-manager/plugin-metered-lines.js.map +0 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aglyn/aglyn",
|
|
3
|
-
"version": "1.0.0-beta.
|
|
3
|
+
"version": "1.0.0-beta.220",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"homepage": "https://aglyn.com",
|
|
6
6
|
"repository": {
|
|
@@ -33,16 +33,16 @@
|
|
|
33
33
|
"./package.json": "./package.json"
|
|
34
34
|
},
|
|
35
35
|
"dependencies": {
|
|
36
|
-
"@aglyn/shared-data-enums": "1.0.0-beta.
|
|
37
|
-
"@aglyn/shared-data-mdi": "1.0.0-beta.
|
|
38
|
-
"@aglyn/shared-data-types": "1.0.0-beta.
|
|
39
|
-
"@aglyn/shared-util-email": "1.0.0-beta.
|
|
40
|
-
"@aglyn/shared-util-first-touch": "1.0.0-beta.
|
|
41
|
-
"@aglyn/shared-util-http": "1.0.0-beta.
|
|
42
|
-
"@aglyn/shared-util-logger": "1.0.0-beta.
|
|
43
|
-
"@aglyn/shared-util-timestamp": "1.0.0-beta.
|
|
44
|
-
"@aglyn/shared-util-tools": "1.0.0-beta.
|
|
45
|
-
"@aglyn/shared-util-vendor": "1.0.0-beta.
|
|
36
|
+
"@aglyn/shared-data-enums": "1.0.0-beta.220",
|
|
37
|
+
"@aglyn/shared-data-mdi": "1.0.0-beta.220",
|
|
38
|
+
"@aglyn/shared-data-types": "1.0.0-beta.220",
|
|
39
|
+
"@aglyn/shared-util-email": "1.0.0-beta.220",
|
|
40
|
+
"@aglyn/shared-util-first-touch": "1.0.0-beta.220",
|
|
41
|
+
"@aglyn/shared-util-http": "1.0.0-beta.220",
|
|
42
|
+
"@aglyn/shared-util-logger": "1.0.0-beta.220",
|
|
43
|
+
"@aglyn/shared-util-timestamp": "1.0.0-beta.220",
|
|
44
|
+
"@aglyn/shared-util-tools": "1.0.0-beta.220",
|
|
45
|
+
"@aglyn/shared-util-vendor": "1.0.0-beta.220",
|
|
46
46
|
"@data-driven-forms/react-form-renderer": "^4.2.0",
|
|
47
47
|
"@msgpack/msgpack": "^3.1.3",
|
|
48
48
|
"@types/unist": "^3.0.3",
|
|
@@ -58,7 +58,7 @@
|
|
|
58
58
|
"@mui/material": "^9.3.1",
|
|
59
59
|
"@mui/system": "^9.2.0",
|
|
60
60
|
"firebase": "^12.18.0",
|
|
61
|
-
"next": "16.3.3",
|
|
61
|
+
"next": "^16.3.3",
|
|
62
62
|
"react": "^19.2.8"
|
|
63
63
|
},
|
|
64
64
|
"peerDependenciesMeta": {
|
|
@@ -15,136 +15,27 @@
|
|
|
15
15
|
* limitations under the License.
|
|
16
16
|
*/
|
|
17
17
|
import { type ContactLifecycleStage, type CrmActivityKind, type CrmTaskKind } from './crm-kinds';
|
|
18
|
+
import { type ClientInteractionStep, type InteractionCondition, type InteractionStepGuard, type InteractionTrigger, type SiteAlert, type SiteInteraction, type TriggerCombinator } from './site-interactions';
|
|
18
19
|
/**
|
|
19
20
|
* Actions builder (AGL-148): HubSpot-style event → action automation on
|
|
20
21
|
* top of the AGL-128 event triggers. An action listens for a host event
|
|
21
22
|
* (built-in or a custom name fired by another action), optionally filters
|
|
22
23
|
* on the payload, and runs an ordered step list. Pure types + validation
|
|
23
|
-
* here; the executor lives
|
|
24
|
-
*/
|
|
25
|
-
/**
|
|
26
|
-
* Client-side site events (AGL-256) the tenant page runtime emits:
|
|
27
|
-
* element interactions, scroll behavior, dwell time, and exit intent.
|
|
28
|
-
* Trigger config (selector/threshold/path) rides the action's trigger.
|
|
29
|
-
*/
|
|
30
|
-
export declare const SITE_EVENT_TYPES: readonly ["scrollDepth", "scrollToElement", "elementClick", "elementVisible", "elementHoverEnter", "elementHoverLeave", "exitIntent", "timeOnPage", "pageVisit"];
|
|
31
|
-
/** Site events that watch a specific element and need a selector. */
|
|
32
|
-
export declare const ELEMENT_SCOPED_SITE_EVENTS: readonly ["scrollToElement", "elementClick", "elementVisible", "elementHoverEnter", "elementHoverLeave"];
|
|
33
|
-
export type SiteEventType = (typeof SITE_EVENT_TYPES)[number];
|
|
34
|
-
export declare function isSiteEventType(event: string): event is SiteEventType;
|
|
35
|
-
/** Structured condition operators (AGL-557). */
|
|
36
|
-
export declare const TRIGGER_CONDITION_OPS: readonly ["equals", "contains", "notEmpty"];
|
|
37
|
-
export type TriggerConditionOp = (typeof TRIGGER_CONDITION_OPS)[number];
|
|
38
|
-
/**
|
|
39
|
-
* Structured per-action condition over the event payload (AGL-557): the
|
|
40
|
-
* no-code sibling of the free-text `filter` expression, e.g. "only run
|
|
41
|
-
* when the `subscribe` field is not empty". Evaluated against the same
|
|
42
|
-
* scope as the filter (event name + payload fields); the action is
|
|
43
|
-
* skipped when unmet.
|
|
44
|
-
*/
|
|
45
|
-
export interface HostActionTriggerCondition {
|
|
46
|
-
/** Payload field the condition reads (a submitted form field name). */
|
|
47
|
-
field: string;
|
|
48
|
-
op: TriggerConditionOp;
|
|
49
|
-
/** Comparison value for `equals`/`contains`; unused by `notEmpty`. */
|
|
50
|
-
value?: string;
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* Evaluates a structured trigger condition (AGL-557). String-coerces the
|
|
54
|
-
* payload value; `equals`/`contains` compare trimmed + case-insensitive
|
|
55
|
-
* so checkbox values like "Yes" match an author-typed "yes". A missing
|
|
56
|
-
* field never matches (and is "empty" for `notEmpty`); an absent or
|
|
57
|
-
* field-less condition always passes, mirroring the filter's default.
|
|
58
|
-
*/
|
|
59
|
-
export declare function evaluateTriggerCondition(condition: HostActionTriggerCondition | undefined | null, payload: Record<string, unknown>): boolean;
|
|
60
|
-
/** How chained trigger conditions combine (AGL-565). */
|
|
61
|
-
export declare const TRIGGER_COMBINATORS: readonly ["and", "or"];
|
|
62
|
-
export type TriggerCombinator = (typeof TRIGGER_COMBINATORS)[number];
|
|
63
|
-
/** Cap on chained conditions per trigger (AGL-565). */
|
|
64
|
-
export declare const ACTION_MAX_CONDITIONS = 5;
|
|
65
|
-
/**
|
|
66
|
-
* Normalizes a trigger's condition clauses to a list (AGL-565): the
|
|
67
|
-
* `conditions` array wins when present; a legacy single `condition`
|
|
68
|
-
* (AGL-557) becomes a one-element list. Read-time only — persisted docs
|
|
69
|
-
* are never migrated, so pre-565 single-condition docs keep working
|
|
70
|
-
* unchanged.
|
|
71
|
-
*/
|
|
72
|
-
export declare function normalizeTriggerConditions(trigger: Pick<HostActionTrigger, 'condition' | 'conditions'> | undefined | null): HostActionTriggerCondition[];
|
|
73
|
-
/**
|
|
74
|
-
* Evaluates a trigger's condition list with its combinator (AGL-565):
|
|
75
|
-
* `and` (the default) requires every condition to pass, `or` any one.
|
|
76
|
-
* Per-condition semantics are unchanged from AGL-557
|
|
77
|
-
* (`evaluateTriggerCondition`), and an empty list always passes — which
|
|
78
|
-
* covers every pre-565 doc without conditions.
|
|
79
|
-
*/
|
|
80
|
-
export declare function evaluateTriggerConditions(trigger: Pick<HostActionTrigger, 'condition' | 'conditions' | 'combinator'> | undefined | null, payload: Record<string, unknown>): boolean;
|
|
81
|
-
export interface HostActionTrigger {
|
|
82
|
-
/**
|
|
83
|
-
* Event the action enrolls on: a HOST_EVENT_TYPE (server-emitted), a
|
|
84
|
-
* SITE_EVENT_TYPE (client-emitted, AGL-256), or a custom name fired by
|
|
85
|
-
* another action's `customEvent` step.
|
|
86
|
-
*/
|
|
87
|
-
event: string;
|
|
88
|
-
/** Optional expression over the payload; runs only when truthy. */
|
|
89
|
-
filter?: string;
|
|
90
|
-
/** Optional structured payload condition (AGL-557); null clears it. */
|
|
91
|
-
condition?: HostActionTriggerCondition | null;
|
|
92
|
-
/**
|
|
93
|
-
* Chained payload conditions (AGL-565), combined with `combinator`.
|
|
94
|
-
* When present this list wins over the legacy single `condition`
|
|
95
|
-
* (see `normalizeTriggerConditions`); null clears it.
|
|
96
|
-
*/
|
|
97
|
-
conditions?: HostActionTriggerCondition[] | null;
|
|
98
|
-
/** How the chained conditions combine (AGL-565); default `and`. */
|
|
99
|
-
combinator?: TriggerCombinator | null;
|
|
100
|
-
/** CSS selector for element-scoped site events (click/visible/scroll-to). */
|
|
101
|
-
selector?: string;
|
|
102
|
-
/** Percent 0-100 (scrollDepth) or seconds (timeOnPage). */
|
|
103
|
-
threshold?: number;
|
|
104
|
-
/** Path pattern the site event listens on (overlay glob rules); empty = all. */
|
|
105
|
-
pathPattern?: string;
|
|
106
|
-
/**
|
|
107
|
-
* Fire at most once per visitor (AGL-266, localStorage-keyed) instead
|
|
108
|
-
* of once per pageview. Site events only.
|
|
109
|
-
*/
|
|
110
|
-
oncePerVisitor?: boolean;
|
|
111
|
-
/**
|
|
112
|
-
* Fire at most once per browser session (AGL-274,
|
|
113
|
-
* sessionStorage-keyed). Site events only.
|
|
114
|
-
*/
|
|
115
|
-
oncePerSession?: boolean;
|
|
116
|
-
/**
|
|
117
|
-
* Minimum minutes between fires for the same visitor (AGL-274,
|
|
118
|
-
* localStorage timestamp). Site events only; ignored when
|
|
119
|
-
* `oncePerVisitor` is set.
|
|
120
|
-
*/
|
|
121
|
-
cooldownMinutes?: number;
|
|
122
|
-
/**
|
|
123
|
-
* Fire on EVERY occurrence instead of once per pageview (AGL-562) —
|
|
124
|
-
* required for repeatable UI choreography (menu toggles, drawer
|
|
125
|
-
* open/close, hover show/hide). Site events only; the explicit
|
|
126
|
-
* per-session/visitor/cooldown caps above still win when set.
|
|
127
|
-
*/
|
|
128
|
-
everyTime?: boolean;
|
|
129
|
-
}
|
|
130
|
-
/**
|
|
131
|
-
* A per-STEP condition, and the difference between an automation and a flow.
|
|
24
|
+
* here; the executor lives in the workflows plugin, where the I/O is.
|
|
132
25
|
*
|
|
133
|
-
*
|
|
134
|
-
*
|
|
135
|
-
*
|
|
136
|
-
*
|
|
137
|
-
*
|
|
138
|
-
|
|
139
|
-
*
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
export
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
combinator?: TriggerCombinator | null;
|
|
147
|
-
}
|
|
26
|
+
* An action is a SITE INTERACTION (`site-interactions.ts`) with server steps
|
|
27
|
+
* added: its trigger, its conditions, its client steps and its storage are
|
|
28
|
+
* the platform's, and are re-exported here for the readers that take both
|
|
29
|
+
* from this module. What is declared below is the automation's own — the
|
|
30
|
+
* server steps, flows, recipes and webhooks.
|
|
31
|
+
*/
|
|
32
|
+
export * from './site-interactions';
|
|
33
|
+
/** The automation's names for the platform's interaction shapes. */
|
|
34
|
+
export type HostActionTriggerCondition = InteractionCondition;
|
|
35
|
+
export type HostActionTrigger = InteractionTrigger;
|
|
36
|
+
export type HostActionStepGuard = InteractionStepGuard;
|
|
37
|
+
/** Alert produced by a `siteAlert` step, surfaced to the emitting client. */
|
|
38
|
+
export type HostActionAlert = SiteAlert;
|
|
148
39
|
/**
|
|
149
40
|
* The scope key a resumed flow carries to say the wait ended on the CLOCK
|
|
150
41
|
* rather than on the event it was watching for.
|
|
@@ -155,21 +46,11 @@ export interface HostActionStepGuard {
|
|
|
155
46
|
* event payload's own fields, which are merchant-authored form field names.
|
|
156
47
|
*/
|
|
157
48
|
export declare const FLOW_TIMED_OUT_FIELD = "_waitTimedOut";
|
|
158
|
-
/**
|
|
159
|
-
|
|
160
|
-
*
|
|
161
|
-
* An absent or clause-less guard passes, exactly as an absent trigger
|
|
162
|
-
* condition does — so every step written before guards existed keeps running.
|
|
163
|
-
*/
|
|
164
|
-
export declare function evaluateStepGuard(guard: HostActionStepGuard | undefined | null, scope: Record<string, unknown>): boolean;
|
|
165
|
-
export type HostActionStep = ({
|
|
49
|
+
/** The steps an automation adds to the platform's client steps: the server's, run by the workflows plugin. */
|
|
50
|
+
type ServerActionStep = ({
|
|
166
51
|
type: 'runWorkflow';
|
|
167
52
|
workflowId?: string;
|
|
168
53
|
workflowName?: string;
|
|
169
|
-
} | {
|
|
170
|
-
type: 'siteAlert';
|
|
171
|
-
message: string;
|
|
172
|
-
severity?: 'info' | 'success' | 'warning' | 'error';
|
|
173
54
|
} | {
|
|
174
55
|
type: 'customEvent';
|
|
175
56
|
eventName: string;
|
|
@@ -181,90 +62,6 @@ export type HostActionStep = ({
|
|
|
181
62
|
type: 'webhookPost';
|
|
182
63
|
webhookId?: string;
|
|
183
64
|
webhookName?: string;
|
|
184
|
-
} | {
|
|
185
|
-
type: 'showOverlay';
|
|
186
|
-
overlayId?: string;
|
|
187
|
-
overlayName?: string;
|
|
188
|
-
} | {
|
|
189
|
-
type: 'stickyNav';
|
|
190
|
-
selector?: string;
|
|
191
|
-
} | {
|
|
192
|
-
type: 'addClass';
|
|
193
|
-
selector: string;
|
|
194
|
-
className: string;
|
|
195
|
-
} | {
|
|
196
|
-
type: 'removeClass';
|
|
197
|
-
selector: string;
|
|
198
|
-
className: string;
|
|
199
|
-
} | {
|
|
200
|
-
type: 'toggleClass';
|
|
201
|
-
selector: string;
|
|
202
|
-
className: string;
|
|
203
|
-
} | {
|
|
204
|
-
type: 'showElement';
|
|
205
|
-
selector: string;
|
|
206
|
-
delayMs?: number;
|
|
207
|
-
dismissOn?: ElementDismissOption[];
|
|
208
|
-
} | {
|
|
209
|
-
type: 'hideElement';
|
|
210
|
-
selector: string;
|
|
211
|
-
delayMs?: number;
|
|
212
|
-
} | {
|
|
213
|
-
type: 'toggleElement';
|
|
214
|
-
selector: string;
|
|
215
|
-
delayMs?: number;
|
|
216
|
-
dismissOn?: ElementDismissOption[];
|
|
217
|
-
} | {
|
|
218
|
-
type: 'setAttribute';
|
|
219
|
-
selector: string;
|
|
220
|
-
name: string;
|
|
221
|
-
value: string;
|
|
222
|
-
} | {
|
|
223
|
-
type: 'removeAttribute';
|
|
224
|
-
selector: string;
|
|
225
|
-
name: string;
|
|
226
|
-
} | {
|
|
227
|
-
type: 'scrollTo';
|
|
228
|
-
selector: string;
|
|
229
|
-
/** Absent means `smooth`. A visitor who asks for reduced motion is always scrolled instantly. */
|
|
230
|
-
behavior?: ScrollToBehavior;
|
|
231
|
-
/** Pixels left above the target, so a sticky header does not cover it. Absent means 0. */
|
|
232
|
-
offsetPx?: number;
|
|
233
|
-
} | {
|
|
234
|
-
type: 'playVideo';
|
|
235
|
-
selector: string;
|
|
236
|
-
} | {
|
|
237
|
-
type: 'openDrawer';
|
|
238
|
-
drawerNodeId?: string;
|
|
239
|
-
} | {
|
|
240
|
-
type: 'closeDrawer';
|
|
241
|
-
drawerNodeId?: string;
|
|
242
|
-
} | {
|
|
243
|
-
type: 'toggleDrawer';
|
|
244
|
-
drawerNodeId?: string;
|
|
245
|
-
} | {
|
|
246
|
-
type: 'openMenu';
|
|
247
|
-
menuNodeId?: string;
|
|
248
|
-
} | {
|
|
249
|
-
type: 'closeMenu';
|
|
250
|
-
menuNodeId?: string;
|
|
251
|
-
} | {
|
|
252
|
-
type: 'toggleMenu';
|
|
253
|
-
menuNodeId?: string;
|
|
254
|
-
} | {
|
|
255
|
-
type: 'showHtml';
|
|
256
|
-
html: string;
|
|
257
|
-
} | {
|
|
258
|
-
type: 'runJs';
|
|
259
|
-
code: string;
|
|
260
|
-
} | {
|
|
261
|
-
type: 'redirect';
|
|
262
|
-
url?: string;
|
|
263
|
-
screenId?: string;
|
|
264
|
-
} | {
|
|
265
|
-
type: 'trackGaEvent';
|
|
266
|
-
eventName: string;
|
|
267
|
-
params?: Record<string, string>;
|
|
268
65
|
} | {
|
|
269
66
|
type: 'sendEmail';
|
|
270
67
|
subject: string;
|
|
@@ -351,12 +148,11 @@ export type HostActionStep = ({
|
|
|
351
148
|
kind: CrmActivityKind;
|
|
352
149
|
body: string;
|
|
353
150
|
}) & {
|
|
354
|
-
/** See {@link
|
|
355
|
-
when?:
|
|
151
|
+
/** See {@link InteractionStepGuard}. Absent means the step always runs. */
|
|
152
|
+
when?: InteractionStepGuard | null;
|
|
356
153
|
};
|
|
357
|
-
/**
|
|
358
|
-
export
|
|
359
|
-
export declare function isClientActionStep(step: HostActionStep): boolean;
|
|
154
|
+
/** A step of an automation: one of the platform's client steps, or one of its server steps. */
|
|
155
|
+
export type HostActionStep = ClientInteractionStep | ServerActionStep;
|
|
360
156
|
/**
|
|
361
157
|
* The steps that suspend a run and continue it later, from a job beat.
|
|
362
158
|
*
|
|
@@ -367,18 +163,6 @@ export declare function isClientActionStep(step: HostActionStep): boolean;
|
|
|
367
163
|
*/
|
|
368
164
|
export declare const FLOW_SUSPENDING_STEP_TYPES: ReadonlySet<HostActionStepType>;
|
|
369
165
|
export declare function isFlowSuspendingStep(step: HostActionStep): boolean;
|
|
370
|
-
/**
|
|
371
|
-
* The steps that act on the CRM (AGL-2605) — named as a set because the
|
|
372
|
-
* executor dispatches all five to one module and the docs list them as one
|
|
373
|
-
* group, and a step added to the union but not here would be a server step
|
|
374
|
-
* the executor silently skipped.
|
|
375
|
-
*/
|
|
376
|
-
export declare const CRM_ACTION_STEP_TYPES: ReadonlySet<HostActionStepType>;
|
|
377
|
-
/** The CRM steps, as the type the executor narrows to. */
|
|
378
|
-
export type CrmActionStep = Extract<HostActionStep, {
|
|
379
|
-
type: 'setContactStage' | 'addContactTag' | 'assignContactOwner' | 'createCrmTask' | 'logCrmActivity';
|
|
380
|
-
}>;
|
|
381
|
-
export declare function isCrmActionStep(step: HostActionStep): step is CrmActionStep;
|
|
382
166
|
/** Longest tag an automation may write — the console's own tag field cap. */
|
|
383
167
|
export declare const CONTACT_TAG_MAX_LENGTH = 60;
|
|
384
168
|
export declare const CRM_ACTION_RECIPE_IDS: readonly ["welcomeNewLead", "followUpWonDeal", "reengageStaleLead", "tagByForm"];
|
|
@@ -485,48 +269,12 @@ export declare function hostActionDocument(action: HostAction): HostActionDocume
|
|
|
485
269
|
* a run that has not happened yet, whichever side would have executed it.
|
|
486
270
|
*/
|
|
487
271
|
export declare function hostActionStepsForClient(steps: readonly HostActionStep[] | undefined | null): HostActionStep[];
|
|
272
|
+
export type HostActionStepType = HostActionStep['type'];
|
|
488
273
|
/**
|
|
489
|
-
*
|
|
490
|
-
*
|
|
491
|
-
* show/hide, class toggles, sticky nav, navigation, and client-only
|
|
492
|
-
* alerts. They carry NO server cost and touch NO data, so they run on
|
|
493
|
-
* every plan (the `interactions` feature, on by default everywhere).
|
|
494
|
-
*
|
|
495
|
-
* The powerful client steps stay behind the `actions` entitlement:
|
|
496
|
-
* `showOverlay` (marketing overlays), `showHtml` (arbitrary HTML
|
|
497
|
-
* injection), and `trackGaEvent` (analytics). `runJs` keeps its own
|
|
498
|
-
* higher `webhooks` (Business) gate. Server steps
|
|
499
|
-
* (sendEmail/notifyAdmins/enrollList/updateDataset/assignCampaign) are
|
|
500
|
-
* re-checked against `actions` server-side in `runEventActions`.
|
|
501
|
-
*/
|
|
502
|
-
export declare const BASIC_CLIENT_ACTION_STEP_TYPES: ReadonlySet<HostActionStepType>;
|
|
503
|
-
/** A client step available on all plans (no `actions` entitlement). */
|
|
504
|
-
export declare function isBasicClientActionStep(step: HostActionStep): boolean;
|
|
505
|
-
/**
|
|
506
|
-
* Whether a client step may run for the given entitlement tier (AGL-577).
|
|
507
|
-
* This is the single source of truth the page enricher uses to trim the
|
|
508
|
-
* client-automation payload per plan:
|
|
509
|
-
*
|
|
510
|
-
* - Basic presentational steps → always (every plan).
|
|
511
|
-
* - `runJs` → `allowJs` (Business `webhooks` tier).
|
|
512
|
-
* - Remaining advanced client steps (overlay / showHtml / analytics) →
|
|
513
|
-
* `actionsEntitled` (`actions` tier).
|
|
514
|
-
*
|
|
515
|
-
* Server steps are not client steps and always return false here; they
|
|
516
|
-
* are dispatched and re-authorized server-side.
|
|
274
|
+
* `hosts/{hostId}/actions/{id}` doc: a site interaction whose steps may be
|
|
275
|
+
* the automation's server steps as well as the platform's client steps.
|
|
517
276
|
*/
|
|
518
|
-
export
|
|
519
|
-
actionsEntitled: boolean;
|
|
520
|
-
allowJs: boolean;
|
|
521
|
-
}): boolean;
|
|
522
|
-
export type HostActionStepType = HostActionStep['type'];
|
|
523
|
-
/** `hosts/{hostId}/actions/{id}` doc. */
|
|
524
|
-
export interface HostAction {
|
|
525
|
-
name: string;
|
|
526
|
-
trigger: HostActionTrigger;
|
|
527
|
-
steps: HostActionStep[];
|
|
528
|
-
/** Disabled actions never run; new actions default enabled. */
|
|
529
|
-
enabled?: boolean;
|
|
277
|
+
export interface HostAction extends SiteInteraction<HostActionStep> {
|
|
530
278
|
/**
|
|
531
279
|
* The recipe this action was installed from or begun as (AGL-2639), or
|
|
532
280
|
* `null` for one begun blank. Absent on a document from before the stamp
|
|
@@ -535,53 +283,6 @@ export interface HostAction {
|
|
|
535
283
|
*/
|
|
536
284
|
recipe?: CrmActionRecipeId | null;
|
|
537
285
|
}
|
|
538
|
-
export declare const ACTION_MAX_STEPS = 10;
|
|
539
|
-
/** Custom-event chaining depth cap (mirrors CROSS_MAX_DEPTH). */
|
|
540
|
-
export declare const ACTION_MAX_EVENT_DEPTH = 3;
|
|
541
|
-
/**
|
|
542
|
-
* Cap on the parameters one `trackGaEvent` step may carry (AGL-1587).
|
|
543
|
-
*
|
|
544
|
-
* Not a storage concern. These pairs are the least trustworthy analytics
|
|
545
|
-
* input on the platform — both halves are typed by a site author and land in
|
|
546
|
-
* that site's own GA4 property — and a bounded list is one an author can read
|
|
547
|
-
* back in full before publishing, which is the only review a parameter ever
|
|
548
|
-
* gets. GA4 caps custom parameters per event as well and drops the overflow
|
|
549
|
-
* without saying so, so an unbounded editor would let an author configure
|
|
550
|
-
* parameters that are never delivered and never explained. Ten, the same
|
|
551
|
-
* ceiling {@link ACTION_MAX_STEPS} puts on the step list itself.
|
|
552
|
-
*/
|
|
553
|
-
export declare const ACTION_MAX_EVENT_PARAMS = 10;
|
|
554
|
-
/**
|
|
555
|
-
* Longest analytics parameter NAME GA4 accepts; it drops a longer one on
|
|
556
|
-
* arrival, so a name over this is silence rather than a truncated dimension.
|
|
557
|
-
* The value half is capped by `ANALYTICS_PARAM_MAX_LENGTH`, which truncates
|
|
558
|
-
* instead of dropping.
|
|
559
|
-
*/
|
|
560
|
-
export declare const ACTION_EVENT_PARAM_NAME_MAX_LENGTH = 40;
|
|
561
|
-
/** Self-dismiss triggers for shown elements (AGL-589). */
|
|
562
|
-
export declare const ELEMENT_DISMISS_OPTIONS: readonly ["escape", "outsideClick"];
|
|
563
|
-
export type ElementDismissOption = (typeof ELEMENT_DISMISS_OPTIONS)[number];
|
|
564
|
-
/** Visibility grace-delay ceiling — enough for hover travel, no dead UIs. */
|
|
565
|
-
export declare const ELEMENT_VISIBILITY_MAX_DELAY_MS = 5000;
|
|
566
|
-
/**
|
|
567
|
-
* How a `scrollTo` step moves the page. Stored in documents; never rename a
|
|
568
|
-
* value. `instant` rather than the DOM's `auto`, because `auto` defers to the
|
|
569
|
-
* site's CSS `scroll-behavior` — a site that sets `smooth` there would animate
|
|
570
|
-
* a scroll the author asked to be instant.
|
|
571
|
-
*/
|
|
572
|
-
export declare const SCROLL_TO_BEHAVIORS: readonly ["smooth", "instant"];
|
|
573
|
-
export type ScrollToBehavior = (typeof SCROLL_TO_BEHAVIORS)[number];
|
|
574
|
-
/**
|
|
575
|
-
* The largest offset a `scrollTo` step may leave above its target.
|
|
576
|
-
*
|
|
577
|
-
* The offset exists to clear a sticky header, which is tens of pixels and
|
|
578
|
-
* rarely more than a few hundred with an announcement bar stacked on it. A
|
|
579
|
-
* thousand leaves room for any header while still refusing the extra digit
|
|
580
|
-
* that would park the target off the bottom of the screen.
|
|
581
|
-
*/
|
|
582
|
-
export declare const SCROLL_TO_MAX_OFFSET_PX = 1000;
|
|
583
|
-
/** Custom event names: short, no collision with built-ins. */
|
|
584
|
-
export declare const CUSTOM_EVENT_PATTERN: RegExp;
|
|
585
286
|
/**
|
|
586
287
|
* The shortest and longest a flow may wait.
|
|
587
288
|
*
|
|
@@ -595,54 +296,7 @@ export declare const CUSTOM_EVENT_PATTERN: RegExp;
|
|
|
595
296
|
*/
|
|
596
297
|
export declare const FLOW_WAIT_MIN_MINUTES = 1;
|
|
597
298
|
export declare const FLOW_WAIT_MAX_MINUTES: number;
|
|
598
|
-
/**
|
|
599
|
-
* The attribute names an interaction may write (AGL-2546).
|
|
600
|
-
*
|
|
601
|
-
* An unrestricted attribute setter is a self-XSS vector authored through the
|
|
602
|
-
* interactions UI: it reaches `href`, `src`, `onclick`, `formaction` and
|
|
603
|
-
* `style`, and on a site with collaborators the author and the victim need
|
|
604
|
-
* not be the same person. `aria-*` and `data-*` carry the entire
|
|
605
|
-
* accessibility use case and none of that exposure.
|
|
606
|
-
*
|
|
607
|
-
* Deliberately NOT solved by an entitlement gate. `runJs` is Business-gated
|
|
608
|
-
* because it is dangerous at any tier; this has to work on every plan,
|
|
609
|
-
* because a screen-reader user's access to a menu is not a paid feature.
|
|
610
|
-
*/
|
|
611
|
-
export declare const INTERACTION_ATTRIBUTE_NAME_PATTERN: RegExp;
|
|
612
|
-
/**
|
|
613
|
-
* Whether an interaction is allowed to write this attribute name.
|
|
614
|
-
*
|
|
615
|
-
* Case-insensitive because HTML attribute names are, and a rejected name is
|
|
616
|
-
* a no-op rather than an error: a step that cannot run must not break the
|
|
617
|
-
* steps after it in the same automation.
|
|
618
|
-
*/
|
|
619
|
-
export declare function isInteractionAttributeAllowed(name: unknown): boolean;
|
|
620
299
|
export declare const HOST_ACTION_STEP_LABELS: Record<HostActionStepType, string>;
|
|
621
|
-
/**
|
|
622
|
-
* Past-tense phrases for a run summary (AGL-2171).
|
|
623
|
-
*
|
|
624
|
-
* `HOST_ACTION_STEP_LABELS` above names what a step WILL do, in the
|
|
625
|
-
* imperative, for a `Do` select — "Send an email". A run history is the
|
|
626
|
-
* opposite tense and a different audience: it says what already happened,
|
|
627
|
-
* on one line, several steps at a time. `/product/workflows` advertises
|
|
628
|
-
* exactly that shape — `Sent email · saved to Leads · webhook 200`.
|
|
629
|
-
*
|
|
630
|
-
* Two maps rather than one derived from the other, because "Send a webhook
|
|
631
|
-
* (Business)" cannot be mechanically turned into "webhook" — the plan
|
|
632
|
-
* suffix is part of the picker's label and has no business in a log line.
|
|
633
|
-
* Only the steps a SERVER run can perform appear here; the client-side
|
|
634
|
-
* steps run in the visitor's browser and never reach the activity write.
|
|
635
|
-
*/
|
|
636
|
-
export declare const HOST_ACTION_STEP_OUTCOMES: Partial<Record<HostActionStepType, string>>;
|
|
637
|
-
/**
|
|
638
|
-
* One step's line in a run summary, with the detail that makes it useful.
|
|
639
|
-
*
|
|
640
|
-
* `saved to Leads` beats `saved to dataset`, and `webhook 200` beats
|
|
641
|
-
* `webhook` — the status code is the entire reason anyone opens a run
|
|
642
|
-
* history after a webhook, and it was being discarded on the line it
|
|
643
|
-
* arrived.
|
|
644
|
-
*/
|
|
645
|
-
export declare function describeStepOutcome(type: HostActionStepType, detail?: string): string;
|
|
646
300
|
/** A whole number of minutes inside the wait band. */
|
|
647
301
|
export declare function isFlowWaitMinutes(value: unknown): boolean;
|
|
648
302
|
/** True for a custom (non-built-in) event name an action may fire. */
|
|
@@ -652,66 +306,5 @@ export declare function isCustomEventName(event: string): boolean;
|
|
|
652
306
|
* Server and console share this so bad steps never persist or run.
|
|
653
307
|
*/
|
|
654
308
|
export declare function validateHostAction(action: HostAction): string | null;
|
|
655
|
-
/**
|
|
656
|
-
export interface HostActionAlert {
|
|
657
|
-
message: string;
|
|
658
|
-
severity: 'info' | 'success' | 'warning' | 'error';
|
|
659
|
-
}
|
|
660
|
-
/**
|
|
661
|
-
* Webhooks (AGL-149) at `hosts/{hostId}/webhooks/{id}`. Outbound entries
|
|
662
|
-
* are targets a `webhookPost` action step delivers to (HMAC-signed);
|
|
663
|
-
* inbound entries mint `/api/hooks/{hostId}/{hookId}` endpoints that run
|
|
664
|
-
* a workflow with the posted JSON in scope. Business tier (`webhooks`
|
|
665
|
-
* flag); Pro can be enabled per-tenant via entitlement overrides.
|
|
666
|
-
*/
|
|
667
|
-
export interface HostWebhook {
|
|
668
|
-
name: string;
|
|
669
|
-
direction: 'outbound' | 'inbound';
|
|
670
|
-
/** Outbound delivery URL (https only; checked again at send time). */
|
|
671
|
-
url?: string;
|
|
672
|
-
/** Shared secret: signs outbound bodies, verifies inbound callers. */
|
|
673
|
-
secret?: string;
|
|
674
|
-
/** Inbound: workflow (by name) enrolled with the payload in scope. */
|
|
675
|
-
workflowName?: string;
|
|
676
|
-
enabled?: boolean;
|
|
677
|
-
}
|
|
309
|
+
/** The most webhooks one site keeps; the site create route enforces it. */
|
|
678
310
|
export declare const WEBHOOK_MAX_PER_HOST = 5;
|
|
679
|
-
/**
|
|
680
|
-
* How many LIVE action documents one host may hold (AGL-2266).
|
|
681
|
-
*
|
|
682
|
-
* `hosts/{hostId}/actions` was in NO exclusion list in
|
|
683
|
-
* `cloud/firebase-firestore.rules`, so the host catch-all's `allow create`
|
|
684
|
-
* granted it to any editor, client-direct, on any plan — and the import
|
|
685
|
-
* route's own table said so in as many words: *"no `RESOURCES` entry and no
|
|
686
|
-
* quota key anywhere; all three creators write the document client-direct."*
|
|
687
|
-
* A free org could therefore mint unbounded Firestore documents from the
|
|
688
|
-
* browser against a $0 subscription. Unbounded infrastructure, not a bypass of
|
|
689
|
-
* anything we sell, which is `WEBHOOK_MAX_PER_HOST`'s (AGL-1360) and
|
|
690
|
-
* `NON_PAGE_SCREEN_MAX_PER_HOST`'s (AGL-1399) shape exactly: a flat PLATFORM
|
|
691
|
-
* cap with no `OrgEntitlements` key, no variation by plan, and nothing on the
|
|
692
|
-
* price list to explain.
|
|
693
|
-
*
|
|
694
|
-
* ## Not gated on the `actions` entitlement, deliberately
|
|
695
|
-
*
|
|
696
|
-
* `actions` is a Pro feature and `interactions` is free, and BOTH write this
|
|
697
|
-
* collection — the interaction builder and the besigner's preset wiring create
|
|
698
|
-
* the same document type the Pro actions card does. Gating creation on the
|
|
699
|
-
* paid flag would take element interactions away from every free and starter
|
|
700
|
-
* site, which is a pricing change wearing a cap's clothes. The runtime already
|
|
701
|
-
* checks the entitlement where it decides what may RUN
|
|
702
|
-
* (`run-event-actions.ts`), which is the right place for it.
|
|
703
|
-
*
|
|
704
|
-
* ## Why 500
|
|
705
|
-
*
|
|
706
|
-
* Sized to the busiest plausible site rather than to today's data. An action
|
|
707
|
-
* is authored per interactive element, so a heavy marketing site with dropdown
|
|
708
|
-
* choreography on every section reaches tens; presets wire a handful at a
|
|
709
|
-
* time. 500 is far past anything authoring produces and well short of what a
|
|
710
|
-
* script in a loop wants, which is the only property a flat cap needs. Live
|
|
711
|
-
* documents only — the interactions provider soft-deletes with `deletedAt`, so
|
|
712
|
-
* counting tombstones would be AGL-1173's bug one collection over, where
|
|
713
|
-
* removing an interaction never frees its slot.
|
|
714
|
-
*/
|
|
715
|
-
export declare const ACTIONS_MAX_PER_HOST = 500;
|
|
716
|
-
/** Outbound URLs must be public https — first-line SSRF guard. */
|
|
717
|
-
export declare const WEBHOOK_URL_PATTERN: RegExp;
|