@noodleseed/one 0.16.0 → 0.17.0

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 (275) hide show
  1. package/dist/cli.d.ts.map +1 -1
  2. package/dist/cli.js +49 -5
  3. package/dist/cli.js.map +1 -1
  4. package/dist/commands/apps-ops.d.ts +17 -0
  5. package/dist/commands/apps-ops.d.ts.map +1 -0
  6. package/dist/commands/apps-ops.js +285 -0
  7. package/dist/commands/apps-ops.js.map +1 -0
  8. package/dist/commands/archive-ops.js +2 -2
  9. package/dist/commands/archive-ops.js.map +1 -1
  10. package/dist/commands/catalog-data-config.d.ts +9 -0
  11. package/dist/commands/catalog-data-config.d.ts.map +1 -0
  12. package/dist/commands/catalog-data-config.js +67 -0
  13. package/dist/commands/catalog-data-config.js.map +1 -0
  14. package/dist/commands/catalog-data-core.d.ts +13 -0
  15. package/dist/commands/catalog-data-core.d.ts.map +1 -0
  16. package/dist/commands/catalog-data-core.js +354 -0
  17. package/dist/commands/catalog-data-core.js.map +1 -0
  18. package/dist/commands/catalog-data-resources.d.ts +8 -0
  19. package/dist/commands/catalog-data-resources.d.ts.map +1 -0
  20. package/dist/commands/catalog-data-resources.js +506 -0
  21. package/dist/commands/catalog-data-resources.js.map +1 -0
  22. package/dist/commands/catalog-dispatch.d.ts +15 -0
  23. package/dist/commands/catalog-dispatch.d.ts.map +1 -0
  24. package/dist/commands/catalog-dispatch.js +95 -0
  25. package/dist/commands/catalog-dispatch.js.map +1 -0
  26. package/dist/commands/catalog-render.d.ts +28 -0
  27. package/dist/commands/catalog-render.d.ts.map +1 -0
  28. package/dist/commands/catalog-render.js +142 -0
  29. package/dist/commands/catalog-render.js.map +1 -0
  30. package/dist/commands/catalog-types.d.ts +46 -0
  31. package/dist/commands/catalog-types.d.ts.map +1 -0
  32. package/dist/commands/catalog-types.js +7 -0
  33. package/dist/commands/catalog-types.js.map +1 -0
  34. package/dist/commands/catalog.d.ts +30 -0
  35. package/dist/commands/catalog.d.ts.map +1 -0
  36. package/dist/commands/catalog.js +108 -0
  37. package/dist/commands/catalog.js.map +1 -0
  38. package/dist/commands/commands-ops.d.ts +2 -0
  39. package/dist/commands/commands-ops.d.ts.map +1 -0
  40. package/dist/commands/commands-ops.js +19 -0
  41. package/dist/commands/commands-ops.js.map +1 -0
  42. package/dist/commands/deploy-ops.d.ts +45 -3
  43. package/dist/commands/deploy-ops.d.ts.map +1 -1
  44. package/dist/commands/deploy-ops.js +200 -227
  45. package/dist/commands/deploy-ops.js.map +1 -1
  46. package/dist/commands/deploy-status-ops.d.ts +13 -0
  47. package/dist/commands/deploy-status-ops.d.ts.map +1 -0
  48. package/dist/commands/deploy-status-ops.js +252 -0
  49. package/dist/commands/deploy-status-ops.js.map +1 -0
  50. package/dist/commands/deployments-ops.d.ts +30 -0
  51. package/dist/commands/deployments-ops.d.ts.map +1 -0
  52. package/dist/commands/deployments-ops.js +248 -0
  53. package/dist/commands/deployments-ops.js.map +1 -0
  54. package/dist/commands/envs-ops.d.ts +8 -0
  55. package/dist/commands/envs-ops.d.ts.map +1 -0
  56. package/dist/commands/envs-ops.js +240 -0
  57. package/dist/commands/envs-ops.js.map +1 -0
  58. package/dist/commands/github-ops.d.ts +15 -0
  59. package/dist/commands/github-ops.d.ts.map +1 -0
  60. package/dist/commands/github-ops.js +296 -0
  61. package/dist/commands/github-ops.js.map +1 -0
  62. package/dist/commands/github-shared.d.ts +60 -0
  63. package/dist/commands/github-shared.d.ts.map +1 -0
  64. package/dist/commands/github-shared.js +175 -0
  65. package/dist/commands/github-shared.js.map +1 -0
  66. package/dist/commands/org-admin.d.ts.map +1 -1
  67. package/dist/commands/org-admin.js +223 -43
  68. package/dist/commands/org-admin.js.map +1 -1
  69. package/dist/commands/output.d.ts +35 -0
  70. package/dist/commands/output.d.ts.map +1 -0
  71. package/dist/commands/output.js +34 -0
  72. package/dist/commands/output.js.map +1 -0
  73. package/dist/commands/resource-shared.d.ts +132 -0
  74. package/dist/commands/resource-shared.d.ts.map +1 -0
  75. package/dist/commands/resource-shared.js +159 -0
  76. package/dist/commands/resource-shared.js.map +1 -0
  77. package/dist/commands/session.d.ts +6 -9
  78. package/dist/commands/session.d.ts.map +1 -1
  79. package/dist/commands/session.js +42 -116
  80. package/dist/commands/session.js.map +1 -1
  81. package/dist/commands/shared.d.ts.map +1 -1
  82. package/dist/commands/shared.js +3 -91
  83. package/dist/commands/shared.js.map +1 -1
  84. package/dist/commands/target-picker.d.ts +44 -0
  85. package/dist/commands/target-picker.d.ts.map +1 -0
  86. package/dist/commands/target-picker.js +88 -0
  87. package/dist/commands/target-picker.js.map +1 -0
  88. package/dist/commands/update-ops.js +1 -1
  89. package/dist/diagnostics.d.ts +5 -0
  90. package/dist/diagnostics.d.ts.map +1 -1
  91. package/dist/diagnostics.js +1 -1
  92. package/dist/diagnostics.js.map +1 -1
  93. package/dist/doctor.d.ts.map +1 -1
  94. package/dist/doctor.js +33 -0
  95. package/dist/doctor.js.map +1 -1
  96. package/dist/fire.d.ts +94 -0
  97. package/dist/fire.d.ts.map +1 -0
  98. package/dist/fire.js +418 -0
  99. package/dist/fire.js.map +1 -0
  100. package/dist/flavor.d.ts +19 -0
  101. package/dist/flavor.d.ts.map +1 -0
  102. package/dist/flavor.js +95 -0
  103. package/dist/flavor.js.map +1 -0
  104. package/dist/project.js +2 -2
  105. package/dist/prompts.d.ts.map +1 -1
  106. package/dist/prompts.js +30 -17
  107. package/dist/prompts.js.map +1 -1
  108. package/dist/relative-time.d.ts +8 -0
  109. package/dist/relative-time.d.ts.map +1 -0
  110. package/dist/relative-time.js +29 -0
  111. package/dist/relative-time.js.map +1 -0
  112. package/dist/table.d.ts +47 -0
  113. package/dist/table.d.ts.map +1 -0
  114. package/dist/table.js +152 -0
  115. package/dist/table.js.map +1 -0
  116. package/dist/update-binary.js +1 -1
  117. package/dist/update-check.d.ts +1 -1
  118. package/dist/update-check.js +1 -1
  119. package/dist/update.js +1 -1
  120. package/dist/watch.d.ts +52 -0
  121. package/dist/watch.d.ts.map +1 -0
  122. package/dist/watch.js +177 -0
  123. package/dist/watch.js.map +1 -0
  124. package/node_modules/@noodle-borg/agent-kit/dist/curated/command-groups.d.ts.map +1 -1
  125. package/node_modules/@noodle-borg/agent-kit/dist/curated/command-groups.js +23 -1
  126. package/node_modules/@noodle-borg/agent-kit/dist/curated/command-groups.js.map +1 -1
  127. package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.d.ts.map +1 -1
  128. package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.js +5 -0
  129. package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.js.map +1 -1
  130. package/node_modules/@noodle-borg/agent-kit/package.json +1 -1
  131. package/node_modules/@noodle-borg/authoring/dist/connectors.js +14 -0
  132. package/node_modules/@noodle-borg/authoring/dist/connectors.js.map +1 -1
  133. package/node_modules/@noodle-borg/connector-defs/dist/compile.js +9 -0
  134. package/node_modules/@noodle-borg/connector-defs/dist/compile.js.map +1 -1
  135. package/node_modules/@noodle-borg/openapi-import/dist/index.d.ts.map +1 -1
  136. package/node_modules/@noodle-borg/openapi-import/dist/index.js +3 -1
  137. package/node_modules/@noodle-borg/openapi-import/dist/index.js.map +1 -1
  138. package/node_modules/@noodle-borg/service/dist/github/app-client.d.ts +49 -0
  139. package/node_modules/@noodle-borg/service/dist/github/app-client.d.ts.map +1 -0
  140. package/node_modules/@noodle-borg/service/dist/github/app-client.js +23 -0
  141. package/node_modules/@noodle-borg/service/dist/github/app-client.js.map +1 -0
  142. package/node_modules/@noodle-borg/service/dist/github/install-nonce.d.ts +23 -0
  143. package/node_modules/@noodle-borg/service/dist/github/install-nonce.d.ts.map +1 -0
  144. package/node_modules/@noodle-borg/service/dist/github/install-nonce.js +57 -0
  145. package/node_modules/@noodle-borg/service/dist/github/install-nonce.js.map +1 -0
  146. package/node_modules/@noodle-borg/service/dist/github/pending-installations.d.ts +31 -0
  147. package/node_modules/@noodle-borg/service/dist/github/pending-installations.d.ts.map +1 -0
  148. package/node_modules/@noodle-borg/service/dist/github/pending-installations.js +34 -0
  149. package/node_modules/@noodle-borg/service/dist/github/pending-installations.js.map +1 -0
  150. package/node_modules/@noodle-borg/service/dist/index.d.ts +7 -1
  151. package/node_modules/@noodle-borg/service/dist/index.d.ts.map +1 -1
  152. package/node_modules/@noodle-borg/service/dist/index.js +7 -1
  153. package/node_modules/@noodle-borg/service/dist/index.js.map +1 -1
  154. package/node_modules/@noodle-borg/service/dist/options.d.ts +28 -1
  155. package/node_modules/@noodle-borg/service/dist/options.d.ts.map +1 -1
  156. package/node_modules/@noodle-borg/service/dist/registry-state.d.ts +28 -7
  157. package/node_modules/@noodle-borg/service/dist/registry-state.d.ts.map +1 -1
  158. package/node_modules/@noodle-borg/service/dist/registry-state.js +116 -3
  159. package/node_modules/@noodle-borg/service/dist/registry-state.js.map +1 -1
  160. package/node_modules/@noodle-borg/service/dist/registry.d.ts +14 -1
  161. package/node_modules/@noodle-borg/service/dist/registry.d.ts.map +1 -1
  162. package/node_modules/@noodle-borg/service/dist/registry.js +20 -45
  163. package/node_modules/@noodle-borg/service/dist/registry.js.map +1 -1
  164. package/node_modules/@noodle-borg/service/dist/routes/analytics-dispatch.d.ts +23 -0
  165. package/node_modules/@noodle-borg/service/dist/routes/analytics-dispatch.d.ts.map +1 -0
  166. package/node_modules/@noodle-borg/service/dist/routes/analytics-dispatch.js +53 -0
  167. package/node_modules/@noodle-borg/service/dist/routes/analytics-dispatch.js.map +1 -0
  168. package/node_modules/@noodle-borg/service/dist/routes/apps.d.ts +24 -0
  169. package/node_modules/@noodle-borg/service/dist/routes/apps.d.ts.map +1 -0
  170. package/node_modules/@noodle-borg/service/dist/routes/apps.js +72 -0
  171. package/node_modules/@noodle-borg/service/dist/routes/apps.js.map +1 -0
  172. package/node_modules/@noodle-borg/service/dist/routes/contracts.d.ts +316 -0
  173. package/node_modules/@noodle-borg/service/dist/routes/contracts.d.ts.map +1 -0
  174. package/node_modules/@noodle-borg/service/dist/routes/contracts.js +152 -0
  175. package/node_modules/@noodle-borg/service/dist/routes/contracts.js.map +1 -0
  176. package/node_modules/@noodle-borg/service/dist/routes/deployments.d.ts +12 -1
  177. package/node_modules/@noodle-borg/service/dist/routes/deployments.d.ts.map +1 -1
  178. package/node_modules/@noodle-borg/service/dist/routes/deployments.js +31 -2
  179. package/node_modules/@noodle-borg/service/dist/routes/deployments.js.map +1 -1
  180. package/node_modules/@noodle-borg/service/dist/routes/endpoint-enrichment.d.ts +17 -0
  181. package/node_modules/@noodle-borg/service/dist/routes/endpoint-enrichment.d.ts.map +1 -0
  182. package/node_modules/@noodle-borg/service/dist/routes/endpoint-enrichment.js +15 -0
  183. package/node_modules/@noodle-borg/service/dist/routes/endpoint-enrichment.js.map +1 -0
  184. package/node_modules/@noodle-borg/service/dist/routes/envs.d.ts +22 -0
  185. package/node_modules/@noodle-borg/service/dist/routes/envs.d.ts.map +1 -0
  186. package/node_modules/@noodle-borg/service/dist/routes/envs.js +46 -0
  187. package/node_modules/@noodle-borg/service/dist/routes/envs.js.map +1 -0
  188. package/node_modules/@noodle-borg/service/dist/routes/github-connection.d.ts +29 -0
  189. package/node_modules/@noodle-borg/service/dist/routes/github-connection.d.ts.map +1 -0
  190. package/node_modules/@noodle-borg/service/dist/routes/github-connection.js +202 -0
  191. package/node_modules/@noodle-borg/service/dist/routes/github-connection.js.map +1 -0
  192. package/node_modules/@noodle-borg/service/dist/routes/github-dispatch.d.ts +29 -0
  193. package/node_modules/@noodle-borg/service/dist/routes/github-dispatch.d.ts.map +1 -0
  194. package/node_modules/@noodle-borg/service/dist/routes/github-dispatch.js +60 -0
  195. package/node_modules/@noodle-borg/service/dist/routes/github-dispatch.js.map +1 -0
  196. package/node_modules/@noodle-borg/service/dist/routes/github-setup.d.ts +28 -0
  197. package/node_modules/@noodle-borg/service/dist/routes/github-setup.d.ts.map +1 -0
  198. package/node_modules/@noodle-borg/service/dist/routes/github-setup.js +80 -0
  199. package/node_modules/@noodle-borg/service/dist/routes/github-setup.js.map +1 -0
  200. package/node_modules/@noodle-borg/service/dist/routes/org-admin.d.ts +5 -0
  201. package/node_modules/@noodle-borg/service/dist/routes/org-admin.d.ts.map +1 -1
  202. package/node_modules/@noodle-borg/service/dist/routes/org-admin.js +13 -1
  203. package/node_modules/@noodle-borg/service/dist/routes/org-admin.js.map +1 -1
  204. package/node_modules/@noodle-borg/service/dist/routes/paths.d.ts +44 -0
  205. package/node_modules/@noodle-borg/service/dist/routes/paths.d.ts.map +1 -1
  206. package/node_modules/@noodle-borg/service/dist/routes/paths.js +116 -1
  207. package/node_modules/@noodle-borg/service/dist/routes/paths.js.map +1 -1
  208. package/node_modules/@noodle-borg/service/dist/routes/resource-read-dispatch.d.ts +33 -0
  209. package/node_modules/@noodle-borg/service/dist/routes/resource-read-dispatch.d.ts.map +1 -0
  210. package/node_modules/@noodle-borg/service/dist/routes/resource-read-dispatch.js +69 -0
  211. package/node_modules/@noodle-borg/service/dist/routes/resource-read-dispatch.js.map +1 -0
  212. package/node_modules/@noodle-borg/service/dist/service.d.ts.map +1 -1
  213. package/node_modules/@noodle-borg/service/dist/service.js +60 -45
  214. package/node_modules/@noodle-borg/service/dist/service.js.map +1 -1
  215. package/node_modules/@noodle-borg/service/dist/store/control-plane.d.ts +1 -0
  216. package/node_modules/@noodle-borg/service/dist/store/control-plane.d.ts.map +1 -1
  217. package/node_modules/@noodle-borg/service/dist/store/control-plane.js +3 -0
  218. package/node_modules/@noodle-borg/service/dist/store/control-plane.js.map +1 -1
  219. package/node_modules/@noodle-borg/service/dist/store/github-connections-json-file.d.ts +23 -0
  220. package/node_modules/@noodle-borg/service/dist/store/github-connections-json-file.d.ts.map +1 -0
  221. package/node_modules/@noodle-borg/service/dist/store/github-connections-json-file.js +137 -0
  222. package/node_modules/@noodle-borg/service/dist/store/github-connections-json-file.js.map +1 -0
  223. package/node_modules/@noodle-borg/service/dist/store/github-connections.d.ts +30 -0
  224. package/node_modules/@noodle-borg/service/dist/store/github-connections.d.ts.map +1 -0
  225. package/node_modules/@noodle-borg/service/dist/store/github-connections.js +116 -0
  226. package/node_modules/@noodle-borg/service/dist/store/github-connections.js.map +1 -0
  227. package/node_modules/@noodle-borg/service/dist/store/in-memory.d.ts +32 -0
  228. package/node_modules/@noodle-borg/service/dist/store/in-memory.d.ts.map +1 -0
  229. package/node_modules/@noodle-borg/service/dist/store/in-memory.js +169 -0
  230. package/node_modules/@noodle-borg/service/dist/store/in-memory.js.map +1 -0
  231. package/node_modules/@noodle-borg/service/dist/store/json-file.d.ts +14 -1
  232. package/node_modules/@noodle-borg/service/dist/store/json-file.d.ts.map +1 -1
  233. package/node_modules/@noodle-borg/service/dist/store/json-file.js +54 -1
  234. package/node_modules/@noodle-borg/service/dist/store/json-file.js.map +1 -1
  235. package/node_modules/@noodle-borg/service/dist/store/postgres-apps.d.ts +11 -0
  236. package/node_modules/@noodle-borg/service/dist/store/postgres-apps.d.ts.map +1 -0
  237. package/node_modules/@noodle-borg/service/dist/store/postgres-apps.js +31 -0
  238. package/node_modules/@noodle-borg/service/dist/store/postgres-apps.js.map +1 -0
  239. package/node_modules/@noodle-borg/service/dist/store/postgres-config.d.ts +21 -0
  240. package/node_modules/@noodle-borg/service/dist/store/postgres-config.d.ts.map +1 -0
  241. package/node_modules/@noodle-borg/service/dist/store/postgres-config.js +80 -0
  242. package/node_modules/@noodle-borg/service/dist/store/postgres-config.js.map +1 -0
  243. package/node_modules/@noodle-borg/service/dist/store/postgres-control-plane.d.ts +1 -0
  244. package/node_modules/@noodle-borg/service/dist/store/postgres-control-plane.d.ts.map +1 -1
  245. package/node_modules/@noodle-borg/service/dist/store/postgres-control-plane.js +6 -0
  246. package/node_modules/@noodle-borg/service/dist/store/postgres-control-plane.js.map +1 -1
  247. package/node_modules/@noodle-borg/service/dist/store/postgres-envs.d.ts +7 -0
  248. package/node_modules/@noodle-borg/service/dist/store/postgres-envs.d.ts.map +1 -0
  249. package/node_modules/@noodle-borg/service/dist/store/postgres-envs.js +34 -0
  250. package/node_modules/@noodle-borg/service/dist/store/postgres-envs.js.map +1 -0
  251. package/node_modules/@noodle-borg/service/dist/store/postgres-github.d.ts +12 -0
  252. package/node_modules/@noodle-borg/service/dist/store/postgres-github.d.ts.map +1 -0
  253. package/node_modules/@noodle-borg/service/dist/store/postgres-github.js +125 -0
  254. package/node_modules/@noodle-borg/service/dist/store/postgres-github.js.map +1 -0
  255. package/node_modules/@noodle-borg/service/dist/store/postgres-schema.d.ts.map +1 -1
  256. package/node_modules/@noodle-borg/service/dist/store/postgres-schema.js +36 -0
  257. package/node_modules/@noodle-borg/service/dist/store/postgres-schema.js.map +1 -1
  258. package/node_modules/@noodle-borg/service/dist/store/postgres.d.ts +25 -2
  259. package/node_modules/@noodle-borg/service/dist/store/postgres.d.ts.map +1 -1
  260. package/node_modules/@noodle-borg/service/dist/store/postgres.js +56 -75
  261. package/node_modules/@noodle-borg/service/dist/store/postgres.js.map +1 -1
  262. package/node_modules/@noodle-borg/service/dist/store/records.d.ts +56 -3
  263. package/node_modules/@noodle-borg/service/dist/store/records.d.ts.map +1 -1
  264. package/node_modules/@noodle-borg/service/dist/store/records.js +158 -0
  265. package/node_modules/@noodle-borg/service/dist/store/records.js.map +1 -1
  266. package/node_modules/@noodle-borg/service/dist/store/validate.d.ts +2 -0
  267. package/node_modules/@noodle-borg/service/dist/store/validate.d.ts.map +1 -1
  268. package/node_modules/@noodle-borg/service/dist/store/validate.js +7 -0
  269. package/node_modules/@noodle-borg/service/dist/store/validate.js.map +1 -1
  270. package/node_modules/@noodle-borg/service/dist/store.d.ts +161 -17
  271. package/node_modules/@noodle-borg/service/dist/store.d.ts.map +1 -1
  272. package/node_modules/@noodle-borg/service/dist/store.js +8 -118
  273. package/node_modules/@noodle-borg/service/dist/store.js.map +1 -1
  274. package/node_modules/@noodle-borg/service/package.json +2 -1
  275. package/package.json +2 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flavor.js","sourceRoot":"","sources":["../src/flavor.ts"],"names":[],"mappings":"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"}
package/dist/project.js CHANGED
@@ -276,8 +276,8 @@ const jsonplaceholder = connector('jsonplaceholder')
276
276
  path: '/posts/\${args.post_id}',
277
277
  input: { post_id: { type: 'string', required: true } },
278
278
  response: {
279
- title: '\${response.json.title}',
280
- body: '\${response.json.body}',
279
+ title: '\${response.title}',
280
+ body: '\${response.body}',
281
281
  },
282
282
  output: {
283
283
  title: { type: 'string' },
@@ -1 +1 @@
1
- {"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../src/prompts.ts"],"names":[],"mappings":"AAWA,OAAO,EAEL,KAAK,SAAS,EAId,KAAK,SAAS,EAKf,MAAM,eAAe,CAAC;AAiBvB,MAAM,WAAW,YAAY,CAAC,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;IAClB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAC3B,KAAK,GAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAkB,EAC1C,MAAM,GAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAmB,GAC3C,OAAO,CAET;AAED,0GAA0G;AAC1G,qBAAa,kBAAmB,SAAQ,KAAK;IAEzC,QAAQ,CAAC,GAAG,EAAE,MAAM;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM;gBADZ,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM;CAKxB;AAED,2DAA2D;AAC3D,qBAAa,gBAAiB,SAAQ,KAAK;;CAK1C;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAC7B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,EAC5C,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EACZ,QAAQ,CAAC,EAAE,CAAC,GACX,CAAC,CAKH;AAMD,+EAA+E;AAC/E,wBAAgB,YAAY,CAAC,CAAC,EAC5B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,SAAS,YAAY,CAAC,CAAC,CAAC,EAAE,EACnC,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,SAAS,EAChB,KAAK,GAAE,SAAqB,GAC3B,MAAM,EAAE,CAUV;AAED,4EAA4E;AAC5E,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,SAAS,EAChB,KAAK,GAAE,SAAqB,GAC3B,MAAM,CAER;AAED,uFAAuF;AACvF,wBAAgB,UAAU,CACxB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,SAAS,EAChB,KAAK,GAAE,SAAqB,GAC3B,MAAM,CAGR;AAED,mDAAmD;AACnD,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,SAAS,EAChB,KAAK,GAAE,SAAqB,GAC3B,MAAM,CAER;AAMD,UAAU,QAAQ;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC,UAAU,GAAG;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IAChD,MAAM,CAAC,EAAE,MAAM,CAAC,WAAW,CAAC;CAC7B;AAED,uGAAuG;AACvG,wBAAgB,MAAM,CAAC,CAAC,EACtB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,SAAS,YAAY,CAAC,CAAC,CAAC,EAAE,EACnC,IAAI,GAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,QAAa,GACzC,OAAO,CAAC,CAAC,CAAC,CAqDZ;AAED,uFAAuF;AACvF,wBAAgB,IAAI,CAClB,OAAO,EAAE,MAAM,EACf,IAAI,GAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAA;CAAE,GAAG,QAAa,GACvF,OAAO,CAAC,MAAM,CAAC,CA6CjB;AAED,kCAAkC;AAClC,wBAAsB,OAAO,CAC3B,OAAO,EAAE,MAAM,EACf,IAAI,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,QAAa,GAC1C,OAAO,CAAC,OAAO,CAAC,CAUlB"}
1
+ {"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../src/prompts.ts"],"names":[],"mappings":"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"}
package/dist/prompts.js CHANGED
@@ -88,6 +88,20 @@ export function renderText(message, value, color, glyph = 'unicode') {
88
88
  export function renderTextResult(message, value, color, glyph = 'unicode') {
89
89
  return `${paint(GREEN, g('✔', '+', glyph), color)} ${paint(DIM, message, color)} ${paint(INK, value, color)}`;
90
90
  }
91
+ function enterPromptInput(input) {
92
+ const wasRaw = input.isRaw === true;
93
+ const wasPaused = input.isPaused();
94
+ emitKeypressEvents(input);
95
+ if (input.isTTY)
96
+ input.setRawMode(true);
97
+ input.resume();
98
+ return () => {
99
+ if (input.isTTY)
100
+ input.setRawMode(wasRaw);
101
+ if (wasPaused)
102
+ input.pause();
103
+ };
104
+ }
91
105
  /** Interactive arrow-key select. Resolves the chosen value; rejects AbortPromptError on Esc/Ctrl+C. */
92
106
  export function select(message, options, opts = {}) {
93
107
  if (options.length === 0) {
@@ -100,10 +114,7 @@ export function select(message, options, opts = {}) {
100
114
  return new Promise((resolve, reject) => {
101
115
  let index = Math.max(0, Math.min(options.length - 1, opts.initial ?? 0));
102
116
  let drawn = 0;
103
- emitKeypressEvents(input);
104
- const wasRaw = input.isRaw === true;
105
- if (input.isTTY)
106
- input.setRawMode(true);
117
+ const restoreInput = enterPromptInput(input);
107
118
  output.write(HIDE_CURSOR);
108
119
  const draw = () => {
109
120
  if (drawn > 0)
@@ -114,10 +125,20 @@ export function select(message, options, opts = {}) {
114
125
  };
115
126
  const cleanup = () => {
116
127
  input.off('keypress', onKey);
117
- if (input.isTTY)
118
- input.setRawMode(wasRaw);
128
+ restoreInput();
119
129
  output.write(SHOW_CURSOR);
120
130
  };
131
+ const writeSettled = (label) => {
132
+ const tail = Math.max(0, drawn - 1);
133
+ const clearTail = Array.from({ length: tail }, () => `${CR}${CLEAR_EOL}${NL}`).join('');
134
+ output.write(cursorUp(drawn) +
135
+ CR +
136
+ renderSelectResult(message, label, color, glyph) +
137
+ CLEAR_EOL +
138
+ NL +
139
+ clearTail +
140
+ (tail > 0 ? cursorUp(tail) : ''));
141
+ };
121
142
  const onKey = (_s, key = {}) => {
122
143
  if (key.name === 'up' || key.name === 'k')
123
144
  index = (index - 1 + options.length) % options.length;
@@ -126,11 +147,7 @@ export function select(message, options, opts = {}) {
126
147
  else if (key.name === 'return' || key.name === 'enter') {
127
148
  cleanup();
128
149
  const chosen = options[index];
129
- output.write(cursorUp(drawn) +
130
- CR +
131
- renderSelectResult(message, chosen.label, color, glyph) +
132
- CLEAR_EOL +
133
- NL);
150
+ writeSettled(chosen.label);
134
151
  resolve(chosen.value);
135
152
  return;
136
153
  }
@@ -153,17 +170,13 @@ export function text(message, opts = {}) {
153
170
  const glyph = detectGlyphMode();
154
171
  return new Promise((resolve, reject) => {
155
172
  let buf = opts.initial ?? '';
156
- emitKeypressEvents(input);
157
- const wasRaw = input.isRaw === true;
158
- if (input.isTTY)
159
- input.setRawMode(true);
173
+ const restoreInput = enterPromptInput(input);
160
174
  const redraw = () => {
161
175
  output.write(`${CR}${renderText(message, buf, color, glyph)}${CLEAR_EOL}`);
162
176
  };
163
177
  const cleanup = () => {
164
178
  input.off('keypress', onKey);
165
- if (input.isTTY)
166
- input.setRawMode(wasRaw);
179
+ restoreInput();
167
180
  };
168
181
  const onKey = (s, key = {}) => {
169
182
  if (key.name === 'return' || key.name === 'enter') {
@@ -1 +1 @@
1
- {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../src/prompts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../src/prompts.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Humanized relative-time formatting for the resource commands' timestamp columns
3
+ * (`apps list`'s UPDATED column, and similar `envs`/`deployments` views to come).
4
+ * Pure and clock-injectable so callers (and tests) never depend on wall-clock time.
5
+ */
6
+ /** Format `iso` relative to `now` (default `Date.now()`) as e.g. "2h ago", "16d ago", "6mo ago". */
7
+ export declare function relativeTime(iso: string, now?: number): string;
8
+ //# sourceMappingURL=relative-time.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relative-time.d.ts","sourceRoot":"","sources":["../src/relative-time.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH,oGAAoG;AACpG,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,GAAE,MAAmB,GAAG,MAAM,CAU1E"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Humanized relative-time formatting for the resource commands' timestamp columns
3
+ * (`apps list`'s UPDATED column, and similar `envs`/`deployments` views to come).
4
+ * Pure and clock-injectable so callers (and tests) never depend on wall-clock time.
5
+ */
6
+ const MINUTE_MS = 60_000;
7
+ const HOUR_MS = 60 * MINUTE_MS;
8
+ const DAY_MS = 24 * HOUR_MS;
9
+ const MONTH_MS = 30 * DAY_MS;
10
+ const YEAR_MS = 365 * DAY_MS;
11
+ /** Format `iso` relative to `now` (default `Date.now()`) as e.g. "2h ago", "16d ago", "6mo ago". */
12
+ export function relativeTime(iso, now = Date.now()) {
13
+ const then = Date.parse(iso);
14
+ if (Number.isNaN(then))
15
+ return iso;
16
+ const diffMs = Math.max(0, now - then);
17
+ if (diffMs < MINUTE_MS)
18
+ return 'just now';
19
+ if (diffMs < HOUR_MS)
20
+ return `${Math.floor(diffMs / MINUTE_MS)}m ago`;
21
+ if (diffMs < DAY_MS)
22
+ return `${Math.floor(diffMs / HOUR_MS)}h ago`;
23
+ if (diffMs < MONTH_MS)
24
+ return `${Math.floor(diffMs / DAY_MS)}d ago`;
25
+ if (diffMs < YEAR_MS)
26
+ return `${Math.floor(diffMs / MONTH_MS)}mo ago`;
27
+ return `${Math.floor(diffMs / YEAR_MS)}y ago`;
28
+ }
29
+ //# sourceMappingURL=relative-time.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relative-time.js","sourceRoot":"","sources":["../src/relative-time.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,SAAS,GAAG,MAAM,CAAC;AACzB,MAAM,OAAO,GAAG,EAAE,GAAG,SAAS,CAAC;AAC/B,MAAM,MAAM,GAAG,EAAE,GAAG,OAAO,CAAC;AAC5B,MAAM,QAAQ,GAAG,EAAE,GAAG,MAAM,CAAC;AAC7B,MAAM,OAAO,GAAG,GAAG,GAAG,MAAM,CAAC;AAE7B,oGAAoG;AACpG,MAAM,UAAU,YAAY,CAAC,GAAW,EAAE,MAAc,IAAI,CAAC,GAAG,EAAE;IAChE,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7B,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;QAAE,OAAO,GAAG,CAAC;IACnC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC,CAAC;IACvC,IAAI,MAAM,GAAG,SAAS;QAAE,OAAO,UAAU,CAAC;IAC1C,IAAI,MAAM,GAAG,OAAO;QAAE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC;IACtE,IAAI,MAAM,GAAG,MAAM;QAAE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IACnE,IAAI,MAAM,GAAG,QAAQ;QAAE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC;IACpE,IAAI,MAAM,GAAG,OAAO;QAAE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC;IACtE,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;AAChD,CAAC"}
@@ -0,0 +1,47 @@
1
+ /**
2
+ * Branded, alignment-safe table renderer for the CLI's resource commands
3
+ * (`apps`/`envs`/`deployments`/`orgs` list views).
4
+ *
5
+ * The core guarantee: columns never drift. Widths are computed from ANSI-stripped
6
+ * content, capped per column, truncated with an ellipsis, and shrunk to fit the
7
+ * terminal — so a single wide row (e.g. `financial-contact-center-6221745c`) can't
8
+ * shove the rest of the table out of alignment the way naive space-padding does.
9
+ *
10
+ * Colour is a pure overlay: the warm Noodle gradient tints the box-drawing borders
11
+ * and per-cell semantic colours tint cell text, but neither ever changes the visible
12
+ * layout. The invariant `stripAnsi(colored) === plain` holds and is tested. Under
13
+ * `color: 'none'` (pipes / CI / NO_COLOR / non-TTY) it emits plain, escape-free,
14
+ * still-aligned ASCII; callers suppress it entirely under `--json`.
15
+ *
16
+ * The animated gradient sweep lives in the `--watch`/loading redraw path (status.ts),
17
+ * not here — a one-shot printed table carries a static gradient.
18
+ */
19
+ import { type ColorMode, type GlyphMode, type RGB } from './gradient.js';
20
+ export interface Column<Row> {
21
+ /** Column heading (also participates in width; may be truncated if narrower than `maxWidth`). */
22
+ readonly header: string;
23
+ /** Extract the raw (uncoloured) cell text for a row. */
24
+ readonly get: (row: Row) => string;
25
+ /** Horizontal alignment of the cell content within the column (default `left`). */
26
+ readonly align?: 'left' | 'right';
27
+ /** Hard cap on the column's content width; longer cells truncate with an ellipsis. */
28
+ readonly maxWidth?: number;
29
+ /** Optional per-row semantic colour for the cell text (e.g. active→green). */
30
+ readonly color?: (row: Row) => RGB | undefined;
31
+ }
32
+ export interface TableOptions {
33
+ /** Colour capability of the target stream (from `detectColorMode`). */
34
+ readonly color: ColorMode;
35
+ /** Glyph capability of the target terminal (from `detectGlyphMode`). */
36
+ readonly glyph: GlyphMode;
37
+ /** Total width budget (e.g. `process.stdout.columns`); columns shrink to fit when set. */
38
+ readonly maxTableWidth?: number;
39
+ /** Tint the borders with the warm gradient (default `true`; inert under `color: 'none'`). */
40
+ readonly gradient?: boolean;
41
+ }
42
+ /**
43
+ * Render `rows` as a branded, alignment-safe table. Returns the joined multi-line
44
+ * string (no trailing newline). Emits plain ASCII under `color: 'none'`.
45
+ */
46
+ export declare function renderTable<Row>(columns: readonly Column<Row>[], rows: readonly Row[], opts: TableOptions): string;
47
+ //# sourceMappingURL=table.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../src/table.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,EAAS,KAAK,SAAS,EAAU,KAAK,SAAS,EAAS,KAAK,GAAG,EAAE,MAAM,eAAe,CAAC;AAE/F,MAAM,WAAW,MAAM,CAAC,GAAG;IACzB,iGAAiG;IACjG,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,wDAAwD;IACxD,QAAQ,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,MAAM,CAAC;IACnC,mFAAmF;IACnF,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAClC,sFAAsF;IACtF,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,8EAA8E;IAC9E,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,GAAG,GAAG,SAAS,CAAC;CAChD;AAED,MAAM,WAAW,YAAY;IAC3B,uEAAuE;IACvE,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAC1B,wEAAwE;IACxE,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAC1B,0FAA0F;IAC1F,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,6FAA6F;IAC7F,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;CAC7B;AAiKD;;;GAGG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAC7B,OAAO,EAAE,SAAS,MAAM,CAAC,GAAG,CAAC,EAAE,EAC/B,IAAI,EAAE,SAAS,GAAG,EAAE,EACpB,IAAI,EAAE,YAAY,GACjB,MAAM,CAqCR"}
package/dist/table.js ADDED
@@ -0,0 +1,152 @@
1
+ /**
2
+ * Branded, alignment-safe table renderer for the CLI's resource commands
3
+ * (`apps`/`envs`/`deployments`/`orgs` list views).
4
+ *
5
+ * The core guarantee: columns never drift. Widths are computed from ANSI-stripped
6
+ * content, capped per column, truncated with an ellipsis, and shrunk to fit the
7
+ * terminal — so a single wide row (e.g. `financial-contact-center-6221745c`) can't
8
+ * shove the rest of the table out of alignment the way naive space-padding does.
9
+ *
10
+ * Colour is a pure overlay: the warm Noodle gradient tints the box-drawing borders
11
+ * and per-cell semantic colours tint cell text, but neither ever changes the visible
12
+ * layout. The invariant `stripAnsi(colored) === plain` holds and is tested. Under
13
+ * `color: 'none'` (pipes / CI / NO_COLOR / non-TTY) it emits plain, escape-free,
14
+ * still-aligned ASCII; callers suppress it entirely under `--json`.
15
+ *
16
+ * The animated gradient sweep lives in the `--watch`/loading redraw path (status.ts),
17
+ * not here — a one-shot printed table carries a static gradient.
18
+ */
19
+ import { AMBER, cyclic, paint } from './gradient.js';
20
+ const HEADER_RGB = AMBER;
21
+ const MIN_COLUMN_WIDTH = 3;
22
+ // Build the ANSI-strip matcher without a literal control char in source (matches gradient.ts style).
23
+ const ANSI = new RegExp(`${String.fromCharCode(27)}\\[[0-9;]*m`, 'g');
24
+ const stripAnsi = (s) => s.replace(ANSI, '');
25
+ const visibleWidth = (s) => [...stripAnsi(s)].length;
26
+ const UNICODE = {
27
+ h: '─',
28
+ v: '│',
29
+ topL: '┌',
30
+ topM: '┬',
31
+ topR: '┐',
32
+ midL: '├',
33
+ midM: '┼',
34
+ midR: '┤',
35
+ botL: '└',
36
+ botM: '┴',
37
+ botR: '┘',
38
+ };
39
+ const ASCII = {
40
+ h: '-',
41
+ v: '|',
42
+ topL: '+',
43
+ topM: '+',
44
+ topR: '+',
45
+ midL: '+',
46
+ midM: '+',
47
+ midR: '+',
48
+ botL: '+',
49
+ botM: '+',
50
+ botR: '+',
51
+ };
52
+ function ellipsis(glyph) {
53
+ return glyph === 'ascii' ? '..' : '…';
54
+ }
55
+ function truncate(text, width, glyph) {
56
+ if (visibleWidth(text) <= width)
57
+ return text;
58
+ const ell = ellipsis(glyph);
59
+ const keep = Math.max(0, width - ell.length);
60
+ return [...text].slice(0, keep).join('') + ell;
61
+ }
62
+ /** Column content widths: max(header, cells), capped by `maxWidth`, then shrunk to fit the budget. */
63
+ function computeWidths(columns, rows, maxTableWidth) {
64
+ const widths = columns.map((col) => {
65
+ const content = Math.max(col.header.length, ...rows.map((r) => visibleWidth(col.get(r))), 0);
66
+ return col.maxWidth !== undefined ? Math.min(col.maxWidth, content) : content;
67
+ });
68
+ if (maxTableWidth === undefined)
69
+ return widths;
70
+ const overhead = 1 + 3 * columns.length; // edge bars + inner bars + per-cell padding
71
+ const total = () => overhead + widths.reduce((a, b) => a + b, 0);
72
+ // Repeatedly trim the widest column until the table fits or nothing can shrink further.
73
+ while (total() > maxTableWidth) {
74
+ let widest = MIN_COLUMN_WIDTH;
75
+ let idx = -1;
76
+ for (let i = 0; i < widths.length; i++) {
77
+ if (widths[i] > widest) {
78
+ widest = widths[i];
79
+ idx = i;
80
+ }
81
+ }
82
+ if (idx === -1)
83
+ break;
84
+ widths[idx] = widths[idx] - 1;
85
+ }
86
+ return widths;
87
+ }
88
+ /** Bar x-positions and the total table width, so borders can be tinted by position. */
89
+ function barPositions(widths) {
90
+ const positions = [];
91
+ let x = 0;
92
+ for (let i = 0; i < widths.length; i++) {
93
+ positions.push(x);
94
+ x += 1 + widths[i] + 2; // this bar + ' ' + content + ' '
95
+ }
96
+ positions.push(x); // trailing bar
97
+ return { positions, totalWidth: x + 1 };
98
+ }
99
+ /** One horizontal rule (top/mid/bottom), gradient-tinted by x-position. */
100
+ function rule(kind, widths, g, opts) {
101
+ const { positions, totalWidth } = barPositions(widths);
102
+ const junctionSet = kind === 'top'
103
+ ? [g.topL, g.topM, g.topR]
104
+ : kind === 'bottom'
105
+ ? [g.botL, g.botM, g.botR]
106
+ : [g.midL, g.midM, g.midR];
107
+ const chars = new Array(totalWidth).fill(g.h);
108
+ positions.forEach((p, i) => {
109
+ chars[p] =
110
+ i === 0 ? junctionSet[0] : i === positions.length - 1 ? junctionSet[2] : junctionSet[1];
111
+ });
112
+ return chars.map((ch, x) => tint(ch, x, totalWidth, opts)).join('');
113
+ }
114
+ /** Tint a border glyph by its horizontal position along the warm cyclic gradient. */
115
+ function tint(ch, x, totalWidth, opts) {
116
+ if (opts.color === 'none' || opts.gradient === false)
117
+ return ch;
118
+ return paint(cyclic(x / totalWidth), ch, opts.color);
119
+ }
120
+ /** Pad a (possibly coloured) cell to `width`, aligning content; padding stays outside the colour. */
121
+ function cell(text, width, align, rgb, color) {
122
+ const pad = ' '.repeat(Math.max(0, width - visibleWidth(text)));
123
+ const body = rgb ? paint(rgb, text, color) : text;
124
+ return align === 'right' ? pad + body : body + pad;
125
+ }
126
+ /** A data/header row: `│ c │ c │ c │` with gradient-tinted bars and coloured cell bodies. */
127
+ function row(cells, widths, g, opts) {
128
+ const { positions, totalWidth } = barPositions(widths);
129
+ let line = tint(g.v, positions[0], totalWidth, opts);
130
+ for (let i = 0; i < cells.length; i++) {
131
+ line += ` ${cells[i]} ${tint(g.v, positions[i + 1], totalWidth, opts)}`;
132
+ }
133
+ return line;
134
+ }
135
+ /**
136
+ * Render `rows` as a branded, alignment-safe table. Returns the joined multi-line
137
+ * string (no trailing newline). Emits plain ASCII under `color: 'none'`.
138
+ */
139
+ export function renderTable(columns, rows, opts) {
140
+ const g = opts.glyph === 'ascii' ? ASCII : UNICODE;
141
+ const widths = computeWidths(columns, rows, opts.maxTableWidth);
142
+ const headerCells = columns.map((col, i) => cell(truncate(col.header, widths[i], opts.glyph), widths[i], col.align ?? 'left', opts.color === 'none' ? undefined : HEADER_RGB, opts.color));
143
+ const bodyLines = rows.map((r) => row(columns.map((col, i) => cell(truncate(col.get(r), widths[i], opts.glyph), widths[i], col.align ?? 'left', col.color?.(r), opts.color)), widths, g, opts));
144
+ return [
145
+ rule('top', widths, g, opts),
146
+ row(headerCells, widths, g, opts),
147
+ rule('mid', widths, g, opts),
148
+ ...bodyLines,
149
+ rule('bottom', widths, g, opts),
150
+ ].join('\n');
151
+ }
152
+ //# sourceMappingURL=table.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"table.js","sourceRoot":"","sources":["../src/table.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Binary ownership resolver for `noodle update` repair (#242, ADR 0118).
2
+ * Binary ownership resolver for `noodle update` repair (#242, ADR 0124).
3
3
  *
4
4
  * npm's `EEXIST .../bin/noodle` failure happens before any of our code runs, so
5
5
  * `noodle update` inspects the expected global bin path itself: does a `noodle`
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Passive post-command update check (#242, ADR 0118, refining ADR 0079).
2
+ * Passive post-command update check (#242, ADR 0124, refining ADR 0079).
3
3
  *
4
4
  * Default behavior on a human TTY: at most once per day, offer "Update now?"
5
5
  * (Enter = yes; "n" snoozes for 24h via `updateCheck.snoozedUntil`). When a prompt
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Passive post-command update check (#242, ADR 0118, refining ADR 0079).
2
+ * Passive post-command update check (#242, ADR 0124, refining ADR 0079).
3
3
  *
4
4
  * Default behavior on a human TTY: at most once per day, offer "Update now?"
5
5
  * (Enter = yes; "n" snoozes for 24h via `updateCheck.snoozedUntil`). When a prompt
package/dist/update.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Shared update-system core (#242, ADR 0118): package identity, installed-version
2
+ * Shared update-system core (#242, ADR 0124): package identity, installed-version
3
3
  * lookup, registry `latest` fetch, and version comparison.
4
4
  *
5
5
  * The update system is split along its natural seams:
@@ -0,0 +1,52 @@
1
+ /**
2
+ * Live `--watch` dashboards for the resource `list`/`status` commands (ADR 0129: the ANIMATED
3
+ * warm gradient — `cyclic` from `gradient.ts` — is reserved for this live-redraw moment;
4
+ * one-shot tables/spinners elsewhere only ever use a static/per-position tint).
5
+ *
6
+ * TTY mode repaints in place: hide the cursor, render a frame, then on every tick move the
7
+ * cursor back up over the previous frame and redraw — blanking any now-stale trailing lines
8
+ * when the new frame is shorter than the last, so a shrinking table never leaves orphaned rows
9
+ * behind. A footer line (`watching · refreshed HH:MM:SS · every Ns · Ctrl-C to stop`) is
10
+ * appended every tick; its leading glyph is tinted by the tick's position in the warm cyclic
11
+ * gradient, so the display visibly "breathes" between refreshes. SIGINT restores the cursor and
12
+ * exits 0 — a stopped watch is not a failure.
13
+ *
14
+ * Non-TTY mode (piped output, CI) never repaints or emits ANSI: it appends timestamped
15
+ * plain-text snapshots, mirroring `logs --follow`'s polling shape, and honors a poll cap.
16
+ *
17
+ * A failing tick never crashes the loop: the previous frame stays on screen with a dim
18
+ * "refresh failed" note; `MAX_CONSECUTIVE_FAILURES` in a row gives up and exits with the last
19
+ * failure via `printCliFailure`.
20
+ */
21
+ import type { CliFailure } from './commands/shared.js';
22
+ export declare const DEFAULT_WATCH_INTERVAL_SECONDS = 5;
23
+ export declare const MIN_WATCH_INTERVAL_SECONDS = 2;
24
+ /** One rendered tick: either a fully-rendered multi-line frame, or a failure to report. */
25
+ export type WatchFrame = {
26
+ readonly ok: true;
27
+ readonly frame: string;
28
+ } | {
29
+ readonly ok: false;
30
+ readonly error: CliFailure;
31
+ };
32
+ export interface RunWatchOptions {
33
+ /** Command label `printCliFailure` prints against when the failure cap is hit. */
34
+ readonly command: string;
35
+ readonly render: () => Promise<WatchFrame>;
36
+ readonly intervalMs: number;
37
+ readonly stream?: NodeJS.WriteStream;
38
+ readonly env?: NodeJS.ProcessEnv;
39
+ /** Cap the number of renders — tests only; real usage leaves this unset (SIGINT/failure-cap stop it). */
40
+ readonly maxPolls?: number;
41
+ readonly sleep?: (ms: number) => Promise<void>;
42
+ readonly now?: () => Date;
43
+ }
44
+ /** Parse `--watch` / `--interval <seconds>` (default 5s, floored at `MIN_WATCH_INTERVAL_SECONDS`). */
45
+ export declare function parseWatchFlags(rest: readonly string[]): {
46
+ readonly watch: boolean;
47
+ readonly intervalMs: number;
48
+ };
49
+ /** `--watch` combined with `--json` is a usage error, not a silent pick of one over the other. */
50
+ export declare function watchJsonConflictFailure(nextCommand: string): CliFailure;
51
+ export declare function runWatch(opts: RunWatchOptions): Promise<number>;
52
+ //# sourceMappingURL=watch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"watch.d.ts","sourceRoot":"","sources":["../src/watch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAkBvD,eAAO,MAAM,8BAA8B,IAAI,CAAC;AAChD,eAAO,MAAM,0BAA0B,IAAI,CAAC;AAK5C,2FAA2F;AAC3F,MAAM,MAAM,UAAU,GAClB;IAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAC7C;IAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAA;CAAE,CAAC;AAEvD,MAAM,WAAW,eAAe;IAC9B,kFAAkF;IAClF,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC;IAC3C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,WAAW,CAAC;IACrC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACjC,yGAAyG;IACzG,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/C,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;CAC3B;AAED,sGAAsG;AACtG,wBAAgB,eAAe,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG;IACxD,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B,CAcA;AAED,kGAAkG;AAClG,wBAAgB,wBAAwB,CAAC,WAAW,EAAE,MAAM,GAAG,UAAU,CASxE;AA6CD,wBAAsB,QAAQ,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CAWrE"}