@mx-space/cli 0.15.0 → 0.15.1
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.
- package/README.md +1 -1
- package/dist/{Lexical.dev-Cck4n26y.mjs → Lexical.dev-BSvx45_E.mjs} +127 -94
- package/dist/{Lexical.node-D6wf2D5M.mjs → Lexical.node-kAh5GM2n.mjs} +1 -1
- package/dist/{Lexical.prod-DCwS1oTq.mjs → Lexical.prod-Bqwgb3ez.mjs} +4 -2
- package/dist/{LexicalClipboard.dev-CMkPHV7O.mjs → LexicalClipboard.dev-BWU3KXIa.mjs} +18 -14
- package/dist/{LexicalClipboard.node-m4nZ7IYw.mjs → LexicalClipboard.node-BygAdNdF.mjs} +1 -1
- package/dist/{LexicalClipboard.prod-B_rN1vE1.mjs → LexicalClipboard.prod-BtMuKNyT.mjs} +10 -10
- package/dist/{LexicalCodeCore.dev-DyJw3i8V.mjs → LexicalCodeCore.dev-CD2xgvDs.mjs} +43 -25
- package/dist/{LexicalCodeCore.prod-DPXLHQLF.mjs → LexicalCodeCore.prod-Bl6FFMc7.mjs} +6 -6
- package/dist/{LexicalDragon.dev-ZkNfMwrE.mjs → LexicalDragon.dev-BwdYhm4K.mjs} +2 -2
- package/dist/{LexicalDragon.node-Ds9oLUFh.mjs → LexicalDragon.node-CpJhkCVV.mjs} +1 -1
- package/dist/{LexicalDragon.prod-B58ic2av.mjs → LexicalDragon.prod-CvXmWwo1.mjs} +2 -2
- package/dist/{LexicalExtension.dev-DvwHs1Xv.mjs → LexicalExtension.dev-LcRLXI5Z.mjs} +25 -13
- package/dist/{LexicalExtension.node-5OymZQfy.mjs → LexicalExtension.node-BwJt2LXV.mjs} +1 -1
- package/dist/{LexicalExtension.prod-Ce0T5smQ.mjs → LexicalExtension.prod-lg8_33-H.mjs} +16 -13
- package/dist/{LexicalHeadless.dev-DA0WldSR.mjs → LexicalHeadless.dev-BeUbKBes.mjs} +1 -1
- package/dist/{LexicalHeadless.prod-1kQgKB6c.mjs → LexicalHeadless.prod-4gbIA8HM.mjs} +1 -1
- package/dist/{LexicalHtml.dev-BDB7CUrx.mjs → LexicalHtml.dev-BLdZWTCJ.mjs} +20 -14
- package/dist/{LexicalHtml.node-DpVNt7It.mjs → LexicalHtml.node-BeuJMvvt.mjs} +1 -1
- package/dist/{LexicalHtml.prod-HkxM5scw.mjs → LexicalHtml.prod-CHUyCocN.mjs} +4 -4
- package/dist/{LexicalLink.dev-C5zNJlrm.mjs → LexicalLink.dev-DgsFRqw0.mjs} +28 -21
- package/dist/{LexicalLink.prod-Bkt9hQAt.mjs → LexicalLink.prod-CkXkeKY2.mjs} +6 -5
- package/dist/{LexicalList.dev-B7VgME-m.mjs → LexicalList.dev-OOms3kQi.mjs} +4 -4
- package/dist/{LexicalList.prod-B8c7TDjH.mjs → LexicalList.prod-DzMBeqHn.mjs} +4 -4
- package/dist/{LexicalMarkdown.dev-B5z9kLbV.mjs → LexicalMarkdown.dev-DJLKbZtD.mjs} +40 -29
- package/dist/{LexicalMarkdown.prod-wKzw7FFH.mjs → LexicalMarkdown.prod-Cp21kDCU.mjs} +10 -7
- package/dist/{LexicalRichText.dev-CUd6Li5F.mjs → LexicalRichText.dev-0rkAGjUf.mjs} +15 -11
- package/dist/{LexicalRichText.node-BKfaQ-CH.mjs → LexicalRichText.node-Cd-BySPE.mjs} +4 -4
- package/dist/{LexicalRichText.prod-SBewjJHx.mjs → LexicalRichText.prod-DTQiEr8C.mjs} +17 -11
- package/dist/{LexicalSelection.dev-D27JOCqj.mjs → LexicalSelection.dev-Bi0VlUEv.mjs} +28 -24
- package/dist/{LexicalSelection.node-DBEwPjBu.mjs → LexicalSelection.node-t2U46EF_.mjs} +1 -1
- package/dist/{LexicalSelection.prod-OaYhXHOL.mjs → LexicalSelection.prod-CrFG111g.mjs} +2 -2
- package/dist/{LexicalTable.dev-6IFFOAE0.mjs → LexicalTable.dev-D-sFhO-o.mjs} +33 -28
- package/dist/{LexicalTable.prod-2CaLZ7fH.mjs → LexicalTable.prod-DwYaa_dN.mjs} +10 -9
- package/dist/{LexicalUtils.dev-DJA7J_7v.mjs → LexicalUtils.dev-Q2q3-UDM.mjs} +8 -5
- package/dist/{LexicalUtils.node-Df9oPTlA.mjs → LexicalUtils.node-Dl7OvqJV.mjs} +1 -1
- package/dist/{LexicalUtils.prod-Bb7V4Ewg.mjs → LexicalUtils.prod-CBnq_iEV.mjs} +7 -6
- package/dist/bin/mxs.mjs +1 -1
- package/dist/esm-CNZ7kdTg.mjs +2 -0
- package/dist/{esm-DLzrv7gD.mjs → esm-ZXjJmLEC.mjs} +257 -260
- package/dist/index.mjs +1 -1
- package/dist/{mxs-BIRW5Axj.mjs → mxs-DC9zR3f2.mjs} +759 -539
- package/dist/{rolldown-runtime-JspESFgx.mjs → rolldown-runtime-B4iAMlE-.mjs} +1 -1
- package/dist/src/bin/mxs.d.ts +2 -0
- package/dist/src/bin/mxs.js +310 -0
- package/dist/src/cli/ai/_poll.d.ts +12 -0
- package/dist/src/cli/ai/_poll.js +38 -0
- package/dist/src/cli/ai/_resolve.d.ts +8 -0
- package/dist/src/cli/ai/_resolve.js +27 -0
- package/dist/src/cli/ai/index.d.ts +127 -0
- package/dist/src/cli/ai/index.js +46 -0
- package/dist/src/cli/ai/insights/by-article.d.ts +10 -0
- package/dist/src/cli/ai/insights/by-article.js +21 -0
- package/dist/src/cli/ai/insights/delete.d.ts +7 -0
- package/dist/src/cli/ai/insights/delete.js +18 -0
- package/dist/src/cli/ai/insights/edit.d.ts +8 -0
- package/dist/src/cli/ai/insights/edit.js +54 -0
- package/dist/src/cli/ai/insights/get.d.ts +6 -0
- package/dist/src/cli/ai/insights/get.js +11 -0
- package/dist/src/cli/ai/insights/index.d.ts +30 -0
- package/dist/src/cli/ai/insights/index.js +17 -0
- package/dist/src/cli/ai/insights/list.d.ts +10 -0
- package/dist/src/cli/ai/insights/list.js +20 -0
- package/dist/src/cli/ai/insights/refresh.d.ts +10 -0
- package/dist/src/cli/ai/insights/refresh.js +25 -0
- package/dist/src/cli/ai/insights/translate.d.ts +10 -0
- package/dist/src/cli/ai/insights/translate.js +25 -0
- package/dist/src/cli/ai/overview/by-article.d.ts +7 -0
- package/dist/src/cli/ai/overview/by-article.js +15 -0
- package/dist/src/cli/ai/overview/index.d.ts +11 -0
- package/dist/src/cli/ai/overview/index.js +4 -0
- package/dist/src/cli/ai/overview/list.d.ts +10 -0
- package/dist/src/cli/ai/overview/list.js +20 -0
- package/dist/src/cli/ai/summary/by-article.d.ts +10 -0
- package/dist/src/cli/ai/summary/by-article.js +21 -0
- package/dist/src/cli/ai/summary/delete.d.ts +7 -0
- package/dist/src/cli/ai/summary/delete.js +18 -0
- package/dist/src/cli/ai/summary/edit.d.ts +8 -0
- package/dist/src/cli/ai/summary/edit.js +54 -0
- package/dist/src/cli/ai/summary/get.d.ts +6 -0
- package/dist/src/cli/ai/summary/get.js +11 -0
- package/dist/src/cli/ai/summary/index.d.ts +30 -0
- package/dist/src/cli/ai/summary/index.js +9 -0
- package/dist/src/cli/ai/summary/list.d.ts +10 -0
- package/dist/src/cli/ai/summary/list.js +20 -0
- package/dist/src/cli/ai/summary/regen.d.ts +10 -0
- package/dist/src/cli/ai/summary/regen.js +25 -0
- package/dist/src/cli/ai/summary/translate.d.ts +10 -0
- package/dist/src/cli/ai/summary/translate.js +25 -0
- package/dist/src/cli/ai/translate/by-article.d.ts +9 -0
- package/dist/src/cli/ai/translate/by-article.js +19 -0
- package/dist/src/cli/ai/translate/delete.d.ts +7 -0
- package/dist/src/cli/ai/translate/delete.js +18 -0
- package/dist/src/cli/ai/translate/edit.d.ts +8 -0
- package/dist/src/cli/ai/translate/edit.js +97 -0
- package/dist/src/cli/ai/translate/entries/delete.d.ts +7 -0
- package/dist/src/cli/ai/translate/entries/delete.js +18 -0
- package/dist/src/cli/ai/translate/entries/edit.d.ts +8 -0
- package/dist/src/cli/ai/translate/entries/edit.js +73 -0
- package/dist/src/cli/ai/translate/entries/generate.d.ts +7 -0
- package/dist/src/cli/ai/translate/entries/generate.js +15 -0
- package/dist/src/cli/ai/translate/entries/index.d.ts +17 -0
- package/dist/src/cli/ai/translate/entries/index.js +6 -0
- package/dist/src/cli/ai/translate/entries/list.d.ts +10 -0
- package/dist/src/cli/ai/translate/entries/list.js +20 -0
- package/dist/src/cli/ai/translate/get.d.ts +6 -0
- package/dist/src/cli/ai/translate/get.js +11 -0
- package/dist/src/cli/ai/translate/index.d.ts +40 -0
- package/dist/src/cli/ai/translate/index.js +19 -0
- package/dist/src/cli/ai/translate/languages.d.ts +7 -0
- package/dist/src/cli/ai/translate/languages.js +15 -0
- package/dist/src/cli/ai/translate/list.d.ts +9 -0
- package/dist/src/cli/ai/translate/list.js +19 -0
- package/dist/src/cli/ai/translate/run.d.ts +10 -0
- package/dist/src/cli/ai/translate/run.js +31 -0
- package/dist/src/cli/ai/tts/by-article.d.ts +7 -0
- package/dist/src/cli/ai/tts/by-article.js +15 -0
- package/dist/src/cli/ai/tts/delete.d.ts +7 -0
- package/dist/src/cli/ai/tts/delete.js +18 -0
- package/dist/src/cli/ai/tts/index.d.ts +22 -0
- package/dist/src/cli/ai/tts/index.js +7 -0
- package/dist/src/cli/ai/tts/list.d.ts +10 -0
- package/dist/src/cli/ai/tts/list.js +20 -0
- package/dist/src/cli/ai/tts/run.d.ts +10 -0
- package/dist/src/cli/ai/tts/run.js +25 -0
- package/dist/src/cli/ai/tts/voices.d.ts +7 -0
- package/dist/src/cli/ai/tts/voices.js +12 -0
- package/dist/src/cli/ai/views.d.ts +3 -0
- package/dist/src/cli/ai/views.js +45 -0
- package/dist/src/cli/auth/index.d.ts +6 -0
- package/dist/src/cli/auth/index.js +22 -0
- package/dist/src/cli/auth/login.d.ts +11 -0
- package/dist/src/cli/auth/login.js +168 -0
- package/dist/src/cli/auth/logout.d.ts +6 -0
- package/dist/src/cli/auth/logout.js +21 -0
- package/dist/src/cli/auth/status.d.ts +4 -0
- package/dist/src/cli/auth/status.js +31 -0
- package/dist/src/cli/auth/view.d.ts +25 -0
- package/dist/src/cli/auth/view.js +46 -0
- package/dist/src/cli/auth/whoami.d.ts +7 -0
- package/dist/src/cli/auth/whoami.js +44 -0
- package/dist/src/cli/category/create.d.ts +10 -0
- package/dist/src/cli/category/create.js +24 -0
- package/dist/src/cli/category/delete.d.ts +8 -0
- package/dist/src/cli/category/delete.js +21 -0
- package/dist/src/cli/category/get.d.ts +6 -0
- package/dist/src/cli/category/get.js +11 -0
- package/dist/src/cli/category/index.d.ts +20 -0
- package/dist/src/cli/category/index.js +41 -0
- package/dist/src/cli/category/list.d.ts +4 -0
- package/dist/src/cli/category/list.js +10 -0
- package/dist/src/cli/category/update.d.ts +12 -0
- package/dist/src/cli/category/update.js +34 -0
- package/dist/src/cli/comment/_flags.d.ts +28 -0
- package/dist/src/cli/comment/_flags.js +48 -0
- package/dist/src/cli/comment/approve.d.ts +9 -0
- package/dist/src/cli/comment/approve.js +23 -0
- package/dist/src/cli/comment/delete.d.ts +9 -0
- package/dist/src/cli/comment/delete.js +24 -0
- package/dist/src/cli/comment/get.d.ts +6 -0
- package/dist/src/cli/comment/get.js +12 -0
- package/dist/src/cli/comment/index.d.ts +34 -0
- package/dist/src/cli/comment/index.js +53 -0
- package/dist/src/cli/comment/list.d.ts +9 -0
- package/dist/src/cli/comment/list.js +20 -0
- package/dist/src/cli/comment/reject.d.ts +9 -0
- package/dist/src/cli/comment/reject.js +23 -0
- package/dist/src/cli/comment/reply.d.ts +9 -0
- package/dist/src/cli/comment/reply.js +31 -0
- package/dist/src/cli/comment/unread.d.ts +7 -0
- package/dist/src/cli/comment/unread.js +21 -0
- package/dist/src/cli/comment/view.d.ts +3 -0
- package/dist/src/cli/comment/view.js +197 -0
- package/dist/src/cli/config/edit.d.ts +5 -0
- package/dist/src/cli/config/edit.js +36 -0
- package/dist/src/cli/config/get.d.ts +6 -0
- package/dist/src/cli/config/get.js +11 -0
- package/dist/src/cli/config/index.d.ts +10 -0
- package/dist/src/cli/config/index.js +22 -0
- package/dist/src/cli/config/list.d.ts +4 -0
- package/dist/src/cli/config/list.js +10 -0
- package/dist/src/cli/config/set.d.ts +9 -0
- package/dist/src/cli/config/set.js +48 -0
- package/dist/src/cli/draft/_shared.d.ts +27 -0
- package/dist/src/cli/draft/_shared.js +85 -0
- package/dist/src/cli/draft/create.d.ts +21 -0
- package/dist/src/cli/draft/create.js +34 -0
- package/dist/src/cli/draft/delete.d.ts +7 -0
- package/dist/src/cli/draft/delete.js +20 -0
- package/dist/src/cli/draft/get.d.ts +6 -0
- package/dist/src/cli/draft/get.js +11 -0
- package/dist/src/cli/draft/index.d.ts +54 -0
- package/dist/src/cli/draft/index.js +42 -0
- package/dist/src/cli/draft/list.d.ts +11 -0
- package/dist/src/cli/draft/list.js +23 -0
- package/dist/src/cli/draft/publish.d.ts +8 -0
- package/dist/src/cli/draft/publish.js +64 -0
- package/dist/src/cli/draft/update.d.ts +22 -0
- package/dist/src/cli/draft/update.js +29 -0
- package/dist/src/cli/file/_shared.d.ts +6 -0
- package/dist/src/cli/file/_shared.js +5 -0
- package/dist/src/cli/file/delete.d.ts +8 -0
- package/dist/src/cli/file/delete.js +21 -0
- package/dist/src/cli/file/index.d.ts +19 -0
- package/dist/src/cli/file/index.js +33 -0
- package/dist/src/cli/file/list.d.ts +6 -0
- package/dist/src/cli/file/list.js +11 -0
- package/dist/src/cli/file/rename.d.ts +8 -0
- package/dist/src/cli/file/rename.js +16 -0
- package/dist/src/cli/file/upload.d.ts +9 -0
- package/dist/src/cli/file/upload.js +32 -0
- package/dist/src/cli/help/index.d.ts +62 -0
- package/dist/src/cli/help/index.js +276 -0
- package/dist/src/cli/help/registry.d.ts +28 -0
- package/dist/src/cli/help/registry.js +29 -0
- package/dist/src/cli/note/_flags.d.ts +66 -0
- package/dist/src/cli/note/_flags.js +73 -0
- package/dist/src/cli/note/create.d.ts +23 -0
- package/dist/src/cli/note/create.js +25 -0
- package/dist/src/cli/note/delete.d.ts +8 -0
- package/dist/src/cli/note/delete.js +21 -0
- package/dist/src/cli/note/edit.d.ts +28 -0
- package/dist/src/cli/note/edit.js +114 -0
- package/dist/src/cli/note/get.d.ts +6 -0
- package/dist/src/cli/note/get.js +29 -0
- package/dist/src/cli/note/index.d.ts +77 -0
- package/dist/src/cli/note/index.js +63 -0
- package/dist/src/cli/note/list.d.ts +10 -0
- package/dist/src/cli/note/list.js +22 -0
- package/dist/src/cli/note/publish.d.ts +7 -0
- package/dist/src/cli/note/publish.js +17 -0
- package/dist/src/cli/note/unpublish.d.ts +7 -0
- package/dist/src/cli/note/unpublish.js +17 -0
- package/dist/src/cli/note/update.d.ts +25 -0
- package/dist/src/cli/note/update.js +36 -0
- package/dist/src/cli/note/view.d.ts +3 -0
- package/dist/src/cli/note/view.js +162 -0
- package/dist/src/cli/page/create.d.ts +41 -0
- package/dist/src/cli/page/create.js +56 -0
- package/dist/src/cli/page/delete.d.ts +7 -0
- package/dist/src/cli/page/delete.js +37 -0
- package/dist/src/cli/page/edit.d.ts +19 -0
- package/dist/src/cli/page/edit.js +117 -0
- package/dist/src/cli/page/get.d.ts +6 -0
- package/dist/src/cli/page/get.js +16 -0
- package/dist/src/cli/page/index.d.ts +44 -0
- package/dist/src/cli/page/index.js +38 -0
- package/dist/src/cli/page/list.d.ts +4 -0
- package/dist/src/cli/page/list.js +10 -0
- package/dist/src/cli/page/update.d.ts +16 -0
- package/dist/src/cli/page/update.js +48 -0
- package/dist/src/cli/page/view.d.ts +2 -0
- package/dist/src/cli/page/view.js +79 -0
- package/dist/src/cli/post/_flags.d.ts +66 -0
- package/dist/src/cli/post/_flags.js +96 -0
- package/dist/src/cli/post/apply.d.ts +7 -0
- package/dist/src/cli/post/apply.js +70 -0
- package/dist/src/cli/post/create.d.ts +21 -0
- package/dist/src/cli/post/create.js +24 -0
- package/dist/src/cli/post/delete.d.ts +8 -0
- package/dist/src/cli/post/delete.js +21 -0
- package/dist/src/cli/post/edit.d.ts +26 -0
- package/dist/src/cli/post/edit.js +115 -0
- package/dist/src/cli/post/get.d.ts +7 -0
- package/dist/src/cli/post/get.js +15 -0
- package/dist/src/cli/post/index.d.ts +91 -0
- package/dist/src/cli/post/index.js +73 -0
- package/dist/src/cli/post/list.d.ts +10 -0
- package/dist/src/cli/post/list.js +23 -0
- package/dist/src/cli/post/publish.d.ts +7 -0
- package/dist/src/cli/post/publish.js +17 -0
- package/dist/src/cli/post/stage.d.ts +23 -0
- package/dist/src/cli/post/stage.js +55 -0
- package/dist/src/cli/post/unpublish.d.ts +7 -0
- package/dist/src/cli/post/unpublish.js +17 -0
- package/dist/src/cli/post/update.d.ts +23 -0
- package/dist/src/cli/post/update.js +38 -0
- package/dist/src/cli/post/view.d.ts +3 -0
- package/dist/src/cli/post/view.js +150 -0
- package/dist/src/cli/preview/index.d.ts +13 -0
- package/dist/src/cli/preview/index.js +226 -0
- package/dist/src/cli/profile/index.d.ts +14 -0
- package/dist/src/cli/profile/index.js +36 -0
- package/dist/src/cli/profile/ls.d.ts +5 -0
- package/dist/src/cli/profile/ls.js +26 -0
- package/dist/src/cli/profile/mark.d.ts +9 -0
- package/dist/src/cli/profile/mark.js +23 -0
- package/dist/src/cli/profile/rm.d.ts +12 -0
- package/dist/src/cli/profile/rm.js +50 -0
- package/dist/src/cli/profile/show.d.ts +9 -0
- package/dist/src/cli/profile/show.js +40 -0
- package/dist/src/cli/profile/use.d.ts +6 -0
- package/dist/src/cli/profile/use.js +11 -0
- package/dist/src/cli/profile/view.d.ts +8 -0
- package/dist/src/cli/profile/view.js +21 -0
- package/dist/src/cli/project/_flags.d.ts +56 -0
- package/dist/src/cli/project/_flags.js +130 -0
- package/dist/src/cli/project/create.d.ts +17 -0
- package/dist/src/cli/project/create.js +25 -0
- package/dist/src/cli/project/delete.d.ts +8 -0
- package/dist/src/cli/project/delete.js +22 -0
- package/dist/src/cli/project/edit.d.ts +11 -0
- package/dist/src/cli/project/edit.js +61 -0
- package/dist/src/cli/project/get.d.ts +7 -0
- package/dist/src/cli/project/get.js +14 -0
- package/dist/src/cli/project/index.d.ts +43 -0
- package/dist/src/cli/project/index.js +52 -0
- package/dist/src/cli/project/list.d.ts +8 -0
- package/dist/src/cli/project/list.js +19 -0
- package/dist/src/cli/project/update.d.ts +18 -0
- package/dist/src/cli/project/update.js +24 -0
- package/dist/src/cli/project/view-cmd.d.ts +7 -0
- package/dist/src/cli/project/view-cmd.js +15 -0
- package/dist/src/cli/project/view.d.ts +3 -0
- package/dist/src/cli/project/view.js +102 -0
- package/dist/src/cli/render/codehighlight.d.ts +8 -0
- package/dist/src/cli/render/codehighlight.js +264 -0
- package/dist/src/cli/render/envelope.d.ts +7 -0
- package/dist/src/cli/render/envelope.js +23 -0
- package/dist/src/cli/render/frontmatter.d.ts +8 -0
- package/dist/src/cli/render/frontmatter.js +50 -0
- package/dist/src/cli/render/helpers.d.ts +2 -0
- package/dist/src/cli/render/helpers.js +11 -0
- package/dist/src/cli/render/index.d.ts +7 -0
- package/dist/src/cli/render/index.js +10 -0
- package/dist/src/cli/render/lexical/blocks.d.ts +19 -0
- package/dist/src/cli/render/lexical/blocks.js +208 -0
- package/dist/src/cli/render/lexical/code.d.ts +2 -0
- package/dist/src/cli/render/lexical/code.js +22 -0
- package/dist/src/cli/render/lexical/embeds.d.ts +6 -0
- package/dist/src/cli/render/lexical/embeds.js +51 -0
- package/dist/src/cli/render/lexical/index.d.ts +9 -0
- package/dist/src/cli/render/lexical/index.js +25 -0
- package/dist/src/cli/render/lexical/inlines.d.ts +17 -0
- package/dist/src/cli/render/lexical/inlines.js +76 -0
- package/dist/src/cli/render/lexical/parser.d.ts +10 -0
- package/dist/src/cli/render/lexical/parser.js +64 -0
- package/dist/src/cli/render/lexical/walker.d.ts +21 -0
- package/dist/src/cli/render/lexical/walker.js +51 -0
- package/dist/src/cli/render/markdown.d.ts +18 -0
- package/dist/src/cli/render/markdown.js +196 -0
- package/dist/src/cli/render/metadata-block.d.ts +14 -0
- package/dist/src/cli/render/metadata-block.js +50 -0
- package/dist/src/cli/skill/all.d.ts +4 -0
- package/dist/src/cli/skill/all.js +11 -0
- package/dist/src/cli/skill/get.d.ts +6 -0
- package/dist/src/cli/skill/get.js +12 -0
- package/dist/src/cli/skill/index.d.ts +10 -0
- package/dist/src/cli/skill/index.js +34 -0
- package/dist/src/cli/skill/list.d.ts +4 -0
- package/dist/src/cli/skill/list.js +11 -0
- package/dist/src/cli/skill/search.d.ts +6 -0
- package/dist/src/cli/skill/search.js +12 -0
- package/dist/src/cli/skill/views.d.ts +6 -0
- package/dist/src/cli/skill/views.js +90 -0
- package/dist/src/cli/snippet/_flags.d.ts +57 -0
- package/dist/src/cli/snippet/_flags.js +123 -0
- package/dist/src/cli/snippet/_resolve.d.ts +4 -0
- package/dist/src/cli/snippet/_resolve.js +32 -0
- package/dist/src/cli/snippet/_sync.d.ts +5 -0
- package/dist/src/cli/snippet/_sync.js +54 -0
- package/dist/src/cli/snippet/create.d.ts +19 -0
- package/dist/src/cli/snippet/create.js +35 -0
- package/dist/src/cli/snippet/delete.d.ts +8 -0
- package/dist/src/cli/snippet/delete.js +28 -0
- package/dist/src/cli/snippet/edit.d.ts +7 -0
- package/dist/src/cli/snippet/edit.js +29 -0
- package/dist/src/cli/snippet/get.d.ts +6 -0
- package/dist/src/cli/snippet/get.js +12 -0
- package/dist/src/cli/snippet/index.d.ts +43 -0
- package/dist/src/cli/snippet/index.js +58 -0
- package/dist/src/cli/snippet/list.d.ts +9 -0
- package/dist/src/cli/snippet/list.js +20 -0
- package/dist/src/cli/snippet/pull.d.ts +8 -0
- package/dist/src/cli/snippet/pull.js +33 -0
- package/dist/src/cli/snippet/push.d.ts +10 -0
- package/dist/src/cli/snippet/push.js +31 -0
- package/dist/src/cli/snippet/update.d.ts +8 -0
- package/dist/src/cli/snippet/update.js +16 -0
- package/dist/src/cli/topic/create.d.ts +10 -0
- package/dist/src/cli/topic/create.js +24 -0
- package/dist/src/cli/topic/delete.d.ts +7 -0
- package/dist/src/cli/topic/delete.js +37 -0
- package/dist/src/cli/topic/get.d.ts +6 -0
- package/dist/src/cli/topic/get.js +15 -0
- package/dist/src/cli/topic/index.d.ts +20 -0
- package/dist/src/cli/topic/index.js +32 -0
- package/dist/src/cli/topic/list.d.ts +4 -0
- package/dist/src/cli/topic/list.js +10 -0
- package/dist/src/cli/topic/update.d.ts +11 -0
- package/dist/src/cli/topic/update.js +51 -0
- package/dist/src/cli/ui/index.d.ts +24 -0
- package/dist/src/cli/ui/index.js +83 -0
- package/dist/src/cli/update/index.d.ts +10 -0
- package/dist/src/cli/update/index.js +142 -0
- package/dist/src/domain/admin-link.d.ts +12 -0
- package/dist/src/domain/admin-link.js +45 -0
- package/dist/src/domain/content-spec.d.ts +20 -0
- package/dist/src/domain/content-spec.js +78 -0
- package/dist/src/domain/envelope-compat.d.ts +68 -0
- package/dist/src/domain/envelope-compat.js +121 -0
- package/dist/src/domain/envelope.d.ts +34 -0
- package/dist/src/domain/envelope.js +355 -0
- package/dist/src/domain/errors.d.ts +336 -0
- package/dist/src/domain/errors.js +239 -0
- package/dist/src/domain/gate.d.ts +14 -0
- package/dist/src/domain/gate.js +18 -0
- package/dist/src/domain/payload.d.ts +64 -0
- package/dist/src/domain/payload.js +237 -0
- package/dist/src/domain/preflight-guards.d.ts +54 -0
- package/dist/src/domain/preflight-guards.js +130 -0
- package/dist/src/domain/runtime-flags.d.ts +33 -0
- package/dist/src/domain/runtime-flags.js +166 -0
- package/dist/src/domain/schema/api-envelope.d.ts +67 -0
- package/dist/src/domain/schema/api-envelope.js +65 -0
- package/dist/src/domain/schema/category.d.ts +23 -0
- package/dist/src/domain/schema/category.js +19 -0
- package/dist/src/domain/schema/config.d.ts +13 -0
- package/dist/src/domain/schema/config.js +18 -0
- package/dist/src/domain/schema/note.d.ts +76 -0
- package/dist/src/domain/schema/note.js +35 -0
- package/dist/src/domain/schema/page.d.ts +40 -0
- package/dist/src/domain/schema/page.js +22 -0
- package/dist/src/domain/schema/post.d.ts +68 -0
- package/dist/src/domain/schema/post.js +35 -0
- package/dist/src/domain/schema/profile.d.ts +14 -0
- package/dist/src/domain/schema/profile.js +22 -0
- package/dist/src/domain/schema/topic.d.ts +24 -0
- package/dist/src/domain/schema/topic.js +16 -0
- package/dist/src/domain/version.d.ts +15 -0
- package/dist/src/domain/version.js +43 -0
- package/dist/src/index.d.ts +4 -0
- package/dist/src/index.js +8 -0
- package/dist/src/layers/App.d.ts +30 -0
- package/dist/src/layers/App.js +39 -0
- package/dist/src/services/Ai/index.d.ts +13 -0
- package/dist/src/services/Ai/index.js +127 -0
- package/dist/src/services/Ai/overview.d.ts +7 -0
- package/dist/src/services/Ai/overview.js +11 -0
- package/dist/src/services/Ai/resources.d.ts +7 -0
- package/dist/src/services/Ai/resources.js +59 -0
- package/dist/src/services/Ai/shared.d.ts +2 -0
- package/dist/src/services/Ai/shared.js +11 -0
- package/dist/src/services/Ai/tasks.d.ts +8 -0
- package/dist/src/services/Ai/tasks.js +144 -0
- package/dist/src/services/Ai/types.d.ts +130 -0
- package/dist/src/services/Ai/types.js +1 -0
- package/dist/src/services/Api.d.ts +67 -0
- package/dist/src/services/Api.js +348 -0
- package/dist/src/services/Auth.d.ts +101 -0
- package/dist/src/services/Auth.js +402 -0
- package/dist/src/services/Backup.d.ts +8 -0
- package/dist/src/services/Backup.js +4 -0
- package/dist/src/services/Cache.d.ts +8 -0
- package/dist/src/services/Cache.js +4 -0
- package/dist/src/services/Comment.d.ts +48 -0
- package/dist/src/services/Comment.js +102 -0
- package/dist/src/services/Config.d.ts +95 -0
- package/dist/src/services/Config.js +359 -0
- package/dist/src/services/Editor.d.ts +28 -0
- package/dist/src/services/Editor.js +95 -0
- package/dist/src/services/Lexical.d.ts +27 -0
- package/dist/src/services/Lexical.js +56 -0
- package/dist/src/services/Migration.d.ts +31 -0
- package/dist/src/services/Migration.js +177 -0
- package/dist/src/services/Profile.d.ts +29 -0
- package/dist/src/services/Profile.js +115 -0
- package/dist/src/services/Renderer/content.d.ts +16 -0
- package/dist/src/services/Renderer/content.js +110 -0
- package/dist/src/services/Renderer/datetime.d.ts +38 -0
- package/dist/src/services/Renderer/datetime.js +147 -0
- package/dist/src/services/Renderer/errors.d.ts +3 -0
- package/dist/src/services/Renderer/errors.js +59 -0
- package/dist/src/services/Renderer/index.d.ts +13 -0
- package/dist/src/services/Renderer/index.js +11 -0
- package/dist/src/services/Renderer/lists.d.ts +1 -0
- package/dist/src/services/Renderer/lists.js +101 -0
- package/dist/src/services/Renderer/options.d.ts +10 -0
- package/dist/src/services/Renderer/options.js +13 -0
- package/dist/src/services/Renderer/primitives.d.ts +4 -0
- package/dist/src/services/Renderer/primitives.js +12 -0
- package/dist/src/services/Renderer/service.d.ts +35 -0
- package/dist/src/services/Renderer/service.js +123 -0
- package/dist/src/services/Renderer/view.d.ts +16 -0
- package/dist/src/services/Renderer/view.js +1 -0
- package/dist/src/services/Resolver.d.ts +47 -0
- package/dist/src/services/Resolver.js +269 -0
- package/dist/src/services/Skill.d.ts +29 -0
- package/dist/src/services/Skill.js +421 -0
- package/dist/src/services/UpdateNotifier.d.ts +162 -0
- package/dist/src/services/UpdateNotifier.js +572 -0
- package/dist/test/cli/ai/ai.test.d.ts +1 -0
- package/dist/test/cli/ai/ai.test.js +507 -0
- package/dist/test/cli/ai/verbs.test.d.ts +1 -0
- package/dist/test/cli/ai/verbs.test.js +235 -0
- package/dist/test/cli/auth/login.test.d.ts +1 -0
- package/dist/test/cli/auth/login.test.js +236 -0
- package/dist/test/cli/auth/logout-whoami.test.d.ts +1 -0
- package/dist/test/cli/auth/logout-whoami.test.js +124 -0
- package/dist/test/cli/auth/status.test.d.ts +1 -0
- package/dist/test/cli/auth/status.test.js +90 -0
- package/dist/test/cli/category/category.test.d.ts +1 -0
- package/dist/test/cli/category/category.test.js +175 -0
- package/dist/test/cli/comment/comment.test.d.ts +1 -0
- package/dist/test/cli/comment/comment.test.js +445 -0
- package/dist/test/cli/config/config.test.d.ts +1 -0
- package/dist/test/cli/config/config.test.js +281 -0
- package/dist/test/cli/edit-roundtrip.test.d.ts +1 -0
- package/dist/test/cli/edit-roundtrip.test.js +259 -0
- package/dist/test/cli/file/file.test.d.ts +1 -0
- package/dist/test/cli/file/file.test.js +185 -0
- package/dist/test/cli/help.test.d.ts +1 -0
- package/dist/test/cli/help.test.js +289 -0
- package/dist/test/cli/note/create.test.d.ts +1 -0
- package/dist/test/cli/note/create.test.js +155 -0
- package/dist/test/cli/note/list.test.d.ts +1 -0
- package/dist/test/cli/note/list.test.js +115 -0
- package/dist/test/cli/note/publish.test.d.ts +1 -0
- package/dist/test/cli/note/publish.test.js +123 -0
- package/dist/test/cli/page/page.test.d.ts +1 -0
- package/dist/test/cli/page/page.test.js +185 -0
- package/dist/test/cli/post/create.test.d.ts +1 -0
- package/dist/test/cli/post/create.test.js +172 -0
- package/dist/test/cli/post/list.test.d.ts +1 -0
- package/dist/test/cli/post/list.test.js +133 -0
- package/dist/test/cli/post/publish.test.d.ts +1 -0
- package/dist/test/cli/post/publish.test.js +139 -0
- package/dist/test/cli/post/stage-apply.test.d.ts +1 -0
- package/dist/test/cli/post/stage-apply.test.js +215 -0
- package/dist/test/cli/post/update.test.d.ts +1 -0
- package/dist/test/cli/post/update.test.js +160 -0
- package/dist/test/cli/post-note-crud.test.d.ts +1 -0
- package/dist/test/cli/post-note-crud.test.js +362 -0
- package/dist/test/cli/profile/ls.test.d.ts +1 -0
- package/dist/test/cli/profile/ls.test.js +93 -0
- package/dist/test/cli/profile/mark-use.test.d.ts +1 -0
- package/dist/test/cli/profile/mark-use.test.js +216 -0
- package/dist/test/cli/project-crud.test.d.ts +1 -0
- package/dist/test/cli/project-crud.test.js +315 -0
- package/dist/test/cli/render/lexical.test.d.ts +1 -0
- package/dist/test/cli/render/lexical.test.js +216 -0
- package/dist/test/cli/render/markdown.test.d.ts +1 -0
- package/dist/test/cli/render/markdown.test.js +39 -0
- package/dist/test/cli/snippet-crud.test.d.ts +1 -0
- package/dist/test/cli/snippet-crud.test.js +293 -0
- package/dist/test/cli/topic/topic.test.d.ts +1 -0
- package/dist/test/cli/topic/topic.test.js +181 -0
- package/dist/test/cli/update.test.d.ts +1 -0
- package/dist/test/cli/update.test.js +395 -0
- package/dist/test/domain/content-spec.test.d.ts +1 -0
- package/dist/test/domain/content-spec.test.js +126 -0
- package/dist/test/domain/envelope-compat.test.d.ts +1 -0
- package/dist/test/domain/envelope-compat.test.js +126 -0
- package/dist/test/domain/envelope.test.d.ts +1 -0
- package/dist/test/domain/envelope.test.js +149 -0
- package/dist/test/domain/errors.test.d.ts +1 -0
- package/dist/test/domain/errors.test.js +127 -0
- package/dist/test/domain/gate.test.d.ts +1 -0
- package/dist/test/domain/gate.test.js +128 -0
- package/dist/test/domain/payload.test.d.ts +1 -0
- package/dist/test/domain/payload.test.js +259 -0
- package/dist/test/helper/test-fs.d.ts +24 -0
- package/dist/test/helper/test-fs.js +161 -0
- package/dist/test/helper/test-http.d.ts +31 -0
- package/dist/test/helper/test-http.js +66 -0
- package/dist/test/integration/_helpers.d.ts +5 -0
- package/dist/test/integration/_helpers.js +24 -0
- package/dist/test/integration/cli-error-envelope.test.d.ts +1 -0
- package/dist/test/integration/cli-error-envelope.test.js +137 -0
- package/dist/test/integration/cli-help-render.test.d.ts +1 -0
- package/dist/test/integration/cli-help-render.test.js +149 -0
- package/dist/test/integration/cli-help.test.d.ts +1 -0
- package/dist/test/integration/cli-help.test.js +67 -0
- package/dist/test/integration/cli-post-list.test.d.ts +1 -0
- package/dist/test/integration/cli-post-list.test.js +140 -0
- package/dist/test/integration/cli-skill.test.d.ts +1 -0
- package/dist/test/integration/cli-skill.test.js +74 -0
- package/dist/test/integration/cli-version.test.d.ts +1 -0
- package/dist/test/integration/cli-version.test.js +37 -0
- package/dist/test/services/Api.test.d.ts +1 -0
- package/dist/test/services/Api.test.js +553 -0
- package/dist/test/services/Auth.test.d.ts +1 -0
- package/dist/test/services/Auth.test.js +650 -0
- package/dist/test/services/Config.test.d.ts +1 -0
- package/dist/test/services/Config.test.js +510 -0
- package/dist/test/services/Datetime.test.d.ts +1 -0
- package/dist/test/services/Datetime.test.js +113 -0
- package/dist/test/services/Editor.test.d.ts +1 -0
- package/dist/test/services/Editor.test.js +205 -0
- package/dist/test/services/Lexical.errors.test.d.ts +1 -0
- package/dist/test/services/Lexical.errors.test.js +60 -0
- package/dist/test/services/Lexical.test.d.ts +1 -0
- package/dist/test/services/Lexical.test.js +68 -0
- package/dist/test/services/Migration.test.d.ts +1 -0
- package/dist/test/services/Migration.test.js +376 -0
- package/dist/test/services/Profile.test.d.ts +1 -0
- package/dist/test/services/Profile.test.js +277 -0
- package/dist/test/services/Renderer.test.d.ts +1 -0
- package/dist/test/services/Renderer.test.js +538 -0
- package/dist/test/services/Resolver.test.d.ts +1 -0
- package/dist/test/services/Resolver.test.js +320 -0
- package/dist/test/services/Skill.test.d.ts +1 -0
- package/dist/test/services/Skill.test.js +261 -0
- package/dist/test/services/UpdateNotifier.spawn.test.d.ts +1 -0
- package/dist/test/services/UpdateNotifier.spawn.test.js +73 -0
- package/dist/test/services/UpdateNotifier.test.d.ts +1 -0
- package/dist/test/services/UpdateNotifier.test.js +912 -0
- package/dist/vendor/litexml/cli.mjs +19 -4
- package/dist/vendor/litexml/litexml-html-preview-client.css +98 -13
- package/dist/vendor/litexml/litexml-html-preview-client.js +5794 -4976
- package/dist/vendor/litexml/style.css +5 -5
- package/package.json +29 -26
- package/skills/safety.md +1 -1
- package/LICENSE +0 -33
- package/dist/esm-CDcJmHkG.mjs +0 -2
|
@@ -0,0 +1,336 @@
|
|
|
1
|
+
declare const AuthMissing_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
2
|
+
readonly _tag: "AuthMissing";
|
|
3
|
+
} & Readonly<A>;
|
|
4
|
+
export declare class AuthMissing extends AuthMissing_base<{
|
|
5
|
+
readonly message?: string;
|
|
6
|
+
readonly details?: unknown;
|
|
7
|
+
readonly hint?: string;
|
|
8
|
+
}> {
|
|
9
|
+
}
|
|
10
|
+
declare const AuthExpired_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
11
|
+
readonly _tag: "AuthExpired";
|
|
12
|
+
} & Readonly<A>;
|
|
13
|
+
export declare class AuthExpired extends AuthExpired_base<{
|
|
14
|
+
readonly message?: string;
|
|
15
|
+
readonly details?: unknown;
|
|
16
|
+
readonly hint?: string;
|
|
17
|
+
}> {
|
|
18
|
+
}
|
|
19
|
+
declare const AuthDenied_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
20
|
+
readonly _tag: "AuthDenied";
|
|
21
|
+
} & Readonly<A>;
|
|
22
|
+
export declare class AuthDenied extends AuthDenied_base<{
|
|
23
|
+
readonly message?: string;
|
|
24
|
+
readonly details?: unknown;
|
|
25
|
+
readonly hint?: string;
|
|
26
|
+
}> {
|
|
27
|
+
}
|
|
28
|
+
declare const AuthProbe_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
29
|
+
readonly _tag: "AuthProbe";
|
|
30
|
+
} & Readonly<A>;
|
|
31
|
+
export declare class AuthProbe extends AuthProbe_base<{
|
|
32
|
+
readonly message?: string;
|
|
33
|
+
readonly details?: unknown;
|
|
34
|
+
readonly hint?: string;
|
|
35
|
+
readonly cause?: unknown;
|
|
36
|
+
}> {
|
|
37
|
+
}
|
|
38
|
+
declare const NetworkTimeout_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
39
|
+
readonly _tag: "NetworkTimeout";
|
|
40
|
+
} & Readonly<A>;
|
|
41
|
+
export declare class NetworkTimeout extends NetworkTimeout_base<{
|
|
42
|
+
readonly message?: string;
|
|
43
|
+
readonly url?: string;
|
|
44
|
+
readonly details?: unknown;
|
|
45
|
+
readonly hint?: string;
|
|
46
|
+
}> {
|
|
47
|
+
}
|
|
48
|
+
declare const NetworkDns_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
49
|
+
readonly _tag: "NetworkDns";
|
|
50
|
+
} & Readonly<A>;
|
|
51
|
+
export declare class NetworkDns extends NetworkDns_base<{
|
|
52
|
+
readonly message?: string;
|
|
53
|
+
readonly host?: string;
|
|
54
|
+
readonly details?: unknown;
|
|
55
|
+
readonly hint?: string;
|
|
56
|
+
}> {
|
|
57
|
+
}
|
|
58
|
+
declare const NetworkRefused_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
59
|
+
readonly _tag: "NetworkRefused";
|
|
60
|
+
} & Readonly<A>;
|
|
61
|
+
export declare class NetworkRefused extends NetworkRefused_base<{
|
|
62
|
+
readonly message?: string;
|
|
63
|
+
readonly url?: string;
|
|
64
|
+
readonly details?: unknown;
|
|
65
|
+
readonly hint?: string;
|
|
66
|
+
}> {
|
|
67
|
+
}
|
|
68
|
+
declare const ValidationFailed_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
69
|
+
readonly _tag: "ValidationFailed";
|
|
70
|
+
} & Readonly<A>;
|
|
71
|
+
export declare class ValidationFailed extends ValidationFailed_base<{
|
|
72
|
+
readonly message?: string;
|
|
73
|
+
readonly details?: unknown;
|
|
74
|
+
readonly hint?: string;
|
|
75
|
+
}> {
|
|
76
|
+
}
|
|
77
|
+
declare const ValidationXml_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
78
|
+
readonly _tag: "ValidationXml";
|
|
79
|
+
} & Readonly<A>;
|
|
80
|
+
export declare class ValidationXml extends ValidationXml_base<{
|
|
81
|
+
readonly message?: string;
|
|
82
|
+
readonly line?: number;
|
|
83
|
+
readonly details?: unknown;
|
|
84
|
+
readonly hint?: string;
|
|
85
|
+
readonly cause?: unknown;
|
|
86
|
+
}> {
|
|
87
|
+
}
|
|
88
|
+
declare const ValidationJson_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
89
|
+
readonly _tag: "ValidationJson";
|
|
90
|
+
} & Readonly<A>;
|
|
91
|
+
export declare class ValidationJson extends ValidationJson_base<{
|
|
92
|
+
readonly message?: string;
|
|
93
|
+
readonly details?: unknown;
|
|
94
|
+
readonly hint?: string;
|
|
95
|
+
readonly cause?: unknown;
|
|
96
|
+
}> {
|
|
97
|
+
}
|
|
98
|
+
declare const ServerError_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
99
|
+
readonly _tag: "ServerError";
|
|
100
|
+
} & Readonly<A>;
|
|
101
|
+
export declare class ServerError extends ServerError_base<{
|
|
102
|
+
readonly message?: string;
|
|
103
|
+
readonly status?: number;
|
|
104
|
+
readonly details?: unknown;
|
|
105
|
+
readonly hint?: string;
|
|
106
|
+
}> {
|
|
107
|
+
}
|
|
108
|
+
declare const ResourceNotFound_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
109
|
+
readonly _tag: "ResourceNotFound";
|
|
110
|
+
} & Readonly<A>;
|
|
111
|
+
export declare class ResourceNotFound extends ResourceNotFound_base<{
|
|
112
|
+
readonly message?: string;
|
|
113
|
+
readonly kind?: string;
|
|
114
|
+
readonly ref?: string;
|
|
115
|
+
readonly details?: unknown;
|
|
116
|
+
readonly hint?: string;
|
|
117
|
+
}> {
|
|
118
|
+
}
|
|
119
|
+
declare const ConfigMissingApiUrl_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
120
|
+
readonly _tag: "ConfigMissingApiUrl";
|
|
121
|
+
} & Readonly<A>;
|
|
122
|
+
export declare class ConfigMissingApiUrl extends ConfigMissingApiUrl_base<{
|
|
123
|
+
readonly message?: string;
|
|
124
|
+
readonly details?: unknown;
|
|
125
|
+
readonly hint?: string;
|
|
126
|
+
}> {
|
|
127
|
+
}
|
|
128
|
+
declare const ConfigMissingToken_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
129
|
+
readonly _tag: "ConfigMissingToken";
|
|
130
|
+
} & Readonly<A>;
|
|
131
|
+
export declare class ConfigMissingToken extends ConfigMissingToken_base<{
|
|
132
|
+
readonly message?: string;
|
|
133
|
+
readonly details?: unknown;
|
|
134
|
+
readonly hint?: string;
|
|
135
|
+
}> {
|
|
136
|
+
}
|
|
137
|
+
declare const ConfigMigrationFailed_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
138
|
+
readonly _tag: "ConfigMigrationFailed";
|
|
139
|
+
} & Readonly<A>;
|
|
140
|
+
export declare class ConfigMigrationFailed extends ConfigMigrationFailed_base<{
|
|
141
|
+
readonly message?: string;
|
|
142
|
+
readonly details?: unknown;
|
|
143
|
+
readonly hint?: string;
|
|
144
|
+
readonly cause?: unknown;
|
|
145
|
+
}> {
|
|
146
|
+
}
|
|
147
|
+
declare const ProfileNotFound_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
148
|
+
readonly _tag: "ProfileNotFound";
|
|
149
|
+
} & Readonly<A>;
|
|
150
|
+
export declare class ProfileNotFound extends ProfileNotFound_base<{
|
|
151
|
+
readonly message?: string;
|
|
152
|
+
readonly name?: string;
|
|
153
|
+
readonly details?: unknown;
|
|
154
|
+
readonly hint?: string;
|
|
155
|
+
}> {
|
|
156
|
+
}
|
|
157
|
+
declare const ProfileNoneActive_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
158
|
+
readonly _tag: "ProfileNoneActive";
|
|
159
|
+
} & Readonly<A>;
|
|
160
|
+
export declare class ProfileNoneActive extends ProfileNoneActive_base<{
|
|
161
|
+
readonly message?: string;
|
|
162
|
+
readonly details?: unknown;
|
|
163
|
+
readonly hint?: string;
|
|
164
|
+
}> {
|
|
165
|
+
}
|
|
166
|
+
declare const ProfileInvalidName_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
167
|
+
readonly _tag: "ProfileInvalidName";
|
|
168
|
+
} & Readonly<A>;
|
|
169
|
+
export declare class ProfileInvalidName extends ProfileInvalidName_base<{
|
|
170
|
+
readonly message?: string;
|
|
171
|
+
readonly name?: string;
|
|
172
|
+
readonly details?: unknown;
|
|
173
|
+
readonly hint?: string;
|
|
174
|
+
}> {
|
|
175
|
+
}
|
|
176
|
+
declare const WriteRequiresExplicit_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
177
|
+
readonly _tag: "WriteRequiresExplicit";
|
|
178
|
+
} & Readonly<A>;
|
|
179
|
+
export declare class WriteRequiresExplicit extends WriteRequiresExplicit_base<{
|
|
180
|
+
readonly message?: string;
|
|
181
|
+
readonly profile?: string;
|
|
182
|
+
readonly apiUrl?: string;
|
|
183
|
+
readonly details?: unknown;
|
|
184
|
+
readonly hint?: string;
|
|
185
|
+
}> {
|
|
186
|
+
}
|
|
187
|
+
declare const UpdateDevEnvironment_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
188
|
+
readonly _tag: "UpdateDevEnvironment";
|
|
189
|
+
} & Readonly<A>;
|
|
190
|
+
export declare class UpdateDevEnvironment extends UpdateDevEnvironment_base<{
|
|
191
|
+
readonly message?: string;
|
|
192
|
+
readonly details?: unknown;
|
|
193
|
+
readonly hint?: string;
|
|
194
|
+
}> {
|
|
195
|
+
}
|
|
196
|
+
declare const UpdateTransientInstall_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
197
|
+
readonly _tag: "UpdateTransientInstall";
|
|
198
|
+
} & Readonly<A>;
|
|
199
|
+
export declare class UpdateTransientInstall extends UpdateTransientInstall_base<{
|
|
200
|
+
readonly message?: string;
|
|
201
|
+
readonly details?: unknown;
|
|
202
|
+
readonly hint?: string;
|
|
203
|
+
}> {
|
|
204
|
+
}
|
|
205
|
+
declare const UpdatePmUnknown_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
206
|
+
readonly _tag: "UpdatePmUnknown";
|
|
207
|
+
} & Readonly<A>;
|
|
208
|
+
export declare class UpdatePmUnknown extends UpdatePmUnknown_base<{
|
|
209
|
+
readonly message?: string;
|
|
210
|
+
readonly details?: unknown;
|
|
211
|
+
readonly hint?: string;
|
|
212
|
+
}> {
|
|
213
|
+
}
|
|
214
|
+
declare const UpdateRegistryUnreachable_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
215
|
+
readonly _tag: "UpdateRegistryUnreachable";
|
|
216
|
+
} & Readonly<A>;
|
|
217
|
+
export declare class UpdateRegistryUnreachable extends UpdateRegistryUnreachable_base<{
|
|
218
|
+
readonly message?: string;
|
|
219
|
+
readonly details?: unknown;
|
|
220
|
+
readonly hint?: string;
|
|
221
|
+
}> {
|
|
222
|
+
}
|
|
223
|
+
declare const UpdateNodeIncompatible_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
224
|
+
readonly _tag: "UpdateNodeIncompatible";
|
|
225
|
+
} & Readonly<A>;
|
|
226
|
+
export declare class UpdateNodeIncompatible extends UpdateNodeIncompatible_base<{
|
|
227
|
+
readonly message?: string;
|
|
228
|
+
readonly details?: unknown;
|
|
229
|
+
readonly hint?: string;
|
|
230
|
+
}> {
|
|
231
|
+
}
|
|
232
|
+
declare const UpdateSpawnFailed_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
233
|
+
readonly _tag: "UpdateSpawnFailed";
|
|
234
|
+
} & Readonly<A>;
|
|
235
|
+
export declare class UpdateSpawnFailed extends UpdateSpawnFailed_base<{
|
|
236
|
+
readonly message?: string;
|
|
237
|
+
readonly details?: unknown;
|
|
238
|
+
readonly hint?: string;
|
|
239
|
+
}> {
|
|
240
|
+
}
|
|
241
|
+
declare const UpdatePermissionDenied_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
242
|
+
readonly _tag: "UpdatePermissionDenied";
|
|
243
|
+
} & Readonly<A>;
|
|
244
|
+
export declare class UpdatePermissionDenied extends UpdatePermissionDenied_base<{
|
|
245
|
+
readonly message?: string;
|
|
246
|
+
readonly details?: unknown;
|
|
247
|
+
readonly hint?: string;
|
|
248
|
+
}> {
|
|
249
|
+
}
|
|
250
|
+
declare const ArgvParse_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
251
|
+
readonly _tag: "ArgvParse";
|
|
252
|
+
} & Readonly<A>;
|
|
253
|
+
export declare class ArgvParse extends ArgvParse_base<{
|
|
254
|
+
readonly message?: string;
|
|
255
|
+
readonly details?: unknown;
|
|
256
|
+
readonly hint?: string;
|
|
257
|
+
}> {
|
|
258
|
+
}
|
|
259
|
+
declare const ChapterNotFound_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
260
|
+
readonly _tag: "ChapterNotFound";
|
|
261
|
+
} & Readonly<A>;
|
|
262
|
+
export declare class ChapterNotFound extends ChapterNotFound_base<{
|
|
263
|
+
readonly message?: string;
|
|
264
|
+
readonly slug?: string;
|
|
265
|
+
readonly details?: unknown;
|
|
266
|
+
readonly hint?: string;
|
|
267
|
+
}> {
|
|
268
|
+
}
|
|
269
|
+
declare const SkillCorpusEmpty_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
270
|
+
readonly _tag: "SkillCorpusEmpty";
|
|
271
|
+
} & Readonly<A>;
|
|
272
|
+
export declare class SkillCorpusEmpty extends SkillCorpusEmpty_base<{
|
|
273
|
+
readonly message?: string;
|
|
274
|
+
readonly details?: unknown;
|
|
275
|
+
readonly hint?: string;
|
|
276
|
+
readonly cause?: unknown;
|
|
277
|
+
}> {
|
|
278
|
+
}
|
|
279
|
+
declare const AiTaskCreateFailed_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
280
|
+
readonly _tag: "AiTaskCreateFailed";
|
|
281
|
+
} & Readonly<A>;
|
|
282
|
+
export declare class AiTaskCreateFailed extends AiTaskCreateFailed_base<{
|
|
283
|
+
readonly message?: string;
|
|
284
|
+
readonly details?: unknown;
|
|
285
|
+
readonly hint?: string;
|
|
286
|
+
readonly cause?: unknown;
|
|
287
|
+
}> {
|
|
288
|
+
}
|
|
289
|
+
declare const AiTaskFailed_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
290
|
+
readonly _tag: "AiTaskFailed";
|
|
291
|
+
} & Readonly<A>;
|
|
292
|
+
export declare class AiTaskFailed extends AiTaskFailed_base<{
|
|
293
|
+
readonly message?: string;
|
|
294
|
+
readonly taskId?: string;
|
|
295
|
+
readonly status?: string;
|
|
296
|
+
readonly details?: unknown;
|
|
297
|
+
readonly hint?: string;
|
|
298
|
+
}> {
|
|
299
|
+
}
|
|
300
|
+
declare const AiRecordNotFound_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
301
|
+
readonly _tag: "AiRecordNotFound";
|
|
302
|
+
} & Readonly<A>;
|
|
303
|
+
export declare class AiRecordNotFound extends AiRecordNotFound_base<{
|
|
304
|
+
readonly message?: string;
|
|
305
|
+
readonly kind?: string;
|
|
306
|
+
readonly ref?: string;
|
|
307
|
+
readonly details?: unknown;
|
|
308
|
+
readonly hint?: string;
|
|
309
|
+
}> {
|
|
310
|
+
}
|
|
311
|
+
declare const Generic_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
312
|
+
readonly _tag: "Generic";
|
|
313
|
+
} & Readonly<A>;
|
|
314
|
+
export declare class Generic extends Generic_base<{
|
|
315
|
+
readonly message?: string;
|
|
316
|
+
readonly details?: unknown;
|
|
317
|
+
readonly hint?: string;
|
|
318
|
+
readonly cause?: unknown;
|
|
319
|
+
}> {
|
|
320
|
+
}
|
|
321
|
+
export type CliError = AuthMissing | AuthExpired | AuthDenied | AuthProbe | NetworkTimeout | NetworkDns | NetworkRefused | ValidationFailed | ValidationXml | ValidationJson | ServerError | ResourceNotFound | ConfigMissingApiUrl | ConfigMissingToken | ConfigMigrationFailed | ProfileNotFound | ProfileNoneActive | ProfileInvalidName | WriteRequiresExplicit | UpdateDevEnvironment | UpdateTransientInstall | UpdatePmUnknown | UpdateRegistryUnreachable | UpdateNodeIncompatible | UpdateSpawnFailed | UpdatePermissionDenied | ArgvParse | ChapterNotFound | SkillCorpusEmpty | AiTaskCreateFailed | AiTaskFailed | AiRecordNotFound | Generic;
|
|
322
|
+
export type CliErrorTag = CliError['_tag'];
|
|
323
|
+
export declare const tagToCode: Record<CliErrorTag, string>;
|
|
324
|
+
export declare const codeForTag: (tag: CliErrorTag) => string;
|
|
325
|
+
export declare const exitCodeForTag: (tag: CliErrorTag) => number;
|
|
326
|
+
export declare const exitCodeForError: (err: unknown) => number;
|
|
327
|
+
export declare const defaultMessageFor: (tag: CliErrorTag) => string;
|
|
328
|
+
export interface ErrorEnvelope {
|
|
329
|
+
readonly ok: false;
|
|
330
|
+
readonly code: string;
|
|
331
|
+
readonly message: string;
|
|
332
|
+
readonly details?: unknown;
|
|
333
|
+
readonly hint?: string;
|
|
334
|
+
}
|
|
335
|
+
export declare const toErrorEnvelope: (err: CliError) => ErrorEnvelope;
|
|
336
|
+
export {};
|
|
@@ -0,0 +1,239 @@
|
|
|
1
|
+
import { Data } from 'effect';
|
|
2
|
+
// ---------------------------------------------------------------------------
|
|
3
|
+
// TaggedError tree (one class per legacy MxsErrorCode entry)
|
|
4
|
+
// ---------------------------------------------------------------------------
|
|
5
|
+
// auth.*
|
|
6
|
+
export class AuthMissing extends Data.TaggedError('AuthMissing') {
|
|
7
|
+
}
|
|
8
|
+
export class AuthExpired extends Data.TaggedError('AuthExpired') {
|
|
9
|
+
}
|
|
10
|
+
export class AuthDenied extends Data.TaggedError('AuthDenied') {
|
|
11
|
+
}
|
|
12
|
+
export class AuthProbe extends Data.TaggedError('AuthProbe') {
|
|
13
|
+
}
|
|
14
|
+
// network.*
|
|
15
|
+
export class NetworkTimeout extends Data.TaggedError('NetworkTimeout') {
|
|
16
|
+
}
|
|
17
|
+
export class NetworkDns extends Data.TaggedError('NetworkDns') {
|
|
18
|
+
}
|
|
19
|
+
export class NetworkRefused extends Data.TaggedError('NetworkRefused') {
|
|
20
|
+
}
|
|
21
|
+
// validation.*
|
|
22
|
+
export class ValidationFailed extends Data.TaggedError('ValidationFailed') {
|
|
23
|
+
}
|
|
24
|
+
export class ValidationXml extends Data.TaggedError('ValidationXml') {
|
|
25
|
+
}
|
|
26
|
+
export class ValidationJson extends Data.TaggedError('ValidationJson') {
|
|
27
|
+
}
|
|
28
|
+
// server.error
|
|
29
|
+
export class ServerError extends Data.TaggedError('ServerError') {
|
|
30
|
+
}
|
|
31
|
+
// resource.not_found
|
|
32
|
+
export class ResourceNotFound extends Data.TaggedError('ResourceNotFound') {
|
|
33
|
+
}
|
|
34
|
+
// config.*
|
|
35
|
+
export class ConfigMissingApiUrl extends Data.TaggedError('ConfigMissingApiUrl') {
|
|
36
|
+
}
|
|
37
|
+
export class ConfigMissingToken extends Data.TaggedError('ConfigMissingToken') {
|
|
38
|
+
}
|
|
39
|
+
export class ConfigMigrationFailed extends Data.TaggedError('ConfigMigrationFailed') {
|
|
40
|
+
}
|
|
41
|
+
// profile.*
|
|
42
|
+
export class ProfileNotFound extends Data.TaggedError('ProfileNotFound') {
|
|
43
|
+
}
|
|
44
|
+
export class ProfileNoneActive extends Data.TaggedError('ProfileNoneActive') {
|
|
45
|
+
}
|
|
46
|
+
export class ProfileInvalidName extends Data.TaggedError('ProfileInvalidName') {
|
|
47
|
+
}
|
|
48
|
+
export class WriteRequiresExplicit extends Data.TaggedError('WriteRequiresExplicit') {
|
|
49
|
+
}
|
|
50
|
+
// update.*
|
|
51
|
+
export class UpdateDevEnvironment extends Data.TaggedError('UpdateDevEnvironment') {
|
|
52
|
+
}
|
|
53
|
+
export class UpdateTransientInstall extends Data.TaggedError('UpdateTransientInstall') {
|
|
54
|
+
}
|
|
55
|
+
export class UpdatePmUnknown extends Data.TaggedError('UpdatePmUnknown') {
|
|
56
|
+
}
|
|
57
|
+
export class UpdateRegistryUnreachable extends Data.TaggedError('UpdateRegistryUnreachable') {
|
|
58
|
+
}
|
|
59
|
+
export class UpdateNodeIncompatible extends Data.TaggedError('UpdateNodeIncompatible') {
|
|
60
|
+
}
|
|
61
|
+
export class UpdateSpawnFailed extends Data.TaggedError('UpdateSpawnFailed') {
|
|
62
|
+
}
|
|
63
|
+
export class UpdatePermissionDenied extends Data.TaggedError('UpdatePermissionDenied') {
|
|
64
|
+
}
|
|
65
|
+
// argv.*
|
|
66
|
+
export class ArgvParse extends Data.TaggedError('ArgvParse') {
|
|
67
|
+
}
|
|
68
|
+
// skill.*
|
|
69
|
+
export class ChapterNotFound extends Data.TaggedError('ChapterNotFound') {
|
|
70
|
+
}
|
|
71
|
+
export class SkillCorpusEmpty extends Data.TaggedError('SkillCorpusEmpty') {
|
|
72
|
+
}
|
|
73
|
+
// ai.*
|
|
74
|
+
export class AiTaskCreateFailed extends Data.TaggedError('AiTaskCreateFailed') {
|
|
75
|
+
}
|
|
76
|
+
export class AiTaskFailed extends Data.TaggedError('AiTaskFailed') {
|
|
77
|
+
}
|
|
78
|
+
export class AiRecordNotFound extends Data.TaggedError('AiRecordNotFound') {
|
|
79
|
+
}
|
|
80
|
+
// generic
|
|
81
|
+
export class Generic extends Data.TaggedError('Generic') {
|
|
82
|
+
}
|
|
83
|
+
// Wire-format `code` strings. MUST stay byte-equal to the legacy
|
|
84
|
+
// `MxsErrorCode` table in `src/core/errors.ts` so envelope output and
|
|
85
|
+
// existing test fixtures keep matching.
|
|
86
|
+
export const tagToCode = {
|
|
87
|
+
AuthMissing: 'auth.missing',
|
|
88
|
+
AuthExpired: 'auth.expired',
|
|
89
|
+
AuthDenied: 'auth.denied',
|
|
90
|
+
AuthProbe: 'auth.probe',
|
|
91
|
+
NetworkTimeout: 'network.timeout',
|
|
92
|
+
NetworkDns: 'network.dns',
|
|
93
|
+
NetworkRefused: 'network.refused',
|
|
94
|
+
ValidationFailed: 'validation.failed',
|
|
95
|
+
ValidationXml: 'validation.xml',
|
|
96
|
+
ValidationJson: 'validation.json',
|
|
97
|
+
ServerError: 'server.error',
|
|
98
|
+
ResourceNotFound: 'resource.not_found',
|
|
99
|
+
ConfigMissingApiUrl: 'config.missing.api_url',
|
|
100
|
+
ConfigMissingToken: 'config.missing.token',
|
|
101
|
+
ConfigMigrationFailed: 'config.migration.failed',
|
|
102
|
+
ProfileNotFound: 'profile.not_found',
|
|
103
|
+
ProfileNoneActive: 'profile.none_active',
|
|
104
|
+
ProfileInvalidName: 'profile.invalid_name',
|
|
105
|
+
WriteRequiresExplicit: 'profile.write_requires_explicit',
|
|
106
|
+
UpdateDevEnvironment: 'update.dev_environment',
|
|
107
|
+
UpdateTransientInstall: 'update.transient_install',
|
|
108
|
+
UpdatePmUnknown: 'update.pm_unknown',
|
|
109
|
+
UpdateRegistryUnreachable: 'update.registry_unreachable',
|
|
110
|
+
UpdateNodeIncompatible: 'update.node_incompatible',
|
|
111
|
+
UpdateSpawnFailed: 'update.spawn_failed',
|
|
112
|
+
UpdatePermissionDenied: 'update.permission_denied',
|
|
113
|
+
ArgvParse: 'argv.parse',
|
|
114
|
+
ChapterNotFound: 'skill.chapter_not_found',
|
|
115
|
+
SkillCorpusEmpty: 'skill.corpus_empty',
|
|
116
|
+
AiTaskCreateFailed: 'ai.task.create_failed',
|
|
117
|
+
AiTaskFailed: 'ai.task.failed',
|
|
118
|
+
AiRecordNotFound: 'ai.record.not_found',
|
|
119
|
+
Generic: 'generic',
|
|
120
|
+
};
|
|
121
|
+
export const codeForTag = (tag) => tagToCode[tag];
|
|
122
|
+
// ---------------------------------------------------------------------------
|
|
123
|
+
// Exit codes — mirror legacy `exitCodeForError`
|
|
124
|
+
// ---------------------------------------------------------------------------
|
|
125
|
+
export const exitCodeForTag = (tag) => {
|
|
126
|
+
switch (tag) {
|
|
127
|
+
case 'ArgvParse': {
|
|
128
|
+
return 2;
|
|
129
|
+
}
|
|
130
|
+
case 'AuthMissing':
|
|
131
|
+
case 'AuthExpired':
|
|
132
|
+
case 'AuthDenied':
|
|
133
|
+
case 'AuthProbe': {
|
|
134
|
+
return 3;
|
|
135
|
+
}
|
|
136
|
+
case 'NetworkTimeout':
|
|
137
|
+
case 'NetworkDns':
|
|
138
|
+
case 'NetworkRefused':
|
|
139
|
+
case 'WriteRequiresExplicit':
|
|
140
|
+
case 'ProfileNoneActive': {
|
|
141
|
+
return 4;
|
|
142
|
+
}
|
|
143
|
+
case 'ValidationFailed':
|
|
144
|
+
case 'ValidationXml':
|
|
145
|
+
case 'ValidationJson':
|
|
146
|
+
case 'ProfileInvalidName':
|
|
147
|
+
case 'ConfigMissingApiUrl':
|
|
148
|
+
case 'ConfigMissingToken': {
|
|
149
|
+
return 5;
|
|
150
|
+
}
|
|
151
|
+
case 'ServerError': {
|
|
152
|
+
return 6;
|
|
153
|
+
}
|
|
154
|
+
case 'ResourceNotFound':
|
|
155
|
+
case 'ChapterNotFound':
|
|
156
|
+
case 'AiRecordNotFound': {
|
|
157
|
+
return 7;
|
|
158
|
+
}
|
|
159
|
+
case 'UpdatePmUnknown': {
|
|
160
|
+
return 70;
|
|
161
|
+
}
|
|
162
|
+
case 'UpdatePermissionDenied': {
|
|
163
|
+
return 73;
|
|
164
|
+
}
|
|
165
|
+
case 'UpdateRegistryUnreachable': {
|
|
166
|
+
return 75;
|
|
167
|
+
}
|
|
168
|
+
default: {
|
|
169
|
+
return 1;
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
};
|
|
173
|
+
export const exitCodeForError = (err) => {
|
|
174
|
+
if (typeof err === 'object' &&
|
|
175
|
+
err !== null &&
|
|
176
|
+
'_tag' in err &&
|
|
177
|
+
typeof err._tag === 'string' &&
|
|
178
|
+
err._tag in tagToCode) {
|
|
179
|
+
return exitCodeForTag(err._tag);
|
|
180
|
+
}
|
|
181
|
+
return 1;
|
|
182
|
+
};
|
|
183
|
+
// ---------------------------------------------------------------------------
|
|
184
|
+
// Default messages (used when an error is constructed without one)
|
|
185
|
+
// ---------------------------------------------------------------------------
|
|
186
|
+
const defaultMessages = {
|
|
187
|
+
AuthMissing: 'not authenticated',
|
|
188
|
+
AuthExpired: 'authentication required',
|
|
189
|
+
AuthDenied: 'permission denied',
|
|
190
|
+
AuthProbe: 'cannot detect auth endpoint',
|
|
191
|
+
NetworkTimeout: 'network request timed out',
|
|
192
|
+
NetworkDns: 'dns lookup failed',
|
|
193
|
+
NetworkRefused: 'connection refused',
|
|
194
|
+
ValidationFailed: 'validation failed',
|
|
195
|
+
ValidationXml: 'failed to parse LiteXML',
|
|
196
|
+
ValidationJson: 'failed to parse JSON',
|
|
197
|
+
ServerError: 'server error',
|
|
198
|
+
ResourceNotFound: 'resource not found',
|
|
199
|
+
ConfigMissingApiUrl: 'API URL is not configured',
|
|
200
|
+
ConfigMissingToken: 'auth token is not configured',
|
|
201
|
+
ConfigMigrationFailed: 'legacy config migration failed',
|
|
202
|
+
ProfileNotFound: 'profile not found',
|
|
203
|
+
ProfileNoneActive: 'no active profile',
|
|
204
|
+
ProfileInvalidName: 'invalid profile name',
|
|
205
|
+
WriteRequiresExplicit: 'write blocked: active profile is production; pass --profile explicitly',
|
|
206
|
+
UpdateDevEnvironment: 'cannot self-update from a dev environment',
|
|
207
|
+
UpdateTransientInstall: 'cannot self-update from a transient install',
|
|
208
|
+
UpdatePmUnknown: 'cannot determine package manager for self-update',
|
|
209
|
+
UpdateRegistryUnreachable: 'npm registry is unreachable',
|
|
210
|
+
UpdateNodeIncompatible: 'installed Node.js does not satisfy required engine',
|
|
211
|
+
UpdateSpawnFailed: 'failed to spawn package manager',
|
|
212
|
+
UpdatePermissionDenied: 'permission denied while writing to install prefix',
|
|
213
|
+
ArgvParse: 'failed to parse arguments',
|
|
214
|
+
ChapterNotFound: 'skill chapter not found',
|
|
215
|
+
SkillCorpusEmpty: 'skill corpus is empty',
|
|
216
|
+
AiTaskCreateFailed: 'failed to create AI task',
|
|
217
|
+
AiTaskFailed: 'AI task did not succeed',
|
|
218
|
+
AiRecordNotFound: 'AI record not found',
|
|
219
|
+
Generic: 'mxs error',
|
|
220
|
+
};
|
|
221
|
+
export const defaultMessageFor = (tag) => defaultMessages[tag];
|
|
222
|
+
const hasOwn = (obj, key) => typeof obj === 'object' && obj !== null && key in obj;
|
|
223
|
+
export const toErrorEnvelope = (err) => {
|
|
224
|
+
const tag = err._tag;
|
|
225
|
+
const code = codeForTag(tag);
|
|
226
|
+
const message = hasOwn(err, 'message') && typeof err.message === 'string' && err.message
|
|
227
|
+
? err.message
|
|
228
|
+
: defaultMessageFor(tag);
|
|
229
|
+
const envelope = { ok: false, code, message };
|
|
230
|
+
if (hasOwn(err, 'details') && err.details !== undefined) {
|
|
231
|
+
envelope.details = err.details;
|
|
232
|
+
}
|
|
233
|
+
if (hasOwn(err, 'hint') &&
|
|
234
|
+
typeof err.hint === 'string' &&
|
|
235
|
+
err.hint.length > 0) {
|
|
236
|
+
envelope.hint = err.hint;
|
|
237
|
+
}
|
|
238
|
+
return envelope;
|
|
239
|
+
};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export type HttpMethod = 'GET' | 'HEAD' | 'OPTIONS' | 'POST' | 'PUT' | 'PATCH' | 'DELETE';
|
|
2
|
+
export interface ResolvedGateInput {
|
|
3
|
+
readonly apiUrl: string;
|
|
4
|
+
readonly profileName: string | null;
|
|
5
|
+
readonly isProduction: boolean;
|
|
6
|
+
readonly profileExplicit: boolean;
|
|
7
|
+
readonly urlOverridden: boolean;
|
|
8
|
+
}
|
|
9
|
+
export interface GateDecision {
|
|
10
|
+
readonly allow: boolean;
|
|
11
|
+
readonly message?: string;
|
|
12
|
+
readonly hint?: string;
|
|
13
|
+
}
|
|
14
|
+
export declare const decideWriteGate: (resolved: ResolvedGateInput, method: HttpMethod) => GateDecision;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
const SAFE_METHODS = new Set(['GET', 'HEAD', 'OPTIONS']);
|
|
2
|
+
export const decideWriteGate = (resolved, method) => {
|
|
3
|
+
if (SAFE_METHODS.has(method))
|
|
4
|
+
return { allow: true };
|
|
5
|
+
if (!resolved.isProduction)
|
|
6
|
+
return { allow: true };
|
|
7
|
+
if (resolved.profileExplicit)
|
|
8
|
+
return { allow: true };
|
|
9
|
+
if (resolved.urlOverridden)
|
|
10
|
+
return { allow: true };
|
|
11
|
+
const name = resolved.profileName ?? 'unknown';
|
|
12
|
+
const url = resolved.apiUrl;
|
|
13
|
+
return {
|
|
14
|
+
allow: false,
|
|
15
|
+
message: `write blocked: active profile '${name}' (${url}) is production`,
|
|
16
|
+
hint: `active profile '${name}' is production; retry with --profile ${name} or MXS_PROFILE=${name}`,
|
|
17
|
+
};
|
|
18
|
+
};
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import type { Path } from '@effect/platform';
|
|
2
|
+
import { FileSystem } from '@effect/platform';
|
|
3
|
+
import { Effect } from 'effect';
|
|
4
|
+
import { Lexical } from '../services/Lexical';
|
|
5
|
+
import { type EnvelopeKind, type EnvelopeMeta, type ParsedEnvelope } from './envelope';
|
|
6
|
+
import { ValidationFailed, ValidationXml } from './errors';
|
|
7
|
+
export type ContentFormat = 'lexical' | 'markdown';
|
|
8
|
+
export interface PostFlagInputs {
|
|
9
|
+
title?: string;
|
|
10
|
+
slug?: string;
|
|
11
|
+
category?: string;
|
|
12
|
+
content?: string;
|
|
13
|
+
format?: ContentFormat;
|
|
14
|
+
summary?: string;
|
|
15
|
+
state?: 'publish' | 'draft';
|
|
16
|
+
tags?: string[];
|
|
17
|
+
copyright?: boolean;
|
|
18
|
+
pin?: string;
|
|
19
|
+
pinOrder?: number;
|
|
20
|
+
related?: string[];
|
|
21
|
+
meta?: string;
|
|
22
|
+
file?: string;
|
|
23
|
+
}
|
|
24
|
+
export interface NoteFlagInputs {
|
|
25
|
+
title?: string;
|
|
26
|
+
slug?: string;
|
|
27
|
+
topic?: string;
|
|
28
|
+
content?: string;
|
|
29
|
+
format?: ContentFormat;
|
|
30
|
+
state?: 'publish' | 'draft';
|
|
31
|
+
mood?: string;
|
|
32
|
+
weather?: string;
|
|
33
|
+
publicAt?: string;
|
|
34
|
+
password?: string;
|
|
35
|
+
bookmark?: boolean;
|
|
36
|
+
coords?: string;
|
|
37
|
+
location?: string;
|
|
38
|
+
images?: string;
|
|
39
|
+
meta?: string;
|
|
40
|
+
file?: string;
|
|
41
|
+
}
|
|
42
|
+
export interface PageFlagInputs {
|
|
43
|
+
title?: string;
|
|
44
|
+
slug?: string;
|
|
45
|
+
subtitle?: string;
|
|
46
|
+
order?: number;
|
|
47
|
+
content?: string;
|
|
48
|
+
format?: ContentFormat;
|
|
49
|
+
meta?: string;
|
|
50
|
+
file?: string;
|
|
51
|
+
}
|
|
52
|
+
export interface BuiltPayload {
|
|
53
|
+
readonly payload: Record<string, unknown>;
|
|
54
|
+
readonly envelopeMeta?: EnvelopeMeta;
|
|
55
|
+
readonly contentSource?: 'flag' | 'envelope' | 'none';
|
|
56
|
+
}
|
|
57
|
+
export declare const loadEnvelopeIfAny: (filePath: string | undefined, kind: EnvelopeKind) => Effect.Effect<ParsedEnvelope | null, ValidationFailed | ValidationXml, FileSystem.FileSystem | Path.Path>;
|
|
58
|
+
export declare const buildPostPayload: (flags: PostFlagInputs) => Effect.Effect<BuiltPayload, ValidationFailed | ValidationXml, Lexical | FileSystem.FileSystem | Path.Path>;
|
|
59
|
+
export declare const buildNotePayload: (flags: NoteFlagInputs) => Effect.Effect<BuiltPayload, ValidationFailed | ValidationXml, Lexical | FileSystem.FileSystem | Path.Path>;
|
|
60
|
+
export declare const buildPagePayload: (flags: PageFlagInputs) => Effect.Effect<BuiltPayload, ValidationFailed | ValidationXml, Lexical | FileSystem.FileSystem | Path.Path>;
|
|
61
|
+
export declare const emptyPayload: (format: ContentFormat) => Effect.Effect<{
|
|
62
|
+
content: string;
|
|
63
|
+
text: string;
|
|
64
|
+
}, never, Lexical>;
|