@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,167 @@
|
|
|
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 SHAPE this runtime is: a deployment, or a developer's machine
|
|
19
|
+
* (AGL-2177, AGL-2180).
|
|
20
|
+
*
|
|
21
|
+
* ## Why this needs a name
|
|
22
|
+
*
|
|
23
|
+
* `process.env.VERCEL` was doing duty as "is this a real deployment" in four
|
|
24
|
+
* places, and Aglyn's cloud is not the only deployment shape the product
|
|
25
|
+
* supports. On a self-host container `docker/*.Dockerfile` sets
|
|
26
|
+
* `AGLYN_STANDALONE=1` and never sets `VERCEL`, so every one of those checks
|
|
27
|
+
* read a production install as a developer's laptop:
|
|
28
|
+
*
|
|
29
|
+
* - `apps/tenant/middleware.ts` resolved no host at all and 307'd every
|
|
30
|
+
* visitor to `app.aglyn.com` — the serving half of self-hosting, inert
|
|
31
|
+
* (AGL-2177).
|
|
32
|
+
* - `apps/console/app/api/domains/verify/route.ts` enabled its DEV soft-pass,
|
|
33
|
+
* so any domain carrying any CNAME to anywhere verified — the AGL-733
|
|
34
|
+
* defect, reinstated on every self-host install.
|
|
35
|
+
* - `apps/tenant/.../load-page-data.ts` never redirected a platform subdomain
|
|
36
|
+
* to its connected custom domain, so every site served at two addresses.
|
|
37
|
+
*
|
|
38
|
+
* The question those checks are asking is not "are we on Vercel". Naming it
|
|
39
|
+
* separately is what stops the next one from reaching for the vendor variable
|
|
40
|
+
* again.
|
|
41
|
+
*
|
|
42
|
+
* ## The two predicates are not interchangeable
|
|
43
|
+
*
|
|
44
|
+
* {@link isDeployedRuntime} is the broad one, and it is what a branch about
|
|
45
|
+
* *any* deployment wants. But a security relaxation must not key off it, and
|
|
46
|
+
* that distinction is the whole of AGL-2180: a check that loosens because it
|
|
47
|
+
* cannot find a hosting vendor's environment variable is failing open on an
|
|
48
|
+
* axis unrelated to the thing it is protecting. For those, use
|
|
49
|
+
* {@link isDevelopmentRuntime}, which keys on `NODE_ENV` — the variable that
|
|
50
|
+
* actually means "this is not production", is set by every runtime including
|
|
51
|
+
* containers, and cannot be absent by accident on a production build.
|
|
52
|
+
*
|
|
53
|
+
* ## Not importable from an edge bundle
|
|
54
|
+
*
|
|
55
|
+
* `apps/tenant/middleware.ts` keeps its own local copy of the deployed
|
|
56
|
+
* predicate, for the same reason it keeps a local `PLATFORM_GENERATOR_NAME`:
|
|
57
|
+
* middleware runs in the edge runtime, and every middleware in this repo
|
|
58
|
+
* imports only app-local constants precisely so a server-only graph never gets
|
|
59
|
+
* dragged into an edge bundle. The copy is kept honest by an assertion in
|
|
60
|
+
* `apps/tenant/specs/selfhost-host-resolution.spec.ts` rather than by hope.
|
|
61
|
+
*/
|
|
62
|
+
/**
|
|
63
|
+
* True when this process is a real deployment — Aglyn's cloud, or an
|
|
64
|
+
* operator's own container — as opposed to a developer's machine.
|
|
65
|
+
*
|
|
66
|
+
* Use for behaviour that should be live wherever the product is actually
|
|
67
|
+
* serving. Do NOT use to decide whether a security check may be relaxed; see
|
|
68
|
+
* {@link isDevelopmentRuntime}.
|
|
69
|
+
*/
|
|
70
|
+
export declare function isDeployedRuntime(env?: Record<string, string | undefined>): boolean;
|
|
71
|
+
/**
|
|
72
|
+
* True only on a PRODUCTION deployment — Vercel production, or an operator's
|
|
73
|
+
* container running in production.
|
|
74
|
+
*
|
|
75
|
+
* Narrower than {@link isDeployedRuntime} on purpose, and the difference is a
|
|
76
|
+
* preview. The canonical custom-domain redirect keys on this: a preview
|
|
77
|
+
* deployment that bounced a reviewer onto the customer's live site would be
|
|
78
|
+
* useless, and a dev machine that did it would be baffling — so "any
|
|
79
|
+
* deployment" is the wrong question there even though it is the right one for
|
|
80
|
+
* host resolution.
|
|
81
|
+
*
|
|
82
|
+
* That distinction was caught by `canonical-domain-redirect.spec.ts` refusing
|
|
83
|
+
* a broader predicate, which is the test suite doing its job: the first
|
|
84
|
+
* attempt at AGL-2180 used {@link isDeployedRuntime} here and would have
|
|
85
|
+
* started redirecting reviewers off every preview build.
|
|
86
|
+
*/
|
|
87
|
+
export declare function isProductionDeployment(env?: Record<string, string | undefined>): boolean;
|
|
88
|
+
/**
|
|
89
|
+
* What to call this deployment's environment in a health report (AGL-2436).
|
|
90
|
+
*
|
|
91
|
+
* Both health routes read `process.env.VERCEL_ENV ?? 'development'`, so an
|
|
92
|
+
* operator's production container reported `"environment": "development"` —
|
|
93
|
+
* to them, and to whatever monitoring they point at it. A health endpoint is
|
|
94
|
+
* the one surface whose entire job is to say what is running, and it was
|
|
95
|
+
* saying the opposite for every deployment that is not ours.
|
|
96
|
+
*
|
|
97
|
+
* `VERCEL_ENV` still wins where it exists, because it distinguishes a preview
|
|
98
|
+
* from production and nothing else can. Off Vercel the answer comes from the
|
|
99
|
+
* predicates above rather than from the absence of a vendor's variable.
|
|
100
|
+
*/
|
|
101
|
+
export declare function deploymentEnvironmentLabel(env?: Record<string, string | undefined>): string;
|
|
102
|
+
/**
|
|
103
|
+
* True only on a development runtime.
|
|
104
|
+
*
|
|
105
|
+
* The predicate a relaxation is allowed to key on. `NODE_ENV` is set to
|
|
106
|
+
* `production` by every production build in this repo — Next sets it, and
|
|
107
|
+
* both Dockerfiles set it explicitly — so unlike a vendor variable it cannot
|
|
108
|
+
* be quietly absent on a real install and hand a production deployment the
|
|
109
|
+
* developer's rules.
|
|
110
|
+
*/
|
|
111
|
+
export declare function isDevelopmentRuntime(env?: Record<string, string | undefined>): boolean;
|
|
112
|
+
/**
|
|
113
|
+
* WHERE this instance is serving from, for a forensic marker (AGL-2436).
|
|
114
|
+
*
|
|
115
|
+
* The rate-limit degradation marker stamped `VERCEL_REGION` directly, so on
|
|
116
|
+
* any deployment that is not Aglyn's cloud every episode recorded
|
|
117
|
+
* `region: null`. Nothing reads the field yet, so this is honest rather than
|
|
118
|
+
* misleading — but an operator running several replicas has no way to tell
|
|
119
|
+
* which one shed load, which is the only question the field exists to answer.
|
|
120
|
+
*
|
|
121
|
+
* `AGLYN_REGION` is first so an operator can supply the answer their platform
|
|
122
|
+
* does not: a Kubernetes deployment can pass the node's zone or the pod name
|
|
123
|
+
* through the downward API, and a compose file can hard-code the site name.
|
|
124
|
+
* The rest are read because the platforms that set them set them for free.
|
|
125
|
+
*
|
|
126
|
+
* Null rather than a guess when nothing is set: a marker that says it does not
|
|
127
|
+
* know where it ran is usable, and one that invents a locality is not.
|
|
128
|
+
*/
|
|
129
|
+
export declare function deploymentRegion(env?: Record<string, string | undefined>): string | null;
|
|
130
|
+
/**
|
|
131
|
+
* Which BUILD answered, on any deployment shape (AGL-2091).
|
|
132
|
+
*
|
|
133
|
+
* Every `/api/health*` route read `VERCEL_GIT_COMMIT_SHA` directly, which is
|
|
134
|
+
* unset everywhere except Aglyn's cloud — so a self-hosted install's health
|
|
135
|
+
* body said `"commit": null`, and the operator's only way to say what they
|
|
136
|
+
* were running was to guess. The endpoint whose entire job is to describe the
|
|
137
|
+
* running build described nobody else's.
|
|
138
|
+
*
|
|
139
|
+
* The precedence deliberately matches the console footer's (AGL-2181), so the
|
|
140
|
+
* two surfaces cannot disagree about the same build:
|
|
141
|
+
*
|
|
142
|
+
* 1. `BUILD_ID` — an explicit stamp, which is what a self-host operator sets
|
|
143
|
+
* when they cut their own build and want their own identifier back.
|
|
144
|
+
* 2. `COMMIT_REF` — already resolved from four candidates by
|
|
145
|
+
* `with-aglyn.nextjs.config.js` and already exported from `global.ts`; it
|
|
146
|
+
* had no consumers at all until this one.
|
|
147
|
+
* 3. `VERCEL_GIT_COMMIT_SHA` — Aglyn's cloud, unchanged.
|
|
148
|
+
*
|
|
149
|
+
* Shortened to seven characters, the form `/api/health` has always reported,
|
|
150
|
+
* so an existing uptime series stays comparable across the change.
|
|
151
|
+
*/
|
|
152
|
+
export declare function deploymentCommitRef(env?: Record<string, string | undefined>): string | null;
|
|
153
|
+
/**
|
|
154
|
+
* Which VERSION of the platform this is (AGL-2091).
|
|
155
|
+
*
|
|
156
|
+
* The number a self-hoster quotes in a bug report, and the one that answers
|
|
157
|
+
* "has the fix reached me yet". It needs no operator configuration:
|
|
158
|
+
* `with-aglyn.nextjs.config.js` reads it out of the root `package.json` and
|
|
159
|
+
* inlines it as `PACKAGE_VERSION`, so a container built from a release tag
|
|
160
|
+
* reports that release the first time it starts — unlike the commit, which an
|
|
161
|
+
* operator has to stamp if they want it.
|
|
162
|
+
*
|
|
163
|
+
* Null rather than `'NULL'` when a build missed the define: a health body that
|
|
164
|
+
* admits it does not know is honest, and one that reports a version of "NULL"
|
|
165
|
+
* teaches whoever reads it to ignore the field.
|
|
166
|
+
*/
|
|
167
|
+
export declare function platformVersion(env?: Record<string, string | undefined>): string | null;
|
|
@@ -0,0 +1,238 @@
|
|
|
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
|
+
* Which SHAPE this runtime is: a deployment, or a developer's machine
|
|
18
|
+
* (AGL-2177, AGL-2180).
|
|
19
|
+
*
|
|
20
|
+
* ## Why this needs a name
|
|
21
|
+
*
|
|
22
|
+
* `process.env.VERCEL` was doing duty as "is this a real deployment" in four
|
|
23
|
+
* places, and Aglyn's cloud is not the only deployment shape the product
|
|
24
|
+
* supports. On a self-host container `docker/*.Dockerfile` sets
|
|
25
|
+
* `AGLYN_STANDALONE=1` and never sets `VERCEL`, so every one of those checks
|
|
26
|
+
* read a production install as a developer's laptop:
|
|
27
|
+
*
|
|
28
|
+
* - `apps/tenant/middleware.ts` resolved no host at all and 307'd every
|
|
29
|
+
* visitor to `app.aglyn.com` — the serving half of self-hosting, inert
|
|
30
|
+
* (AGL-2177).
|
|
31
|
+
* - `apps/console/app/api/domains/verify/route.ts` enabled its DEV soft-pass,
|
|
32
|
+
* so any domain carrying any CNAME to anywhere verified — the AGL-733
|
|
33
|
+
* defect, reinstated on every self-host install.
|
|
34
|
+
* - `apps/tenant/.../load-page-data.ts` never redirected a platform subdomain
|
|
35
|
+
* to its connected custom domain, so every site served at two addresses.
|
|
36
|
+
*
|
|
37
|
+
* The question those checks are asking is not "are we on Vercel". Naming it
|
|
38
|
+
* separately is what stops the next one from reaching for the vendor variable
|
|
39
|
+
* again.
|
|
40
|
+
*
|
|
41
|
+
* ## The two predicates are not interchangeable
|
|
42
|
+
*
|
|
43
|
+
* {@link isDeployedRuntime} is the broad one, and it is what a branch about
|
|
44
|
+
* *any* deployment wants. But a security relaxation must not key off it, and
|
|
45
|
+
* that distinction is the whole of AGL-2180: a check that loosens because it
|
|
46
|
+
* cannot find a hosting vendor's environment variable is failing open on an
|
|
47
|
+
* axis unrelated to the thing it is protecting. For those, use
|
|
48
|
+
* {@link isDevelopmentRuntime}, which keys on `NODE_ENV` — the variable that
|
|
49
|
+
* actually means "this is not production", is set by every runtime including
|
|
50
|
+
* containers, and cannot be absent by accident on a production build.
|
|
51
|
+
*
|
|
52
|
+
* ## Not importable from an edge bundle
|
|
53
|
+
*
|
|
54
|
+
* `apps/tenant/middleware.ts` keeps its own local copy of the deployed
|
|
55
|
+
* predicate, for the same reason it keeps a local `PLATFORM_GENERATOR_NAME`:
|
|
56
|
+
* middleware runs in the edge runtime, and every middleware in this repo
|
|
57
|
+
* imports only app-local constants precisely so a server-only graph never gets
|
|
58
|
+
* dragged into an edge bundle. The copy is kept honest by an assertion in
|
|
59
|
+
* `apps/tenant/specs/selfhost-host-resolution.spec.ts` rather than by hope.
|
|
60
|
+
*/ /**
|
|
61
|
+
* True when this process is a real deployment — Aglyn's cloud, or an
|
|
62
|
+
* operator's own container — as opposed to a developer's machine.
|
|
63
|
+
*
|
|
64
|
+
* Use for behaviour that should be live wherever the product is actually
|
|
65
|
+
* serving. Do NOT use to decide whether a security check may be relaxed; see
|
|
66
|
+
* {@link isDevelopmentRuntime}.
|
|
67
|
+
*/ export function isDeployedRuntime(env = process.env) {
|
|
68
|
+
return Boolean(env['VERCEL']) || env['AGLYN_STANDALONE'] === '1';
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* True only on a PRODUCTION deployment — Vercel production, or an operator's
|
|
72
|
+
* container running in production.
|
|
73
|
+
*
|
|
74
|
+
* Narrower than {@link isDeployedRuntime} on purpose, and the difference is a
|
|
75
|
+
* preview. The canonical custom-domain redirect keys on this: a preview
|
|
76
|
+
* deployment that bounced a reviewer onto the customer's live site would be
|
|
77
|
+
* useless, and a dev machine that did it would be baffling — so "any
|
|
78
|
+
* deployment" is the wrong question there even though it is the right one for
|
|
79
|
+
* host resolution.
|
|
80
|
+
*
|
|
81
|
+
* That distinction was caught by `canonical-domain-redirect.spec.ts` refusing
|
|
82
|
+
* a broader predicate, which is the test suite doing its job: the first
|
|
83
|
+
* attempt at AGL-2180 used {@link isDeployedRuntime} here and would have
|
|
84
|
+
* started redirecting reviewers off every preview build.
|
|
85
|
+
*/ export function isProductionDeployment(env = process.env) {
|
|
86
|
+
if (env['VERCEL_ENV'] === 'production') return true;
|
|
87
|
+
return env['AGLYN_STANDALONE'] === '1' && env['NODE_ENV'] === 'production';
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* What to call this deployment's environment in a health report (AGL-2436).
|
|
91
|
+
*
|
|
92
|
+
* Both health routes read `process.env.VERCEL_ENV ?? 'development'`, so an
|
|
93
|
+
* operator's production container reported `"environment": "development"` —
|
|
94
|
+
* to them, and to whatever monitoring they point at it. A health endpoint is
|
|
95
|
+
* the one surface whose entire job is to say what is running, and it was
|
|
96
|
+
* saying the opposite for every deployment that is not ours.
|
|
97
|
+
*
|
|
98
|
+
* `VERCEL_ENV` still wins where it exists, because it distinguishes a preview
|
|
99
|
+
* from production and nothing else can. Off Vercel the answer comes from the
|
|
100
|
+
* predicates above rather than from the absence of a vendor's variable.
|
|
101
|
+
*/ export function deploymentEnvironmentLabel(env = process.env) {
|
|
102
|
+
const vercel = env['VERCEL_ENV'];
|
|
103
|
+
if (vercel) return vercel;
|
|
104
|
+
if (isProductionDeployment(env)) return 'production';
|
|
105
|
+
if (isDeployedRuntime(env)) return 'deployment';
|
|
106
|
+
return 'development';
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* True only on a development runtime.
|
|
110
|
+
*
|
|
111
|
+
* The predicate a relaxation is allowed to key on. `NODE_ENV` is set to
|
|
112
|
+
* `production` by every production build in this repo — Next sets it, and
|
|
113
|
+
* both Dockerfiles set it explicitly — so unlike a vendor variable it cannot
|
|
114
|
+
* be quietly absent on a real install and hand a production deployment the
|
|
115
|
+
* developer's rules.
|
|
116
|
+
*/ export function isDevelopmentRuntime(env = process.env) {
|
|
117
|
+
return env['NODE_ENV'] !== 'production';
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* WHERE this instance is serving from, for a forensic marker (AGL-2436).
|
|
121
|
+
*
|
|
122
|
+
* The rate-limit degradation marker stamped `VERCEL_REGION` directly, so on
|
|
123
|
+
* any deployment that is not Aglyn's cloud every episode recorded
|
|
124
|
+
* `region: null`. Nothing reads the field yet, so this is honest rather than
|
|
125
|
+
* misleading — but an operator running several replicas has no way to tell
|
|
126
|
+
* which one shed load, which is the only question the field exists to answer.
|
|
127
|
+
*
|
|
128
|
+
* `AGLYN_REGION` is first so an operator can supply the answer their platform
|
|
129
|
+
* does not: a Kubernetes deployment can pass the node's zone or the pod name
|
|
130
|
+
* through the downward API, and a compose file can hard-code the site name.
|
|
131
|
+
* The rest are read because the platforms that set them set them for free.
|
|
132
|
+
*
|
|
133
|
+
* Null rather than a guess when nothing is set: a marker that says it does not
|
|
134
|
+
* know where it ran is usable, and one that invents a locality is not.
|
|
135
|
+
*/ export function deploymentRegion(env = process.env) {
|
|
136
|
+
for (const name of [
|
|
137
|
+
'AGLYN_REGION',
|
|
138
|
+
'VERCEL_REGION',
|
|
139
|
+
'FLY_REGION',
|
|
140
|
+
'AWS_REGION',
|
|
141
|
+
'AWS_DEFAULT_REGION'
|
|
142
|
+
]){
|
|
143
|
+
var _env_name;
|
|
144
|
+
const value = String((_env_name = env[name]) != null ? _env_name : '').trim();
|
|
145
|
+
if (value) return value;
|
|
146
|
+
}
|
|
147
|
+
return null;
|
|
148
|
+
}
|
|
149
|
+
/**
|
|
150
|
+
* Build metadata that is unset, in every spelling this repo produces.
|
|
151
|
+
*
|
|
152
|
+
* `libs/shared/data/enums/src/lib/global.ts` renders unset build metadata as
|
|
153
|
+
* the literal string `'NULL'`, and a Docker `ARG` referenced with no value
|
|
154
|
+
* hands the same text through the build. Treating those as a real answer is
|
|
155
|
+
* how a health endpoint ends up reporting that it is running commit "NULL".
|
|
156
|
+
*/ const UNSTAMPED = new Set([
|
|
157
|
+
'',
|
|
158
|
+
'NULL',
|
|
159
|
+
'null',
|
|
160
|
+
'undefined'
|
|
161
|
+
]);
|
|
162
|
+
/**
|
|
163
|
+
* Build metadata, read as LITERALS at module scope — and that is load-bearing.
|
|
164
|
+
*
|
|
165
|
+
* `PACKAGE_VERSION`, `BUILD_ID` and `COMMIT_REF` are not runtime environment
|
|
166
|
+
* variables. They are build-time defines: `with-aglyn.nextjs.config.js` lists
|
|
167
|
+
* them in `env`, and the bundler replaces the literal text
|
|
168
|
+
* `process.env.PACKAGE_VERSION` with the value. Nothing sets them in the
|
|
169
|
+
* process — the Dockerfiles set `COMMIT_REF` in the BUILD stage, not the
|
|
170
|
+
* runner — so a read that the bundler cannot see statically resolves to
|
|
171
|
+
* `undefined` at runtime.
|
|
172
|
+
*
|
|
173
|
+
* A parameterised read is exactly such a read: with `env = process.env`,
|
|
174
|
+
* `env['PACKAGE_VERSION']` is a property access on an alias and no bundler
|
|
175
|
+
* replaces it. The functions below therefore default to this snapshot rather
|
|
176
|
+
* than to `process.env`, which is the difference between a health body that
|
|
177
|
+
* reports a version and one that reports null while every unit test passes.
|
|
178
|
+
* `deploymentEnvironmentLabel()` above can default to `process.env` because
|
|
179
|
+
* `VERCEL_ENV`, `NODE_ENV` and `AGLYN_STANDALONE` are genuine runtime
|
|
180
|
+
* variables — the distinction is the variable, not the style.
|
|
181
|
+
*
|
|
182
|
+
* `VERCEL_GIT_COMMIT_SHA` is both, and is read here for uniformity; it is set
|
|
183
|
+
* in the Vercel runtime as well as inlined, and `/api/health` has been
|
|
184
|
+
* answering `"commit"` from it in production all along.
|
|
185
|
+
*/ const BUILD_METADATA = {
|
|
186
|
+
BUILD_ID: process.env.BUILD_ID,
|
|
187
|
+
COMMIT_REF: process.env.COMMIT_REF,
|
|
188
|
+
PACKAGE_VERSION: process.env.PACKAGE_VERSION,
|
|
189
|
+
VERCEL_GIT_COMMIT_SHA: process.env.VERCEL_GIT_COMMIT_SHA
|
|
190
|
+
};
|
|
191
|
+
function stamped(value) {
|
|
192
|
+
const trimmed = String(value != null ? value : '').trim();
|
|
193
|
+
return UNSTAMPED.has(trimmed) ? null : trimmed;
|
|
194
|
+
}
|
|
195
|
+
/**
|
|
196
|
+
* Which BUILD answered, on any deployment shape (AGL-2091).
|
|
197
|
+
*
|
|
198
|
+
* Every `/api/health*` route read `VERCEL_GIT_COMMIT_SHA` directly, which is
|
|
199
|
+
* unset everywhere except Aglyn's cloud — so a self-hosted install's health
|
|
200
|
+
* body said `"commit": null`, and the operator's only way to say what they
|
|
201
|
+
* were running was to guess. The endpoint whose entire job is to describe the
|
|
202
|
+
* running build described nobody else's.
|
|
203
|
+
*
|
|
204
|
+
* The precedence deliberately matches the console footer's (AGL-2181), so the
|
|
205
|
+
* two surfaces cannot disagree about the same build:
|
|
206
|
+
*
|
|
207
|
+
* 1. `BUILD_ID` — an explicit stamp, which is what a self-host operator sets
|
|
208
|
+
* when they cut their own build and want their own identifier back.
|
|
209
|
+
* 2. `COMMIT_REF` — already resolved from four candidates by
|
|
210
|
+
* `with-aglyn.nextjs.config.js` and already exported from `global.ts`; it
|
|
211
|
+
* had no consumers at all until this one.
|
|
212
|
+
* 3. `VERCEL_GIT_COMMIT_SHA` — Aglyn's cloud, unchanged.
|
|
213
|
+
*
|
|
214
|
+
* Shortened to seven characters, the form `/api/health` has always reported,
|
|
215
|
+
* so an existing uptime series stays comparable across the change.
|
|
216
|
+
*/ export function deploymentCommitRef(env = BUILD_METADATA) {
|
|
217
|
+
var _ref, _stamped;
|
|
218
|
+
const ref = (_ref = (_stamped = stamped(env['BUILD_ID'])) != null ? _stamped : stamped(env['COMMIT_REF'])) != null ? _ref : stamped(env['VERCEL_GIT_COMMIT_SHA']);
|
|
219
|
+
return ref === null ? null : ref.slice(0, 7);
|
|
220
|
+
}
|
|
221
|
+
/**
|
|
222
|
+
* Which VERSION of the platform this is (AGL-2091).
|
|
223
|
+
*
|
|
224
|
+
* The number a self-hoster quotes in a bug report, and the one that answers
|
|
225
|
+
* "has the fix reached me yet". It needs no operator configuration:
|
|
226
|
+
* `with-aglyn.nextjs.config.js` reads it out of the root `package.json` and
|
|
227
|
+
* inlines it as `PACKAGE_VERSION`, so a container built from a release tag
|
|
228
|
+
* reports that release the first time it starts — unlike the commit, which an
|
|
229
|
+
* operator has to stamp if they want it.
|
|
230
|
+
*
|
|
231
|
+
* Null rather than `'NULL'` when a build missed the define: a health body that
|
|
232
|
+
* admits it does not know is honest, and one that reports a version of "NULL"
|
|
233
|
+
* teaches whoever reads it to ignore the field.
|
|
234
|
+
*/ export function platformVersion(env = BUILD_METADATA) {
|
|
235
|
+
return stamped(env['PACKAGE_VERSION']);
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
//# sourceMappingURL=deployment-shape.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../libs/aglyn/src/lib/app-utils/deployment-shape.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 * Which SHAPE this runtime is: a deployment, or a developer's machine\n * (AGL-2177, AGL-2180).\n *\n * ## Why this needs a name\n *\n * `process.env.VERCEL` was doing duty as \"is this a real deployment\" in four\n * places, and Aglyn's cloud is not the only deployment shape the product\n * supports. On a self-host container `docker/*.Dockerfile` sets\n * `AGLYN_STANDALONE=1` and never sets `VERCEL`, so every one of those checks\n * read a production install as a developer's laptop:\n *\n * - `apps/tenant/middleware.ts` resolved no host at all and 307'd every\n * visitor to `app.aglyn.com` — the serving half of self-hosting, inert\n * (AGL-2177).\n * - `apps/console/app/api/domains/verify/route.ts` enabled its DEV soft-pass,\n * so any domain carrying any CNAME to anywhere verified — the AGL-733\n * defect, reinstated on every self-host install.\n * - `apps/tenant/.../load-page-data.ts` never redirected a platform subdomain\n * to its connected custom domain, so every site served at two addresses.\n *\n * The question those checks are asking is not \"are we on Vercel\". Naming it\n * separately is what stops the next one from reaching for the vendor variable\n * again.\n *\n * ## The two predicates are not interchangeable\n *\n * {@link isDeployedRuntime} is the broad one, and it is what a branch about\n * *any* deployment wants. But a security relaxation must not key off it, and\n * that distinction is the whole of AGL-2180: a check that loosens because it\n * cannot find a hosting vendor's environment variable is failing open on an\n * axis unrelated to the thing it is protecting. For those, use\n * {@link isDevelopmentRuntime}, which keys on `NODE_ENV` — the variable that\n * actually means \"this is not production\", is set by every runtime including\n * containers, and cannot be absent by accident on a production build.\n *\n * ## Not importable from an edge bundle\n *\n * `apps/tenant/middleware.ts` keeps its own local copy of the deployed\n * predicate, for the same reason it keeps a local `PLATFORM_GENERATOR_NAME`:\n * middleware runs in the edge runtime, and every middleware in this repo\n * imports only app-local constants precisely so a server-only graph never gets\n * dragged into an edge bundle. The copy is kept honest by an assertion in\n * `apps/tenant/specs/selfhost-host-resolution.spec.ts` rather than by hope.\n */\n\n/**\n * True when this process is a real deployment — Aglyn's cloud, or an\n * operator's own container — as opposed to a developer's machine.\n *\n * Use for behaviour that should be live wherever the product is actually\n * serving. Do NOT use to decide whether a security check may be relaxed; see\n * {@link isDevelopmentRuntime}.\n */\nexport function isDeployedRuntime(\n env: Record<string, string | undefined> = process.env,\n): boolean {\n return Boolean(env['VERCEL']) || env['AGLYN_STANDALONE'] === '1'\n}\n\n/**\n * True only on a PRODUCTION deployment — Vercel production, or an operator's\n * container running in production.\n *\n * Narrower than {@link isDeployedRuntime} on purpose, and the difference is a\n * preview. The canonical custom-domain redirect keys on this: a preview\n * deployment that bounced a reviewer onto the customer's live site would be\n * useless, and a dev machine that did it would be baffling — so \"any\n * deployment\" is the wrong question there even though it is the right one for\n * host resolution.\n *\n * That distinction was caught by `canonical-domain-redirect.spec.ts` refusing\n * a broader predicate, which is the test suite doing its job: the first\n * attempt at AGL-2180 used {@link isDeployedRuntime} here and would have\n * started redirecting reviewers off every preview build.\n */\nexport function isProductionDeployment(\n env: Record<string, string | undefined> = process.env,\n): boolean {\n if (env['VERCEL_ENV'] === 'production') return true\n return env['AGLYN_STANDALONE'] === '1' && env['NODE_ENV'] === 'production'\n}\n\n/**\n * What to call this deployment's environment in a health report (AGL-2436).\n *\n * Both health routes read `process.env.VERCEL_ENV ?? 'development'`, so an\n * operator's production container reported `\"environment\": \"development\"` —\n * to them, and to whatever monitoring they point at it. A health endpoint is\n * the one surface whose entire job is to say what is running, and it was\n * saying the opposite for every deployment that is not ours.\n *\n * `VERCEL_ENV` still wins where it exists, because it distinguishes a preview\n * from production and nothing else can. Off Vercel the answer comes from the\n * predicates above rather than from the absence of a vendor's variable.\n */\nexport function deploymentEnvironmentLabel(\n env: Record<string, string | undefined> = process.env,\n): string {\n const vercel = env['VERCEL_ENV']\n if (vercel) return vercel\n if (isProductionDeployment(env)) return 'production'\n if (isDeployedRuntime(env)) return 'deployment'\n return 'development'\n}\n\n/**\n * True only on a development runtime.\n *\n * The predicate a relaxation is allowed to key on. `NODE_ENV` is set to\n * `production` by every production build in this repo — Next sets it, and\n * both Dockerfiles set it explicitly — so unlike a vendor variable it cannot\n * be quietly absent on a real install and hand a production deployment the\n * developer's rules.\n */\nexport function isDevelopmentRuntime(\n env: Record<string, string | undefined> = process.env,\n): boolean {\n return env['NODE_ENV'] !== 'production'\n}\n\n/**\n * WHERE this instance is serving from, for a forensic marker (AGL-2436).\n *\n * The rate-limit degradation marker stamped `VERCEL_REGION` directly, so on\n * any deployment that is not Aglyn's cloud every episode recorded\n * `region: null`. Nothing reads the field yet, so this is honest rather than\n * misleading — but an operator running several replicas has no way to tell\n * which one shed load, which is the only question the field exists to answer.\n *\n * `AGLYN_REGION` is first so an operator can supply the answer their platform\n * does not: a Kubernetes deployment can pass the node's zone or the pod name\n * through the downward API, and a compose file can hard-code the site name.\n * The rest are read because the platforms that set them set them for free.\n *\n * Null rather than a guess when nothing is set: a marker that says it does not\n * know where it ran is usable, and one that invents a locality is not.\n */\nexport function deploymentRegion(\n env: Record<string, string | undefined> = process.env,\n): string | null {\n for (const name of [\n 'AGLYN_REGION',\n 'VERCEL_REGION',\n 'FLY_REGION',\n 'AWS_REGION',\n 'AWS_DEFAULT_REGION',\n ]) {\n const value = String(env[name] ?? '').trim()\n if (value) return value\n }\n return null\n}\n\n/**\n * Build metadata that is unset, in every spelling this repo produces.\n *\n * `libs/shared/data/enums/src/lib/global.ts` renders unset build metadata as\n * the literal string `'NULL'`, and a Docker `ARG` referenced with no value\n * hands the same text through the build. Treating those as a real answer is\n * how a health endpoint ends up reporting that it is running commit \"NULL\".\n */\nconst UNSTAMPED = new Set(['', 'NULL', 'null', 'undefined'])\n\n/**\n * Build metadata, read as LITERALS at module scope — and that is load-bearing.\n *\n * `PACKAGE_VERSION`, `BUILD_ID` and `COMMIT_REF` are not runtime environment\n * variables. They are build-time defines: `with-aglyn.nextjs.config.js` lists\n * them in `env`, and the bundler replaces the literal text\n * `process.env.PACKAGE_VERSION` with the value. Nothing sets them in the\n * process — the Dockerfiles set `COMMIT_REF` in the BUILD stage, not the\n * runner — so a read that the bundler cannot see statically resolves to\n * `undefined` at runtime.\n *\n * A parameterised read is exactly such a read: with `env = process.env`,\n * `env['PACKAGE_VERSION']` is a property access on an alias and no bundler\n * replaces it. The functions below therefore default to this snapshot rather\n * than to `process.env`, which is the difference between a health body that\n * reports a version and one that reports null while every unit test passes.\n * `deploymentEnvironmentLabel()` above can default to `process.env` because\n * `VERCEL_ENV`, `NODE_ENV` and `AGLYN_STANDALONE` are genuine runtime\n * variables — the distinction is the variable, not the style.\n *\n * `VERCEL_GIT_COMMIT_SHA` is both, and is read here for uniformity; it is set\n * in the Vercel runtime as well as inlined, and `/api/health` has been\n * answering `\"commit\"` from it in production all along.\n */\nconst BUILD_METADATA: Record<string, string | undefined> = {\n BUILD_ID: process.env.BUILD_ID,\n COMMIT_REF: process.env.COMMIT_REF,\n PACKAGE_VERSION: process.env.PACKAGE_VERSION,\n VERCEL_GIT_COMMIT_SHA: process.env.VERCEL_GIT_COMMIT_SHA,\n}\n\nfunction stamped(value: string | undefined): string | null {\n const trimmed = String(value ?? '').trim()\n return UNSTAMPED.has(trimmed) ? null : trimmed\n}\n\n/**\n * Which BUILD answered, on any deployment shape (AGL-2091).\n *\n * Every `/api/health*` route read `VERCEL_GIT_COMMIT_SHA` directly, which is\n * unset everywhere except Aglyn's cloud — so a self-hosted install's health\n * body said `\"commit\": null`, and the operator's only way to say what they\n * were running was to guess. The endpoint whose entire job is to describe the\n * running build described nobody else's.\n *\n * The precedence deliberately matches the console footer's (AGL-2181), so the\n * two surfaces cannot disagree about the same build:\n *\n * 1. `BUILD_ID` — an explicit stamp, which is what a self-host operator sets\n * when they cut their own build and want their own identifier back.\n * 2. `COMMIT_REF` — already resolved from four candidates by\n * `with-aglyn.nextjs.config.js` and already exported from `global.ts`; it\n * had no consumers at all until this one.\n * 3. `VERCEL_GIT_COMMIT_SHA` — Aglyn's cloud, unchanged.\n *\n * Shortened to seven characters, the form `/api/health` has always reported,\n * so an existing uptime series stays comparable across the change.\n */\nexport function deploymentCommitRef(\n env: Record<string, string | undefined> = BUILD_METADATA,\n): string | null {\n const ref =\n stamped(env['BUILD_ID']) ??\n stamped(env['COMMIT_REF']) ??\n stamped(env['VERCEL_GIT_COMMIT_SHA'])\n return ref === null ? null : ref.slice(0, 7)\n}\n\n/**\n * Which VERSION of the platform this is (AGL-2091).\n *\n * The number a self-hoster quotes in a bug report, and the one that answers\n * \"has the fix reached me yet\". It needs no operator configuration:\n * `with-aglyn.nextjs.config.js` reads it out of the root `package.json` and\n * inlines it as `PACKAGE_VERSION`, so a container built from a release tag\n * reports that release the first time it starts — unlike the commit, which an\n * operator has to stamp if they want it.\n *\n * Null rather than `'NULL'` when a build missed the define: a health body that\n * admits it does not know is honest, and one that reports a version of \"NULL\"\n * teaches whoever reads it to ignore the field.\n */\nexport function platformVersion(\n env: Record<string, string | undefined> = BUILD_METADATA,\n): string | null {\n return stamped(env['PACKAGE_VERSION'])\n}\n"],"names":["isDeployedRuntime","env","process","Boolean","isProductionDeployment","deploymentEnvironmentLabel","vercel","isDevelopmentRuntime","deploymentRegion","name","value","String","trim","UNSTAMPED","Set","BUILD_METADATA","BUILD_ID","COMMIT_REF","PACKAGE_VERSION","VERCEL_GIT_COMMIT_SHA","stamped","trimmed","has","deploymentCommitRef","ref","slice","platformVersion"],"mappings":"AAAA;;;;;;;;;;;;;;;CAeC,GAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4CC,GAED;;;;;;;CAOC,GACD,OAAO,SAASA,kBACdC,MAA0CC,QAAQD,GAAG;IAErD,OAAOE,QAAQF,GAAG,CAAC,SAAS,KAAKA,GAAG,CAAC,mBAAmB,KAAK;AAC/D;AAEA;;;;;;;;;;;;;;;CAeC,GACD,OAAO,SAASG,uBACdH,MAA0CC,QAAQD,GAAG;IAErD,IAAIA,GAAG,CAAC,aAAa,KAAK,cAAc,OAAO;IAC/C,OAAOA,GAAG,CAAC,mBAAmB,KAAK,OAAOA,GAAG,CAAC,WAAW,KAAK;AAChE;AAEA;;;;;;;;;;;;CAYC,GACD,OAAO,SAASI,2BACdJ,MAA0CC,QAAQD,GAAG;IAErD,MAAMK,SAASL,GAAG,CAAC,aAAa;IAChC,IAAIK,QAAQ,OAAOA;IACnB,IAAIF,uBAAuBH,MAAM,OAAO;IACxC,IAAID,kBAAkBC,MAAM,OAAO;IACnC,OAAO;AACT;AAEA;;;;;;;;CAQC,GACD,OAAO,SAASM,qBACdN,MAA0CC,QAAQD,GAAG;IAErD,OAAOA,GAAG,CAAC,WAAW,KAAK;AAC7B;AAEA;;;;;;;;;;;;;;;;CAgBC,GACD,OAAO,SAASO,iBACdP,MAA0CC,QAAQD,GAAG;IAErD,KAAK,MAAMQ,QAAQ;QACjB;QACA;QACA;QACA;QACA;KACD,CAAE;YACoBR;QAArB,MAAMS,QAAQC,QAAOV,YAAAA,GAAG,CAACQ,KAAK,YAATR,YAAa,IAAIW,IAAI;QAC1C,IAAIF,OAAO,OAAOA;IACpB;IACA,OAAO;AACT;AAEA;;;;;;;CAOC,GACD,MAAMG,YAAY,IAAIC,IAAI;IAAC;IAAI;IAAQ;IAAQ;CAAY;AAE3D;;;;;;;;;;;;;;;;;;;;;;;CAuBC,GACD,MAAMC,iBAAqD;IACzDC,UAAUd,QAAQD,GAAG,CAACe,QAAQ;IAC9BC,YAAYf,QAAQD,GAAG,CAACgB,UAAU;IAClCC,iBAAiBhB,QAAQD,GAAG,CAACiB,eAAe;IAC5CC,uBAAuBjB,QAAQD,GAAG,CAACkB,qBAAqB;AAC1D;AAEA,SAASC,QAAQV,KAAyB;IACxC,MAAMW,UAAUV,OAAOD,gBAAAA,QAAS,IAAIE,IAAI;IACxC,OAAOC,UAAUS,GAAG,CAACD,WAAW,OAAOA;AACzC;AAEA;;;;;;;;;;;;;;;;;;;;;CAqBC,GACD,OAAO,SAASE,oBACdtB,MAA0Cc,cAAc;QAGtDK,MAAAA;IADF,MAAMI,OACJJ,QAAAA,WAAAA,QAAQnB,GAAG,CAAC,WAAW,aAAvBmB,WACAA,QAAQnB,GAAG,CAAC,aAAa,aADzBmB,OAEAA,QAAQnB,GAAG,CAAC,wBAAwB;IACtC,OAAOuB,QAAQ,OAAO,OAAOA,IAAIC,KAAK,CAAC,GAAG;AAC5C;AAEA;;;;;;;;;;;;;CAaC,GACD,OAAO,SAASC,gBACdzB,MAA0Cc,cAAc;IAExD,OAAOK,QAAQnB,GAAG,CAAC,kBAAkB;AACvC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
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
|
+
* Bare `{{name}}` tokens in the captured content (AGL-672).
|
|
19
|
+
*
|
|
20
|
+
* Deliberately ignores the id-form `{{var:…}}` and `{{fn:…}}` host bindings:
|
|
21
|
+
* those resolve against the site's own variables and functions at render
|
|
22
|
+
* time, so turning one into a template placeholder would break the binding
|
|
23
|
+
* it already has. Only the plain named form is a placeholder candidate,
|
|
24
|
+
* which is the same form `resolveNamedTokens` substitutes.
|
|
25
|
+
*
|
|
26
|
+
* A `{{prop.*}}` token is not a candidate either (AGL-2932): it binds to a
|
|
27
|
+
* property the component or layout declares, which the template carries, and
|
|
28
|
+
* a placeholder filled in on use would erase the binding from what is made.
|
|
29
|
+
*/
|
|
30
|
+
export declare function detectTemplatePlaceholders(nodes: Record<string, unknown>): string[];
|
|
@@ -0,0 +1,53 @@
|
|
|
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
|
+
*/ import { COMPONENT_PROP_TOKEN_PREFIX } from "./reusable-component-keys.js";
|
|
17
|
+
/**
|
|
18
|
+
* Bare `{{name}}` tokens in the captured content (AGL-672).
|
|
19
|
+
*
|
|
20
|
+
* Deliberately ignores the id-form `{{var:…}}` and `{{fn:…}}` host bindings:
|
|
21
|
+
* those resolve against the site's own variables and functions at render
|
|
22
|
+
* time, so turning one into a template placeholder would break the binding
|
|
23
|
+
* it already has. Only the plain named form is a placeholder candidate,
|
|
24
|
+
* which is the same form `resolveNamedTokens` substitutes.
|
|
25
|
+
*
|
|
26
|
+
* A `{{prop.*}}` token is not a candidate either (AGL-2932): it binds to a
|
|
27
|
+
* property the component or layout declares, which the template carries, and
|
|
28
|
+
* a placeholder filled in on use would erase the binding from what is made.
|
|
29
|
+
*/ export function detectTemplatePlaceholders(nodes) {
|
|
30
|
+
const found = new Set();
|
|
31
|
+
const pattern = /\{\{\s*([a-zA-Z][\w.-]*)\s*\}\}/g;
|
|
32
|
+
// Explicit return type: the function is recursive, so inference has
|
|
33
|
+
// nothing to anchor on and `noImplicitAny` rejects it in this lib.
|
|
34
|
+
const walk = (value)=>{
|
|
35
|
+
if (typeof value === 'string') {
|
|
36
|
+
for (const match of value.matchAll(pattern)){
|
|
37
|
+
const name = match[1];
|
|
38
|
+
if (!name || name.includes(':')) continue;
|
|
39
|
+
if (name.startsWith(COMPONENT_PROP_TOKEN_PREFIX)) continue;
|
|
40
|
+
found.add(name);
|
|
41
|
+
}
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
if (Array.isArray(value)) return void value.forEach(walk);
|
|
45
|
+
if (value && typeof value === 'object') {
|
|
46
|
+
Object.values(value).forEach(walk);
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
walk(nodes);
|
|
50
|
+
return Array.from(found).sort();
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
//# sourceMappingURL=detect-template-placeholders.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../libs/aglyn/src/lib/app-utils/detect-template-placeholders.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\nimport { COMPONENT_PROP_TOKEN_PREFIX } from './reusable-component-keys'\n\n/**\n * Bare `{{name}}` tokens in the captured content (AGL-672).\n *\n * Deliberately ignores the id-form `{{var:…}}` and `{{fn:…}}` host bindings:\n * those resolve against the site's own variables and functions at render\n * time, so turning one into a template placeholder would break the binding\n * it already has. Only the plain named form is a placeholder candidate,\n * which is the same form `resolveNamedTokens` substitutes.\n *\n * A `{{prop.*}}` token is not a candidate either (AGL-2932): it binds to a\n * property the component or layout declares, which the template carries, and\n * a placeholder filled in on use would erase the binding from what is made.\n */\nexport function detectTemplatePlaceholders(nodes: Record<string, unknown>): string[] {\n const found = new Set<string>()\n const pattern = /\\{\\{\\s*([a-zA-Z][\\w.-]*)\\s*\\}\\}/g\n // Explicit return type: the function is recursive, so inference has\n // nothing to anchor on and `noImplicitAny` rejects it in this lib.\n const walk = (value: unknown): void => {\n if (typeof value === 'string') {\n for (const match of value.matchAll(pattern)) {\n const name = match[1]\n if (!name || name.includes(':')) continue\n if (name.startsWith(COMPONENT_PROP_TOKEN_PREFIX)) continue\n found.add(name)\n }\n return\n }\n if (Array.isArray(value)) return void value.forEach(walk)\n if (value && typeof value === 'object') {\n Object.values(value as Record<string, unknown>).forEach(walk)\n }\n }\n walk(nodes)\n return Array.from(found).sort()\n}\n"],"names":["COMPONENT_PROP_TOKEN_PREFIX","detectTemplatePlaceholders","nodes","found","Set","pattern","walk","value","match","matchAll","name","includes","startsWith","add","Array","isArray","forEach","Object","values","from","sort"],"mappings":"AAAA;;;;;;;;;;;;;;;CAeC,GAED,SAASA,2BAA2B,QAAQ,+BAA2B;AAEvE;;;;;;;;;;;;CAYC,GACD,OAAO,SAASC,2BAA2BC,KAA8B;IACvE,MAAMC,QAAQ,IAAIC;IAClB,MAAMC,UAAU;IAChB,oEAAoE;IACpE,mEAAmE;IACnE,MAAMC,OAAO,CAACC;QACZ,IAAI,OAAOA,UAAU,UAAU;YAC7B,KAAK,MAAMC,SAASD,MAAME,QAAQ,CAACJ,SAAU;gBAC3C,MAAMK,OAAOF,KAAK,CAAC,EAAE;gBACrB,IAAI,CAACE,QAAQA,KAAKC,QAAQ,CAAC,MAAM;gBACjC,IAAID,KAAKE,UAAU,CAACZ,8BAA8B;gBAClDG,MAAMU,GAAG,CAACH;YACZ;YACA;QACF;QACA,IAAII,MAAMC,OAAO,CAACR,QAAQ,OAAO,KAAKA,MAAMS,OAAO,CAACV;QACpD,IAAIC,SAAS,OAAOA,UAAU,UAAU;YACtCU,OAAOC,MAAM,CAACX,OAAkCS,OAAO,CAACV;QAC1D;IACF;IACAA,KAAKJ;IACL,OAAOY,MAAMK,IAAI,CAAChB,OAAOiB,IAAI;AAC/B"}
|