@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,86 @@
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
+ */ let mapper;
17
+ export function registerPluginInstallPresetMapper(fn) {
18
+ mapper = fn;
19
+ }
20
+ let presetsMapper;
21
+ export function registerPluginInstallPresetsMapper(fn) {
22
+ presetsMapper = fn;
23
+ }
24
+ /**
25
+ * Every drawer preset an install contributes. Falls back to the singular
26
+ * mapper so a surface that registered only that keeps working unchanged.
27
+ */ // eslint-disable-next-line @typescript-eslint/no-explicit-any
28
+ export function pluginInstallToPresets(install) {
29
+ if (presetsMapper) return presetsMapper(install);
30
+ const single = pluginInstallToPreset(install);
31
+ return single ? [
32
+ single
33
+ ] : [];
34
+ }
35
+ /** Maps an install doc to a drawer preset; null until a mapper registers. */ // eslint-disable-next-line @typescript-eslint/no-explicit-any
36
+ export function pluginInstallToPreset(install) {
37
+ return mapper ? mapper(install) : null;
38
+ }
39
+ let knownInstalls;
40
+ /**
41
+ * Bumped on every publish so consumers can depend on "the set changed"
42
+ * (AGL-1030). The install set arrives from a live Firestore subscription and
43
+ * can land AFTER the element panel has built its fields — installing a plugin
44
+ * in another tab, or simply a slow first read — and without a change signal
45
+ * the picker would sit on "No plugins installed for this site" until remount.
46
+ */ let knownInstallsVersion = 0;
47
+ const knownInstallListeners = new Set();
48
+ /** Called by the console when the install set changes; undefined to forget. */ export function setKnownPluginInstalls(installs) {
49
+ knownInstalls = installs ? new Map(installs.map((install)=>[
50
+ install.listingId,
51
+ install
52
+ ])) : undefined;
53
+ knownInstallsVersion += 1;
54
+ for (const listener of knownInstallListeners)listener();
55
+ }
56
+ /** `useSyncExternalStore` pair for the element panel's plugin picker. */ export function subscribeKnownPluginInstalls(listener) {
57
+ knownInstallListeners.add(listener);
58
+ return ()=>{
59
+ knownInstallListeners.delete(listener);
60
+ };
61
+ }
62
+ export function getKnownPluginInstallsVersion() {
63
+ return knownInstallsVersion;
64
+ }
65
+ /** True once a surface has published its install set — see the note above. */ export function hasKnownPluginInstalls() {
66
+ return knownInstalls !== undefined;
67
+ }
68
+ export function getKnownPluginInstall(listingId) {
69
+ return listingId ? knownInstalls == null ? void 0 : knownInstalls.get(listingId) : undefined;
70
+ }
71
+ /**
72
+ * The installed set, for the element panel's plugin picker (AGL-1030).
73
+ *
74
+ * Sorted by name so the options do not reshuffle when an install document
75
+ * happens to come back in a different order.
76
+ */ export function getKnownPluginInstalls() {
77
+ var _ref;
78
+ return [
79
+ ...(_ref = knownInstalls == null ? void 0 : knownInstalls.values()) != null ? _ref : []
80
+ ].sort((a, b)=>{
81
+ var _a_displayName, _b_displayName;
82
+ return ((_a_displayName = a.displayName) != null ? _a_displayName : a.listingId).localeCompare((_b_displayName = b.displayName) != null ? _b_displayName : b.listingId);
83
+ });
84
+ }
85
+
86
+ //# sourceMappingURL=install-presets.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../libs/aglyn/src/lib/plugin-manager/install-presets.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2026 Aglyn LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport type { PluginCapabilities } from '../app-utils/plugin-manifest'\nimport type { PresetSchema } from '../types/nodes'\n\n/**\n * Install→preset mapping seam (AGL-419): the besigner drawer shows a\n * preset per installed marketplace plugin, but the preset shape (component\n * id, drawer category, icon) belongs to the mui plugin — so the mapper is\n * REGISTERED by plugins-mui and the console consumes it through core,\n * never importing the plugin.\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type PluginInstallPresetMapper = (install: any) => PresetSchema | null\n\nlet mapper: PluginInstallPresetMapper | undefined\n\nexport function registerPluginInstallPresetMapper(\n fn: PluginInstallPresetMapper,\n): void {\n mapper = fn\n}\n\n/**\n * Many presets per install (AGL-1031): the generic Plugin element, plus one\n * per element the pinned version DECLARES.\n *\n * A separate seam rather than a widened return type on the singular one — the\n * singular mapper is the AGL-419 contract and several call sites still want\n * exactly one preset. Registering the plural is what turns declared elements\n * into palette entries; without it a plugin's elements simply do not appear,\n * which is the correct behaviour for a host that predates the declaration.\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type PluginInstallPresetsMapper = (install: any) => PresetSchema[]\n\nlet presetsMapper: PluginInstallPresetsMapper | undefined\n\nexport function registerPluginInstallPresetsMapper(\n fn: PluginInstallPresetsMapper,\n): void {\n presetsMapper = fn\n}\n\n/**\n * Every drawer preset an install contributes. Falls back to the singular\n * mapper so a surface that registered only that keeps working unchanged.\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function pluginInstallToPresets(install: any): PresetSchema[] {\n if (presetsMapper) return presetsMapper(install)\n const single = pluginInstallToPreset(install)\n return single ? [single] : []\n}\n\n/** Maps an install doc to a drawer preset; null until a mapper registers. */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function pluginInstallToPreset(install: any): PresetSchema | null {\n return mapper ? mapper(install) : null\n}\n\n/**\n * What the EDITOR knows about installed plugins (AGL-1029).\n *\n * The Plugin element used to read \"not installed on this site\" off the absence\n * of `version`/`sha256` — fields the tenant compose pass injects and the canvas\n * never has. So it asserted an install fact it had never checked, and said it\n * about every plugin, installed or not.\n *\n * The surface that DOES know is the console, which already reads the installs\n * to build drawer presets. It publishes them here, through the same seam the\n * mapper uses, so the element can name the plugin and only claim \"not\n * installed\" when it has a list to be absent from.\n *\n * Empty is meaningfully different from \"not installed\": on the tenant nothing\n * populates this, so the element must fall back to a neutral statement rather\n * than reading emptiness as absence.\n */\nexport interface KnownPluginInstall {\n listingId: string\n displayName?: string\n /** 'org' when the pin covers every site in the workspace. */\n scope?: 'org' | 'host'\n /**\n * The pinned manifest's capabilities (AGL-1049).\n *\n * Carried so the attributes panel can render a plugin's declared settings as\n * real fields instead of a JSON textarea. The install document already holds\n * the whole manifest — only the part the editor needs is published here, so\n * the canvas cannot come to depend on anything the bridge does not honour.\n */\n capabilities?: PluginCapabilities\n}\n\nlet knownInstalls: Map<string, KnownPluginInstall> | undefined\n/**\n * Bumped on every publish so consumers can depend on \"the set changed\"\n * (AGL-1030). The install set arrives from a live Firestore subscription and\n * can land AFTER the element panel has built its fields — installing a plugin\n * in another tab, or simply a slow first read — and without a change signal\n * the picker would sit on \"No plugins installed for this site\" until remount.\n */\nlet knownInstallsVersion = 0\nconst knownInstallListeners = new Set<() => void>()\n\n/** Called by the console when the install set changes; undefined to forget. */\nexport function setKnownPluginInstalls(\n installs: readonly KnownPluginInstall[] | undefined,\n): void {\n knownInstalls = installs\n ? new Map(installs.map((install) => [install.listingId, install]))\n : undefined\n knownInstallsVersion += 1\n for (const listener of knownInstallListeners) listener()\n}\n\n/** `useSyncExternalStore` pair for the element panel's plugin picker. */\nexport function subscribeKnownPluginInstalls(listener: () => void): () => void {\n knownInstallListeners.add(listener)\n return () => {\n knownInstallListeners.delete(listener)\n }\n}\n\nexport function getKnownPluginInstallsVersion(): number {\n return knownInstallsVersion\n}\n\n/** True once a surface has published its install set — see the note above. */\nexport function hasKnownPluginInstalls(): boolean {\n return knownInstalls !== undefined\n}\n\nexport function getKnownPluginInstall(\n listingId: string | undefined,\n): KnownPluginInstall | undefined {\n return listingId ? knownInstalls?.get(listingId) : undefined\n}\n\n/**\n * The installed set, for the element panel's plugin picker (AGL-1030).\n *\n * Sorted by name so the options do not reshuffle when an install document\n * happens to come back in a different order.\n */\nexport function getKnownPluginInstalls(): readonly KnownPluginInstall[] {\n return [...(knownInstalls?.values() ?? [])].sort((a, b) =>\n (a.displayName ?? a.listingId).localeCompare(b.displayName ?? b.listingId),\n )\n}\n"],"names":["mapper","registerPluginInstallPresetMapper","fn","presetsMapper","registerPluginInstallPresetsMapper","pluginInstallToPresets","install","single","pluginInstallToPreset","knownInstalls","knownInstallsVersion","knownInstallListeners","Set","setKnownPluginInstalls","installs","Map","map","listingId","undefined","listener","subscribeKnownPluginInstalls","add","delete","getKnownPluginInstallsVersion","hasKnownPluginInstalls","getKnownPluginInstall","get","getKnownPluginInstalls","values","sort","a","b","displayName","localeCompare"],"mappings":"AAAA;;;;;;;;;;;;;;;CAeC,GAeD,IAAIA;AAEJ,OAAO,SAASC,kCACdC,EAA6B;IAE7BF,SAASE;AACX;AAeA,IAAIC;AAEJ,OAAO,SAASC,mCACdF,EAA8B;IAE9BC,gBAAgBD;AAClB;AAEA;;;CAGC,GACD,8DAA8D;AAC9D,OAAO,SAASG,uBAAuBC,OAAY;IACjD,IAAIH,eAAe,OAAOA,cAAcG;IACxC,MAAMC,SAASC,sBAAsBF;IACrC,OAAOC,SAAS;QAACA;KAAO,GAAG,EAAE;AAC/B;AAEA,2EAA2E,GAC3E,8DAA8D;AAC9D,OAAO,SAASC,sBAAsBF,OAAY;IAChD,OAAON,SAASA,OAAOM,WAAW;AACpC;AAmCA,IAAIG;AACJ;;;;;;CAMC,GACD,IAAIC,uBAAuB;AAC3B,MAAMC,wBAAwB,IAAIC;AAElC,6EAA6E,GAC7E,OAAO,SAASC,uBACdC,QAAmD;IAEnDL,gBAAgBK,WACZ,IAAIC,IAAID,SAASE,GAAG,CAAC,CAACV,UAAY;YAACA,QAAQW,SAAS;YAAEX;SAAQ,KAC9DY;IACJR,wBAAwB;IACxB,KAAK,MAAMS,YAAYR,sBAAuBQ;AAChD;AAEA,uEAAuE,GACvE,OAAO,SAASC,6BAA6BD,QAAoB;IAC/DR,sBAAsBU,GAAG,CAACF;IAC1B,OAAO;QACLR,sBAAsBW,MAAM,CAACH;IAC/B;AACF;AAEA,OAAO,SAASI;IACd,OAAOb;AACT;AAEA,4EAA4E,GAC5E,OAAO,SAASc;IACd,OAAOf,kBAAkBS;AAC3B;AAEA,OAAO,SAASO,sBACdR,SAA6B;IAE7B,OAAOA,YAAYR,iCAAAA,cAAeiB,GAAG,CAACT,aAAaC;AACrD;AAEA;;;;;CAKC,GACD,OAAO,SAASS;;IACd,OAAO;mBAAKlB,iCAAAA,cAAemB,MAAM,qBAAM,EAAE;KAAE,CAACC,IAAI,CAAC,CAACC,GAAGC;YAClDD,gBAA4CC;eAA7C,EAACD,iBAAAA,EAAEE,WAAW,YAAbF,iBAAiBA,EAAEb,SAAS,EAAEgB,aAAa,EAACF,iBAAAA,EAAEC,WAAW,YAAbD,iBAAiBA,EAAEd,SAAS;;AAE7E"}
@@ -0,0 +1,124 @@
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
+ * Media delivery through a provider outside this platform (AGL-2824).
19
+ *
20
+ * The media CDN serves every byte through a function, which is the right
21
+ * shape for images the edge can hold and the wrong one for video: a video
22
+ * is served `private` (AGL-1515), so every play pulls the whole file through
23
+ * the function and its transfer is billed twice over. A delivery provider is
24
+ * an object store with its own edge in front. The platform keeps every access
25
+ * decision and hands a caller a short-lived signed URL on the provider's
26
+ * host; the provider checks that URL and serves the bytes.
27
+ *
28
+ * Core defines the contract and never names a provider. A plugin registers
29
+ * the one implementation from its `serverDeclarations` entry, so the
30
+ * provider is registered in both apps before the first request, and core
31
+ * asks for it by capability:
32
+ *
33
+ * - `store` — the provider can hold copies: `putObject`, `deleteObject`,
34
+ * `deleteObjectsWithPrefix`. Only a process that writes copies needs the
35
+ * credentials behind it.
36
+ * - `deliver` — the provider can mint a delivery URL: `deliveryUrl`. Every
37
+ * process that answers a media request needs it.
38
+ *
39
+ * A provider that is registered and not configured for a capability answers
40
+ * as absent for it, so a deployment with no provider settings behaves exactly
41
+ * as one without the plugin.
42
+ *
43
+ * ## What the platform keeps
44
+ *
45
+ * The media document stays the record of an asset, and the platform's own
46
+ * bucket keeps the bytes; a provider holds COPIES, keyed by the content hash
47
+ * they were made from (`media-delivery.ts` in `tenant-data-admin` owns the
48
+ * key grammar and the copy record). Nothing here authorizes a caller: every
49
+ * access decision is made before core asks the provider for a URL.
50
+ */
51
+ /** What a provider must be configured for before core relies on it. */
52
+ export type MediaDeliveryCapability = 'store' | 'deliver';
53
+ /** The bytes of one copy. A stream is read once, start to end. */
54
+ export type MediaDeliveryBody = ReadableStream<Uint8Array> | Uint8Array;
55
+ export interface MediaDeliveryPutRequest {
56
+ /** The object key, from core's key grammar. */
57
+ key: string;
58
+ body: MediaDeliveryBody;
59
+ /** Exact byte length of `body`; the provider sends it as-is. */
60
+ contentLength: number;
61
+ /** The type the provider should serve the object as. */
62
+ contentType: string;
63
+ }
64
+ /**
65
+ * What a delivery URL carries about the request it was minted for, so a
66
+ * provider can attribute delivered bytes to an organization later. None of it
67
+ * authorizes anything: the URL is bound to its key, and the platform decided
68
+ * who may have it before minting.
69
+ */
70
+ export interface MediaDeliveryClaims {
71
+ /** The CDN scope segment the asset was requested under. */
72
+ scope: string;
73
+ mediaId: string;
74
+ /** The owning organization, or null when it could not be resolved. */
75
+ orgId: string | null;
76
+ /** The site the delivery is for, or null for an org-wide request. */
77
+ hostId: string | null;
78
+ }
79
+ export interface MediaDeliveryUrlRequest {
80
+ key: string;
81
+ /** When the URL stops working. The provider may refuse a longer lifetime. */
82
+ expiresAtMs: number;
83
+ claims: MediaDeliveryClaims;
84
+ }
85
+ export interface MediaDeliveryProvider {
86
+ /** Whether this deployment has the settings `capability` needs. */
87
+ isConfigured(capability: MediaDeliveryCapability): boolean;
88
+ /** Stores one object under `key`, replacing any object already there. */
89
+ putObject(request: MediaDeliveryPutRequest): Promise<void>;
90
+ /** Removes `key`. Resolves when the key is absent, whether or not it existed. */
91
+ deleteObject(key: string): Promise<void>;
92
+ /**
93
+ * Removes every object whose key starts with `prefix`, and answers how
94
+ * many it removed. An erasure calls it with a scope's whole prefix.
95
+ */
96
+ deleteObjectsWithPrefix(prefix: string): Promise<number>;
97
+ /** A URL on the provider's host that serves `key` until `expiresAtMs`. */
98
+ deliveryUrl(request: MediaDeliveryUrlRequest): Promise<string>;
99
+ }
100
+ /**
101
+ * The slot one plugin holds. A second plugin registering a provider is a
102
+ * conflict, not a list: two providers would each hold half the copies, and
103
+ * a URL minted by one would name an object the other stores.
104
+ */
105
+ export declare const MEDIA_DELIVERY_PROVIDER: import("./plugin-services").PluginServiceContract<MediaDeliveryProvider>;
106
+ /**
107
+ * Registers the platform's delivery provider. The owner is the loader's
108
+ * marker when a register fn is running, else `options.pluginId`. The same
109
+ * plugin registering again replaces its provider; a different plugin throws
110
+ * naming both.
111
+ */
112
+ export declare function registerMediaDeliveryProvider(provider: MediaDeliveryProvider, options?: {
113
+ pluginId?: string;
114
+ }): void;
115
+ /**
116
+ * The registered provider when it is configured for `capability`, else
117
+ * `null`. Synchronous and free of I/O, so a hot path can ask it first and pay
118
+ * nothing when no provider is set up.
119
+ *
120
+ * A provider whose configuration check throws answers as unconfigured: a
121
+ * delivery provider is an optimization over serving the bytes directly, and
122
+ * its failure must leave that path standing.
123
+ */
124
+ export declare function mediaDeliveryProvider(capability: MediaDeliveryCapability): MediaDeliveryProvider | null;
@@ -0,0 +1,53 @@
1
+ import { _ as _extends } from "@swc/helpers/_/_extends";
2
+ /**
3
+ * @license
4
+ * Copyright 2026 Aglyn LLC
5
+ *
6
+ * Licensed under the Apache License, Version 2.0 (the "License");
7
+ * you may not use this file except in compliance with the License.
8
+ * You may obtain a copy of the License at
9
+ *
10
+ * http://www.apache.org/licenses/LICENSE-2.0
11
+ *
12
+ * Unless required by applicable law or agreed to in writing, software
13
+ * distributed under the License is distributed on an "AS IS" BASIS,
14
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ * See the License for the specific language governing permissions and
16
+ * limitations under the License.
17
+ */ import { definePluginServiceContract, registerPluginService, resolvePluginService } from "./plugin-services.js";
18
+ /**
19
+ * The slot one plugin holds. A second plugin registering a provider is a
20
+ * conflict, not a list: two providers would each hold half the copies, and
21
+ * a URL minted by one would name an object the other stores.
22
+ */ export const MEDIA_DELIVERY_PROVIDER = definePluginServiceContract('core.media-delivery', {
23
+ multiple: false
24
+ });
25
+ /**
26
+ * Registers the platform's delivery provider. The owner is the loader's
27
+ * marker when a register fn is running, else `options.pluginId`. The same
28
+ * plugin registering again replaces its provider; a different plugin throws
29
+ * naming both.
30
+ */ export function registerMediaDeliveryProvider(provider, options) {
31
+ registerPluginService(MEDIA_DELIVERY_PROVIDER, provider, _extends({}, (options == null ? void 0 : options.pluginId) ? {
32
+ pluginId: options.pluginId
33
+ } : {}));
34
+ }
35
+ /**
36
+ * The registered provider when it is configured for `capability`, else
37
+ * `null`. Synchronous and free of I/O, so a hot path can ask it first and pay
38
+ * nothing when no provider is set up.
39
+ *
40
+ * A provider whose configuration check throws answers as unconfigured: a
41
+ * delivery provider is an optimization over serving the bytes directly, and
42
+ * its failure must leave that path standing.
43
+ */ export function mediaDeliveryProvider(capability) {
44
+ const provider = resolvePluginService(MEDIA_DELIVERY_PROVIDER);
45
+ if (!provider) return null;
46
+ try {
47
+ return provider.isConfigured(capability) ? provider : null;
48
+ } catch (unused) {
49
+ return null;
50
+ }
51
+ }
52
+
53
+ //# sourceMappingURL=media-delivery-provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../libs/aglyn/src/lib/plugin-manager/media-delivery-provider.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2026 Aglyn LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {\n definePluginServiceContract,\n registerPluginService,\n resolvePluginService,\n} from './plugin-services'\n\n/**\n * Media delivery through a provider outside this platform (AGL-2824).\n *\n * The media CDN serves every byte through a function, which is the right\n * shape for images the edge can hold and the wrong one for video: a video\n * is served `private` (AGL-1515), so every play pulls the whole file through\n * the function and its transfer is billed twice over. A delivery provider is\n * an object store with its own edge in front. The platform keeps every access\n * decision and hands a caller a short-lived signed URL on the provider's\n * host; the provider checks that URL and serves the bytes.\n *\n * Core defines the contract and never names a provider. A plugin registers\n * the one implementation from its `serverDeclarations` entry, so the\n * provider is registered in both apps before the first request, and core\n * asks for it by capability:\n *\n * - `store` — the provider can hold copies: `putObject`, `deleteObject`,\n * `deleteObjectsWithPrefix`. Only a process that writes copies needs the\n * credentials behind it.\n * - `deliver` — the provider can mint a delivery URL: `deliveryUrl`. Every\n * process that answers a media request needs it.\n *\n * A provider that is registered and not configured for a capability answers\n * as absent for it, so a deployment with no provider settings behaves exactly\n * as one without the plugin.\n *\n * ## What the platform keeps\n *\n * The media document stays the record of an asset, and the platform's own\n * bucket keeps the bytes; a provider holds COPIES, keyed by the content hash\n * they were made from (`media-delivery.ts` in `tenant-data-admin` owns the\n * key grammar and the copy record). Nothing here authorizes a caller: every\n * access decision is made before core asks the provider for a URL.\n */\n\n/** What a provider must be configured for before core relies on it. */\nexport type MediaDeliveryCapability = 'store' | 'deliver'\n\n/** The bytes of one copy. A stream is read once, start to end. */\nexport type MediaDeliveryBody = ReadableStream<Uint8Array> | Uint8Array\n\nexport interface MediaDeliveryPutRequest {\n /** The object key, from core's key grammar. */\n key: string\n body: MediaDeliveryBody\n /** Exact byte length of `body`; the provider sends it as-is. */\n contentLength: number\n /** The type the provider should serve the object as. */\n contentType: string\n}\n\n/**\n * What a delivery URL carries about the request it was minted for, so a\n * provider can attribute delivered bytes to an organization later. None of it\n * authorizes anything: the URL is bound to its key, and the platform decided\n * who may have it before minting.\n */\nexport interface MediaDeliveryClaims {\n /** The CDN scope segment the asset was requested under. */\n scope: string\n mediaId: string\n /** The owning organization, or null when it could not be resolved. */\n orgId: string | null\n /** The site the delivery is for, or null for an org-wide request. */\n hostId: string | null\n}\n\nexport interface MediaDeliveryUrlRequest {\n key: string\n /** When the URL stops working. The provider may refuse a longer lifetime. */\n expiresAtMs: number\n claims: MediaDeliveryClaims\n}\n\nexport interface MediaDeliveryProvider {\n /** Whether this deployment has the settings `capability` needs. */\n isConfigured(capability: MediaDeliveryCapability): boolean\n /** Stores one object under `key`, replacing any object already there. */\n putObject(request: MediaDeliveryPutRequest): Promise<void>\n /** Removes `key`. Resolves when the key is absent, whether or not it existed. */\n deleteObject(key: string): Promise<void>\n /**\n * Removes every object whose key starts with `prefix`, and answers how\n * many it removed. An erasure calls it with a scope's whole prefix.\n */\n deleteObjectsWithPrefix(prefix: string): Promise<number>\n /** A URL on the provider's host that serves `key` until `expiresAtMs`. */\n deliveryUrl(request: MediaDeliveryUrlRequest): Promise<string>\n}\n\n/**\n * The slot one plugin holds. A second plugin registering a provider is a\n * conflict, not a list: two providers would each hold half the copies, and\n * a URL minted by one would name an object the other stores.\n */\nexport const MEDIA_DELIVERY_PROVIDER =\n definePluginServiceContract<MediaDeliveryProvider>('core.media-delivery', {\n multiple: false,\n })\n\n/**\n * Registers the platform's delivery provider. The owner is the loader's\n * marker when a register fn is running, else `options.pluginId`. The same\n * plugin registering again replaces its provider; a different plugin throws\n * naming both.\n */\nexport function registerMediaDeliveryProvider(\n provider: MediaDeliveryProvider,\n options?: { pluginId?: string },\n): void {\n registerPluginService(MEDIA_DELIVERY_PROVIDER, provider, {\n ...(options?.pluginId ? { pluginId: options.pluginId } : {}),\n })\n}\n\n/**\n * The registered provider when it is configured for `capability`, else\n * `null`. Synchronous and free of I/O, so a hot path can ask it first and pay\n * nothing when no provider is set up.\n *\n * A provider whose configuration check throws answers as unconfigured: a\n * delivery provider is an optimization over serving the bytes directly, and\n * its failure must leave that path standing.\n */\nexport function mediaDeliveryProvider(\n capability: MediaDeliveryCapability,\n): MediaDeliveryProvider | null {\n const provider = resolvePluginService(MEDIA_DELIVERY_PROVIDER)\n if (!provider) return null\n try {\n return provider.isConfigured(capability) ? provider : null\n } catch {\n return null\n }\n}\n"],"names":["definePluginServiceContract","registerPluginService","resolvePluginService","MEDIA_DELIVERY_PROVIDER","multiple","registerMediaDeliveryProvider","provider","options","pluginId","mediaDeliveryProvider","capability","isConfigured"],"mappings":";AAAA;;;;;;;;;;;;;;;CAeC,GAED,SACEA,2BAA2B,EAC3BC,qBAAqB,EACrBC,oBAAoB,QACf,uBAAmB;AA4F1B;;;;CAIC,GACD,OAAO,MAAMC,0BACXH,4BAAmD,uBAAuB;IACxEI,UAAU;AACZ,GAAE;AAEJ;;;;;CAKC,GACD,OAAO,SAASC,8BACdC,QAA+B,EAC/BC,OAA+B;IAE/BN,sBAAsBE,yBAAyBG,UAAU,aACnDC,CAAAA,2BAAAA,QAASC,QAAQ,IAAG;QAAEA,UAAUD,QAAQC,QAAQ;IAAC,IAAI,CAAC;AAE9D;AAEA;;;;;;;;CAQC,GACD,OAAO,SAASC,sBACdC,UAAmC;IAEnC,MAAMJ,WAAWJ,qBAAqBC;IACtC,IAAI,CAACG,UAAU,OAAO;IACtB,IAAI;QACF,OAAOA,SAASK,YAAY,CAACD,cAAcJ,WAAW;IACxD,EAAE,eAAM;QACN,OAAO;IACT;AACF"}
@@ -0,0 +1,142 @@
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 order-fulfilment capability (AGL-2461) — how a HOST APP records a
19
+ * shipment without importing the plugin that owns order semantics.
20
+ *
21
+ * ## Why this registry exists at all
22
+ *
23
+ * `eslint.config.mjs`'s `scope:app` → `notDependOnLibsWithTags:['aglyn:addons']`
24
+ * rule means `apps/console` may not import `@aglyn/plugins-commerce`, so the
25
+ * customer REST API could not reach `ORDER_TRANSITIONS`, `canTransitionOrder`,
26
+ * `liftLegacyOrder` or `appendOrderEvent` — and therefore could not record a
27
+ * shipment at all. The rule is not a preference: the app must stay runnable
28
+ * with any plugin absent, which is the whole plugin platform (AGL-417/419).
29
+ *
30
+ * The tempting escape is a second copy of the transition table inside `/v1`.
31
+ * That is the wrong one, and much worse than the projection drift `orderView`
32
+ * already tolerates: two transition tables drifting means **the API writes an
33
+ * order status the console forbids** — `paid → delivered` skipping fulfilment,
34
+ * or a write onto a `refunded` order — which is precisely the class of bug
35
+ * AGL-1818/AGL-1819 were opened to close.
36
+ *
37
+ * So the edge runs the way every other app↔plugin edge on this platform runs:
38
+ * the plugin registers an implementation into a core registry from its
39
+ * `/server` entry, and the app looks it up. Same shape as
40
+ * `registerBillingWebhookHandler`, `registerSitePageResolver` and
41
+ * `registerPluginJob`. Nothing is imported statically in either direction, the
42
+ * app compiles and boots with commerce absent, and there is exactly ONE
43
+ * implementation of the transition rule — the plugin's.
44
+ *
45
+ * ## THE REGISTRY CARRIES NO AUTHORIZATION. READ THIS BEFORE CALLING.
46
+ *
47
+ * `recordShipment` is a PRE-AUTHORIZED domain operation. It answers "may this
48
+ * order move to this status" (the transition rule, re-asked inside the write)
49
+ * and nothing whatsoever about "may this caller touch this order". It does not
50
+ * know who is asking — deliberately, because its two callers authenticate
51
+ * completely differently: the console's `commerce/fulfill-order` route
52
+ * verifies a Firebase ID token and reads `memberRoles[uid]`, while a `/v1`
53
+ * API key is an ORG credential with no uid at all.
54
+ *
55
+ * Every caller MUST therefore have already established, in its own terms:
56
+ *
57
+ * 1. **who the caller is** (session, or key), and
58
+ * 2. **that the caller's org owns `hostId`** — the org-scoping check, without
59
+ * which this becomes a cross-tenant write primitive addressable by any
60
+ * authenticated caller who can guess a host id, and
61
+ * 3. **that the plugin owning this service is switched on for that site**
62
+ * (`isHostPluginEnabled`) — the registry is process-global and populated by
63
+ * `ensureAll`, so a registered service says nothing about one org's
64
+ * configuration.
65
+ *
66
+ * A single implementation is held, not a list: this is a capability with an
67
+ * owner, not a fan-out hook. Two plugins claiming order fulfilment is a
68
+ * misconfiguration, and last-registration-wins would resolve it silently, so
69
+ * {@link registerOrderFulfilmentService} refuses the second registration
70
+ * loudly instead.
71
+ */
72
+ /**
73
+ * The two fulfilment-side transitions, and ONLY those.
74
+ *
75
+ * `cancelled` releases stock under its own transaction and `refunded` moves
76
+ * money under another, so neither belongs to a capability whose contract is
77
+ * "a forward status flip plus a timeline entry, no stock moved, no money
78
+ * moved". Widening this union is how a caller gets a door around the
79
+ * specifics those routes exist to enforce — the type is the door being shut.
80
+ */
81
+ export type OrderFulfilmentTarget = 'fulfilled' | 'delivered';
82
+ export interface RecordShipmentRequest {
83
+ /** Site that owns the order. The CALLER has already proven ownership. */
84
+ hostId: string;
85
+ orderId: string;
86
+ to: OrderFulfilmentTarget;
87
+ /** Free text, e.g. `'UPS'`. Implementations bound the length. */
88
+ carrier?: string;
89
+ trackingNumber?: string;
90
+ }
91
+ /**
92
+ * What happened, as a domain fact rather than an HTTP status — each caller
93
+ * maps it into its own error vocabulary (the console route into its JSON
94
+ * shape, `/v1` into the published error envelope), because those two
95
+ * vocabularies are contracts with different audiences and neither may leak
96
+ * into the other.
97
+ *
98
+ * `already` is a SUCCESS and is distinct from `recorded` on purpose: a retried
99
+ * request finds the order in the target status and returns without writing, so
100
+ * a lost response can never append a second copy of the same shipment. A
101
+ * caller that folded the two together would still be correct about the state
102
+ * and would lose the only signal that says "this was your retry".
103
+ */
104
+ export type RecordShipmentOutcome = {
105
+ outcome: 'recorded';
106
+ } | {
107
+ outcome: 'already';
108
+ } | {
109
+ outcome: 'no_such_order';
110
+ }
111
+ /** The transition rule refused. `from` is the status that refused it. */
112
+ | {
113
+ outcome: 'blocked';
114
+ from: string;
115
+ };
116
+ export interface OrderFulfilmentService {
117
+ /**
118
+ * The plugin that owns this capability. Callers gate on THIS — never on a
119
+ * hard-coded `'commerce'` — which is what keeps the app free of any name
120
+ * from the addon layer.
121
+ */
122
+ pluginId: string;
123
+ recordShipment(request: RecordShipmentRequest): Promise<RecordShipmentOutcome>;
124
+ }
125
+ /**
126
+ * Registers the platform's order-fulfilment implementation, from a plugin's
127
+ * `/server` entry. Idempotent for the SAME plugin (the loader guarantees one
128
+ * activation per plugin+surface, but a re-registration must not be an error in
129
+ * a process that loads a surface twice); a DIFFERENT plugin claiming the
130
+ * capability throws, because silently overwriting it would hand order writes
131
+ * to whichever module happened to load last.
132
+ */
133
+ export declare function registerOrderFulfilmentService(next: OrderFulfilmentService): void;
134
+ /**
135
+ * The registered service, or `null` when no loaded plugin provides one — a
136
+ * deployment with commerce switched off, or a self-host build without it.
137
+ * `null` is an ordinary answer, never an error: callers turn it into "this
138
+ * endpoint does not exist here", which is the truth.
139
+ */
140
+ export declare function getOrderFulfilmentService(): OrderFulfilmentService | null;
141
+ /** Test seam: forget the registration. */
142
+ export declare function resetOrderFulfilmentServiceForTests(): void;
@@ -0,0 +1,104 @@
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
+ * The order-fulfilment capability (AGL-2461) — how a HOST APP records a
18
+ * shipment without importing the plugin that owns order semantics.
19
+ *
20
+ * ## Why this registry exists at all
21
+ *
22
+ * `eslint.config.mjs`'s `scope:app` → `notDependOnLibsWithTags:['aglyn:addons']`
23
+ * rule means `apps/console` may not import `@aglyn/plugins-commerce`, so the
24
+ * customer REST API could not reach `ORDER_TRANSITIONS`, `canTransitionOrder`,
25
+ * `liftLegacyOrder` or `appendOrderEvent` — and therefore could not record a
26
+ * shipment at all. The rule is not a preference: the app must stay runnable
27
+ * with any plugin absent, which is the whole plugin platform (AGL-417/419).
28
+ *
29
+ * The tempting escape is a second copy of the transition table inside `/v1`.
30
+ * That is the wrong one, and much worse than the projection drift `orderView`
31
+ * already tolerates: two transition tables drifting means **the API writes an
32
+ * order status the console forbids** — `paid → delivered` skipping fulfilment,
33
+ * or a write onto a `refunded` order — which is precisely the class of bug
34
+ * AGL-1818/AGL-1819 were opened to close.
35
+ *
36
+ * So the edge runs the way every other app↔plugin edge on this platform runs:
37
+ * the plugin registers an implementation into a core registry from its
38
+ * `/server` entry, and the app looks it up. Same shape as
39
+ * `registerBillingWebhookHandler`, `registerSitePageResolver` and
40
+ * `registerPluginJob`. Nothing is imported statically in either direction, the
41
+ * app compiles and boots with commerce absent, and there is exactly ONE
42
+ * implementation of the transition rule — the plugin's.
43
+ *
44
+ * ## THE REGISTRY CARRIES NO AUTHORIZATION. READ THIS BEFORE CALLING.
45
+ *
46
+ * `recordShipment` is a PRE-AUTHORIZED domain operation. It answers "may this
47
+ * order move to this status" (the transition rule, re-asked inside the write)
48
+ * and nothing whatsoever about "may this caller touch this order". It does not
49
+ * know who is asking — deliberately, because its two callers authenticate
50
+ * completely differently: the console's `commerce/fulfill-order` route
51
+ * verifies a Firebase ID token and reads `memberRoles[uid]`, while a `/v1`
52
+ * API key is an ORG credential with no uid at all.
53
+ *
54
+ * Every caller MUST therefore have already established, in its own terms:
55
+ *
56
+ * 1. **who the caller is** (session, or key), and
57
+ * 2. **that the caller's org owns `hostId`** — the org-scoping check, without
58
+ * which this becomes a cross-tenant write primitive addressable by any
59
+ * authenticated caller who can guess a host id, and
60
+ * 3. **that the plugin owning this service is switched on for that site**
61
+ * (`isHostPluginEnabled`) — the registry is process-global and populated by
62
+ * `ensureAll`, so a registered service says nothing about one org's
63
+ * configuration.
64
+ *
65
+ * A single implementation is held, not a list: this is a capability with an
66
+ * owner, not a fan-out hook. Two plugins claiming order fulfilment is a
67
+ * misconfiguration, and last-registration-wins would resolve it silently, so
68
+ * {@link registerOrderFulfilmentService} refuses the second registration
69
+ * loudly instead.
70
+ */ /**
71
+ * The two fulfilment-side transitions, and ONLY those.
72
+ *
73
+ * `cancelled` releases stock under its own transaction and `refunded` moves
74
+ * money under another, so neither belongs to a capability whose contract is
75
+ * "a forward status flip plus a timeline entry, no stock moved, no money
76
+ * moved". Widening this union is how a caller gets a door around the
77
+ * specifics those routes exist to enforce — the type is the door being shut.
78
+ */ let service = null;
79
+ /**
80
+ * Registers the platform's order-fulfilment implementation, from a plugin's
81
+ * `/server` entry. Idempotent for the SAME plugin (the loader guarantees one
82
+ * activation per plugin+surface, but a re-registration must not be an error in
83
+ * a process that loads a surface twice); a DIFFERENT plugin claiming the
84
+ * capability throws, because silently overwriting it would hand order writes
85
+ * to whichever module happened to load last.
86
+ */ export function registerOrderFulfilmentService(next) {
87
+ if (service && service.pluginId !== next.pluginId) {
88
+ throw new Error(`Order fulfilment is already provided by "${service.pluginId}"; ` + `"${next.pluginId}" cannot also claim it`);
89
+ }
90
+ service = next;
91
+ }
92
+ /**
93
+ * The registered service, or `null` when no loaded plugin provides one — a
94
+ * deployment with commerce switched off, or a self-host build without it.
95
+ * `null` is an ordinary answer, never an error: callers turn it into "this
96
+ * endpoint does not exist here", which is the truth.
97
+ */ export function getOrderFulfilmentService() {
98
+ return service;
99
+ }
100
+ /** Test seam: forget the registration. */ export function resetOrderFulfilmentServiceForTests() {
101
+ service = null;
102
+ }
103
+
104
+ //# sourceMappingURL=order-fulfilment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../libs/aglyn/src/lib/plugin-manager/order-fulfilment.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2026 Aglyn LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/**\n * The order-fulfilment capability (AGL-2461) — how a HOST APP records a\n * shipment without importing the plugin that owns order semantics.\n *\n * ## Why this registry exists at all\n *\n * `eslint.config.mjs`'s `scope:app` → `notDependOnLibsWithTags:['aglyn:addons']`\n * rule means `apps/console` may not import `@aglyn/plugins-commerce`, so the\n * customer REST API could not reach `ORDER_TRANSITIONS`, `canTransitionOrder`,\n * `liftLegacyOrder` or `appendOrderEvent` — and therefore could not record a\n * shipment at all. The rule is not a preference: the app must stay runnable\n * with any plugin absent, which is the whole plugin platform (AGL-417/419).\n *\n * The tempting escape is a second copy of the transition table inside `/v1`.\n * That is the wrong one, and much worse than the projection drift `orderView`\n * already tolerates: two transition tables drifting means **the API writes an\n * order status the console forbids** — `paid → delivered` skipping fulfilment,\n * or a write onto a `refunded` order — which is precisely the class of bug\n * AGL-1818/AGL-1819 were opened to close.\n *\n * So the edge runs the way every other app↔plugin edge on this platform runs:\n * the plugin registers an implementation into a core registry from its\n * `/server` entry, and the app looks it up. Same shape as\n * `registerBillingWebhookHandler`, `registerSitePageResolver` and\n * `registerPluginJob`. Nothing is imported statically in either direction, the\n * app compiles and boots with commerce absent, and there is exactly ONE\n * implementation of the transition rule — the plugin's.\n *\n * ## THE REGISTRY CARRIES NO AUTHORIZATION. READ THIS BEFORE CALLING.\n *\n * `recordShipment` is a PRE-AUTHORIZED domain operation. It answers \"may this\n * order move to this status\" (the transition rule, re-asked inside the write)\n * and nothing whatsoever about \"may this caller touch this order\". It does not\n * know who is asking — deliberately, because its two callers authenticate\n * completely differently: the console's `commerce/fulfill-order` route\n * verifies a Firebase ID token and reads `memberRoles[uid]`, while a `/v1`\n * API key is an ORG credential with no uid at all.\n *\n * Every caller MUST therefore have already established, in its own terms:\n *\n * 1. **who the caller is** (session, or key), and\n * 2. **that the caller's org owns `hostId`** — the org-scoping check, without\n * which this becomes a cross-tenant write primitive addressable by any\n * authenticated caller who can guess a host id, and\n * 3. **that the plugin owning this service is switched on for that site**\n * (`isHostPluginEnabled`) — the registry is process-global and populated by\n * `ensureAll`, so a registered service says nothing about one org's\n * configuration.\n *\n * A single implementation is held, not a list: this is a capability with an\n * owner, not a fan-out hook. Two plugins claiming order fulfilment is a\n * misconfiguration, and last-registration-wins would resolve it silently, so\n * {@link registerOrderFulfilmentService} refuses the second registration\n * loudly instead.\n */\n\n/**\n * The two fulfilment-side transitions, and ONLY those.\n *\n * `cancelled` releases stock under its own transaction and `refunded` moves\n * money under another, so neither belongs to a capability whose contract is\n * \"a forward status flip plus a timeline entry, no stock moved, no money\n * moved\". Widening this union is how a caller gets a door around the\n * specifics those routes exist to enforce — the type is the door being shut.\n */\nexport type OrderFulfilmentTarget = 'fulfilled' | 'delivered'\n\nexport interface RecordShipmentRequest {\n /** Site that owns the order. The CALLER has already proven ownership. */\n hostId: string\n orderId: string\n to: OrderFulfilmentTarget\n /** Free text, e.g. `'UPS'`. Implementations bound the length. */\n carrier?: string\n trackingNumber?: string\n}\n\n/**\n * What happened, as a domain fact rather than an HTTP status — each caller\n * maps it into its own error vocabulary (the console route into its JSON\n * shape, `/v1` into the published error envelope), because those two\n * vocabularies are contracts with different audiences and neither may leak\n * into the other.\n *\n * `already` is a SUCCESS and is distinct from `recorded` on purpose: a retried\n * request finds the order in the target status and returns without writing, so\n * a lost response can never append a second copy of the same shipment. A\n * caller that folded the two together would still be correct about the state\n * and would lose the only signal that says \"this was your retry\".\n */\nexport type RecordShipmentOutcome =\n | { outcome: 'recorded' }\n | { outcome: 'already' }\n | { outcome: 'no_such_order' }\n /** The transition rule refused. `from` is the status that refused it. */\n | { outcome: 'blocked'; from: string }\n\nexport interface OrderFulfilmentService {\n /**\n * The plugin that owns this capability. Callers gate on THIS — never on a\n * hard-coded `'commerce'` — which is what keeps the app free of any name\n * from the addon layer.\n */\n pluginId: string\n recordShipment(request: RecordShipmentRequest): Promise<RecordShipmentOutcome>\n}\n\nlet service: OrderFulfilmentService | null = null\n\n/**\n * Registers the platform's order-fulfilment implementation, from a plugin's\n * `/server` entry. Idempotent for the SAME plugin (the loader guarantees one\n * activation per plugin+surface, but a re-registration must not be an error in\n * a process that loads a surface twice); a DIFFERENT plugin claiming the\n * capability throws, because silently overwriting it would hand order writes\n * to whichever module happened to load last.\n */\nexport function registerOrderFulfilmentService(\n next: OrderFulfilmentService,\n): void {\n if (service && service.pluginId !== next.pluginId) {\n throw new Error(\n `Order fulfilment is already provided by \"${service.pluginId}\"; ` +\n `\"${next.pluginId}\" cannot also claim it`,\n )\n }\n service = next\n}\n\n/**\n * The registered service, or `null` when no loaded plugin provides one — a\n * deployment with commerce switched off, or a self-host build without it.\n * `null` is an ordinary answer, never an error: callers turn it into \"this\n * endpoint does not exist here\", which is the truth.\n */\nexport function getOrderFulfilmentService(): OrderFulfilmentService | null {\n return service\n}\n\n/** Test seam: forget the registration. */\nexport function resetOrderFulfilmentServiceForTests(): void {\n service = null\n}\n"],"names":["service","registerOrderFulfilmentService","next","pluginId","Error","getOrderFulfilmentService","resetOrderFulfilmentServiceForTests"],"mappings":"AAAA;;;;;;;;;;;;;;;CAeC,GAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsDC,GAED;;;;;;;;CAQC,GA2CD,IAAIA,UAAyC;AAE7C;;;;;;;CAOC,GACD,OAAO,SAASC,+BACdC,IAA4B;IAE5B,IAAIF,WAAWA,QAAQG,QAAQ,KAAKD,KAAKC,QAAQ,EAAE;QACjD,MAAM,IAAIC,MACR,CAAC,yCAAyC,EAAEJ,QAAQG,QAAQ,CAAC,GAAG,CAAC,GAC/D,CAAC,CAAC,EAAED,KAAKC,QAAQ,CAAC,sBAAsB,CAAC;IAE/C;IACAH,UAAUE;AACZ;AAEA;;;;;CAKC,GACD,OAAO,SAASG;IACd,OAAOL;AACT;AAEA,wCAAwC,GACxC,OAAO,SAASM;IACdN,UAAU;AACZ"}