@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.
Files changed (963) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +11 -0
  3. package/package.json +66 -0
  4. package/src/index.d.ts +25 -0
  5. package/src/index.js +26 -0
  6. package/src/index.js.map +1 -0
  7. package/src/lib/aglyn.d.ts +31 -0
  8. package/src/lib/aglyn.js +114 -0
  9. package/src/lib/aglyn.js.map +1 -0
  10. package/src/lib/app-utils/abuse-report.d.ts +193 -0
  11. package/src/lib/app-utils/abuse-report.js +321 -0
  12. package/src/lib/app-utils/abuse-report.js.map +1 -0
  13. package/src/lib/app-utils/accept-negotiation.d.ts +129 -0
  14. package/src/lib/app-utils/accept-negotiation.js +266 -0
  15. package/src/lib/app-utils/accept-negotiation.js.map +1 -0
  16. package/src/lib/app-utils/account-emails.d.ts +263 -0
  17. package/src/lib/app-utils/account-emails.js +264 -0
  18. package/src/lib/app-utils/account-emails.js.map +1 -0
  19. package/src/lib/app-utils/actions.d.ts +717 -0
  20. package/src/lib/app-utils/actions.js +1031 -0
  21. package/src/lib/app-utils/actions.js.map +1 -0
  22. package/src/lib/app-utils/activity-presenter.d.ts +152 -0
  23. package/src/lib/app-utils/activity-presenter.js +326 -0
  24. package/src/lib/app-utils/activity-presenter.js.map +1 -0
  25. package/src/lib/app-utils/advertising-tag-mounts.d.ts +133 -0
  26. package/src/lib/app-utils/advertising-tag-mounts.js +118 -0
  27. package/src/lib/app-utils/advertising-tag-mounts.js.map +1 -0
  28. package/src/lib/app-utils/advertising-tags.d.ts +307 -0
  29. package/src/lib/app-utils/advertising-tags.js +525 -0
  30. package/src/lib/app-utils/advertising-tags.js.map +1 -0
  31. package/src/lib/app-utils/agent-api-catalog.d.ts +94 -0
  32. package/src/lib/app-utils/agent-api-catalog.js +106 -0
  33. package/src/lib/app-utils/agent-api-catalog.js.map +1 -0
  34. package/src/lib/app-utils/agent-openapi.d.ts +103 -0
  35. package/src/lib/app-utils/agent-openapi.js +1128 -0
  36. package/src/lib/app-utils/agent-openapi.js.map +1 -0
  37. package/src/lib/app-utils/analytics-beacon.d.ts +154 -0
  38. package/src/lib/app-utils/analytics-beacon.js +152 -0
  39. package/src/lib/app-utils/analytics-beacon.js.map +1 -0
  40. package/src/lib/app-utils/analytics-environment.d.ts +133 -0
  41. package/src/lib/app-utils/analytics-environment.js +152 -0
  42. package/src/lib/app-utils/analytics-environment.js.map +1 -0
  43. package/src/lib/app-utils/analytics-events.d.ts +744 -0
  44. package/src/lib/app-utils/analytics-events.js +650 -0
  45. package/src/lib/app-utils/analytics-events.js.map +1 -0
  46. package/src/lib/app-utils/analytics-link-clicks.d.ts +102 -0
  47. package/src/lib/app-utils/analytics-link-clicks.js +267 -0
  48. package/src/lib/app-utils/analytics-link-clicks.js.map +1 -0
  49. package/src/lib/app-utils/analytics-path-key.d.ts +46 -0
  50. package/src/lib/app-utils/analytics-path-key.js +46 -0
  51. package/src/lib/app-utils/analytics-path-key.js.map +1 -0
  52. package/src/lib/app-utils/api-adapter.d.ts +47 -0
  53. package/src/lib/app-utils/api-adapter.js +367 -0
  54. package/src/lib/app-utils/api-adapter.js.map +1 -0
  55. package/src/lib/app-utils/api-idempotency.d.ts +169 -0
  56. package/src/lib/app-utils/api-idempotency.js +213 -0
  57. package/src/lib/app-utils/api-idempotency.js.map +1 -0
  58. package/src/lib/app-utils/api-plugins.d.ts +210 -0
  59. package/src/lib/app-utils/api-plugins.js +221 -0
  60. package/src/lib/app-utils/api-plugins.js.map +1 -0
  61. package/src/lib/app-utils/assist-credits.d.ts +482 -0
  62. package/src/lib/app-utils/assist-credits.js +509 -0
  63. package/src/lib/app-utils/assist-credits.js.map +1 -0
  64. package/src/lib/app-utils/attribution-attribute.d.ts +34 -0
  65. package/src/lib/app-utils/attribution-attribute.js +34 -0
  66. package/src/lib/app-utils/attribution-attribute.js.map +1 -0
  67. package/src/lib/app-utils/attribution-guard.d.ts +130 -0
  68. package/src/lib/app-utils/attribution-guard.js +410 -0
  69. package/src/lib/app-utils/attribution-guard.js.map +1 -0
  70. package/src/lib/app-utils/author-css.d.ts +123 -0
  71. package/src/lib/app-utils/author-css.js +275 -0
  72. package/src/lib/app-utils/author-css.js.map +1 -0
  73. package/src/lib/app-utils/author-html-markdown.d.ts +31 -0
  74. package/src/lib/app-utils/author-html-markdown.js +497 -0
  75. package/src/lib/app-utils/author-html-markdown.js.map +1 -0
  76. package/src/lib/app-utils/author-html.d.ts +135 -0
  77. package/src/lib/app-utils/author-html.js +1037 -0
  78. package/src/lib/app-utils/author-html.js.map +1 -0
  79. package/src/lib/app-utils/automation-placeholders.d.ts +72 -0
  80. package/src/lib/app-utils/automation-placeholders.js +207 -0
  81. package/src/lib/app-utils/automation-placeholders.js.map +1 -0
  82. package/src/lib/app-utils/bandwidth-cap.d.ts +183 -0
  83. package/src/lib/app-utils/bandwidth-cap.js +193 -0
  84. package/src/lib/app-utils/bandwidth-cap.js.map +1 -0
  85. package/src/lib/app-utils/binding-token-catalog.d.ts +82 -0
  86. package/src/lib/app-utils/binding-token-catalog.js +293 -0
  87. package/src/lib/app-utils/binding-token-catalog.js.map +1 -0
  88. package/src/lib/app-utils/binding-tokens.d.ts +157 -0
  89. package/src/lib/app-utils/binding-tokens.js +251 -0
  90. package/src/lib/app-utils/binding-tokens.js.map +1 -0
  91. package/src/lib/app-utils/breadcrumb-json-ld.d.ts +57 -0
  92. package/src/lib/app-utils/breadcrumb-json-ld.js +67 -0
  93. package/src/lib/app-utils/breadcrumb-json-ld.js.map +1 -0
  94. package/src/lib/app-utils/campaign-attribution.d.ts +117 -0
  95. package/src/lib/app-utils/campaign-attribution.js +162 -0
  96. package/src/lib/app-utils/campaign-attribution.js.map +1 -0
  97. package/src/lib/app-utils/campaign-forwarding.d.ts +220 -0
  98. package/src/lib/app-utils/campaign-forwarding.js +332 -0
  99. package/src/lib/app-utils/campaign-forwarding.js.map +1 -0
  100. package/src/lib/app-utils/campaign-membership.d.ts +109 -0
  101. package/src/lib/app-utils/campaign-membership.js +176 -0
  102. package/src/lib/app-utils/campaign-membership.js.map +1 -0
  103. package/src/lib/app-utils/campaign-touch.d.ts +206 -0
  104. package/src/lib/app-utils/campaign-touch.js +326 -0
  105. package/src/lib/app-utils/campaign-touch.js.map +1 -0
  106. package/src/lib/app-utils/child-contract-compose.d.ts +28 -0
  107. package/src/lib/app-utils/child-contract-compose.js +140 -0
  108. package/src/lib/app-utils/child-contract-compose.js.map +1 -0
  109. package/src/lib/app-utils/child-contract.d.ts +129 -0
  110. package/src/lib/app-utils/child-contract.js +153 -0
  111. package/src/lib/app-utils/child-contract.js.map +1 -0
  112. package/src/lib/app-utils/collection-delete.d.ts +113 -0
  113. package/src/lib/app-utils/collection-delete.js +120 -0
  114. package/src/lib/app-utils/collection-delete.js.map +1 -0
  115. package/src/lib/app-utils/collection-entries.d.ts +833 -0
  116. package/src/lib/app-utils/collection-entries.js +1285 -0
  117. package/src/lib/app-utils/collection-entries.js.map +1 -0
  118. package/src/lib/app-utils/collection-entry-date.d.ts +129 -0
  119. package/src/lib/app-utils/collection-entry-date.js +183 -0
  120. package/src/lib/app-utils/collection-entry-date.js.map +1 -0
  121. package/src/lib/app-utils/collection-kind.d.ts +55 -0
  122. package/src/lib/app-utils/collection-kind.js +69 -0
  123. package/src/lib/app-utils/collection-kind.js.map +1 -0
  124. package/src/lib/app-utils/collection-slug.d.ts +79 -0
  125. package/src/lib/app-utils/collection-slug.js +70 -0
  126. package/src/lib/app-utils/collection-slug.js.map +1 -0
  127. package/src/lib/app-utils/compose-layout-nodes.d.ts +147 -0
  128. package/src/lib/app-utils/compose-layout-nodes.js +261 -0
  129. package/src/lib/app-utils/compose-layout-nodes.js.map +1 -0
  130. package/src/lib/app-utils/compose-layout-props.d.ts +71 -0
  131. package/src/lib/app-utils/compose-layout-props.js +61 -0
  132. package/src/lib/app-utils/compose-layout-props.js.map +1 -0
  133. package/src/lib/app-utils/compose-reusable-components.d.ts +504 -0
  134. package/src/lib/app-utils/compose-reusable-components.js +1366 -0
  135. package/src/lib/app-utils/compose-reusable-components.js.map +1 -0
  136. package/src/lib/app-utils/compress.d.ts +35 -0
  137. package/src/lib/app-utils/compress.js +38 -0
  138. package/src/lib/app-utils/compress.js.map +1 -0
  139. package/src/lib/app-utils/consent-banner-ui.d.ts +226 -0
  140. package/src/lib/app-utils/consent-banner-ui.js +583 -0
  141. package/src/lib/app-utils/consent-banner-ui.js.map +1 -0
  142. package/src/lib/app-utils/consent-groups.d.ts +189 -0
  143. package/src/lib/app-utils/consent-groups.js +219 -0
  144. package/src/lib/app-utils/consent-groups.js.map +1 -0
  145. package/src/lib/app-utils/consent-preferences-dialog.d.ts +58 -0
  146. package/src/lib/app-utils/consent-preferences-dialog.js +106 -0
  147. package/src/lib/app-utils/consent-preferences-dialog.js.map +1 -0
  148. package/src/lib/app-utils/console-record-links.d.ts +163 -0
  149. package/src/lib/app-utils/console-record-links.js +178 -0
  150. package/src/lib/app-utils/console-record-links.js.map +1 -0
  151. package/src/lib/app-utils/console-routes.d.ts +658 -0
  152. package/src/lib/app-utils/console-routes.js +489 -0
  153. package/src/lib/app-utils/console-routes.js.map +1 -0
  154. package/src/lib/app-utils/console-widget-slot-context.d.ts +46 -0
  155. package/src/lib/app-utils/console-widget-slot-context.js +23 -0
  156. package/src/lib/app-utils/console-widget-slot-context.js.map +1 -0
  157. package/src/lib/app-utils/contact-custom-fields.d.ts +191 -0
  158. package/src/lib/app-utils/contact-custom-fields.js +349 -0
  159. package/src/lib/app-utils/contact-custom-fields.js.map +1 -0
  160. package/src/lib/app-utils/contact-holder.d.ts +52 -0
  161. package/src/lib/app-utils/contact-holder.js +98 -0
  162. package/src/lib/app-utils/contact-holder.js.map +1 -0
  163. package/src/lib/app-utils/contact-merge.d.ts +136 -0
  164. package/src/lib/app-utils/contact-merge.js +379 -0
  165. package/src/lib/app-utils/contact-merge.js.map +1 -0
  166. package/src/lib/app-utils/contacts.d.ts +554 -0
  167. package/src/lib/app-utils/contacts.js +401 -0
  168. package/src/lib/app-utils/contacts.js.map +1 -0
  169. package/src/lib/app-utils/content-author-profile.d.ts +68 -0
  170. package/src/lib/app-utils/content-author-profile.js +118 -0
  171. package/src/lib/app-utils/content-author-profile.js.map +1 -0
  172. package/src/lib/app-utils/content-authors.d.ts +662 -0
  173. package/src/lib/app-utils/content-authors.js +771 -0
  174. package/src/lib/app-utils/content-authors.js.map +1 -0
  175. package/src/lib/app-utils/content-schema-type.d.ts +81 -0
  176. package/src/lib/app-utils/content-schema-type.js +87 -0
  177. package/src/lib/app-utils/content-schema-type.js.map +1 -0
  178. package/src/lib/app-utils/contexts.d.ts +35 -0
  179. package/src/lib/app-utils/contexts.js +35 -0
  180. package/src/lib/app-utils/contexts.js.map +1 -0
  181. package/src/lib/app-utils/create-resource-uid.d.ts +18 -0
  182. package/src/lib/app-utils/create-resource-uid.js +23 -0
  183. package/src/lib/app-utils/create-resource-uid.js.map +1 -0
  184. package/src/lib/app-utils/crm-booking.d.ts +75 -0
  185. package/src/lib/app-utils/crm-booking.js +133 -0
  186. package/src/lib/app-utils/crm-booking.js.map +1 -0
  187. package/src/lib/app-utils/crm-csv.d.ts +232 -0
  188. package/src/lib/app-utils/crm-csv.js +432 -0
  189. package/src/lib/app-utils/crm-csv.js.map +1 -0
  190. package/src/lib/app-utils/crm-digest.d.ts +179 -0
  191. package/src/lib/app-utils/crm-digest.js +271 -0
  192. package/src/lib/app-utils/crm-digest.js.map +1 -0
  193. package/src/lib/app-utils/crm-email-templates.d.ts +172 -0
  194. package/src/lib/app-utils/crm-email-templates.js +382 -0
  195. package/src/lib/app-utils/crm-email-templates.js.map +1 -0
  196. package/src/lib/app-utils/crm-inbound.d.ts +245 -0
  197. package/src/lib/app-utils/crm-inbound.js +407 -0
  198. package/src/lib/app-utils/crm-inbound.js.map +1 -0
  199. package/src/lib/app-utils/crm-kinds.d.ts +73 -0
  200. package/src/lib/app-utils/crm-kinds.js +92 -0
  201. package/src/lib/app-utils/crm-kinds.js.map +1 -0
  202. package/src/lib/app-utils/crm-next-activity.d.ts +107 -0
  203. package/src/lib/app-utils/crm-next-activity.js +140 -0
  204. package/src/lib/app-utils/crm-next-activity.js.map +1 -0
  205. package/src/lib/app-utils/crm-reports.d.ts +479 -0
  206. package/src/lib/app-utils/crm-reports.js +680 -0
  207. package/src/lib/app-utils/crm-reports.js.map +1 -0
  208. package/src/lib/app-utils/crm-task-reminders.d.ts +129 -0
  209. package/src/lib/app-utils/crm-task-reminders.js +139 -0
  210. package/src/lib/app-utils/crm-task-reminders.js.map +1 -0
  211. package/src/lib/app-utils/crm.d.ts +1546 -0
  212. package/src/lib/app-utils/crm.js +1814 -0
  213. package/src/lib/app-utils/crm.js.map +1 -0
  214. package/src/lib/app-utils/csp-report.d.ts +84 -0
  215. package/src/lib/app-utils/csp-report.js +177 -0
  216. package/src/lib/app-utils/csp-report.js.map +1 -0
  217. package/src/lib/app-utils/csv-import.d.ts +192 -0
  218. package/src/lib/app-utils/csv-import.js +279 -0
  219. package/src/lib/app-utils/csv-import.js.map +1 -0
  220. package/src/lib/app-utils/dataset-csv.d.ts +109 -0
  221. package/src/lib/app-utils/dataset-csv.js +235 -0
  222. package/src/lib/app-utils/dataset-csv.js.map +1 -0
  223. package/src/lib/app-utils/dataset-models.d.ts +194 -0
  224. package/src/lib/app-utils/dataset-models.js +409 -0
  225. package/src/lib/app-utils/dataset-models.js.map +1 -0
  226. package/src/lib/app-utils/dataset-query.d.ts +57 -0
  227. package/src/lib/app-utils/dataset-query.js +126 -0
  228. package/src/lib/app-utils/dataset-query.js.map +1 -0
  229. package/src/lib/app-utils/datasets.d.ts +136 -0
  230. package/src/lib/app-utils/datasets.js +177 -0
  231. package/src/lib/app-utils/datasets.js.map +1 -0
  232. package/src/lib/app-utils/decompress.d.ts +36 -0
  233. package/src/lib/app-utils/decompress.js +32 -0
  234. package/src/lib/app-utils/decompress.js.map +1 -0
  235. package/src/lib/app-utils/dedicated-sending-domain.d.ts +47 -0
  236. package/src/lib/app-utils/dedicated-sending-domain.js +114 -0
  237. package/src/lib/app-utils/dedicated-sending-domain.js.map +1 -0
  238. package/src/lib/app-utils/deferred-image.d.ts +86 -0
  239. package/src/lib/app-utils/deferred-image.js +83 -0
  240. package/src/lib/app-utils/deferred-image.js.map +1 -0
  241. package/src/lib/app-utils/definition-canvas-tree.d.ts +61 -0
  242. package/src/lib/app-utils/definition-canvas-tree.js +126 -0
  243. package/src/lib/app-utils/definition-canvas-tree.js.map +1 -0
  244. package/src/lib/app-utils/deployment-shape.d.ts +167 -0
  245. package/src/lib/app-utils/deployment-shape.js +238 -0
  246. package/src/lib/app-utils/deployment-shape.js.map +1 -0
  247. package/src/lib/app-utils/detect-template-placeholders.d.ts +30 -0
  248. package/src/lib/app-utils/detect-template-placeholders.js +53 -0
  249. package/src/lib/app-utils/detect-template-placeholders.js.map +1 -0
  250. package/src/lib/app-utils/dmca-counter-notice.d.ts +185 -0
  251. package/src/lib/app-utils/dmca-counter-notice.js +277 -0
  252. package/src/lib/app-utils/dmca-counter-notice.js.map +1 -0
  253. package/src/lib/app-utils/docs-deflection.d.ts +156 -0
  254. package/src/lib/app-utils/docs-deflection.js +547 -0
  255. package/src/lib/app-utils/docs-deflection.js.map +1 -0
  256. package/src/lib/app-utils/docs-help.d.ts +57 -0
  257. package/src/lib/app-utils/docs-help.generated.d.ts +303 -0
  258. package/src/lib/app-utils/docs-help.generated.js +867 -0
  259. package/src/lib/app-utils/docs-help.generated.js.map +1 -0
  260. package/src/lib/app-utils/docs-help.js +46 -0
  261. package/src/lib/app-utils/docs-help.js.map +1 -0
  262. package/src/lib/app-utils/docs-index.generated.d.ts +29 -0
  263. package/src/lib/app-utils/docs-index.generated.js +8388 -0
  264. package/src/lib/app-utils/docs-index.generated.js.map +1 -0
  265. package/src/lib/app-utils/docs-retrieval.d.ts +67 -0
  266. package/src/lib/app-utils/docs-retrieval.js +188 -0
  267. package/src/lib/app-utils/docs-retrieval.js.map +1 -0
  268. package/src/lib/app-utils/document-landmark.d.ts +50 -0
  269. package/src/lib/app-utils/document-landmark.js +100 -0
  270. package/src/lib/app-utils/document-landmark.js.map +1 -0
  271. package/src/lib/app-utils/duplicate-resource.d.ts +101 -0
  272. package/src/lib/app-utils/duplicate-resource.js +206 -0
  273. package/src/lib/app-utils/duplicate-resource.js.map +1 -0
  274. package/src/lib/app-utils/dynamic-list-rule.d.ts +471 -0
  275. package/src/lib/app-utils/dynamic-list-rule.js +914 -0
  276. package/src/lib/app-utils/dynamic-list-rule.js.map +1 -0
  277. package/src/lib/app-utils/element-animation.d.ts +200 -0
  278. package/src/lib/app-utils/element-animation.js +233 -0
  279. package/src/lib/app-utils/element-animation.js.map +1 -0
  280. package/src/lib/app-utils/element-hidden-style.d.ts +46 -0
  281. package/src/lib/app-utils/element-hidden-style.js +48 -0
  282. package/src/lib/app-utils/element-hidden-style.js.map +1 -0
  283. package/src/lib/app-utils/element-ui.d.ts +243 -0
  284. package/src/lib/app-utils/element-ui.js +459 -0
  285. package/src/lib/app-utils/element-ui.js.map +1 -0
  286. package/src/lib/app-utils/email-starter-policy.d.ts +160 -0
  287. package/src/lib/app-utils/email-starter-policy.js +327 -0
  288. package/src/lib/app-utils/email-starter-policy.js.map +1 -0
  289. package/src/lib/app-utils/email-topics.d.ts +310 -0
  290. package/src/lib/app-utils/email-topics.js +336 -0
  291. package/src/lib/app-utils/email-topics.js.map +1 -0
  292. package/src/lib/app-utils/enabled-plugins-context.d.ts +100 -0
  293. package/src/lib/app-utils/enabled-plugins-context.js +113 -0
  294. package/src/lib/app-utils/enabled-plugins-context.js.map +1 -0
  295. package/src/lib/app-utils/ensure-canvas-root.d.ts +38 -0
  296. package/src/lib/app-utils/ensure-canvas-root.js +61 -0
  297. package/src/lib/app-utils/ensure-canvas-root.js.map +1 -0
  298. package/src/lib/app-utils/entity-picker-context.d.ts +199 -0
  299. package/src/lib/app-utils/entity-picker-context.js +93 -0
  300. package/src/lib/app-utils/entity-picker-context.js.map +1 -0
  301. package/src/lib/app-utils/error-beacon.d.ts +107 -0
  302. package/src/lib/app-utils/error-beacon.js +296 -0
  303. package/src/lib/app-utils/error-beacon.js.map +1 -0
  304. package/src/lib/app-utils/expand-repeatables.d.ts +172 -0
  305. package/src/lib/app-utils/expand-repeatables.js +299 -0
  306. package/src/lib/app-utils/expand-repeatables.js.map +1 -0
  307. package/src/lib/app-utils/foreign-script.d.ts +82 -0
  308. package/src/lib/app-utils/foreign-script.js +102 -0
  309. package/src/lib/app-utils/foreign-script.js.map +1 -0
  310. package/src/lib/app-utils/form-abuse-ceiling.d.ts +146 -0
  311. package/src/lib/app-utils/form-abuse-ceiling.js +158 -0
  312. package/src/lib/app-utils/form-abuse-ceiling.js.map +1 -0
  313. package/src/lib/app-utils/form-contract.d.ts +198 -0
  314. package/src/lib/app-utils/form-contract.js +282 -0
  315. package/src/lib/app-utils/form-contract.js.map +1 -0
  316. package/src/lib/app-utils/form-dataset-binding.d.ts +50 -0
  317. package/src/lib/app-utils/form-dataset-binding.js +74 -0
  318. package/src/lib/app-utils/form-dataset-binding.js.map +1 -0
  319. package/src/lib/app-utils/forms.d.ts +727 -0
  320. package/src/lib/app-utils/forms.js +777 -0
  321. package/src/lib/app-utils/forms.js.map +1 -0
  322. package/src/lib/app-utils/functions.d.ts +188 -0
  323. package/src/lib/app-utils/functions.js +529 -0
  324. package/src/lib/app-utils/functions.js.map +1 -0
  325. package/src/lib/app-utils/guarded-version-save.d.ts +91 -0
  326. package/src/lib/app-utils/guarded-version-save.js +131 -0
  327. package/src/lib/app-utils/guarded-version-save.js.map +1 -0
  328. package/src/lib/app-utils/health-report.d.ts +1766 -0
  329. package/src/lib/app-utils/health-report.js +2072 -0
  330. package/src/lib/app-utils/health-report.js.map +1 -0
  331. package/src/lib/app-utils/host-naming.d.ts +135 -0
  332. package/src/lib/app-utils/host-naming.js +188 -0
  333. package/src/lib/app-utils/host-naming.js.map +1 -0
  334. package/src/lib/app-utils/host-permissions.d.ts +76 -0
  335. package/src/lib/app-utils/host-permissions.js +119 -0
  336. package/src/lib/app-utils/host-permissions.js.map +1 -0
  337. package/src/lib/app-utils/host-tokens.d.ts +228 -0
  338. package/src/lib/app-utils/host-tokens.js +304 -0
  339. package/src/lib/app-utils/host-tokens.js.map +1 -0
  340. package/src/lib/app-utils/idp-profile.d.ts +83 -0
  341. package/src/lib/app-utils/idp-profile.js +268 -0
  342. package/src/lib/app-utils/idp-profile.js.map +1 -0
  343. package/src/lib/app-utils/image-upload-types.d.ts +49 -0
  344. package/src/lib/app-utils/image-upload-types.js +86 -0
  345. package/src/lib/app-utils/image-upload-types.js.map +1 -0
  346. package/src/lib/app-utils/index.d.ts +18 -0
  347. package/src/lib/app-utils/index.js +23 -0
  348. package/src/lib/app-utils/index.js.map +1 -0
  349. package/src/lib/app-utils/internal-traffic.d.ts +197 -0
  350. package/src/lib/app-utils/internal-traffic.js +288 -0
  351. package/src/lib/app-utils/internal-traffic.js.map +1 -0
  352. package/src/lib/app-utils/lineal-order.d.ts +62 -0
  353. package/src/lib/app-utils/lineal-order.js +65 -0
  354. package/src/lib/app-utils/lineal-order.js.map +1 -0
  355. package/src/lib/app-utils/link-references.d.ts +36 -0
  356. package/src/lib/app-utils/link-references.js +89 -0
  357. package/src/lib/app-utils/link-references.js.map +1 -0
  358. package/src/lib/app-utils/link-target-search-context.d.ts +123 -0
  359. package/src/lib/app-utils/link-target-search-context.js +221 -0
  360. package/src/lib/app-utils/link-target-search-context.js.map +1 -0
  361. package/src/lib/app-utils/list-assignment-policy.d.ts +169 -0
  362. package/src/lib/app-utils/list-assignment-policy.js +170 -0
  363. package/src/lib/app-utils/list-assignment-policy.js.map +1 -0
  364. package/src/lib/app-utils/list-import.d.ts +158 -0
  365. package/src/lib/app-utils/list-import.js +332 -0
  366. package/src/lib/app-utils/list-import.js.map +1 -0
  367. package/src/lib/app-utils/llms-txt.d.ts +104 -0
  368. package/src/lib/app-utils/llms-txt.js +144 -0
  369. package/src/lib/app-utils/llms-txt.js.map +1 -0
  370. package/src/lib/app-utils/local-storage-budget.d.ts +75 -0
  371. package/src/lib/app-utils/local-storage-budget.js +153 -0
  372. package/src/lib/app-utils/local-storage-budget.js.map +1 -0
  373. package/src/lib/app-utils/lockdown.d.ts +698 -0
  374. package/src/lib/app-utils/lockdown.js +929 -0
  375. package/src/lib/app-utils/lockdown.js.map +1 -0
  376. package/src/lib/app-utils/margin-utilization.d.ts +267 -0
  377. package/src/lib/app-utils/margin-utilization.js +351 -0
  378. package/src/lib/app-utils/margin-utilization.js.map +1 -0
  379. package/src/lib/app-utils/markdown-lite.d.ts +297 -0
  380. package/src/lib/app-utils/markdown-lite.js +705 -0
  381. package/src/lib/app-utils/markdown-lite.js.map +1 -0
  382. package/src/lib/app-utils/marketing-consent.d.ts +704 -0
  383. package/src/lib/app-utils/marketing-consent.js +783 -0
  384. package/src/lib/app-utils/marketing-consent.js.map +1 -0
  385. package/src/lib/app-utils/marketplace-listing-visibility.d.ts +120 -0
  386. package/src/lib/app-utils/marketplace-listing-visibility.js +139 -0
  387. package/src/lib/app-utils/marketplace-listing-visibility.js.map +1 -0
  388. package/src/lib/app-utils/marketplace-overrides.d.ts +271 -0
  389. package/src/lib/app-utils/marketplace-overrides.js +462 -0
  390. package/src/lib/app-utils/marketplace-overrides.js.map +1 -0
  391. package/src/lib/app-utils/marketplace-provenance.d.ts +150 -0
  392. package/src/lib/app-utils/marketplace-provenance.js +136 -0
  393. package/src/lib/app-utils/marketplace-provenance.js.map +1 -0
  394. package/src/lib/app-utils/marketplace-theme.d.ts +237 -0
  395. package/src/lib/app-utils/marketplace-theme.js +525 -0
  396. package/src/lib/app-utils/marketplace-theme.js.map +1 -0
  397. package/src/lib/app-utils/marketplace-update-state.d.ts +119 -0
  398. package/src/lib/app-utils/marketplace-update-state.js +132 -0
  399. package/src/lib/app-utils/marketplace-update-state.js.map +1 -0
  400. package/src/lib/app-utils/marketplace-verification.d.ts +95 -0
  401. package/src/lib/app-utils/marketplace-verification.js +81 -0
  402. package/src/lib/app-utils/marketplace-verification.js.map +1 -0
  403. package/src/lib/app-utils/measure-node-map.d.ts +76 -0
  404. package/src/lib/app-utils/measure-node-map.js +111 -0
  405. package/src/lib/app-utils/measure-node-map.js.map +1 -0
  406. package/src/lib/app-utils/media-alt.d.ts +55 -0
  407. package/src/lib/app-utils/media-alt.js +58 -0
  408. package/src/lib/app-utils/media-alt.js.map +1 -0
  409. package/src/lib/app-utils/media-asset-facts.d.ts +125 -0
  410. package/src/lib/app-utils/media-asset-facts.js +467 -0
  411. package/src/lib/app-utils/media-asset-facts.js.map +1 -0
  412. package/src/lib/app-utils/media-cdn-scope.d.ts +65 -0
  413. package/src/lib/app-utils/media-cdn-scope.js +75 -0
  414. package/src/lib/app-utils/media-cdn-scope.js.map +1 -0
  415. package/src/lib/app-utils/media-folders.d.ts +161 -0
  416. package/src/lib/app-utils/media-folders.js +230 -0
  417. package/src/lib/app-utils/media-folders.js.map +1 -0
  418. package/src/lib/app-utils/media-metadata.d.ts +277 -0
  419. package/src/lib/app-utils/media-metadata.js +388 -0
  420. package/src/lib/app-utils/media-metadata.js.map +1 -0
  421. package/src/lib/app-utils/media-picker-context.d.ts +93 -0
  422. package/src/lib/app-utils/media-picker-context.js +26 -0
  423. package/src/lib/app-utils/media-picker-context.js.map +1 -0
  424. package/src/lib/app-utils/media-quarantine.d.ts +247 -0
  425. package/src/lib/app-utils/media-quarantine.js +323 -0
  426. package/src/lib/app-utils/media-quarantine.js.map +1 -0
  427. package/src/lib/app-utils/media-ref.d.ts +661 -0
  428. package/src/lib/app-utils/media-ref.js +1055 -0
  429. package/src/lib/app-utils/media-ref.js.map +1 -0
  430. package/src/lib/app-utils/media-takedown-reach.d.ts +126 -0
  431. package/src/lib/app-utils/media-takedown-reach.js +143 -0
  432. package/src/lib/app-utils/media-takedown-reach.js.map +1 -0
  433. package/src/lib/app-utils/member-email-aliases.d.ts +180 -0
  434. package/src/lib/app-utils/member-email-aliases.js +217 -0
  435. package/src/lib/app-utils/member-email-aliases.js.map +1 -0
  436. package/src/lib/app-utils/merge-node-sx.d.ts +47 -0
  437. package/src/lib/app-utils/merge-node-sx.js +123 -0
  438. package/src/lib/app-utils/merge-node-sx.js.map +1 -0
  439. package/src/lib/app-utils/name-match.d.ts +155 -0
  440. package/src/lib/app-utils/name-match.js +175 -0
  441. package/src/lib/app-utils/name-match.js.map +1 -0
  442. package/src/lib/app-utils/name-search.d.ts +117 -0
  443. package/src/lib/app-utils/name-search.js +145 -0
  444. package/src/lib/app-utils/name-search.js.map +1 -0
  445. package/src/lib/app-utils/node-capabilities.d.ts +85 -0
  446. package/src/lib/app-utils/node-capabilities.js +88 -0
  447. package/src/lib/app-utils/node-capabilities.js.map +1 -0
  448. package/src/lib/app-utils/node-definition-sanitizer.d.ts +164 -0
  449. package/src/lib/app-utils/node-definition-sanitizer.js +402 -0
  450. package/src/lib/app-utils/node-definition-sanitizer.js.map +1 -0
  451. package/src/lib/app-utils/node-identity.d.ts +47 -0
  452. package/src/lib/app-utils/node-identity.js +50 -0
  453. package/src/lib/app-utils/node-identity.js.map +1 -0
  454. package/src/lib/app-utils/node-interactions.d.ts +102 -0
  455. package/src/lib/app-utils/node-interactions.js +192 -0
  456. package/src/lib/app-utils/node-interactions.js.map +1 -0
  457. package/src/lib/app-utils/node-url-policy.d.ts +54 -0
  458. package/src/lib/app-utils/node-url-policy.js +72 -0
  459. package/src/lib/app-utils/node-url-policy.js.map +1 -0
  460. package/src/lib/app-utils/notifications.d.ts +71 -0
  461. package/src/lib/app-utils/notifications.js +101 -0
  462. package/src/lib/app-utils/notifications.js.map +1 -0
  463. package/src/lib/app-utils/onboarding-deep-link.d.ts +120 -0
  464. package/src/lib/app-utils/onboarding-deep-link.js +142 -0
  465. package/src/lib/app-utils/onboarding-deep-link.js.map +1 -0
  466. package/src/lib/app-utils/operator-identity.d.ts +207 -0
  467. package/src/lib/app-utils/operator-identity.js +186 -0
  468. package/src/lib/app-utils/operator-identity.js.map +1 -0
  469. package/src/lib/app-utils/org-billing-doc.d.ts +231 -0
  470. package/src/lib/app-utils/org-billing-doc.js +238 -0
  471. package/src/lib/app-utils/org-billing-doc.js.map +1 -0
  472. package/src/lib/app-utils/org-override-reason.d.ts +100 -0
  473. package/src/lib/app-utils/org-override-reason.js +116 -0
  474. package/src/lib/app-utils/org-override-reason.js.map +1 -0
  475. package/src/lib/app-utils/org-permissions.d.ts +194 -0
  476. package/src/lib/app-utils/org-permissions.js +357 -0
  477. package/src/lib/app-utils/org-permissions.js.map +1 -0
  478. package/src/lib/app-utils/org-roles.d.ts +72 -0
  479. package/src/lib/app-utils/org-roles.js +131 -0
  480. package/src/lib/app-utils/org-roles.js.map +1 -0
  481. package/src/lib/app-utils/organizations.d.ts +407 -0
  482. package/src/lib/app-utils/organizations.js +511 -0
  483. package/src/lib/app-utils/organizations.js.map +1 -0
  484. package/src/lib/app-utils/page-header-actions-context.d.ts +83 -0
  485. package/src/lib/app-utils/page-header-actions-context.js +58 -0
  486. package/src/lib/app-utils/page-header-actions-context.js.map +1 -0
  487. package/src/lib/app-utils/page-header-record-context.d.ts +80 -0
  488. package/src/lib/app-utils/page-header-record-context.js +64 -0
  489. package/src/lib/app-utils/page-header-record-context.js.map +1 -0
  490. package/src/lib/app-utils/page-markdown.d.ts +103 -0
  491. package/src/lib/app-utils/page-markdown.js +385 -0
  492. package/src/lib/app-utils/page-markdown.js.map +1 -0
  493. package/src/lib/app-utils/paid-media-source.d.ts +90 -0
  494. package/src/lib/app-utils/paid-media-source.js +184 -0
  495. package/src/lib/app-utils/paid-media-source.js.map +1 -0
  496. package/src/lib/app-utils/palette-sx.d.ts +34 -0
  497. package/src/lib/app-utils/palette-sx.js +150 -0
  498. package/src/lib/app-utils/palette-sx.js.map +1 -0
  499. package/src/lib/app-utils/password-policy.d.ts +47 -0
  500. package/src/lib/app-utils/password-policy.js +46 -0
  501. package/src/lib/app-utils/password-policy.js.map +1 -0
  502. package/src/lib/app-utils/payments-configured.d.ts +84 -0
  503. package/src/lib/app-utils/payments-configured.js +88 -0
  504. package/src/lib/app-utils/payments-configured.js.map +1 -0
  505. package/src/lib/app-utils/person-erasure.d.ts +126 -0
  506. package/src/lib/app-utils/person-erasure.js +121 -0
  507. package/src/lib/app-utils/person-erasure.js.map +1 -0
  508. package/src/lib/app-utils/person-key.d.ts +32 -0
  509. package/src/lib/app-utils/person-key.js +62 -0
  510. package/src/lib/app-utils/person-key.js.map +1 -0
  511. package/src/lib/app-utils/plan-entitlements.d.ts +2756 -0
  512. package/src/lib/app-utils/plan-entitlements.js +4085 -0
  513. package/src/lib/app-utils/plan-entitlements.js.map +1 -0
  514. package/src/lib/app-utils/platform-ad-conversions.d.ts +122 -0
  515. package/src/lib/app-utils/platform-ad-conversions.js +174 -0
  516. package/src/lib/app-utils/platform-ad-conversions.js.map +1 -0
  517. package/src/lib/app-utils/platform-advertising-tags.d.ts +139 -0
  518. package/src/lib/app-utils/platform-advertising-tags.js +203 -0
  519. package/src/lib/app-utils/platform-advertising-tags.js.map +1 -0
  520. package/src/lib/app-utils/platform-brand.d.ts +151 -0
  521. package/src/lib/app-utils/platform-brand.js +175 -0
  522. package/src/lib/app-utils/platform-brand.js.map +1 -0
  523. package/src/lib/app-utils/platform-consent-default.d.ts +142 -0
  524. package/src/lib/app-utils/platform-consent-default.js +295 -0
  525. package/src/lib/app-utils/platform-consent-default.js.map +1 -0
  526. package/src/lib/app-utils/platform-marketing-consent.d.ts +151 -0
  527. package/src/lib/app-utils/platform-marketing-consent.js +182 -0
  528. package/src/lib/app-utils/platform-marketing-consent.js.map +1 -0
  529. package/src/lib/app-utils/platform-marketing-host.d.ts +33 -0
  530. package/src/lib/app-utils/platform-marketing-host.js +97 -0
  531. package/src/lib/app-utils/platform-marketing-host.js.map +1 -0
  532. package/src/lib/app-utils/platform-visitor-consent.d.ts +252 -0
  533. package/src/lib/app-utils/platform-visitor-consent.js +533 -0
  534. package/src/lib/app-utils/platform-visitor-consent.js.map +1 -0
  535. package/src/lib/app-utils/plugin-api-cross-origin.d.ts +61 -0
  536. package/src/lib/app-utils/plugin-api-cross-origin.js +202 -0
  537. package/src/lib/app-utils/plugin-api-cross-origin.js.map +1 -0
  538. package/src/lib/app-utils/plugin-api-rate-limit.d.ts +192 -0
  539. package/src/lib/app-utils/plugin-api-rate-limit.js +270 -0
  540. package/src/lib/app-utils/plugin-api-rate-limit.js.map +1 -0
  541. package/src/lib/app-utils/plugin-artifact-path.d.ts +32 -0
  542. package/src/lib/app-utils/plugin-artifact-path.js +33 -0
  543. package/src/lib/app-utils/plugin-artifact-path.js.map +1 -0
  544. package/src/lib/app-utils/plugin-bundle-checks.d.ts +148 -0
  545. package/src/lib/app-utils/plugin-bundle-checks.js +989 -0
  546. package/src/lib/app-utils/plugin-bundle-checks.js.map +1 -0
  547. package/src/lib/app-utils/plugin-manifest.d.ts +516 -0
  548. package/src/lib/app-utils/plugin-manifest.js +687 -0
  549. package/src/lib/app-utils/plugin-manifest.js.map +1 -0
  550. package/src/lib/app-utils/published-legal-pages.d.ts +71 -0
  551. package/src/lib/app-utils/published-legal-pages.js +90 -0
  552. package/src/lib/app-utils/published-legal-pages.js.map +1 -0
  553. package/src/lib/app-utils/publisher-agreement.d.ts +254 -0
  554. package/src/lib/app-utils/publisher-agreement.js +274 -0
  555. package/src/lib/app-utils/publisher-agreement.js.map +1 -0
  556. package/src/lib/app-utils/publisher-attestation.d.ts +99 -0
  557. package/src/lib/app-utils/publisher-attestation.js +158 -0
  558. package/src/lib/app-utils/publisher-attestation.js.map +1 -0
  559. package/src/lib/app-utils/recipient-email-render.d.ts +216 -0
  560. package/src/lib/app-utils/recipient-email-render.js +221 -0
  561. package/src/lib/app-utils/recipient-email-render.js.map +1 -0
  562. package/src/lib/app-utils/redispatch-caught-error.d.ts +38 -0
  563. package/src/lib/app-utils/redispatch-caught-error.js +46 -0
  564. package/src/lib/app-utils/redispatch-caught-error.js.map +1 -0
  565. package/src/lib/app-utils/registering-plugin.d.ts +19 -0
  566. package/src/lib/app-utils/registering-plugin.js +38 -0
  567. package/src/lib/app-utils/registering-plugin.js.map +1 -0
  568. package/src/lib/app-utils/release-flags.d.ts +283 -0
  569. package/src/lib/app-utils/release-flags.js +518 -0
  570. package/src/lib/app-utils/release-flags.js.map +1 -0
  571. package/src/lib/app-utils/repair-canvas-nodes.d.ts +130 -0
  572. package/src/lib/app-utils/repair-canvas-nodes.js +298 -0
  573. package/src/lib/app-utils/repair-canvas-nodes.js.map +1 -0
  574. package/src/lib/app-utils/repeat-infringer.d.ts +166 -0
  575. package/src/lib/app-utils/repeat-infringer.js +188 -0
  576. package/src/lib/app-utils/repeat-infringer.js.map +1 -0
  577. package/src/lib/app-utils/repeat-sources.d.ts +115 -0
  578. package/src/lib/app-utils/repeat-sources.js +86 -0
  579. package/src/lib/app-utils/repeat-sources.js.map +1 -0
  580. package/src/lib/app-utils/request-geo.d.ts +114 -0
  581. package/src/lib/app-utils/request-geo.js +247 -0
  582. package/src/lib/app-utils/request-geo.js.map +1 -0
  583. package/src/lib/app-utils/request-ip.d.ts +213 -0
  584. package/src/lib/app-utils/request-ip.js +344 -0
  585. package/src/lib/app-utils/request-ip.js.map +1 -0
  586. package/src/lib/app-utils/resolve-named-tokens.d.ts +26 -0
  587. package/src/lib/app-utils/resolve-named-tokens.js +59 -0
  588. package/src/lib/app-utils/resolve-named-tokens.js.map +1 -0
  589. package/src/lib/app-utils/responsive-typography-sx.d.ts +77 -0
  590. package/src/lib/app-utils/responsive-typography-sx.js +122 -0
  591. package/src/lib/app-utils/responsive-typography-sx.js.map +1 -0
  592. package/src/lib/app-utils/reusable-component-keys.d.ts +135 -0
  593. package/src/lib/app-utils/reusable-component-keys.js +140 -0
  594. package/src/lib/app-utils/reusable-component-keys.js.map +1 -0
  595. package/src/lib/app-utils/reusable-prop-values.d.ts +199 -0
  596. package/src/lib/app-utils/reusable-prop-values.js +494 -0
  597. package/src/lib/app-utils/reusable-prop-values.js.map +1 -0
  598. package/src/lib/app-utils/safe-json-ld.d.ts +29 -0
  599. package/src/lib/app-utils/safe-json-ld.js +37 -0
  600. package/src/lib/app-utils/safe-json-ld.js.map +1 -0
  601. package/src/lib/app-utils/sanitize-svg.d.ts +55 -0
  602. package/src/lib/app-utils/sanitize-svg.js +460 -0
  603. package/src/lib/app-utils/sanitize-svg.js.map +1 -0
  604. package/src/lib/app-utils/scheme-sx.d.ts +84 -0
  605. package/src/lib/app-utils/scheme-sx.js +148 -0
  606. package/src/lib/app-utils/scheme-sx.js.map +1 -0
  607. package/src/lib/app-utils/scope-tokens.d.ts +249 -0
  608. package/src/lib/app-utils/scope-tokens.js +331 -0
  609. package/src/lib/app-utils/scope-tokens.js.map +1 -0
  610. package/src/lib/app-utils/screen-link-context-value.d.ts +57 -0
  611. package/src/lib/app-utils/screen-link-context-value.js +43 -0
  612. package/src/lib/app-utils/screen-link-context-value.js.map +1 -0
  613. package/src/lib/app-utils/screen-link-context.d.ts +185 -0
  614. package/src/lib/app-utils/screen-link-context.js +304 -0
  615. package/src/lib/app-utils/screen-link-context.js.map +1 -0
  616. package/src/lib/app-utils/screen-link-value.d.ts +269 -0
  617. package/src/lib/app-utils/screen-link-value.js +384 -0
  618. package/src/lib/app-utils/screen-link-value.js.map +1 -0
  619. package/src/lib/app-utils/screen-route.d.ts +669 -0
  620. package/src/lib/app-utils/screen-route.js +751 -0
  621. package/src/lib/app-utils/screen-route.js.map +1 -0
  622. package/src/lib/app-utils/screen-seo-fields.d.ts +37 -0
  623. package/src/lib/app-utils/screen-seo-fields.js +42 -0
  624. package/src/lib/app-utils/screen-seo-fields.js.map +1 -0
  625. package/src/lib/app-utils/search-indexing.d.ts +162 -0
  626. package/src/lib/app-utils/search-indexing.js +207 -0
  627. package/src/lib/app-utils/search-indexing.js.map +1 -0
  628. package/src/lib/app-utils/seo-listing-fields.d.ts +70 -0
  629. package/src/lib/app-utils/seo-listing-fields.js +75 -0
  630. package/src/lib/app-utils/seo-listing-fields.js.map +1 -0
  631. package/src/lib/app-utils/seo-locale.d.ts +119 -0
  632. package/src/lib/app-utils/seo-locale.js +133 -0
  633. package/src/lib/app-utils/seo-locale.js.map +1 -0
  634. package/src/lib/app-utils/seo-title-variables.d.ts +149 -0
  635. package/src/lib/app-utils/seo-title-variables.js +190 -0
  636. package/src/lib/app-utils/seo-title-variables.js.map +1 -0
  637. package/src/lib/app-utils/seo-title.d.ts +70 -0
  638. package/src/lib/app-utils/seo-title.js +117 -0
  639. package/src/lib/app-utils/seo-title.js.map +1 -0
  640. package/src/lib/app-utils/server.d.ts +174 -0
  641. package/src/lib/app-utils/server.js +314 -0
  642. package/src/lib/app-utils/server.js.map +1 -0
  643. package/src/lib/app-utils/site-context.d.ts +106 -0
  644. package/src/lib/app-utils/site-context.js +100 -0
  645. package/src/lib/app-utils/site-context.js.map +1 -0
  646. package/src/lib/app-utils/sitemap.d.ts +117 -0
  647. package/src/lib/app-utils/sitemap.js +183 -0
  648. package/src/lib/app-utils/sitemap.js.map +1 -0
  649. package/src/lib/app-utils/social-image.d.ts +112 -0
  650. package/src/lib/app-utils/social-image.js +191 -0
  651. package/src/lib/app-utils/social-image.js.map +1 -0
  652. package/src/lib/app-utils/starter-templates.d.ts +99 -0
  653. package/src/lib/app-utils/starter-templates.js +579 -0
  654. package/src/lib/app-utils/starter-templates.js.map +1 -0
  655. package/src/lib/app-utils/stored-nodes.d.ts +120 -0
  656. package/src/lib/app-utils/stored-nodes.js +174 -0
  657. package/src/lib/app-utils/stored-nodes.js.map +1 -0
  658. package/src/lib/app-utils/strip-undefined.d.ts +59 -0
  659. package/src/lib/app-utils/strip-undefined.js +95 -0
  660. package/src/lib/app-utils/strip-undefined.js.map +1 -0
  661. package/src/lib/app-utils/stripe-deployment-mode.d.ts +47 -0
  662. package/src/lib/app-utils/stripe-deployment-mode.js +70 -0
  663. package/src/lib/app-utils/stripe-deployment-mode.js.map +1 -0
  664. package/src/lib/app-utils/support-tiers.d.ts +108 -0
  665. package/src/lib/app-utils/support-tiers.js +201 -0
  666. package/src/lib/app-utils/support-tiers.js.map +1 -0
  667. package/src/lib/app-utils/timezone-geo-hint.d.ts +36 -0
  668. package/src/lib/app-utils/timezone-geo-hint.js +180 -0
  669. package/src/lib/app-utils/timezone-geo-hint.js.map +1 -0
  670. package/src/lib/app-utils/upload-cors.d.ts +155 -0
  671. package/src/lib/app-utils/upload-cors.js +254 -0
  672. package/src/lib/app-utils/upload-cors.js.map +1 -0
  673. package/src/lib/app-utils/upload-inspection.d.ts +159 -0
  674. package/src/lib/app-utils/upload-inspection.js +539 -0
  675. package/src/lib/app-utils/upload-inspection.js.map +1 -0
  676. package/src/lib/app-utils/url-slug.d.ts +40 -0
  677. package/src/lib/app-utils/url-slug.js +42 -0
  678. package/src/lib/app-utils/url-slug.js.map +1 -0
  679. package/src/lib/app-utils/usage-budget.d.ts +429 -0
  680. package/src/lib/app-utils/usage-budget.js +421 -0
  681. package/src/lib/app-utils/usage-budget.js.map +1 -0
  682. package/src/lib/app-utils/variables.d.ts +96 -0
  683. package/src/lib/app-utils/variables.js +233 -0
  684. package/src/lib/app-utils/variables.js.map +1 -0
  685. package/src/lib/app-utils/video-asset-facts.d.ts +61 -0
  686. package/src/lib/app-utils/video-asset-facts.js +70 -0
  687. package/src/lib/app-utils/video-asset-facts.js.map +1 -0
  688. package/src/lib/app-utils/video-object.d.ts +89 -0
  689. package/src/lib/app-utils/video-object.js +245 -0
  690. package/src/lib/app-utils/video-object.js.map +1 -0
  691. package/src/lib/app-utils/visitor-consent.d.ts +757 -0
  692. package/src/lib/app-utils/visitor-consent.js +981 -0
  693. package/src/lib/app-utils/visitor-consent.js.map +1 -0
  694. package/src/lib/app-utils/visitor-record-ceiling.d.ts +223 -0
  695. package/src/lib/app-utils/visitor-record-ceiling.js +215 -0
  696. package/src/lib/app-utils/visitor-record-ceiling.js.map +1 -0
  697. package/src/lib/app-utils/web-vitals-rum.d.ts +53 -0
  698. package/src/lib/app-utils/web-vitals-rum.js +278 -0
  699. package/src/lib/app-utils/web-vitals-rum.js.map +1 -0
  700. package/src/lib/app-utils/webhook-delivery.d.ts +324 -0
  701. package/src/lib/app-utils/webhook-delivery.js +413 -0
  702. package/src/lib/app-utils/webhook-delivery.js.map +1 -0
  703. package/src/lib/app-utils/where-used.d.ts +57 -0
  704. package/src/lib/app-utils/where-used.js +59 -0
  705. package/src/lib/app-utils/where-used.js.map +1 -0
  706. package/src/lib/app-utils/wistia-embed.d.ts +86 -0
  707. package/src/lib/app-utils/wistia-embed.js +119 -0
  708. package/src/lib/app-utils/wistia-embed.js.map +1 -0
  709. package/src/lib/app-utils/workflows.d.ts +136 -0
  710. package/src/lib/app-utils/workflows.js +346 -0
  711. package/src/lib/app-utils/workflows.js.map +1 -0
  712. package/src/lib/canvas-manager/canvas-manager-tree.d.ts +109 -0
  713. package/src/lib/canvas-manager/canvas-manager-tree.js +139 -0
  714. package/src/lib/canvas-manager/canvas-manager-tree.js.map +1 -0
  715. package/src/lib/canvas-manager/canvas-manager.d.ts +549 -0
  716. package/src/lib/canvas-manager/canvas-manager.js +1311 -0
  717. package/src/lib/canvas-manager/canvas-manager.js.map +1 -0
  718. package/src/lib/canvas-manager/index.d.ts +20 -0
  719. package/src/lib/canvas-manager/index.js +21 -0
  720. package/src/lib/canvas-manager/index.js.map +1 -0
  721. package/src/lib/canvas-manager/stores/index.d.ts +17 -0
  722. package/src/lib/canvas-manager/stores/index.js +18 -0
  723. package/src/lib/canvas-manager/stores/index.js.map +1 -0
  724. package/src/lib/canvas-manager/stores/node.store.d.ts +30 -0
  725. package/src/lib/canvas-manager/stores/node.store.js +45 -0
  726. package/src/lib/canvas-manager/stores/node.store.js.map +1 -0
  727. package/src/lib/components-manager/components-manager.d.ts +56 -0
  728. package/src/lib/components-manager/components-manager.js +191 -0
  729. package/src/lib/components-manager/components-manager.js.map +1 -0
  730. package/src/lib/components-manager/index.d.ts +18 -0
  731. package/src/lib/components-manager/index.js +19 -0
  732. package/src/lib/components-manager/index.js.map +1 -0
  733. package/src/lib/emit-manager/emit-manager.d.ts +56 -0
  734. package/src/lib/emit-manager/emit-manager.js +60 -0
  735. package/src/lib/emit-manager/emit-manager.js.map +1 -0
  736. package/src/lib/emit-manager/index.d.ts +18 -0
  737. package/src/lib/emit-manager/index.js +19 -0
  738. package/src/lib/emit-manager/index.js.map +1 -0
  739. package/src/lib/foundation/constants/_internal.d.ts +18 -0
  740. package/src/lib/foundation/constants/_internal.js +62 -0
  741. package/src/lib/foundation/constants/_internal.js.map +1 -0
  742. package/src/lib/foundation/constants/app.d.ts +23 -0
  743. package/src/lib/foundation/constants/app.js +25 -0
  744. package/src/lib/foundation/constants/app.js.map +1 -0
  745. package/src/lib/foundation/constants/canvas.d.ts +18 -0
  746. package/src/lib/foundation/constants/canvas.js +18 -0
  747. package/src/lib/foundation/constants/canvas.js.map +1 -0
  748. package/src/lib/foundation/constants/components.d.ts +54 -0
  749. package/src/lib/foundation/constants/components.js +61 -0
  750. package/src/lib/foundation/constants/components.js.map +1 -0
  751. package/src/lib/foundation/constants/shared.d.ts +50 -0
  752. package/src/lib/foundation/constants/shared.js +49 -0
  753. package/src/lib/foundation/constants/shared.js.map +1 -0
  754. package/src/lib/foundation/constants/symbol.d.ts +63 -0
  755. package/src/lib/foundation/constants/symbol.js +75 -0
  756. package/src/lib/foundation/constants/symbol.js.map +1 -0
  757. package/src/lib/foundation/definitions/components.types.d.ts +372 -0
  758. package/src/lib/foundation/definitions/components.types.js +180 -0
  759. package/src/lib/foundation/definitions/components.types.js.map +1 -0
  760. package/src/lib/foundation/definitions/contact.types.d.ts +73 -0
  761. package/src/lib/foundation/definitions/contact.types.js +107 -0
  762. package/src/lib/foundation/definitions/contact.types.js.map +1 -0
  763. package/src/lib/foundation/definitions/host-content-collections.d.ts +137 -0
  764. package/src/lib/foundation/definitions/host-content-collections.js +219 -0
  765. package/src/lib/foundation/definitions/host-content-collections.js.map +1 -0
  766. package/src/lib/foundation/definitions/org-billing.types.d.ts +1361 -0
  767. package/src/lib/foundation/definitions/org-billing.types.js +77 -0
  768. package/src/lib/foundation/definitions/org-billing.types.js.map +1 -0
  769. package/src/lib/foundation/definitions/organization.types.d.ts +307 -0
  770. package/src/lib/foundation/definitions/organization.types.js +42 -0
  771. package/src/lib/foundation/definitions/organization.types.js.map +1 -0
  772. package/src/lib/foundation/definitions/platform.types.d.ts +1326 -0
  773. package/src/lib/foundation/definitions/platform.types.js +124 -0
  774. package/src/lib/foundation/definitions/platform.types.js.map +1 -0
  775. package/src/lib/foundation/definitions/property-kinds.d.ts +189 -0
  776. package/src/lib/foundation/definitions/property-kinds.js +565 -0
  777. package/src/lib/foundation/definitions/property-kinds.js.map +1 -0
  778. package/src/lib/foundation/definitions/shared.d.ts +23 -0
  779. package/src/lib/foundation/definitions/shared.js +18 -0
  780. package/src/lib/foundation/definitions/shared.js.map +1 -0
  781. package/src/lib/foundation/definitions/write-deny-coverage.util.d.ts +249 -0
  782. package/src/lib/foundation/definitions/write-deny-coverage.util.js +499 -0
  783. package/src/lib/foundation/definitions/write-deny-coverage.util.js.map +1 -0
  784. package/src/lib/foundation/index.d.ts +32 -0
  785. package/src/lib/foundation/index.js +67 -0
  786. package/src/lib/foundation/index.js.map +1 -0
  787. package/src/lib/lifecycle.d.ts +24 -0
  788. package/src/lib/lifecycle.js +39 -0
  789. package/src/lib/lifecycle.js.map +1 -0
  790. package/src/lib/mst/common.d.ts +17 -0
  791. package/src/lib/mst/common.js +23 -0
  792. package/src/lib/mst/common.js.map +1 -0
  793. package/src/lib/mst/index.d.ts +19 -0
  794. package/src/lib/mst/index.js +20 -0
  795. package/src/lib/mst/index.js.map +1 -0
  796. package/src/lib/mst/json.d.ts +22 -0
  797. package/src/lib/mst/json.js +23 -0
  798. package/src/lib/mst/json.js.map +1 -0
  799. package/src/lib/mst/types.d.ts +20 -0
  800. package/src/lib/mst/types.js +18 -0
  801. package/src/lib/mst/types.js.map +1 -0
  802. package/src/lib/plugin-manager/billing-webhook-hooks.d.ts +77 -0
  803. package/src/lib/plugin-manager/billing-webhook-hooks.js +55 -0
  804. package/src/lib/plugin-manager/billing-webhook-hooks.js.map +1 -0
  805. package/src/lib/plugin-manager/commerce-zone-props.d.ts +172 -0
  806. package/src/lib/plugin-manager/commerce-zone-props.js +31 -0
  807. package/src/lib/plugin-manager/commerce-zone-props.js.map +1 -0
  808. package/src/lib/plugin-manager/custom-fields.d.ts +60 -0
  809. package/src/lib/plugin-manager/custom-fields.js +39 -0
  810. package/src/lib/plugin-manager/custom-fields.js.map +1 -0
  811. package/src/lib/plugin-manager/editor-sessions.d.ts +109 -0
  812. package/src/lib/plugin-manager/editor-sessions.js +137 -0
  813. package/src/lib/plugin-manager/editor-sessions.js.map +1 -0
  814. package/src/lib/plugin-manager/enabled-plugins.d.ts +438 -0
  815. package/src/lib/plugin-manager/enabled-plugins.js +403 -0
  816. package/src/lib/plugin-manager/enabled-plugins.js.map +1 -0
  817. package/src/lib/plugin-manager/feature-plugins.d.ts +1314 -0
  818. package/src/lib/plugin-manager/feature-plugins.js +609 -0
  819. package/src/lib/plugin-manager/feature-plugins.js.map +1 -0
  820. package/src/lib/plugin-manager/first-party-plugins.generated.d.ts +11 -0
  821. package/src/lib/plugin-manager/first-party-plugins.generated.js +149 -0
  822. package/src/lib/plugin-manager/first-party-plugins.generated.js.map +1 -0
  823. package/src/lib/plugin-manager/index.d.ts +42 -0
  824. package/src/lib/plugin-manager/index.js +46 -0
  825. package/src/lib/plugin-manager/index.js.map +1 -0
  826. package/src/lib/plugin-manager/install-presets.d.ts +93 -0
  827. package/src/lib/plugin-manager/install-presets.js +86 -0
  828. package/src/lib/plugin-manager/install-presets.js.map +1 -0
  829. package/src/lib/plugin-manager/media-delivery-provider.d.ts +124 -0
  830. package/src/lib/plugin-manager/media-delivery-provider.js +53 -0
  831. package/src/lib/plugin-manager/media-delivery-provider.js.map +1 -0
  832. package/src/lib/plugin-manager/order-fulfilment.d.ts +142 -0
  833. package/src/lib/plugin-manager/order-fulfilment.js +104 -0
  834. package/src/lib/plugin-manager/order-fulfilment.js.map +1 -0
  835. package/src/lib/plugin-manager/plugin-activity-actions.d.ts +122 -0
  836. package/src/lib/plugin-manager/plugin-activity-actions.js +140 -0
  837. package/src/lib/plugin-manager/plugin-activity-actions.js.map +1 -0
  838. package/src/lib/plugin-manager/plugin-bridge.d.ts +98 -0
  839. package/src/lib/plugin-manager/plugin-bridge.js +154 -0
  840. package/src/lib/plugin-manager/plugin-bridge.js.map +1 -0
  841. package/src/lib/plugin-manager/plugin-config.d.ts +148 -0
  842. package/src/lib/plugin-manager/plugin-config.js +228 -0
  843. package/src/lib/plugin-manager/plugin-config.js.map +1 -0
  844. package/src/lib/plugin-manager/plugin-console-crons.d.ts +139 -0
  845. package/src/lib/plugin-manager/plugin-console-crons.js +177 -0
  846. package/src/lib/plugin-manager/plugin-console-crons.js.map +1 -0
  847. package/src/lib/plugin-manager/plugin-contact-capture.d.ts +220 -0
  848. package/src/lib/plugin-manager/plugin-contact-capture.js +89 -0
  849. package/src/lib/plugin-manager/plugin-contact-capture.js.map +1 -0
  850. package/src/lib/plugin-manager/plugin-contributions.d.ts +244 -0
  851. package/src/lib/plugin-manager/plugin-contributions.js +283 -0
  852. package/src/lib/plugin-manager/plugin-contributions.js.map +1 -0
  853. package/src/lib/plugin-manager/plugin-entitlement-keys.d.ts +169 -0
  854. package/src/lib/plugin-manager/plugin-entitlement-keys.js +84 -0
  855. package/src/lib/plugin-manager/plugin-entitlement-keys.js.map +1 -0
  856. package/src/lib/plugin-manager/plugin-entitlements.d.ts +181 -0
  857. package/src/lib/plugin-manager/plugin-entitlements.js +188 -0
  858. package/src/lib/plugin-manager/plugin-entitlements.js.map +1 -0
  859. package/src/lib/plugin-manager/plugin-events.d.ts +145 -0
  860. package/src/lib/plugin-manager/plugin-events.js +79 -0
  861. package/src/lib/plugin-manager/plugin-events.js.map +1 -0
  862. package/src/lib/plugin-manager/plugin-figures.d.ts +251 -0
  863. package/src/lib/plugin-manager/plugin-figures.js +252 -0
  864. package/src/lib/plugin-manager/plugin-figures.js.map +1 -0
  865. package/src/lib/plugin-manager/plugin-host-collections.d.ts +146 -0
  866. package/src/lib/plugin-manager/plugin-host-collections.js +116 -0
  867. package/src/lib/plugin-manager/plugin-host-collections.js.map +1 -0
  868. package/src/lib/plugin-manager/plugin-jobs.d.ts +130 -0
  869. package/src/lib/plugin-manager/plugin-jobs.js +182 -0
  870. package/src/lib/plugin-manager/plugin-jobs.js.map +1 -0
  871. package/src/lib/plugin-manager/plugin-loader.d.ts +86 -0
  872. package/src/lib/plugin-manager/plugin-loader.js +223 -0
  873. package/src/lib/plugin-manager/plugin-loader.js.map +1 -0
  874. package/src/lib/plugin-manager/plugin-manager.d.ts +95 -0
  875. package/src/lib/plugin-manager/plugin-manager.js +343 -0
  876. package/src/lib/plugin-manager/plugin-manager.js.map +1 -0
  877. package/src/lib/plugin-manager/plugin-metered-lines.d.ts +97 -0
  878. package/src/lib/plugin-manager/plugin-metered-lines.js +123 -0
  879. package/src/lib/plugin-manager/plugin-metered-lines.js.map +1 -0
  880. package/src/lib/plugin-manager/plugin-org-erasure.d.ts +52 -0
  881. package/src/lib/plugin-manager/plugin-org-erasure.js +100 -0
  882. package/src/lib/plugin-manager/plugin-org-erasure.js.map +1 -0
  883. package/src/lib/plugin-manager/plugin-permissions.d.ts +69 -0
  884. package/src/lib/plugin-manager/plugin-permissions.js +77 -0
  885. package/src/lib/plugin-manager/plugin-permissions.js.map +1 -0
  886. package/src/lib/plugin-manager/plugin-person-erasure.d.ts +58 -0
  887. package/src/lib/plugin-manager/plugin-person-erasure.js +109 -0
  888. package/src/lib/plugin-manager/plugin-person-erasure.js.map +1 -0
  889. package/src/lib/plugin-manager/plugin-record-cards.d.ts +99 -0
  890. package/src/lib/plugin-manager/plugin-record-cards.js +59 -0
  891. package/src/lib/plugin-manager/plugin-record-cards.js.map +1 -0
  892. package/src/lib/plugin-manager/plugin-record-facts.d.ts +111 -0
  893. package/src/lib/plugin-manager/plugin-record-facts.js +51 -0
  894. package/src/lib/plugin-manager/plugin-record-facts.js.map +1 -0
  895. package/src/lib/plugin-manager/plugin-record-routes.d.ts +129 -0
  896. package/src/lib/plugin-manager/plugin-record-routes.js +93 -0
  897. package/src/lib/plugin-manager/plugin-record-routes.js.map +1 -0
  898. package/src/lib/plugin-manager/plugin-record-timeline.d.ts +147 -0
  899. package/src/lib/plugin-manager/plugin-record-timeline.js +39 -0
  900. package/src/lib/plugin-manager/plugin-record-timeline.js.map +1 -0
  901. package/src/lib/plugin-manager/plugin-resource-drafts.d.ts +137 -0
  902. package/src/lib/plugin-manager/plugin-resource-drafts.js +51 -0
  903. package/src/lib/plugin-manager/plugin-resource-drafts.js.map +1 -0
  904. package/src/lib/plugin-manager/plugin-services.d.ts +94 -0
  905. package/src/lib/plugin-manager/plugin-services.js +153 -0
  906. package/src/lib/plugin-manager/plugin-services.js.map +1 -0
  907. package/src/lib/plugin-manager/plugin-styles-ui.d.ts +71 -0
  908. package/src/lib/plugin-manager/plugin-styles-ui.js +80 -0
  909. package/src/lib/plugin-manager/plugin-styles-ui.js.map +1 -0
  910. package/src/lib/plugin-manager/plugin-styles.d.ts +176 -0
  911. package/src/lib/plugin-manager/plugin-styles.js +186 -0
  912. package/src/lib/plugin-manager/plugin-styles.js.map +1 -0
  913. package/src/lib/plugin-manager/plugin-subprocessors.d.ts +135 -0
  914. package/src/lib/plugin-manager/plugin-subprocessors.js +129 -0
  915. package/src/lib/plugin-manager/plugin-subprocessors.js.map +1 -0
  916. package/src/lib/plugin-manager/plugin-tax-profile.d.ts +84 -0
  917. package/src/lib/plugin-manager/plugin-tax-profile.js +39 -0
  918. package/src/lib/plugin-manager/plugin-tax-profile.js.map +1 -0
  919. package/src/lib/plugin-manager/plugin-user-erasure.d.ts +53 -0
  920. package/src/lib/plugin-manager/plugin-user-erasure.js +84 -0
  921. package/src/lib/plugin-manager/plugin-user-erasure.js.map +1 -0
  922. package/src/lib/plugin-manager/plugin-zones.d.ts +121 -0
  923. package/src/lib/plugin-manager/plugin-zones.js +74 -0
  924. package/src/lib/plugin-manager/plugin-zones.js.map +1 -0
  925. package/src/lib/plugin-manager/realm-plugins.d.ts +112 -0
  926. package/src/lib/plugin-manager/realm-plugins.js +196 -0
  927. package/src/lib/plugin-manager/realm-plugins.js.map +1 -0
  928. package/src/lib/plugin-manager/realm-server.d.ts +54 -0
  929. package/src/lib/plugin-manager/realm-server.js +88 -0
  930. package/src/lib/plugin-manager/realm-server.js.map +1 -0
  931. package/src/lib/plugin-manager/record-zone-props.d.ts +126 -0
  932. package/src/lib/plugin-manager/record-zone-props.js +31 -0
  933. package/src/lib/plugin-manager/record-zone-props.js.map +1 -0
  934. package/src/lib/plugin-manager/site-page-hooks.d.ts +102 -0
  935. package/src/lib/plugin-manager/site-page-hooks.js +114 -0
  936. package/src/lib/plugin-manager/site-page-hooks.js.map +1 -0
  937. package/src/lib/plugin-manager/site-runtime.d.ts +57 -0
  938. package/src/lib/plugin-manager/site-runtime.js +25 -0
  939. package/src/lib/plugin-manager/site-runtime.js.map +1 -0
  940. package/src/lib/plugin-manager/usage-alert-contributors.d.ts +115 -0
  941. package/src/lib/plugin-manager/usage-alert-contributors.js +106 -0
  942. package/src/lib/plugin-manager/usage-alert-contributors.js.map +1 -0
  943. package/src/lib/types/ast.d.ts +199 -0
  944. package/src/lib/types/ast.js +20 -0
  945. package/src/lib/types/ast.js.map +1 -0
  946. package/src/lib/types/index.d.ts +20 -0
  947. package/src/lib/types/index.js +21 -0
  948. package/src/lib/types/index.js.map +1 -0
  949. package/src/lib/types/nodes.d.ts +608 -0
  950. package/src/lib/types/nodes.js +28 -0
  951. package/src/lib/types/nodes.js.map +1 -0
  952. package/src/lib/types/routing.d.ts +17 -0
  953. package/src/lib/types/routing.js +18 -0
  954. package/src/lib/types/routing.js.map +1 -0
  955. package/src/lib/types/screen.d.ts +23 -0
  956. package/src/lib/types/screen.js +18 -0
  957. package/src/lib/types/screen.js.map +1 -0
  958. package/src/lib/utils.d.ts +25 -0
  959. package/src/lib/utils.js +42 -0
  960. package/src/lib/utils.js.map +1 -0
  961. package/src/server.d.ts +37 -0
  962. package/src/server.js +55 -0
  963. package/src/server.js.map +1 -0
@@ -0,0 +1,744 @@
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
+ * The one GA4 event taxonomy, shared by the marketing site (tenant runtime)
19
+ * and the console (AGL-1561). See `docs/ANALYTICS.md` for the event map and
20
+ * which GTM-plan §6 metric each event serves.
21
+ *
22
+ * ## Why this module exists
23
+ *
24
+ * Before it, every GA event in the repo was an ad-hoc
25
+ * `;(window as any).gtag?.('event', 'name', {...})` — five of them across the
26
+ * marketing and commerce plugins, plus bare string literals passed to Firebase
27
+ * `logEvent` in the console. Nothing checked the names, nothing checked the
28
+ * params, and a typo produced a silently-missing metric rather than an error.
29
+ * That is the failure mode analytics is worst at surfacing: the number simply
30
+ * reads zero, and zero is indistinguishable from "nobody did it".
31
+ *
32
+ * So the names and their params are a TYPE here ({@link AnalyticsEventParams}),
33
+ * and `trackEvent` is generic over it: a misspelled event name or a missing
34
+ * required param is a compile error.
35
+ *
36
+ * That sweep missed five (AGL-1591, closed): the commerce plugin's
37
+ * `view_item` / `add_to_cart` / `begin_checkout` and the marketing runtime's
38
+ * `aglyn_overlay` / `aglyn_experiment`. `window.gtag` is now called in exactly
39
+ * two places in the repo — {@link deliver} below, and `readGaClientId` above,
40
+ * which reads rather than sends.
41
+ *
42
+ * ## Reserved names
43
+ *
44
+ * Where GA4 has a recommended event we use its exact name and its exact param
45
+ * spelling — `sign_up`, `login`, `generate_lead`, `begin_checkout`,
46
+ * `purchase`, `select_content` — so the built-in reports, the funnel
47
+ * explorations and the "key events" toggles work without custom definitions.
48
+ * Custom snake_case names appear only where GA4 has no standard: the four
49
+ * activation events, which are Aglyn-specific product milestones.
50
+ *
51
+ * ## Consent (AGL-1498) — the gate is that gtag never loads
52
+ *
53
+ * On tenant sites, including aglyn.com itself, `site-analytics.tsx` renders the
54
+ * gtag `<Script>` pair ONLY when the recorded consent state grants analytics.
55
+ * There is therefore no `window.gtag` at all for a visitor who has not granted,
56
+ * and {@link trackEvent} drops the event on the floor.
57
+ *
58
+ * It drops it — it does not QUEUE it. That distinction is the whole point and
59
+ * `analytics-events.spec.ts` asserts it: an event fired before consent is gone
60
+ * for good, and does not reappear when a later grant loads gtag. A queue would
61
+ * quietly convert "we did not track you" into "we tracked you and waited", and
62
+ * a replayed hit carries the pre-consent timestamp and page into GA, which is
63
+ * exactly the thing the consent gate exists to prevent. Deliberately no retry,
64
+ * no buffer, no flush-on-grant.
65
+ *
66
+ * ## No PII, enforced rather than promised
67
+ *
68
+ * Every payload passes through {@link sanitizeEventParams} before it reaches a
69
+ * transport: an exact-key denylist drops the identity-bearing params someone
70
+ * will eventually add by reflex (`email`, `org_name`, `first_name`, ...), any
71
+ * value that looks like an email address drops its key entirely, URLs are
72
+ * reduced to origin + pathname so query strings can never smuggle a token or
73
+ * an address, and strings are length-capped. The console separately sets a
74
+ * `user_id` — that is an opaque Firebase uid and is the one identifier GA is
75
+ * allowed to hold.
76
+ *
77
+ * Sanitizing here rather than at each call site is the point: a new call site
78
+ * cannot forget.
79
+ *
80
+ * ## Authored events (AGL-1587)
81
+ *
82
+ * One call site cannot use the taxonomy at all: the `trackGaEvent` action step,
83
+ * whose event name and params are typed by a SITE AUTHOR in the interaction
84
+ * builder. A closed union cannot contain a name nobody has written yet, so
85
+ * {@link trackAuthoredEvent} is the escape hatch — and it is deliberately the
86
+ * only one, so that untrusted input still passes {@link sanitizeEventParams}
87
+ * rather than reaching `window.gtag` raw.
88
+ *
89
+ * The test for which door an event uses is WHO NAMED IT, not whether GA4
90
+ * recommends the name. `aglyn_overlay` and `aglyn_experiment` are outside GA4's
91
+ * recommended set and were candidates for the hatch (AGL-1591); they are in the
92
+ * union instead, because a developer wrote their names and their keys, so they
93
+ * can have compile-time checking — and because the hatch guarantees the
94
+ * opposite of what they need. {@link resolveAuthoredEventName} refuses any name
95
+ * we send — the union AND the server-only names beside it — precisely so that
96
+ * "not one of ours" means "authored"; put our own events through the hatch and
97
+ * that stops being true, authored hits stop being separable from ours in
98
+ * reports, and an authored `aglyn_experiment` step starts voting in the
99
+ * experiment that decides which variant ships.
100
+ */
101
+ /**
102
+ * Read the browser's GA `client_id` — the identifier that ties a hit to a GA
103
+ * user and session.
104
+ *
105
+ * Needed because `purchase` is sent SERVER-side, from the Stripe webhook,
106
+ * where the authoritative money is (see `ga4-measurement-protocol.ts`). The
107
+ * Measurement Protocol requires a `client_id` and a server cannot know one,
108
+ * so it is captured here when checkout starts and carried on the Stripe
109
+ * object's metadata. Without it the revenue still lands, but attached to a
110
+ * synthetic user with no acquisition session — which is exactly the campaign
111
+ * attribution the whole exercise is for.
112
+ *
113
+ * Resolves to null rather than hanging when gtag is absent (no consent, an ad
114
+ * blocker, analytics not configured) or slow to answer. The 500ms cap matters:
115
+ * this sits directly in front of a checkout redirect, and analytics must never
116
+ * be able to delay a payment.
117
+ */
118
+ export declare function readGaClientId(measurementId: string | undefined | null): Promise<string | null>;
119
+ /** Which door an account was created through (AGL-1497 enumerates all four). */
120
+ export type SignUpMethod = 'password' | 'google_popup' | 'google_redirect' | 'google_signin';
121
+ /** How a returning user authenticated. */
122
+ export type LoginMethod = 'password' | 'google_popup' | 'google_redirect' | 'sso' | 'passkey';
123
+ /**
124
+ * A GA4 `items` entry. Only the fields we actually populate — GA accepts more,
125
+ * but an unpopulated field is a column of nulls in every report.
126
+ */
127
+ export interface AnalyticsItem {
128
+ /** Opaque identifier — a price id, plan key or marketplace listing id. */
129
+ item_id: string;
130
+ /** Human-readable product name. NEVER a customer or org name. */
131
+ item_name: string;
132
+ /** Distinguishes the revenue lines: `subscription` vs `marketplace`. */
133
+ item_category?: string;
134
+ price?: number;
135
+ quantity?: number;
136
+ }
137
+ /**
138
+ * The taxonomy. Adding an event means adding a line here first — which is what
139
+ * makes `docs/ANALYTICS.md` checkable against the code rather than aspirational.
140
+ */
141
+ export interface AnalyticsEventParams {
142
+ /**
143
+ * GA4 recommended. Real account creation only, never a sign-in.
144
+ *
145
+ * The three campaign params are optional and come from
146
+ * `campaignEventParams` (AGL-1731) — present when the signup URL named a
147
+ * campaign, absent entirely otherwise. They are what lets a September ad
148
+ * spend be evaluated: without them a paid click, an organic visit and a
149
+ * partner link arrive indistinguishable and the money cannot be traced to
150
+ * an account. Named `campaign_*` rather than `utm_*` because these are our
151
+ * own registered dimensions and the `utm_` spellings belong to GA's
152
+ * automatic campaign collection.
153
+ */
154
+ sign_up: {
155
+ method: SignUpMethod;
156
+ campaign_source?: string;
157
+ campaign_medium?: string;
158
+ campaign_name?: string;
159
+ };
160
+ /** GA4 recommended. Returning user only. */
161
+ login: {
162
+ method: LoginMethod;
163
+ };
164
+ /**
165
+ * GA4 recommended. Fired on a SUCCESSFUL form submission — never on click,
166
+ * never on a validation failure. `form_name` is the author-given form name,
167
+ * which is site content and not personal data.
168
+ */
169
+ generate_lead: {
170
+ form_name: string;
171
+ form_location?: string;
172
+ };
173
+ /**
174
+ * GA4 recommended. A CTA click, with the section that produced it.
175
+ *
176
+ * Fired by `analytics-link-clicks.ts` (AGL-1562) from a delegated listener,
177
+ * not per call site: an authored page has no code to add a handler to.
178
+ */
179
+ select_content: {
180
+ content_type: string;
181
+ content_id: string;
182
+ /** Which product surface — see `click.surface`. */
183
+ surface?: string;
184
+ };
185
+ /** Custom: no GA4 equivalent. A new organization exists. */
186
+ org_created: {
187
+ plan?: string;
188
+ };
189
+ /** Custom: no GA4 equivalent. A new site/host exists. */
190
+ host_created: Record<string, never>;
191
+ /**
192
+ * Custom: no GA4 equivalent, and the GTM plan's headline activation metric.
193
+ * A site actually went live.
194
+ */
195
+ site_published: {
196
+ first_publish?: boolean;
197
+ };
198
+ /** Custom: no GA4 equivalent. Stripe Connect onboarding completed. */
199
+ stripe_connected: Record<string, never>;
200
+ /** GA4 recommended. A plan checkout started. */
201
+ begin_checkout: {
202
+ currency: string;
203
+ value: number;
204
+ items: AnalyticsItem[];
205
+ /** `monthly` | `annual` — feeds the §6 annual-mix metric. */
206
+ billing_interval?: string;
207
+ };
208
+ /**
209
+ * GA4 recommended. A payment actually succeeded. `transaction_id` is the
210
+ * Stripe object id and is what makes the event idempotent in GA: GA4
211
+ * de-duplicates purchases by transaction id, so a webhook retry cannot
212
+ * inflate revenue.
213
+ */
214
+ purchase: {
215
+ transaction_id: string;
216
+ currency: string;
217
+ value: number;
218
+ items: AnalyticsItem[];
219
+ billing_interval?: string;
220
+ /**
221
+ * GA4's shipping charged on the transaction, in currency units. Optional
222
+ * because only a tenant STOREFRONT purchase ships anything — a plan or a
223
+ * marketplace purchase has no shipping to report and omits it.
224
+ *
225
+ * There is deliberately no sibling `tax` (AGL-1639, AGL-1641). The
226
+ * asymmetry is the point and is not an inconsistency to tidy away:
227
+ * `shipping` is a COMPONENT of the `value` beside it, so reporting it
228
+ * describes that value; `tax` is not, because `value` is already ex-tax,
229
+ * so reporting it would assert a relationship that does not hold and
230
+ * invite the subtraction that removes tax a second time.
231
+ */
232
+ shipping?: number;
233
+ };
234
+ /**
235
+ * GA4 recommended. A product detail page was viewed on a tenant storefront.
236
+ *
237
+ * Only `items`, and only `item_id`/`item_name` within it: those are the two
238
+ * fields the storefront actually has at this point, and an unpopulated
239
+ * `price`/`item_category` would be a column of nulls in the merchant's
240
+ * reports. The item id is the PRODUCT id — the same id `add_to_cart` and
241
+ * `begin_checkout` use — which is what lets GA join the three into one
242
+ * per-product funnel.
243
+ */
244
+ view_item: {
245
+ items: AnalyticsItem[];
246
+ };
247
+ /**
248
+ * GA4 recommended. A storefront product was added to the cart.
249
+ *
250
+ * `currency`/`value` are optional because GA4 pairs them — a `value` with no
251
+ * `currency` is dropped by GA — so they travel together or not at all, and
252
+ * {@link buildAddToCartParams} is what keeps that true. They are populated
253
+ * wherever the surface holds a server-priced figure: the product detail
254
+ * block knows the resolved variant's price and the chosen quantity, so the
255
+ * merchant's "value added to cart" is a real number rather than the empty
256
+ * column an items-only hit produces.
257
+ */
258
+ add_to_cart: {
259
+ currency?: string;
260
+ value?: number;
261
+ items: AnalyticsItem[];
262
+ };
263
+ /**
264
+ * GA4 recommended. The shopper looked at their cart — the funnel step
265
+ * between {@link AnalyticsEventParams.add_to_cart} and
266
+ * {@link AnalyticsEventParams.begin_checkout}, and the one GA4's own
267
+ * shopping-behavior report reads to tell "never opened the cart" apart from
268
+ * "opened it and did not check out". Without it those two collapse into one
269
+ * drop, and the merchant cannot tell a discovery problem from a pricing one.
270
+ *
271
+ * Fired when the cart is actually ON SCREEN carrying lines — a drawer that
272
+ * opened, or an inline cart block that resolved — never on the badge render
273
+ * that every page of a storefront performs. An empty cart is not a view of
274
+ * anything and reports nothing.
275
+ */
276
+ view_cart: {
277
+ currency: string;
278
+ value: number;
279
+ items: AnalyticsItem[];
280
+ };
281
+ /**
282
+ * Custom: no GA4 equivalent. An announcement bar or popup was shown,
283
+ * dismissed or clicked on a tenant site (AGL-200/271).
284
+ *
285
+ * In the taxonomy rather than {@link trackAuthoredEvent} even though it is
286
+ * not a GA4 recommended name: the name and every key here are written by US,
287
+ * which is exactly what the closed union is for. See the note on
288
+ * {@link trackAuthoredEvent} for why the two must not be mixed.
289
+ */
290
+ aglyn_overlay: {
291
+ overlay_action: string;
292
+ overlay_id?: string;
293
+ };
294
+ /**
295
+ * Custom: no GA4 equivalent. An experiment exposure or conversion
296
+ * (AGL-253). `experiment_action` is `exposure` | `conversion`.
297
+ *
298
+ * Being in the union also makes the name RESERVED against authored events,
299
+ * which matters more here than anywhere else in this file: these are the
300
+ * counts that decide which variant wins, and a hand-authored
301
+ * `aglyn_experiment` step would silently vote in that election.
302
+ */
303
+ aglyn_experiment: {
304
+ experiment_id: string;
305
+ variant_id: string;
306
+ experiment_action: string;
307
+ };
308
+ /**
309
+ * GA4 recommended-ish. Outbound click to docs, GitHub, etc. Fired by
310
+ * `analytics-link-clicks.ts` (AGL-1562) rather than at a call site.
311
+ */
312
+ click: {
313
+ link_domain: string;
314
+ link_id?: string;
315
+ /**
316
+ * Which product surface produced the click. GA's built-in Hostname
317
+ * dimension already separates the DOMAINS; this separates surfaces that
318
+ * could share one, and keeps the shared click listener from having to
319
+ * know anything about either.
320
+ *
321
+ * `site` — a tenant published site — is the only value ever SENT. `docs`
322
+ * was designed for (AGL-1579) and is not emitted: `apps/docs` cannot
323
+ * import `libs/`, so this listener is not installed there
324
+ * (docs/ANALYTICS.md decision 7 has the Vercel setting that would change
325
+ * that). Registering `surface` as a dimension and reading a one-value
326
+ * breakdown is the trap — the absent `docs` row means "no listener", not
327
+ * "no clicks".
328
+ */
329
+ surface?: string;
330
+ };
331
+ /**
332
+ * Custom: no GA4 equivalent. One Aglyn Assist message sent (AGL-1860).
333
+ * `tier` is the capability tier served (`free` | `entitled`);
334
+ * `grounded` says whether docs retrieval found sections to cite —
335
+ * ungrounded questions at volume are the docs-gap signal the data loop
336
+ * mines. No question text: params carry no user content.
337
+ */
338
+ assistant_message_sent: {
339
+ tier: string;
340
+ grounded: boolean;
341
+ };
342
+ /**
343
+ * Custom: no GA4 equivalent. Explicit thumbs on an Assist answer
344
+ * (AGL-1860). `feedback` is `up` | `down`.
345
+ */
346
+ assistant_feedback: {
347
+ feedback: string;
348
+ };
349
+ /**
350
+ * Custom: no GA4 equivalent. Aglyn Assist offered to open a page for the
351
+ * user (AGL-1988, level 2). `action` is the registry action id — a closed
352
+ * set, so it carries no user content.
353
+ *
354
+ * The pair below is the only read on whether the confirm gate is a real
355
+ * choice or a speed bump people click through. A shown-to-confirmed ratio
356
+ * near 1 means the card is not being read, and the copy has to change
357
+ * BEFORE the ladder goes anywhere near a write.
358
+ */
359
+ assistant_proposal_shown: {
360
+ action: string;
361
+ };
362
+ /** Custom: no GA4 equivalent. The user confirmed and was navigated. */
363
+ assistant_proposal_confirmed: {
364
+ action: string;
365
+ };
366
+ /**
367
+ * Custom: no GA4 equivalent. An AI generation job reached `done`
368
+ * (AGL-2904), observed from the console's jobs drawer. `kind` is the
369
+ * closed `AiJobKind` set and `credits` the job's spend at the plan's
370
+ * credit rate — no brief, no output: params carry no user content.
371
+ */
372
+ ai_job_completed: {
373
+ kind: string;
374
+ credits: number;
375
+ };
376
+ /**
377
+ * Custom: no GA4 equivalent. An AI generation job reached `failed`
378
+ * (AGL-2904). `kind` only; the failure text is a fixed customer-safe
379
+ * sentence and says nothing a rate could use.
380
+ */
381
+ ai_job_failed: {
382
+ kind: string;
383
+ };
384
+ /**
385
+ * Custom: no GA4 equivalent. The churn survey was answered — step 1 of the
386
+ * cancellation/deletion funnel, and the DENOMINATOR every step below is a
387
+ * rate against. Fired for both leave paths.
388
+ *
389
+ * `reason` is the closed `ChurnSurveyReason` set, never the free-text
390
+ * detail: the detail is customer-written prose, it belongs in Firestore
391
+ * where the data loop reads it, and shipping it to GA would put user
392
+ * content in analytics params. `surface` separates a subscription cancel
393
+ * from an account delete — counting only one understates churn by exactly
394
+ * the orgs that chose the other.
395
+ */
396
+ churn_survey_submitted: {
397
+ reason: string;
398
+ surface: string;
399
+ plan?: string;
400
+ };
401
+ /**
402
+ * Custom: no GA4 equivalent. The customer took the smaller tier instead of
403
+ * leaving — a SAVE, at reduced ARPA. `from_plan`/`to_plan` are what makes
404
+ * that tradeoff measurable rather than a win recorded without its cost.
405
+ */
406
+ downsell_accepted: {
407
+ from_plan: string;
408
+ to_plan: string;
409
+ surface: string;
410
+ };
411
+ /**
412
+ * Custom: no GA4 equivalent. The time-boxed winback discount was accepted.
413
+ *
414
+ * `percent_off` and `duration_months` are reported because the discount is
415
+ * bounded and the bound is the entire point (AGL-1620/AGL-1863): a retained
416
+ * org and the margin it was retained at are one fact, and a save recorded
417
+ * without its price reads as free.
418
+ */
419
+ winback_discount_accepted: {
420
+ percent_off: number;
421
+ duration_months: number;
422
+ plan?: string;
423
+ surface: string;
424
+ };
425
+ /**
426
+ * Custom: no GA4 equivalent. They left anyway — the funnel's terminal step,
427
+ * and the numerator for churn.
428
+ *
429
+ * `funnel_completed` is false when the cancel arrived without a funnelId
430
+ * (support ops, Stripe dashboard). It mirrors the `funnelSkipped` marker
431
+ * the routes write, so the GA funnel and the Firestore record agree instead
432
+ * of quietly disagreeing about how many departures were ever surveyed.
433
+ */
434
+ cancellation_completed: {
435
+ surface: string;
436
+ plan?: string;
437
+ funnel_completed: boolean;
438
+ };
439
+ /**
440
+ * Custom: no GA4 equivalent. A downgrade was confirmed and SCHEDULED from
441
+ * the billing plan grid — the same economic event `downsell_accepted`
442
+ * records, arrived at by the other door.
443
+ *
444
+ * Why this has to exist separately: all four retention events above fire
445
+ * from `retention-funnel.dialog.tsx` and from nowhere else. A customer who
446
+ * moves Pro → Starter through the cancel funnel is counted; a customer who
447
+ * moves Pro → Starter by clicking Downgrade on the plan card was counted by
448
+ * nothing. So "how many orgs moved down" was unanswerable, and the number
449
+ * that WAS answerable — `downsell_accepted` — undercounted by exactly the
450
+ * share that took the direct route while reading like a total. A save rate
451
+ * computed against it is wrong in the flattering direction, which is the
452
+ * worst direction for a retention number to be wrong in.
453
+ *
454
+ * `effective_at` is the whole point of the event's name: this is the
455
+ * asymmetric-friction arm of AGL-1859 §2, and a downgrade that has been
456
+ * SCHEDULED is not a downgrade that has HAPPENED. Reported as the server's
457
+ * ISO date so the gap between decision and effect — up to a full cycle, and
458
+ * the window in which "keep my plan" can still save the org — is visible in
459
+ * the data instead of being collapsed into the decision day.
460
+ *
461
+ * No amount, price or fee: pricing is locked for Sept 1, money belongs to
462
+ * `purchase`/`refund`, and a tier pair already says what changed.
463
+ */
464
+ plan_downgrade_scheduled: {
465
+ from_plan: string;
466
+ to_plan: string;
467
+ interval: string;
468
+ effective_at?: string;
469
+ };
470
+ /**
471
+ * Custom: no GA4 equivalent. An existing subscriber moved UP in place.
472
+ *
473
+ * Not `app_upgrade` — that name is GA4-RESERVED (it means an app binary
474
+ * version bump) and a hit using it is dropped, which is silence rather than
475
+ * pollution and therefore the harder failure to notice.
476
+ *
477
+ * `purchase` covers only the Checkout path, so before this, expansion
478
+ * revenue from customers who ALREADY had a subscription was dark: the
479
+ * in-place switch never opens a Checkout and never mints a new
480
+ * subscription, so nothing in the revenue taxonomy saw it. Upgrades are the
481
+ * half of AGL-1859 §2 that is supposed to be frictionless, and an
482
+ * unmeasured half cannot be shown to be.
483
+ */
484
+ plan_upgraded: {
485
+ from_plan: string;
486
+ to_plan: string;
487
+ interval: string;
488
+ };
489
+ }
490
+ export type AnalyticsEventName = keyof AnalyticsEventParams;
491
+ /**
492
+ * Where a sanitized event goes. The console registers a Firebase
493
+ * `logEvent` transport; the tenant runtime and the plugin bundles have none
494
+ * and fall through to `window.gtag`, which only exists once consent has been
495
+ * granted.
496
+ */
497
+ export type AnalyticsTransport = (name: AnalyticsEventName, params: Record<string, unknown>) => void | Promise<void>;
498
+ /**
499
+ * Register the transport for this surface. The console calls this once, with
500
+ * Firebase's `logEvent`, because the console's GA is Firebase-initialised and
501
+ * its `user_id`/user-property state lives on the Firebase Analytics instance —
502
+ * poking `window.gtag` directly there would emit hits that miss it.
503
+ *
504
+ * The tenant runtime deliberately does NOT call this: the plugin bundles run
505
+ * in their own realm and do not share this module instance with the host app,
506
+ * so a module-scope singleton would be invisible to exactly the call sites
507
+ * that need it (the form and newsletter elements). `window.gtag` is the only
508
+ * thing genuinely shared across that boundary, and it is also the consent
509
+ * gate, which makes the fallback the correct primary path there rather than a
510
+ * degraded one.
511
+ */
512
+ export declare function configureAnalyticsTransport(transport: AnalyticsTransport | null): void;
513
+ /** Test seam — drops the registered transport. */
514
+ export declare function resetAnalyticsTransport(): void;
515
+ /**
516
+ * GA4 truncates param values at 100 chars anyway; do it ourselves, visibly.
517
+ *
518
+ * Exported because an AUTHOR types some of these (the `trackGaEvent` step's
519
+ * parameters), and the field they type into caps its input at the same number
520
+ * — the truncation point and the affordance that describes it have to be one
521
+ * value, or the editor promises a length the delivery quietly shortens.
522
+ */
523
+ export declare const ANALYTICS_PARAM_MAX_LENGTH = 100;
524
+ /**
525
+ * Strip anything identity-bearing from an event payload. Exported so
526
+ * `analytics-events.spec.ts` can assert the guarantee directly rather than
527
+ * only through `trackEvent`.
528
+ */
529
+ export declare function sanitizeEventParams(params: Record<string, unknown> | undefined): Record<string, unknown>;
530
+ /**
531
+ * Fire a GA4 event.
532
+ *
533
+ * Never throws and never queues. If the surface has no transport and no
534
+ * `window.gtag` — which on a tenant site means the visitor has not granted
535
+ * analytics consent — the event is DROPPED, permanently. See the module
536
+ * comment for why a queue would be the wrong answer.
537
+ */
538
+ export declare function trackEvent<K extends AnalyticsEventName>(name: K, params: AnalyticsEventParams[K]): void;
539
+ /**
540
+ * Fire a GA4 event and resolve once it has been HANDED TO gtag — for the call
541
+ * sites that navigate away in the same tick (AGL-1580).
542
+ *
543
+ * ## What was actually losing the event
544
+ *
545
+ * Not the transport, which was the obvious suspect and the wrong one. Measured
546
+ * against real gtag.js with every transport interposed: gtag flushes its queue
547
+ * on pagehide through `fetch(..., { keepalive: true })`, which is precisely the
548
+ * mechanism that survives a document teardown. Once a hit reaches gtag, a
549
+ * navigation does not destroy it — and `transport_type: 'beacon'`, the standard
550
+ * answer, therefore fixes nothing here.
551
+ *
552
+ * What is lost is the hit that never REACHES gtag. Firebase's `logEvent` is
553
+ * `async` and awaits the SDK's initialization promise before calling gtag
554
+ * (`@firebase/analytics/dist/index.cjs.js`, `logEvent$1`). While that promise is
555
+ * already settled the continuation is a microtask, microtasks drain before the
556
+ * queued navigation task, and the hit gets out. While it is still PENDING — the
557
+ * first checkout of a fresh session, exactly the case that has never yet been
558
+ * seen in the property — the continuation is scheduled behind the navigation
559
+ * and never runs at all. Measured both ways: pending init loses the event,
560
+ * awaiting it delivers it, nothing else changed.
561
+ *
562
+ * ## Why a timeout rather than a bare await
563
+ *
564
+ * A bare `await` on `logEvent` hands the user's redirect to the analytics
565
+ * stack. When the analytics host is blocked — an ad blocker, a corporate proxy,
566
+ * a consent tool that never loads — Firebase's initialization promise can stay
567
+ * pending indefinitely, and the checkout would hang on a metric. So the wait is
568
+ * RACED against {@link NAVIGATION_FLUSH_TIMEOUT_MS}: a blocked analytics stack
569
+ * costs the redirect 300ms once and then it proceeds, which is the same outcome
570
+ * the caller had before this existed. Never rejects, for the same reason
571
+ * {@link trackEvent} never throws.
572
+ *
573
+ * On a surface with no registered transport — the tenant runtime and the plugin
574
+ * bundles, which go straight to `window.gtag` — delivery is synchronous, so
575
+ * this resolves immediately and costs the storefront checkout nothing at all.
576
+ */
577
+ export declare function trackEventBeforeNavigation<K extends AnalyticsEventName>(name: K, params: AnalyticsEventParams[K]): Promise<void>;
578
+ /**
579
+ * Build the ONE `begin_checkout` payload, for every surface that starts a
580
+ * checkout (AGL-1591).
581
+ *
582
+ * ## Why a constructor and not just the type
583
+ *
584
+ * Two surfaces fire this name: the console, when a plan checkout starts, and a
585
+ * tenant storefront, when a cart checks out. Until AGL-1591 the storefront
586
+ * fired it raw and carried `value`/`currency` only, so ONE event name arrived
587
+ * in two shapes — and a `begin_checkout` breakdown showed two populations that
588
+ * could not be compared, with the storefront half missing the `items` the GA4
589
+ * ecommerce funnel is built on. Routing both through {@link trackEvent} makes
590
+ * the compiler settle the KEYS.
591
+ *
592
+ * It does not settle the NUMBER, which is the other way two call sites of one
593
+ * event diverge, and the more dangerous one because nothing about it looks
594
+ * wrong: the console's annual plans are priced per-month-billed-yearly, so its
595
+ * `value` is twelve of them, and that only stayed right because a comment said
596
+ * so. Here `value` DERIVES from the items unless a caller states a different
597
+ * one — a cart states its subtotal, which is authoritative after discounts —
598
+ * so "what the customer is about to be charged" has one definition rather than
599
+ * one per surface.
600
+ *
601
+ * Server-safe: pure, no DOM, so the Measurement Protocol sender can compose
602
+ * the matching `purchase` items from the same shapes.
603
+ */
604
+ export declare function buildBeginCheckoutParams(input: {
605
+ items: AnalyticsItem[];
606
+ /**
607
+ * The amount actually being charged. Defaults to the sum of the items'
608
+ * `price * quantity`, which is right whenever nothing has adjusted it.
609
+ */
610
+ value?: number;
611
+ /** ISO 4217. Defaults to `USD`, the only currency either surface bills in. */
612
+ currency?: string;
613
+ /** `monthly` | `annual`. Subscriptions only — a storefront cart has none. */
614
+ billingInterval?: string;
615
+ }): AnalyticsEventParams['begin_checkout'];
616
+ /**
617
+ * Build `view_cart` — the shopper is looking at the cart's contents.
618
+ *
619
+ * `value` is the cart's subtotal as the SERVER priced it, which is what makes
620
+ * this comparable with the `begin_checkout` the same cart sends moments later:
621
+ * two steps of one funnel that disagreed about the size of the same cart would
622
+ * read as shoppers editing it between screens.
623
+ */
624
+ export declare function buildViewCartParams(input: {
625
+ items: AnalyticsItem[];
626
+ value?: number;
627
+ currency?: string;
628
+ }): AnalyticsEventParams['view_cart'];
629
+ /**
630
+ * Build `add_to_cart` — one product going in, not the cart's new total.
631
+ *
632
+ * `value` is what was JUST ADDED (`price * quantity`), which is GA4's
633
+ * definition and the only one that makes the metric additive: summing a
634
+ * running cart total over a session would count the first item once per
635
+ * subsequent add.
636
+ *
637
+ * Callers that cannot price the line — a quick-add with no resolved variant —
638
+ * pass items alone and the pair is omitted rather than reported as zero. A
639
+ * zero here would read as a free product in the merchant's report.
640
+ */
641
+ export declare function buildAddToCartParams(input: {
642
+ items: AnalyticsItem[];
643
+ value?: number;
644
+ currency?: string;
645
+ }): AnalyticsEventParams['add_to_cart'];
646
+ /**
647
+ * Decide `site_published`'s `first_publish` from the host's routing map as it
648
+ * stood BEFORE the route being published was registered (AGL-1588).
649
+ *
650
+ * ## What "first" means, and why it is defined once
651
+ *
652
+ * Three call sites report `site_published` — `publishScreenRoute`, the
653
+ * besigner's one-click publish, and the scheduled publish executor, the last
654
+ * of which is server-side and sends over the Measurement Protocol. A
655
+ * breakdown is only worth registering if all three mean the same thing by it,
656
+ * and "first" has several plausible readings. This is the one they share:
657
+ *
658
+ * **The host had no live route at all before this one.** Not "first for the
659
+ * org" — that needs a cross-host query the server path cannot make, and the
660
+ * scheduled sender's client id is derived from the HOST anyway, so an org is
661
+ * not a thing it can see. Not "first for this screen" either, which would be
662
+ * true of every second page a site adds and would make the dimension a
663
+ * synonym for the event.
664
+ *
665
+ * So the metric it separates is the GTM §6 activation one: `first_publish:
666
+ * true` counts sites that came alive, where the event alone counts publishes.
667
+ *
668
+ * ## The one dishonesty, and why it does not matter
669
+ *
670
+ * Unpublishing every route and publishing again reports `true` a second time.
671
+ * Detecting that needs publish history the routing map does not keep. It is
672
+ * harmless for the metric it exists for, because activation is read as the
673
+ * share of USERS who ever sent `first_publish: true`, and a user counted twice
674
+ * is still one user.
675
+ *
676
+ * Callers pass what they already hold — the live-subscribed map in the
677
+ * console, a read snapshot on the server — and never a map read back AFTER
678
+ * the write, which is never empty.
679
+ */
680
+ export declare function isFirstPublishedRoute(routing: Record<string, unknown> | null | undefined): boolean;
681
+ /** The taxonomy, enumerable. */
682
+ export declare const ANALYTICS_EVENT_NAMES: AnalyticsEventName[];
683
+ /**
684
+ * Every event name Aglyn itself sends, from any surface — the union plus the
685
+ * server-only names above. Exported so a caller can ask the question the two
686
+ * separate lists no longer answer alone.
687
+ */
688
+ export declare function isReservedAnalyticsEventName(name: string): boolean;
689
+ /**
690
+ * The outcome of putting an authored name through GA4's rules, so the
691
+ * interaction builder can say WHY it refused a name and the runtime can drop
692
+ * the event for the same reason.
693
+ */
694
+ export interface ResolvedAuthoredEventName {
695
+ /** The name to send, or null when the event must not be sent at all. */
696
+ name: string | null;
697
+ /**
698
+ * `reserved` — collides with the taxonomy or with GA4's own names.
699
+ * `unusable` — nothing survives normalization (empty, or no leading letter).
700
+ */
701
+ reason?: 'reserved' | 'unusable';
702
+ }
703
+ /**
704
+ * Put an authored event name through GA4's naming rules and our own.
705
+ *
706
+ * Normalization is forgiving on purpose: `"CTA Click!"` becomes `cta_click`
707
+ * and still reports, where GA would have dropped it. Names already sitting in
708
+ * published sites were never validated, so refusing them outright would delete
709
+ * working metrics from a paying customer's property to fix a formatting nit.
710
+ *
711
+ * Collisions, in contrast, are refused rather than rewritten. On a tenant site
712
+ * the authored events and OUR events (`generate_lead` from the form element,
713
+ * `select_content`/`click` from the link listener) land in the same property,
714
+ * so an authored `purchase` does not merely add noise — it mixes hand-authored
715
+ * hits into a real revenue number. Refusing is also what keeps authored events
716
+ * separable in reports: an event that is not one of {@link ANALYTICS_EVENT_NAMES}
717
+ * is, by construction, authored.
718
+ *
719
+ * Deliberately NOT prefixed (`site_*`) to achieve that separation. A prefix
720
+ * would rename events already flowing into customers' properties and break
721
+ * every report and key-event conversion configured on the old name — a
722
+ * migration cost paid by people who did nothing wrong.
723
+ */
724
+ export declare function resolveAuthoredEventName(raw: string | undefined | null): ResolvedAuthoredEventName;
725
+ /**
726
+ * Fire an event whose name and params were written by a SITE AUTHOR, not by a
727
+ * developer — today only the `trackGaEvent` action step (AGL-1587).
728
+ *
729
+ * Same consent gate, same sanitizer, same drop-never-queue posture as
730
+ * {@link trackEvent}; the only difference is that the name is checked at run
731
+ * time instead of by the compiler, because there is no compiler between the
732
+ * interaction builder and here.
733
+ *
734
+ * A refused event is dropped and warned about in the console rather than
735
+ * surfaced in the page. Nothing here can reach the author — the code is
736
+ * running for a VISITOR of their site, and turning the author's configuration
737
+ * mistake into something a visitor sees would be a worse bug than the missing
738
+ * metric. The author-facing half lives in `validateHostAction`, which refuses
739
+ * to save a name this function would refuse to send, so a silent drop should
740
+ * only ever happen to a step authored before AGL-1587.
741
+ */
742
+ export declare function trackAuthoredEvent(name: string | undefined | null, params?: Record<string, unknown> | null): void;
743
+ /** Test seam — forgets which authored names have already been warned about. */
744
+ export declare function resetAuthoredEventWarnings(): void;