@mx-space/cli 0.15.1 → 0.15.2

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 (611) hide show
  1. package/dist/{Lexical.dev-BSvx45_E.mjs → Lexical.dev-Df5TNMgP.mjs} +2 -2
  2. package/dist/{Lexical.node-kAh5GM2n.mjs → Lexical.node-B064E4Hy.mjs} +1 -1
  3. package/dist/{Lexical.prod-Bqwgb3ez.mjs → Lexical.prod-DRFSwoE7.mjs} +2 -2
  4. package/dist/{LexicalClipboard.dev-BWU3KXIa.mjs → LexicalClipboard.dev-ClOWeg5v.mjs} +5 -5
  5. package/dist/{LexicalClipboard.node-BygAdNdF.mjs → LexicalClipboard.node-BJBLWpEi.mjs} +1 -1
  6. package/dist/{LexicalClipboard.prod-BtMuKNyT.mjs → LexicalClipboard.prod-Ytt65eQo.mjs} +5 -5
  7. package/dist/{LexicalCodeCore.dev-CD2xgvDs.mjs → LexicalCodeCore.dev-CzEPINOT.mjs} +4 -4
  8. package/dist/{LexicalCodeCore.prod-Bl6FFMc7.mjs → LexicalCodeCore.prod-DOVk7lL_.mjs} +4 -4
  9. package/dist/{LexicalDragon.dev-BwdYhm4K.mjs → LexicalDragon.dev-DxePN9fP.mjs} +2 -2
  10. package/dist/{LexicalDragon.node-CpJhkCVV.mjs → LexicalDragon.node-DBwaqStp.mjs} +1 -1
  11. package/dist/{LexicalDragon.prod-CvXmWwo1.mjs → LexicalDragon.prod-Bji84-Hq.mjs} +2 -2
  12. package/dist/{LexicalExtension.dev-LcRLXI5Z.mjs → LexicalExtension.dev-DtSRyjbf.mjs} +2 -2
  13. package/dist/{LexicalExtension.node-BwJt2LXV.mjs → LexicalExtension.node-3nsS5NjU.mjs} +1 -1
  14. package/dist/{LexicalExtension.prod-lg8_33-H.mjs → LexicalExtension.prod-Ddk0ja_6.mjs} +2 -2
  15. package/dist/{LexicalHeadless.dev-BeUbKBes.mjs → LexicalHeadless.dev-DdWJsPoH.mjs} +1 -1
  16. package/dist/{LexicalHeadless.prod-4gbIA8HM.mjs → LexicalHeadless.prod-CH74ZDMt.mjs} +1 -1
  17. package/dist/{LexicalHtml.dev-BLdZWTCJ.mjs → LexicalHtml.dev-DN7QIb_7.mjs} +4 -4
  18. package/dist/{LexicalHtml.node-BeuJMvvt.mjs → LexicalHtml.node-DAwuaPeI.mjs} +1 -1
  19. package/dist/{LexicalHtml.prod-CHUyCocN.mjs → LexicalHtml.prod-X4eTHEfI.mjs} +4 -4
  20. package/dist/{LexicalLink.dev-DgsFRqw0.mjs → LexicalLink.dev-owitIl6I.mjs} +4 -4
  21. package/dist/{LexicalLink.prod-CkXkeKY2.mjs → LexicalLink.prod-BZ7ZZkVD.mjs} +4 -4
  22. package/dist/{LexicalList.dev-OOms3kQi.mjs → LexicalList.dev-CUbi09Yo.mjs} +4 -4
  23. package/dist/{LexicalList.prod-DzMBeqHn.mjs → LexicalList.prod-pUsUZa0r.mjs} +4 -4
  24. package/dist/{LexicalMarkdown.dev-DJLKbZtD.mjs → LexicalMarkdown.dev-S2yWckH9.mjs} +3 -3
  25. package/dist/{LexicalMarkdown.prod-Cp21kDCU.mjs → LexicalMarkdown.prod-TRkMWfmC.mjs} +3 -3
  26. package/dist/{LexicalRichText.dev-0rkAGjUf.mjs → LexicalRichText.dev-Y3ybFF2S.mjs} +7 -7
  27. package/dist/{LexicalRichText.node-Cd-BySPE.mjs → LexicalRichText.node-wNAi2Z4i.mjs} +4 -4
  28. package/dist/{LexicalRichText.prod-DTQiEr8C.mjs → LexicalRichText.prod-HLxqZ6hQ.mjs} +7 -7
  29. package/dist/{LexicalSelection.dev-Bi0VlUEv.mjs → LexicalSelection.dev-CyhKOKbs.mjs} +1 -1
  30. package/dist/{LexicalSelection.node-t2U46EF_.mjs → LexicalSelection.node-BCuHMbzl.mjs} +1 -1
  31. package/dist/{LexicalSelection.prod-CrFG111g.mjs → LexicalSelection.prod-RebDJliC.mjs} +1 -1
  32. package/dist/{LexicalTable.dev-D-sFhO-o.mjs → LexicalTable.dev-DN3ezVey.mjs} +5 -5
  33. package/dist/{LexicalTable.prod-DwYaa_dN.mjs → LexicalTable.prod-B0MioVyq.mjs} +5 -5
  34. package/dist/{LexicalUtils.dev-Q2q3-UDM.mjs → LexicalUtils.dev-Bw6LFRlt.mjs} +2 -2
  35. package/dist/{LexicalUtils.node-Dl7OvqJV.mjs → LexicalUtils.node-BPKMFN80.mjs} +1 -1
  36. package/dist/{LexicalUtils.prod-CBnq_iEV.mjs → LexicalUtils.prod-CJYQVQJO.mjs} +2 -2
  37. package/dist/bin/mxs.mjs +1 -1
  38. package/dist/{esm-ZXjJmLEC.mjs → esm-7vSMGlFz.mjs} +171 -245
  39. package/dist/esm-ZrfYH2y2.mjs +2 -0
  40. package/dist/index.mjs +1 -1
  41. package/dist/{mxs-DC9zR3f2.mjs → mxs-DKv-4ZTg.mjs} +362 -297
  42. package/dist/vendor/litexml/cli.mjs +94 -38
  43. package/dist/vendor/litexml/litexml-html-preview-client.css +329 -836
  44. package/dist/vendor/litexml/litexml-html-preview-client.js +6048 -5832
  45. package/dist/vendor/litexml/style.css +5 -1
  46. package/package.json +10 -10
  47. package/dist/esm-CNZ7kdTg.mjs +0 -2
  48. package/dist/src/bin/mxs.d.ts +0 -2
  49. package/dist/src/bin/mxs.js +0 -310
  50. package/dist/src/cli/ai/_poll.d.ts +0 -12
  51. package/dist/src/cli/ai/_poll.js +0 -38
  52. package/dist/src/cli/ai/_resolve.d.ts +0 -8
  53. package/dist/src/cli/ai/_resolve.js +0 -27
  54. package/dist/src/cli/ai/index.d.ts +0 -127
  55. package/dist/src/cli/ai/index.js +0 -46
  56. package/dist/src/cli/ai/insights/by-article.d.ts +0 -10
  57. package/dist/src/cli/ai/insights/by-article.js +0 -21
  58. package/dist/src/cli/ai/insights/delete.d.ts +0 -7
  59. package/dist/src/cli/ai/insights/delete.js +0 -18
  60. package/dist/src/cli/ai/insights/edit.d.ts +0 -8
  61. package/dist/src/cli/ai/insights/edit.js +0 -54
  62. package/dist/src/cli/ai/insights/get.d.ts +0 -6
  63. package/dist/src/cli/ai/insights/get.js +0 -11
  64. package/dist/src/cli/ai/insights/index.d.ts +0 -30
  65. package/dist/src/cli/ai/insights/index.js +0 -17
  66. package/dist/src/cli/ai/insights/list.d.ts +0 -10
  67. package/dist/src/cli/ai/insights/list.js +0 -20
  68. package/dist/src/cli/ai/insights/refresh.d.ts +0 -10
  69. package/dist/src/cli/ai/insights/refresh.js +0 -25
  70. package/dist/src/cli/ai/insights/translate.d.ts +0 -10
  71. package/dist/src/cli/ai/insights/translate.js +0 -25
  72. package/dist/src/cli/ai/overview/by-article.d.ts +0 -7
  73. package/dist/src/cli/ai/overview/by-article.js +0 -15
  74. package/dist/src/cli/ai/overview/index.d.ts +0 -11
  75. package/dist/src/cli/ai/overview/index.js +0 -4
  76. package/dist/src/cli/ai/overview/list.d.ts +0 -10
  77. package/dist/src/cli/ai/overview/list.js +0 -20
  78. package/dist/src/cli/ai/summary/by-article.d.ts +0 -10
  79. package/dist/src/cli/ai/summary/by-article.js +0 -21
  80. package/dist/src/cli/ai/summary/delete.d.ts +0 -7
  81. package/dist/src/cli/ai/summary/delete.js +0 -18
  82. package/dist/src/cli/ai/summary/edit.d.ts +0 -8
  83. package/dist/src/cli/ai/summary/edit.js +0 -54
  84. package/dist/src/cli/ai/summary/get.d.ts +0 -6
  85. package/dist/src/cli/ai/summary/get.js +0 -11
  86. package/dist/src/cli/ai/summary/index.d.ts +0 -30
  87. package/dist/src/cli/ai/summary/index.js +0 -9
  88. package/dist/src/cli/ai/summary/list.d.ts +0 -10
  89. package/dist/src/cli/ai/summary/list.js +0 -20
  90. package/dist/src/cli/ai/summary/regen.d.ts +0 -10
  91. package/dist/src/cli/ai/summary/regen.js +0 -25
  92. package/dist/src/cli/ai/summary/translate.d.ts +0 -10
  93. package/dist/src/cli/ai/summary/translate.js +0 -25
  94. package/dist/src/cli/ai/translate/by-article.d.ts +0 -9
  95. package/dist/src/cli/ai/translate/by-article.js +0 -19
  96. package/dist/src/cli/ai/translate/delete.d.ts +0 -7
  97. package/dist/src/cli/ai/translate/delete.js +0 -18
  98. package/dist/src/cli/ai/translate/edit.d.ts +0 -8
  99. package/dist/src/cli/ai/translate/edit.js +0 -97
  100. package/dist/src/cli/ai/translate/entries/delete.d.ts +0 -7
  101. package/dist/src/cli/ai/translate/entries/delete.js +0 -18
  102. package/dist/src/cli/ai/translate/entries/edit.d.ts +0 -8
  103. package/dist/src/cli/ai/translate/entries/edit.js +0 -73
  104. package/dist/src/cli/ai/translate/entries/generate.d.ts +0 -7
  105. package/dist/src/cli/ai/translate/entries/generate.js +0 -15
  106. package/dist/src/cli/ai/translate/entries/index.d.ts +0 -17
  107. package/dist/src/cli/ai/translate/entries/index.js +0 -6
  108. package/dist/src/cli/ai/translate/entries/list.d.ts +0 -10
  109. package/dist/src/cli/ai/translate/entries/list.js +0 -20
  110. package/dist/src/cli/ai/translate/get.d.ts +0 -6
  111. package/dist/src/cli/ai/translate/get.js +0 -11
  112. package/dist/src/cli/ai/translate/index.d.ts +0 -40
  113. package/dist/src/cli/ai/translate/index.js +0 -19
  114. package/dist/src/cli/ai/translate/languages.d.ts +0 -7
  115. package/dist/src/cli/ai/translate/languages.js +0 -15
  116. package/dist/src/cli/ai/translate/list.d.ts +0 -9
  117. package/dist/src/cli/ai/translate/list.js +0 -19
  118. package/dist/src/cli/ai/translate/run.d.ts +0 -10
  119. package/dist/src/cli/ai/translate/run.js +0 -31
  120. package/dist/src/cli/ai/tts/by-article.d.ts +0 -7
  121. package/dist/src/cli/ai/tts/by-article.js +0 -15
  122. package/dist/src/cli/ai/tts/delete.d.ts +0 -7
  123. package/dist/src/cli/ai/tts/delete.js +0 -18
  124. package/dist/src/cli/ai/tts/index.d.ts +0 -22
  125. package/dist/src/cli/ai/tts/index.js +0 -7
  126. package/dist/src/cli/ai/tts/list.d.ts +0 -10
  127. package/dist/src/cli/ai/tts/list.js +0 -20
  128. package/dist/src/cli/ai/tts/run.d.ts +0 -10
  129. package/dist/src/cli/ai/tts/run.js +0 -25
  130. package/dist/src/cli/ai/tts/voices.d.ts +0 -7
  131. package/dist/src/cli/ai/tts/voices.js +0 -12
  132. package/dist/src/cli/ai/views.d.ts +0 -3
  133. package/dist/src/cli/ai/views.js +0 -45
  134. package/dist/src/cli/auth/index.d.ts +0 -6
  135. package/dist/src/cli/auth/index.js +0 -22
  136. package/dist/src/cli/auth/login.d.ts +0 -11
  137. package/dist/src/cli/auth/login.js +0 -168
  138. package/dist/src/cli/auth/logout.d.ts +0 -6
  139. package/dist/src/cli/auth/logout.js +0 -21
  140. package/dist/src/cli/auth/status.d.ts +0 -4
  141. package/dist/src/cli/auth/status.js +0 -31
  142. package/dist/src/cli/auth/view.d.ts +0 -25
  143. package/dist/src/cli/auth/view.js +0 -46
  144. package/dist/src/cli/auth/whoami.d.ts +0 -7
  145. package/dist/src/cli/auth/whoami.js +0 -44
  146. package/dist/src/cli/category/create.d.ts +0 -10
  147. package/dist/src/cli/category/create.js +0 -24
  148. package/dist/src/cli/category/delete.d.ts +0 -8
  149. package/dist/src/cli/category/delete.js +0 -21
  150. package/dist/src/cli/category/get.d.ts +0 -6
  151. package/dist/src/cli/category/get.js +0 -11
  152. package/dist/src/cli/category/index.d.ts +0 -20
  153. package/dist/src/cli/category/index.js +0 -41
  154. package/dist/src/cli/category/list.d.ts +0 -4
  155. package/dist/src/cli/category/list.js +0 -10
  156. package/dist/src/cli/category/update.d.ts +0 -12
  157. package/dist/src/cli/category/update.js +0 -34
  158. package/dist/src/cli/comment/_flags.d.ts +0 -28
  159. package/dist/src/cli/comment/_flags.js +0 -48
  160. package/dist/src/cli/comment/approve.d.ts +0 -9
  161. package/dist/src/cli/comment/approve.js +0 -23
  162. package/dist/src/cli/comment/delete.d.ts +0 -9
  163. package/dist/src/cli/comment/delete.js +0 -24
  164. package/dist/src/cli/comment/get.d.ts +0 -6
  165. package/dist/src/cli/comment/get.js +0 -12
  166. package/dist/src/cli/comment/index.d.ts +0 -34
  167. package/dist/src/cli/comment/index.js +0 -53
  168. package/dist/src/cli/comment/list.d.ts +0 -9
  169. package/dist/src/cli/comment/list.js +0 -20
  170. package/dist/src/cli/comment/reject.d.ts +0 -9
  171. package/dist/src/cli/comment/reject.js +0 -23
  172. package/dist/src/cli/comment/reply.d.ts +0 -9
  173. package/dist/src/cli/comment/reply.js +0 -31
  174. package/dist/src/cli/comment/unread.d.ts +0 -7
  175. package/dist/src/cli/comment/unread.js +0 -21
  176. package/dist/src/cli/comment/view.d.ts +0 -3
  177. package/dist/src/cli/comment/view.js +0 -197
  178. package/dist/src/cli/config/edit.d.ts +0 -5
  179. package/dist/src/cli/config/edit.js +0 -36
  180. package/dist/src/cli/config/get.d.ts +0 -6
  181. package/dist/src/cli/config/get.js +0 -11
  182. package/dist/src/cli/config/index.d.ts +0 -10
  183. package/dist/src/cli/config/index.js +0 -22
  184. package/dist/src/cli/config/list.d.ts +0 -4
  185. package/dist/src/cli/config/list.js +0 -10
  186. package/dist/src/cli/config/set.d.ts +0 -9
  187. package/dist/src/cli/config/set.js +0 -48
  188. package/dist/src/cli/draft/_shared.d.ts +0 -27
  189. package/dist/src/cli/draft/_shared.js +0 -85
  190. package/dist/src/cli/draft/create.d.ts +0 -21
  191. package/dist/src/cli/draft/create.js +0 -34
  192. package/dist/src/cli/draft/delete.d.ts +0 -7
  193. package/dist/src/cli/draft/delete.js +0 -20
  194. package/dist/src/cli/draft/get.d.ts +0 -6
  195. package/dist/src/cli/draft/get.js +0 -11
  196. package/dist/src/cli/draft/index.d.ts +0 -54
  197. package/dist/src/cli/draft/index.js +0 -42
  198. package/dist/src/cli/draft/list.d.ts +0 -11
  199. package/dist/src/cli/draft/list.js +0 -23
  200. package/dist/src/cli/draft/publish.d.ts +0 -8
  201. package/dist/src/cli/draft/publish.js +0 -64
  202. package/dist/src/cli/draft/update.d.ts +0 -22
  203. package/dist/src/cli/draft/update.js +0 -29
  204. package/dist/src/cli/file/_shared.d.ts +0 -6
  205. package/dist/src/cli/file/_shared.js +0 -5
  206. package/dist/src/cli/file/delete.d.ts +0 -8
  207. package/dist/src/cli/file/delete.js +0 -21
  208. package/dist/src/cli/file/index.d.ts +0 -19
  209. package/dist/src/cli/file/index.js +0 -33
  210. package/dist/src/cli/file/list.d.ts +0 -6
  211. package/dist/src/cli/file/list.js +0 -11
  212. package/dist/src/cli/file/rename.d.ts +0 -8
  213. package/dist/src/cli/file/rename.js +0 -16
  214. package/dist/src/cli/file/upload.d.ts +0 -9
  215. package/dist/src/cli/file/upload.js +0 -32
  216. package/dist/src/cli/help/index.d.ts +0 -62
  217. package/dist/src/cli/help/index.js +0 -276
  218. package/dist/src/cli/help/registry.d.ts +0 -28
  219. package/dist/src/cli/help/registry.js +0 -29
  220. package/dist/src/cli/note/_flags.d.ts +0 -66
  221. package/dist/src/cli/note/_flags.js +0 -73
  222. package/dist/src/cli/note/create.d.ts +0 -23
  223. package/dist/src/cli/note/create.js +0 -25
  224. package/dist/src/cli/note/delete.d.ts +0 -8
  225. package/dist/src/cli/note/delete.js +0 -21
  226. package/dist/src/cli/note/edit.d.ts +0 -28
  227. package/dist/src/cli/note/edit.js +0 -114
  228. package/dist/src/cli/note/get.d.ts +0 -6
  229. package/dist/src/cli/note/get.js +0 -29
  230. package/dist/src/cli/note/index.d.ts +0 -77
  231. package/dist/src/cli/note/index.js +0 -63
  232. package/dist/src/cli/note/list.d.ts +0 -10
  233. package/dist/src/cli/note/list.js +0 -22
  234. package/dist/src/cli/note/publish.d.ts +0 -7
  235. package/dist/src/cli/note/publish.js +0 -17
  236. package/dist/src/cli/note/unpublish.d.ts +0 -7
  237. package/dist/src/cli/note/unpublish.js +0 -17
  238. package/dist/src/cli/note/update.d.ts +0 -25
  239. package/dist/src/cli/note/update.js +0 -36
  240. package/dist/src/cli/note/view.d.ts +0 -3
  241. package/dist/src/cli/note/view.js +0 -162
  242. package/dist/src/cli/page/create.d.ts +0 -41
  243. package/dist/src/cli/page/create.js +0 -56
  244. package/dist/src/cli/page/delete.d.ts +0 -7
  245. package/dist/src/cli/page/delete.js +0 -37
  246. package/dist/src/cli/page/edit.d.ts +0 -19
  247. package/dist/src/cli/page/edit.js +0 -117
  248. package/dist/src/cli/page/get.d.ts +0 -6
  249. package/dist/src/cli/page/get.js +0 -16
  250. package/dist/src/cli/page/index.d.ts +0 -44
  251. package/dist/src/cli/page/index.js +0 -38
  252. package/dist/src/cli/page/list.d.ts +0 -4
  253. package/dist/src/cli/page/list.js +0 -10
  254. package/dist/src/cli/page/update.d.ts +0 -16
  255. package/dist/src/cli/page/update.js +0 -48
  256. package/dist/src/cli/page/view.d.ts +0 -2
  257. package/dist/src/cli/page/view.js +0 -79
  258. package/dist/src/cli/post/_flags.d.ts +0 -66
  259. package/dist/src/cli/post/_flags.js +0 -96
  260. package/dist/src/cli/post/apply.d.ts +0 -7
  261. package/dist/src/cli/post/apply.js +0 -70
  262. package/dist/src/cli/post/create.d.ts +0 -21
  263. package/dist/src/cli/post/create.js +0 -24
  264. package/dist/src/cli/post/delete.d.ts +0 -8
  265. package/dist/src/cli/post/delete.js +0 -21
  266. package/dist/src/cli/post/edit.d.ts +0 -26
  267. package/dist/src/cli/post/edit.js +0 -115
  268. package/dist/src/cli/post/get.d.ts +0 -7
  269. package/dist/src/cli/post/get.js +0 -15
  270. package/dist/src/cli/post/index.d.ts +0 -91
  271. package/dist/src/cli/post/index.js +0 -73
  272. package/dist/src/cli/post/list.d.ts +0 -10
  273. package/dist/src/cli/post/list.js +0 -23
  274. package/dist/src/cli/post/publish.d.ts +0 -7
  275. package/dist/src/cli/post/publish.js +0 -17
  276. package/dist/src/cli/post/stage.d.ts +0 -23
  277. package/dist/src/cli/post/stage.js +0 -55
  278. package/dist/src/cli/post/unpublish.d.ts +0 -7
  279. package/dist/src/cli/post/unpublish.js +0 -17
  280. package/dist/src/cli/post/update.d.ts +0 -23
  281. package/dist/src/cli/post/update.js +0 -38
  282. package/dist/src/cli/post/view.d.ts +0 -3
  283. package/dist/src/cli/post/view.js +0 -150
  284. package/dist/src/cli/preview/index.d.ts +0 -13
  285. package/dist/src/cli/preview/index.js +0 -226
  286. package/dist/src/cli/profile/index.d.ts +0 -14
  287. package/dist/src/cli/profile/index.js +0 -36
  288. package/dist/src/cli/profile/ls.d.ts +0 -5
  289. package/dist/src/cli/profile/ls.js +0 -26
  290. package/dist/src/cli/profile/mark.d.ts +0 -9
  291. package/dist/src/cli/profile/mark.js +0 -23
  292. package/dist/src/cli/profile/rm.d.ts +0 -12
  293. package/dist/src/cli/profile/rm.js +0 -50
  294. package/dist/src/cli/profile/show.d.ts +0 -9
  295. package/dist/src/cli/profile/show.js +0 -40
  296. package/dist/src/cli/profile/use.d.ts +0 -6
  297. package/dist/src/cli/profile/use.js +0 -11
  298. package/dist/src/cli/profile/view.d.ts +0 -8
  299. package/dist/src/cli/profile/view.js +0 -21
  300. package/dist/src/cli/project/_flags.d.ts +0 -56
  301. package/dist/src/cli/project/_flags.js +0 -130
  302. package/dist/src/cli/project/create.d.ts +0 -17
  303. package/dist/src/cli/project/create.js +0 -25
  304. package/dist/src/cli/project/delete.d.ts +0 -8
  305. package/dist/src/cli/project/delete.js +0 -22
  306. package/dist/src/cli/project/edit.d.ts +0 -11
  307. package/dist/src/cli/project/edit.js +0 -61
  308. package/dist/src/cli/project/get.d.ts +0 -7
  309. package/dist/src/cli/project/get.js +0 -14
  310. package/dist/src/cli/project/index.d.ts +0 -43
  311. package/dist/src/cli/project/index.js +0 -52
  312. package/dist/src/cli/project/list.d.ts +0 -8
  313. package/dist/src/cli/project/list.js +0 -19
  314. package/dist/src/cli/project/update.d.ts +0 -18
  315. package/dist/src/cli/project/update.js +0 -24
  316. package/dist/src/cli/project/view-cmd.d.ts +0 -7
  317. package/dist/src/cli/project/view-cmd.js +0 -15
  318. package/dist/src/cli/project/view.d.ts +0 -3
  319. package/dist/src/cli/project/view.js +0 -102
  320. package/dist/src/cli/render/codehighlight.d.ts +0 -8
  321. package/dist/src/cli/render/codehighlight.js +0 -264
  322. package/dist/src/cli/render/envelope.d.ts +0 -7
  323. package/dist/src/cli/render/envelope.js +0 -23
  324. package/dist/src/cli/render/frontmatter.d.ts +0 -8
  325. package/dist/src/cli/render/frontmatter.js +0 -50
  326. package/dist/src/cli/render/helpers.d.ts +0 -2
  327. package/dist/src/cli/render/helpers.js +0 -11
  328. package/dist/src/cli/render/index.d.ts +0 -7
  329. package/dist/src/cli/render/index.js +0 -10
  330. package/dist/src/cli/render/lexical/blocks.d.ts +0 -19
  331. package/dist/src/cli/render/lexical/blocks.js +0 -208
  332. package/dist/src/cli/render/lexical/code.d.ts +0 -2
  333. package/dist/src/cli/render/lexical/code.js +0 -22
  334. package/dist/src/cli/render/lexical/embeds.d.ts +0 -6
  335. package/dist/src/cli/render/lexical/embeds.js +0 -51
  336. package/dist/src/cli/render/lexical/index.d.ts +0 -9
  337. package/dist/src/cli/render/lexical/index.js +0 -25
  338. package/dist/src/cli/render/lexical/inlines.d.ts +0 -17
  339. package/dist/src/cli/render/lexical/inlines.js +0 -76
  340. package/dist/src/cli/render/lexical/parser.d.ts +0 -10
  341. package/dist/src/cli/render/lexical/parser.js +0 -64
  342. package/dist/src/cli/render/lexical/walker.d.ts +0 -21
  343. package/dist/src/cli/render/lexical/walker.js +0 -51
  344. package/dist/src/cli/render/markdown.d.ts +0 -18
  345. package/dist/src/cli/render/markdown.js +0 -196
  346. package/dist/src/cli/render/metadata-block.d.ts +0 -14
  347. package/dist/src/cli/render/metadata-block.js +0 -50
  348. package/dist/src/cli/skill/all.d.ts +0 -4
  349. package/dist/src/cli/skill/all.js +0 -11
  350. package/dist/src/cli/skill/get.d.ts +0 -6
  351. package/dist/src/cli/skill/get.js +0 -12
  352. package/dist/src/cli/skill/index.d.ts +0 -10
  353. package/dist/src/cli/skill/index.js +0 -34
  354. package/dist/src/cli/skill/list.d.ts +0 -4
  355. package/dist/src/cli/skill/list.js +0 -11
  356. package/dist/src/cli/skill/search.d.ts +0 -6
  357. package/dist/src/cli/skill/search.js +0 -12
  358. package/dist/src/cli/skill/views.d.ts +0 -6
  359. package/dist/src/cli/skill/views.js +0 -90
  360. package/dist/src/cli/snippet/_flags.d.ts +0 -57
  361. package/dist/src/cli/snippet/_flags.js +0 -123
  362. package/dist/src/cli/snippet/_resolve.d.ts +0 -4
  363. package/dist/src/cli/snippet/_resolve.js +0 -32
  364. package/dist/src/cli/snippet/_sync.d.ts +0 -5
  365. package/dist/src/cli/snippet/_sync.js +0 -54
  366. package/dist/src/cli/snippet/create.d.ts +0 -19
  367. package/dist/src/cli/snippet/create.js +0 -35
  368. package/dist/src/cli/snippet/delete.d.ts +0 -8
  369. package/dist/src/cli/snippet/delete.js +0 -28
  370. package/dist/src/cli/snippet/edit.d.ts +0 -7
  371. package/dist/src/cli/snippet/edit.js +0 -29
  372. package/dist/src/cli/snippet/get.d.ts +0 -6
  373. package/dist/src/cli/snippet/get.js +0 -12
  374. package/dist/src/cli/snippet/index.d.ts +0 -43
  375. package/dist/src/cli/snippet/index.js +0 -58
  376. package/dist/src/cli/snippet/list.d.ts +0 -9
  377. package/dist/src/cli/snippet/list.js +0 -20
  378. package/dist/src/cli/snippet/pull.d.ts +0 -8
  379. package/dist/src/cli/snippet/pull.js +0 -33
  380. package/dist/src/cli/snippet/push.d.ts +0 -10
  381. package/dist/src/cli/snippet/push.js +0 -31
  382. package/dist/src/cli/snippet/update.d.ts +0 -8
  383. package/dist/src/cli/snippet/update.js +0 -16
  384. package/dist/src/cli/topic/create.d.ts +0 -10
  385. package/dist/src/cli/topic/create.js +0 -24
  386. package/dist/src/cli/topic/delete.d.ts +0 -7
  387. package/dist/src/cli/topic/delete.js +0 -37
  388. package/dist/src/cli/topic/get.d.ts +0 -6
  389. package/dist/src/cli/topic/get.js +0 -15
  390. package/dist/src/cli/topic/index.d.ts +0 -20
  391. package/dist/src/cli/topic/index.js +0 -32
  392. package/dist/src/cli/topic/list.d.ts +0 -4
  393. package/dist/src/cli/topic/list.js +0 -10
  394. package/dist/src/cli/topic/update.d.ts +0 -11
  395. package/dist/src/cli/topic/update.js +0 -51
  396. package/dist/src/cli/ui/index.d.ts +0 -24
  397. package/dist/src/cli/ui/index.js +0 -83
  398. package/dist/src/cli/update/index.d.ts +0 -10
  399. package/dist/src/cli/update/index.js +0 -142
  400. package/dist/src/domain/admin-link.d.ts +0 -12
  401. package/dist/src/domain/admin-link.js +0 -45
  402. package/dist/src/domain/content-spec.d.ts +0 -20
  403. package/dist/src/domain/content-spec.js +0 -78
  404. package/dist/src/domain/envelope-compat.d.ts +0 -68
  405. package/dist/src/domain/envelope-compat.js +0 -121
  406. package/dist/src/domain/envelope.d.ts +0 -34
  407. package/dist/src/domain/envelope.js +0 -355
  408. package/dist/src/domain/errors.d.ts +0 -336
  409. package/dist/src/domain/errors.js +0 -239
  410. package/dist/src/domain/gate.d.ts +0 -14
  411. package/dist/src/domain/gate.js +0 -18
  412. package/dist/src/domain/payload.d.ts +0 -64
  413. package/dist/src/domain/payload.js +0 -237
  414. package/dist/src/domain/preflight-guards.d.ts +0 -54
  415. package/dist/src/domain/preflight-guards.js +0 -130
  416. package/dist/src/domain/runtime-flags.d.ts +0 -33
  417. package/dist/src/domain/runtime-flags.js +0 -166
  418. package/dist/src/domain/schema/api-envelope.d.ts +0 -67
  419. package/dist/src/domain/schema/api-envelope.js +0 -65
  420. package/dist/src/domain/schema/category.d.ts +0 -23
  421. package/dist/src/domain/schema/category.js +0 -19
  422. package/dist/src/domain/schema/config.d.ts +0 -13
  423. package/dist/src/domain/schema/config.js +0 -18
  424. package/dist/src/domain/schema/note.d.ts +0 -76
  425. package/dist/src/domain/schema/note.js +0 -35
  426. package/dist/src/domain/schema/page.d.ts +0 -40
  427. package/dist/src/domain/schema/page.js +0 -22
  428. package/dist/src/domain/schema/post.d.ts +0 -68
  429. package/dist/src/domain/schema/post.js +0 -35
  430. package/dist/src/domain/schema/profile.d.ts +0 -14
  431. package/dist/src/domain/schema/profile.js +0 -22
  432. package/dist/src/domain/schema/topic.d.ts +0 -24
  433. package/dist/src/domain/schema/topic.js +0 -16
  434. package/dist/src/domain/version.d.ts +0 -15
  435. package/dist/src/domain/version.js +0 -43
  436. package/dist/src/index.d.ts +0 -4
  437. package/dist/src/index.js +0 -8
  438. package/dist/src/layers/App.d.ts +0 -30
  439. package/dist/src/layers/App.js +0 -39
  440. package/dist/src/services/Ai/index.d.ts +0 -13
  441. package/dist/src/services/Ai/index.js +0 -127
  442. package/dist/src/services/Ai/overview.d.ts +0 -7
  443. package/dist/src/services/Ai/overview.js +0 -11
  444. package/dist/src/services/Ai/resources.d.ts +0 -7
  445. package/dist/src/services/Ai/resources.js +0 -59
  446. package/dist/src/services/Ai/shared.d.ts +0 -2
  447. package/dist/src/services/Ai/shared.js +0 -11
  448. package/dist/src/services/Ai/tasks.d.ts +0 -8
  449. package/dist/src/services/Ai/tasks.js +0 -144
  450. package/dist/src/services/Ai/types.d.ts +0 -130
  451. package/dist/src/services/Ai/types.js +0 -1
  452. package/dist/src/services/Api.d.ts +0 -67
  453. package/dist/src/services/Api.js +0 -348
  454. package/dist/src/services/Auth.d.ts +0 -101
  455. package/dist/src/services/Auth.js +0 -402
  456. package/dist/src/services/Backup.d.ts +0 -8
  457. package/dist/src/services/Backup.js +0 -4
  458. package/dist/src/services/Cache.d.ts +0 -8
  459. package/dist/src/services/Cache.js +0 -4
  460. package/dist/src/services/Comment.d.ts +0 -48
  461. package/dist/src/services/Comment.js +0 -102
  462. package/dist/src/services/Config.d.ts +0 -95
  463. package/dist/src/services/Config.js +0 -359
  464. package/dist/src/services/Editor.d.ts +0 -28
  465. package/dist/src/services/Editor.js +0 -95
  466. package/dist/src/services/Lexical.d.ts +0 -27
  467. package/dist/src/services/Lexical.js +0 -56
  468. package/dist/src/services/Migration.d.ts +0 -31
  469. package/dist/src/services/Migration.js +0 -177
  470. package/dist/src/services/Profile.d.ts +0 -29
  471. package/dist/src/services/Profile.js +0 -115
  472. package/dist/src/services/Renderer/content.d.ts +0 -16
  473. package/dist/src/services/Renderer/content.js +0 -110
  474. package/dist/src/services/Renderer/datetime.d.ts +0 -38
  475. package/dist/src/services/Renderer/datetime.js +0 -147
  476. package/dist/src/services/Renderer/errors.d.ts +0 -3
  477. package/dist/src/services/Renderer/errors.js +0 -59
  478. package/dist/src/services/Renderer/index.d.ts +0 -13
  479. package/dist/src/services/Renderer/index.js +0 -11
  480. package/dist/src/services/Renderer/lists.d.ts +0 -1
  481. package/dist/src/services/Renderer/lists.js +0 -101
  482. package/dist/src/services/Renderer/options.d.ts +0 -10
  483. package/dist/src/services/Renderer/options.js +0 -13
  484. package/dist/src/services/Renderer/primitives.d.ts +0 -4
  485. package/dist/src/services/Renderer/primitives.js +0 -12
  486. package/dist/src/services/Renderer/service.d.ts +0 -35
  487. package/dist/src/services/Renderer/service.js +0 -123
  488. package/dist/src/services/Renderer/view.d.ts +0 -16
  489. package/dist/src/services/Renderer/view.js +0 -1
  490. package/dist/src/services/Resolver.d.ts +0 -47
  491. package/dist/src/services/Resolver.js +0 -269
  492. package/dist/src/services/Skill.d.ts +0 -29
  493. package/dist/src/services/Skill.js +0 -421
  494. package/dist/src/services/UpdateNotifier.d.ts +0 -162
  495. package/dist/src/services/UpdateNotifier.js +0 -572
  496. package/dist/test/cli/ai/ai.test.d.ts +0 -1
  497. package/dist/test/cli/ai/ai.test.js +0 -507
  498. package/dist/test/cli/ai/verbs.test.d.ts +0 -1
  499. package/dist/test/cli/ai/verbs.test.js +0 -235
  500. package/dist/test/cli/auth/login.test.d.ts +0 -1
  501. package/dist/test/cli/auth/login.test.js +0 -236
  502. package/dist/test/cli/auth/logout-whoami.test.d.ts +0 -1
  503. package/dist/test/cli/auth/logout-whoami.test.js +0 -124
  504. package/dist/test/cli/auth/status.test.d.ts +0 -1
  505. package/dist/test/cli/auth/status.test.js +0 -90
  506. package/dist/test/cli/category/category.test.d.ts +0 -1
  507. package/dist/test/cli/category/category.test.js +0 -175
  508. package/dist/test/cli/comment/comment.test.d.ts +0 -1
  509. package/dist/test/cli/comment/comment.test.js +0 -445
  510. package/dist/test/cli/config/config.test.d.ts +0 -1
  511. package/dist/test/cli/config/config.test.js +0 -281
  512. package/dist/test/cli/edit-roundtrip.test.d.ts +0 -1
  513. package/dist/test/cli/edit-roundtrip.test.js +0 -259
  514. package/dist/test/cli/file/file.test.d.ts +0 -1
  515. package/dist/test/cli/file/file.test.js +0 -185
  516. package/dist/test/cli/help.test.d.ts +0 -1
  517. package/dist/test/cli/help.test.js +0 -289
  518. package/dist/test/cli/note/create.test.d.ts +0 -1
  519. package/dist/test/cli/note/create.test.js +0 -155
  520. package/dist/test/cli/note/list.test.d.ts +0 -1
  521. package/dist/test/cli/note/list.test.js +0 -115
  522. package/dist/test/cli/note/publish.test.d.ts +0 -1
  523. package/dist/test/cli/note/publish.test.js +0 -123
  524. package/dist/test/cli/page/page.test.d.ts +0 -1
  525. package/dist/test/cli/page/page.test.js +0 -185
  526. package/dist/test/cli/post/create.test.d.ts +0 -1
  527. package/dist/test/cli/post/create.test.js +0 -172
  528. package/dist/test/cli/post/list.test.d.ts +0 -1
  529. package/dist/test/cli/post/list.test.js +0 -133
  530. package/dist/test/cli/post/publish.test.d.ts +0 -1
  531. package/dist/test/cli/post/publish.test.js +0 -139
  532. package/dist/test/cli/post/stage-apply.test.d.ts +0 -1
  533. package/dist/test/cli/post/stage-apply.test.js +0 -215
  534. package/dist/test/cli/post/update.test.d.ts +0 -1
  535. package/dist/test/cli/post/update.test.js +0 -160
  536. package/dist/test/cli/post-note-crud.test.d.ts +0 -1
  537. package/dist/test/cli/post-note-crud.test.js +0 -362
  538. package/dist/test/cli/profile/ls.test.d.ts +0 -1
  539. package/dist/test/cli/profile/ls.test.js +0 -93
  540. package/dist/test/cli/profile/mark-use.test.d.ts +0 -1
  541. package/dist/test/cli/profile/mark-use.test.js +0 -216
  542. package/dist/test/cli/project-crud.test.d.ts +0 -1
  543. package/dist/test/cli/project-crud.test.js +0 -315
  544. package/dist/test/cli/render/lexical.test.d.ts +0 -1
  545. package/dist/test/cli/render/lexical.test.js +0 -216
  546. package/dist/test/cli/render/markdown.test.d.ts +0 -1
  547. package/dist/test/cli/render/markdown.test.js +0 -39
  548. package/dist/test/cli/snippet-crud.test.d.ts +0 -1
  549. package/dist/test/cli/snippet-crud.test.js +0 -293
  550. package/dist/test/cli/topic/topic.test.d.ts +0 -1
  551. package/dist/test/cli/topic/topic.test.js +0 -181
  552. package/dist/test/cli/update.test.d.ts +0 -1
  553. package/dist/test/cli/update.test.js +0 -395
  554. package/dist/test/domain/content-spec.test.d.ts +0 -1
  555. package/dist/test/domain/content-spec.test.js +0 -126
  556. package/dist/test/domain/envelope-compat.test.d.ts +0 -1
  557. package/dist/test/domain/envelope-compat.test.js +0 -126
  558. package/dist/test/domain/envelope.test.d.ts +0 -1
  559. package/dist/test/domain/envelope.test.js +0 -149
  560. package/dist/test/domain/errors.test.d.ts +0 -1
  561. package/dist/test/domain/errors.test.js +0 -127
  562. package/dist/test/domain/gate.test.d.ts +0 -1
  563. package/dist/test/domain/gate.test.js +0 -128
  564. package/dist/test/domain/payload.test.d.ts +0 -1
  565. package/dist/test/domain/payload.test.js +0 -259
  566. package/dist/test/helper/test-fs.d.ts +0 -24
  567. package/dist/test/helper/test-fs.js +0 -161
  568. package/dist/test/helper/test-http.d.ts +0 -31
  569. package/dist/test/helper/test-http.js +0 -66
  570. package/dist/test/integration/_helpers.d.ts +0 -5
  571. package/dist/test/integration/_helpers.js +0 -24
  572. package/dist/test/integration/cli-error-envelope.test.d.ts +0 -1
  573. package/dist/test/integration/cli-error-envelope.test.js +0 -137
  574. package/dist/test/integration/cli-help-render.test.d.ts +0 -1
  575. package/dist/test/integration/cli-help-render.test.js +0 -149
  576. package/dist/test/integration/cli-help.test.d.ts +0 -1
  577. package/dist/test/integration/cli-help.test.js +0 -67
  578. package/dist/test/integration/cli-post-list.test.d.ts +0 -1
  579. package/dist/test/integration/cli-post-list.test.js +0 -140
  580. package/dist/test/integration/cli-skill.test.d.ts +0 -1
  581. package/dist/test/integration/cli-skill.test.js +0 -74
  582. package/dist/test/integration/cli-version.test.d.ts +0 -1
  583. package/dist/test/integration/cli-version.test.js +0 -37
  584. package/dist/test/services/Api.test.d.ts +0 -1
  585. package/dist/test/services/Api.test.js +0 -553
  586. package/dist/test/services/Auth.test.d.ts +0 -1
  587. package/dist/test/services/Auth.test.js +0 -650
  588. package/dist/test/services/Config.test.d.ts +0 -1
  589. package/dist/test/services/Config.test.js +0 -510
  590. package/dist/test/services/Datetime.test.d.ts +0 -1
  591. package/dist/test/services/Datetime.test.js +0 -113
  592. package/dist/test/services/Editor.test.d.ts +0 -1
  593. package/dist/test/services/Editor.test.js +0 -205
  594. package/dist/test/services/Lexical.errors.test.d.ts +0 -1
  595. package/dist/test/services/Lexical.errors.test.js +0 -60
  596. package/dist/test/services/Lexical.test.d.ts +0 -1
  597. package/dist/test/services/Lexical.test.js +0 -68
  598. package/dist/test/services/Migration.test.d.ts +0 -1
  599. package/dist/test/services/Migration.test.js +0 -376
  600. package/dist/test/services/Profile.test.d.ts +0 -1
  601. package/dist/test/services/Profile.test.js +0 -277
  602. package/dist/test/services/Renderer.test.d.ts +0 -1
  603. package/dist/test/services/Renderer.test.js +0 -538
  604. package/dist/test/services/Resolver.test.d.ts +0 -1
  605. package/dist/test/services/Resolver.test.js +0 -320
  606. package/dist/test/services/Skill.test.d.ts +0 -1
  607. package/dist/test/services/Skill.test.js +0 -261
  608. package/dist/test/services/UpdateNotifier.spawn.test.d.ts +0 -1
  609. package/dist/test/services/UpdateNotifier.spawn.test.js +0 -73
  610. package/dist/test/services/UpdateNotifier.test.d.ts +0 -1
  611. package/dist/test/services/UpdateNotifier.test.js +0 -912
@@ -1,59 +0,0 @@
1
- import { codeForTag, defaultMessageFor, toErrorEnvelope, } from '../../domain/errors';
2
- import { color, writeStderr, writeStdout } from './primitives';
3
- const formatIssue = (issue) => {
4
- if (!issue || typeof issue !== 'object')
5
- return String(issue);
6
- const obj = issue;
7
- const path = Array.isArray(obj.path) ? obj.path.join('.') : '';
8
- const message = typeof obj.message === 'string' ? obj.message : JSON.stringify(obj);
9
- const line = typeof obj.line === 'number' ? ` (line ${obj.line})` : '';
10
- const suggestions = Array.isArray(obj.suggestions)
11
- ? ` — did you mean ${obj.suggestions.join(', ')}?`
12
- : '';
13
- return `${path ? `${path}: ` : ''}${message}${line}${suggestions}`;
14
- };
15
- const formatDetails = (details) => {
16
- if (!details || typeof details !== 'object')
17
- return [String(details)];
18
- if (Array.isArray(details)) {
19
- return details.map((item) => formatIssue(item));
20
- }
21
- if ('issues' in details &&
22
- Array.isArray(details.issues)) {
23
- return details.issues.map((issue) => formatIssue(issue));
24
- }
25
- return [JSON.stringify(details)];
26
- };
27
- export const emitErrorSync = (err, opts) => {
28
- const tag = err._tag;
29
- if (opts.json) {
30
- if (tag === 'WriteRequiresExplicit') {
31
- // Preserve legacy special-case JSON shape for the production write
32
- // gate (`error`, `profile`, `api_url`, `hint`).
33
- const e = err;
34
- writeStdout(`${JSON.stringify({
35
- ok: false,
36
- error: codeForTag(tag),
37
- profile: e.profile ?? null,
38
- api_url: e.apiUrl ?? null,
39
- hint: e.hint ?? null,
40
- })}\n`);
41
- return;
42
- }
43
- writeStdout(`${JSON.stringify(toErrorEnvelope(err))}\n`);
44
- return;
45
- }
46
- const message = 'message' in err && typeof err.message === 'string' && err.message
47
- ? err.message
48
- : defaultMessageFor(tag);
49
- writeStderr(`${color(process.stderr, 31, '✘')} ${message}\n`);
50
- if ('details' in err && err.details !== undefined) {
51
- const detailLines = formatDetails(err.details);
52
- for (const line of detailLines) {
53
- writeStderr(` · ${line}\n`);
54
- }
55
- }
56
- if ('hint' in err && typeof err.hint === 'string' && err.hint.length > 0) {
57
- writeStderr(`\nhint: ${err.hint}\n`);
58
- }
59
- };
@@ -1,13 +0,0 @@
1
- import { Context, Effect, Layer } from 'effect';
2
- import { type RendererService } from './service';
3
- export { type DateTimeStyle, formatAbsoluteDateTime, formatDateTime, type FormatDateTimeOptions, formatRelativeTime, looksLikeTimestamp, toDate, tryFormatTimestamp, } from './datetime';
4
- export { renderReadableGeneric } from './lists';
5
- export { currentOutputOptions, defaultOutputOptions, type OutputMode, type OutputOptions, } from './options';
6
- export type { RendererService } from './service';
7
- export type { View, ViewCtx } from './view';
8
- declare const Renderer_base: Context.TagClass<Renderer, "Renderer", RendererService>;
9
- export declare class Renderer extends Renderer_base {
10
- static Default: Layer.Layer<Renderer>;
11
- /** Apply the given `OutputOptions` for the duration of `effect`. */
12
- static withOptions: <A, E, R>(options: import('./options').OutputOptions) => (effect: Effect.Effect<A, E, R>) => Effect.Effect<A, E, R>;
13
- }
@@ -1,11 +0,0 @@
1
- import { Context, Effect, Layer } from 'effect';
2
- import { currentOutputOptions } from './options';
3
- import { makeService } from './service';
4
- export { formatAbsoluteDateTime, formatDateTime, formatRelativeTime, looksLikeTimestamp, toDate, tryFormatTimestamp, } from './datetime';
5
- export { renderReadableGeneric } from './lists';
6
- export { currentOutputOptions, defaultOutputOptions, } from './options';
7
- export class Renderer extends Context.Tag('Renderer')() {
8
- static Default = Layer.succeed(Renderer, makeService());
9
- /** Apply the given `OutputOptions` for the duration of `effect`. */
10
- static withOptions = (options) => (effect) => Effect.locally(effect, currentOutputOptions, options);
11
- }
@@ -1 +0,0 @@
1
- export declare const renderReadableGeneric: (data: unknown) => string;
@@ -1,101 +0,0 @@
1
- import { formatScalar } from './content';
2
- import { tryFormatTimestamp } from './datetime';
3
- // Generic readable renderer for arbitrary payloads. Drives the default
4
- // `--output readable` rendering for commands that emit ad-hoc objects via
5
- // `emitSuccess` (mutation responses for auth/profile/config/update/category/
6
- // topic/...). Keep the shape close to YAML so the output remains pasteable
7
- // into prose.
8
- const isPlainObject = (value) => Boolean(value) &&
9
- typeof value === 'object' &&
10
- !Array.isArray(value) &&
11
- !(value instanceof Date);
12
- // Auto-detect timestamps inside arbitrary payloads and route them through
13
- // the friendlier formatter so the raw machine form never leaks into the
14
- // readable output.
15
- const formatLeaf = (value) => tryFormatTimestamp(value, { style: 'both' }) ?? formatScalar(value);
16
- const renderReadableLines = (data, indent) => {
17
- const pad = ' '.repeat(indent);
18
- if (data === null || data === undefined)
19
- return [];
20
- if (data instanceof Date) {
21
- return [`${pad}${formatLeaf(data)}`];
22
- }
23
- if (typeof data === 'string') {
24
- if (data.length === 0)
25
- return [];
26
- const ts = tryFormatTimestamp(data, { style: 'both' });
27
- if (ts !== null)
28
- return [`${pad}${ts}`];
29
- return data.split('\n').map((line) => `${pad}${line}`);
30
- }
31
- if (typeof data === 'number' || typeof data === 'boolean') {
32
- return [`${pad}${String(data)}`];
33
- }
34
- if (Array.isArray(data)) {
35
- const lines = [];
36
- for (const item of data) {
37
- if (isPlainObject(item)) {
38
- const inner = renderReadableLines(item, indent + 1);
39
- if (inner.length === 0)
40
- continue;
41
- // Replace the first line's leading pad with "- " marker.
42
- const first = inner[0];
43
- const stripped = first.startsWith(pad + ' ')
44
- ? first.slice((pad + ' ').length)
45
- : first.trimStart();
46
- lines.push(`${pad}- ${stripped}`);
47
- for (let i = 1; i < inner.length; i++)
48
- lines.push(inner[i]);
49
- }
50
- else if (Array.isArray(item)) {
51
- const inner = renderReadableLines(item, indent + 1);
52
- if (inner.length === 0)
53
- continue;
54
- lines.push(`${pad}-`);
55
- lines.push(...inner);
56
- }
57
- else if (item !== null && item !== undefined) {
58
- lines.push(`${pad}- ${formatLeaf(item)}`);
59
- }
60
- }
61
- return lines;
62
- }
63
- if (isPlainObject(data)) {
64
- const lines = [];
65
- for (const [key, value] of Object.entries(data)) {
66
- if (value === null || value === undefined || value === '')
67
- continue;
68
- if (Array.isArray(value)) {
69
- if (value.length === 0)
70
- continue;
71
- const allScalar = value.every((v) => v === null ||
72
- v === undefined ||
73
- v instanceof Date ||
74
- typeof v !== 'object');
75
- if (allScalar) {
76
- const parts = value
77
- .filter((v) => v !== null && v !== undefined)
78
- .map((v) => formatLeaf(v));
79
- lines.push(`${pad}${key}: ${parts.join(', ')}`);
80
- }
81
- else {
82
- lines.push(`${pad}${key}:`);
83
- lines.push(...renderReadableLines(value, indent + 1));
84
- }
85
- }
86
- else if (isPlainObject(value)) {
87
- const inner = renderReadableLines(value, indent + 1);
88
- if (inner.length === 0)
89
- continue;
90
- lines.push(`${pad}${key}:`);
91
- lines.push(...inner);
92
- }
93
- else {
94
- lines.push(`${pad}${key}: ${formatLeaf(value)}`);
95
- }
96
- }
97
- return lines;
98
- }
99
- return [`${pad}${String(data)}`];
100
- };
101
- export const renderReadableGeneric = (data) => renderReadableLines(data, 0).join('\n');
@@ -1,10 +0,0 @@
1
- import { FiberRef } from 'effect';
2
- export type OutputMode = 'pretty-json' | 'json' | 'readable' | 'llm' | 'xml';
3
- export interface OutputOptions {
4
- readonly json: boolean;
5
- readonly output: OutputMode;
6
- readonly quiet: boolean;
7
- readonly verbose: boolean;
8
- }
9
- export declare const defaultOutputOptions: OutputOptions;
10
- export declare const currentOutputOptions: FiberRef.FiberRef<OutputOptions>;
@@ -1,13 +0,0 @@
1
- import { FiberRef } from 'effect';
2
- export const defaultOutputOptions = {
3
- json: false,
4
- output: 'readable',
5
- quiet: false,
6
- verbose: false,
7
- };
8
- // One FiberRef carries the per-run output options. The bin entry sets it once
9
- // at the root after parsing global flags; tests override it per-Effect via
10
- // `Effect.locally(currentOutputOptions, ...)`. Choosing a FiberRef over a
11
- // command-level context parameter keeps every `Api`/`Renderer`/command body
12
- // free of an explicit options argument while still being fully testable.
13
- export const currentOutputOptions = FiberRef.unsafeMake(defaultOutputOptions);
@@ -1,4 +0,0 @@
1
- export declare const isTTY: (stream: NodeJS.WriteStream) => boolean;
2
- export declare const color: (stream: NodeJS.WriteStream, code: number, text: string) => string;
3
- export declare const writeStdout: (s: string) => void;
4
- export declare const writeStderr: (s: string) => void;
@@ -1,12 +0,0 @@
1
- export const isTTY = (stream) => Boolean(stream.isTTY);
2
- export const color = (stream, code, text) => {
3
- if (!isTTY(stream))
4
- return text;
5
- return `\x1B[${code}m${text}\x1B[0m`;
6
- };
7
- export const writeStdout = (s) => {
8
- process.stdout.write(s);
9
- };
10
- export const writeStderr = (s) => {
11
- process.stderr.write(s);
12
- };
@@ -1,35 +0,0 @@
1
- import { Effect } from 'effect';
2
- import type { CliError } from '../../domain/errors';
3
- import { type OutputOptions } from './options';
4
- import type { View } from './view';
5
- export interface RendererService {
6
- /** Active output configuration in the current fiber. */
7
- readonly options: Effect.Effect<OutputOptions>;
8
- /** Typed view dispatch — primary path. */
9
- readonly emit: <T>(view: View<T>, data: T) => Effect.Effect<void>;
10
- /** Generic success payload for ad-hoc data (mutation responses, etc.). */
11
- readonly emitSuccess: (data: unknown) => Effect.Effect<void>;
12
- /** Info line on stderr (suppressed by `--quiet` / `--json`). */
13
- readonly emitInfo: (message: string) => Effect.Effect<void>;
14
- /** Warning line on stderr (suppressed by `--json`). */
15
- readonly emitWarn: (message: string) => Effect.Effect<void>;
16
- /** Error envelope or pretty error to stderr/stdout per output mode. */
17
- readonly emitError: (err: CliError) => Effect.Effect<void>;
18
- /**
19
- * Emit a bespoke ANSI/text view (ad-hoc, no schema — banners). In `--json`
20
- * mode the function is never called — `data` is wrapped as a JSON envelope.
21
- */
22
- readonly emitView: (data: unknown, view: (ctx: {
23
- readonly color: boolean;
24
- }) => string) => Effect.Effect<void>;
25
- /** Convenience for `emitView` whose body is a markdown source string. */
26
- readonly emitMarkdown: (data: unknown, markdown: () => string) => Effect.Effect<void>;
27
- /**
28
- * Multi-line info block on stderr. Honours `--quiet` / `--json` like
29
- * `emitInfo`; useful for boxed banners (device-code, etc.).
30
- */
31
- readonly emitInfoBlock: (block: (ctx: {
32
- readonly color: boolean;
33
- }) => string) => Effect.Effect<void>;
34
- }
35
- export declare const makeService: () => RendererService;
@@ -1,123 +0,0 @@
1
- import { Effect, FiberRef } from 'effect';
2
- import { isColorEnabled, renderMarkdownToAnsi } from '../../cli/render';
3
- import { emitErrorSync } from './errors';
4
- import { renderReadableGeneric } from './lists';
5
- import { currentOutputOptions, } from './options';
6
- import { color, writeStderr, writeStdout } from './primitives';
7
- export const makeService = () => {
8
- const getOpts = FiberRef.get(currentOutputOptions);
9
- const emitSuccessSync = (data, opts) => {
10
- if (opts.json || opts.output === 'json') {
11
- writeStdout(`${JSON.stringify({ ok: true, data })}\n`);
12
- return;
13
- }
14
- if (data === null || data === undefined)
15
- return;
16
- if (typeof data === 'string') {
17
- writeStdout(`${data}\n`);
18
- return;
19
- }
20
- if (opts.output === 'readable') {
21
- const rendered = renderReadableGeneric(data);
22
- if (rendered)
23
- writeStdout(`${rendered}\n`);
24
- return;
25
- }
26
- writeStdout(`${JSON.stringify(data, null, 2)}\n`);
27
- };
28
- return {
29
- options: getOpts,
30
- emit: (view, data) => Effect.flatMap(getOpts, (opts) => Effect.sync(() => {
31
- // JSON family bypasses the view entirely — kind-agnostic envelope.
32
- if (opts.json || opts.output === 'json') {
33
- writeStdout(`${JSON.stringify({ ok: true, data })}\n`);
34
- return;
35
- }
36
- if (opts.output === 'pretty-json') {
37
- writeStdout(`${JSON.stringify(data, null, 2)}\n`);
38
- return;
39
- }
40
- const mode = opts.output;
41
- if (!view.modes.has(mode)) {
42
- writeStderr(`${color(process.stderr, 31, '✘')} unsupported --output value for ${view.kind}: ${mode}\n`);
43
- return;
44
- }
45
- let text;
46
- if (mode === 'xml' && view.xml) {
47
- text = view.xml(data);
48
- }
49
- else if (mode === 'llm' && view.llm) {
50
- text = view.llm(data);
51
- }
52
- else if (mode === 'llm') {
53
- // Fallback: render readable with color disabled — strips all ANSI.
54
- const ctx = { color: false, verbose: opts.verbose };
55
- text = view.readable(data, ctx);
56
- }
57
- else {
58
- const ctx = {
59
- color: isColorEnabled(process.stdout),
60
- verbose: opts.verbose,
61
- };
62
- text = view.readable(data, ctx);
63
- }
64
- writeStdout(`${text}\n`);
65
- })),
66
- emitSuccess: (data) => Effect.flatMap(getOpts, (opts) => Effect.sync(() => emitSuccessSync(data, opts))),
67
- emitInfo: (message) => Effect.flatMap(getOpts, (opts) => Effect.sync(() => {
68
- if (opts.quiet || opts.json)
69
- return;
70
- writeStderr(`${message}\n`);
71
- })),
72
- emitWarn: (message) => Effect.flatMap(getOpts, (opts) => Effect.sync(() => {
73
- if (opts.json)
74
- return;
75
- writeStderr(`${color(process.stderr, 33, 'warn')}: ${message}\n`);
76
- })),
77
- emitError: (err) => Effect.flatMap(getOpts, (opts) => Effect.sync(() => emitErrorSync(err, opts))),
78
- emitView: (data, view) => Effect.flatMap(getOpts, (opts) => Effect.sync(() => {
79
- if (opts.json || opts.output === 'json') {
80
- writeStdout(`${JSON.stringify({ ok: true, data })}\n`);
81
- return;
82
- }
83
- if (opts.output === 'pretty-json') {
84
- if (data !== null && data !== undefined) {
85
- writeStdout(`${JSON.stringify(data, null, 2)}\n`);
86
- }
87
- return;
88
- }
89
- if (data === null || data === undefined)
90
- return;
91
- const color = isColorEnabled(process.stdout);
92
- const text = view({ color });
93
- if (text)
94
- writeStdout(`${text}\n`);
95
- })),
96
- emitMarkdown: (data, markdown) => Effect.flatMap(getOpts, (opts) => Effect.sync(() => {
97
- if (opts.json || opts.output === 'json') {
98
- writeStdout(`${JSON.stringify({ ok: true, data })}\n`);
99
- return;
100
- }
101
- if (opts.output === 'pretty-json') {
102
- if (data !== null && data !== undefined) {
103
- writeStdout(`${JSON.stringify(data, null, 2)}\n`);
104
- }
105
- return;
106
- }
107
- if (data === null || data === undefined)
108
- return;
109
- const color = isColorEnabled(process.stdout);
110
- const text = renderMarkdownToAnsi(markdown(), { color });
111
- if (text)
112
- writeStdout(`${text}\n`);
113
- })),
114
- emitInfoBlock: (block) => Effect.flatMap(getOpts, (opts) => Effect.sync(() => {
115
- if (opts.quiet || opts.json)
116
- return;
117
- const color = isColorEnabled(process.stderr);
118
- const text = block({ color });
119
- if (text)
120
- writeStderr(`${text}\n`);
121
- })),
122
- };
123
- };
@@ -1,16 +0,0 @@
1
- import type { OutputMode } from './options';
2
- export interface ViewCtx {
3
- readonly color: boolean;
4
- /** Reserved for per-view verbosity toggles (e.g. `whoami --verbose`). */
5
- readonly verbose: boolean;
6
- }
7
- export interface View<T> {
8
- /** Human-readable kind label used only in error messages. Not a lookup key. */
9
- readonly kind: string;
10
- /** Modes this view supports. `json` / `pretty-json` are always supported by the service. */
11
- readonly modes: ReadonlySet<OutputMode>;
12
- readonly readable: (data: T, ctx: ViewCtx) => string;
13
- /** Optional. Missing llm falls back to readable with color disabled. */
14
- readonly llm?: (data: T) => string;
15
- readonly xml?: (data: T) => string;
16
- }
@@ -1 +0,0 @@
1
- export {};
@@ -1,47 +0,0 @@
1
- import { Context, Effect, Layer } from 'effect';
2
- import { Generic, ResourceNotFound, ValidationFailed } from '../domain/errors';
3
- import { Api, type ApiService } from './Api';
4
- export type ResolverKind = 'category' | 'topic' | 'project';
5
- export interface ResolvableItem {
6
- readonly id: string;
7
- readonly slug?: string;
8
- readonly name?: string;
9
- }
10
- export interface ResolverService {
11
- /** Resolve a slug/name/id to an id. Snowflake ids pass through unchanged. */
12
- readonly resolveCategory: (value: string) => Effect.Effect<string, ValidationFailed | Generic>;
13
- readonly resolveTopic: (value: string) => Effect.Effect<string, ValidationFailed | Generic>;
14
- /** Resolve a list of refs (category slugs/ids) to ids. */
15
- readonly resolveCategoryRefs: (refs: ReadonlyArray<string>) => Effect.Effect<ReadonlyArray<string>, ValidationFailed | Generic>;
16
- /** Resolve a post slug/id to a snowflake id. */
17
- readonly resolvePostId: (slugOrId: string) => Effect.Effect<string, ResourceNotFound | ValidationFailed | Generic>;
18
- /** Build the read path (`/posts/<category>/<slug>` or `/posts/<id>`). */
19
- readonly resolvePostReadPath: (slugOrId: string) => Effect.Effect<string, ResourceNotFound | ValidationFailed | Generic>;
20
- /** Resolve a note slug or numeric nid to its snowflake id. */
21
- readonly resolveNoteId: (slugOrId: string) => Effect.Effect<string, ResourceNotFound | ValidationFailed | Generic>;
22
- /** Resolve a category slug to its snowflake id (via /categories/:slug). */
23
- readonly resolveCategoryId: (slugOrId: string) => Effect.Effect<string, ResourceNotFound | ValidationFailed | Generic>;
24
- /** Resolve a project name or snowflake id to its id (via /projects/all). */
25
- readonly resolveProjectId: (nameOrId: string) => Effect.Effect<string, ResourceNotFound | ValidationFailed | Generic>;
26
- /** Bust cache for a given kind, or all if omitted. */
27
- readonly invalidate: (kind?: ResolverKind) => Effect.Effect<void>;
28
- }
29
- export declare const isSnowflakeId: (value: string) => boolean;
30
- export declare function matchItem(items: ReadonlyArray<ResolvableItem>, value: string): ResolvableItem | null;
31
- export declare function levenshtein(a: string, b: string): number;
32
- export declare function fuzzySuggest(items: ReadonlyArray<ResolvableItem>, value: string, maxDistance?: number): string[];
33
- export interface ResolverDeps {
34
- readonly ttlMs?: number;
35
- }
36
- export declare const make: (api: ApiService, deps?: ResolverDeps) => ResolverService;
37
- declare const Resolver_base: Context.TagClass<Resolver, "Resolver", ResolverService>;
38
- export declare class Resolver extends Resolver_base {
39
- /**
40
- * Default layer composes `Resolver` from the ambient `Api` service. Tests can
41
- * provide an alternate layer via {@link layer}.
42
- */
43
- static Default: Layer.Layer<Resolver, never, Api>;
44
- }
45
- /** Build a Resolver layer from an explicit `ApiService` (tests). */
46
- export declare const layer: (api: ApiService, deps?: ResolverDeps) => Layer.Layer<Resolver>;
47
- export {};