@aglyn/aglyn 1.0.0-beta.143
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/LICENSE +201 -0
- package/README.md +11 -0
- package/package.json +66 -0
- package/src/index.d.ts +25 -0
- package/src/index.js +26 -0
- package/src/index.js.map +1 -0
- package/src/lib/aglyn.d.ts +31 -0
- package/src/lib/aglyn.js +114 -0
- package/src/lib/aglyn.js.map +1 -0
- package/src/lib/app-utils/abuse-report.d.ts +193 -0
- package/src/lib/app-utils/abuse-report.js +321 -0
- package/src/lib/app-utils/abuse-report.js.map +1 -0
- package/src/lib/app-utils/accept-negotiation.d.ts +129 -0
- package/src/lib/app-utils/accept-negotiation.js +266 -0
- package/src/lib/app-utils/accept-negotiation.js.map +1 -0
- package/src/lib/app-utils/account-emails.d.ts +263 -0
- package/src/lib/app-utils/account-emails.js +264 -0
- package/src/lib/app-utils/account-emails.js.map +1 -0
- package/src/lib/app-utils/actions.d.ts +717 -0
- package/src/lib/app-utils/actions.js +1031 -0
- package/src/lib/app-utils/actions.js.map +1 -0
- package/src/lib/app-utils/activity-presenter.d.ts +152 -0
- package/src/lib/app-utils/activity-presenter.js +326 -0
- package/src/lib/app-utils/activity-presenter.js.map +1 -0
- package/src/lib/app-utils/advertising-tag-mounts.d.ts +133 -0
- package/src/lib/app-utils/advertising-tag-mounts.js +118 -0
- package/src/lib/app-utils/advertising-tag-mounts.js.map +1 -0
- package/src/lib/app-utils/advertising-tags.d.ts +307 -0
- package/src/lib/app-utils/advertising-tags.js +525 -0
- package/src/lib/app-utils/advertising-tags.js.map +1 -0
- package/src/lib/app-utils/agent-api-catalog.d.ts +94 -0
- package/src/lib/app-utils/agent-api-catalog.js +106 -0
- package/src/lib/app-utils/agent-api-catalog.js.map +1 -0
- package/src/lib/app-utils/agent-openapi.d.ts +103 -0
- package/src/lib/app-utils/agent-openapi.js +1128 -0
- package/src/lib/app-utils/agent-openapi.js.map +1 -0
- package/src/lib/app-utils/analytics-beacon.d.ts +154 -0
- package/src/lib/app-utils/analytics-beacon.js +152 -0
- package/src/lib/app-utils/analytics-beacon.js.map +1 -0
- package/src/lib/app-utils/analytics-environment.d.ts +133 -0
- package/src/lib/app-utils/analytics-environment.js +152 -0
- package/src/lib/app-utils/analytics-environment.js.map +1 -0
- package/src/lib/app-utils/analytics-events.d.ts +744 -0
- package/src/lib/app-utils/analytics-events.js +650 -0
- package/src/lib/app-utils/analytics-events.js.map +1 -0
- package/src/lib/app-utils/analytics-link-clicks.d.ts +102 -0
- package/src/lib/app-utils/analytics-link-clicks.js +267 -0
- package/src/lib/app-utils/analytics-link-clicks.js.map +1 -0
- package/src/lib/app-utils/analytics-path-key.d.ts +46 -0
- package/src/lib/app-utils/analytics-path-key.js +46 -0
- package/src/lib/app-utils/analytics-path-key.js.map +1 -0
- package/src/lib/app-utils/api-adapter.d.ts +47 -0
- package/src/lib/app-utils/api-adapter.js +367 -0
- package/src/lib/app-utils/api-adapter.js.map +1 -0
- package/src/lib/app-utils/api-idempotency.d.ts +169 -0
- package/src/lib/app-utils/api-idempotency.js +213 -0
- package/src/lib/app-utils/api-idempotency.js.map +1 -0
- package/src/lib/app-utils/api-plugins.d.ts +210 -0
- package/src/lib/app-utils/api-plugins.js +221 -0
- package/src/lib/app-utils/api-plugins.js.map +1 -0
- package/src/lib/app-utils/assist-credits.d.ts +482 -0
- package/src/lib/app-utils/assist-credits.js +509 -0
- package/src/lib/app-utils/assist-credits.js.map +1 -0
- package/src/lib/app-utils/attribution-attribute.d.ts +34 -0
- package/src/lib/app-utils/attribution-attribute.js +34 -0
- package/src/lib/app-utils/attribution-attribute.js.map +1 -0
- package/src/lib/app-utils/attribution-guard.d.ts +130 -0
- package/src/lib/app-utils/attribution-guard.js +410 -0
- package/src/lib/app-utils/attribution-guard.js.map +1 -0
- package/src/lib/app-utils/author-css.d.ts +123 -0
- package/src/lib/app-utils/author-css.js +275 -0
- package/src/lib/app-utils/author-css.js.map +1 -0
- package/src/lib/app-utils/author-html-markdown.d.ts +31 -0
- package/src/lib/app-utils/author-html-markdown.js +497 -0
- package/src/lib/app-utils/author-html-markdown.js.map +1 -0
- package/src/lib/app-utils/author-html.d.ts +135 -0
- package/src/lib/app-utils/author-html.js +1037 -0
- package/src/lib/app-utils/author-html.js.map +1 -0
- package/src/lib/app-utils/automation-placeholders.d.ts +72 -0
- package/src/lib/app-utils/automation-placeholders.js +207 -0
- package/src/lib/app-utils/automation-placeholders.js.map +1 -0
- package/src/lib/app-utils/bandwidth-cap.d.ts +183 -0
- package/src/lib/app-utils/bandwidth-cap.js +193 -0
- package/src/lib/app-utils/bandwidth-cap.js.map +1 -0
- package/src/lib/app-utils/binding-token-catalog.d.ts +82 -0
- package/src/lib/app-utils/binding-token-catalog.js +293 -0
- package/src/lib/app-utils/binding-token-catalog.js.map +1 -0
- package/src/lib/app-utils/binding-tokens.d.ts +157 -0
- package/src/lib/app-utils/binding-tokens.js +251 -0
- package/src/lib/app-utils/binding-tokens.js.map +1 -0
- package/src/lib/app-utils/breadcrumb-json-ld.d.ts +57 -0
- package/src/lib/app-utils/breadcrumb-json-ld.js +67 -0
- package/src/lib/app-utils/breadcrumb-json-ld.js.map +1 -0
- package/src/lib/app-utils/campaign-attribution.d.ts +117 -0
- package/src/lib/app-utils/campaign-attribution.js +162 -0
- package/src/lib/app-utils/campaign-attribution.js.map +1 -0
- package/src/lib/app-utils/campaign-forwarding.d.ts +220 -0
- package/src/lib/app-utils/campaign-forwarding.js +332 -0
- package/src/lib/app-utils/campaign-forwarding.js.map +1 -0
- package/src/lib/app-utils/campaign-membership.d.ts +109 -0
- package/src/lib/app-utils/campaign-membership.js +176 -0
- package/src/lib/app-utils/campaign-membership.js.map +1 -0
- package/src/lib/app-utils/campaign-touch.d.ts +206 -0
- package/src/lib/app-utils/campaign-touch.js +326 -0
- package/src/lib/app-utils/campaign-touch.js.map +1 -0
- package/src/lib/app-utils/child-contract-compose.d.ts +28 -0
- package/src/lib/app-utils/child-contract-compose.js +140 -0
- package/src/lib/app-utils/child-contract-compose.js.map +1 -0
- package/src/lib/app-utils/child-contract.d.ts +129 -0
- package/src/lib/app-utils/child-contract.js +153 -0
- package/src/lib/app-utils/child-contract.js.map +1 -0
- package/src/lib/app-utils/collection-delete.d.ts +113 -0
- package/src/lib/app-utils/collection-delete.js +120 -0
- package/src/lib/app-utils/collection-delete.js.map +1 -0
- package/src/lib/app-utils/collection-entries.d.ts +833 -0
- package/src/lib/app-utils/collection-entries.js +1285 -0
- package/src/lib/app-utils/collection-entries.js.map +1 -0
- package/src/lib/app-utils/collection-entry-date.d.ts +129 -0
- package/src/lib/app-utils/collection-entry-date.js +183 -0
- package/src/lib/app-utils/collection-entry-date.js.map +1 -0
- package/src/lib/app-utils/collection-kind.d.ts +55 -0
- package/src/lib/app-utils/collection-kind.js +69 -0
- package/src/lib/app-utils/collection-kind.js.map +1 -0
- package/src/lib/app-utils/collection-slug.d.ts +79 -0
- package/src/lib/app-utils/collection-slug.js +70 -0
- package/src/lib/app-utils/collection-slug.js.map +1 -0
- package/src/lib/app-utils/compose-layout-nodes.d.ts +147 -0
- package/src/lib/app-utils/compose-layout-nodes.js +261 -0
- package/src/lib/app-utils/compose-layout-nodes.js.map +1 -0
- package/src/lib/app-utils/compose-layout-props.d.ts +71 -0
- package/src/lib/app-utils/compose-layout-props.js +61 -0
- package/src/lib/app-utils/compose-layout-props.js.map +1 -0
- package/src/lib/app-utils/compose-reusable-components.d.ts +504 -0
- package/src/lib/app-utils/compose-reusable-components.js +1366 -0
- package/src/lib/app-utils/compose-reusable-components.js.map +1 -0
- package/src/lib/app-utils/compress.d.ts +35 -0
- package/src/lib/app-utils/compress.js +38 -0
- package/src/lib/app-utils/compress.js.map +1 -0
- package/src/lib/app-utils/consent-banner-ui.d.ts +226 -0
- package/src/lib/app-utils/consent-banner-ui.js +583 -0
- package/src/lib/app-utils/consent-banner-ui.js.map +1 -0
- package/src/lib/app-utils/consent-groups.d.ts +189 -0
- package/src/lib/app-utils/consent-groups.js +219 -0
- package/src/lib/app-utils/consent-groups.js.map +1 -0
- package/src/lib/app-utils/consent-preferences-dialog.d.ts +58 -0
- package/src/lib/app-utils/consent-preferences-dialog.js +106 -0
- package/src/lib/app-utils/consent-preferences-dialog.js.map +1 -0
- package/src/lib/app-utils/console-record-links.d.ts +163 -0
- package/src/lib/app-utils/console-record-links.js +178 -0
- package/src/lib/app-utils/console-record-links.js.map +1 -0
- package/src/lib/app-utils/console-routes.d.ts +658 -0
- package/src/lib/app-utils/console-routes.js +489 -0
- package/src/lib/app-utils/console-routes.js.map +1 -0
- package/src/lib/app-utils/console-widget-slot-context.d.ts +46 -0
- package/src/lib/app-utils/console-widget-slot-context.js +23 -0
- package/src/lib/app-utils/console-widget-slot-context.js.map +1 -0
- package/src/lib/app-utils/contact-custom-fields.d.ts +191 -0
- package/src/lib/app-utils/contact-custom-fields.js +349 -0
- package/src/lib/app-utils/contact-custom-fields.js.map +1 -0
- package/src/lib/app-utils/contact-holder.d.ts +52 -0
- package/src/lib/app-utils/contact-holder.js +98 -0
- package/src/lib/app-utils/contact-holder.js.map +1 -0
- package/src/lib/app-utils/contact-merge.d.ts +136 -0
- package/src/lib/app-utils/contact-merge.js +379 -0
- package/src/lib/app-utils/contact-merge.js.map +1 -0
- package/src/lib/app-utils/contacts.d.ts +554 -0
- package/src/lib/app-utils/contacts.js +401 -0
- package/src/lib/app-utils/contacts.js.map +1 -0
- package/src/lib/app-utils/content-author-profile.d.ts +68 -0
- package/src/lib/app-utils/content-author-profile.js +118 -0
- package/src/lib/app-utils/content-author-profile.js.map +1 -0
- package/src/lib/app-utils/content-authors.d.ts +662 -0
- package/src/lib/app-utils/content-authors.js +771 -0
- package/src/lib/app-utils/content-authors.js.map +1 -0
- package/src/lib/app-utils/content-schema-type.d.ts +81 -0
- package/src/lib/app-utils/content-schema-type.js +87 -0
- package/src/lib/app-utils/content-schema-type.js.map +1 -0
- package/src/lib/app-utils/contexts.d.ts +35 -0
- package/src/lib/app-utils/contexts.js +35 -0
- package/src/lib/app-utils/contexts.js.map +1 -0
- package/src/lib/app-utils/create-resource-uid.d.ts +18 -0
- package/src/lib/app-utils/create-resource-uid.js +23 -0
- package/src/lib/app-utils/create-resource-uid.js.map +1 -0
- package/src/lib/app-utils/crm-booking.d.ts +75 -0
- package/src/lib/app-utils/crm-booking.js +133 -0
- package/src/lib/app-utils/crm-booking.js.map +1 -0
- package/src/lib/app-utils/crm-csv.d.ts +232 -0
- package/src/lib/app-utils/crm-csv.js +432 -0
- package/src/lib/app-utils/crm-csv.js.map +1 -0
- package/src/lib/app-utils/crm-digest.d.ts +179 -0
- package/src/lib/app-utils/crm-digest.js +271 -0
- package/src/lib/app-utils/crm-digest.js.map +1 -0
- package/src/lib/app-utils/crm-email-templates.d.ts +172 -0
- package/src/lib/app-utils/crm-email-templates.js +382 -0
- package/src/lib/app-utils/crm-email-templates.js.map +1 -0
- package/src/lib/app-utils/crm-inbound.d.ts +245 -0
- package/src/lib/app-utils/crm-inbound.js +407 -0
- package/src/lib/app-utils/crm-inbound.js.map +1 -0
- package/src/lib/app-utils/crm-kinds.d.ts +73 -0
- package/src/lib/app-utils/crm-kinds.js +92 -0
- package/src/lib/app-utils/crm-kinds.js.map +1 -0
- package/src/lib/app-utils/crm-next-activity.d.ts +107 -0
- package/src/lib/app-utils/crm-next-activity.js +140 -0
- package/src/lib/app-utils/crm-next-activity.js.map +1 -0
- package/src/lib/app-utils/crm-reports.d.ts +479 -0
- package/src/lib/app-utils/crm-reports.js +680 -0
- package/src/lib/app-utils/crm-reports.js.map +1 -0
- package/src/lib/app-utils/crm-task-reminders.d.ts +129 -0
- package/src/lib/app-utils/crm-task-reminders.js +139 -0
- package/src/lib/app-utils/crm-task-reminders.js.map +1 -0
- package/src/lib/app-utils/crm.d.ts +1546 -0
- package/src/lib/app-utils/crm.js +1814 -0
- package/src/lib/app-utils/crm.js.map +1 -0
- package/src/lib/app-utils/csp-report.d.ts +84 -0
- package/src/lib/app-utils/csp-report.js +177 -0
- package/src/lib/app-utils/csp-report.js.map +1 -0
- package/src/lib/app-utils/csv-import.d.ts +192 -0
- package/src/lib/app-utils/csv-import.js +279 -0
- package/src/lib/app-utils/csv-import.js.map +1 -0
- package/src/lib/app-utils/dataset-csv.d.ts +109 -0
- package/src/lib/app-utils/dataset-csv.js +235 -0
- package/src/lib/app-utils/dataset-csv.js.map +1 -0
- package/src/lib/app-utils/dataset-models.d.ts +194 -0
- package/src/lib/app-utils/dataset-models.js +409 -0
- package/src/lib/app-utils/dataset-models.js.map +1 -0
- package/src/lib/app-utils/dataset-query.d.ts +57 -0
- package/src/lib/app-utils/dataset-query.js +126 -0
- package/src/lib/app-utils/dataset-query.js.map +1 -0
- package/src/lib/app-utils/datasets.d.ts +136 -0
- package/src/lib/app-utils/datasets.js +177 -0
- package/src/lib/app-utils/datasets.js.map +1 -0
- package/src/lib/app-utils/decompress.d.ts +36 -0
- package/src/lib/app-utils/decompress.js +32 -0
- package/src/lib/app-utils/decompress.js.map +1 -0
- package/src/lib/app-utils/dedicated-sending-domain.d.ts +47 -0
- package/src/lib/app-utils/dedicated-sending-domain.js +114 -0
- package/src/lib/app-utils/dedicated-sending-domain.js.map +1 -0
- package/src/lib/app-utils/deferred-image.d.ts +86 -0
- package/src/lib/app-utils/deferred-image.js +83 -0
- package/src/lib/app-utils/deferred-image.js.map +1 -0
- package/src/lib/app-utils/definition-canvas-tree.d.ts +61 -0
- package/src/lib/app-utils/definition-canvas-tree.js +126 -0
- package/src/lib/app-utils/definition-canvas-tree.js.map +1 -0
- package/src/lib/app-utils/deployment-shape.d.ts +167 -0
- package/src/lib/app-utils/deployment-shape.js +238 -0
- package/src/lib/app-utils/deployment-shape.js.map +1 -0
- package/src/lib/app-utils/detect-template-placeholders.d.ts +30 -0
- package/src/lib/app-utils/detect-template-placeholders.js +53 -0
- package/src/lib/app-utils/detect-template-placeholders.js.map +1 -0
- package/src/lib/app-utils/dmca-counter-notice.d.ts +185 -0
- package/src/lib/app-utils/dmca-counter-notice.js +277 -0
- package/src/lib/app-utils/dmca-counter-notice.js.map +1 -0
- package/src/lib/app-utils/docs-deflection.d.ts +156 -0
- package/src/lib/app-utils/docs-deflection.js +547 -0
- package/src/lib/app-utils/docs-deflection.js.map +1 -0
- package/src/lib/app-utils/docs-help.d.ts +57 -0
- package/src/lib/app-utils/docs-help.generated.d.ts +303 -0
- package/src/lib/app-utils/docs-help.generated.js +867 -0
- package/src/lib/app-utils/docs-help.generated.js.map +1 -0
- package/src/lib/app-utils/docs-help.js +46 -0
- package/src/lib/app-utils/docs-help.js.map +1 -0
- package/src/lib/app-utils/docs-index.generated.d.ts +29 -0
- package/src/lib/app-utils/docs-index.generated.js +8388 -0
- package/src/lib/app-utils/docs-index.generated.js.map +1 -0
- package/src/lib/app-utils/docs-retrieval.d.ts +67 -0
- package/src/lib/app-utils/docs-retrieval.js +188 -0
- package/src/lib/app-utils/docs-retrieval.js.map +1 -0
- package/src/lib/app-utils/document-landmark.d.ts +50 -0
- package/src/lib/app-utils/document-landmark.js +100 -0
- package/src/lib/app-utils/document-landmark.js.map +1 -0
- package/src/lib/app-utils/duplicate-resource.d.ts +101 -0
- package/src/lib/app-utils/duplicate-resource.js +206 -0
- package/src/lib/app-utils/duplicate-resource.js.map +1 -0
- package/src/lib/app-utils/dynamic-list-rule.d.ts +471 -0
- package/src/lib/app-utils/dynamic-list-rule.js +914 -0
- package/src/lib/app-utils/dynamic-list-rule.js.map +1 -0
- package/src/lib/app-utils/element-animation.d.ts +200 -0
- package/src/lib/app-utils/element-animation.js +233 -0
- package/src/lib/app-utils/element-animation.js.map +1 -0
- package/src/lib/app-utils/element-hidden-style.d.ts +46 -0
- package/src/lib/app-utils/element-hidden-style.js +48 -0
- package/src/lib/app-utils/element-hidden-style.js.map +1 -0
- package/src/lib/app-utils/element-ui.d.ts +243 -0
- package/src/lib/app-utils/element-ui.js +459 -0
- package/src/lib/app-utils/element-ui.js.map +1 -0
- package/src/lib/app-utils/email-starter-policy.d.ts +160 -0
- package/src/lib/app-utils/email-starter-policy.js +327 -0
- package/src/lib/app-utils/email-starter-policy.js.map +1 -0
- package/src/lib/app-utils/email-topics.d.ts +310 -0
- package/src/lib/app-utils/email-topics.js +336 -0
- package/src/lib/app-utils/email-topics.js.map +1 -0
- package/src/lib/app-utils/enabled-plugins-context.d.ts +100 -0
- package/src/lib/app-utils/enabled-plugins-context.js +113 -0
- package/src/lib/app-utils/enabled-plugins-context.js.map +1 -0
- package/src/lib/app-utils/ensure-canvas-root.d.ts +38 -0
- package/src/lib/app-utils/ensure-canvas-root.js +61 -0
- package/src/lib/app-utils/ensure-canvas-root.js.map +1 -0
- package/src/lib/app-utils/entity-picker-context.d.ts +199 -0
- package/src/lib/app-utils/entity-picker-context.js +93 -0
- package/src/lib/app-utils/entity-picker-context.js.map +1 -0
- package/src/lib/app-utils/error-beacon.d.ts +107 -0
- package/src/lib/app-utils/error-beacon.js +296 -0
- package/src/lib/app-utils/error-beacon.js.map +1 -0
- package/src/lib/app-utils/expand-repeatables.d.ts +172 -0
- package/src/lib/app-utils/expand-repeatables.js +299 -0
- package/src/lib/app-utils/expand-repeatables.js.map +1 -0
- package/src/lib/app-utils/foreign-script.d.ts +82 -0
- package/src/lib/app-utils/foreign-script.js +102 -0
- package/src/lib/app-utils/foreign-script.js.map +1 -0
- package/src/lib/app-utils/form-abuse-ceiling.d.ts +146 -0
- package/src/lib/app-utils/form-abuse-ceiling.js +158 -0
- package/src/lib/app-utils/form-abuse-ceiling.js.map +1 -0
- package/src/lib/app-utils/form-contract.d.ts +198 -0
- package/src/lib/app-utils/form-contract.js +282 -0
- package/src/lib/app-utils/form-contract.js.map +1 -0
- package/src/lib/app-utils/form-dataset-binding.d.ts +50 -0
- package/src/lib/app-utils/form-dataset-binding.js +74 -0
- package/src/lib/app-utils/form-dataset-binding.js.map +1 -0
- package/src/lib/app-utils/forms.d.ts +727 -0
- package/src/lib/app-utils/forms.js +777 -0
- package/src/lib/app-utils/forms.js.map +1 -0
- package/src/lib/app-utils/functions.d.ts +188 -0
- package/src/lib/app-utils/functions.js +529 -0
- package/src/lib/app-utils/functions.js.map +1 -0
- package/src/lib/app-utils/guarded-version-save.d.ts +91 -0
- package/src/lib/app-utils/guarded-version-save.js +131 -0
- package/src/lib/app-utils/guarded-version-save.js.map +1 -0
- package/src/lib/app-utils/health-report.d.ts +1766 -0
- package/src/lib/app-utils/health-report.js +2072 -0
- package/src/lib/app-utils/health-report.js.map +1 -0
- package/src/lib/app-utils/host-naming.d.ts +135 -0
- package/src/lib/app-utils/host-naming.js +188 -0
- package/src/lib/app-utils/host-naming.js.map +1 -0
- package/src/lib/app-utils/host-permissions.d.ts +76 -0
- package/src/lib/app-utils/host-permissions.js +119 -0
- package/src/lib/app-utils/host-permissions.js.map +1 -0
- package/src/lib/app-utils/host-tokens.d.ts +228 -0
- package/src/lib/app-utils/host-tokens.js +304 -0
- package/src/lib/app-utils/host-tokens.js.map +1 -0
- package/src/lib/app-utils/idp-profile.d.ts +83 -0
- package/src/lib/app-utils/idp-profile.js +268 -0
- package/src/lib/app-utils/idp-profile.js.map +1 -0
- package/src/lib/app-utils/image-upload-types.d.ts +49 -0
- package/src/lib/app-utils/image-upload-types.js +86 -0
- package/src/lib/app-utils/image-upload-types.js.map +1 -0
- package/src/lib/app-utils/index.d.ts +18 -0
- package/src/lib/app-utils/index.js +23 -0
- package/src/lib/app-utils/index.js.map +1 -0
- package/src/lib/app-utils/internal-traffic.d.ts +197 -0
- package/src/lib/app-utils/internal-traffic.js +288 -0
- package/src/lib/app-utils/internal-traffic.js.map +1 -0
- package/src/lib/app-utils/lineal-order.d.ts +62 -0
- package/src/lib/app-utils/lineal-order.js +65 -0
- package/src/lib/app-utils/lineal-order.js.map +1 -0
- package/src/lib/app-utils/link-references.d.ts +36 -0
- package/src/lib/app-utils/link-references.js +89 -0
- package/src/lib/app-utils/link-references.js.map +1 -0
- package/src/lib/app-utils/link-target-search-context.d.ts +123 -0
- package/src/lib/app-utils/link-target-search-context.js +221 -0
- package/src/lib/app-utils/link-target-search-context.js.map +1 -0
- package/src/lib/app-utils/list-assignment-policy.d.ts +169 -0
- package/src/lib/app-utils/list-assignment-policy.js +170 -0
- package/src/lib/app-utils/list-assignment-policy.js.map +1 -0
- package/src/lib/app-utils/list-import.d.ts +158 -0
- package/src/lib/app-utils/list-import.js +332 -0
- package/src/lib/app-utils/list-import.js.map +1 -0
- package/src/lib/app-utils/llms-txt.d.ts +104 -0
- package/src/lib/app-utils/llms-txt.js +144 -0
- package/src/lib/app-utils/llms-txt.js.map +1 -0
- package/src/lib/app-utils/local-storage-budget.d.ts +75 -0
- package/src/lib/app-utils/local-storage-budget.js +153 -0
- package/src/lib/app-utils/local-storage-budget.js.map +1 -0
- package/src/lib/app-utils/lockdown.d.ts +698 -0
- package/src/lib/app-utils/lockdown.js +929 -0
- package/src/lib/app-utils/lockdown.js.map +1 -0
- package/src/lib/app-utils/margin-utilization.d.ts +267 -0
- package/src/lib/app-utils/margin-utilization.js +351 -0
- package/src/lib/app-utils/margin-utilization.js.map +1 -0
- package/src/lib/app-utils/markdown-lite.d.ts +297 -0
- package/src/lib/app-utils/markdown-lite.js +705 -0
- package/src/lib/app-utils/markdown-lite.js.map +1 -0
- package/src/lib/app-utils/marketing-consent.d.ts +704 -0
- package/src/lib/app-utils/marketing-consent.js +783 -0
- package/src/lib/app-utils/marketing-consent.js.map +1 -0
- package/src/lib/app-utils/marketplace-listing-visibility.d.ts +120 -0
- package/src/lib/app-utils/marketplace-listing-visibility.js +139 -0
- package/src/lib/app-utils/marketplace-listing-visibility.js.map +1 -0
- package/src/lib/app-utils/marketplace-overrides.d.ts +271 -0
- package/src/lib/app-utils/marketplace-overrides.js +462 -0
- package/src/lib/app-utils/marketplace-overrides.js.map +1 -0
- package/src/lib/app-utils/marketplace-provenance.d.ts +150 -0
- package/src/lib/app-utils/marketplace-provenance.js +136 -0
- package/src/lib/app-utils/marketplace-provenance.js.map +1 -0
- package/src/lib/app-utils/marketplace-theme.d.ts +237 -0
- package/src/lib/app-utils/marketplace-theme.js +525 -0
- package/src/lib/app-utils/marketplace-theme.js.map +1 -0
- package/src/lib/app-utils/marketplace-update-state.d.ts +119 -0
- package/src/lib/app-utils/marketplace-update-state.js +132 -0
- package/src/lib/app-utils/marketplace-update-state.js.map +1 -0
- package/src/lib/app-utils/marketplace-verification.d.ts +95 -0
- package/src/lib/app-utils/marketplace-verification.js +81 -0
- package/src/lib/app-utils/marketplace-verification.js.map +1 -0
- package/src/lib/app-utils/measure-node-map.d.ts +76 -0
- package/src/lib/app-utils/measure-node-map.js +111 -0
- package/src/lib/app-utils/measure-node-map.js.map +1 -0
- package/src/lib/app-utils/media-alt.d.ts +55 -0
- package/src/lib/app-utils/media-alt.js +58 -0
- package/src/lib/app-utils/media-alt.js.map +1 -0
- package/src/lib/app-utils/media-asset-facts.d.ts +125 -0
- package/src/lib/app-utils/media-asset-facts.js +467 -0
- package/src/lib/app-utils/media-asset-facts.js.map +1 -0
- package/src/lib/app-utils/media-cdn-scope.d.ts +65 -0
- package/src/lib/app-utils/media-cdn-scope.js +75 -0
- package/src/lib/app-utils/media-cdn-scope.js.map +1 -0
- package/src/lib/app-utils/media-folders.d.ts +161 -0
- package/src/lib/app-utils/media-folders.js +230 -0
- package/src/lib/app-utils/media-folders.js.map +1 -0
- package/src/lib/app-utils/media-metadata.d.ts +277 -0
- package/src/lib/app-utils/media-metadata.js +388 -0
- package/src/lib/app-utils/media-metadata.js.map +1 -0
- package/src/lib/app-utils/media-picker-context.d.ts +93 -0
- package/src/lib/app-utils/media-picker-context.js +26 -0
- package/src/lib/app-utils/media-picker-context.js.map +1 -0
- package/src/lib/app-utils/media-quarantine.d.ts +247 -0
- package/src/lib/app-utils/media-quarantine.js +323 -0
- package/src/lib/app-utils/media-quarantine.js.map +1 -0
- package/src/lib/app-utils/media-ref.d.ts +661 -0
- package/src/lib/app-utils/media-ref.js +1055 -0
- package/src/lib/app-utils/media-ref.js.map +1 -0
- package/src/lib/app-utils/media-takedown-reach.d.ts +126 -0
- package/src/lib/app-utils/media-takedown-reach.js +143 -0
- package/src/lib/app-utils/media-takedown-reach.js.map +1 -0
- package/src/lib/app-utils/member-email-aliases.d.ts +180 -0
- package/src/lib/app-utils/member-email-aliases.js +217 -0
- package/src/lib/app-utils/member-email-aliases.js.map +1 -0
- package/src/lib/app-utils/merge-node-sx.d.ts +47 -0
- package/src/lib/app-utils/merge-node-sx.js +123 -0
- package/src/lib/app-utils/merge-node-sx.js.map +1 -0
- package/src/lib/app-utils/name-match.d.ts +155 -0
- package/src/lib/app-utils/name-match.js +175 -0
- package/src/lib/app-utils/name-match.js.map +1 -0
- package/src/lib/app-utils/name-search.d.ts +117 -0
- package/src/lib/app-utils/name-search.js +145 -0
- package/src/lib/app-utils/name-search.js.map +1 -0
- package/src/lib/app-utils/node-capabilities.d.ts +85 -0
- package/src/lib/app-utils/node-capabilities.js +88 -0
- package/src/lib/app-utils/node-capabilities.js.map +1 -0
- package/src/lib/app-utils/node-definition-sanitizer.d.ts +164 -0
- package/src/lib/app-utils/node-definition-sanitizer.js +402 -0
- package/src/lib/app-utils/node-definition-sanitizer.js.map +1 -0
- package/src/lib/app-utils/node-identity.d.ts +47 -0
- package/src/lib/app-utils/node-identity.js +50 -0
- package/src/lib/app-utils/node-identity.js.map +1 -0
- package/src/lib/app-utils/node-interactions.d.ts +102 -0
- package/src/lib/app-utils/node-interactions.js +192 -0
- package/src/lib/app-utils/node-interactions.js.map +1 -0
- package/src/lib/app-utils/node-url-policy.d.ts +54 -0
- package/src/lib/app-utils/node-url-policy.js +72 -0
- package/src/lib/app-utils/node-url-policy.js.map +1 -0
- package/src/lib/app-utils/notifications.d.ts +71 -0
- package/src/lib/app-utils/notifications.js +101 -0
- package/src/lib/app-utils/notifications.js.map +1 -0
- package/src/lib/app-utils/onboarding-deep-link.d.ts +120 -0
- package/src/lib/app-utils/onboarding-deep-link.js +142 -0
- package/src/lib/app-utils/onboarding-deep-link.js.map +1 -0
- package/src/lib/app-utils/operator-identity.d.ts +207 -0
- package/src/lib/app-utils/operator-identity.js +186 -0
- package/src/lib/app-utils/operator-identity.js.map +1 -0
- package/src/lib/app-utils/org-billing-doc.d.ts +231 -0
- package/src/lib/app-utils/org-billing-doc.js +238 -0
- package/src/lib/app-utils/org-billing-doc.js.map +1 -0
- package/src/lib/app-utils/org-override-reason.d.ts +100 -0
- package/src/lib/app-utils/org-override-reason.js +116 -0
- package/src/lib/app-utils/org-override-reason.js.map +1 -0
- package/src/lib/app-utils/org-permissions.d.ts +194 -0
- package/src/lib/app-utils/org-permissions.js +357 -0
- package/src/lib/app-utils/org-permissions.js.map +1 -0
- package/src/lib/app-utils/org-roles.d.ts +72 -0
- package/src/lib/app-utils/org-roles.js +131 -0
- package/src/lib/app-utils/org-roles.js.map +1 -0
- package/src/lib/app-utils/organizations.d.ts +407 -0
- package/src/lib/app-utils/organizations.js +511 -0
- package/src/lib/app-utils/organizations.js.map +1 -0
- package/src/lib/app-utils/page-header-actions-context.d.ts +83 -0
- package/src/lib/app-utils/page-header-actions-context.js +58 -0
- package/src/lib/app-utils/page-header-actions-context.js.map +1 -0
- package/src/lib/app-utils/page-header-record-context.d.ts +80 -0
- package/src/lib/app-utils/page-header-record-context.js +64 -0
- package/src/lib/app-utils/page-header-record-context.js.map +1 -0
- package/src/lib/app-utils/page-markdown.d.ts +103 -0
- package/src/lib/app-utils/page-markdown.js +385 -0
- package/src/lib/app-utils/page-markdown.js.map +1 -0
- package/src/lib/app-utils/paid-media-source.d.ts +90 -0
- package/src/lib/app-utils/paid-media-source.js +184 -0
- package/src/lib/app-utils/paid-media-source.js.map +1 -0
- package/src/lib/app-utils/palette-sx.d.ts +34 -0
- package/src/lib/app-utils/palette-sx.js +150 -0
- package/src/lib/app-utils/palette-sx.js.map +1 -0
- package/src/lib/app-utils/password-policy.d.ts +47 -0
- package/src/lib/app-utils/password-policy.js +46 -0
- package/src/lib/app-utils/password-policy.js.map +1 -0
- package/src/lib/app-utils/payments-configured.d.ts +84 -0
- package/src/lib/app-utils/payments-configured.js +88 -0
- package/src/lib/app-utils/payments-configured.js.map +1 -0
- package/src/lib/app-utils/person-erasure.d.ts +126 -0
- package/src/lib/app-utils/person-erasure.js +121 -0
- package/src/lib/app-utils/person-erasure.js.map +1 -0
- package/src/lib/app-utils/person-key.d.ts +32 -0
- package/src/lib/app-utils/person-key.js +62 -0
- package/src/lib/app-utils/person-key.js.map +1 -0
- package/src/lib/app-utils/plan-entitlements.d.ts +2756 -0
- package/src/lib/app-utils/plan-entitlements.js +4085 -0
- package/src/lib/app-utils/plan-entitlements.js.map +1 -0
- package/src/lib/app-utils/platform-ad-conversions.d.ts +122 -0
- package/src/lib/app-utils/platform-ad-conversions.js +174 -0
- package/src/lib/app-utils/platform-ad-conversions.js.map +1 -0
- package/src/lib/app-utils/platform-advertising-tags.d.ts +139 -0
- package/src/lib/app-utils/platform-advertising-tags.js +203 -0
- package/src/lib/app-utils/platform-advertising-tags.js.map +1 -0
- package/src/lib/app-utils/platform-brand.d.ts +151 -0
- package/src/lib/app-utils/platform-brand.js +175 -0
- package/src/lib/app-utils/platform-brand.js.map +1 -0
- package/src/lib/app-utils/platform-consent-default.d.ts +142 -0
- package/src/lib/app-utils/platform-consent-default.js +295 -0
- package/src/lib/app-utils/platform-consent-default.js.map +1 -0
- package/src/lib/app-utils/platform-marketing-consent.d.ts +151 -0
- package/src/lib/app-utils/platform-marketing-consent.js +182 -0
- package/src/lib/app-utils/platform-marketing-consent.js.map +1 -0
- package/src/lib/app-utils/platform-marketing-host.d.ts +33 -0
- package/src/lib/app-utils/platform-marketing-host.js +97 -0
- package/src/lib/app-utils/platform-marketing-host.js.map +1 -0
- package/src/lib/app-utils/platform-visitor-consent.d.ts +252 -0
- package/src/lib/app-utils/platform-visitor-consent.js +533 -0
- package/src/lib/app-utils/platform-visitor-consent.js.map +1 -0
- package/src/lib/app-utils/plugin-api-cross-origin.d.ts +61 -0
- package/src/lib/app-utils/plugin-api-cross-origin.js +202 -0
- package/src/lib/app-utils/plugin-api-cross-origin.js.map +1 -0
- package/src/lib/app-utils/plugin-api-rate-limit.d.ts +192 -0
- package/src/lib/app-utils/plugin-api-rate-limit.js +270 -0
- package/src/lib/app-utils/plugin-api-rate-limit.js.map +1 -0
- package/src/lib/app-utils/plugin-artifact-path.d.ts +32 -0
- package/src/lib/app-utils/plugin-artifact-path.js +33 -0
- package/src/lib/app-utils/plugin-artifact-path.js.map +1 -0
- package/src/lib/app-utils/plugin-bundle-checks.d.ts +148 -0
- package/src/lib/app-utils/plugin-bundle-checks.js +989 -0
- package/src/lib/app-utils/plugin-bundle-checks.js.map +1 -0
- package/src/lib/app-utils/plugin-manifest.d.ts +516 -0
- package/src/lib/app-utils/plugin-manifest.js +687 -0
- package/src/lib/app-utils/plugin-manifest.js.map +1 -0
- package/src/lib/app-utils/published-legal-pages.d.ts +71 -0
- package/src/lib/app-utils/published-legal-pages.js +90 -0
- package/src/lib/app-utils/published-legal-pages.js.map +1 -0
- package/src/lib/app-utils/publisher-agreement.d.ts +254 -0
- package/src/lib/app-utils/publisher-agreement.js +274 -0
- package/src/lib/app-utils/publisher-agreement.js.map +1 -0
- package/src/lib/app-utils/publisher-attestation.d.ts +99 -0
- package/src/lib/app-utils/publisher-attestation.js +158 -0
- package/src/lib/app-utils/publisher-attestation.js.map +1 -0
- package/src/lib/app-utils/recipient-email-render.d.ts +216 -0
- package/src/lib/app-utils/recipient-email-render.js +221 -0
- package/src/lib/app-utils/recipient-email-render.js.map +1 -0
- package/src/lib/app-utils/redispatch-caught-error.d.ts +38 -0
- package/src/lib/app-utils/redispatch-caught-error.js +46 -0
- package/src/lib/app-utils/redispatch-caught-error.js.map +1 -0
- package/src/lib/app-utils/registering-plugin.d.ts +19 -0
- package/src/lib/app-utils/registering-plugin.js +38 -0
- package/src/lib/app-utils/registering-plugin.js.map +1 -0
- package/src/lib/app-utils/release-flags.d.ts +283 -0
- package/src/lib/app-utils/release-flags.js +518 -0
- package/src/lib/app-utils/release-flags.js.map +1 -0
- package/src/lib/app-utils/repair-canvas-nodes.d.ts +130 -0
- package/src/lib/app-utils/repair-canvas-nodes.js +298 -0
- package/src/lib/app-utils/repair-canvas-nodes.js.map +1 -0
- package/src/lib/app-utils/repeat-infringer.d.ts +166 -0
- package/src/lib/app-utils/repeat-infringer.js +188 -0
- package/src/lib/app-utils/repeat-infringer.js.map +1 -0
- package/src/lib/app-utils/repeat-sources.d.ts +115 -0
- package/src/lib/app-utils/repeat-sources.js +86 -0
- package/src/lib/app-utils/repeat-sources.js.map +1 -0
- package/src/lib/app-utils/request-geo.d.ts +114 -0
- package/src/lib/app-utils/request-geo.js +247 -0
- package/src/lib/app-utils/request-geo.js.map +1 -0
- package/src/lib/app-utils/request-ip.d.ts +213 -0
- package/src/lib/app-utils/request-ip.js +344 -0
- package/src/lib/app-utils/request-ip.js.map +1 -0
- package/src/lib/app-utils/resolve-named-tokens.d.ts +26 -0
- package/src/lib/app-utils/resolve-named-tokens.js +59 -0
- package/src/lib/app-utils/resolve-named-tokens.js.map +1 -0
- package/src/lib/app-utils/responsive-typography-sx.d.ts +77 -0
- package/src/lib/app-utils/responsive-typography-sx.js +122 -0
- package/src/lib/app-utils/responsive-typography-sx.js.map +1 -0
- package/src/lib/app-utils/reusable-component-keys.d.ts +135 -0
- package/src/lib/app-utils/reusable-component-keys.js +140 -0
- package/src/lib/app-utils/reusable-component-keys.js.map +1 -0
- package/src/lib/app-utils/reusable-prop-values.d.ts +199 -0
- package/src/lib/app-utils/reusable-prop-values.js +494 -0
- package/src/lib/app-utils/reusable-prop-values.js.map +1 -0
- package/src/lib/app-utils/safe-json-ld.d.ts +29 -0
- package/src/lib/app-utils/safe-json-ld.js +37 -0
- package/src/lib/app-utils/safe-json-ld.js.map +1 -0
- package/src/lib/app-utils/sanitize-svg.d.ts +55 -0
- package/src/lib/app-utils/sanitize-svg.js +460 -0
- package/src/lib/app-utils/sanitize-svg.js.map +1 -0
- package/src/lib/app-utils/scheme-sx.d.ts +84 -0
- package/src/lib/app-utils/scheme-sx.js +148 -0
- package/src/lib/app-utils/scheme-sx.js.map +1 -0
- package/src/lib/app-utils/scope-tokens.d.ts +249 -0
- package/src/lib/app-utils/scope-tokens.js +331 -0
- package/src/lib/app-utils/scope-tokens.js.map +1 -0
- package/src/lib/app-utils/screen-link-context-value.d.ts +57 -0
- package/src/lib/app-utils/screen-link-context-value.js +43 -0
- package/src/lib/app-utils/screen-link-context-value.js.map +1 -0
- package/src/lib/app-utils/screen-link-context.d.ts +185 -0
- package/src/lib/app-utils/screen-link-context.js +304 -0
- package/src/lib/app-utils/screen-link-context.js.map +1 -0
- package/src/lib/app-utils/screen-link-value.d.ts +269 -0
- package/src/lib/app-utils/screen-link-value.js +384 -0
- package/src/lib/app-utils/screen-link-value.js.map +1 -0
- package/src/lib/app-utils/screen-route.d.ts +669 -0
- package/src/lib/app-utils/screen-route.js +751 -0
- package/src/lib/app-utils/screen-route.js.map +1 -0
- package/src/lib/app-utils/screen-seo-fields.d.ts +37 -0
- package/src/lib/app-utils/screen-seo-fields.js +42 -0
- package/src/lib/app-utils/screen-seo-fields.js.map +1 -0
- package/src/lib/app-utils/search-indexing.d.ts +162 -0
- package/src/lib/app-utils/search-indexing.js +207 -0
- package/src/lib/app-utils/search-indexing.js.map +1 -0
- package/src/lib/app-utils/seo-listing-fields.d.ts +70 -0
- package/src/lib/app-utils/seo-listing-fields.js +75 -0
- package/src/lib/app-utils/seo-listing-fields.js.map +1 -0
- package/src/lib/app-utils/seo-locale.d.ts +119 -0
- package/src/lib/app-utils/seo-locale.js +133 -0
- package/src/lib/app-utils/seo-locale.js.map +1 -0
- package/src/lib/app-utils/seo-title-variables.d.ts +149 -0
- package/src/lib/app-utils/seo-title-variables.js +190 -0
- package/src/lib/app-utils/seo-title-variables.js.map +1 -0
- package/src/lib/app-utils/seo-title.d.ts +70 -0
- package/src/lib/app-utils/seo-title.js +117 -0
- package/src/lib/app-utils/seo-title.js.map +1 -0
- package/src/lib/app-utils/server.d.ts +174 -0
- package/src/lib/app-utils/server.js +314 -0
- package/src/lib/app-utils/server.js.map +1 -0
- package/src/lib/app-utils/site-context.d.ts +106 -0
- package/src/lib/app-utils/site-context.js +100 -0
- package/src/lib/app-utils/site-context.js.map +1 -0
- package/src/lib/app-utils/sitemap.d.ts +117 -0
- package/src/lib/app-utils/sitemap.js +183 -0
- package/src/lib/app-utils/sitemap.js.map +1 -0
- package/src/lib/app-utils/social-image.d.ts +112 -0
- package/src/lib/app-utils/social-image.js +191 -0
- package/src/lib/app-utils/social-image.js.map +1 -0
- package/src/lib/app-utils/starter-templates.d.ts +99 -0
- package/src/lib/app-utils/starter-templates.js +579 -0
- package/src/lib/app-utils/starter-templates.js.map +1 -0
- package/src/lib/app-utils/stored-nodes.d.ts +120 -0
- package/src/lib/app-utils/stored-nodes.js +174 -0
- package/src/lib/app-utils/stored-nodes.js.map +1 -0
- package/src/lib/app-utils/strip-undefined.d.ts +59 -0
- package/src/lib/app-utils/strip-undefined.js +95 -0
- package/src/lib/app-utils/strip-undefined.js.map +1 -0
- package/src/lib/app-utils/stripe-deployment-mode.d.ts +47 -0
- package/src/lib/app-utils/stripe-deployment-mode.js +70 -0
- package/src/lib/app-utils/stripe-deployment-mode.js.map +1 -0
- package/src/lib/app-utils/support-tiers.d.ts +108 -0
- package/src/lib/app-utils/support-tiers.js +201 -0
- package/src/lib/app-utils/support-tiers.js.map +1 -0
- package/src/lib/app-utils/timezone-geo-hint.d.ts +36 -0
- package/src/lib/app-utils/timezone-geo-hint.js +180 -0
- package/src/lib/app-utils/timezone-geo-hint.js.map +1 -0
- package/src/lib/app-utils/upload-cors.d.ts +155 -0
- package/src/lib/app-utils/upload-cors.js +254 -0
- package/src/lib/app-utils/upload-cors.js.map +1 -0
- package/src/lib/app-utils/upload-inspection.d.ts +159 -0
- package/src/lib/app-utils/upload-inspection.js +539 -0
- package/src/lib/app-utils/upload-inspection.js.map +1 -0
- package/src/lib/app-utils/url-slug.d.ts +40 -0
- package/src/lib/app-utils/url-slug.js +42 -0
- package/src/lib/app-utils/url-slug.js.map +1 -0
- package/src/lib/app-utils/usage-budget.d.ts +429 -0
- package/src/lib/app-utils/usage-budget.js +421 -0
- package/src/lib/app-utils/usage-budget.js.map +1 -0
- package/src/lib/app-utils/variables.d.ts +96 -0
- package/src/lib/app-utils/variables.js +233 -0
- package/src/lib/app-utils/variables.js.map +1 -0
- package/src/lib/app-utils/video-asset-facts.d.ts +61 -0
- package/src/lib/app-utils/video-asset-facts.js +70 -0
- package/src/lib/app-utils/video-asset-facts.js.map +1 -0
- package/src/lib/app-utils/video-object.d.ts +89 -0
- package/src/lib/app-utils/video-object.js +245 -0
- package/src/lib/app-utils/video-object.js.map +1 -0
- package/src/lib/app-utils/visitor-consent.d.ts +757 -0
- package/src/lib/app-utils/visitor-consent.js +981 -0
- package/src/lib/app-utils/visitor-consent.js.map +1 -0
- package/src/lib/app-utils/visitor-record-ceiling.d.ts +223 -0
- package/src/lib/app-utils/visitor-record-ceiling.js +215 -0
- package/src/lib/app-utils/visitor-record-ceiling.js.map +1 -0
- package/src/lib/app-utils/web-vitals-rum.d.ts +53 -0
- package/src/lib/app-utils/web-vitals-rum.js +278 -0
- package/src/lib/app-utils/web-vitals-rum.js.map +1 -0
- package/src/lib/app-utils/webhook-delivery.d.ts +324 -0
- package/src/lib/app-utils/webhook-delivery.js +413 -0
- package/src/lib/app-utils/webhook-delivery.js.map +1 -0
- package/src/lib/app-utils/where-used.d.ts +57 -0
- package/src/lib/app-utils/where-used.js +59 -0
- package/src/lib/app-utils/where-used.js.map +1 -0
- package/src/lib/app-utils/wistia-embed.d.ts +86 -0
- package/src/lib/app-utils/wistia-embed.js +119 -0
- package/src/lib/app-utils/wistia-embed.js.map +1 -0
- package/src/lib/app-utils/workflows.d.ts +136 -0
- package/src/lib/app-utils/workflows.js +346 -0
- package/src/lib/app-utils/workflows.js.map +1 -0
- package/src/lib/canvas-manager/canvas-manager-tree.d.ts +109 -0
- package/src/lib/canvas-manager/canvas-manager-tree.js +139 -0
- package/src/lib/canvas-manager/canvas-manager-tree.js.map +1 -0
- package/src/lib/canvas-manager/canvas-manager.d.ts +549 -0
- package/src/lib/canvas-manager/canvas-manager.js +1311 -0
- package/src/lib/canvas-manager/canvas-manager.js.map +1 -0
- package/src/lib/canvas-manager/index.d.ts +20 -0
- package/src/lib/canvas-manager/index.js +21 -0
- package/src/lib/canvas-manager/index.js.map +1 -0
- package/src/lib/canvas-manager/stores/index.d.ts +17 -0
- package/src/lib/canvas-manager/stores/index.js +18 -0
- package/src/lib/canvas-manager/stores/index.js.map +1 -0
- package/src/lib/canvas-manager/stores/node.store.d.ts +30 -0
- package/src/lib/canvas-manager/stores/node.store.js +45 -0
- package/src/lib/canvas-manager/stores/node.store.js.map +1 -0
- package/src/lib/components-manager/components-manager.d.ts +56 -0
- package/src/lib/components-manager/components-manager.js +191 -0
- package/src/lib/components-manager/components-manager.js.map +1 -0
- package/src/lib/components-manager/index.d.ts +18 -0
- package/src/lib/components-manager/index.js +19 -0
- package/src/lib/components-manager/index.js.map +1 -0
- package/src/lib/emit-manager/emit-manager.d.ts +56 -0
- package/src/lib/emit-manager/emit-manager.js +60 -0
- package/src/lib/emit-manager/emit-manager.js.map +1 -0
- package/src/lib/emit-manager/index.d.ts +18 -0
- package/src/lib/emit-manager/index.js +19 -0
- package/src/lib/emit-manager/index.js.map +1 -0
- package/src/lib/foundation/constants/_internal.d.ts +18 -0
- package/src/lib/foundation/constants/_internal.js +62 -0
- package/src/lib/foundation/constants/_internal.js.map +1 -0
- package/src/lib/foundation/constants/app.d.ts +23 -0
- package/src/lib/foundation/constants/app.js +25 -0
- package/src/lib/foundation/constants/app.js.map +1 -0
- package/src/lib/foundation/constants/canvas.d.ts +18 -0
- package/src/lib/foundation/constants/canvas.js +18 -0
- package/src/lib/foundation/constants/canvas.js.map +1 -0
- package/src/lib/foundation/constants/components.d.ts +54 -0
- package/src/lib/foundation/constants/components.js +61 -0
- package/src/lib/foundation/constants/components.js.map +1 -0
- package/src/lib/foundation/constants/shared.d.ts +50 -0
- package/src/lib/foundation/constants/shared.js +49 -0
- package/src/lib/foundation/constants/shared.js.map +1 -0
- package/src/lib/foundation/constants/symbol.d.ts +63 -0
- package/src/lib/foundation/constants/symbol.js +75 -0
- package/src/lib/foundation/constants/symbol.js.map +1 -0
- package/src/lib/foundation/definitions/components.types.d.ts +372 -0
- package/src/lib/foundation/definitions/components.types.js +180 -0
- package/src/lib/foundation/definitions/components.types.js.map +1 -0
- package/src/lib/foundation/definitions/contact.types.d.ts +73 -0
- package/src/lib/foundation/definitions/contact.types.js +107 -0
- package/src/lib/foundation/definitions/contact.types.js.map +1 -0
- package/src/lib/foundation/definitions/host-content-collections.d.ts +137 -0
- package/src/lib/foundation/definitions/host-content-collections.js +219 -0
- package/src/lib/foundation/definitions/host-content-collections.js.map +1 -0
- package/src/lib/foundation/definitions/org-billing.types.d.ts +1361 -0
- package/src/lib/foundation/definitions/org-billing.types.js +77 -0
- package/src/lib/foundation/definitions/org-billing.types.js.map +1 -0
- package/src/lib/foundation/definitions/organization.types.d.ts +307 -0
- package/src/lib/foundation/definitions/organization.types.js +42 -0
- package/src/lib/foundation/definitions/organization.types.js.map +1 -0
- package/src/lib/foundation/definitions/platform.types.d.ts +1326 -0
- package/src/lib/foundation/definitions/platform.types.js +124 -0
- package/src/lib/foundation/definitions/platform.types.js.map +1 -0
- package/src/lib/foundation/definitions/property-kinds.d.ts +189 -0
- package/src/lib/foundation/definitions/property-kinds.js +565 -0
- package/src/lib/foundation/definitions/property-kinds.js.map +1 -0
- package/src/lib/foundation/definitions/shared.d.ts +23 -0
- package/src/lib/foundation/definitions/shared.js +18 -0
- package/src/lib/foundation/definitions/shared.js.map +1 -0
- package/src/lib/foundation/definitions/write-deny-coverage.util.d.ts +249 -0
- package/src/lib/foundation/definitions/write-deny-coverage.util.js +499 -0
- package/src/lib/foundation/definitions/write-deny-coverage.util.js.map +1 -0
- package/src/lib/foundation/index.d.ts +32 -0
- package/src/lib/foundation/index.js +67 -0
- package/src/lib/foundation/index.js.map +1 -0
- package/src/lib/lifecycle.d.ts +24 -0
- package/src/lib/lifecycle.js +39 -0
- package/src/lib/lifecycle.js.map +1 -0
- package/src/lib/mst/common.d.ts +17 -0
- package/src/lib/mst/common.js +23 -0
- package/src/lib/mst/common.js.map +1 -0
- package/src/lib/mst/index.d.ts +19 -0
- package/src/lib/mst/index.js +20 -0
- package/src/lib/mst/index.js.map +1 -0
- package/src/lib/mst/json.d.ts +22 -0
- package/src/lib/mst/json.js +23 -0
- package/src/lib/mst/json.js.map +1 -0
- package/src/lib/mst/types.d.ts +20 -0
- package/src/lib/mst/types.js +18 -0
- package/src/lib/mst/types.js.map +1 -0
- package/src/lib/plugin-manager/billing-webhook-hooks.d.ts +77 -0
- package/src/lib/plugin-manager/billing-webhook-hooks.js +55 -0
- package/src/lib/plugin-manager/billing-webhook-hooks.js.map +1 -0
- package/src/lib/plugin-manager/commerce-zone-props.d.ts +172 -0
- package/src/lib/plugin-manager/commerce-zone-props.js +31 -0
- package/src/lib/plugin-manager/commerce-zone-props.js.map +1 -0
- package/src/lib/plugin-manager/custom-fields.d.ts +60 -0
- package/src/lib/plugin-manager/custom-fields.js +39 -0
- package/src/lib/plugin-manager/custom-fields.js.map +1 -0
- package/src/lib/plugin-manager/editor-sessions.d.ts +109 -0
- package/src/lib/plugin-manager/editor-sessions.js +137 -0
- package/src/lib/plugin-manager/editor-sessions.js.map +1 -0
- package/src/lib/plugin-manager/enabled-plugins.d.ts +438 -0
- package/src/lib/plugin-manager/enabled-plugins.js +403 -0
- package/src/lib/plugin-manager/enabled-plugins.js.map +1 -0
- package/src/lib/plugin-manager/feature-plugins.d.ts +1314 -0
- package/src/lib/plugin-manager/feature-plugins.js +609 -0
- package/src/lib/plugin-manager/feature-plugins.js.map +1 -0
- package/src/lib/plugin-manager/first-party-plugins.generated.d.ts +11 -0
- package/src/lib/plugin-manager/first-party-plugins.generated.js +149 -0
- package/src/lib/plugin-manager/first-party-plugins.generated.js.map +1 -0
- package/src/lib/plugin-manager/index.d.ts +42 -0
- package/src/lib/plugin-manager/index.js +46 -0
- package/src/lib/plugin-manager/index.js.map +1 -0
- package/src/lib/plugin-manager/install-presets.d.ts +93 -0
- package/src/lib/plugin-manager/install-presets.js +86 -0
- package/src/lib/plugin-manager/install-presets.js.map +1 -0
- package/src/lib/plugin-manager/media-delivery-provider.d.ts +124 -0
- package/src/lib/plugin-manager/media-delivery-provider.js +53 -0
- package/src/lib/plugin-manager/media-delivery-provider.js.map +1 -0
- package/src/lib/plugin-manager/order-fulfilment.d.ts +142 -0
- package/src/lib/plugin-manager/order-fulfilment.js +104 -0
- package/src/lib/plugin-manager/order-fulfilment.js.map +1 -0
- package/src/lib/plugin-manager/plugin-activity-actions.d.ts +122 -0
- package/src/lib/plugin-manager/plugin-activity-actions.js +140 -0
- package/src/lib/plugin-manager/plugin-activity-actions.js.map +1 -0
- package/src/lib/plugin-manager/plugin-bridge.d.ts +98 -0
- package/src/lib/plugin-manager/plugin-bridge.js +154 -0
- package/src/lib/plugin-manager/plugin-bridge.js.map +1 -0
- package/src/lib/plugin-manager/plugin-config.d.ts +148 -0
- package/src/lib/plugin-manager/plugin-config.js +228 -0
- package/src/lib/plugin-manager/plugin-config.js.map +1 -0
- package/src/lib/plugin-manager/plugin-console-crons.d.ts +139 -0
- package/src/lib/plugin-manager/plugin-console-crons.js +177 -0
- package/src/lib/plugin-manager/plugin-console-crons.js.map +1 -0
- package/src/lib/plugin-manager/plugin-contact-capture.d.ts +220 -0
- package/src/lib/plugin-manager/plugin-contact-capture.js +89 -0
- package/src/lib/plugin-manager/plugin-contact-capture.js.map +1 -0
- package/src/lib/plugin-manager/plugin-contributions.d.ts +244 -0
- package/src/lib/plugin-manager/plugin-contributions.js +283 -0
- package/src/lib/plugin-manager/plugin-contributions.js.map +1 -0
- package/src/lib/plugin-manager/plugin-entitlement-keys.d.ts +169 -0
- package/src/lib/plugin-manager/plugin-entitlement-keys.js +84 -0
- package/src/lib/plugin-manager/plugin-entitlement-keys.js.map +1 -0
- package/src/lib/plugin-manager/plugin-entitlements.d.ts +181 -0
- package/src/lib/plugin-manager/plugin-entitlements.js +188 -0
- package/src/lib/plugin-manager/plugin-entitlements.js.map +1 -0
- package/src/lib/plugin-manager/plugin-events.d.ts +145 -0
- package/src/lib/plugin-manager/plugin-events.js +79 -0
- package/src/lib/plugin-manager/plugin-events.js.map +1 -0
- package/src/lib/plugin-manager/plugin-figures.d.ts +251 -0
- package/src/lib/plugin-manager/plugin-figures.js +252 -0
- package/src/lib/plugin-manager/plugin-figures.js.map +1 -0
- package/src/lib/plugin-manager/plugin-host-collections.d.ts +146 -0
- package/src/lib/plugin-manager/plugin-host-collections.js +116 -0
- package/src/lib/plugin-manager/plugin-host-collections.js.map +1 -0
- package/src/lib/plugin-manager/plugin-jobs.d.ts +130 -0
- package/src/lib/plugin-manager/plugin-jobs.js +182 -0
- package/src/lib/plugin-manager/plugin-jobs.js.map +1 -0
- package/src/lib/plugin-manager/plugin-loader.d.ts +86 -0
- package/src/lib/plugin-manager/plugin-loader.js +223 -0
- package/src/lib/plugin-manager/plugin-loader.js.map +1 -0
- package/src/lib/plugin-manager/plugin-manager.d.ts +95 -0
- package/src/lib/plugin-manager/plugin-manager.js +343 -0
- package/src/lib/plugin-manager/plugin-manager.js.map +1 -0
- package/src/lib/plugin-manager/plugin-metered-lines.d.ts +97 -0
- package/src/lib/plugin-manager/plugin-metered-lines.js +123 -0
- package/src/lib/plugin-manager/plugin-metered-lines.js.map +1 -0
- package/src/lib/plugin-manager/plugin-org-erasure.d.ts +52 -0
- package/src/lib/plugin-manager/plugin-org-erasure.js +100 -0
- package/src/lib/plugin-manager/plugin-org-erasure.js.map +1 -0
- package/src/lib/plugin-manager/plugin-permissions.d.ts +69 -0
- package/src/lib/plugin-manager/plugin-permissions.js +77 -0
- package/src/lib/plugin-manager/plugin-permissions.js.map +1 -0
- package/src/lib/plugin-manager/plugin-person-erasure.d.ts +58 -0
- package/src/lib/plugin-manager/plugin-person-erasure.js +109 -0
- package/src/lib/plugin-manager/plugin-person-erasure.js.map +1 -0
- package/src/lib/plugin-manager/plugin-record-cards.d.ts +99 -0
- package/src/lib/plugin-manager/plugin-record-cards.js +59 -0
- package/src/lib/plugin-manager/plugin-record-cards.js.map +1 -0
- package/src/lib/plugin-manager/plugin-record-facts.d.ts +111 -0
- package/src/lib/plugin-manager/plugin-record-facts.js +51 -0
- package/src/lib/plugin-manager/plugin-record-facts.js.map +1 -0
- package/src/lib/plugin-manager/plugin-record-routes.d.ts +129 -0
- package/src/lib/plugin-manager/plugin-record-routes.js +93 -0
- package/src/lib/plugin-manager/plugin-record-routes.js.map +1 -0
- package/src/lib/plugin-manager/plugin-record-timeline.d.ts +147 -0
- package/src/lib/plugin-manager/plugin-record-timeline.js +39 -0
- package/src/lib/plugin-manager/plugin-record-timeline.js.map +1 -0
- package/src/lib/plugin-manager/plugin-resource-drafts.d.ts +137 -0
- package/src/lib/plugin-manager/plugin-resource-drafts.js +51 -0
- package/src/lib/plugin-manager/plugin-resource-drafts.js.map +1 -0
- package/src/lib/plugin-manager/plugin-services.d.ts +94 -0
- package/src/lib/plugin-manager/plugin-services.js +153 -0
- package/src/lib/plugin-manager/plugin-services.js.map +1 -0
- package/src/lib/plugin-manager/plugin-styles-ui.d.ts +71 -0
- package/src/lib/plugin-manager/plugin-styles-ui.js +80 -0
- package/src/lib/plugin-manager/plugin-styles-ui.js.map +1 -0
- package/src/lib/plugin-manager/plugin-styles.d.ts +176 -0
- package/src/lib/plugin-manager/plugin-styles.js +186 -0
- package/src/lib/plugin-manager/plugin-styles.js.map +1 -0
- package/src/lib/plugin-manager/plugin-subprocessors.d.ts +135 -0
- package/src/lib/plugin-manager/plugin-subprocessors.js +129 -0
- package/src/lib/plugin-manager/plugin-subprocessors.js.map +1 -0
- package/src/lib/plugin-manager/plugin-tax-profile.d.ts +84 -0
- package/src/lib/plugin-manager/plugin-tax-profile.js +39 -0
- package/src/lib/plugin-manager/plugin-tax-profile.js.map +1 -0
- package/src/lib/plugin-manager/plugin-user-erasure.d.ts +53 -0
- package/src/lib/plugin-manager/plugin-user-erasure.js +84 -0
- package/src/lib/plugin-manager/plugin-user-erasure.js.map +1 -0
- package/src/lib/plugin-manager/plugin-zones.d.ts +121 -0
- package/src/lib/plugin-manager/plugin-zones.js +74 -0
- package/src/lib/plugin-manager/plugin-zones.js.map +1 -0
- package/src/lib/plugin-manager/realm-plugins.d.ts +112 -0
- package/src/lib/plugin-manager/realm-plugins.js +196 -0
- package/src/lib/plugin-manager/realm-plugins.js.map +1 -0
- package/src/lib/plugin-manager/realm-server.d.ts +54 -0
- package/src/lib/plugin-manager/realm-server.js +88 -0
- package/src/lib/plugin-manager/realm-server.js.map +1 -0
- package/src/lib/plugin-manager/record-zone-props.d.ts +126 -0
- package/src/lib/plugin-manager/record-zone-props.js +31 -0
- package/src/lib/plugin-manager/record-zone-props.js.map +1 -0
- package/src/lib/plugin-manager/site-page-hooks.d.ts +102 -0
- package/src/lib/plugin-manager/site-page-hooks.js +114 -0
- package/src/lib/plugin-manager/site-page-hooks.js.map +1 -0
- package/src/lib/plugin-manager/site-runtime.d.ts +57 -0
- package/src/lib/plugin-manager/site-runtime.js +25 -0
- package/src/lib/plugin-manager/site-runtime.js.map +1 -0
- package/src/lib/plugin-manager/usage-alert-contributors.d.ts +115 -0
- package/src/lib/plugin-manager/usage-alert-contributors.js +106 -0
- package/src/lib/plugin-manager/usage-alert-contributors.js.map +1 -0
- package/src/lib/types/ast.d.ts +199 -0
- package/src/lib/types/ast.js +20 -0
- package/src/lib/types/ast.js.map +1 -0
- package/src/lib/types/index.d.ts +20 -0
- package/src/lib/types/index.js +21 -0
- package/src/lib/types/index.js.map +1 -0
- package/src/lib/types/nodes.d.ts +608 -0
- package/src/lib/types/nodes.js +28 -0
- package/src/lib/types/nodes.js.map +1 -0
- package/src/lib/types/routing.d.ts +17 -0
- package/src/lib/types/routing.js +18 -0
- package/src/lib/types/routing.js.map +1 -0
- package/src/lib/types/screen.d.ts +23 -0
- package/src/lib/types/screen.js +18 -0
- package/src/lib/types/screen.js.map +1 -0
- package/src/lib/utils.d.ts +25 -0
- package/src/lib/utils.js +42 -0
- package/src/lib/utils.js.map +1 -0
- package/src/server.d.ts +37 -0
- package/src/server.js +55 -0
- package/src/server.js.map +1 -0
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Aglyn LLC
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
* you may not use this file except in compliance with the License.
|
|
7
|
+
* You may obtain a copy of the License at
|
|
8
|
+
*
|
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
/**
|
|
18
|
+
* Google Ads conversions for Aglyn's own funnel — account created, and tier
|
|
19
|
+
* subscribed.
|
|
20
|
+
*
|
|
21
|
+
* ## Why these are their own tag and not a GA4 import
|
|
22
|
+
*
|
|
23
|
+
* An imported GA4 key event lands in Google Ads as a conversion ACTION but
|
|
24
|
+
* does not create a conversion GOAL, and only a goal can be selected for
|
|
25
|
+
* bidding or reporting. `Sign-ups` sat with a live action and no goal for a
|
|
26
|
+
* week: measured, and unusable. A conversion created against the Google tag
|
|
27
|
+
* makes the goal, which is why these labels exist at all.
|
|
28
|
+
*
|
|
29
|
+
* ## Configuration, and why nothing is hardcoded
|
|
30
|
+
*
|
|
31
|
+
* ⛔ No default id. `analyticsMayEmit()` is true for ANY production build,
|
|
32
|
+
* self-hosted ones included — so a hardcoded conversion id would have every
|
|
33
|
+
* operator's console reporting signups into Aglyn's ad account. Unset means
|
|
34
|
+
* unset: {@link platformAdConversionTarget} returns null and nothing fires,
|
|
35
|
+
* which is the only correct behaviour for a deployment that has no ad account.
|
|
36
|
+
*
|
|
37
|
+
* The console reads its GA measurement id from `NEXT_PUBLIC_FIREBASE_...` for
|
|
38
|
+
* the same reason; these follow that precedent.
|
|
39
|
+
*
|
|
40
|
+
* ⚠️ `process.env.NAME` is inlined at BUILD time by Next and never the bracket
|
|
41
|
+
* form, so these are fixed when the image is built rather than when it starts.
|
|
42
|
+
* An operator changing ad accounts rebuilds.
|
|
43
|
+
*/
|
|
44
|
+
/** The advertiser account, `AW-` and digits. */
|
|
45
|
+
export declare const PLATFORM_ADS_CONVERSION_ID: string;
|
|
46
|
+
/** The per-action labels, minted with each conversion action in Google Ads. */
|
|
47
|
+
export declare const PLATFORM_ADS_SIGNUP_LABEL: string;
|
|
48
|
+
export declare const PLATFORM_ADS_SUBSCRIBE_LABEL: string;
|
|
49
|
+
export type PlatformAdConversion = 'signup' | 'subscribe';
|
|
50
|
+
/**
|
|
51
|
+
* The `send_to` for a conversion, or `null` when this build has none.
|
|
52
|
+
*
|
|
53
|
+
* Both halves are required. A `send_to` of `AW-123/` — an id with an empty
|
|
54
|
+
* label — is not a no-op: gtag accepts it and reports against the account's
|
|
55
|
+
* default, so a half-configured deployment would file its signups under
|
|
56
|
+
* whatever conversion Google picks. Null is the honest answer.
|
|
57
|
+
*/
|
|
58
|
+
export declare function platformAdConversionTarget(kind: PlatformAdConversion): string | null;
|
|
59
|
+
/**
|
|
60
|
+
* Report one conversion, if this build has one and this visitor allows it.
|
|
61
|
+
*
|
|
62
|
+
* `allowed` is PASSED IN rather than read here, deliberately. The consent
|
|
63
|
+
* verdict lives in the surface that resolved it — reaching back into that
|
|
64
|
+
* module from here would make an analytics helper import a consent engine, and
|
|
65
|
+
* would give this two reasons to fail. It is also how the caller stays
|
|
66
|
+
* testable without a stubbed consent record.
|
|
67
|
+
*
|
|
68
|
+
* ⚠️ There is no queueing and no retry. `gtag` is defined by the Analytics
|
|
69
|
+
* tag, so a conversion fired before the tag boots — or on a visitor who
|
|
70
|
+
* refused, where the tag never boots at all — is simply not sent. Retrying
|
|
71
|
+
* would mean holding a conversion for a visitor who has not consented to
|
|
72
|
+
* being measured, which is the wrong end of the trade.
|
|
73
|
+
*
|
|
74
|
+
* Returns whether anything was sent, so a caller can assert on it rather than
|
|
75
|
+
* on a spy for a global.
|
|
76
|
+
*
|
|
77
|
+
* `userData.email` is the enhanced-conversions half (AGL-2683). Set through
|
|
78
|
+
* `gtag('set', 'user_data', …)` immediately before the event, the tag
|
|
79
|
+
* normalizes and SHA-256-hashes the address in the browser and sends only the
|
|
80
|
+
* hash with the conversion ping, which lets Google Ads match the conversion to
|
|
81
|
+
* a signed-in user when the click cookie is gone — a sign-up finished from the
|
|
82
|
+
* verification email on another device, or on Safari after its seven-day cap.
|
|
83
|
+
* It rides the SAME three doors as the event: not allowed, no ad account, or
|
|
84
|
+
* no tag means nothing is set, and an absent or blank email sets nothing
|
|
85
|
+
* either. Nothing here reads identity on its own; the caller passes what it
|
|
86
|
+
* already holds, exactly as it passes the consent verdict.
|
|
87
|
+
*/
|
|
88
|
+
export declare function reportPlatformAdConversion(kind: PlatformAdConversion, allowed: boolean, options?: {
|
|
89
|
+
transactionId?: string;
|
|
90
|
+
userData?: {
|
|
91
|
+
email?: string | null;
|
|
92
|
+
};
|
|
93
|
+
}): boolean;
|
|
94
|
+
/**
|
|
95
|
+
* Where a checkout that has STARTED but not yet been reported is remembered.
|
|
96
|
+
*
|
|
97
|
+
* The subscribe conversion can only be reported from the browser — an Ads
|
|
98
|
+
* website conversion is matched to the ad click through the GCLID the tag
|
|
99
|
+
* holds, and no webhook has one. That put the only reporting moment on
|
|
100
|
+
* Stripe's `onComplete`, which a visitor can close the tab on: the money was
|
|
101
|
+
* spent, the customer subscribed, and the campaign shows nothing. A missed
|
|
102
|
+
* conversion is invisible, which is what makes it worth repairing.
|
|
103
|
+
*
|
|
104
|
+
* So the checkout marks itself pending when it opens, and the billing page
|
|
105
|
+
* reports on the next visit if it finds the mark and a live subscription. The
|
|
106
|
+
* customer always comes back — they are a customer now.
|
|
107
|
+
*
|
|
108
|
+
* ⚠️ Scoped to the org so a mark left by one workspace cannot report a
|
|
109
|
+
* conversion for another, and paired with a stable `transaction_id` so the
|
|
110
|
+
* belt and the braces cannot double count.
|
|
111
|
+
*
|
|
112
|
+
* `localStorage`, not `sessionStorage`: closing the tab is the case being
|
|
113
|
+
* repaired, and a session store is exactly what closing the tab clears.
|
|
114
|
+
*/
|
|
115
|
+
export declare const PLATFORM_SUBSCRIBE_PENDING_KEY = "aglyn:ads:subscribe-pending";
|
|
116
|
+
/** Remember that this org opened checkout, so a lost tab is recoverable. */
|
|
117
|
+
export declare function markSubscribeCheckoutPending(orgId: string): void;
|
|
118
|
+
/** Whether this org has a checkout waiting to be reported. */
|
|
119
|
+
export declare function subscribeCheckoutPending(orgId: string): boolean;
|
|
120
|
+
/** Forget it, once reported — or once the org is no longer subscribing. */
|
|
121
|
+
export declare function clearSubscribeCheckoutPending(): void;
|
|
122
|
+
export default reportPlatformAdConversion;
|
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
import { _ as _extends } from "@swc/helpers/_/_extends";
|
|
2
|
+
/**
|
|
3
|
+
* @license
|
|
4
|
+
* Copyright 2026 Aglyn LLC
|
|
5
|
+
*
|
|
6
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
+
* you may not use this file except in compliance with the License.
|
|
8
|
+
* You may obtain a copy of the License at
|
|
9
|
+
*
|
|
10
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
+
*
|
|
12
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
13
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
+
* See the License for the specific language governing permissions and
|
|
16
|
+
* limitations under the License.
|
|
17
|
+
*/ /**
|
|
18
|
+
* Google Ads conversions for Aglyn's own funnel — account created, and tier
|
|
19
|
+
* subscribed.
|
|
20
|
+
*
|
|
21
|
+
* ## Why these are their own tag and not a GA4 import
|
|
22
|
+
*
|
|
23
|
+
* An imported GA4 key event lands in Google Ads as a conversion ACTION but
|
|
24
|
+
* does not create a conversion GOAL, and only a goal can be selected for
|
|
25
|
+
* bidding or reporting. `Sign-ups` sat with a live action and no goal for a
|
|
26
|
+
* week: measured, and unusable. A conversion created against the Google tag
|
|
27
|
+
* makes the goal, which is why these labels exist at all.
|
|
28
|
+
*
|
|
29
|
+
* ## Configuration, and why nothing is hardcoded
|
|
30
|
+
*
|
|
31
|
+
* ⛔ No default id. `analyticsMayEmit()` is true for ANY production build,
|
|
32
|
+
* self-hosted ones included — so a hardcoded conversion id would have every
|
|
33
|
+
* operator's console reporting signups into Aglyn's ad account. Unset means
|
|
34
|
+
* unset: {@link platformAdConversionTarget} returns null and nothing fires,
|
|
35
|
+
* which is the only correct behaviour for a deployment that has no ad account.
|
|
36
|
+
*
|
|
37
|
+
* The console reads its GA measurement id from `NEXT_PUBLIC_FIREBASE_...` for
|
|
38
|
+
* the same reason; these follow that precedent.
|
|
39
|
+
*
|
|
40
|
+
* ⚠️ `process.env.NAME` is inlined at BUILD time by Next and never the bracket
|
|
41
|
+
* form, so these are fixed when the image is built rather than when it starts.
|
|
42
|
+
* An operator changing ad accounts rebuilds.
|
|
43
|
+
*/ /** The advertiser account, `AW-` and digits. */ export const PLATFORM_ADS_CONVERSION_ID = process.env.NEXT_PUBLIC_ADS_CONVERSION_ID || '';
|
|
44
|
+
/** The per-action labels, minted with each conversion action in Google Ads. */ export const PLATFORM_ADS_SIGNUP_LABEL = process.env.NEXT_PUBLIC_ADS_SIGNUP_LABEL || '';
|
|
45
|
+
export const PLATFORM_ADS_SUBSCRIBE_LABEL = process.env.NEXT_PUBLIC_ADS_SUBSCRIBE_LABEL || '';
|
|
46
|
+
const LABELS = {
|
|
47
|
+
signup: PLATFORM_ADS_SIGNUP_LABEL,
|
|
48
|
+
subscribe: PLATFORM_ADS_SUBSCRIBE_LABEL
|
|
49
|
+
};
|
|
50
|
+
/**
|
|
51
|
+
* The `send_to` for a conversion, or `null` when this build has none.
|
|
52
|
+
*
|
|
53
|
+
* Both halves are required. A `send_to` of `AW-123/` — an id with an empty
|
|
54
|
+
* label — is not a no-op: gtag accepts it and reports against the account's
|
|
55
|
+
* default, so a half-configured deployment would file its signups under
|
|
56
|
+
* whatever conversion Google picks. Null is the honest answer.
|
|
57
|
+
*/ export function platformAdConversionTarget(kind) {
|
|
58
|
+
const label = LABELS[kind];
|
|
59
|
+
if (!PLATFORM_ADS_CONVERSION_ID || !label) return null;
|
|
60
|
+
return `${PLATFORM_ADS_CONVERSION_ID}/${label}`;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Report one conversion, if this build has one and this visitor allows it.
|
|
64
|
+
*
|
|
65
|
+
* `allowed` is PASSED IN rather than read here, deliberately. The consent
|
|
66
|
+
* verdict lives in the surface that resolved it — reaching back into that
|
|
67
|
+
* module from here would make an analytics helper import a consent engine, and
|
|
68
|
+
* would give this two reasons to fail. It is also how the caller stays
|
|
69
|
+
* testable without a stubbed consent record.
|
|
70
|
+
*
|
|
71
|
+
* ⚠️ There is no queueing and no retry. `gtag` is defined by the Analytics
|
|
72
|
+
* tag, so a conversion fired before the tag boots — or on a visitor who
|
|
73
|
+
* refused, where the tag never boots at all — is simply not sent. Retrying
|
|
74
|
+
* would mean holding a conversion for a visitor who has not consented to
|
|
75
|
+
* being measured, which is the wrong end of the trade.
|
|
76
|
+
*
|
|
77
|
+
* Returns whether anything was sent, so a caller can assert on it rather than
|
|
78
|
+
* on a spy for a global.
|
|
79
|
+
*
|
|
80
|
+
* `userData.email` is the enhanced-conversions half (AGL-2683). Set through
|
|
81
|
+
* `gtag('set', 'user_data', …)` immediately before the event, the tag
|
|
82
|
+
* normalizes and SHA-256-hashes the address in the browser and sends only the
|
|
83
|
+
* hash with the conversion ping, which lets Google Ads match the conversion to
|
|
84
|
+
* a signed-in user when the click cookie is gone — a sign-up finished from the
|
|
85
|
+
* verification email on another device, or on Safari after its seven-day cap.
|
|
86
|
+
* It rides the SAME three doors as the event: not allowed, no ad account, or
|
|
87
|
+
* no tag means nothing is set, and an absent or blank email sets nothing
|
|
88
|
+
* either. Nothing here reads identity on its own; the caller passes what it
|
|
89
|
+
* already holds, exactly as it passes the consent verdict.
|
|
90
|
+
*/ export function reportPlatformAdConversion(kind, allowed, options = {}) {
|
|
91
|
+
var _ref;
|
|
92
|
+
var _options_userData;
|
|
93
|
+
if (!allowed) return false;
|
|
94
|
+
const target = platformAdConversionTarget(kind);
|
|
95
|
+
if (!target) return false;
|
|
96
|
+
const scope = globalThis;
|
|
97
|
+
if (typeof scope.gtag !== 'function') return false;
|
|
98
|
+
// Enhanced conversions (AGL-2683): the address reaches the tag lower-cased
|
|
99
|
+
// and trimmed — gtag hashes it before anything leaves the browser. Set right
|
|
100
|
+
// before the event so it attaches to THIS conversion and cannot linger on a
|
|
101
|
+
// later, unrelated one.
|
|
102
|
+
const email = String((_ref = (_options_userData = options.userData) == null ? void 0 : _options_userData.email) != null ? _ref : '').trim().toLowerCase();
|
|
103
|
+
if (email) scope.gtag('set', 'user_data', {
|
|
104
|
+
email
|
|
105
|
+
});
|
|
106
|
+
/*
|
|
107
|
+
* `transaction_id` is what makes a conversion SAFE TO REPORT TWICE.
|
|
108
|
+
*
|
|
109
|
+
* Google Ads de-duplicates on it, so a caller no longer has to guarantee
|
|
110
|
+
* exactly-once delivery from the browser — which is a guarantee a browser
|
|
111
|
+
* cannot give. Without it, the only safe moment to report is the one the
|
|
112
|
+
* visitor might close the tab on, and a missed conversion is invisible: the
|
|
113
|
+
* money was spent, the customer converted, and the campaign shows nothing.
|
|
114
|
+
*
|
|
115
|
+
* ⚠️ It must be STABLE for the thing being counted, not per attempt. A fresh
|
|
116
|
+
* id on every call de-duplicates nothing and quietly restores the double
|
|
117
|
+
* count it exists to prevent.
|
|
118
|
+
*/ scope.gtag('event', 'conversion', _extends({
|
|
119
|
+
send_to: target
|
|
120
|
+
}, options.transactionId ? {
|
|
121
|
+
transaction_id: options.transactionId
|
|
122
|
+
} : {}));
|
|
123
|
+
return true;
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Where a checkout that has STARTED but not yet been reported is remembered.
|
|
127
|
+
*
|
|
128
|
+
* The subscribe conversion can only be reported from the browser — an Ads
|
|
129
|
+
* website conversion is matched to the ad click through the GCLID the tag
|
|
130
|
+
* holds, and no webhook has one. That put the only reporting moment on
|
|
131
|
+
* Stripe's `onComplete`, which a visitor can close the tab on: the money was
|
|
132
|
+
* spent, the customer subscribed, and the campaign shows nothing. A missed
|
|
133
|
+
* conversion is invisible, which is what makes it worth repairing.
|
|
134
|
+
*
|
|
135
|
+
* So the checkout marks itself pending when it opens, and the billing page
|
|
136
|
+
* reports on the next visit if it finds the mark and a live subscription. The
|
|
137
|
+
* customer always comes back — they are a customer now.
|
|
138
|
+
*
|
|
139
|
+
* ⚠️ Scoped to the org so a mark left by one workspace cannot report a
|
|
140
|
+
* conversion for another, and paired with a stable `transaction_id` so the
|
|
141
|
+
* belt and the braces cannot double count.
|
|
142
|
+
*
|
|
143
|
+
* `localStorage`, not `sessionStorage`: closing the tab is the case being
|
|
144
|
+
* repaired, and a session store is exactly what closing the tab clears.
|
|
145
|
+
*/ export const PLATFORM_SUBSCRIBE_PENDING_KEY = 'aglyn:ads:subscribe-pending';
|
|
146
|
+
/** Remember that this org opened checkout, so a lost tab is recoverable. */ export function markSubscribeCheckoutPending(orgId) {
|
|
147
|
+
if (!orgId || typeof window === 'undefined') return;
|
|
148
|
+
try {
|
|
149
|
+
window.localStorage.setItem(PLATFORM_SUBSCRIBE_PENDING_KEY, orgId);
|
|
150
|
+
} catch (unused) {
|
|
151
|
+
// Storage refused. The `onComplete` path still reports; only the repair
|
|
152
|
+
// for a closed tab is lost, which is where this started.
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
/** Whether this org has a checkout waiting to be reported. */ export function subscribeCheckoutPending(orgId) {
|
|
156
|
+
if (!orgId || typeof window === 'undefined') return false;
|
|
157
|
+
try {
|
|
158
|
+
return window.localStorage.getItem(PLATFORM_SUBSCRIBE_PENDING_KEY) === orgId;
|
|
159
|
+
} catch (unused) {
|
|
160
|
+
return false;
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
/** Forget it, once reported — or once the org is no longer subscribing. */ export function clearSubscribeCheckoutPending() {
|
|
164
|
+
if (typeof window === 'undefined') return;
|
|
165
|
+
try {
|
|
166
|
+
window.localStorage.removeItem(PLATFORM_SUBSCRIBE_PENDING_KEY);
|
|
167
|
+
} catch (unused) {
|
|
168
|
+
// A mark that cannot be cleared is re-reported, and `transaction_id`
|
|
169
|
+
// makes that harmless. This is the reason it is not optional.
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
export default reportPlatformAdConversion;
|
|
173
|
+
|
|
174
|
+
//# sourceMappingURL=platform-ad-conversions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../libs/aglyn/src/lib/app-utils/platform-ad-conversions.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2026 Aglyn LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/**\n * Google Ads conversions for Aglyn's own funnel — account created, and tier\n * subscribed.\n *\n * ## Why these are their own tag and not a GA4 import\n *\n * An imported GA4 key event lands in Google Ads as a conversion ACTION but\n * does not create a conversion GOAL, and only a goal can be selected for\n * bidding or reporting. `Sign-ups` sat with a live action and no goal for a\n * week: measured, and unusable. A conversion created against the Google tag\n * makes the goal, which is why these labels exist at all.\n *\n * ## Configuration, and why nothing is hardcoded\n *\n * ⛔ No default id. `analyticsMayEmit()` is true for ANY production build,\n * self-hosted ones included — so a hardcoded conversion id would have every\n * operator's console reporting signups into Aglyn's ad account. Unset means\n * unset: {@link platformAdConversionTarget} returns null and nothing fires,\n * which is the only correct behaviour for a deployment that has no ad account.\n *\n * The console reads its GA measurement id from `NEXT_PUBLIC_FIREBASE_...` for\n * the same reason; these follow that precedent.\n *\n * ⚠️ `process.env.NAME` is inlined at BUILD time by Next and never the bracket\n * form, so these are fixed when the image is built rather than when it starts.\n * An operator changing ad accounts rebuilds.\n */\n\n/** The advertiser account, `AW-` and digits. */\nexport const PLATFORM_ADS_CONVERSION_ID =\n process.env.NEXT_PUBLIC_ADS_CONVERSION_ID || ''\n\n/** The per-action labels, minted with each conversion action in Google Ads. */\nexport const PLATFORM_ADS_SIGNUP_LABEL =\n process.env.NEXT_PUBLIC_ADS_SIGNUP_LABEL || ''\nexport const PLATFORM_ADS_SUBSCRIBE_LABEL =\n process.env.NEXT_PUBLIC_ADS_SUBSCRIBE_LABEL || ''\n\nexport type PlatformAdConversion = 'signup' | 'subscribe'\n\nconst LABELS: Readonly<Record<PlatformAdConversion, string>> = {\n signup: PLATFORM_ADS_SIGNUP_LABEL,\n subscribe: PLATFORM_ADS_SUBSCRIBE_LABEL,\n}\n\n/**\n * The `send_to` for a conversion, or `null` when this build has none.\n *\n * Both halves are required. A `send_to` of `AW-123/` — an id with an empty\n * label — is not a no-op: gtag accepts it and reports against the account's\n * default, so a half-configured deployment would file its signups under\n * whatever conversion Google picks. Null is the honest answer.\n */\nexport function platformAdConversionTarget(\n kind: PlatformAdConversion,\n): string | null {\n const label = LABELS[kind]\n if (!PLATFORM_ADS_CONVERSION_ID || !label) return null\n return `${PLATFORM_ADS_CONVERSION_ID}/${label}`\n}\n\ninterface ConversionWindow {\n gtag?: (...args: unknown[]) => void\n}\n\n/**\n * Report one conversion, if this build has one and this visitor allows it.\n *\n * `allowed` is PASSED IN rather than read here, deliberately. The consent\n * verdict lives in the surface that resolved it — reaching back into that\n * module from here would make an analytics helper import a consent engine, and\n * would give this two reasons to fail. It is also how the caller stays\n * testable without a stubbed consent record.\n *\n * ⚠️ There is no queueing and no retry. `gtag` is defined by the Analytics\n * tag, so a conversion fired before the tag boots — or on a visitor who\n * refused, where the tag never boots at all — is simply not sent. Retrying\n * would mean holding a conversion for a visitor who has not consented to\n * being measured, which is the wrong end of the trade.\n *\n * Returns whether anything was sent, so a caller can assert on it rather than\n * on a spy for a global.\n *\n * `userData.email` is the enhanced-conversions half (AGL-2683). Set through\n * `gtag('set', 'user_data', …)` immediately before the event, the tag\n * normalizes and SHA-256-hashes the address in the browser and sends only the\n * hash with the conversion ping, which lets Google Ads match the conversion to\n * a signed-in user when the click cookie is gone — a sign-up finished from the\n * verification email on another device, or on Safari after its seven-day cap.\n * It rides the SAME three doors as the event: not allowed, no ad account, or\n * no tag means nothing is set, and an absent or blank email sets nothing\n * either. Nothing here reads identity on its own; the caller passes what it\n * already holds, exactly as it passes the consent verdict.\n */\nexport function reportPlatformAdConversion(\n kind: PlatformAdConversion,\n allowed: boolean,\n options: {\n transactionId?: string\n userData?: { email?: string | null }\n } = {},\n): boolean {\n if (!allowed) return false\n const target = platformAdConversionTarget(kind)\n if (!target) return false\n const scope = globalThis as ConversionWindow\n if (typeof scope.gtag !== 'function') return false\n // Enhanced conversions (AGL-2683): the address reaches the tag lower-cased\n // and trimmed — gtag hashes it before anything leaves the browser. Set right\n // before the event so it attaches to THIS conversion and cannot linger on a\n // later, unrelated one.\n const email = String(options.userData?.email ?? '').trim().toLowerCase()\n if (email) scope.gtag('set', 'user_data', { email })\n /*\n * `transaction_id` is what makes a conversion SAFE TO REPORT TWICE.\n *\n * Google Ads de-duplicates on it, so a caller no longer has to guarantee\n * exactly-once delivery from the browser — which is a guarantee a browser\n * cannot give. Without it, the only safe moment to report is the one the\n * visitor might close the tab on, and a missed conversion is invisible: the\n * money was spent, the customer converted, and the campaign shows nothing.\n *\n * ⚠️ It must be STABLE for the thing being counted, not per attempt. A fresh\n * id on every call de-duplicates nothing and quietly restores the double\n * count it exists to prevent.\n */\n scope.gtag('event', 'conversion', {\n send_to: target,\n ...(options.transactionId\n ? { transaction_id: options.transactionId }\n : {}),\n })\n return true\n}\n\n/**\n * Where a checkout that has STARTED but not yet been reported is remembered.\n *\n * The subscribe conversion can only be reported from the browser — an Ads\n * website conversion is matched to the ad click through the GCLID the tag\n * holds, and no webhook has one. That put the only reporting moment on\n * Stripe's `onComplete`, which a visitor can close the tab on: the money was\n * spent, the customer subscribed, and the campaign shows nothing. A missed\n * conversion is invisible, which is what makes it worth repairing.\n *\n * So the checkout marks itself pending when it opens, and the billing page\n * reports on the next visit if it finds the mark and a live subscription. The\n * customer always comes back — they are a customer now.\n *\n * ⚠️ Scoped to the org so a mark left by one workspace cannot report a\n * conversion for another, and paired with a stable `transaction_id` so the\n * belt and the braces cannot double count.\n *\n * `localStorage`, not `sessionStorage`: closing the tab is the case being\n * repaired, and a session store is exactly what closing the tab clears.\n */\nexport const PLATFORM_SUBSCRIBE_PENDING_KEY = 'aglyn:ads:subscribe-pending'\n\n/** Remember that this org opened checkout, so a lost tab is recoverable. */\nexport function markSubscribeCheckoutPending(orgId: string): void {\n if (!orgId || typeof window === 'undefined') return\n try {\n window.localStorage.setItem(PLATFORM_SUBSCRIBE_PENDING_KEY, orgId)\n } catch {\n // Storage refused. The `onComplete` path still reports; only the repair\n // for a closed tab is lost, which is where this started.\n }\n}\n\n/** Whether this org has a checkout waiting to be reported. */\nexport function subscribeCheckoutPending(orgId: string): boolean {\n if (!orgId || typeof window === 'undefined') return false\n try {\n return window.localStorage.getItem(PLATFORM_SUBSCRIBE_PENDING_KEY) === orgId\n } catch {\n return false\n }\n}\n\n/** Forget it, once reported — or once the org is no longer subscribing. */\nexport function clearSubscribeCheckoutPending(): void {\n if (typeof window === 'undefined') return\n try {\n window.localStorage.removeItem(PLATFORM_SUBSCRIBE_PENDING_KEY)\n } catch {\n // A mark that cannot be cleared is re-reported, and `transaction_id`\n // makes that harmless. This is the reason it is not optional.\n }\n}\n\nexport default reportPlatformAdConversion\n"],"names":["PLATFORM_ADS_CONVERSION_ID","process","env","NEXT_PUBLIC_ADS_CONVERSION_ID","PLATFORM_ADS_SIGNUP_LABEL","NEXT_PUBLIC_ADS_SIGNUP_LABEL","PLATFORM_ADS_SUBSCRIBE_LABEL","NEXT_PUBLIC_ADS_SUBSCRIBE_LABEL","LABELS","signup","subscribe","platformAdConversionTarget","kind","label","reportPlatformAdConversion","allowed","options","target","scope","globalThis","gtag","email","String","userData","trim","toLowerCase","send_to","transactionId","transaction_id","PLATFORM_SUBSCRIBE_PENDING_KEY","markSubscribeCheckoutPending","orgId","window","localStorage","setItem","subscribeCheckoutPending","getItem","clearSubscribeCheckoutPending","removeItem"],"mappings":";AAAA;;;;;;;;;;;;;;;CAeC,GAED;;;;;;;;;;;;;;;;;;;;;;;;;;CA0BC,GAED,8CAA8C,GAC9C,OAAO,MAAMA,6BACXC,QAAQC,GAAG,CAACC,6BAA6B,IAAI,GAAE;AAEjD,6EAA6E,GAC7E,OAAO,MAAMC,4BACXH,QAAQC,GAAG,CAACG,4BAA4B,IAAI,GAAE;AAChD,OAAO,MAAMC,+BACXL,QAAQC,GAAG,CAACK,+BAA+B,IAAI,GAAE;AAInD,MAAMC,SAAyD;IAC7DC,QAAQL;IACRM,WAAWJ;AACb;AAEA;;;;;;;CAOC,GACD,OAAO,SAASK,2BACdC,IAA0B;IAE1B,MAAMC,QAAQL,MAAM,CAACI,KAAK;IAC1B,IAAI,CAACZ,8BAA8B,CAACa,OAAO,OAAO;IAClD,OAAO,GAAGb,2BAA2B,CAAC,EAAEa,OAAO;AACjD;AAMA;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4BC,GACD,OAAO,SAASC,2BACdF,IAA0B,EAC1BG,OAAgB,EAChBC,UAGI,CAAC,CAAC;;QAWeA;IATrB,IAAI,CAACD,SAAS,OAAO;IACrB,MAAME,SAASN,2BAA2BC;IAC1C,IAAI,CAACK,QAAQ,OAAO;IACpB,MAAMC,QAAQC;IACd,IAAI,OAAOD,MAAME,IAAI,KAAK,YAAY,OAAO;IAC7C,2EAA2E;IAC3E,6EAA6E;IAC7E,4EAA4E;IAC5E,wBAAwB;IACxB,MAAMC,QAAQC,gBAAON,oBAAAA,QAAQO,QAAQ,qBAAhBP,kBAAkBK,KAAK,mBAAI,IAAIG,IAAI,GAAGC,WAAW;IACtE,IAAIJ,OAAOH,MAAME,IAAI,CAAC,OAAO,aAAa;QAAEC;IAAM;IAClD;;;;;;;;;;;;GAYC,GACDH,MAAME,IAAI,CAAC,SAAS,cAAc;QAChCM,SAAST;OACLD,QAAQW,aAAa,GACrB;QAAEC,gBAAgBZ,QAAQW,aAAa;IAAC,IACxC,CAAC;IAEP,OAAO;AACT;AAEA;;;;;;;;;;;;;;;;;;;;CAoBC,GACD,OAAO,MAAME,iCAAiC,8BAA6B;AAE3E,0EAA0E,GAC1E,OAAO,SAASC,6BAA6BC,KAAa;IACxD,IAAI,CAACA,SAAS,OAAOC,WAAW,aAAa;IAC7C,IAAI;QACFA,OAAOC,YAAY,CAACC,OAAO,CAACL,gCAAgCE;IAC9D,EAAE,eAAM;IACN,wEAAwE;IACxE,yDAAyD;IAC3D;AACF;AAEA,4DAA4D,GAC5D,OAAO,SAASI,yBAAyBJ,KAAa;IACpD,IAAI,CAACA,SAAS,OAAOC,WAAW,aAAa,OAAO;IACpD,IAAI;QACF,OAAOA,OAAOC,YAAY,CAACG,OAAO,CAACP,oCAAoCE;IACzE,EAAE,eAAM;QACN,OAAO;IACT;AACF;AAEA,yEAAyE,GACzE,OAAO,SAASM;IACd,IAAI,OAAOL,WAAW,aAAa;IACnC,IAAI;QACFA,OAAOC,YAAY,CAACK,UAAU,CAACT;IACjC,EAAE,eAAM;IACN,qEAAqE;IACrE,8DAA8D;IAChE;AACF;AAEA,eAAef,2BAA0B"}
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Aglyn LLC
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
* you may not use this file except in compliance with the License.
|
|
7
|
+
* You may obtain a copy of the License at
|
|
8
|
+
*
|
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
/**
|
|
18
|
+
* Which advertising tags may load on AGLYN'S OWN NON-TENANT SURFACES — the
|
|
19
|
+
* console (`app.aglyn.com`, `auth.aglyn.com`) and the docs site
|
|
20
|
+
* (`docs.aglyn.com`).
|
|
21
|
+
*
|
|
22
|
+
* ## Why this exists beside `advertising-tags.ts` rather than inside it
|
|
23
|
+
*
|
|
24
|
+
* {@link resolveAdvertisingTags} answers the same question for a TENANT page,
|
|
25
|
+
* and every one of its inputs is a host document: the surface discriminator is
|
|
26
|
+
* `isPlatformMarketingHost`, the configuration is `analytics.adTags`, and the
|
|
27
|
+
* consent record is keyed per host id. None of those exist here. The console
|
|
28
|
+
* and the docs are not sites anybody published; they are Aglyn's own
|
|
29
|
+
* properties, so their ids come from build configuration and their consent
|
|
30
|
+
* comes from the platform record.
|
|
31
|
+
*
|
|
32
|
+
* What is deliberately NOT duplicated is the vendor registry. Both resolvers
|
|
33
|
+
* read {@link ADVERTISING_VENDORS}, so a vendor is described — loaded, torn
|
|
34
|
+
* down, and its cookies named — exactly once. A second registry is how a
|
|
35
|
+
* vendor comes to be revocable on one surface and resident forever on
|
|
36
|
+
* another.
|
|
37
|
+
*
|
|
38
|
+
* ## Configuration, and why nothing is hardcoded
|
|
39
|
+
*
|
|
40
|
+
* ⛔ No default id, for any vendor. `analyticsMayEmit()` is true for ANY
|
|
41
|
+
* production build, self-hosted ones included, so a hardcoded pixel id would
|
|
42
|
+
* have every operator's console building retargeting audiences in Aglyn's ad
|
|
43
|
+
* accounts out of their users. Unset means unset and nothing loads — the same
|
|
44
|
+
* rule `platform-ad-conversions.ts` and the docs site's `DOCS_*` values are
|
|
45
|
+
* built on, and the one this file follows rather than reinvents.
|
|
46
|
+
*
|
|
47
|
+
* A self-host operator's own advertising tags are their business: setting
|
|
48
|
+
* these variables to their own ids is how they run them, and leaving them
|
|
49
|
+
* unset is how they run none.
|
|
50
|
+
*
|
|
51
|
+
* ⚠️ `process.env.NAME` is inlined at BUILD time by Next and never the bracket
|
|
52
|
+
* form, so every read below is written out literally. They are fixed when the
|
|
53
|
+
* image is built rather than when it starts; changing ad accounts is a
|
|
54
|
+
* rebuild.
|
|
55
|
+
*/
|
|
56
|
+
import { type ResolvedAdvertisingTag } from './advertising-tags';
|
|
57
|
+
import { type AnalyticsEnvironment } from './analytics-environment';
|
|
58
|
+
/**
|
|
59
|
+
* The build-configured account id for each vendor this surface can mount,
|
|
60
|
+
* keyed by {@link AdvertisingVendor.id}.
|
|
61
|
+
*
|
|
62
|
+
* Read at CALL time rather than captured in a module constant, so a spec can
|
|
63
|
+
* drive every branch — the alternative is a constant that can only ever be
|
|
64
|
+
* observed in one state, which is the shape of a check that cannot fail.
|
|
65
|
+
* `readAnalyticsEnvironment` is written the same way and for the same reason.
|
|
66
|
+
*/
|
|
67
|
+
export declare function readPlatformAdTagIds(): Record<string, string>;
|
|
68
|
+
/** The build-configured Google Tag Manager container, or an empty string. */
|
|
69
|
+
export declare function readPlatformGtmContainerId(): string;
|
|
70
|
+
/**
|
|
71
|
+
* Which advertising tags may exist on this surface, for this visitor, right
|
|
72
|
+
* now.
|
|
73
|
+
*
|
|
74
|
+
* Pure, and empty is the answer to every question it cannot answer — a build
|
|
75
|
+
* that may not emit, a visitor who has not granted, an unconfigured vendor, a
|
|
76
|
+
* malformed id.
|
|
77
|
+
*
|
|
78
|
+
* `advertisingGranted` is PASSED IN rather than read here, and that is the
|
|
79
|
+
* whole of the arrangement this module is for. Each surface resolves consent
|
|
80
|
+
* through the machinery it already has — the console through
|
|
81
|
+
* `platformAdvertisingAllowed()` over its own posture-resolved record, the
|
|
82
|
+
* docs site through the registrable-domain mirror of that same record — and
|
|
83
|
+
* neither gets a second reading of a cookie from inside an analytics helper.
|
|
84
|
+
* One resolver per surface, asked by the mount rather than re-implemented in
|
|
85
|
+
* it.
|
|
86
|
+
*
|
|
87
|
+
* `analyticsMayEmit` is checked HERE and not left to the caller, because it is
|
|
88
|
+
* the one condition that is a property of the BUILD rather than of the
|
|
89
|
+
* visitor: `next dev` and any Vercel preview build resolve these ids exactly
|
|
90
|
+
* as production does, and without this a preview deploy would build real
|
|
91
|
+
* retargeting audiences out of our own engineers (AGL-2067).
|
|
92
|
+
*/
|
|
93
|
+
export declare function resolvePlatformAdvertisingTags(advertisingGranted: boolean, ids?: Record<string, string>, env?: AnalyticsEnvironment, internal?: boolean): ResolvedAdvertisingTag[];
|
|
94
|
+
/**
|
|
95
|
+
* The Google Tag Manager container this surface may load, or null.
|
|
96
|
+
*
|
|
97
|
+
* ## Why the gate here is ANALYTICS and never advertising
|
|
98
|
+
*
|
|
99
|
+
* A container is not a tag — it is a LOADER, and what it loads is decided in
|
|
100
|
+
* Google's UI by whoever owns it, not here. The tenant runtime already settled
|
|
101
|
+
* the rule this follows: a container cannot have a WEAKER gate than GA,
|
|
102
|
+
* because it is the likeliest thing on a page to carry an advertising tag, and
|
|
103
|
+
* it cannot have a stronger one either or a container-only surface would never
|
|
104
|
+
* load at all. So it rides the analytics grant, and the advertising signals
|
|
105
|
+
* the visitor did or did not give reach its tags through Consent Mode v2 —
|
|
106
|
+
* which is why `PLATFORM_CONSENT_DEFAULT_COMMANDS` has to be declared before
|
|
107
|
+
* `gtm.js` is requested and not after.
|
|
108
|
+
*
|
|
109
|
+
* ⚠️ A container's CONTENTS are not visible from this repository, and what is
|
|
110
|
+
* in one is a disclosure obligation as much as a technical one: a tag added in
|
|
111
|
+
* Google's UI appears in no inventory here and no spec can see it. That is a
|
|
112
|
+
* reason to know what a container holds before configuring one on a surface,
|
|
113
|
+
* not a reason for this function to be looser.
|
|
114
|
+
*
|
|
115
|
+
* ⛔ NO `<noscript>` iframe accompanies this anywhere, deliberately, and it is
|
|
116
|
+
* the one piece of Google's standard snippet always omitted. That iframe fires
|
|
117
|
+
* the container with no JavaScript — so no consent defaults, no gate, nothing
|
|
118
|
+
* to suppress it. It is a consent bypass with a fallback's reputation. A
|
|
119
|
+
* visitor with JavaScript off gets no container, which is the correct answer.
|
|
120
|
+
*/
|
|
121
|
+
export declare function resolvePlatformGtmContainerId(analyticsGranted: boolean, containerId?: string, env?: AnalyticsEnvironment, internal?: boolean): string | null;
|
|
122
|
+
/**
|
|
123
|
+
* The inline boot for a Google Tag Manager container.
|
|
124
|
+
*
|
|
125
|
+
* The consent-mode declaration is NOT part of this string. Every surface that
|
|
126
|
+
* calls it declares `PLATFORM_CONSENT_DEFAULT_COMMANDS` earlier and by its own
|
|
127
|
+
* route — the console pushes them onto `dataLayer` before the Firebase SDK
|
|
128
|
+
* boots gtag, the docs site emits them from its `ssrTemplate` ahead of every
|
|
129
|
+
* plugin tag — and re-declaring a default mid-page re-DENIES what the first
|
|
130
|
+
* one granted until an update lands. One declaration per document, made by
|
|
131
|
+
* whoever is first.
|
|
132
|
+
*
|
|
133
|
+
* The `gtag` shim is defined anyway, because it is cheap and because
|
|
134
|
+
* `dataLayer.push` of a plain array is the classic silent no-op if anything
|
|
135
|
+
* downstream reaches for the function form.
|
|
136
|
+
*/
|
|
137
|
+
export declare function platformGtmBootSnippet(): string;
|
|
138
|
+
/** The container library URL for `containerId`. */
|
|
139
|
+
export declare function platformGtmScriptSrc(containerId: string): string;
|