@lssm/lib.contracts 0.0.0-canary-20251120170226

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 (623) hide show
  1. package/README.md +98 -0
  2. package/dist/app-config/branding.d.ts +56 -0
  3. package/dist/app-config/branding.d.ts.map +1 -0
  4. package/dist/app-config/branding.js +0 -0
  5. package/dist/app-config/contracts.d.ts +245 -0
  6. package/dist/app-config/contracts.d.ts.map +1 -0
  7. package/dist/app-config/contracts.js +2 -0
  8. package/dist/app-config/contracts.js.map +1 -0
  9. package/dist/app-config/events.d.ts +123 -0
  10. package/dist/app-config/events.d.ts.map +1 -0
  11. package/dist/app-config/events.js +2 -0
  12. package/dist/app-config/events.js.map +1 -0
  13. package/dist/app-config/index.d.ts +8 -0
  14. package/dist/app-config/index.js +1 -0
  15. package/dist/app-config/lifecycle-contracts.d.ts +383 -0
  16. package/dist/app-config/lifecycle-contracts.d.ts.map +1 -0
  17. package/dist/app-config/lifecycle-contracts.js +2 -0
  18. package/dist/app-config/lifecycle-contracts.js.map +1 -0
  19. package/dist/app-config/lifecycle.d.ts +28 -0
  20. package/dist/app-config/lifecycle.d.ts.map +1 -0
  21. package/dist/app-config/lifecycle.js +0 -0
  22. package/dist/app-config/runtime.d.ts +115 -0
  23. package/dist/app-config/runtime.d.ts.map +1 -0
  24. package/dist/app-config/runtime.js +2 -0
  25. package/dist/app-config/runtime.js.map +1 -0
  26. package/dist/app-config/spec.d.ts +176 -0
  27. package/dist/app-config/spec.d.ts.map +1 -0
  28. package/dist/app-config/spec.js +2 -0
  29. package/dist/app-config/spec.js.map +1 -0
  30. package/dist/app-config/validation.d.ts +48 -0
  31. package/dist/app-config/validation.d.ts.map +1 -0
  32. package/dist/app-config/validation.js +2 -0
  33. package/dist/app-config/validation.js.map +1 -0
  34. package/dist/capabilities/openbanking.d.ts +10 -0
  35. package/dist/capabilities/openbanking.d.ts.map +1 -0
  36. package/dist/capabilities/openbanking.js +2 -0
  37. package/dist/capabilities/openbanking.js.map +1 -0
  38. package/dist/capabilities.d.ts +45 -0
  39. package/dist/capabilities.d.ts.map +1 -0
  40. package/dist/capabilities.js +2 -0
  41. package/dist/capabilities.js.map +1 -0
  42. package/dist/client/index.d.ts +6 -0
  43. package/dist/client/index.js +1 -0
  44. package/dist/client/react/drivers/rn-reusables.d.ts +23 -0
  45. package/dist/client/react/drivers/rn-reusables.d.ts.map +1 -0
  46. package/dist/client/react/drivers/rn-reusables.js +2 -0
  47. package/dist/client/react/drivers/rn-reusables.js.map +1 -0
  48. package/dist/client/react/drivers/shadcn.d.ts +13 -0
  49. package/dist/client/react/drivers/shadcn.d.ts.map +1 -0
  50. package/dist/client/react/drivers/shadcn.js +2 -0
  51. package/dist/client/react/drivers/shadcn.js.map +1 -0
  52. package/dist/client/react/feature-render.d.ts +21 -0
  53. package/dist/client/react/feature-render.d.ts.map +1 -0
  54. package/dist/client/react/feature-render.js +2 -0
  55. package/dist/client/react/feature-render.js.map +1 -0
  56. package/dist/client/react/form-render.d.ts +92 -0
  57. package/dist/client/react/form-render.d.ts.map +1 -0
  58. package/dist/client/react/form-render.js +2 -0
  59. package/dist/client/react/form-render.js.map +1 -0
  60. package/dist/client/react/index.d.ts +5 -0
  61. package/dist/client/react/index.js +1 -0
  62. package/dist/contracts-adapter-hydration.d.ts +16 -0
  63. package/dist/contracts-adapter-hydration.d.ts.map +1 -0
  64. package/dist/contracts-adapter-hydration.js +2 -0
  65. package/dist/contracts-adapter-hydration.js.map +1 -0
  66. package/dist/contracts-adapter-input.d.ts +11 -0
  67. package/dist/contracts-adapter-input.d.ts.map +1 -0
  68. package/dist/contracts-adapter-input.js +2 -0
  69. package/dist/contracts-adapter-input.js.map +1 -0
  70. package/dist/data-views/query-generator.d.ts +40 -0
  71. package/dist/data-views/query-generator.d.ts.map +1 -0
  72. package/dist/data-views/query-generator.js +2 -0
  73. package/dist/data-views/query-generator.js.map +1 -0
  74. package/dist/data-views/runtime.d.ts +27 -0
  75. package/dist/data-views/runtime.d.ts.map +1 -0
  76. package/dist/data-views/runtime.js +2 -0
  77. package/dist/data-views/runtime.js.map +1 -0
  78. package/dist/data-views.d.ts +132 -0
  79. package/dist/data-views.d.ts.map +1 -0
  80. package/dist/data-views.js +2 -0
  81. package/dist/data-views.js.map +1 -0
  82. package/dist/events.d.ts +45 -0
  83. package/dist/events.d.ts.map +1 -0
  84. package/dist/events.js +2 -0
  85. package/dist/events.js.map +1 -0
  86. package/dist/experiments/evaluator.d.ts +38 -0
  87. package/dist/experiments/evaluator.d.ts.map +1 -0
  88. package/dist/experiments/evaluator.js +2 -0
  89. package/dist/experiments/evaluator.js.map +1 -0
  90. package/dist/experiments/spec.d.ts +90 -0
  91. package/dist/experiments/spec.d.ts.map +1 -0
  92. package/dist/experiments/spec.js +2 -0
  93. package/dist/experiments/spec.js.map +1 -0
  94. package/dist/features.d.ts +88 -0
  95. package/dist/features.d.ts.map +1 -0
  96. package/dist/features.js +2 -0
  97. package/dist/features.js.map +1 -0
  98. package/dist/forms.d.ts +259 -0
  99. package/dist/forms.d.ts.map +1 -0
  100. package/dist/forms.js +2 -0
  101. package/dist/forms.js.map +1 -0
  102. package/dist/graphql-federation/dist/index.js +2 -0
  103. package/dist/graphql-federation/dist/index.js.map +1 -0
  104. package/dist/index.d.ts +129 -0
  105. package/dist/index.js +1 -0
  106. package/dist/install.d.ts +77 -0
  107. package/dist/install.d.ts.map +1 -0
  108. package/dist/install.js +2 -0
  109. package/dist/install.js.map +1 -0
  110. package/dist/integrations/binding.d.ts +18 -0
  111. package/dist/integrations/binding.d.ts.map +1 -0
  112. package/dist/integrations/binding.js +0 -0
  113. package/dist/integrations/connection.d.ts +52 -0
  114. package/dist/integrations/connection.d.ts.map +1 -0
  115. package/dist/integrations/connection.js +0 -0
  116. package/dist/integrations/contracts.d.ts +436 -0
  117. package/dist/integrations/contracts.d.ts.map +1 -0
  118. package/dist/integrations/contracts.js +2 -0
  119. package/dist/integrations/contracts.js.map +1 -0
  120. package/dist/integrations/health.d.ts +22 -0
  121. package/dist/integrations/health.d.ts.map +1 -0
  122. package/dist/integrations/health.js +2 -0
  123. package/dist/integrations/health.js.map +1 -0
  124. package/dist/integrations/index.d.ts +53 -0
  125. package/dist/integrations/index.js +1 -0
  126. package/dist/integrations/openbanking/contracts/accounts.d.ts +288 -0
  127. package/dist/integrations/openbanking/contracts/accounts.d.ts.map +1 -0
  128. package/dist/integrations/openbanking/contracts/accounts.js +2 -0
  129. package/dist/integrations/openbanking/contracts/accounts.js.map +1 -0
  130. package/dist/integrations/openbanking/contracts/balances.d.ts +164 -0
  131. package/dist/integrations/openbanking/contracts/balances.d.ts.map +1 -0
  132. package/dist/integrations/openbanking/contracts/balances.js +2 -0
  133. package/dist/integrations/openbanking/contracts/balances.js.map +1 -0
  134. package/dist/integrations/openbanking/contracts/index.d.ts +10 -0
  135. package/dist/integrations/openbanking/contracts/index.d.ts.map +1 -0
  136. package/dist/integrations/openbanking/contracts/index.js +2 -0
  137. package/dist/integrations/openbanking/contracts/index.js.map +1 -0
  138. package/dist/integrations/openbanking/contracts/transactions.d.ts +212 -0
  139. package/dist/integrations/openbanking/contracts/transactions.d.ts.map +1 -0
  140. package/dist/integrations/openbanking/contracts/transactions.js +2 -0
  141. package/dist/integrations/openbanking/contracts/transactions.js.map +1 -0
  142. package/dist/integrations/openbanking/guards.d.ts +13 -0
  143. package/dist/integrations/openbanking/guards.d.ts.map +1 -0
  144. package/dist/integrations/openbanking/guards.js +2 -0
  145. package/dist/integrations/openbanking/guards.js.map +1 -0
  146. package/dist/integrations/openbanking/models.d.ts +229 -0
  147. package/dist/integrations/openbanking/models.d.ts.map +1 -0
  148. package/dist/integrations/openbanking/models.js +2 -0
  149. package/dist/integrations/openbanking/models.js.map +1 -0
  150. package/dist/integrations/openbanking/telemetry.d.ts +16 -0
  151. package/dist/integrations/openbanking/telemetry.d.ts.map +1 -0
  152. package/dist/integrations/openbanking/telemetry.js +2 -0
  153. package/dist/integrations/openbanking/telemetry.js.map +1 -0
  154. package/dist/integrations/providers/calendar.d.ts +79 -0
  155. package/dist/integrations/providers/calendar.d.ts.map +1 -0
  156. package/dist/integrations/providers/calendar.js +0 -0
  157. package/dist/integrations/providers/elevenlabs.d.ts +8 -0
  158. package/dist/integrations/providers/elevenlabs.d.ts.map +1 -0
  159. package/dist/integrations/providers/elevenlabs.js +2 -0
  160. package/dist/integrations/providers/elevenlabs.js.map +1 -0
  161. package/dist/integrations/providers/email.d.ts +87 -0
  162. package/dist/integrations/providers/email.d.ts.map +1 -0
  163. package/dist/integrations/providers/email.js +0 -0
  164. package/dist/integrations/providers/embedding.d.ts +25 -0
  165. package/dist/integrations/providers/embedding.d.ts.map +1 -0
  166. package/dist/integrations/providers/embedding.js +0 -0
  167. package/dist/integrations/providers/gcs-storage.d.ts +8 -0
  168. package/dist/integrations/providers/gcs-storage.d.ts.map +1 -0
  169. package/dist/integrations/providers/gcs-storage.js +2 -0
  170. package/dist/integrations/providers/gcs-storage.js.map +1 -0
  171. package/dist/integrations/providers/gmail.d.ts +8 -0
  172. package/dist/integrations/providers/gmail.d.ts.map +1 -0
  173. package/dist/integrations/providers/gmail.js +2 -0
  174. package/dist/integrations/providers/gmail.js.map +1 -0
  175. package/dist/integrations/providers/google-calendar.d.ts +8 -0
  176. package/dist/integrations/providers/google-calendar.d.ts.map +1 -0
  177. package/dist/integrations/providers/google-calendar.js +2 -0
  178. package/dist/integrations/providers/google-calendar.js.map +1 -0
  179. package/dist/integrations/providers/impls/elevenlabs-voice.d.ts +21 -0
  180. package/dist/integrations/providers/impls/elevenlabs-voice.d.ts.map +1 -0
  181. package/dist/integrations/providers/impls/elevenlabs-voice.js +2 -0
  182. package/dist/integrations/providers/impls/elevenlabs-voice.js.map +1 -0
  183. package/dist/integrations/providers/impls/gcs-storage.d.ts +25 -0
  184. package/dist/integrations/providers/impls/gcs-storage.d.ts.map +1 -0
  185. package/dist/integrations/providers/impls/gcs-storage.js +2 -0
  186. package/dist/integrations/providers/impls/gcs-storage.js.map +1 -0
  187. package/dist/integrations/providers/impls/gmail-inbound.d.ts +27 -0
  188. package/dist/integrations/providers/impls/gmail-inbound.d.ts.map +1 -0
  189. package/dist/integrations/providers/impls/gmail-inbound.js +2 -0
  190. package/dist/integrations/providers/impls/gmail-inbound.js.map +1 -0
  191. package/dist/integrations/providers/impls/gmail-outbound.d.ts +19 -0
  192. package/dist/integrations/providers/impls/gmail-outbound.d.ts.map +1 -0
  193. package/dist/integrations/providers/impls/gmail-outbound.js +7 -0
  194. package/dist/integrations/providers/impls/gmail-outbound.js.map +1 -0
  195. package/dist/integrations/providers/impls/google-calendar.d.ts +24 -0
  196. package/dist/integrations/providers/impls/google-calendar.d.ts.map +1 -0
  197. package/dist/integrations/providers/impls/google-calendar.js +2 -0
  198. package/dist/integrations/providers/impls/google-calendar.js.map +1 -0
  199. package/dist/integrations/providers/impls/index.d.ts +15 -0
  200. package/dist/integrations/providers/impls/index.js +1 -0
  201. package/dist/integrations/providers/impls/mistral-embedding.d.ts +24 -0
  202. package/dist/integrations/providers/impls/mistral-embedding.d.ts.map +1 -0
  203. package/dist/integrations/providers/impls/mistral-embedding.js +2 -0
  204. package/dist/integrations/providers/impls/mistral-embedding.js.map +1 -0
  205. package/dist/integrations/providers/impls/mistral-llm.d.ts +32 -0
  206. package/dist/integrations/providers/impls/mistral-llm.d.ts.map +1 -0
  207. package/dist/integrations/providers/impls/mistral-llm.js +2 -0
  208. package/dist/integrations/providers/impls/mistral-llm.js.map +1 -0
  209. package/dist/integrations/providers/impls/postmark-email.d.ts +20 -0
  210. package/dist/integrations/providers/impls/postmark-email.d.ts.map +1 -0
  211. package/dist/integrations/providers/impls/postmark-email.js +2 -0
  212. package/dist/integrations/providers/impls/postmark-email.js.map +1 -0
  213. package/dist/integrations/providers/impls/powens-client.d.ts +125 -0
  214. package/dist/integrations/providers/impls/powens-client.d.ts.map +1 -0
  215. package/dist/integrations/providers/impls/powens-client.js +2 -0
  216. package/dist/integrations/providers/impls/powens-client.js.map +1 -0
  217. package/dist/integrations/providers/impls/powens-openbanking.d.ts +28 -0
  218. package/dist/integrations/providers/impls/powens-openbanking.d.ts.map +1 -0
  219. package/dist/integrations/providers/impls/powens-openbanking.js +2 -0
  220. package/dist/integrations/providers/impls/powens-openbanking.js.map +1 -0
  221. package/dist/integrations/providers/impls/provider-factory.d.ts +27 -0
  222. package/dist/integrations/providers/impls/provider-factory.d.ts.map +1 -0
  223. package/dist/integrations/providers/impls/provider-factory.js +2 -0
  224. package/dist/integrations/providers/impls/provider-factory.js.map +1 -0
  225. package/dist/integrations/providers/impls/qdrant-vector.d.ts +25 -0
  226. package/dist/integrations/providers/impls/qdrant-vector.d.ts.map +1 -0
  227. package/dist/integrations/providers/impls/qdrant-vector.js +2 -0
  228. package/dist/integrations/providers/impls/qdrant-vector.js.map +1 -0
  229. package/dist/integrations/providers/impls/stripe-payments.d.ts +29 -0
  230. package/dist/integrations/providers/impls/stripe-payments.d.ts.map +1 -0
  231. package/dist/integrations/providers/impls/stripe-payments.js +2 -0
  232. package/dist/integrations/providers/impls/stripe-payments.js.map +1 -0
  233. package/dist/integrations/providers/impls/twilio-sms.d.ts +21 -0
  234. package/dist/integrations/providers/impls/twilio-sms.d.ts.map +1 -0
  235. package/dist/integrations/providers/impls/twilio-sms.js +2 -0
  236. package/dist/integrations/providers/impls/twilio-sms.js.map +1 -0
  237. package/dist/integrations/providers/index.d.ts +36 -0
  238. package/dist/integrations/providers/index.js +1 -0
  239. package/dist/integrations/providers/llm.d.ts +83 -0
  240. package/dist/integrations/providers/llm.d.ts.map +1 -0
  241. package/dist/integrations/providers/llm.js +0 -0
  242. package/dist/integrations/providers/mistral.d.ts +8 -0
  243. package/dist/integrations/providers/mistral.d.ts.map +1 -0
  244. package/dist/integrations/providers/mistral.js +2 -0
  245. package/dist/integrations/providers/mistral.js.map +1 -0
  246. package/dist/integrations/providers/openbanking.d.ts +129 -0
  247. package/dist/integrations/providers/openbanking.d.ts.map +1 -0
  248. package/dist/integrations/providers/openbanking.js +0 -0
  249. package/dist/integrations/providers/payments.d.ts +110 -0
  250. package/dist/integrations/providers/payments.d.ts.map +1 -0
  251. package/dist/integrations/providers/payments.js +0 -0
  252. package/dist/integrations/providers/postmark.d.ts +8 -0
  253. package/dist/integrations/providers/postmark.d.ts.map +1 -0
  254. package/dist/integrations/providers/postmark.js +2 -0
  255. package/dist/integrations/providers/postmark.js.map +1 -0
  256. package/dist/integrations/providers/powens.d.ts +8 -0
  257. package/dist/integrations/providers/powens.d.ts.map +1 -0
  258. package/dist/integrations/providers/powens.js +2 -0
  259. package/dist/integrations/providers/powens.js.map +1 -0
  260. package/dist/integrations/providers/qdrant.d.ts +8 -0
  261. package/dist/integrations/providers/qdrant.d.ts.map +1 -0
  262. package/dist/integrations/providers/qdrant.js +2 -0
  263. package/dist/integrations/providers/qdrant.js.map +1 -0
  264. package/dist/integrations/providers/sms.d.ts +35 -0
  265. package/dist/integrations/providers/sms.d.ts.map +1 -0
  266. package/dist/integrations/providers/sms.js +0 -0
  267. package/dist/integrations/providers/storage.d.ts +61 -0
  268. package/dist/integrations/providers/storage.d.ts.map +1 -0
  269. package/dist/integrations/providers/storage.js +0 -0
  270. package/dist/integrations/providers/stripe.d.ts +8 -0
  271. package/dist/integrations/providers/stripe.d.ts.map +1 -0
  272. package/dist/integrations/providers/stripe.js +2 -0
  273. package/dist/integrations/providers/stripe.js.map +1 -0
  274. package/dist/integrations/providers/twilio-sms.d.ts +8 -0
  275. package/dist/integrations/providers/twilio-sms.d.ts.map +1 -0
  276. package/dist/integrations/providers/twilio-sms.js +2 -0
  277. package/dist/integrations/providers/twilio-sms.js.map +1 -0
  278. package/dist/integrations/providers/vector-store.d.ts +44 -0
  279. package/dist/integrations/providers/vector-store.d.ts.map +1 -0
  280. package/dist/integrations/providers/vector-store.js +0 -0
  281. package/dist/integrations/providers/voice.d.ts +35 -0
  282. package/dist/integrations/providers/voice.d.ts.map +1 -0
  283. package/dist/integrations/providers/voice.js +0 -0
  284. package/dist/integrations/runtime.d.ts +100 -0
  285. package/dist/integrations/runtime.d.ts.map +1 -0
  286. package/dist/integrations/runtime.js +2 -0
  287. package/dist/integrations/runtime.js.map +1 -0
  288. package/dist/integrations/secrets/env-secret-provider.d.ts +32 -0
  289. package/dist/integrations/secrets/env-secret-provider.d.ts.map +1 -0
  290. package/dist/integrations/secrets/env-secret-provider.js +2 -0
  291. package/dist/integrations/secrets/env-secret-provider.js.map +1 -0
  292. package/dist/integrations/secrets/gcp-secret-manager.d.ts +33 -0
  293. package/dist/integrations/secrets/gcp-secret-manager.d.ts.map +1 -0
  294. package/dist/integrations/secrets/gcp-secret-manager.js +2 -0
  295. package/dist/integrations/secrets/gcp-secret-manager.js.map +1 -0
  296. package/dist/integrations/secrets/index.d.ts +5 -0
  297. package/dist/integrations/secrets/index.js +1 -0
  298. package/dist/integrations/secrets/manager.d.ts +48 -0
  299. package/dist/integrations/secrets/manager.d.ts.map +1 -0
  300. package/dist/integrations/secrets/manager.js +2 -0
  301. package/dist/integrations/secrets/manager.js.map +1 -0
  302. package/dist/integrations/secrets/provider.d.ts +53 -0
  303. package/dist/integrations/secrets/provider.d.ts.map +1 -0
  304. package/dist/integrations/secrets/provider.js +2 -0
  305. package/dist/integrations/secrets/provider.js.map +1 -0
  306. package/dist/integrations/spec.d.ts +80 -0
  307. package/dist/integrations/spec.d.ts.map +1 -0
  308. package/dist/integrations/spec.js +2 -0
  309. package/dist/integrations/spec.js.map +1 -0
  310. package/dist/jobs/gcp-cloud-tasks.d.ts +42 -0
  311. package/dist/jobs/gcp-cloud-tasks.d.ts.map +1 -0
  312. package/dist/jobs/gcp-cloud-tasks.js +2 -0
  313. package/dist/jobs/gcp-cloud-tasks.js.map +1 -0
  314. package/dist/jobs/gcp-pubsub.d.ts +26 -0
  315. package/dist/jobs/gcp-pubsub.d.ts.map +1 -0
  316. package/dist/jobs/gcp-pubsub.js +2 -0
  317. package/dist/jobs/gcp-pubsub.js.map +1 -0
  318. package/dist/jobs/handlers/gmail-sync-handler.d.ts +10 -0
  319. package/dist/jobs/handlers/gmail-sync-handler.d.ts.map +1 -0
  320. package/dist/jobs/handlers/gmail-sync-handler.js +2 -0
  321. package/dist/jobs/handlers/gmail-sync-handler.js.map +1 -0
  322. package/dist/jobs/handlers/index.d.ts +3 -0
  323. package/dist/jobs/handlers/index.js +1 -0
  324. package/dist/jobs/handlers/storage-document-handler.d.ts +13 -0
  325. package/dist/jobs/handlers/storage-document-handler.d.ts.map +1 -0
  326. package/dist/jobs/handlers/storage-document-handler.js +2 -0
  327. package/dist/jobs/handlers/storage-document-handler.js.map +1 -0
  328. package/dist/jobs/index.d.ts +7 -0
  329. package/dist/jobs/index.js +1 -0
  330. package/dist/jobs/memory-queue.d.ts +19 -0
  331. package/dist/jobs/memory-queue.d.ts.map +1 -0
  332. package/dist/jobs/memory-queue.js +2 -0
  333. package/dist/jobs/memory-queue.js.map +1 -0
  334. package/dist/jobs/queue.d.ts +27 -0
  335. package/dist/jobs/queue.d.ts.map +1 -0
  336. package/dist/jobs/queue.js +0 -0
  337. package/dist/jsonschema.d.ts +27 -0
  338. package/dist/jsonschema.d.ts.map +1 -0
  339. package/dist/jsonschema.js +2 -0
  340. package/dist/jsonschema.js.map +1 -0
  341. package/dist/knowledge/binding.d.ts +26 -0
  342. package/dist/knowledge/binding.d.ts.map +1 -0
  343. package/dist/knowledge/binding.js +0 -0
  344. package/dist/knowledge/contracts.d.ts +317 -0
  345. package/dist/knowledge/contracts.d.ts.map +1 -0
  346. package/dist/knowledge/contracts.js +2 -0
  347. package/dist/knowledge/contracts.js.map +1 -0
  348. package/dist/knowledge/index.d.ts +10 -0
  349. package/dist/knowledge/index.js +1 -0
  350. package/dist/knowledge/ingestion/document-processor.d.ts +25 -0
  351. package/dist/knowledge/ingestion/document-processor.d.ts.map +1 -0
  352. package/dist/knowledge/ingestion/document-processor.js +2 -0
  353. package/dist/knowledge/ingestion/document-processor.js.map +1 -0
  354. package/dist/knowledge/ingestion/embedding-service.d.ts +13 -0
  355. package/dist/knowledge/ingestion/embedding-service.d.ts.map +1 -0
  356. package/dist/knowledge/ingestion/embedding-service.js +2 -0
  357. package/dist/knowledge/ingestion/embedding-service.js.map +1 -0
  358. package/dist/knowledge/ingestion/gmail-adapter.d.ts +19 -0
  359. package/dist/knowledge/ingestion/gmail-adapter.d.ts.map +1 -0
  360. package/dist/knowledge/ingestion/gmail-adapter.js +7 -0
  361. package/dist/knowledge/ingestion/gmail-adapter.js.map +1 -0
  362. package/dist/knowledge/ingestion/index.d.ts +6 -0
  363. package/dist/knowledge/ingestion/index.js +1 -0
  364. package/dist/knowledge/ingestion/storage-adapter.d.ts +16 -0
  365. package/dist/knowledge/ingestion/storage-adapter.d.ts.map +1 -0
  366. package/dist/knowledge/ingestion/storage-adapter.js +2 -0
  367. package/dist/knowledge/ingestion/storage-adapter.js.map +1 -0
  368. package/dist/knowledge/ingestion/vector-indexer.d.ts +19 -0
  369. package/dist/knowledge/ingestion/vector-indexer.d.ts.map +1 -0
  370. package/dist/knowledge/ingestion/vector-indexer.js +2 -0
  371. package/dist/knowledge/ingestion/vector-indexer.js.map +1 -0
  372. package/dist/knowledge/query/index.d.ts +2 -0
  373. package/dist/knowledge/query/index.js +1 -0
  374. package/dist/knowledge/query/service.d.ts +30 -0
  375. package/dist/knowledge/query/service.d.ts.map +1 -0
  376. package/dist/knowledge/query/service.js +4 -0
  377. package/dist/knowledge/query/service.js.map +1 -0
  378. package/dist/knowledge/runtime.d.ts +33 -0
  379. package/dist/knowledge/runtime.d.ts.map +1 -0
  380. package/dist/knowledge/runtime.js +2 -0
  381. package/dist/knowledge/runtime.js.map +1 -0
  382. package/dist/knowledge/source.d.ts +33 -0
  383. package/dist/knowledge/source.d.ts.map +1 -0
  384. package/dist/knowledge/source.js +0 -0
  385. package/dist/knowledge/spaces/email-threads.d.ts +8 -0
  386. package/dist/knowledge/spaces/email-threads.d.ts.map +1 -0
  387. package/dist/knowledge/spaces/email-threads.js +2 -0
  388. package/dist/knowledge/spaces/email-threads.js.map +1 -0
  389. package/dist/knowledge/spaces/financial-docs.d.ts +8 -0
  390. package/dist/knowledge/spaces/financial-docs.d.ts.map +1 -0
  391. package/dist/knowledge/spaces/financial-docs.js +2 -0
  392. package/dist/knowledge/spaces/financial-docs.js.map +1 -0
  393. package/dist/knowledge/spaces/financial-overview.d.ts +8 -0
  394. package/dist/knowledge/spaces/financial-overview.d.ts.map +1 -0
  395. package/dist/knowledge/spaces/financial-overview.js +2 -0
  396. package/dist/knowledge/spaces/financial-overview.js.map +1 -0
  397. package/dist/knowledge/spaces/index.d.ts +7 -0
  398. package/dist/knowledge/spaces/index.js +1 -0
  399. package/dist/knowledge/spaces/product-canon.d.ts +8 -0
  400. package/dist/knowledge/spaces/product-canon.d.ts.map +1 -0
  401. package/dist/knowledge/spaces/product-canon.js +2 -0
  402. package/dist/knowledge/spaces/product-canon.js.map +1 -0
  403. package/dist/knowledge/spaces/support-faq.d.ts +8 -0
  404. package/dist/knowledge/spaces/support-faq.d.ts.map +1 -0
  405. package/dist/knowledge/spaces/support-faq.js +2 -0
  406. package/dist/knowledge/spaces/support-faq.js.map +1 -0
  407. package/dist/knowledge/spaces/uploaded-docs.d.ts +8 -0
  408. package/dist/knowledge/spaces/uploaded-docs.d.ts.map +1 -0
  409. package/dist/knowledge/spaces/uploaded-docs.js +2 -0
  410. package/dist/knowledge/spaces/uploaded-docs.js.map +1 -0
  411. package/dist/knowledge/spec.d.ts +53 -0
  412. package/dist/knowledge/spec.d.ts.map +1 -0
  413. package/dist/knowledge/spec.js +2 -0
  414. package/dist/knowledge/spec.js.map +1 -0
  415. package/dist/markdown.d.ts +22 -0
  416. package/dist/markdown.d.ts.map +1 -0
  417. package/dist/markdown.js +4 -0
  418. package/dist/markdown.js.map +1 -0
  419. package/dist/migrations.d.ts +53 -0
  420. package/dist/migrations.d.ts.map +1 -0
  421. package/dist/migrations.js +2 -0
  422. package/dist/migrations.js.map +1 -0
  423. package/dist/onboarding-base.d.ts +138 -0
  424. package/dist/onboarding-base.d.ts.map +1 -0
  425. package/dist/onboarding-base.js +2 -0
  426. package/dist/onboarding-base.js.map +1 -0
  427. package/dist/ownership.d.ts +76 -0
  428. package/dist/ownership.d.ts.map +1 -0
  429. package/dist/ownership.js +2 -0
  430. package/dist/ownership.js.map +1 -0
  431. package/dist/policy/engine.d.ts +40 -0
  432. package/dist/policy/engine.d.ts.map +1 -0
  433. package/dist/policy/engine.js +2 -0
  434. package/dist/policy/engine.js.map +1 -0
  435. package/dist/policy/opa-adapter.d.ts +46 -0
  436. package/dist/policy/opa-adapter.d.ts.map +1 -0
  437. package/dist/policy/opa-adapter.js +2 -0
  438. package/dist/policy/opa-adapter.js.map +1 -0
  439. package/dist/policy/spec.d.ts +115 -0
  440. package/dist/policy/spec.d.ts.map +1 -0
  441. package/dist/policy/spec.js +2 -0
  442. package/dist/policy/spec.js.map +1 -0
  443. package/dist/presentations.backcompat.d.ts +8 -0
  444. package/dist/presentations.backcompat.d.ts.map +1 -0
  445. package/dist/presentations.backcompat.js +2 -0
  446. package/dist/presentations.backcompat.js.map +1 -0
  447. package/dist/presentations.d.ts +97 -0
  448. package/dist/presentations.d.ts.map +1 -0
  449. package/dist/presentations.js +2 -0
  450. package/dist/presentations.js.map +1 -0
  451. package/dist/presentations.v2.d.ts +96 -0
  452. package/dist/presentations.v2.d.ts.map +1 -0
  453. package/dist/presentations.v2.js +2 -0
  454. package/dist/presentations.v2.js.map +1 -0
  455. package/dist/prompt.d.ts +61 -0
  456. package/dist/prompt.d.ts.map +1 -0
  457. package/dist/prompt.js +2 -0
  458. package/dist/prompt.js.map +1 -0
  459. package/dist/promptRegistry.d.ts +16 -0
  460. package/dist/promptRegistry.d.ts.map +1 -0
  461. package/dist/promptRegistry.js +2 -0
  462. package/dist/promptRegistry.js.map +1 -0
  463. package/dist/regenerator/adapters.d.ts +20 -0
  464. package/dist/regenerator/adapters.d.ts.map +1 -0
  465. package/dist/regenerator/adapters.js +0 -0
  466. package/dist/regenerator/executor.d.ts +71 -0
  467. package/dist/regenerator/executor.d.ts.map +1 -0
  468. package/dist/regenerator/executor.js +2 -0
  469. package/dist/regenerator/executor.js.map +1 -0
  470. package/dist/regenerator/index.d.ts +7 -0
  471. package/dist/regenerator/index.js +1 -0
  472. package/dist/regenerator/service.d.ts +34 -0
  473. package/dist/regenerator/service.d.ts.map +1 -0
  474. package/dist/regenerator/service.js +2 -0
  475. package/dist/regenerator/service.js.map +1 -0
  476. package/dist/regenerator/sinks.d.ts +27 -0
  477. package/dist/regenerator/sinks.d.ts.map +1 -0
  478. package/dist/regenerator/sinks.js +2 -0
  479. package/dist/regenerator/sinks.js.map +1 -0
  480. package/dist/regenerator/types.d.ts +108 -0
  481. package/dist/regenerator/types.d.ts.map +1 -0
  482. package/dist/regenerator/types.js +0 -0
  483. package/dist/regenerator/utils.d.ts +10 -0
  484. package/dist/regenerator/utils.d.ts.map +1 -0
  485. package/dist/regenerator/utils.js +2 -0
  486. package/dist/regenerator/utils.js.map +1 -0
  487. package/dist/registry.d.ts +73 -0
  488. package/dist/registry.d.ts.map +1 -0
  489. package/dist/registry.js +2 -0
  490. package/dist/registry.js.map +1 -0
  491. package/dist/resources.d.ts +65 -0
  492. package/dist/resources.d.ts.map +1 -0
  493. package/dist/resources.js +2 -0
  494. package/dist/resources.js.map +1 -0
  495. package/dist/schema/dist/EnumType.js +1 -0
  496. package/dist/schema/dist/FieldType.js +2 -0
  497. package/dist/schema/dist/FieldType.js.map +1 -0
  498. package/dist/schema/dist/ScalarTypeEnum.js +2 -0
  499. package/dist/schema/dist/ScalarTypeEnum.js.map +1 -0
  500. package/dist/schema/dist/SchemaModel.js +2 -0
  501. package/dist/schema/dist/SchemaModel.js.map +1 -0
  502. package/dist/schema/dist/index.js +1 -0
  503. package/dist/server/graphql-pothos.d.ts +32 -0
  504. package/dist/server/graphql-pothos.d.ts.map +1 -0
  505. package/dist/server/graphql-pothos.js +2 -0
  506. package/dist/server/graphql-pothos.js.map +1 -0
  507. package/dist/server/graphql-schema-export.d.ts +7 -0
  508. package/dist/server/graphql-schema-export.d.ts.map +1 -0
  509. package/dist/server/graphql-schema-export.js +2 -0
  510. package/dist/server/graphql-schema-export.js.map +1 -0
  511. package/dist/server/index.d.ts +9 -0
  512. package/dist/server/index.js +1 -0
  513. package/dist/server/provider-mcp.d.ts +52 -0
  514. package/dist/server/provider-mcp.d.ts.map +1 -0
  515. package/dist/server/provider-mcp.js +2 -0
  516. package/dist/server/provider-mcp.js.map +1 -0
  517. package/dist/server/rest-elysia.d.ts +41 -0
  518. package/dist/server/rest-elysia.d.ts.map +1 -0
  519. package/dist/server/rest-elysia.js +2 -0
  520. package/dist/server/rest-elysia.js.map +1 -0
  521. package/dist/server/rest-express.d.ts +17 -0
  522. package/dist/server/rest-express.d.ts.map +1 -0
  523. package/dist/server/rest-express.js +2 -0
  524. package/dist/server/rest-express.js.map +1 -0
  525. package/dist/server/rest-generic.d.ts +33 -0
  526. package/dist/server/rest-generic.d.ts.map +1 -0
  527. package/dist/server/rest-generic.js +2 -0
  528. package/dist/server/rest-generic.js.map +1 -0
  529. package/dist/server/rest-next-app.d.ts +36 -0
  530. package/dist/server/rest-next-app.d.ts.map +1 -0
  531. package/dist/server/rest-next-app.js +2 -0
  532. package/dist/server/rest-next-app.js.map +1 -0
  533. package/dist/server/rest-next-mcp.d.ts +12 -0
  534. package/dist/server/rest-next-mcp.d.ts.map +1 -0
  535. package/dist/server/rest-next-mcp.js +2 -0
  536. package/dist/server/rest-next-mcp.js.map +1 -0
  537. package/dist/server/rest-next-pages.d.ts +10 -0
  538. package/dist/server/rest-next-pages.d.ts.map +1 -0
  539. package/dist/server/rest-next-pages.js +2 -0
  540. package/dist/server/rest-next-pages.js.map +1 -0
  541. package/dist/spec.d.ts +172 -0
  542. package/dist/spec.d.ts.map +1 -0
  543. package/dist/spec.js +2 -0
  544. package/dist/spec.js.map +1 -0
  545. package/dist/telemetry/anomaly.d.ts +28 -0
  546. package/dist/telemetry/anomaly.d.ts.map +1 -0
  547. package/dist/telemetry/anomaly.js +2 -0
  548. package/dist/telemetry/anomaly.js.map +1 -0
  549. package/dist/telemetry/index.d.ts +4 -0
  550. package/dist/telemetry/index.js +1 -0
  551. package/dist/telemetry/spec.d.ts +99 -0
  552. package/dist/telemetry/spec.d.ts.map +1 -0
  553. package/dist/telemetry/spec.js +2 -0
  554. package/dist/telemetry/spec.js.map +1 -0
  555. package/dist/telemetry/tracker.d.ts +52 -0
  556. package/dist/telemetry/tracker.d.ts.map +1 -0
  557. package/dist/telemetry/tracker.js +2 -0
  558. package/dist/telemetry/tracker.js.map +1 -0
  559. package/dist/tests/index.d.ts +3 -0
  560. package/dist/tests/index.js +1 -0
  561. package/dist/tests/runner.d.ts +44 -0
  562. package/dist/tests/runner.d.ts.map +1 -0
  563. package/dist/tests/runner.js +2 -0
  564. package/dist/tests/runner.js.map +1 -0
  565. package/dist/tests/spec.d.ts +90 -0
  566. package/dist/tests/spec.d.ts.map +1 -0
  567. package/dist/tests/spec.js +2 -0
  568. package/dist/tests/spec.js.map +1 -0
  569. package/dist/themes.d.ts +56 -0
  570. package/dist/themes.d.ts.map +1 -0
  571. package/dist/themes.js +2 -0
  572. package/dist/themes.js.map +1 -0
  573. package/dist/translations/catalog.d.ts +29 -0
  574. package/dist/translations/catalog.d.ts.map +1 -0
  575. package/dist/translations/catalog.js +0 -0
  576. package/dist/translations/tenant.d.ts +16 -0
  577. package/dist/translations/tenant.d.ts.map +1 -0
  578. package/dist/translations/tenant.js +0 -0
  579. package/dist/types/all.d.ts +60 -0
  580. package/dist/types/all.js +0 -0
  581. package/dist/types.d.ts +86 -0
  582. package/dist/types.d.ts.map +1 -0
  583. package/dist/types.js +0 -0
  584. package/dist/workflow/adapters/db-adapter.d.ts +35 -0
  585. package/dist/workflow/adapters/db-adapter.d.ts.map +1 -0
  586. package/dist/workflow/adapters/db-adapter.js +2 -0
  587. package/dist/workflow/adapters/db-adapter.js.map +1 -0
  588. package/dist/workflow/adapters/file-adapter.d.ts +15 -0
  589. package/dist/workflow/adapters/file-adapter.d.ts.map +1 -0
  590. package/dist/workflow/adapters/file-adapter.js +2 -0
  591. package/dist/workflow/adapters/file-adapter.js.map +1 -0
  592. package/dist/workflow/adapters/index.d.ts +4 -0
  593. package/dist/workflow/adapters/index.js +1 -0
  594. package/dist/workflow/adapters/memory-store.d.ts +19 -0
  595. package/dist/workflow/adapters/memory-store.d.ts.map +1 -0
  596. package/dist/workflow/adapters/memory-store.js +2 -0
  597. package/dist/workflow/adapters/memory-store.js.map +1 -0
  598. package/dist/workflow/expression.d.ts +10 -0
  599. package/dist/workflow/expression.d.ts.map +1 -0
  600. package/dist/workflow/expression.js +2 -0
  601. package/dist/workflow/expression.js.map +1 -0
  602. package/dist/workflow/index.d.ts +10 -0
  603. package/dist/workflow/index.js +1 -0
  604. package/dist/workflow/runner.d.ts +75 -0
  605. package/dist/workflow/runner.d.ts.map +1 -0
  606. package/dist/workflow/runner.js +2 -0
  607. package/dist/workflow/runner.js.map +1 -0
  608. package/dist/workflow/sla-monitor.d.ts +21 -0
  609. package/dist/workflow/sla-monitor.d.ts.map +1 -0
  610. package/dist/workflow/sla-monitor.js +2 -0
  611. package/dist/workflow/sla-monitor.js.map +1 -0
  612. package/dist/workflow/spec.d.ts +100 -0
  613. package/dist/workflow/spec.d.ts.map +1 -0
  614. package/dist/workflow/spec.js +2 -0
  615. package/dist/workflow/spec.js.map +1 -0
  616. package/dist/workflow/state.d.ts +36 -0
  617. package/dist/workflow/state.d.ts.map +1 -0
  618. package/dist/workflow/state.js +0 -0
  619. package/dist/workflow/validation.d.ts +29 -0
  620. package/dist/workflow/validation.d.ts.map +1 -0
  621. package/dist/workflow/validation.js +2 -0
  622. package/dist/workflow/validation.js.map +1 -0
  623. package/package.json +403 -0
@@ -0,0 +1,383 @@
1
+ import { EventSpec } from "../events.js";
2
+ import { ContractSpec } from "../spec.js";
3
+ import { SpecRegistry } from "../registry.js";
4
+ import "../index.js";
5
+ import * as _lssm_lib_schema392 from "@lssm/lib.schema";
6
+ import { SchemaModel } from "@lssm/lib.schema";
7
+
8
+ //#region src/app-config/lifecycle-contracts.d.ts
9
+ declare const CreateTenantConfigDraftCommand: ContractSpec<SchemaModel<{
10
+ tenantId: {
11
+ type: _lssm_lib_schema392.FieldType<string, string>;
12
+ isOptional: false;
13
+ };
14
+ appId: {
15
+ type: _lssm_lib_schema392.FieldType<string, string>;
16
+ isOptional: false;
17
+ };
18
+ blueprintName: {
19
+ type: _lssm_lib_schema392.FieldType<string, string>;
20
+ isOptional: false;
21
+ };
22
+ blueprintVersion: {
23
+ type: _lssm_lib_schema392.FieldType<number, number>;
24
+ isOptional: false;
25
+ };
26
+ environment: {
27
+ type: _lssm_lib_schema392.FieldType<string, string>;
28
+ isOptional: true;
29
+ };
30
+ fromVersion: {
31
+ type: _lssm_lib_schema392.FieldType<number, number>;
32
+ isOptional: true;
33
+ };
34
+ createdBy: {
35
+ type: _lssm_lib_schema392.FieldType<string, string>;
36
+ isOptional: false;
37
+ };
38
+ }>, SchemaModel<{
39
+ version: {
40
+ type: _lssm_lib_schema392.FieldType<number, number>;
41
+ isOptional: false;
42
+ };
43
+ status: {
44
+ type: _lssm_lib_schema392.FieldType<string, string>;
45
+ isOptional: false;
46
+ };
47
+ createdAt: {
48
+ type: _lssm_lib_schema392.FieldType<Date, string>;
49
+ isOptional: false;
50
+ };
51
+ }>, {
52
+ ref: EventSpec<SchemaModel<{
53
+ tenantId: {
54
+ type: _lssm_lib_schema392.FieldType<string, string>;
55
+ isOptional: false;
56
+ };
57
+ appId: {
58
+ type: _lssm_lib_schema392.FieldType<string, string>;
59
+ isOptional: false;
60
+ };
61
+ version: {
62
+ type: _lssm_lib_schema392.FieldType<number, number>;
63
+ isOptional: false;
64
+ };
65
+ blueprintName: {
66
+ type: _lssm_lib_schema392.FieldType<string, string>;
67
+ isOptional: false;
68
+ };
69
+ blueprintVersion: {
70
+ type: _lssm_lib_schema392.FieldType<number, number>;
71
+ isOptional: false;
72
+ };
73
+ createdBy: {
74
+ type: _lssm_lib_schema392.FieldType<string, string>;
75
+ isOptional: false;
76
+ };
77
+ clonedFrom: {
78
+ type: _lssm_lib_schema392.FieldType<number, number>;
79
+ isOptional: true;
80
+ };
81
+ }>>;
82
+ when: string;
83
+ }[]>;
84
+ declare const PromoteTenantConfigToPreviewCommand: ContractSpec<SchemaModel<{
85
+ tenantId: {
86
+ type: _lssm_lib_schema392.FieldType<string, string>;
87
+ isOptional: false;
88
+ };
89
+ appId: {
90
+ type: _lssm_lib_schema392.FieldType<string, string>;
91
+ isOptional: false;
92
+ };
93
+ version: {
94
+ type: _lssm_lib_schema392.FieldType<number, number>;
95
+ isOptional: false;
96
+ };
97
+ promotedBy: {
98
+ type: _lssm_lib_schema392.FieldType<string, string>;
99
+ isOptional: false;
100
+ };
101
+ }>, SchemaModel<{
102
+ version: {
103
+ type: _lssm_lib_schema392.FieldType<number, number>;
104
+ isOptional: false;
105
+ };
106
+ status: {
107
+ type: _lssm_lib_schema392.FieldType<string, string>;
108
+ isOptional: false;
109
+ };
110
+ warnings: {
111
+ type: _lssm_lib_schema392.FieldType<string, string>;
112
+ isOptional: true;
113
+ isArray: true;
114
+ };
115
+ }>, {
116
+ ref: EventSpec<SchemaModel<{
117
+ tenantId: {
118
+ type: _lssm_lib_schema392.FieldType<string, string>;
119
+ isOptional: false;
120
+ };
121
+ appId: {
122
+ type: _lssm_lib_schema392.FieldType<string, string>;
123
+ isOptional: false;
124
+ };
125
+ version: {
126
+ type: _lssm_lib_schema392.FieldType<number, number>;
127
+ isOptional: false;
128
+ };
129
+ promotedBy: {
130
+ type: _lssm_lib_schema392.FieldType<string, string>;
131
+ isOptional: false;
132
+ };
133
+ warnings: {
134
+ type: _lssm_lib_schema392.FieldType<string, string>;
135
+ isOptional: true;
136
+ isArray: true;
137
+ };
138
+ }>>;
139
+ when: string;
140
+ }[]>;
141
+ declare const PublishTenantConfigCommand: ContractSpec<SchemaModel<{
142
+ tenantId: {
143
+ type: _lssm_lib_schema392.FieldType<string, string>;
144
+ isOptional: false;
145
+ };
146
+ appId: {
147
+ type: _lssm_lib_schema392.FieldType<string, string>;
148
+ isOptional: false;
149
+ };
150
+ version: {
151
+ type: _lssm_lib_schema392.FieldType<number, number>;
152
+ isOptional: false;
153
+ };
154
+ environment: {
155
+ type: _lssm_lib_schema392.FieldType<string, string>;
156
+ isOptional: true;
157
+ };
158
+ publishedBy: {
159
+ type: _lssm_lib_schema392.FieldType<string, string>;
160
+ isOptional: false;
161
+ };
162
+ changeSummary: {
163
+ type: _lssm_lib_schema392.FieldType<string, string>;
164
+ isOptional: true;
165
+ };
166
+ }>, SchemaModel<{
167
+ version: {
168
+ type: _lssm_lib_schema392.FieldType<number, number>;
169
+ isOptional: false;
170
+ };
171
+ status: {
172
+ type: _lssm_lib_schema392.FieldType<string, string>;
173
+ isOptional: false;
174
+ };
175
+ previousVersion: {
176
+ type: _lssm_lib_schema392.FieldType<number, number>;
177
+ isOptional: true;
178
+ };
179
+ publishedAt: {
180
+ type: _lssm_lib_schema392.FieldType<Date, string>;
181
+ isOptional: false;
182
+ };
183
+ }>, {
184
+ ref: EventSpec<SchemaModel<{
185
+ tenantId: {
186
+ type: _lssm_lib_schema392.FieldType<string, string>;
187
+ isOptional: false;
188
+ };
189
+ appId: {
190
+ type: _lssm_lib_schema392.FieldType<string, string>;
191
+ isOptional: false;
192
+ };
193
+ version: {
194
+ type: _lssm_lib_schema392.FieldType<number, number>;
195
+ isOptional: false;
196
+ };
197
+ previousVersion: {
198
+ type: _lssm_lib_schema392.FieldType<number, number>;
199
+ isOptional: true;
200
+ };
201
+ publishedBy: {
202
+ type: _lssm_lib_schema392.FieldType<string, string>;
203
+ isOptional: false;
204
+ };
205
+ changeSummary: {
206
+ type: _lssm_lib_schema392.FieldType<string, string>;
207
+ isOptional: true;
208
+ };
209
+ changedSections: {
210
+ type: _lssm_lib_schema392.FieldType<string, string>;
211
+ isOptional: true;
212
+ isArray: true;
213
+ };
214
+ }>>;
215
+ when: string;
216
+ }[]>;
217
+ declare const RollbackTenantConfigCommand: ContractSpec<SchemaModel<{
218
+ tenantId: {
219
+ type: _lssm_lib_schema392.FieldType<string, string>;
220
+ isOptional: false;
221
+ };
222
+ appId: {
223
+ type: _lssm_lib_schema392.FieldType<string, string>;
224
+ isOptional: false;
225
+ };
226
+ toVersion: {
227
+ type: _lssm_lib_schema392.FieldType<number, number>;
228
+ isOptional: false;
229
+ };
230
+ environment: {
231
+ type: _lssm_lib_schema392.FieldType<string, string>;
232
+ isOptional: true;
233
+ };
234
+ rolledBackBy: {
235
+ type: _lssm_lib_schema392.FieldType<string, string>;
236
+ isOptional: false;
237
+ };
238
+ reason: {
239
+ type: _lssm_lib_schema392.FieldType<string, string>;
240
+ isOptional: false;
241
+ };
242
+ }>, SchemaModel<{
243
+ newVersion: {
244
+ type: _lssm_lib_schema392.FieldType<number, number>;
245
+ isOptional: false;
246
+ };
247
+ status: {
248
+ type: _lssm_lib_schema392.FieldType<string, string>;
249
+ isOptional: false;
250
+ };
251
+ rolledBackFrom: {
252
+ type: _lssm_lib_schema392.FieldType<number, number>;
253
+ isOptional: false;
254
+ };
255
+ }>, {
256
+ ref: EventSpec<SchemaModel<{
257
+ tenantId: {
258
+ type: _lssm_lib_schema392.FieldType<string, string>;
259
+ isOptional: false;
260
+ };
261
+ appId: {
262
+ type: _lssm_lib_schema392.FieldType<string, string>;
263
+ isOptional: false;
264
+ };
265
+ newVersion: {
266
+ type: _lssm_lib_schema392.FieldType<number, number>;
267
+ isOptional: false;
268
+ };
269
+ rolledBackFrom: {
270
+ type: _lssm_lib_schema392.FieldType<number, number>;
271
+ isOptional: false;
272
+ };
273
+ rolledBackTo: {
274
+ type: _lssm_lib_schema392.FieldType<number, number>;
275
+ isOptional: false;
276
+ };
277
+ rolledBackBy: {
278
+ type: _lssm_lib_schema392.FieldType<string, string>;
279
+ isOptional: false;
280
+ };
281
+ reason: {
282
+ type: _lssm_lib_schema392.FieldType<string, string>;
283
+ isOptional: false;
284
+ };
285
+ }>>;
286
+ when: string;
287
+ }[]>;
288
+ declare const ListTenantConfigVersionsQuery: ContractSpec<SchemaModel<{
289
+ tenantId: {
290
+ type: _lssm_lib_schema392.FieldType<string, string>;
291
+ isOptional: false;
292
+ };
293
+ appId: {
294
+ type: _lssm_lib_schema392.FieldType<string, string>;
295
+ isOptional: false;
296
+ };
297
+ }>, SchemaModel<{
298
+ versions: {
299
+ type: SchemaModel<{
300
+ meta: {
301
+ type: _lssm_lib_schema392.FieldType<Record<string, unknown>, Record<string, unknown>>;
302
+ isOptional: false;
303
+ };
304
+ config: {
305
+ type: _lssm_lib_schema392.FieldType<Record<string, unknown>, Record<string, unknown>>;
306
+ isOptional: false;
307
+ };
308
+ }>;
309
+ isOptional: false;
310
+ isArray: true;
311
+ };
312
+ transitions: {
313
+ type: SchemaModel<{
314
+ tenantId: {
315
+ type: _lssm_lib_schema392.FieldType<string, string>;
316
+ isOptional: false;
317
+ };
318
+ appId: {
319
+ type: _lssm_lib_schema392.FieldType<string, string>;
320
+ isOptional: false;
321
+ };
322
+ fromStatus: {
323
+ type: _lssm_lib_schema392.FieldType<string, string>;
324
+ isOptional: false;
325
+ };
326
+ toStatus: {
327
+ type: _lssm_lib_schema392.FieldType<string, string>;
328
+ isOptional: false;
329
+ };
330
+ version: {
331
+ type: _lssm_lib_schema392.FieldType<number, number>;
332
+ isOptional: false;
333
+ };
334
+ timestamp: {
335
+ type: _lssm_lib_schema392.FieldType<Date, string>;
336
+ isOptional: false;
337
+ };
338
+ actor: {
339
+ type: _lssm_lib_schema392.FieldType<string, string>;
340
+ isOptional: false;
341
+ };
342
+ reason: {
343
+ type: _lssm_lib_schema392.FieldType<string, string>;
344
+ isOptional: true;
345
+ };
346
+ }>;
347
+ isOptional: true;
348
+ isArray: true;
349
+ };
350
+ }>, undefined>;
351
+ declare const GetTenantConfigVersionQuery: ContractSpec<SchemaModel<{
352
+ tenantId: {
353
+ type: _lssm_lib_schema392.FieldType<string, string>;
354
+ isOptional: false;
355
+ };
356
+ appId: {
357
+ type: _lssm_lib_schema392.FieldType<string, string>;
358
+ isOptional: false;
359
+ };
360
+ version: {
361
+ type: _lssm_lib_schema392.FieldType<number, number>;
362
+ isOptional: false;
363
+ };
364
+ }>, SchemaModel<{
365
+ version: {
366
+ type: SchemaModel<{
367
+ meta: {
368
+ type: _lssm_lib_schema392.FieldType<Record<string, unknown>, Record<string, unknown>>;
369
+ isOptional: false;
370
+ };
371
+ config: {
372
+ type: _lssm_lib_schema392.FieldType<Record<string, unknown>, Record<string, unknown>>;
373
+ isOptional: false;
374
+ };
375
+ }>;
376
+ isOptional: false;
377
+ };
378
+ }>, undefined>;
379
+ declare const lifecycleContracts: Record<string, ContractSpec<any, any>>;
380
+ declare function registerAppConfigLifecycleContracts(registry: SpecRegistry): SpecRegistry;
381
+ //#endregion
382
+ export { CreateTenantConfigDraftCommand, GetTenantConfigVersionQuery, ListTenantConfigVersionsQuery, PromoteTenantConfigToPreviewCommand, PublishTenantConfigCommand, RollbackTenantConfigCommand, lifecycleContracts, registerAppConfigLifecycleContracts };
383
+ //# sourceMappingURL=lifecycle-contracts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lifecycle-contracts.d.ts","names":[],"sources":["../../src/app-config/lifecycle-contracts.ts"],"sourcesContent":[],"mappings":";;;;;;;;cAwEa,gCAA8B,aAAA;;UAyBzC,mBAAA,CAAA;;;EAzBW,KAAA,EAAA;IAyBX,IAAA,+BAAA,CAAA,MAAA,EAAA,MAAA,CAAA;;;;;;;EAzByC,gBAAA,EAAA;IAAA,IAAA,+BAAA,CAAA,MAAA,EAAA,MAAA,CAAA;;;;;;;;;;;;;;EAAA,CAAA;CAAA,CAAA,aAAA,CAAA;EAkD9B,OAAA,EAAA;IAyBX,IAAA,EA3EyC,mBAAA,CAAA,SA2EzC,CAAA,MAAA,EAAA,MAAA,CAAA;;;;IAzB8C,IAAA,+BAAA,CAAA,MAAA,EAAA,MAAA,CAAA;IAAA,UAAA,EAAA,KAAA;;;;;;;;;;;IAAA,CAAA;IAAA,KAAA,EAAA;MAoDnC,IAAA,+BAyBX,CAAA,MAAA,EAAA,MAAA,CAAA;MAAA,UAAA,EAAA,KAAA;;;;;;IAzBqC,aAAA,EAAA;MAAA,IAAA,+BAAA,CAAA,MAAA,EAAA,MAAA,CAAA;;;;;;;;;;;;;;;EAAA,CAAA,CAAA,CAAA;EAAA,IAAA,EAAA,MAAA;AAgDvC,CAAA,EAAA,CAAa;AAyBX,cA7HW,mCA6HX,EA7H8C,YA6H9C,CA7H8C,WA6H9C,CAAA;;UApGA,mBAAA,CAAA;;;;IA2EsC,IAAA,+BAAA,CAAA,MAAA,EAAA,MAAA,CAAA;IAAA,UAAA,EAAA,KAAA;;;;;;;;;;;;UApGQ,mBAAA,CAAA;IAoGR,UAAA,EAAA,KAAA;EAAA,CAAA;EA+C3B,MAAA,EAAA;IAiBX,IAAA,+BAAA,CAAA,MAAA,EAAA,MAAA,CAAA;;EAjBwC,CAAA;;;;;;;;;;;;;;;;;;;IAAA,CAAA;IAAA,UAAA,EAAA;MAmC7B,IAAA,+BAiBX,CAAA,MAAA,EAAA,MAAA,CAAA;MAAA,UAAA,EAAA,KAAA;;;MAjBsC,IAAA,+BAAA,CAAA,MAAA,EAAA,MAAA,CAAA;;;;;;;cAlI3B,4BAA0B,aAAA;;IAkIC,IAAA,EAzGtC,mBAAA,CAAA,SAyGsC,CAAA,MAAA,EAAA,MAAA,CAAA;IAAA,UAAA,EAAA,KAAA;EAmB3B,CAAA;EASG,KAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;UA9JuB,mBAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAgD1B,6BAA2B,aAAA;;UAyBtC,mBAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;UAzBsC,mBAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cA+C3B,+BAA6B,aAAA;;UAiBxC,mBAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAkBW,6BAA2B,aAAA;;UAiBtC,mBAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;cAEW,oBAAoB,eAAe;iBAShC,mCAAA,WAA8C,eAAY"}
@@ -0,0 +1,2 @@
1
+ import{l as e}from"../schema/dist/ScalarTypeEnum.js";import{t}from"../schema/dist/SchemaModel.js";import"../schema/dist/index.js";import{defineCommand as n,defineQuery as r}from"../spec.js";import{OwnersEnum as i,StabilityEnum as a,TagsEnum as o}from"../ownership.js";import{ConfigDraftCreatedEvent as s,ConfigPromotedToPreviewEvent as c,ConfigPublishedEvent as l,ConfigRolledBackEvent as u}from"./events.js";const d={auth:`admin`,policies:[{name:`platform.app-config.manage`,version:1}]},f={auth:`admin`,policies:[{name:`platform.app-config.read`,version:1}]},p=new t({name:`ConfigVersionRecord`,fields:{meta:{type:e.JSONObject(),isOptional:!1},config:{type:e.JSONObject(),isOptional:!1}}}),m=new t({name:`ConfigTransitionRecord`,fields:{tenantId:{type:e.ID(),isOptional:!1},appId:{type:e.ID(),isOptional:!1},fromStatus:{type:e.String_unsecure(),isOptional:!1},toStatus:{type:e.String_unsecure(),isOptional:!1},version:{type:e.Int_unsecure(),isOptional:!1},timestamp:{type:e.DateTime(),isOptional:!1},actor:{type:e.String_unsecure(),isOptional:!1},reason:{type:e.String_unsecure(),isOptional:!0}}}),h=new t({name:`CreateTenantConfigDraftInput`,fields:{tenantId:{type:e.ID(),isOptional:!1},appId:{type:e.ID(),isOptional:!1},blueprintName:{type:e.String_unsecure(),isOptional:!1},blueprintVersion:{type:e.Int_unsecure(),isOptional:!1},environment:{type:e.String_unsecure(),isOptional:!0},fromVersion:{type:e.Int_unsecure(),isOptional:!0},createdBy:{type:e.String_unsecure(),isOptional:!1}}}),g=new t({name:`CreateTenantConfigDraftOutput`,fields:{version:{type:e.Int_unsecure(),isOptional:!1},status:{type:e.String_unsecure(),isOptional:!1},createdAt:{type:e.DateTime(),isOptional:!1}}}),_=n({meta:{name:`appConfig.lifecycle.createDraft`,version:1,description:`Creates a new draft tenant config version.`,owners:[i.PlatformSigil],tags:[o.Hygiene,`app-config`],stability:a.Experimental,goal:`Allow operators to start editing a new tenant config version.`,context:`Invoked by the Studio or automation when starting a new configuration run.`},io:{input:h,output:g},policy:d,sideEffects:{emits:[{ref:s,when:`after successful draft creation`}]}}),v=new t({name:`PromoteTenantConfigPreviewInput`,fields:{tenantId:{type:e.ID(),isOptional:!1},appId:{type:e.ID(),isOptional:!1},version:{type:e.Int_unsecure(),isOptional:!1},promotedBy:{type:e.String_unsecure(),isOptional:!1}}}),y=new t({name:`PromoteTenantConfigPreviewOutput`,fields:{version:{type:e.Int_unsecure(),isOptional:!1},status:{type:e.String_unsecure(),isOptional:!1},warnings:{type:e.String_unsecure(),isOptional:!0,isArray:!0}}}),b=n({meta:{name:`appConfig.lifecycle.promoteToPreview`,version:1,description:`Promotes a draft tenant config to preview/testing state.`,owners:[i.PlatformSigil],tags:[o.Hygiene,`app-config`],stability:a.Experimental,goal:`Enable validation and testing of draft configurations.`,context:`Called when a draft passes initial checks and should be exposed to preview environments.`},io:{input:v,output:y},policy:d,sideEffects:{emits:[{ref:c,when:`after promotion to preview`}]}}),x=new t({name:`PublishTenantConfigInput`,fields:{tenantId:{type:e.ID(),isOptional:!1},appId:{type:e.ID(),isOptional:!1},version:{type:e.Int_unsecure(),isOptional:!1},environment:{type:e.String_unsecure(),isOptional:!0},publishedBy:{type:e.String_unsecure(),isOptional:!1},changeSummary:{type:e.String_unsecure(),isOptional:!0}}}),S=new t({name:`PublishTenantConfigOutput`,fields:{version:{type:e.Int_unsecure(),isOptional:!1},status:{type:e.String_unsecure(),isOptional:!1},previousVersion:{type:e.Int_unsecure(),isOptional:!0},publishedAt:{type:e.DateTime(),isOptional:!1}}}),C=n({meta:{name:`appConfig.lifecycle.publish`,version:1,description:`Publishes a preview tenant config to production.`,owners:[i.PlatformSigil],tags:[o.Hygiene,`app-config`],stability:a.Experimental,goal:`Promote tested configurations to production safely.`,context:`Triggered after validation passes and change management approvals are complete.`},io:{input:x,output:S},policy:d,sideEffects:{emits:[{ref:l,when:`after publish succeeds`}]}}),w=new t({name:`RollbackTenantConfigInput`,fields:{tenantId:{type:e.ID(),isOptional:!1},appId:{type:e.ID(),isOptional:!1},toVersion:{type:e.Int_unsecure(),isOptional:!1},environment:{type:e.String_unsecure(),isOptional:!0},rolledBackBy:{type:e.String_unsecure(),isOptional:!1},reason:{type:e.String_unsecure(),isOptional:!1}}}),T=new t({name:`RollbackTenantConfigOutput`,fields:{newVersion:{type:e.Int_unsecure(),isOptional:!1},status:{type:e.String_unsecure(),isOptional:!1},rolledBackFrom:{type:e.Int_unsecure(),isOptional:!1}}}),E=n({meta:{name:`appConfig.lifecycle.rollback`,version:1,description:`Rolls back to a previously published tenant config version.`,owners:[i.PlatformSigil],tags:[o.Hygiene,`app-config`],stability:a.Experimental,goal:`Provide rapid recovery when new configs regress production.`,context:`Called manually or automatically when monitoring detects regression and a rollback is required.`},io:{input:w,output:T},policy:d,sideEffects:{emits:[{ref:u,when:`after rollback completes`}]}}),D=new t({name:`ListTenantConfigVersionsInput`,fields:{tenantId:{type:e.ID(),isOptional:!1},appId:{type:e.ID(),isOptional:!1}}}),O=new t({name:`ListTenantConfigVersionsOutput`,fields:{versions:{type:p,isOptional:!1,isArray:!0},transitions:{type:m,isOptional:!0,isArray:!0}}}),k=r({meta:{name:`appConfig.lifecycle.listVersions`,version:1,description:`Lists all versions of a tenant configuration.`,owners:[i.PlatformSigil],tags:[`app-config`,o.Hygiene],stability:a.Experimental,goal:`Support lifecycle views and change audit tooling.`,context:`Used by the Studio to render history timelines and by automation for change tracking.`},io:{input:D,output:O},policy:f}),A=new t({name:`GetTenantConfigVersionInput`,fields:{tenantId:{type:e.ID(),isOptional:!1},appId:{type:e.ID(),isOptional:!1},version:{type:e.Int_unsecure(),isOptional:!1}}}),j=new t({name:`GetTenantConfigVersionOutput`,fields:{version:{type:p,isOptional:!1}}}),M=r({meta:{name:`appConfig.lifecycle.getVersion`,version:1,description:`Fetches a single tenant config version by id.`,owners:[i.PlatformSigil],tags:[`app-config`,o.Hygiene],stability:a.Experimental,goal:`Allow detail drill-down for lifecycle entries.`,context:`Used by automation to fetch config payloads for comparison or export.`},io:{input:A,output:j},policy:f}),N={CreateTenantConfigDraftCommand:_,PromoteTenantConfigToPreviewCommand:b,PublishTenantConfigCommand:C,RollbackTenantConfigCommand:E,ListTenantConfigVersionsQuery:k,GetTenantConfigVersionQuery:M};function P(e){return e.register(_).register(b).register(C).register(E).register(k).register(M)}export{_ as CreateTenantConfigDraftCommand,M as GetTenantConfigVersionQuery,k as ListTenantConfigVersionsQuery,b as PromoteTenantConfigToPreviewCommand,C as PublishTenantConfigCommand,E as RollbackTenantConfigCommand,N as lifecycleContracts,P as registerAppConfigLifecycleContracts};
2
+ //# sourceMappingURL=lifecycle-contracts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lifecycle-contracts.js","names":["SchemaModel","ScalarTypeEnum","lifecycleContracts: Record<string, ContractSpec<any, any>>"],"sources":["../../src/app-config/lifecycle-contracts.ts"],"sourcesContent":["import { SchemaModel, ScalarTypeEnum } from '@lssm/lib.schema';\nimport type { ContractSpec } from '../spec';\nimport { defineCommand, defineQuery } from '../spec';\nimport { OwnersEnum, StabilityEnum, TagsEnum } from '../ownership';\nimport type { SpecRegistry } from '../registry';\nimport {\n ConfigDraftCreatedEvent,\n ConfigPromotedToPreviewEvent,\n ConfigPublishedEvent,\n ConfigRolledBackEvent,\n} from './events';\n\nconst LifecyclePolicy = {\n auth: 'admin' as const,\n policies: [{ name: 'platform.app-config.manage', version: 1 }],\n};\n\nconst LifecycleReadPolicy = {\n auth: 'admin' as const,\n policies: [{ name: 'platform.app-config.read', version: 1 }],\n};\n\nconst ConfigVersionRecord = new SchemaModel({\n name: 'ConfigVersionRecord',\n fields: {\n meta: { type: ScalarTypeEnum.JSONObject(), isOptional: false },\n config: { type: ScalarTypeEnum.JSONObject(), isOptional: false },\n },\n});\n\nconst ConfigTransitionRecord = new SchemaModel({\n name: 'ConfigTransitionRecord',\n fields: {\n tenantId: { type: ScalarTypeEnum.ID(), isOptional: false },\n appId: { type: ScalarTypeEnum.ID(), isOptional: false },\n fromStatus: {\n type: ScalarTypeEnum.String_unsecure(),\n isOptional: false,\n },\n toStatus: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n version: { type: ScalarTypeEnum.Int_unsecure(), isOptional: false },\n timestamp: { type: ScalarTypeEnum.DateTime(), isOptional: false },\n actor: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n reason: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n },\n});\n\nconst CreateDraftInput = new SchemaModel({\n name: 'CreateTenantConfigDraftInput',\n fields: {\n tenantId: { type: ScalarTypeEnum.ID(), isOptional: false },\n appId: { type: ScalarTypeEnum.ID(), isOptional: false },\n blueprintName: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n blueprintVersion: {\n type: ScalarTypeEnum.Int_unsecure(),\n isOptional: false,\n },\n environment: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n fromVersion: { type: ScalarTypeEnum.Int_unsecure(), isOptional: true },\n createdBy: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n },\n});\n\nconst CreateDraftOutput = new SchemaModel({\n name: 'CreateTenantConfigDraftOutput',\n fields: {\n version: { type: ScalarTypeEnum.Int_unsecure(), isOptional: false },\n status: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n createdAt: { type: ScalarTypeEnum.DateTime(), isOptional: false },\n },\n});\n\nexport const CreateTenantConfigDraftCommand = defineCommand({\n meta: {\n name: 'appConfig.lifecycle.createDraft',\n version: 1,\n description: 'Creates a new draft tenant config version.',\n owners: [OwnersEnum.PlatformSigil],\n tags: [TagsEnum.Hygiene, 'app-config'],\n stability: StabilityEnum.Experimental,\n goal: 'Allow operators to start editing a new tenant config version.',\n context:\n 'Invoked by the Studio or automation when starting a new configuration run.',\n },\n io: {\n input: CreateDraftInput,\n output: CreateDraftOutput,\n },\n policy: LifecyclePolicy,\n sideEffects: {\n emits: [\n {\n ref: ConfigDraftCreatedEvent,\n when: 'after successful draft creation',\n },\n ],\n },\n});\n\nconst PromotePreviewInput = new SchemaModel({\n name: 'PromoteTenantConfigPreviewInput',\n fields: {\n tenantId: { type: ScalarTypeEnum.ID(), isOptional: false },\n appId: { type: ScalarTypeEnum.ID(), isOptional: false },\n version: { type: ScalarTypeEnum.Int_unsecure(), isOptional: false },\n promotedBy: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n },\n});\n\nconst PromotePreviewOutput = new SchemaModel({\n name: 'PromoteTenantConfigPreviewOutput',\n fields: {\n version: { type: ScalarTypeEnum.Int_unsecure(), isOptional: false },\n status: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n warnings: {\n type: ScalarTypeEnum.String_unsecure(),\n isOptional: true,\n isArray: true,\n },\n },\n});\n\nexport const PromoteTenantConfigToPreviewCommand = defineCommand({\n meta: {\n name: 'appConfig.lifecycle.promoteToPreview',\n version: 1,\n description: 'Promotes a draft tenant config to preview/testing state.',\n owners: [OwnersEnum.PlatformSigil],\n tags: [TagsEnum.Hygiene, 'app-config'],\n stability: StabilityEnum.Experimental,\n goal: 'Enable validation and testing of draft configurations.',\n context:\n 'Called when a draft passes initial checks and should be exposed to preview environments.',\n },\n io: {\n input: PromotePreviewInput,\n output: PromotePreviewOutput,\n },\n policy: LifecyclePolicy,\n sideEffects: {\n emits: [\n {\n ref: ConfigPromotedToPreviewEvent,\n when: 'after promotion to preview',\n },\n ],\n },\n});\n\nconst PublishConfigInput = new SchemaModel({\n name: 'PublishTenantConfigInput',\n fields: {\n tenantId: { type: ScalarTypeEnum.ID(), isOptional: false },\n appId: { type: ScalarTypeEnum.ID(), isOptional: false },\n version: { type: ScalarTypeEnum.Int_unsecure(), isOptional: false },\n environment: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n publishedBy: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n changeSummary: {\n type: ScalarTypeEnum.String_unsecure(),\n isOptional: true,\n },\n },\n});\n\nconst PublishConfigOutput = new SchemaModel({\n name: 'PublishTenantConfigOutput',\n fields: {\n version: { type: ScalarTypeEnum.Int_unsecure(), isOptional: false },\n status: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n previousVersion: { type: ScalarTypeEnum.Int_unsecure(), isOptional: true },\n publishedAt: { type: ScalarTypeEnum.DateTime(), isOptional: false },\n },\n});\n\nexport const PublishTenantConfigCommand = defineCommand({\n meta: {\n name: 'appConfig.lifecycle.publish',\n version: 1,\n description: 'Publishes a preview tenant config to production.',\n owners: [OwnersEnum.PlatformSigil],\n tags: [TagsEnum.Hygiene, 'app-config'],\n stability: StabilityEnum.Experimental,\n goal: 'Promote tested configurations to production safely.',\n context:\n 'Triggered after validation passes and change management approvals are complete.',\n },\n io: {\n input: PublishConfigInput,\n output: PublishConfigOutput,\n },\n policy: LifecyclePolicy,\n sideEffects: {\n emits: [\n {\n ref: ConfigPublishedEvent,\n when: 'after publish succeeds',\n },\n ],\n },\n});\n\nconst RollbackConfigInput = new SchemaModel({\n name: 'RollbackTenantConfigInput',\n fields: {\n tenantId: { type: ScalarTypeEnum.ID(), isOptional: false },\n appId: { type: ScalarTypeEnum.ID(), isOptional: false },\n toVersion: { type: ScalarTypeEnum.Int_unsecure(), isOptional: false },\n environment: { type: ScalarTypeEnum.String_unsecure(), isOptional: true },\n rolledBackBy: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n reason: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n },\n});\n\nconst RollbackConfigOutput = new SchemaModel({\n name: 'RollbackTenantConfigOutput',\n fields: {\n newVersion: { type: ScalarTypeEnum.Int_unsecure(), isOptional: false },\n status: { type: ScalarTypeEnum.String_unsecure(), isOptional: false },\n rolledBackFrom: { type: ScalarTypeEnum.Int_unsecure(), isOptional: false },\n },\n});\n\nexport const RollbackTenantConfigCommand = defineCommand({\n meta: {\n name: 'appConfig.lifecycle.rollback',\n version: 1,\n description: 'Rolls back to a previously published tenant config version.',\n owners: [OwnersEnum.PlatformSigil],\n tags: [TagsEnum.Hygiene, 'app-config'],\n stability: StabilityEnum.Experimental,\n goal: 'Provide rapid recovery when new configs regress production.',\n context:\n 'Called manually or automatically when monitoring detects regression and a rollback is required.',\n },\n io: {\n input: RollbackConfigInput,\n output: RollbackConfigOutput,\n },\n policy: LifecyclePolicy,\n sideEffects: {\n emits: [\n {\n ref: ConfigRolledBackEvent,\n when: 'after rollback completes',\n },\n ],\n },\n});\n\nconst ListVersionsInput = new SchemaModel({\n name: 'ListTenantConfigVersionsInput',\n fields: {\n tenantId: { type: ScalarTypeEnum.ID(), isOptional: false },\n appId: { type: ScalarTypeEnum.ID(), isOptional: false },\n },\n});\n\nconst ListVersionsOutput = new SchemaModel({\n name: 'ListTenantConfigVersionsOutput',\n fields: {\n versions: { type: ConfigVersionRecord, isOptional: false, isArray: true },\n transitions: {\n type: ConfigTransitionRecord,\n isOptional: true,\n isArray: true,\n },\n },\n});\n\nexport const ListTenantConfigVersionsQuery = defineQuery({\n meta: {\n name: 'appConfig.lifecycle.listVersions',\n version: 1,\n description: 'Lists all versions of a tenant configuration.',\n owners: [OwnersEnum.PlatformSigil],\n tags: ['app-config', TagsEnum.Hygiene],\n stability: StabilityEnum.Experimental,\n goal: 'Support lifecycle views and change audit tooling.',\n context:\n 'Used by the Studio to render history timelines and by automation for change tracking.',\n },\n io: {\n input: ListVersionsInput,\n output: ListVersionsOutput,\n },\n policy: LifecycleReadPolicy,\n});\n\nconst GetVersionInput = new SchemaModel({\n name: 'GetTenantConfigVersionInput',\n fields: {\n tenantId: { type: ScalarTypeEnum.ID(), isOptional: false },\n appId: { type: ScalarTypeEnum.ID(), isOptional: false },\n version: { type: ScalarTypeEnum.Int_unsecure(), isOptional: false },\n },\n});\n\nconst GetVersionOutput = new SchemaModel({\n name: 'GetTenantConfigVersionOutput',\n fields: {\n version: { type: ConfigVersionRecord, isOptional: false },\n },\n});\n\nexport const GetTenantConfigVersionQuery = defineQuery({\n meta: {\n name: 'appConfig.lifecycle.getVersion',\n version: 1,\n description: 'Fetches a single tenant config version by id.',\n owners: [OwnersEnum.PlatformSigil],\n tags: ['app-config', TagsEnum.Hygiene],\n stability: StabilityEnum.Experimental,\n goal: 'Allow detail drill-down for lifecycle entries.',\n context:\n 'Used by automation to fetch config payloads for comparison or export.',\n },\n io: {\n input: GetVersionInput,\n output: GetVersionOutput,\n },\n policy: LifecycleReadPolicy,\n});\n\nexport const lifecycleContracts: Record<string, ContractSpec<any, any>> = {\n CreateTenantConfigDraftCommand,\n PromoteTenantConfigToPreviewCommand,\n PublishTenantConfigCommand,\n RollbackTenantConfigCommand,\n ListTenantConfigVersionsQuery,\n GetTenantConfigVersionQuery,\n};\n\nexport function registerAppConfigLifecycleContracts(registry: SpecRegistry) {\n return registry\n .register(CreateTenantConfigDraftCommand)\n .register(PromoteTenantConfigToPreviewCommand)\n .register(PublishTenantConfigCommand)\n .register(RollbackTenantConfigCommand)\n .register(ListTenantConfigVersionsQuery)\n .register(GetTenantConfigVersionQuery);\n}\n\n\n"],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ import { TenantAppConfig } from "./spec.js";
2
+
3
+ //#region src/app-config/lifecycle.d.ts
4
+ type ConfigStatus = 'draft' | 'preview' | 'published' | 'archived' | 'superseded';
5
+ interface TenantAppConfigVersion {
6
+ meta: TenantAppConfig['meta'];
7
+ config: TenantAppConfig;
8
+ }
9
+ interface ConfigTransition {
10
+ tenantId: string;
11
+ appId: string;
12
+ fromStatus: ConfigStatus;
13
+ toStatus: ConfigStatus;
14
+ version: number;
15
+ timestamp: string | Date;
16
+ actor: string;
17
+ reason?: string;
18
+ }
19
+ interface ConfigVersionHistory {
20
+ tenantId: string;
21
+ appId: string;
22
+ versions: TenantAppConfigVersion[];
23
+ transitions: ConfigTransition[];
24
+ currentPublished?: number;
25
+ }
26
+ //#endregion
27
+ export { ConfigStatus, ConfigTransition, ConfigVersionHistory, TenantAppConfigVersion };
28
+ //# sourceMappingURL=lifecycle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lifecycle.d.ts","names":[],"sources":["../../src/app-config/lifecycle.ts"],"sourcesContent":[],"mappings":";;;KAEY,YAAA;UAOK,sBAAA;EAPL,IAAA,EAQJ,eARgB,CAAA,MAAA,CAAA;EAOP,MAAA,EAEP,eAFO;AAKjB;AAGc,UAHG,gBAAA,CAGH;EACF,QAAA,EAAA,MAAA;EAEU,KAAA,EAAA,MAAA;EAAI,UAAA,EAHZ,YAGY;EAKT,QAAA,EAPL,YAOK;;sBALK;;;;UAKL,oBAAA;;;YAGL;eACG"}
File without changes
@@ -0,0 +1,115 @@
1
+ import { ResolvedBranding } from "./branding.js";
2
+ import { PolicyRef, PolicyRegistry, PolicySpec } from "../policy/spec.js";
3
+ import { TelemetryRegistry, TelemetrySpec } from "../telemetry/spec.js";
4
+ import { CapabilityRef, CapabilityRegistry, CapabilitySpec } from "../capabilities.js";
5
+ import { ExperimentRef, ExperimentRegistry, ExperimentSpec } from "../experiments/spec.js";
6
+ import { FeatureModuleSpec, FeatureRef, FeatureRegistry } from "../features.js";
7
+ import { DataViewRegistry, DataViewSpec } from "../data-views.js";
8
+ import { WorkflowRegistry, WorkflowSpec } from "../workflow/spec.js";
9
+ import { ThemeRegistry, ThemeSpec } from "../themes.js";
10
+ import { IntegrationSpec, IntegrationSpecRegistry } from "../integrations/spec.js";
11
+ import { IntegrationConnection } from "../integrations/connection.js";
12
+ import { AppIntegrationBinding } from "../integrations/binding.js";
13
+ import { KnowledgeSpaceRegistry, KnowledgeSpaceSpec } from "../knowledge/spec.js";
14
+ import { KnowledgeSourceConfig } from "../knowledge/source.js";
15
+ import { AppKnowledgeBinding } from "../knowledge/binding.js";
16
+ import { Locale, TranslationEntry } from "../translations/catalog.js";
17
+ import { AppBlueprintSpec, AppIntegrationSlot, AppRouteConfig, AppThemeBinding, FeatureFlagState, SpecPointer, TelemetryBinding, TenantAppConfig, TranslationCatalogPointer } from "./spec.js";
18
+
19
+ //#region src/app-config/runtime.d.ts
20
+ interface ResolvedIntegration {
21
+ slot: AppIntegrationSlot;
22
+ binding: AppIntegrationBinding;
23
+ connection: IntegrationConnection;
24
+ spec: IntegrationSpec;
25
+ }
26
+ interface ResolvedKnowledge {
27
+ binding: AppKnowledgeBinding;
28
+ space: KnowledgeSpaceSpec;
29
+ sources: KnowledgeSourceConfig[];
30
+ }
31
+ interface ResolvedTranslation {
32
+ defaultLocale: Locale;
33
+ supportedLocales: Locale[];
34
+ blueprintCatalog?: TranslationCatalogPointer;
35
+ tenantOverrides: TranslationEntry[];
36
+ }
37
+ interface ResolvedAppConfig {
38
+ appId: string;
39
+ tenantId: string;
40
+ environment?: string;
41
+ blueprintName: string;
42
+ blueprintVersion: number;
43
+ configVersion: number;
44
+ capabilities: {
45
+ enabled: CapabilityRef[];
46
+ disabled: CapabilityRef[];
47
+ };
48
+ features: {
49
+ include: FeatureRef[];
50
+ exclude: FeatureRef[];
51
+ };
52
+ dataViews: Record<string, SpecPointer>;
53
+ workflows: Record<string, SpecPointer>;
54
+ policies: PolicyRef[];
55
+ theme?: AppThemeBinding;
56
+ telemetry?: TelemetryBinding;
57
+ experiments: {
58
+ catalog: ExperimentRef[];
59
+ active: ExperimentRef[];
60
+ paused: ExperimentRef[];
61
+ };
62
+ featureFlags: FeatureFlagState[];
63
+ routes: AppRouteConfig[];
64
+ integrations: ResolvedIntegration[];
65
+ knowledge: ResolvedKnowledge[];
66
+ translation: ResolvedTranslation;
67
+ branding: ResolvedBranding;
68
+ notes?: string;
69
+ }
70
+ interface AppComposition {
71
+ resolved: ResolvedAppConfig;
72
+ capabilities: CapabilitySpec[];
73
+ features: FeatureModuleSpec[];
74
+ dataViews: Record<string, DataViewSpec>;
75
+ workflows: Record<string, WorkflowSpec>;
76
+ policies: PolicySpec[];
77
+ theme?: ThemeSpec;
78
+ themeFallbacks: ThemeSpec[];
79
+ telemetry?: TelemetrySpec;
80
+ experiments: {
81
+ active: ExperimentSpec[];
82
+ paused: ExperimentSpec[];
83
+ };
84
+ integrations: ResolvedIntegration[];
85
+ knowledge: ResolvedKnowledge[];
86
+ missing: MissingReference[];
87
+ }
88
+ interface MissingReference {
89
+ type: 'capability' | 'feature' | 'dataView' | 'workflow' | 'policy' | 'theme' | 'telemetry' | 'experiment' | 'integrationConnection' | 'integrationSpec' | 'integrationSlot' | 'knowledgeSpace' | 'knowledgeSource';
90
+ identifier: string;
91
+ }
92
+ interface ResolveAppConfigDeps {
93
+ integrationSpecs?: IntegrationSpecRegistry;
94
+ integrationConnections?: IntegrationConnection[];
95
+ knowledgeSpaces?: KnowledgeSpaceRegistry;
96
+ knowledgeSources?: KnowledgeSourceConfig[];
97
+ }
98
+ interface AppCompositionDeps extends ResolveAppConfigDeps {
99
+ capabilities?: CapabilityRegistry;
100
+ features?: FeatureRegistry;
101
+ dataViews?: DataViewRegistry;
102
+ workflows?: WorkflowRegistry;
103
+ policies?: PolicyRegistry;
104
+ themes?: ThemeRegistry;
105
+ telemetry?: TelemetryRegistry;
106
+ experiments?: ExperimentRegistry;
107
+ }
108
+ interface ComposeOptions {
109
+ strict?: boolean;
110
+ }
111
+ declare function resolveAppConfig(blueprint: AppBlueprintSpec, tenant: TenantAppConfig, deps?: ResolveAppConfigDeps): ResolvedAppConfig;
112
+ declare function composeAppConfig(blueprint: AppBlueprintSpec, tenant: TenantAppConfig, deps: AppCompositionDeps, options?: ComposeOptions): AppComposition;
113
+ //#endregion
114
+ export { AppComposition, AppCompositionDeps, ComposeOptions, MissingReference, ResolveAppConfigDeps, ResolvedAppConfig, ResolvedIntegration, ResolvedKnowledge, ResolvedTranslation, composeAppConfig, resolveAppConfig };
115
+ //# sourceMappingURL=runtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime.d.ts","names":[],"sources":["../../src/app-config/runtime.ts"],"sourcesContent":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ function e(e,t,m={}){let g=n(e.capabilities,t.capabilities),_=r(e.features,t.features),v=i(e.dataViews??{},t.dataViewOverrides),y=i(e.workflows??{},t.workflowOverrides),b=a(e.policies??[],t.additionalPolicies??[]),x=o(e.theme,t.themeOverride),S=s(e.telemetry,t.telemetryOverride),C=c(e.experiments,t.experiments),w=d(e.featureFlags??[],t.featureFlags??[]),T=f(e.routes??[],t.routeOverrides??[]),{resolved:E}=p(e.integrationSlots,t.integrations,m.integrationConnections,m.integrationSpecs),D=h(t.knowledge,m.knowledgeSpaces,m.knowledgeSources),O=l(e.branding,t),k=u(e.translationCatalog,t.locales,t.translationOverrides);return{appId:e.meta.appId,tenantId:t.meta.tenantId,environment:t.meta.environment,blueprintName:e.meta.name,blueprintVersion:e.meta.version,configVersion:t.meta.version,capabilities:g,features:_,dataViews:v,workflows:y,policies:b,theme:x,telemetry:S,experiments:C,featureFlags:w,routes:T,integrations:E,knowledge:D,translation:k,branding:O,notes:t.notes??e.notes}}function t(t,n,r,i={}){let a=e(t,n,r),o=[],s=p(t.integrationSlots,n.integrations,r.integrationConnections,r.integrationSpecs);a.integrations=s.resolved,o.push(...s.missing),o.push(...g(n.knowledge??[],r.knowledgeSpaces,r.knowledgeSources));let c=_(a.capabilities.enabled,r.capabilities,o),l=v(a.features.include,r.features,o),u=y(a.dataViews,r.dataViews,`dataView`,o),d=y(a.workflows,r.workflows,`workflow`,o),f=b(a.policies,r.policies,o),{theme:m,fallbacks:h,themeMissing:w}=x(a.theme,r.themes);o.push(...w);let{telemetry:T,telemetryMissing:E}=S(a.telemetry,r.telemetry);o.push(...E);let D=C(a.experiments,r.experiments,o);if(i.strict&&o.length>0){let e=o.map(e=>`${e.type}:${e.identifier}`).join(`, `);throw Error(`composeAppConfig: missing references -> ${e}`)}return{resolved:a,capabilities:c,features:l,dataViews:u,workflows:d,policies:f,theme:m,themeFallbacks:h,telemetry:T,experiments:D,integrations:a.integrations,knowledge:a.knowledge,missing:o}}function n(e,t){let n=k([...e?.enabled??[],...t?.enable??[]],w),r=k([...e?.disabled??[],...t?.disable??[]],w),i=new Set(r.map(w));return{enabled:n.filter(e=>!i.has(w(e))),disabled:r}}function r(e,t){let n=k([...e?.include??[],...t?.include??[]],T),r=k([...e?.exclude??[],...t?.exclude??[]],T),i=new Set(r.map(T));return{include:n.filter(e=>!i.has(T(e))),exclude:r}}function i(e,t){let n={...e};if(!t)return n;for(let e of t)e&&(e.pointer?n[e.slot]=e.pointer:delete n[e.slot]);return n}function a(e,t){return k([...e,...t],D)}function o(e,t){if(!e&&!t)return;let n=t?.primary??e?.primary;if(n)return{primary:n,fallbacks:t?.fallbacks??e?.fallbacks??[]}}function s(e,t){if(!e&&!t)return;let n={spec:e?.spec,disabledEvents:e?.disabledEvents?[...e.disabledEvents]:void 0,samplingOverrides:e?.samplingOverrides?{...e.samplingOverrides}:void 0};if(t?.spec!==void 0&&(n.spec=t.spec??void 0),t?.disabledEvents&&(n.disabledEvents=A([...n.disabledEvents??[],...t.disabledEvents])),t?.samplingOverrides&&(n.samplingOverrides={...n.samplingOverrides??{},...t.samplingOverrides}),!(!n.spec&&!n.disabledEvents?.length))return n}function c(e,t){let n=e?.active??[],r=e?.paused??[],i=t?.active,a=t?.paused,o=i&&i.length>0?i:n,s=a&&a.length>0?a:r,c=k(o,O),l=k(s,O),u=new Set(c.map(O));return l=l.filter(e=>!u.has(O(e))),{catalog:k([...n,...r,...i??[],...a??[]],O),active:c,paused:l}}function l(e,t){let n=t.branding,r=t.meta,i=`app.localhost`,a=n?.customDomain??(n?.subdomain?`${n.subdomain}.${i}`:`${r.tenantId}.${i}`),o=[];t.locales?.defaultLocale&&o.push(t.locales.defaultLocale),n?.appName&&o.push(`default`,`en`);let s;if(n?.appName){for(let e of o){let t=n.appName[e];if(t){s=t;break}}if(!s){let[,e]=Object.entries(n.appName)[0]??[];typeof e==`string`&&(s=e)}}s||=e?.appNameKey??r.appId;let c=new Map,l=e=>{if(e)for(let t of e)t?.type&&`url`in t&&t.url&&c.set(t.type,t.url)};l(e?.assets),l(n?.assets);let u={logo:c.get(`logo`),logoDark:c.get(`logo-dark`),favicon:c.get(`favicon`),ogImage:c.get(`og-image`)},d={primary:n?.colors?.primary??e?.colorTokens?.primary??`#1f2937`,secondary:n?.colors?.secondary??e?.colorTokens?.secondary??`#4b5563`};return{appName:s,assets:u,colors:d,domain:a}}function u(e,t,n){let r=t?.defaultLocale??`en`;return{defaultLocale:r,supportedLocales:A([r,...t?.enabledLocales??[]]),blueprintCatalog:e,tenantOverrides:n?.entries??[]}}function d(e,t){let n=new Map;for(let t of e)n.set(t.key,{...t});for(let e of t)n.set(e.key,{...e});return[...n.values()]}function f(e,t){let n=new Map;for(let t of e)n.set(t.path,{...t});for(let e of t){let t=n.get(e.path)??{path:e.path};e.label!==void 0&&(e.label===null?delete t.label:t.label=e.label),e.dataView!==void 0&&(e.dataView===null?delete t.dataView:t.dataView=e.dataView),e.workflow!==void 0&&(e.workflow===null?delete t.workflow:t.workflow=e.workflow),e.guard!==void 0&&(e.guard===null?delete t.guard:t.guard=e.guard),e.featureFlag!==void 0&&(e.featureFlag===null?delete t.featureFlag:t.featureFlag=e.featureFlag),e.experiment!==void 0&&(e.experiment===null?delete t.experiment:t.experiment=e.experiment),n.set(t.path,t)}return[...n.values()]}function p(e,t,n,r){let i=[],a=[],o=new Set,s=e=>{let t=`${e.type}:${e.identifier}`;o.has(t)||(o.add(t),a.push(e))},c=e??[],l=new Map;for(let e of c)l.set(e.slotId,e);let u=new Map;for(let e of t??[]){if(!l.get(e.slotId)){s({type:`integrationSlot`,identifier:`slot:${e.slotId}`});continue}let t=u.get(e.slotId);t?t.push(e):u.set(e.slotId,[e])}for(let e of c){let t=u.get(e.slotId)??[];e.required&&t.length===0&&s({type:`integrationSlot`,identifier:`slot:${e.slotId}`})}if(!n||!r)return{resolved:i,missing:a};let d=new Map;for(let e of n)d.set(e.meta.id,e);for(let e of c){let t=u.get(e.slotId)??[];if(t.length===0)continue;let n=[...t].sort((e,t)=>{let n=e.priority??2**53-1,r=t.priority??2**53-1;return n===r?0:n<r?-1:1}),a=!1;for(let t of n){let n=d.get(t.connectionId);if(!n){s({type:`integrationConnection`,identifier:`connection:${t.connectionId}`});continue}let o=r.get(n.meta.integrationKey,n.meta.integrationVersion);if(!o){s({type:`integrationSpec`,identifier:`spec:${n.meta.integrationKey}.v${n.meta.integrationVersion}`});continue}if(o.meta.category!==e.requiredCategory){s({type:`integrationSpec`,identifier:`spec:${o.meta.key}.category`});continue}if(!o.supportedModes.includes(n.ownershipMode)){s({type:`integrationSpec`,identifier:`spec:${o.meta.key}.mode:${n.ownershipMode}`});continue}if(e.allowedModes&&e.allowedModes.length>0&&!e.allowedModes.includes(n.ownershipMode)){s({type:`integrationConnection`,identifier:`connection:${n.meta.id}:mode`});continue}if(e.requiredCapabilities&&!e.requiredCapabilities.every(e=>m(o,e))){s({type:`integrationSpec`,identifier:`spec:${o.meta.key}.capabilities`});continue}i.push({slot:e,binding:t,connection:n,spec:o}),a=!0;break}!a&&e.required&&s({type:`integrationSlot`,identifier:`slot:${e.slotId}`})}return{resolved:i,missing:a}}function m(e,t){return e.capabilities.provides.some(e=>e.key===t.key?t.version==null?!0:e.version===t.version:!1)}function h(e,t,n){if(!e?.length||!t)return[];let r=n??[];return e.map(e=>{let n=t.get(e.spaceKey,e.spaceVersion);return n?{binding:e,space:n,sources:r.filter(t=>t.meta.spaceKey===e.spaceKey?e.spaceVersion==null?!0:t.meta.spaceVersion===e.spaceVersion:!1)}:null}).filter(e=>e!==null)}function g(e,t,n){if(!e.length||!t)return[];let r=[],i=n??[];for(let a of e){if(!t.get(a.spaceKey,a.spaceVersion)){r.push({type:`knowledgeSpace`,identifier:a.spaceVersion?`${a.spaceKey}@${a.spaceVersion}`:a.spaceKey});continue}n&&i.filter(e=>e.meta.spaceKey===a.spaceKey?a.spaceVersion==null?!0:e.meta.spaceVersion===a.spaceVersion:!1).length===0&&r.push({type:`knowledgeSource`,identifier:a.spaceVersion?`${a.spaceKey}@${a.spaceVersion}`:a.spaceKey})}return r}function _(e,t,n){if(!t){if(e.length>0)for(let t of e)n.push({type:`capability`,identifier:w(t)});return[]}let r=[];for(let i of e){let e=t.get(i.key,i.version);if(!e){n.push({type:`capability`,identifier:w(i)});continue}r.push(e)}return r}function v(e,t,n){if(!t){if(e.length>0)for(let t of e)n.push({type:`feature`,identifier:t.key});return[]}let r=[];for(let i of e){let e=t.get(i.key);if(!e){n.push({type:`feature`,identifier:i.key});continue}r.push(e)}return r}function y(e,t,n,r){if(!t){if(Object.keys(e).length>0)for(let[t,i]of Object.entries(e))r.push({type:n,identifier:`${t} -> ${E(i)}`});return{}}let i={};for(let[a,o]of Object.entries(e)){let e=t.get(o.name,o.version);if(!e){r.push({type:n,identifier:`${a} -> ${E(o)}`});continue}i[a]=e}return i}function b(e,t,n){if(!t){if(e.length>0)for(let t of e)n.push({type:`policy`,identifier:D(t)});return[]}let r=[];for(let i of e){let e=t.get(i.name,i.version);if(!e){n.push({type:`policy`,identifier:D(i)});continue}r.push(e)}return r}function x(e,t){let n=[];if(!e)return{theme:void 0,fallbacks:[],themeMissing:n};if(!t){n.push({type:`theme`,identifier:`${e.primary.name}.v${e.primary.version}`});for(let t of e.fallbacks??[])n.push({type:`theme`,identifier:`${t.name}.v${t.version}`});return{theme:void 0,fallbacks:[],themeMissing:n}}let r=t.get(e.primary.name,e.primary.version);r||n.push({type:`theme`,identifier:`${e.primary.name}.v${e.primary.version}`});let i=[];for(let r of e.fallbacks??[]){let e=t.get(r.name,r.version);if(!e){n.push({type:`theme`,identifier:`${r.name}.v${r.version}`});continue}i.push(e)}return{theme:r??void 0,fallbacks:i,themeMissing:n}}function S(e,t){let n=[];if(!e?.spec)return{telemetry:void 0,telemetryMissing:n};if(!t)return n.push({type:`telemetry`,identifier:E(e.spec)}),{telemetry:void 0,telemetryMissing:n};let r=t.get(e.spec.name,e.spec.version);return r||n.push({type:`telemetry`,identifier:E(e.spec)}),{telemetry:r??void 0,telemetryMissing:n}}function C(e,t,n){let r=e=>{if(e.length===0)return[];if(!t){for(let t of e)n.push({type:`experiment`,identifier:O(t)});return[]}let r=[];for(let i of e){let e=t.get(i.name,i.version);if(!e){n.push({type:`experiment`,identifier:O(i)});continue}r.push(e)}return r};return{active:r(e.active),paused:r(e.paused)}}function w(e){return`${e.key}${e.version?`.v${e.version}`:``}`}function T(e){return e.key}function E(e){return`${e.name}${e.version?`.v${e.version}`:``}`}function D(e){return`${e.name}${e.version?`.v${e.version}`:``}`}function O(e){return`${e.name}${e.version?`.v${e.version}`:``}`}function k(e,t){let n=new Map;for(let r of e)n.set(t(r),r);return[...n.values()]}function A(e){return[...new Set(e)]}export{t as composeAppConfig,e as resolveAppConfig};
2
+ //# sourceMappingURL=runtime.js.map