primitive-admin 1.0.63 → 1.0.64

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 (328) hide show
  1. package/README.md +132 -42
  2. package/assets/skill/skills/primitive-platform/SKILL.md +142 -661
  3. package/dist/bin/primitive.js +121 -41
  4. package/dist/bin/primitive.js.map +1 -1
  5. package/dist/src/commands/admins.js +37 -50
  6. package/dist/src/commands/admins.js.map +1 -1
  7. package/dist/src/commands/analytics.js +178 -9
  8. package/dist/src/commands/analytics.js.map +1 -1
  9. package/dist/src/commands/apps.js +12 -5
  10. package/dist/src/commands/apps.js.map +1 -1
  11. package/dist/src/commands/auth-sessions.d.ts +7 -0
  12. package/dist/src/commands/auth-sessions.js +144 -0
  13. package/dist/src/commands/auth-sessions.js.map +1 -0
  14. package/dist/src/commands/auth.js +76 -116
  15. package/dist/src/commands/auth.js.map +1 -1
  16. package/dist/src/commands/blob-buckets.js +2 -1
  17. package/dist/src/commands/blob-buckets.js.map +1 -1
  18. package/dist/src/commands/catalog.js +26 -10
  19. package/dist/src/commands/catalog.js.map +1 -1
  20. package/dist/src/commands/collection-type-configs.js +3 -10
  21. package/dist/src/commands/collection-type-configs.js.map +1 -1
  22. package/dist/src/commands/collections.js +736 -19
  23. package/dist/src/commands/collections.js.map +1 -1
  24. package/dist/src/commands/config.js +13 -27
  25. package/dist/src/commands/config.js.map +1 -1
  26. package/dist/src/commands/connections.js +8 -9
  27. package/dist/src/commands/connections.js.map +1 -1
  28. package/dist/src/commands/cron-triggers.js +2 -1
  29. package/dist/src/commands/cron-triggers.js.map +1 -1
  30. package/dist/src/commands/database-type-configs.js +5 -12
  31. package/dist/src/commands/database-type-configs.js.map +1 -1
  32. package/dist/src/commands/databases.js +59 -72
  33. package/dist/src/commands/databases.js.map +1 -1
  34. package/dist/src/commands/documents.d.ts +58 -0
  35. package/dist/src/commands/documents.js +1623 -95
  36. package/dist/src/commands/documents.js.map +1 -1
  37. package/dist/src/commands/email-templates.js +2 -1
  38. package/dist/src/commands/email-templates.js.map +1 -1
  39. package/dist/src/commands/env.d.ts +1 -1
  40. package/dist/src/commands/env.js +89 -43
  41. package/dist/src/commands/env.js.map +1 -1
  42. package/dist/src/commands/feature-flags.js +2 -1
  43. package/dist/src/commands/feature-flags.js.map +1 -1
  44. package/dist/src/commands/functions.d.ts +20 -0
  45. package/dist/src/commands/functions.js +1630 -0
  46. package/dist/src/commands/functions.js.map +1 -0
  47. package/dist/src/commands/group-type-configs.js +2 -1
  48. package/dist/src/commands/group-type-configs.js.map +1 -1
  49. package/dist/src/commands/groups.js +30 -17
  50. package/dist/src/commands/groups.js.map +1 -1
  51. package/dist/src/commands/guides.js +17 -11
  52. package/dist/src/commands/guides.js.map +1 -1
  53. package/dist/src/commands/init.d.ts +12 -15
  54. package/dist/src/commands/init.js +44 -92
  55. package/dist/src/commands/init.js.map +1 -1
  56. package/dist/src/commands/integrations.js +35 -12
  57. package/dist/src/commands/integrations.js.map +1 -1
  58. package/dist/src/commands/locks.js +17 -2
  59. package/dist/src/commands/locks.js.map +1 -1
  60. package/dist/src/commands/metadata-category-configs.js +2 -1
  61. package/dist/src/commands/metadata-category-configs.js.map +1 -1
  62. package/dist/src/commands/metadata.js +8 -1
  63. package/dist/src/commands/metadata.js.map +1 -1
  64. package/dist/src/commands/prompts.js +106 -59
  65. package/dist/src/commands/prompts.js.map +1 -1
  66. package/dist/src/commands/rule-sets.js +3 -10
  67. package/dist/src/commands/rule-sets.js.map +1 -1
  68. package/dist/src/commands/scripts.js +33 -28
  69. package/dist/src/commands/scripts.js.map +1 -1
  70. package/dist/src/commands/secrets.js +2 -1
  71. package/dist/src/commands/secrets.js.map +1 -1
  72. package/dist/src/commands/sessions.js +10 -9
  73. package/dist/src/commands/sessions.js.map +1 -1
  74. package/dist/src/commands/sync-app-settings.js +3 -5
  75. package/dist/src/commands/sync-app-settings.js.map +1 -1
  76. package/dist/src/commands/sync.d.ts +390 -13
  77. package/dist/src/commands/sync.js +2613 -451
  78. package/dist/src/commands/sync.js.map +1 -1
  79. package/dist/src/commands/tokens.js +2 -1
  80. package/dist/src/commands/tokens.js.map +1 -1
  81. package/dist/src/commands/users.js +19 -10
  82. package/dist/src/commands/users.js.map +1 -1
  83. package/dist/src/commands/vars.js +2 -1
  84. package/dist/src/commands/vars.js.map +1 -1
  85. package/dist/src/commands/waitlist.js +2 -1
  86. package/dist/src/commands/waitlist.js.map +1 -1
  87. package/dist/src/commands/webhooks.d.ts +29 -0
  88. package/dist/src/commands/webhooks.js +135 -64
  89. package/dist/src/commands/webhooks.js.map +1 -1
  90. package/dist/src/commands/workflows.d.ts +1 -29
  91. package/dist/src/commands/workflows.js +113 -179
  92. package/dist/src/commands/workflows.js.map +1 -1
  93. package/dist/src/lib/api-client.d.ts +628 -14
  94. package/dist/src/lib/api-client.js +776 -70
  95. package/dist/src/lib/api-client.js.map +1 -1
  96. package/dist/src/lib/app-settings-descriptor.d.ts +1 -1
  97. package/dist/src/lib/app-settings-descriptor.js +9 -1
  98. package/dist/src/lib/app-settings-descriptor.js.map +1 -1
  99. package/dist/src/lib/block-selector.d.ts +58 -0
  100. package/dist/src/lib/block-selector.js +92 -0
  101. package/dist/src/lib/block-selector.js.map +1 -0
  102. package/dist/src/lib/codegen-shared/resolveCodegenSourceDir.d.ts +24 -54
  103. package/dist/src/lib/codegen-shared/resolveCodegenSourceDir.js +31 -153
  104. package/dist/src/lib/codegen-shared/resolveCodegenSourceDir.js.map +1 -1
  105. package/dist/src/lib/collection-export.d.ts +184 -0
  106. package/dist/src/lib/collection-export.js +252 -0
  107. package/dist/src/lib/collection-export.js.map +1 -0
  108. package/dist/src/lib/config-json-field.d.ts +28 -0
  109. package/dist/src/lib/config-json-field.js +56 -0
  110. package/dist/src/lib/config-json-field.js.map +1 -0
  111. package/dist/src/lib/config-object-descriptor.js +88 -6
  112. package/dist/src/lib/config-object-descriptor.js.map +1 -1
  113. package/dist/src/lib/config-payload.d.ts +8 -1
  114. package/dist/src/lib/config-payload.js +49 -4
  115. package/dist/src/lib/config-payload.js.map +1 -1
  116. package/dist/src/lib/config-surface.d.ts +12 -1
  117. package/dist/src/lib/config-surface.js +71 -3
  118. package/dist/src/lib/config-surface.js.map +1 -1
  119. package/dist/src/lib/config.d.ts +31 -13
  120. package/dist/src/lib/config.js +34 -70
  121. package/dist/src/lib/config.js.map +1 -1
  122. package/dist/src/lib/credentials-store.d.ts +37 -22
  123. package/dist/src/lib/credentials-store.js +103 -97
  124. package/dist/src/lib/credentials-store.js.map +1 -1
  125. package/dist/src/lib/db-codegen/dbTypeIR.js +8 -0
  126. package/dist/src/lib/db-codegen/dbTypeIR.js.map +1 -1
  127. package/dist/src/lib/deprecation.d.ts +22 -0
  128. package/dist/src/lib/deprecation.js +43 -0
  129. package/dist/src/lib/deprecation.js.map +1 -0
  130. package/dist/src/lib/document-export-permissions.d.ts +30 -0
  131. package/dist/src/lib/document-export-permissions.js +54 -0
  132. package/dist/src/lib/document-export-permissions.js.map +1 -0
  133. package/dist/src/lib/document-ingest-artifact.d.ts +120 -0
  134. package/dist/src/lib/document-ingest-artifact.js +505 -0
  135. package/dist/src/lib/document-ingest-artifact.js.map +1 -0
  136. package/dist/src/lib/document-ingest-input.d.ts +51 -0
  137. package/dist/src/lib/document-ingest-input.js +132 -0
  138. package/dist/src/lib/document-ingest-input.js.map +1 -0
  139. package/dist/src/lib/document-ingest-rows.d.ts +137 -0
  140. package/dist/src/lib/document-ingest-rows.js +181 -0
  141. package/dist/src/lib/document-ingest-rows.js.map +1 -0
  142. package/dist/src/lib/document-ingest.d.ts +101 -0
  143. package/dist/src/lib/document-ingest.js +384 -0
  144. package/dist/src/lib/document-ingest.js.map +1 -0
  145. package/dist/src/lib/env-resolver-core.d.ts +89 -18
  146. package/dist/src/lib/env-resolver-core.js +145 -23
  147. package/dist/src/lib/env-resolver-core.js.map +1 -1
  148. package/dist/src/lib/env-resolver.d.ts +18 -3
  149. package/dist/src/lib/env-resolver.js +23 -3
  150. package/dist/src/lib/env-resolver.js.map +1 -1
  151. package/dist/src/lib/function-bundle.d.ts +147 -0
  152. package/dist/src/lib/function-bundle.js +341 -0
  153. package/dist/src/lib/function-bundle.js.map +1 -0
  154. package/dist/src/lib/function-collect.d.ts +123 -0
  155. package/dist/src/lib/function-collect.js +610 -0
  156. package/dist/src/lib/function-collect.js.map +1 -0
  157. package/dist/src/lib/function-db-types.d.ts +202 -0
  158. package/dist/src/lib/function-db-types.js +870 -0
  159. package/dist/src/lib/function-db-types.js.map +1 -0
  160. package/dist/src/lib/function-document-types.d.ts +144 -0
  161. package/dist/src/lib/function-document-types.js +370 -0
  162. package/dist/src/lib/function-document-types.js.map +1 -0
  163. package/dist/src/lib/function-grants-preflight.d.ts +64 -0
  164. package/dist/src/lib/function-grants-preflight.js +105 -0
  165. package/dist/src/lib/function-grants-preflight.js.map +1 -0
  166. package/dist/src/lib/function-log-lines.d.ts +76 -0
  167. package/dist/src/lib/function-log-lines.js +160 -0
  168. package/dist/src/lib/function-log-lines.js.map +1 -0
  169. package/dist/src/lib/function-log-row.d.ts +29 -0
  170. package/dist/src/lib/function-log-row.js +73 -0
  171. package/dist/src/lib/function-log-row.js.map +1 -0
  172. package/dist/src/lib/function-log-tail.d.ts +132 -0
  173. package/dist/src/lib/function-log-tail.js +262 -0
  174. package/dist/src/lib/function-log-tail.js.map +1 -0
  175. package/dist/src/lib/function-run.d.ts +289 -0
  176. package/dist/src/lib/function-run.js +389 -0
  177. package/dist/src/lib/function-run.js.map +1 -0
  178. package/dist/src/lib/function-schema-codegen.d.ts +143 -0
  179. package/dist/src/lib/function-schema-codegen.js +420 -0
  180. package/dist/src/lib/function-schema-codegen.js.map +1 -0
  181. package/dist/src/lib/function-sync.d.ts +459 -0
  182. package/dist/src/lib/function-sync.js +1258 -0
  183. package/dist/src/lib/function-sync.js.map +1 -0
  184. package/dist/src/lib/function-trigger-listing.d.ts +27 -0
  185. package/dist/src/lib/function-trigger-listing.js +70 -0
  186. package/dist/src/lib/function-trigger-listing.js.map +1 -0
  187. package/dist/src/lib/function-typecheck.d.ts +86 -0
  188. package/dist/src/lib/function-typecheck.js +370 -0
  189. package/dist/src/lib/function-typecheck.js.map +1 -0
  190. package/dist/src/lib/function-versions.d.ts +122 -0
  191. package/dist/src/lib/function-versions.js +182 -0
  192. package/dist/src/lib/function-versions.js.map +1 -0
  193. package/dist/src/lib/generated-allowlist.js +4 -0
  194. package/dist/src/lib/generated-allowlist.js.map +1 -1
  195. package/dist/src/lib/generated-config-surfaces.d.ts +2332 -78
  196. package/dist/src/lib/generated-config-surfaces.js +6979 -468
  197. package/dist/src/lib/generated-config-surfaces.js.map +1 -1
  198. package/dist/src/lib/generated-sdk-types.d.ts +12 -0
  199. package/dist/src/lib/generated-sdk-types.js +13 -0
  200. package/dist/src/lib/generated-sdk-types.js.map +1 -0
  201. package/dist/src/lib/init-adopt.js +2 -2
  202. package/dist/src/lib/init-adopt.js.map +1 -1
  203. package/dist/src/lib/init-assets.js +3 -3
  204. package/dist/src/lib/init-config.d.ts +1 -1
  205. package/dist/src/lib/init-ios-links.d.ts +6 -5
  206. package/dist/src/lib/init-ios-links.js +9 -8
  207. package/dist/src/lib/init-ios-links.js.map +1 -1
  208. package/dist/src/lib/init-plan.d.ts +1 -1
  209. package/dist/src/lib/init-plan.js +1 -1
  210. package/dist/src/lib/init-xcode.d.ts +6 -5
  211. package/dist/src/lib/init-xcode.js +34 -10
  212. package/dist/src/lib/init-xcode.js.map +1 -1
  213. package/dist/src/lib/ios-app-id.d.ts +34 -0
  214. package/dist/src/lib/ios-app-id.js +69 -0
  215. package/dist/src/lib/ios-app-id.js.map +1 -0
  216. package/dist/src/lib/list-options.d.ts +68 -0
  217. package/dist/src/lib/list-options.js +89 -0
  218. package/dist/src/lib/list-options.js.map +1 -0
  219. package/dist/src/lib/local-state.d.ts +1 -1
  220. package/dist/src/lib/local-state.js +1 -1
  221. package/dist/src/lib/local-test-cases.d.ts +1 -1
  222. package/dist/src/lib/local-test-cases.js +2 -1
  223. package/dist/src/lib/local-test-cases.js.map +1 -1
  224. package/dist/src/lib/log-inspection.d.ts +152 -5
  225. package/dist/src/lib/log-inspection.js +179 -2
  226. package/dist/src/lib/log-inspection.js.map +1 -1
  227. package/dist/src/lib/logout-admin-session.d.ts +33 -0
  228. package/dist/src/lib/logout-admin-session.js +70 -0
  229. package/dist/src/lib/logout-admin-session.js.map +1 -0
  230. package/dist/src/lib/output.d.ts +15 -0
  231. package/dist/src/lib/output.js +28 -0
  232. package/dist/src/lib/output.js.map +1 -1
  233. package/dist/src/lib/paginate.d.ts +15 -0
  234. package/dist/src/lib/paginate.js +17 -0
  235. package/dist/src/lib/paginate.js.map +1 -1
  236. package/dist/src/lib/project-config.d.ts +38 -21
  237. package/dist/src/lib/project-config.js +57 -47
  238. package/dist/src/lib/project-config.js.map +1 -1
  239. package/dist/src/lib/prompt-cost-format.d.ts +11 -0
  240. package/dist/src/lib/prompt-cost-format.js +41 -0
  241. package/dist/src/lib/prompt-cost-format.js.map +1 -0
  242. package/dist/src/lib/prompt-schema-codegen.d.ts +147 -0
  243. package/dist/src/lib/prompt-schema-codegen.js +462 -0
  244. package/dist/src/lib/prompt-schema-codegen.js.map +1 -0
  245. package/dist/src/lib/refresh-admin-credentials.d.ts +9 -1
  246. package/dist/src/lib/refresh-admin-credentials.js +22 -2
  247. package/dist/src/lib/refresh-admin-credentials.js.map +1 -1
  248. package/dist/src/lib/resolve-owner.d.ts +19 -0
  249. package/dist/src/lib/resolve-owner.js +20 -0
  250. package/dist/src/lib/resolve-owner.js.map +1 -0
  251. package/dist/src/lib/skill-installer.d.ts +49 -3
  252. package/dist/src/lib/skill-installer.js +275 -100
  253. package/dist/src/lib/skill-installer.js.map +1 -1
  254. package/dist/src/lib/snapshot-audit-source.d.ts +45 -0
  255. package/dist/src/lib/snapshot-audit-source.js +58 -0
  256. package/dist/src/lib/snapshot-audit-source.js.map +1 -0
  257. package/dist/src/lib/snapshot-audit-store.d.ts +52 -0
  258. package/dist/src/lib/snapshot-audit-store.js +196 -0
  259. package/dist/src/lib/snapshot-audit-store.js.map +1 -0
  260. package/dist/src/lib/snapshot-audit.d.ts +207 -0
  261. package/dist/src/lib/snapshot-audit.js +431 -0
  262. package/dist/src/lib/snapshot-audit.js.map +1 -0
  263. package/dist/src/lib/snapshot-build-rows.d.ts +60 -0
  264. package/dist/src/lib/snapshot-build-rows.js +87 -0
  265. package/dist/src/lib/snapshot-build-rows.js.map +1 -0
  266. package/dist/src/lib/snapshot-build.d.ts +50 -0
  267. package/dist/src/lib/snapshot-build.js +111 -0
  268. package/dist/src/lib/snapshot-build.js.map +1 -0
  269. package/dist/src/lib/snapshot-manifest-layout.d.ts +61 -0
  270. package/dist/src/lib/snapshot-manifest-layout.js +70 -0
  271. package/dist/src/lib/snapshot-manifest-layout.js.map +1 -0
  272. package/dist/src/lib/snapshots.d.ts +8 -9
  273. package/dist/src/lib/snapshots.js +20 -83
  274. package/dist/src/lib/snapshots.js.map +1 -1
  275. package/dist/src/lib/step-run-table.d.ts +43 -0
  276. package/dist/src/lib/step-run-table.js +129 -0
  277. package/dist/src/lib/step-run-table.js.map +1 -0
  278. package/dist/src/lib/storage-pending-retry.d.ts +26 -0
  279. package/dist/src/lib/storage-pending-retry.js +42 -0
  280. package/dist/src/lib/storage-pending-retry.js.map +1 -0
  281. package/dist/src/lib/swift-codegen/agentGenerator.d.ts +42 -0
  282. package/dist/src/lib/swift-codegen/agentGenerator.js +118 -0
  283. package/dist/src/lib/swift-codegen/agentGenerator.js.map +1 -0
  284. package/dist/src/lib/swift-codegen/banners.d.ts +24 -0
  285. package/dist/src/lib/swift-codegen/banners.js +25 -0
  286. package/dist/src/lib/swift-codegen/banners.js.map +1 -0
  287. package/dist/src/lib/swift-codegen/dbGenerator.js +19 -7
  288. package/dist/src/lib/swift-codegen/dbGenerator.js.map +1 -1
  289. package/dist/src/lib/swift-codegen/functionGenerator.d.ts +139 -0
  290. package/dist/src/lib/swift-codegen/functionGenerator.js +462 -0
  291. package/dist/src/lib/swift-codegen/functionGenerator.js.map +1 -0
  292. package/dist/src/lib/swift-codegen/generator.d.ts +7 -1
  293. package/dist/src/lib/swift-codegen/generator.js +28 -11
  294. package/dist/src/lib/swift-codegen/generator.js.map +1 -1
  295. package/dist/src/lib/swift-codegen/schemaToSwift.d.ts +15 -0
  296. package/dist/src/lib/swift-codegen/schemaToSwift.js +21 -4
  297. package/dist/src/lib/swift-codegen/schemaToSwift.js.map +1 -1
  298. package/dist/src/lib/sync-paths.d.ts +72 -55
  299. package/dist/src/lib/sync-paths.js +97 -100
  300. package/dist/src/lib/sync-paths.js.map +1 -1
  301. package/dist/src/lib/sync-resource-types.d.ts +23 -4
  302. package/dist/src/lib/sync-resource-types.js +106 -8
  303. package/dist/src/lib/sync-resource-types.js.map +1 -1
  304. package/dist/src/lib/sync-selectors.d.ts +45 -2
  305. package/dist/src/lib/sync-selectors.js +66 -5
  306. package/dist/src/lib/sync-selectors.js.map +1 -1
  307. package/dist/src/lib/template.d.ts +2 -2
  308. package/dist/src/lib/template.js +2 -2
  309. package/dist/src/lib/test-case-keys.d.ts +1 -1
  310. package/dist/src/lib/test-case-keys.js +1 -1
  311. package/dist/src/lib/test-case-variables.d.ts +14 -0
  312. package/dist/src/lib/test-case-variables.js +42 -0
  313. package/dist/src/lib/test-case-variables.js.map +1 -1
  314. package/dist/src/lib/toml-database-config.js +19 -2
  315. package/dist/src/lib/toml-database-config.js.map +1 -1
  316. package/dist/src/lib/webhook-deliver.d.ts +209 -0
  317. package/dist/src/lib/webhook-deliver.js +519 -0
  318. package/dist/src/lib/webhook-deliver.js.map +1 -0
  319. package/dist/src/lib/workflow-codegen/generator.d.ts +1 -1
  320. package/dist/src/lib/workflow-codegen/generator.js +1 -1
  321. package/dist/src/lib/workflow-toml-validator.d.ts +17 -8
  322. package/dist/src/lib/workflow-toml-validator.js +25 -12
  323. package/dist/src/lib/workflow-toml-validator.js.map +1 -1
  324. package/dist/src/lib/workflow-usage.d.ts +196 -0
  325. package/dist/src/lib/workflow-usage.js +310 -0
  326. package/dist/src/lib/workflow-usage.js.map +1 -0
  327. package/dist/src/types/index.d.ts +12 -2
  328. package/package.json +5 -4
@@ -0,0 +1,129 @@
1
+ /**
2
+ * The step table — one renderer, two commands.
3
+ *
4
+ * Extracted in #3348, when `functions runs steps` joined `workflows runs
5
+ * steps`. A durable function run's steps are the SAME rows in the same
6
+ * envelope, and the issue's ask is that they read "in the same shape a DSL
7
+ * workflow run's steps come back in": two hand-kept tables would have made that
8
+ * a resemblance, and this makes it the same code.
9
+ *
10
+ * `annotateStepGaps` (#1367) and `stepRunDisplayDurationMs` (#2771) moved here
11
+ * with it and are re-exported from `commands/workflows.ts`, which is where they
12
+ * were first exported for testability.
13
+ */
14
+ import chalk from "chalk";
15
+ import { formatTable, formatDuration } from "./output.js";
16
+ /**
17
+ * #2771 — how long a step row has been going.
18
+ *
19
+ * A step that is still executing is persisted with status `running` and a
20
+ * `durationMs` of 0 (the column is required; the real value is written when the
21
+ * step ends). Printing that 0 hides the one number that matters while a run is
22
+ * in flight — how long the current step has been stuck — so a running row is
23
+ * measured from its `startedAt` instead. Finished rows keep their stored
24
+ * duration.
25
+ */
26
+ export function stepRunDisplayDurationMs(step, now = Date.now()) {
27
+ const stored = typeof step?.durationMs === "number" ? step.durationMs : null;
28
+ if (step?.status !== "running")
29
+ return stored;
30
+ const started = step?.startedAt ? new Date(step.startedAt).getTime() : NaN;
31
+ if (Number.isNaN(started))
32
+ return stored;
33
+ return Math.max(0, now - started);
34
+ }
35
+ /**
36
+ * #1367 — annotate step-run rows with the inter-step gap: the wall-clock time
37
+ * between the previous step's `endedAt` and this step's `startedAt`. Sorts by
38
+ * `startedAt` when every row has a parseable one (tie-break `stepIndex`),
39
+ * otherwise by `stepIndex` for the whole list — the ordering mode must be
40
+ * chosen once for all rows, not per pair: a per-pair timestamp-vs-index
41
+ * fallback is not transitive when some rows lack a timestamp (A<B by index,
42
+ * B<C by index, C<A by time), and a non-transitive comparator leaves
43
+ * Array.prototype.sort free to return an arbitrary order, computing gaps
44
+ * against the wrong predecessor. The first step has no predecessor, so its
45
+ * `gapMs` is `null`. A gap is only meaningful when both adjacent timestamps
46
+ * parse and the gap is positive. When the immediate predecessor lacks a valid
47
+ * `endedAt`, the gap is left `null` rather than measured from an older,
48
+ * non-adjacent step — otherwise a later step could raise a false stall
49
+ * warning against a step it does not actually follow.
50
+ */
51
+ export function annotateStepGaps(steps) {
52
+ const rows = [...(steps || [])];
53
+ const allTimed = rows.every((r) => r?.startedAt && !Number.isNaN(new Date(r.startedAt).getTime()));
54
+ rows.sort((a, b) => {
55
+ if (allTimed) {
56
+ const sa = new Date(a.startedAt).getTime();
57
+ const sb = new Date(b.startedAt).getTime();
58
+ if (sa !== sb)
59
+ return sa - sb;
60
+ }
61
+ return (a?.stepIndex ?? 0) - (b?.stepIndex ?? 0);
62
+ });
63
+ let prevEnded = null;
64
+ for (const row of rows) {
65
+ const started = row?.startedAt ? new Date(row.startedAt).getTime() : NaN;
66
+ if (prevEnded != null && !Number.isNaN(started)) {
67
+ const gap = started - prevEnded;
68
+ row.gapMs = gap > 0 ? gap : 0;
69
+ }
70
+ else {
71
+ row.gapMs = null;
72
+ }
73
+ // Only genuinely adjacent steps yield a gap: if this step lacks a valid
74
+ // `endedAt`, clear the predecessor so the NEXT step's gap is left null
75
+ // instead of being measured from a non-adjacent earlier step.
76
+ const ended = row?.endedAt ? new Date(row.endedAt).getTime() : NaN;
77
+ prevEnded = Number.isNaN(ended) ? null : ended;
78
+ }
79
+ return rows;
80
+ }
81
+ /**
82
+ * #1367 — inter-step gap: idle time between one step ending and the next
83
+ * starting. Only surfaced above a 1s threshold so normal back-to-back steps
84
+ * stay quiet; a large gap flags a mid-run stall.
85
+ */
86
+ const STEP_GAP_THRESHOLD_MS = 1000;
87
+ /** The step table both `runs steps` verbs print. */
88
+ export function renderStepRunTable(items) {
89
+ // #2771 — an in-flight run also returns the step executing right now (status
90
+ // `running`, duration not written yet). Show its elapsed time so a step stuck
91
+ // retrying is visible as such.
92
+ const rows = annotateStepGaps(items).map((row) => ({
93
+ ...row,
94
+ displayDurationMs: stepRunDisplayDurationMs(row),
95
+ }));
96
+ return formatTable(rows, [
97
+ { header: "STEP", key: "stepId" },
98
+ { header: "KIND", key: "stepKind" },
99
+ {
100
+ header: "STATUS",
101
+ key: "status",
102
+ format: (v) => v === "completed" ? chalk.green(v) :
103
+ v === "failed" ? chalk.red(v) :
104
+ v === "skipped" ? chalk.gray(v) :
105
+ v === "error_captured" ? chalk.yellow(v) :
106
+ // #2771 — the step executing right now.
107
+ v === "running" ? chalk.cyan(v) : v,
108
+ },
109
+ {
110
+ header: "GAP",
111
+ key: "gapMs",
112
+ format: (v) => typeof v === "number" && v >= STEP_GAP_THRESHOLD_MS
113
+ ? chalk.yellow(formatDuration(v))
114
+ : chalk.dim("-"),
115
+ },
116
+ { header: "DURATION", key: "displayDurationMs", format: formatDuration },
117
+ {
118
+ header: "TOKENS",
119
+ key: "totalTokens",
120
+ format: (v) => v ? String(v).replace(/\B(?=(\d{3})+(?!\d))/g, ",") : "-",
121
+ },
122
+ {
123
+ header: "ERROR",
124
+ key: "error",
125
+ format: (v) => v ? (v.length > 60 ? v.slice(0, 57) + "..." : v) : "",
126
+ },
127
+ ]);
128
+ }
129
+ //# sourceMappingURL=step-run-table.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"step-run-table.js","sourceRoot":"","sources":["../../../src/lib/step-run-table.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * #3835 — ask again when the server could not confirm its OWN write.
3
+ *
4
+ * A create whose row dynamo-bao wrote but could not read back, and whose
5
+ * consistent confirm read could not vouch for it either, is answered
6
+ * `503 STORAGE_CONSISTENCY_PENDING` (`src/services/readback-confirm.ts`): the
7
+ * write may well have landed, and nothing about the request was wrong. A push
8
+ * that records that as "could not be applied" exits 1 over a change that is
9
+ * very likely on the server already.
10
+ *
11
+ * Only that typed code is retried — a client that retries on it must not also
12
+ * retry on everything else a 503 covers — and only a bounded number of times,
13
+ * after which the transient itself is what the caller reports.
14
+ */
15
+ /** The code the server's read-back transient carries. */
16
+ export declare const STORAGE_CONSISTENCY_PENDING = "STORAGE_CONSISTENCY_PENDING";
17
+ export declare function isStorageConsistencyPending(err: unknown): boolean;
18
+ /**
19
+ * Run `fn`, and run it again while it fails with the storage-consistency
20
+ * transient. Any other failure — including the 409 a retried create meets when
21
+ * its first attempt's row holds the key — is thrown to the caller unchanged.
22
+ */
23
+ export declare function retryOnStoragePending<T>(fn: () => Promise<T>, opts?: {
24
+ attempts?: number;
25
+ sleep?: (ms: number) => Promise<void>;
26
+ }): Promise<T>;
@@ -0,0 +1,42 @@
1
+ /**
2
+ * #3835 — ask again when the server could not confirm its OWN write.
3
+ *
4
+ * A create whose row dynamo-bao wrote but could not read back, and whose
5
+ * consistent confirm read could not vouch for it either, is answered
6
+ * `503 STORAGE_CONSISTENCY_PENDING` (`src/services/readback-confirm.ts`): the
7
+ * write may well have landed, and nothing about the request was wrong. A push
8
+ * that records that as "could not be applied" exits 1 over a change that is
9
+ * very likely on the server already.
10
+ *
11
+ * Only that typed code is retried — a client that retries on it must not also
12
+ * retry on everything else a 503 covers — and only a bounded number of times,
13
+ * after which the transient itself is what the caller reports.
14
+ */
15
+ import { ApiError } from "./api-client.js";
16
+ /** The code the server's read-back transient carries. */
17
+ export const STORAGE_CONSISTENCY_PENDING = "STORAGE_CONSISTENCY_PENDING";
18
+ const DEFAULT_ATTEMPTS = 3;
19
+ const BASE_DELAY_MS = 250;
20
+ export function isStorageConsistencyPending(err) {
21
+ return err instanceof ApiError && err.code === STORAGE_CONSISTENCY_PENDING;
22
+ }
23
+ /**
24
+ * Run `fn`, and run it again while it fails with the storage-consistency
25
+ * transient. Any other failure — including the 409 a retried create meets when
26
+ * its first attempt's row holds the key — is thrown to the caller unchanged.
27
+ */
28
+ export async function retryOnStoragePending(fn, opts = {}) {
29
+ const attempts = Math.max(1, opts.attempts ?? DEFAULT_ATTEMPTS);
30
+ const sleep = opts.sleep ?? ((ms) => new Promise((r) => setTimeout(r, ms)));
31
+ for (let attempt = 1;; attempt++) {
32
+ try {
33
+ return await fn();
34
+ }
35
+ catch (err) {
36
+ if (attempt >= attempts || !isStorageConsistencyPending(err))
37
+ throw err;
38
+ await sleep(BASE_DELAY_MS * 2 ** (attempt - 1));
39
+ }
40
+ }
41
+ }
42
+ //# sourceMappingURL=storage-pending-retry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage-pending-retry.js","sourceRoot":"","sources":["../../../src/lib/storage-pending-retry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE3C,yDAAyD;AACzD,MAAM,CAAC,MAAM,2BAA2B,GAAG,6BAA6B,CAAC;AAEzE,MAAM,gBAAgB,GAAG,CAAC,CAAC;AAC3B,MAAM,aAAa,GAAG,GAAG,CAAC;AAE1B,MAAM,UAAU,2BAA2B,CAAC,GAAY;IACtD,OAAO,GAAG,YAAY,QAAQ,IAAI,GAAG,CAAC,IAAI,KAAK,2BAA2B,CAAC;AAC7E,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,EAAoB,EACpB,OAAqE,EAAE;IAEvE,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,IAAI,gBAAgB,CAAC,CAAC;IAChE,MAAM,KAAK,GACT,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,EAAU,EAAE,EAAE,CAAC,IAAI,OAAO,CAAO,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IAC9E,KAAK,IAAI,OAAO,GAAG,CAAC,GAAI,OAAO,EAAE,EAAE,CAAC;QAClC,IAAI,CAAC;YACH,OAAO,MAAM,EAAE,EAAE,CAAC;QACpB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,OAAO,IAAI,QAAQ,IAAI,CAAC,2BAA2B,CAAC,GAAG,CAAC;gBAAE,MAAM,GAAG,CAAC;YACxE,MAAM,KAAK,CAAC,aAAa,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * The Swift half of an agent prompt's client-side types — #3798.
3
+ *
4
+ * `functions codegen --lang swift` writes one `<key>.agent.generated.swift`
5
+ * per `kind = "agent"` prompt, beside the function invokers, carrying:
6
+ *
7
+ * - `<Key>AgentVariables` — the session's variables, from `[prompt].inputSchema`;
8
+ * - `<Key>Tool<Name>Input` / `<Key>Tool<Name>Output` for every CLIENT tool
9
+ * (a server tool's schemas are its function's, typed in that function's
10
+ * own file);
11
+ * - `<Key>Event<Name>` for every event kind; and
12
+ * - `<Key>Agent`, a namespace enum with the key a session is created with
13
+ * and the declared client-tool and event names.
14
+ *
15
+ * ── Nothing about the agent is re-derived here ───────────────────────────
16
+ *
17
+ * Names, schemas and the declaration's defaults all come from
18
+ * `describePromptSchema` — the IR the TypeScript artifact reads, itself read
19
+ * through `normalizeAgentDeclaration` — so the two clients can never disagree
20
+ * about what an agent's contract is. Only Swift rendering, through the shared
21
+ * `renderSwiftRootType`, happens in this file.
22
+ *
23
+ * Written in the functions run's own `writeOrCheckGeneratedFiles` call
24
+ * (`generateFunctionSwiftTypes`), which owns both banners: a removed agent's
25
+ * file is swept, `--check` reports a stale one, and a file another generator
26
+ * stamped is never overwritten.
27
+ */
28
+ import { type PromptSchemaSource } from "../prompt-schema-codegen.js";
29
+ import { AGENT_SWIFT_BANNER_PREFIX } from "./banners.js";
30
+ export { AGENT_SWIFT_BANNER_PREFIX };
31
+ /** The file an agent prompt's Swift types are written to: `<key>.agent.generated.swift`. */
32
+ export declare const AGENT_SWIFT_FILE_SUFFIX = ".agent.generated.swift";
33
+ /**
34
+ * Render the full `<key>.agent.generated.swift` content for one agent prompt.
35
+ * Pure — exported so tests can assert on the string directly. Throws a
36
+ * `SwiftCodegenError` naming the file for a prompt that is not an agent.
37
+ */
38
+ export declare function renderAgentSwiftFile(source: PromptSchemaSource): {
39
+ key: string;
40
+ content: string;
41
+ symbols: string[];
42
+ };
@@ -0,0 +1,118 @@
1
+ /**
2
+ * The Swift half of an agent prompt's client-side types — #3798.
3
+ *
4
+ * `functions codegen --lang swift` writes one `<key>.agent.generated.swift`
5
+ * per `kind = "agent"` prompt, beside the function invokers, carrying:
6
+ *
7
+ * - `<Key>AgentVariables` — the session's variables, from `[prompt].inputSchema`;
8
+ * - `<Key>Tool<Name>Input` / `<Key>Tool<Name>Output` for every CLIENT tool
9
+ * (a server tool's schemas are its function's, typed in that function's
10
+ * own file);
11
+ * - `<Key>Event<Name>` for every event kind; and
12
+ * - `<Key>Agent`, a namespace enum with the key a session is created with
13
+ * and the declared client-tool and event names.
14
+ *
15
+ * ── Nothing about the agent is re-derived here ───────────────────────────
16
+ *
17
+ * Names, schemas and the declaration's defaults all come from
18
+ * `describePromptSchema` — the IR the TypeScript artifact reads, itself read
19
+ * through `normalizeAgentDeclaration` — so the two clients can never disagree
20
+ * about what an agent's contract is. Only Swift rendering, through the shared
21
+ * `renderSwiftRootType`, happens in this file.
22
+ *
23
+ * Written in the functions run's own `writeOrCheckGeneratedFiles` call
24
+ * (`generateFunctionSwiftTypes`), which owns both banners: a removed agent's
25
+ * file is swept, `--check` reports a stale one, and a file another generator
26
+ * stamped is never overwritten.
27
+ */
28
+ import { fingerprintToml } from "../db-codegen/dbFingerprint.js";
29
+ import { describePromptSchema, } from "../prompt-schema-codegen.js";
30
+ import { renderSwiftRootType, SwiftCodegenError } from "./schemaToSwift.js";
31
+ import { swiftKeyLiteral } from "./generator.js";
32
+ import { AGENT_SWIFT_BANNER_PREFIX } from "./banners.js";
33
+ import { parseTopLevelSwiftSymbols } from "./siblingSymbols.js";
34
+ export { AGENT_SWIFT_BANNER_PREFIX };
35
+ /** The file an agent prompt's Swift types are written to: `<key>.agent.generated.swift`. */
36
+ export const AGENT_SWIFT_FILE_SUFFIX = ".agent.generated.swift";
37
+ const INDENT = " ";
38
+ /** A Swift array literal of the declared names, in declaration order. */
39
+ function nameList(names) {
40
+ return `[${names.map(swiftKeyLiteral).join(", ")}]`;
41
+ }
42
+ /**
43
+ * Render the full `<key>.agent.generated.swift` content for one agent prompt.
44
+ * Pure — exported so tests can assert on the string directly. Throws a
45
+ * `SwiftCodegenError` naming the file for a prompt that is not an agent.
46
+ */
47
+ export function renderAgentSwiftFile(source) {
48
+ const prompt = describePromptSchema(source);
49
+ const agent = prompt.agent;
50
+ if (!agent) {
51
+ throw new SwiftCodegenError(`swift agent codegen: ${prompt.fileLabel} is not a kind = "agent" prompt`, { sourceFile: prompt.fileLabel });
52
+ }
53
+ const sourceFile = prompt.fileLabel;
54
+ const rendered = [
55
+ {
56
+ path: "inputSchema",
57
+ decl: renderSwiftRootType(agent.variablesTypeName, agent.inputSchema, { sourceFile }),
58
+ },
59
+ ...agent.clientTools.flatMap((tool) => [
60
+ {
61
+ path: `tools.${tool.name}.inputSchema`,
62
+ decl: renderSwiftRootType(tool.input.typeName, tool.input.schema, { sourceFile }),
63
+ },
64
+ {
65
+ path: `tools.${tool.name}.outputSchema`,
66
+ decl: renderSwiftRootType(tool.output.typeName, tool.output.schema, { sourceFile }),
67
+ },
68
+ ]),
69
+ ...agent.events.map((event) => ({
70
+ path: `events.${event.name}.schema`,
71
+ decl: renderSwiftRootType(event.typeName, event.schema, { sourceFile }),
72
+ })),
73
+ ];
74
+ // CSO-3798-002 — a schema's helper types are top-level too (an array of
75
+ // objects under `data` declares `<Key>EventDataItem`), so two of one agent's
76
+ // schemas can declare the same symbol. The run-scoped registry only compares
77
+ // owners, so the file is checked against itself here, naming both paths.
78
+ const symbolPath = new Map();
79
+ for (const { path, decl } of rendered) {
80
+ for (const symbol of new Set(parseTopLevelSwiftSymbols(decl))) {
81
+ const other = symbolPath.get(symbol);
82
+ if (other !== undefined) {
83
+ throw new SwiftCodegenError(`swift agent codegen: ${sourceFile}: \`${other}\` and \`${path}\` both ` +
84
+ `produce Swift symbol "${symbol}", which would be declared twice in ` +
85
+ `one file — rename one so the two differ after Swift normalization`, { sourceFile });
86
+ }
87
+ symbolPath.set(symbol, path);
88
+ }
89
+ }
90
+ const decls = rendered.map((entry) => entry.decl);
91
+ const namespace = [
92
+ `/// The \`${prompt.key}\` agent: the key a session is created with, and the`,
93
+ `/// client tools and event kinds it declares.`,
94
+ `public enum ${prompt.typeBaseName}Agent {`,
95
+ `${INDENT}public static let key = ${swiftKeyLiteral(prompt.key)}`,
96
+ `${INDENT}public static let clientToolNames: [String] = ${nameList(agent.clientTools.map((tool) => tool.name))}`,
97
+ `${INDENT}public static let eventNames: [String] = ${nameList(agent.events.map((event) => event.name))}`,
98
+ `}`,
99
+ ].join("\n");
100
+ const banner = [
101
+ `${AGENT_SWIFT_BANNER_PREFIX}${sourceFile.replace(/^prompts\//, "")} — DO NOT EDIT.`,
102
+ "// Run `primitive functions codegen --lang swift` to regenerate.",
103
+ `// fingerprint: ${fingerprintToml(source.tomlContent)}`,
104
+ ].join("\n");
105
+ // `JsBaoClient` for `JSONValue`, which an open schema renders to — the
106
+ // import the function invokers carry too.
107
+ const imports = ["import Foundation", "import JsBaoClient"].join("\n");
108
+ const content = [banner, imports, ...decls, namespace].join("\n\n") + "\n";
109
+ return {
110
+ key: prompt.key,
111
+ content,
112
+ // Read back off the rendered source, as the function emitter does
113
+ // (CR3344-001), so a nested helper type a schema declares is in the
114
+ // run-scoped registry too.
115
+ symbols: parseTopLevelSwiftSymbols(content),
116
+ };
117
+ }
118
+ //# sourceMappingURL=agentGenerator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agentGenerator.js","sourceRoot":"","sources":["../../../../src/lib/swift-codegen/agentGenerator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Ownership banners the CLI's Swift generators stamp and guard against.
3
+ *
4
+ * Three generators now write `.generated.swift` files that may share one
5
+ * output directory — workflows, database types and (since #3344) server
6
+ * functions. Each one sweeps only the files carrying its OWN banner and
7
+ * refuses to overwrite a file carrying another's, so each has to name the
8
+ * other two. The functions banner lives here, with no imports of its own, so
9
+ * `generator.ts` and `dbGenerator.ts` can both name it without deepening the
10
+ * import cycle those two already have.
11
+ */
12
+ /**
13
+ * Banner prefix stamped at the top of every `functions codegen --lang swift`
14
+ * file. Distinct from the workflow and database prefixes (and from the Swift
15
+ * model codegen's `// Generated by swift-bao-codegen` header), so a shared
16
+ * output directory stays safe in every direction.
17
+ */
18
+ export declare const FUNCTION_SWIFT_BANNER_PREFIX = "// AUTO-GENERATED FROM functions/";
19
+ /**
20
+ * Banner prefix of an agent prompt's `<key>.agent.generated.swift` (#3798),
21
+ * written by the same `functions codegen --lang swift` run as the function
22
+ * invokers but from `prompts/`, so the two are told apart by content too.
23
+ */
24
+ export declare const AGENT_SWIFT_BANNER_PREFIX = "// AUTO-GENERATED FROM prompts/";
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Ownership banners the CLI's Swift generators stamp and guard against.
3
+ *
4
+ * Three generators now write `.generated.swift` files that may share one
5
+ * output directory — workflows, database types and (since #3344) server
6
+ * functions. Each one sweeps only the files carrying its OWN banner and
7
+ * refuses to overwrite a file carrying another's, so each has to name the
8
+ * other two. The functions banner lives here, with no imports of its own, so
9
+ * `generator.ts` and `dbGenerator.ts` can both name it without deepening the
10
+ * import cycle those two already have.
11
+ */
12
+ /**
13
+ * Banner prefix stamped at the top of every `functions codegen --lang swift`
14
+ * file. Distinct from the workflow and database prefixes (and from the Swift
15
+ * model codegen's `// Generated by swift-bao-codegen` header), so a shared
16
+ * output directory stays safe in every direction.
17
+ */
18
+ export const FUNCTION_SWIFT_BANNER_PREFIX = "// AUTO-GENERATED FROM functions/";
19
+ /**
20
+ * Banner prefix of an agent prompt's `<key>.agent.generated.swift` (#3798),
21
+ * written by the same `functions codegen --lang swift` run as the function
22
+ * invokers but from `prompts/`, so the two are told apart by content too.
23
+ */
24
+ export const AGENT_SWIFT_BANNER_PREFIX = "// AUTO-GENERATED FROM prompts/";
25
+ //# sourceMappingURL=banners.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"banners.js","sourceRoot":"","sources":["../../../../src/lib/swift-codegen/banners.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,mCAAmC,CAAC;AAEhF;;;;GAIG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,iCAAiC,CAAC"}
@@ -34,6 +34,9 @@ import { writeOrCheckGeneratedFiles, } from "../codegen-shared/generatedFiles.js
34
34
  import { describeDbType, } from "../db-codegen/dbTypeIR.js";
35
35
  import { resolveRecordInterfaceName, opParamsInterfaceName, opResultAliasName, } from "../db-codegen/dbNaming.js";
36
36
  import { GENERATED_SWIFT_FILE_SUFFIX, SWIFT_BANNER_PREFIX } from "./generator.js";
37
+ // The third Swift generator's banner (#3344), from a leaf module so this adds
38
+ // no import cycle.
39
+ import { AGENT_SWIFT_BANNER_PREFIX, FUNCTION_SWIFT_BANNER_PREFIX, } from "./banners.js";
37
40
  import { assertNoRetainedSiblingCollision, assertNoForeignGeneratorSymbolCollision, } from "./siblingSymbols.js";
38
41
  import { SwiftCodegenError } from "./schemaToSwift.js";
39
42
  import { structTypeName, enumTypeName, enumCaseNames, swiftPropertyName, unescapeIdentifier, } from "./swiftNaming.js";
@@ -880,14 +883,18 @@ export async function generateDbSwiftTypes(options) {
880
883
  // regenerate workflow files — they coexist regardless of ordering.
881
884
  await assertNoForeignGeneratorSymbolCollision({
882
885
  outputDir: outAbs,
883
- foreignBanner: SWIFT_BANNER_PREFIX,
886
+ foreignBanner: [
887
+ SWIFT_BANNER_PREFIX,
888
+ FUNCTION_SWIFT_BANNER_PREFIX,
889
+ AGENT_SWIFT_BANNER_PREFIX,
890
+ ],
884
891
  suffix: GENERATED_SWIFT_FILE_SUFFIX,
885
892
  emitted: namespaceOwner,
886
- makeError: ({ symbol, owner, siblingStem }) => new SwiftCodegenError(`swift db codegen: namespace collision with a workflow-generated file — ` +
893
+ makeError: ({ symbol, owner, siblingStem }) => new SwiftCodegenError(`swift db codegen: namespace collision with another generator's file — ` +
887
894
  `database type "${owner}" emits the Swift namespace ` +
888
895
  `"public enum ${symbol}", but the existing ` +
889
896
  `"${siblingStem}${GENERATED_SWIFT_FILE_SUFFIX}" (owned by the workflow ` +
890
- `Swift generator) already declares a top-level "${symbol}" in the same ` +
897
+ `or functions Swift generator) already declares a top-level "${symbol}" in the same ` +
891
898
  `output directory, which redeclares when all .generated.swift files ` +
892
899
  `compile into one module. Rename the database type or the "${siblingStem}" ` +
893
900
  `workflow so the two differ after Swift normalization, or give one ` +
@@ -901,13 +908,18 @@ export async function generateDbSwiftTypes(options) {
901
908
  generatedSuffix: GENERATED_SWIFT_FILE_SUFFIX,
902
909
  // Pre-#2760 files are ours too, so the sweep still reaches them.
903
910
  ownershipBanner: DB_SWIFT_BANNER_PREFIXES,
904
- // Class 3b: never clobber a file owned by the workflow Swift generator.
905
- foreignOwnershipBanners: [SWIFT_BANNER_PREFIX],
911
+ // Class 3b: never clobber a file owned by the workflow or functions Swift
912
+ // generator.
913
+ foreignOwnershipBanners: [
914
+ SWIFT_BANNER_PREFIX,
915
+ FUNCTION_SWIFT_BANNER_PREFIX,
916
+ AGENT_SWIFT_BANNER_PREFIX,
917
+ ],
906
918
  onForeignBannerCollision: ({ filePath, foreignBanner }) => new SwiftCodegenError(`swift codegen: output collision — this run would overwrite ` +
907
919
  `"${path.basename(filePath)}" in the shared output directory, which ` +
908
920
  `is already owned by a different generator (banner ` +
909
- `"${foreignBanner.trim()}"). A database type and a workflow key with ` +
910
- `the same name cannot share an output directory; give one generator a ` +
921
+ `"${foreignBanner.trim()}"). A database type and a workflow or function ` +
922
+ `key with the same name cannot share an output directory; give one generator a ` +
911
923
  `separate --output directory.`),
912
924
  });
913
925
  }
@@ -1 +1 @@
1
- {"version":3,"file":"dbGenerator.js","sourceRoot":"","sources":["../../../../src/lib/swift-codegen/dbGenerator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dbGenerator.js","sourceRoot":"","sources":["../../../../src/lib/swift-codegen/dbGenerator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EACL,0BAA0B,GAE3B,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACL,cAAc,GAMf,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EACL,0BAA0B,EAC1B,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,2BAA2B,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAClF,8EAA8E;AAC9E,mBAAmB;AACnB,OAAO,EACL,yBAAyB,EACzB,4BAA4B,GAC7B,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,gCAAgC,EAChC,uCAAuC,GACxC,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EACL,cAAc,EACd,YAAY,EACZ,aAAa,EACb,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,mBAAmB,CAAC;AAE3B;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,+CAA+C,CAAC;AAEtF;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,6BAA6B,GACxC,wCAAwC,CAAC;AAE3C,yEAAyE;AACzE,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,sBAAsB;IACtB,6BAA6B;CAC9B,CAAC;AAEF,yDAAyD;AACzD,MAAM,aAAa,GAAG,aAAa,CAAC;AAEpC,MAAM,MAAM,GAAG,MAAM,CAAC;AACtB,MAAM,YAAY,GAAG,8BAA8B,CAAC;AAgBpD;;;;;;GAMG;AACH,SAAS,kBAAkB,CAAC,CAAS;IACnC,MAAM,OAAO,GAAG,CAAC;SACd,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC;SACtB,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC;SACpB,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC;SACrB,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC;SACrB,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC;SACrB,OAAO,CACN,kBAAkB,EAClB,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,WAAW,CAAC,CAAC,CAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,CAClD,CAAC;IACJ,OAAO,IAAI,OAAO,GAAG,CAAC;AACxB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,gBAAgB,CAAC,CAAS;IACjC,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,KAAK,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC;QACnB,MAAM,IAAI,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,CAAE,CAAC;QAChC,IAAI,EAAE,KAAK,IAAI;YAAE,GAAG,IAAI,KAAK,CAAC;aACzB,IAAI,EAAE,KAAK,IAAI;YAAE,GAAG,IAAI,KAAK,CAAC;aAC9B,IAAI,EAAE,KAAK,IAAI;YAAE,GAAG,IAAI,KAAK,CAAC;aAC9B,IAAI,IAAI,GAAG,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,MAAM;YACzE,GAAG,IAAI,OAAO,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC;;YAChC,GAAG,IAAI,EAAE,CAAC;IACjB,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,kFAAkF;AAClF,MAAM,UAAU,qBAAqB,CACnC,SAAiB,EACjB,SAA6B;IAE7B,OAAO,cAAc,CAAC,0BAA0B,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;AAC1E,CAAC;AAED,2EAA2E;AAC3E,SAAS,qBAAqB,CAAC,MAAc;IAC3C,OAAO,cAAc,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC,CAAC;AACvD,CAAC;AAED,yCAAyC;AACzC,SAAS,qBAAqB,CAAC,MAAc;IAC3C,OAAO,cAAc,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC;AACnD,CAAC;AAED;;;;;GAKG;AACH,SAAS,8BAA8B,CAAC,eAAuB;IAC7D,OAAO,cAAc,CAAC,GAAG,eAAe,KAAK,CAAC,CAAC;AACjD,CAAC;AAED,6EAA6E;AAC7E,SAAS,wBAAwB,CAAC,eAAuB;IACvD,OAAO,iBAAiB,CAAC,eAAe,CAAC,CAAC;AAC5C,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,eAAe,CAAC,YAAoB;IAClD,OAAO,cAAc,CAAC,YAAY,CAAC,CAAC;AACtC,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,wBAAwB,GAAwB,IAAI,GAAG,CAAC;IAC5D,8DAA8D;IAC9D,QAAQ;IACR,KAAK;IACL,QAAQ;IACR,MAAM;IACN,0EAA0E;IAC1E,4EAA4E;IAC5E,uCAAuC;IACvC,MAAM;IACN,MAAM;IACN,8EAA8E;IAC9E,8EAA8E;IAC9E,yEAAyE;IACzE,6BAA6B;IAC7B,OAAO;IACP,YAAY;IACZ,UAAU;IACV,KAAK;IACL,uEAAuE;IACvE,SAAS;IACT,WAAW;IACX,WAAW;IACX,WAAW;IACX,UAAU;IACV,UAAU;IACV,cAAc;IACd,WAAW;IACX,wEAAwE;IACxE,aAAa;IACb,WAAW;IACX,eAAe;IACf,4EAA4E;IAC5E,0BAA0B;IAC1B,4BAA4B;IAC5B,0BAA0B;IAC1B,mBAAmB;IACnB,eAAe;IACf,kBAAkB;IAClB,eAAe;IACf,mBAAmB;IACnB,sBAAsB;IACtB,kBAAkB;CACnB,CAAC,CAAC;AAEH;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,UAAU,uBAAuB,CACrC,YAAoB,EACpB,UAAkB;IAElB,MAAM,aAAa,GAAG,eAAe,CAAC,YAAY,CAAC,CAAC;IAEpD,IAAI,aAAa,KAAK,GAAG,EAAE,CAAC;QAC1B,MAAM,IAAI,iBAAiB,CACzB,oCAAoC,YAAY,sBAAsB;YACpE,kEAAkE;YAClE,uEAAuE;YACvE,mDAAmD,EACrD,EAAE,UAAU,EAAE,CACf,CAAC;IACJ,CAAC;IAED,IAAI,wBAAwB,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;QAChD,MAAM,IAAI,iBAAiB,CACzB,oCAAoC,YAAY,sBAAsB;YACpE,gCAAgC,aAAa,uBAAuB;YACpE,4CAA4C,aAAa,aAAa;YACtE,uEAAuE;YACvE,sCAAsC,aAAa,qBAAqB;YACxE,sEAAsE;YACtE,yDAAyD,aAAa,IAAI,EAC5E,EAAE,UAAU,EAAE,CACf,CAAC;IACJ,CAAC;IAED,OAAO,aAAa,CAAC;AACvB,CAAC;AAED;;;;GAIG;AACH,MAAM,kBAAkB,GAAG,KAAK,CAAC;AAEjC;;;GAGG;AACH,MAAM,mBAAmB,GAAG,KAAK,CAAC;AAElC;;;;;GAKG;AACH,MAAM,4BAA4B,GAAG,eAAe,CAAC;AACrD,MAAM,6BAA6B,GAAG,eAAe,CAAC;AAWtD;;;GAGG;AACH,SAAS,gBAAgB,CACvB,QAAgB,EAChB,MAAgB,EAChB,MAAc;IAEd,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAClC,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACxC,MAAM,KAAK,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IACpC,MAAM,KAAK,GAAG;QACZ,GAAG,GAAG,eAAe,QAAQ,6CAA6C;KAC3E,CAAC;IACF,KAAK,MAAM,CAAC,IAAI,KAAK;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,IAAI,MAAM,kBAAkB,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC3F,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;IACtB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;;;;;GAMG;AACH,SAAS,YAAY,CACnB,QAAgB,EAChB,OAAuB,EACvB,eAAyB;IAEzB,MAAM,CAAC,GAAG,MAAM,CAAC;IACjB,MAAM,eAAe,GAAG,OAAO,CAAC,IAAI,CAClC,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,CACrD,CAAC;IAEF,MAAM,GAAG,GAAa,CAAC,iBAAiB,QAAQ,KAAK,YAAY,IAAI,CAAC,CAAC;IAEvE,KAAK,MAAM,IAAI,IAAI,eAAe;QAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnD,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC;QAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAE7C,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC/E,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;QAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAErC,iCAAiC;IACjC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;IACnC,CAAC;SAAM,CAAC;QACN,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAC7B,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACvB,MAAM,IAAI,GAAG,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;YACjD,MAAM,GAAG,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;YACvC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,SAAS,KAAK,IAAI,GAAG,GAAG,GAAG,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACxF,CAAC,CAAC,CAAC;QACH,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACpB,KAAK,MAAM,CAAC,IAAI,OAAO;YAAE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,SAAS,MAAM,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;QAClF,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACpB,CAAC;IAED,IAAI,eAAe,EAAE,CAAC;QACpB,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACb,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;QAC5D,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,MAAM,IAAI,GAAG,kBAAkB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YAC7C,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,kBAAkB,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5E,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,SAAS,GAAG,GAAG,EAAE,CAAC,CAAC;QAChD,CAAC;QACD,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACpB,CAAC;IAED,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACd,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACxB,CAAC;AAED;;;;;GAKG;AACH,SAAS,kBAAkB,CACzB,QAAgB,EAChB,MAA4E,EAC5E,aAAuB;IAEvB,MAAM,OAAO,GAAmB,EAAE,CAAC;IACnC,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;IAEnC,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACrB,IAAI,IAAY,CAAC;QACjB,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtE,MAAM,QAAQ,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACtC,WAAW,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YACxD,IAAI,GAAG,QAAQ,CAAC;QAClB,CAAC;aAAM,CAAC;YACN,IAAI,GAAG,uBAAuB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACzC,CAAC;QACD,OAAO,CAAC,IAAI,CAAC;YACX,OAAO,EAAE,CAAC,CAAC,IAAI;YACf,SAAS,EAAE,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC;YACpC,IAAI;YACJ,QAAQ,EAAE,CAAC,CAAC,CAAC,QAAQ;SACtB,CAAC,CAAC;IACL,CAAC;IAED,yEAAyE;IACzE,KAAK,MAAM,OAAO,IAAI,aAAa,EAAE,CAAC;QACpC,IAAI,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC;YAAE,SAAS;QACpC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACtB,OAAO,CAAC,IAAI,CAAC;YACX,OAAO,EAAE,OAAO;YAChB,SAAS,EAAE,iBAAiB,CAAC,OAAO,CAAC;YACrC,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;SACf,CAAC,CAAC;IACL,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,oBAAoB,QAAQ,wBAAwB,CAAC;IAC9D,CAAC;IACD,OAAO,YAAY,CAAC,QAAQ,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;AACtD,CAAC;AAED,iDAAiD;AACjD,SAAS,kBAAkB,CAAC,QAAgB,EAAE,EAAU;IACtD,MAAM,OAAO,GAAmB,EAAE,CAAC;IACnC,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,CAAC;QAC1B,IAAI,IAAY,CAAC;QACjB,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtE,MAAM,QAAQ,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACtC,WAAW,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YACxD,IAAI,GAAG,uBAAuB,CAAC,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;QAC5D,CAAC;aAAM,IACL,CAAC,CAAC,IAAI,KAAK,OAAO;YAClB,CAAC,CAAC,KAAK,KAAK,QAAQ;YACpB,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;YACrB,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EACjB,CAAC;YACD,MAAM,QAAQ,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACtC,WAAW,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YACxD,IAAI,GAAG,uBAAuB,CAAC,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;QAC5D,CAAC;aAAM,CAAC;YACN,IAAI,GAAG,uBAAuB,CAAC,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;QAC7D,CAAC;QACD,OAAO,CAAC,IAAI,CAAC;YACX,OAAO,EAAE,CAAC,CAAC,IAAI;YACf,SAAS,EAAE,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC;YACpC,IAAI;YACJ,QAAQ,EAAE,CAAC,CAAC,CAAC,QAAQ;SACtB,CAAC,CAAC;IACL,CAAC;IACD,8EAA8E;IAC9E,OAAO,YAAY,CAAC,QAAQ,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;AACtD,CAAC;AAED;;;;;GAKG;AACH,SAAS,gBAAgB,CACvB,cAA6B,EAC7B,UAAqC;IAErC,IAAI,cAAc,KAAK,IAAI;QAAE,OAAO,0BAA0B,CAAC;IAC/D,MAAM,IAAI,GAAG,UAAU,EAAE,IAAI,IAAI,MAAM,CAAC;IACxC,OAAO,IAAI,KAAK,MAAM;QACpB,CAAC,CAAC,iBAAiB,cAAc,GAAG;QACpC,CAAC,CAAC,0BAA0B,CAAC;AACjC,CAAC;AAED,0DAA0D;AAC1D,SAAS,eAAe,CACtB,EAAU,EACV,iBAAyC;IAEzC,MAAM,SAAS,GAAG,CAAC,KAAoB,EAAiB,EAAE,CACxD,KAAK,CAAC,CAAC,CAAC,iBAAiB,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAElD,QAAQ,EAAE,CAAC,MAAM,EAAE,CAAC;QAClB,KAAK,OAAO;YACV,OAAO,gBAAgB,CAAC,SAAS,CAAC,EAAE,CAAC,eAAe,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC;QACxE,KAAK,UAAU;YACb,OAAO,kBAAkB,CAAC;QAC5B,KAAK,OAAO;YACV,OAAO,eAAe,CAAC;QACzB,KAAK,WAAW;YACd,OAAO,mBAAmB,CAAC;QAC7B,KAAK,cAAc;YACjB,OAAO,sBAAsB,CAAC;QAChC,KAAK,UAAU,CAAC,CAAC,CAAC;YAChB,MAAM,CAAC,GAAqB,EAAE,CAAC,cAAc,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;YACpE,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;gBACf,KAAK,OAAO;oBACV,OAAO,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC;gBAChE,KAAK,OAAO;oBACV,OAAO,eAAe,CAAC;gBACzB,KAAK,WAAW;oBACd,OAAO,mBAAmB,CAAC;gBAC7B,KAAK,QAAQ,CAAC;gBACd;oBACE,OAAO,kBAAkB,CAAC;YAC9B,CAAC;QACH,CAAC;QACD;YACE,yEAAyE;YACzE,OAAO,WAAW,CAAC;IACvB,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,gBAAgB,CACvB,YAAoB,EACpB,GAAa;IAEb,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAChC,MAAM,aAAa,GAAG,eAAe,CAAC,YAAY,CAAC,CAAC;IACpD,MAAM,CAAC,GAAG,MAAM,CAAC;IAEjB,MAAM,KAAK,GAAa;QACtB,4BAA4B,YAAY,gCAAgC;QACxE,SAAS,aAAa,IAAI,mBAAmB,0BAA0B;QACvE,iBAAiB,kBAAkB,cAAc;QACjD,GAAG,CAAC,gCAAgC;QACpC,GAAG,CAAC,+BAA+B;QACnC,EAAE;QACF,GAAG,CAAC,wDAAwD;QAC5D,GAAG,CAAC,GAAG,CAAC,sBAAsB;QAC9B,GAAG,CAAC,GAAG,CAAC,8BAA8B;QACtC,GAAG,CAAC,GAAG;KACR,CAAC;IAEF,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;QACrB,MAAM,MAAM,GAAG,iBAAiB,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;QAC5C,MAAM,UAAU,GAAG,qBAAqB,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;QACpD,MAAM,UAAU,GAAG,qBAAqB,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;QACpD,MAAM,WAAW,GAAG,kBAAkB,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;QAElD,yEAAyE;QACzE,uDAAuD;QACvD,MAAM,SAAS,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,aAAa,UAAU,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;QAC3E,MAAM,SAAS,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,UAAU,IAAI,CAAC;QAE9D,KAAK,CAAC,IAAI,CACR,EAAE,EACF,GAAG,CAAC,qBAAqB,EAAE,CAAC,MAAM,eAAe,EACjD,GAAG,CAAC,eAAe,MAAM,GAAG,CAC7B,CAAC;QACF,IAAI,SAAS;YAAE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACrC,KAAK,CAAC,IAAI,CACR,GAAG,CAAC,GAAG,CAAC,oBAAoB,EAC5B,GAAG,CAAC,GAAG,CAAC,wBAAwB,EAChC,GAAG,CAAC,GAAG,CAAC,kCAAkC,EAC1C,GAAG,CAAC,GAAG,CAAC,qBAAqB,EAC7B,GAAG,CAAC,qBAAqB,UAAU,IAAI,EACvC,GAAG,CAAC,GAAG,CAAC,8CAA8C,EACtD,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,yBAAyB,EACrC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,WAAW,GAAG,EACnC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,SAAS,GAAG,EACnC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,eAAe,EAC3B,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,iBAAiB,EAC7B,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,uBAAuB,EACnC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,gBAAgB,EAC5B,GAAG,CAAC,GAAG,CAAC,GAAG,EACX,GAAG,CAAC,GAAG,CACR,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IACpB,KAAK,CAAC,IAAI,CACR,0CAA0C,YAAY,mBAAmB,EACzE,sBAAsB,mBAAmB,kDAAkD,kBAAkB,IAAI,EACjH,GAAG,CAAC,GAAG,kBAAkB,0CAA0C,EACnE,GAAG,CACJ,CAAC;IAEF,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,SAAS,2BAA2B,CAClC,QAAgB,EAChB,GAAqB,EACrB,MAAkB,EAClB,cAAsB,EACtB,aAAuB;IAEvB,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACzD,MAAM,OAAO,GAAmB,EAAE,CAAC;IACnC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;IAEnC,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAC9B,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACrB,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;YAAE,SAAS;QAChD,MAAM,IAAI,GACR,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC;YAC/D,CAAC,CAAC,GAAG,cAAc,IAAI,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;YAC7C,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACtC,OAAO,CAAC,IAAI,CAAC;YACX,OAAO,EAAE,CAAC,CAAC,IAAI;YACf,SAAS,EAAE,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC;YACpC,IAAI;YACJ,QAAQ,EAAE,IAAI;SACf,CAAC,CAAC;IACL,CAAC;IAED,qEAAqE;IACrE,KAAK,MAAM,OAAO,IAAI,aAAa,EAAE,CAAC;QACpC,IAAI,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC;YAAE,SAAS;QACpC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACtB,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC;YAAE,SAAS;QACjD,OAAO,CAAC,IAAI,CAAC;YACX,OAAO,EAAE,OAAO;YAChB,SAAS,EAAE,iBAAiB,CAAC,OAAO,CAAC;YACrC,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;SACf,CAAC,CAAC;IACL,CAAC;IAED,MAAM,GAAG,GAAG;QACV,sCAAsC,gBAAgB,CACpD,GAAG,CAAC,eAAe,CACpB,kBAAkB;YACjB,YAAY,cAAc,KAAK,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,EAAE,IAAI;QAC9E,KAAK;QACL,yEAAyE;QACzE,0EAA0E;QAC1E,0EAA0E;QAC1E,4EAA4E;QAC5E,4CAA4C;KAC7C,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEb,8EAA8E;IAC9E,gBAAgB;IAChB,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,GAAG,GAAG,sBAAsB,QAAQ,wBAAwB,CAAC;IACtE,CAAC;IACD,OAAO,GAAG,GAAG,KAAK,YAAY,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC;AAC1D,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,0BAA0B,CACjC,YAAoB,EACpB,aAAiC;IAEjC,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAC1C,MAAM,aAAa,GAAG,eAAe,CAAC,YAAY,CAAC,CAAC;IACpD,MAAM,CAAC,GAAG,MAAM,CAAC;IAEjB,MAAM,KAAK,GAAa;QACtB,4BAA4B,YAAY,uCAAuC;QAC/E,cAAc,aAAa,IAAI,6BAA6B,0BAA0B;QACtF,iBAAiB,4BAA4B,cAAc;QAC3D,GAAG,CAAC,gCAAgC;QACpC,GAAG,CAAC,+BAA+B;QACnC,EAAE;QACF,GAAG,CAAC,wDAAwD;QAC5D,GAAG,CAAC,GAAG,CAAC,sBAAsB;QAC9B,GAAG,CAAC,GAAG,CAAC,8BAA8B;QACtC,GAAG,CAAC,GAAG;KACR,CAAC;IAEF,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,wBAAwB,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAC7D,MAAM,OAAO,GAAG,8BAA8B,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QACpE,MAAM,UAAU,GAAG,kBAAkB,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAE3D,KAAK,CAAC,IAAI,CACR,EAAE,EACF,GAAG,CAAC,0BAA0B,gBAAgB,CAC5C,GAAG,CAAC,eAAe,CACpB,kBAAkB,EACnB,GAAG,CAAC,KAAK,EACT,GAAG,CAAC,mEAAmE,EACvE,GAAG,CAAC,iCAAiC,EACrC,GAAG,CAAC,eAAe,MAAM,GAAG,EAC5B,GAAG,CAAC,GAAG,CAAC,iEAAiE,EACzE,GAAG,CAAC,GAAG,CAAC,6DAA6D,OAAO,YAAY,EACxF,GAAG,CAAC,iCAAiC,EACrC,GAAG,CAAC,GAAG,CAAC,iCAAiC,EACzC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,yBAAyB,EACrC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,oBAAoB,UAAU,GAAG,EAC7C,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,YAAY,OAAO,QAAQ,EACvC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,mBAAmB,EAC/B,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,oBAAoB,EAChC,GAAG,CAAC,GAAG,CAAC,GAAG,EACX,GAAG,CAAC,GAAG,CACR,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IACpB,KAAK,CAAC,IAAI,CACR,6CAA6C,YAAY,mBAAmB,EAC5E,sBAAsB,6BAA6B,kDAAkD,4BAA4B,IAAI,EACrI,GAAG,CAAC,GAAG,4BAA4B,0CAA0C,EAC7E,GAAG,CACJ,CAAC;IAEF,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;;;GAIG;AACH,SAAS,gBAAgB,CAAC,IAAY,EAAE,MAAc;IACpD,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAClC,OAAO,IAAI;SACR,KAAK,CAAC,IAAI,CAAC;SACX,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC;SACtD,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CAAC,KAAqB;IACzD,MAAM,EAAE,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IAEjC,MAAM,UAAU,GAAG,yBAAyB,EAAE,CAAC,YAAY,OAAO,CAAC;IAEnE,4EAA4E;IAC5E,4EAA4E;IAC5E,2EAA2E;IAC3E,2EAA2E;IAC3E,8EAA8E;IAC9E,MAAM,aAAa,GAAG,uBAAuB,CAAC,EAAE,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;IAE3E,uDAAuD;IACvD,0EAA0E;IAC1E,oEAAoE;IACpE,6EAA6E;IAC7E,2EAA2E;IAC3E,+EAA+E;IAC/E,mEAAmE;IACnE,+EAA+E;IAC/E,4CAA4C;IAC5C,EAAE;IACF,4EAA4E;IAC5E,yEAAyE;IACzE,8EAA8E;IAC9E,gFAAgF;IAChF,yEAAyE;IACzE,+EAA+E;IAC/E,8EAA8E;IAC9E,8EAA8E;IAC9E,8EAA8E;IAC9E,0EAA0E;IAC1E,+EAA+E;IAC/E,gFAAgF;IAChF,wEAAwE;IACxE,MAAM,iBAAiB,GAA2B,EAAE,CAAC;IACrD,4EAA4E;IAC5E,sEAAsE;IACtE,MAAM,cAAc,GAAG,IAAI,GAAG,EAG3B,CAAC;IACJ,MAAM,WAAW,GAAG,IAAI,GAAG,EAAkB,CAAC,CAAC,+BAA+B;IAE9E,MAAM,gBAAgB,GAAG,CACvB,MAAc,EACd,KAAa,EACb,UAAkB,EAClB,gBAAgB,GAAG,KAAK,EAClB,EAAE;QACR,MAAM,KAAK,GAAG,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACzC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,KAAK,KAAK,KAAK,EAAE,CAAC;YACjD,qEAAqE;YACrE,wEAAwE;YACxE,+CAA+C;YAC/C,MAAM,iBAAiB,GAAG,KAAK,CAAC,gBAAgB,IAAI,gBAAgB,CAAC;YACrE,MAAM,eAAe,GAAG,KAAK,CAAC,gBAAgB,IAAI,gBAAgB,CAAC;YACnE,MAAM,IAAI,GAAG,iBAAiB;gBAC5B,CAAC,CAAC,0EAA0E;gBAC5E,CAAC,CAAC,eAAe;oBACf,CAAC,CAAC,mEAAmE;wBACnE,2CAA2C;oBAC7C,CAAC,CAAC,oEAAoE;wBACpE,sBAAsB,CAAC;YAC7B,MAAM,IAAI,iBAAiB,CACzB,wDAAwD,EAAE,CAAC,YAAY,MAAM;gBAC3E,GAAG,KAAK,CAAC,KAAK,QAAQ,KAAK,+BAA+B,MAAM,WAAW;gBAC3E,IAAI,eAAe,CAAC,EAAE,CAAC,YAAY,CAAC,eAAe;gBACnD,4CAA4C,IAAI,EAAE,EACpD,EAAE,UAAU,EAAE,UAAU,EAAE,CAC3B,CAAC;QACJ,CAAC;QACD,cAAc,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC,CAAC;IAC1D,CAAC,CAAC;IAEF,kBAAkB;IAClB,KAAK,MAAM,GAAG,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,qBAAqB,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;QACrE,gBAAgB,CAAC,QAAQ,EAAE,WAAW,GAAG,CAAC,SAAS,GAAG,EAAE,QAAQ,CAAC,CAAC;QAClE,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,QAAQ,CAAC;IAC9C,CAAC;IAED,uEAAuE;IACvE,KAAK,MAAM,EAAE,IAAI,EAAE,CAAC,GAAG,EAAE,CAAC;QACxB,gBAAgB,CACd,qBAAqB,CAAC,EAAE,CAAC,MAAM,CAAC,EAChC,cAAc,EAAE,CAAC,MAAM,UAAU,EACjC,YAAY,CACb,CAAC;QACF,gBAAgB,CACd,qBAAqB,CAAC,EAAE,CAAC,MAAM,CAAC,EAChC,cAAc,EAAE,CAAC,MAAM,UAAU,EACjC,YAAY,CACb,CAAC;QACF,MAAM,MAAM,GAAG,iBAAiB,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;QAC5C,6EAA6E;QAC7E,2EAA2E;QAC3E,4EAA4E;QAC5E,0EAA0E;QAC1E,yEAAyE;QACzE,2EAA2E;QAC3E,wDAAwD;QACxD,MAAM,SAAS,GAAG,EAAE,CAAC,SAAS;YAC5B,CAAC,CAAC,GAAG,MAAM,IAAI,qBAAqB,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG;YAClD,CAAC,CAAC,GAAG,MAAM,IAAI,CAAC;QAClB,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC3C,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,EAAE,CAAC,MAAM,EAAE,CAAC;YACnD,MAAM,IAAI,iBAAiB,CACzB,0EAA0E;gBACxE,IAAI,EAAE,CAAC,YAAY,mBAAmB,OAAO,UAAU,EAAE,CAAC,MAAM,IAAI;gBACpE,+BAA+B,MAAM,4BAA4B;gBACjE,qBAAqB,eAAe,CAClC,EAAE,CAAC,YAAY,CAChB,IAAI,kBAAkB,4CAA4C;gBACnE,uBAAuB;gBACvB,iEAAiE;gBACjE,4BAA4B,EAC9B,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,EAAE,CACzC,CAAC;QACJ,CAAC;QACD,WAAW,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;IACxC,CAAC;IAED,4EAA4E;IAC5E,6EAA6E;IAC7E,4EAA4E;IAC5E,0EAA0E;IAC1E,IAAI,EAAE,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,gBAAgB,CACd,kBAAkB,EAClB,SAAS,kBAAkB,sBAAsB,EACjD,YAAY,CACb,CAAC;QACF,gBAAgB,CACd,mBAAmB,EACnB,SAAS,mBAAmB,uBAAuB,EACnD,YAAY,CACb,CAAC;IACJ,CAAC;IAED,2EAA2E;IAC3E,4EAA4E;IAC5E,8EAA8E;IAC9E,2EAA2E;IAC3E,8EAA8E;IAC9E,4EAA4E;IAC5E,iCAAiC;IACjC,KAAK,MAAM,GAAG,IAAI,EAAE,CAAC,aAAa,EAAE,CAAC;QACnC,0EAA0E;QAC1E,sEAAsE;QACtE,oEAAoE;QACpE,wEAAwE;QACxE,0EAA0E;QAC1E,IAAI,wBAAwB,CAAC,GAAG,CAAC,eAAe,CAAC,KAAK,GAAG,EAAE,CAAC;YAC1D,MAAM,IAAI,iBAAiB,CACzB,uCAAuC,GAAG,CAAC,eAAe,gBAAgB;gBACxE,SAAS,EAAE,CAAC,YAAY,6CAA6C;gBACrE,qEAAqE;gBACrE,uEAAuE;gBACvE,8BAA8B,EAChC,EAAE,UAAU,EAAE,UAAU,EAAE,eAAe,EAAE,CAC5C,CAAC;QACJ,CAAC;QACD,gBAAgB,CACd,8BAA8B,CAAC,GAAG,CAAC,eAAe,CAAC,EACnD,iBAAiB,GAAG,CAAC,eAAe,eAAe,EACnD,eAAe,EACf,IAAI,CACL,CAAC;IACJ,CAAC;IACD,IAAI,EAAE,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChC,gBAAgB,CACd,4BAA4B,EAC5B,SAAS,4BAA4B,yBAAyB,EAC9D,eAAe,CAChB,CAAC;QACF,gBAAgB,CACd,6BAA6B,EAC7B,SAAS,6BAA6B,0BAA0B,EAChE,eAAe,CAChB,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG;QACb,gDAAgD,EAAE,CAAC,YAAY,sBAAsB;QACrF,kEAAkE;QAClE,mBAAmB,EAAE,CAAC,WAAW,EAAE;KACpC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEb,MAAM,OAAO,GAAG,CAAC,mBAAmB,EAAE,UAAU,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAE5E,MAAM,UAAU,GAAa,EAAE,CAAC;IAEhC,sEAAsE;IACtE,MAAM,aAAa,GAAG,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAClD,iBAAiB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAC7E,CAAC;IACF,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;QAChC,UAAU,CAAC,IAAI,CACb,kBAAkB,CAChB,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,EAChC,GAAG,CAAC,MAAM,EACV,EAAE,CAAC,aAAa,CACjB,CACF,CAAC;IACJ,CAAC;IAED,0EAA0E;IAC1E,KAAK,MAAM,EAAE,IAAI,EAAE,CAAC,GAAG,EAAE,CAAC;QACxB,UAAU,CAAC,IAAI,CAAC,kBAAkB,CAAC,qBAAqB,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAC1E,UAAU,CAAC,IAAI,CACb,oBAAoB,qBAAqB,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,eAAe,CACvE,EAAE,EACF,iBAAiB,CAClB,EAAE,CACJ,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,gBAAgB,CAAC,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;IAC1D,IAAI,OAAO;QAAE,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAEtC,wEAAwE;IACxE,0EAA0E;IAC1E,iBAAiB;IACjB,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;IAC7E,KAAK,MAAM,GAAG,IAAI,EAAE,CAAC,aAAa,EAAE,CAAC;QACnC,2EAA2E;QAC3E,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAE,CAAC;QACjD,UAAU,CAAC,IAAI,CACb,2BAA2B,CACzB,8BAA8B,CAAC,GAAG,CAAC,eAAe,CAAC,EACnD,GAAG,EACH,MAAM,EACN,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,EAChC,EAAE,CAAC,aAAa,CACjB,CACF,CAAC;IACJ,CAAC;IACD,MAAM,oBAAoB,GAAG,0BAA0B,CACrD,EAAE,CAAC,YAAY,EACf,EAAE,CAAC,aAAa,CACjB,CAAC;IACF,IAAI,oBAAoB;QAAE,UAAU,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IAEhE,6EAA6E;IAC7E,8EAA8E;IAC9E,2EAA2E;IAC3E,4EAA4E;IAC5E,4EAA4E;IAC5E,0DAA0D;IAC1D,MAAM,UAAU,GACd,UAAU,CAAC,MAAM,KAAK,CAAC;QACrB,CAAC,CAAC,eAAe,aAAa,KAAK;QACnC,CAAC,CAAC,eAAe,aAAa,OAAO,gBAAgB,CACjD,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,EACvB,CAAC,CACF,KAAK,CAAC;IAEb,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;AAC3D,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,OAAoC;IAEpC,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAE/C,sEAAsE;IACtE,gEAAgE;IAChE,wEAAwE;IACxE,0EAA0E;IAC1E,6EAA6E;IAC7E,4EAA4E;IAC5E,sEAAsE;IACtE,6EAA6E;IAC7E,8EAA8E;IAC9E,2EAA2E;IAC3E,sBAAsB;IACtB,EAAE;IACF,4EAA4E;IAC5E,4EAA4E;IAC5E,4EAA4E;IAC5E,yEAAyE;IACzE,yEAAyE;IACzE,uEAAuE;IACvE,2EAA2E;IAC3E,yEAAyE;IACzE,8BAA8B;IAC9B,MAAM,cAAc,GAAG,IAAI,GAAG,EAAkB,CAAC;IAEjD,MAAM,YAAY,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC/C,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnC,uEAAuE;QACvE,qEAAqE;QACrE,MAAM,OAAO,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;QAC7C,MAAM,SAAS,GAAG,eAAe,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QACtD,MAAM,KAAK,GAAG,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC5C,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,KAAK,CAAC,YAAY,EAAE,CAAC;YACxD,MAAM,IAAI,iBAAiB,CACzB,2DAA2D,KAAK,QAAQ;gBACtE,IAAI,KAAK,CAAC,YAAY,0CAA0C;gBAChE,IAAI,SAAS,mCAAmC,SAAS,SAAS;gBAClE,sEAAsE;gBACtE,uEAAuE,EACzE,EAAE,UAAU,EAAE,yBAAyB,KAAK,CAAC,YAAY,OAAO,EAAE,CACnE,CAAC;QACJ,CAAC;QACD,cAAc,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;QAClD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CACxB,MAAM,EACN,GAAG,KAAK,CAAC,YAAY,GAAG,2BAA2B,EAAE,CACtD,CAAC;QACF,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACtC,CAAC;IAED,0EAA0E;IAC1E,+DAA+D;IAC/D,yEAAyE;IACzE,4EAA4E;IAC5E,oEAAoE;IACpE,8EAA8E;IAC9E,mEAAmE;IACnE,8EAA8E;IAC9E,2EAA2E;IAC3E,6EAA6E;IAC7E,4EAA4E;IAC5E,kEAAkE;IAClE,4EAA4E;IAC5E,IAAI,OAAO,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;QAChC,MAAM,gCAAgC,CAAC;YACrC,SAAS,EAAE,MAAM;YACjB,eAAe,EAAE,wBAAwB;YACzC,MAAM,EAAE,2BAA2B;YACnC,OAAO,EAAE,cAAc;YACvB,QAAQ,EAAE,YAAY,CAAC,IAAI,EAAE;YAC7B,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,CAC5C,IAAI,iBAAiB,CACnB,kEAAkE;gBAChE,kBAAkB,KAAK,gCAAgC;gBACvD,IAAI,WAAW,GAAG,2BAA2B,qBAAqB;gBAClE,gCAAgC,MAAM,+BAA+B;gBACrE,6DAA6D;gBAC7D,gEAAgE;gBAChE,kEAAkE;gBAClE,0DAA0D,EAC5D,EAAE,UAAU,EAAE,yBAAyB,KAAK,OAAO,EAAE,CACtD;SACJ,CAAC,CAAC;IACL,CAAC;IAED,uEAAuE;IACvE,6EAA6E;IAC7E,2EAA2E;IAC3E,uEAAuE;IACvE,8EAA8E;IAC9E,2EAA2E;IAC3E,wEAAwE;IACxE,8EAA8E;IAC9E,8EAA8E;IAC9E,mEAAmE;IACnE,MAAM,uCAAuC,CAAC;QAC5C,SAAS,EAAE,MAAM;QACjB,aAAa,EAAE;YACb,mBAAmB;YACnB,4BAA4B;YAC5B,yBAAyB;SAC1B;QACD,MAAM,EAAE,2BAA2B;QACnC,OAAO,EAAE,cAAc;QACvB,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,CAC5C,IAAI,iBAAiB,CACnB,wEAAwE;YACtE,kBAAkB,KAAK,8BAA8B;YACrD,gBAAgB,MAAM,sBAAsB;YAC5C,IAAI,WAAW,GAAG,2BAA2B,2BAA2B;YACxE,+DAA+D,MAAM,gBAAgB;YACrF,qEAAqE;YACrE,6DAA6D,WAAW,IAAI;YAC5E,oEAAoE;YACpE,0CAA0C,EAC5C,EAAE,UAAU,EAAE,yBAAyB,KAAK,OAAO,EAAE,CACtD;KACJ,CAAC,CAAC;IAEH,OAAO,MAAM,0BAA0B,CAAC;QACtC,SAAS,EAAE,MAAM;QACjB,YAAY;QACZ,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,aAAa,EAAE,OAAO,CAAC,UAAU,KAAK,IAAI;QAC1C,eAAe,EAAE,2BAA2B;QAC5C,iEAAiE;QACjE,eAAe,EAAE,wBAAwB;QACzC,0EAA0E;QAC1E,aAAa;QACb,uBAAuB,EAAE;YACvB,mBAAmB;YACnB,4BAA4B;YAC5B,yBAAyB;SAC1B;QACD,wBAAwB,EAAE,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,EAAE,CACxD,IAAI,iBAAiB,CACnB,6DAA6D;YAC3D,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,0CAA0C;YACrE,oDAAoD;YACpD,IAAI,aAAa,CAAC,IAAI,EAAE,iDAAiD;YACzE,gFAAgF;YAChF,8BAA8B,CACjC;KACJ,CAAC,CAAC;AACL,CAAC"}