@forumulate/cli 0.5.0 → 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (204) hide show
  1. package/README.md +124 -5
  2. package/dist/api/args.d.ts +21 -0
  3. package/dist/api/args.d.ts.map +1 -0
  4. package/dist/api/args.js +81 -0
  5. package/dist/api/args.js.map +1 -0
  6. package/dist/api/command.d.ts +17 -0
  7. package/dist/api/command.d.ts.map +1 -0
  8. package/dist/api/command.js +182 -0
  9. package/dist/api/command.js.map +1 -0
  10. package/dist/api/describe.d.ts +5 -0
  11. package/dist/api/describe.d.ts.map +1 -0
  12. package/dist/api/describe.js +121 -0
  13. package/dist/api/describe.js.map +1 -0
  14. package/dist/api/http.d.ts +81 -0
  15. package/dist/api/http.d.ts.map +1 -0
  16. package/dist/api/http.js +183 -0
  17. package/dist/api/http.js.map +1 -0
  18. package/dist/api/operations.json +1 -0
  19. package/dist/api/output.d.ts +35 -0
  20. package/dist/api/output.d.ts.map +1 -0
  21. package/dist/api/output.js +176 -0
  22. package/dist/api/output.js.map +1 -0
  23. package/dist/api/request.d.ts +37 -0
  24. package/dist/api/request.d.ts.map +1 -0
  25. package/dist/api/request.js +230 -0
  26. package/dist/api/request.js.map +1 -0
  27. package/dist/api/send.d.ts +35 -0
  28. package/dist/api/send.d.ts.map +1 -0
  29. package/dist/api/send.js +85 -0
  30. package/dist/api/send.js.map +1 -0
  31. package/dist/api/spec.d.ts +96 -0
  32. package/dist/api/spec.d.ts.map +1 -0
  33. package/dist/api/spec.js +126 -0
  34. package/dist/api/spec.js.map +1 -0
  35. package/dist/commands/completion.d.ts +12 -0
  36. package/dist/commands/completion.d.ts.map +1 -0
  37. package/dist/commands/completion.js +169 -0
  38. package/dist/commands/completion.js.map +1 -0
  39. package/dist/commands/config.d.ts +33 -0
  40. package/dist/commands/config.d.ts.map +1 -0
  41. package/dist/commands/config.js +144 -0
  42. package/dist/commands/config.js.map +1 -0
  43. package/dist/commands/context.d.ts +35 -0
  44. package/dist/commands/context.d.ts.map +1 -0
  45. package/dist/commands/context.js +59 -0
  46. package/dist/commands/context.js.map +1 -0
  47. package/dist/commands/groups-api.d.ts +11 -0
  48. package/dist/commands/groups-api.d.ts.map +1 -0
  49. package/dist/commands/groups-api.js +140 -0
  50. package/dist/commands/groups-api.js.map +1 -0
  51. package/dist/commands/groups-community.d.ts +15 -0
  52. package/dist/commands/groups-community.d.ts.map +1 -0
  53. package/dist/commands/groups-community.js +344 -0
  54. package/dist/commands/groups-community.js.map +1 -0
  55. package/dist/commands/groups-content.d.ts +10 -0
  56. package/dist/commands/groups-content.d.ts.map +1 -0
  57. package/dist/commands/groups-content.js +331 -0
  58. package/dist/commands/groups-content.js.map +1 -0
  59. package/dist/commands/groups-docs.d.ts +12 -0
  60. package/dist/commands/groups-docs.d.ts.map +1 -0
  61. package/dist/commands/groups-docs.js +414 -0
  62. package/dist/commands/groups-docs.js.map +1 -0
  63. package/dist/commands/groups-org.d.ts +10 -0
  64. package/dist/commands/groups-org.d.ts.map +1 -0
  65. package/dist/commands/groups-org.js +405 -0
  66. package/dist/commands/groups-org.js.map +1 -0
  67. package/dist/commands/groups-site.d.ts +3 -0
  68. package/dist/commands/groups-site.d.ts.map +1 -0
  69. package/dist/commands/groups-site.js +237 -0
  70. package/dist/commands/groups-site.js.map +1 -0
  71. package/dist/commands/groups-spaces.d.ts +3 -0
  72. package/dist/commands/groups-spaces.d.ts.map +1 -0
  73. package/dist/commands/groups-spaces.js +273 -0
  74. package/dist/commands/groups-spaces.js.map +1 -0
  75. package/dist/commands/groups-types.d.ts +3 -0
  76. package/dist/commands/groups-types.d.ts.map +1 -0
  77. package/dist/commands/groups-types.js +251 -0
  78. package/dist/commands/groups-types.js.map +1 -0
  79. package/dist/commands/groups.d.ts +4 -0
  80. package/dist/commands/groups.d.ts.map +1 -0
  81. package/dist/commands/groups.js +71 -0
  82. package/dist/commands/groups.js.map +1 -0
  83. package/dist/commands/index.d.ts +25 -0
  84. package/dist/commands/index.d.ts.map +1 -0
  85. package/dist/commands/index.js +118 -0
  86. package/dist/commands/index.js.map +1 -0
  87. package/dist/commands/resource.d.ts +86 -0
  88. package/dist/commands/resource.d.ts.map +1 -0
  89. package/dist/commands/resource.js +314 -0
  90. package/dist/commands/resource.js.map +1 -0
  91. package/dist/content/library.d.ts +1 -0
  92. package/dist/content/library.d.ts.map +1 -1
  93. package/dist/content/library.js +1 -0
  94. package/dist/content/library.js.map +1 -1
  95. package/dist/dev/command.d.ts +41 -0
  96. package/dist/dev/command.d.ts.map +1 -0
  97. package/dist/dev/command.js +158 -0
  98. package/dist/dev/command.js.map +1 -0
  99. package/dist/help.d.ts +3 -0
  100. package/dist/help.d.ts.map +1 -0
  101. package/dist/help.js +159 -0
  102. package/dist/help.js.map +1 -0
  103. package/dist/publish/api.d.ts +30 -12
  104. package/dist/publish/api.d.ts.map +1 -1
  105. package/dist/publish/api.js +62 -10
  106. package/dist/publish/api.js.map +1 -1
  107. package/dist/publish/client.d.ts +19 -0
  108. package/dist/publish/client.d.ts.map +1 -0
  109. package/dist/publish/client.js +3 -0
  110. package/dist/publish/client.js.map +1 -0
  111. package/dist/publish/command.d.ts +31 -2
  112. package/dist/publish/command.d.ts.map +1 -1
  113. package/dist/publish/command.js +62 -15
  114. package/dist/publish/command.js.map +1 -1
  115. package/dist/publish/context.d.ts +4 -1
  116. package/dist/publish/context.d.ts.map +1 -1
  117. package/dist/publish/context.js.map +1 -1
  118. package/dist/publish/diff.d.ts +21 -0
  119. package/dist/publish/diff.d.ts.map +1 -0
  120. package/dist/publish/diff.js +96 -0
  121. package/dist/publish/diff.js.map +1 -0
  122. package/dist/publish/docs-apply.d.ts +8 -1
  123. package/dist/publish/docs-apply.d.ts.map +1 -1
  124. package/dist/publish/docs-apply.js +37 -10
  125. package/dist/publish/docs-apply.js.map +1 -1
  126. package/dist/publish/docs-plan.d.ts +16 -3
  127. package/dist/publish/docs-plan.d.ts.map +1 -1
  128. package/dist/publish/docs-plan.js +57 -6
  129. package/dist/publish/docs-plan.js.map +1 -1
  130. package/dist/publish/frontmatter.d.ts +1 -1
  131. package/dist/publish/frontmatter.d.ts.map +1 -1
  132. package/dist/publish/frontmatter.js +1 -0
  133. package/dist/publish/frontmatter.js.map +1 -1
  134. package/dist/publish/index.d.ts +12 -0
  135. package/dist/publish/index.d.ts.map +1 -0
  136. package/dist/publish/index.js +17 -0
  137. package/dist/publish/index.js.map +1 -0
  138. package/dist/publish/manifest.d.ts.map +1 -1
  139. package/dist/publish/manifest.js +23 -3
  140. package/dist/publish/manifest.js.map +1 -1
  141. package/dist/publish/names.d.ts +28 -0
  142. package/dist/publish/names.d.ts.map +1 -0
  143. package/dist/publish/names.js +80 -0
  144. package/dist/publish/names.js.map +1 -0
  145. package/dist/publish/posts.d.ts.map +1 -1
  146. package/dist/publish/posts.js +46 -13
  147. package/dist/publish/posts.js.map +1 -1
  148. package/dist/publish/reserved.d.ts +49 -0
  149. package/dist/publish/reserved.d.ts.map +1 -0
  150. package/dist/publish/reserved.js +118 -0
  151. package/dist/publish/reserved.js.map +1 -0
  152. package/dist/publish/rewrite.d.ts +12 -0
  153. package/dist/publish/rewrite.d.ts.map +1 -1
  154. package/dist/publish/rewrite.js +22 -0
  155. package/dist/publish/rewrite.js.map +1 -1
  156. package/dist/publish/scan-docs.d.ts +10 -0
  157. package/dist/publish/scan-docs.d.ts.map +1 -0
  158. package/dist/publish/scan-docs.js +160 -0
  159. package/dist/publish/scan-docs.js.map +1 -0
  160. package/dist/publish/scan.d.ts +21 -17
  161. package/dist/publish/scan.d.ts.map +1 -1
  162. package/dist/publish/scan.js +99 -232
  163. package/dist/publish/scan.js.map +1 -1
  164. package/dist/publish/slots.d.ts +39 -0
  165. package/dist/publish/slots.d.ts.map +1 -0
  166. package/dist/publish/slots.js +64 -0
  167. package/dist/publish/slots.js.map +1 -0
  168. package/dist/publish/tags.d.ts +9 -0
  169. package/dist/publish/tags.d.ts.map +1 -0
  170. package/dist/publish/tags.js +194 -0
  171. package/dist/publish/tags.js.map +1 -0
  172. package/dist/publish/types.d.ts +62 -0
  173. package/dist/publish/types.d.ts.map +1 -1
  174. package/dist/publish/types.js +0 -10
  175. package/dist/publish/types.js.map +1 -1
  176. package/dist/run.d.ts +16 -1
  177. package/dist/run.d.ts.map +1 -1
  178. package/dist/run.js +124 -117
  179. package/dist/run.js.map +1 -1
  180. package/dist/translations/command.d.ts +36 -0
  181. package/dist/translations/command.d.ts.map +1 -0
  182. package/dist/translations/command.js +411 -0
  183. package/dist/translations/command.js.map +1 -0
  184. package/dist/translations/extras.d.ts +29 -0
  185. package/dist/translations/extras.d.ts.map +1 -0
  186. package/dist/translations/extras.js +123 -0
  187. package/dist/translations/extras.js.map +1 -0
  188. package/dist/translations/files.d.ts +22 -0
  189. package/dist/translations/files.d.ts.map +1 -0
  190. package/dist/translations/files.js +75 -0
  191. package/dist/translations/files.js.map +1 -0
  192. package/dist/translations/sync.d.ts +89 -0
  193. package/dist/translations/sync.d.ts.map +1 -0
  194. package/dist/translations/sync.js +215 -0
  195. package/dist/translations/sync.js.map +1 -0
  196. package/dist/translations/target.d.ts +33 -0
  197. package/dist/translations/target.d.ts.map +1 -0
  198. package/dist/translations/target.js +54 -0
  199. package/dist/translations/target.js.map +1 -0
  200. package/dist/translations/xliff.d.ts +29 -0
  201. package/dist/translations/xliff.d.ts.map +1 -0
  202. package/dist/translations/xliff.js +62 -0
  203. package/dist/translations/xliff.js.map +1 -0
  204. package/package.json +6 -4
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource.js","sourceRoot":"","sources":["../../src/commands/resource.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,7 @@ export interface LibraryTarget {
15
15
  }
16
16
  export declare class TargetError extends Error {
17
17
  }
18
+ export declare function orgIdOf(client: ForumulateClient, org: string): Promise<string>;
18
19
  export declare function resolveLibrary(client: ForumulateClient, want: {
19
20
  org?: string;
20
21
  library?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"library.d.ts","sourceRoot":"","sources":["../../src/content/library.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAIxD,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,qBAAa,WAAY,SAAQ,KAAK;CAAG;AAUzC,wBAAsB,cAAc,CAClC,MAAM,EAAE,gBAAgB,EACxB,IAAI,EAAE;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GACvC,OAAO,CAAC,aAAa,CAAC,CAqBxB"}
1
+ {"version":3,"file":"library.d.ts","sourceRoot":"","sources":["../../src/content/library.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAIxD,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,qBAAa,WAAY,SAAQ,KAAK;CAAG;AAEzC,wBAAsB,OAAO,CAAC,MAAM,EAAE,gBAAgB,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAMpF;AAED,wBAAsB,cAAc,CAClC,MAAM,EAAE,gBAAgB,EACxB,IAAI,EAAE;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GACvC,OAAO,CAAC,aAAa,CAAC,CAqBxB"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.TargetError = void 0;
4
+ exports.orgIdOf = orgIdOf;
4
5
  exports.resolveLibrary = resolveLibrary;
5
6
  const UUID = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
6
7
  class TargetError extends Error {
@@ -1 +1 @@
1
- {"version":3,"file":"library.js","sourceRoot":"","sources":["../../src/content/library.ts"],"names":[],"mappings":";;;AA6BA,wCAwBC;AA1CD,MAAM,IAAI,GAAG,iEAAiE,CAAC;AAQ/E,MAAa,WAAY,SAAQ,KAAK;CAAG;AAAzC,kCAAyC;AAEzC,KAAK,UAAU,OAAO,CAAC,MAAwB,EAAE,GAAW;IAC1D,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,GAAG,CAAC;IAC/B,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC;IAC7D,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,WAAW,CAAC,oBAAoB,GAAG,6CAA6C,CAAC,CAAC;IACtG,OAAO,GAAG,CAAC,EAAE,CAAC;AAChB,CAAC;AAEM,KAAK,UAAU,cAAc,CAClC,MAAwB,EACxB,IAAwC;IAExC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QAClB,MAAM,IAAI,WAAW,CAAC,yEAAyE,CAAC,CAAC;IACnG,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC/G,MAAM,IAAI,GAAoB,EAAE,CAAC;IACjC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,uEAAuE;QACvE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;QAC3F,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;YACjC,IAAI,CAAC,CAAC,EAAE,KAAK,OAAO,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO;gBAAE,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QAClG,CAAC;IACH,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC,CAAC,CAAE,CAAC;IACvC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,IAAI,WAAW,CAAC,uBAAuB,OAAO,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,+BAA+B,GAAG,CAAC,CAAC;IAC7H,CAAC;IACD,MAAM,IAAI,WAAW,CACnB,IAAI,OAAO,wBAAwB,IAAI,CAAC,MAAM,mBAAmB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CACpH,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"library.js","sourceRoot":"","sources":["../../src/content/library.ts"],"names":[],"mappings":";;;AAqBA,0BAMC;AAED,wCAwBC;AA1CD,MAAM,IAAI,GAAG,iEAAiE,CAAC;AAQ/E,MAAa,WAAY,SAAQ,KAAK;CAAG;AAAzC,kCAAyC;AAElC,KAAK,UAAU,OAAO,CAAC,MAAwB,EAAE,GAAW;IACjE,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,GAAG,CAAC;IAC/B,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC;IAC7D,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,WAAW,CAAC,oBAAoB,GAAG,6CAA6C,CAAC,CAAC;IACtG,OAAO,GAAG,CAAC,EAAE,CAAC;AAChB,CAAC;AAEM,KAAK,UAAU,cAAc,CAClC,MAAwB,EACxB,IAAwC;IAExC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QAClB,MAAM,IAAI,WAAW,CAAC,yEAAyE,CAAC,CAAC;IACnG,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC/G,MAAM,IAAI,GAAoB,EAAE,CAAC;IACjC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,uEAAuE;QACvE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;QAC3F,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;YACjC,IAAI,CAAC,CAAC,EAAE,KAAK,OAAO,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO;gBAAE,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QAClG,CAAC;IACH,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC,CAAC,CAAE,CAAC;IACvC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACjB,MAAM,IAAI,WAAW,CAAC,uBAAuB,OAAO,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,+BAA+B,GAAG,CAAC,CAAC;IAC7H,CAAC;IACD,MAAM,IAAI,WAAW,CACnB,IAAI,OAAO,wBAAwB,IAAI,CAAC,MAAM,mBAAmB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CACpH,CAAC;AACJ,CAAC"}
@@ -0,0 +1,41 @@
1
+ import type { ForumulateClient } from '@forumulate/sdk';
2
+ /**
3
+ * `forumulate dev <folder> --space <spaceId> [--org <orgId>] [--port 4321] [--site <url>]`
4
+ * — a local preview of a docs folder, reloading as you save (Mintlify's
5
+ * `mint dev`, Docusaurus's `start`; DOCS #244).
6
+ *
7
+ * Every page is rendered by the API's own renderer (`POST …/docs/render`),
8
+ * not by a second one shipped in the CLI, so what you see is what readers
9
+ * will get. `--site` (your published docs address) lends the preview its
10
+ * look: the stylesheets that page links and the theme it inlines are copied
11
+ * once into each preview page. Nothing is written anywhere.
12
+ */
13
+ export interface DevOptions {
14
+ folder: string;
15
+ org?: string;
16
+ space?: string;
17
+ port: number;
18
+ site?: string;
19
+ }
20
+ export interface DevDeps {
21
+ client: ForumulateClient;
22
+ out: (line: string) => void;
23
+ err: (line: string) => void;
24
+ /** Injected so tests can stop it; production keeps the process alive. */
25
+ onListening?: (close: () => void) => void;
26
+ }
27
+ /** Every Markdown file under the folder, as `/`-separated relative paths, sorted. */
28
+ export declare function markdownFiles(folder: string, dir?: string): string[];
29
+ /** The stylesheet links and inline theme of a published page, to dress the preview in. */
30
+ export declare function themeOf(html: string, site: string): string;
31
+ /** One preview document: the nav of files, the rendered body, and the reload hook. */
32
+ export declare function previewPage(opts: {
33
+ title: string;
34
+ heading?: string | null;
35
+ body: string;
36
+ files: string[];
37
+ current: string | null;
38
+ theme: string;
39
+ }): string;
40
+ export declare function runDev(opts: DevOptions, deps: DevDeps): Promise<number>;
41
+ //# sourceMappingURL=command.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../src/dev/command.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAGxD;;;;;;;;;;GAUG;AACH,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,OAAO;IACtB,MAAM,EAAE,gBAAgB,CAAC;IACzB,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5B,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5B,yEAAyE;IACzE,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC;CAC3C;AAID,qFAAqF;AACrF,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,SAAK,GAAG,MAAM,EAAE,CAShE;AAED,0FAA0F;AAC1F,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAM1D;AAKD,sFAAsF;AACtF,wBAAgB,WAAW,CAAC,IAAI,EAAE;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;CACf,GAAG,MAAM,CAWT;AAED,wBAAsB,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAwH7E"}
@@ -0,0 +1,158 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.markdownFiles = markdownFiles;
7
+ exports.themeOf = themeOf;
8
+ exports.previewPage = previewPage;
9
+ exports.runDev = runDev;
10
+ const node_http_1 = require("node:http");
11
+ const node_fs_1 = require("node:fs");
12
+ const node_path_1 = __importDefault(require("node:path"));
13
+ const frontmatter_1 = require("../publish/frontmatter");
14
+ const PAGE = /\.(md|mdx|markdown)$/i;
15
+ /** Every Markdown file under the folder, as `/`-separated relative paths, sorted. */
16
+ function markdownFiles(folder, dir = '') {
17
+ const out = [];
18
+ for (const name of (0, node_fs_1.readdirSync)(node_path_1.default.join(folder, dir))) {
19
+ if (name.startsWith('.') || name === 'node_modules')
20
+ continue;
21
+ const rel = dir ? `${dir}/${name}` : name;
22
+ if ((0, node_fs_1.statSync)(node_path_1.default.join(folder, rel)).isDirectory())
23
+ out.push(...markdownFiles(folder, rel));
24
+ else if (PAGE.test(name))
25
+ out.push(rel);
26
+ }
27
+ return out.sort();
28
+ }
29
+ /** The stylesheet links and inline theme of a published page, to dress the preview in. */
30
+ function themeOf(html, site) {
31
+ const links = [...html.matchAll(/<link[^>]+rel="stylesheet"[^>]*>/gi)].map((m) => m[0].replace(/href="(\/[^"]*)"/, (_x, href) => `href="${new URL(href, site).href}"`));
32
+ const styles = [...html.matchAll(/<style[^>]*>[\s\S]*?<\/style>/gi)].map((m) => m[0]);
33
+ return [...links, ...styles].join('\n');
34
+ }
35
+ const esc = (s) => s.replace(/[&<>"]/g, (c) => ({ '&': '&amp;', '<': '&lt;', '>': '&gt;', '"': '&quot;' })[c]);
36
+ /** One preview document: the nav of files, the rendered body, and the reload hook. */
37
+ function previewPage(opts) {
38
+ const nav = opts.files
39
+ .map((f) => `<li><a href="/${esc(f)}"${f === opts.current ? ' aria-current="page" style="font-weight:600"' : ''}>${esc(f)}</a></li>`)
40
+ .join('');
41
+ return `<!doctype html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"><title>${esc(opts.title)} · preview</title>${opts.theme}
42
+ <style>.fm-dev{display:flex;gap:2rem;max-width:72rem;margin:0 auto;padding:2rem 1rem}.fm-dev nav{flex:0 0 14rem;font:14px/1.6 system-ui,sans-serif}.fm-dev nav ul{list-style:none;padding:0;margin:0}.fm-dev main{flex:1;min-width:0}</style></head>
43
+ <body class="forumulate-reader"><div class="fm-dev"><nav aria-label="Files"><ul>${nav}</ul></nav><main><article class="forumulate-prose">${opts.heading ? `<h1>${esc(opts.heading)}</h1>` : ''}${opts.body}</article></main></div>
44
+ <script>new EventSource('/__forumulate/live').onmessage=function(){location.reload()};</script></body></html>`;
45
+ }
46
+ async function runDev(opts, deps) {
47
+ if (!opts.space || !opts.org) {
48
+ deps.err('dev needs --org <orgId> and --space <spaceId> (the space whose renderer previews it).');
49
+ return 2;
50
+ }
51
+ const folder = node_path_1.default.resolve(opts.folder);
52
+ let theme = '';
53
+ if (opts.site) {
54
+ try {
55
+ theme = themeOf(await (await fetch(opts.site)).text(), opts.site);
56
+ }
57
+ catch {
58
+ deps.err(`Could not read ${opts.site}; the preview will be unstyled.`);
59
+ }
60
+ }
61
+ const clients = new Set();
62
+ const render = async (rel) => {
63
+ const { data, body } = (0, frontmatter_1.splitFront)((0, node_fs_1.readFileSync)(node_path_1.default.join(folder, rel), 'utf8'));
64
+ const r = await deps.client.request('POST', `/orgs/${opts.org}/spaces/${opts.space}/docs/render`, { body: { markdown: body } });
65
+ const declared = typeof data.title === 'string' ? data.title : null;
66
+ // A body that opens with its own `# Title` already carries it; a front-matter
67
+ // title is drawn as the heading only when the body has none.
68
+ return {
69
+ title: declared ?? r.title ?? rel,
70
+ heading: declared && !r.title ? declared : null,
71
+ html: r.html,
72
+ };
73
+ };
74
+ const server = (0, node_http_1.createServer)((req, res) => {
75
+ void (async () => {
76
+ const url = decodeURIComponent((req.url ?? '/').split('?')[0]);
77
+ if (url === '/__forumulate/live') {
78
+ res.writeHead(200, {
79
+ 'content-type': 'text/event-stream',
80
+ 'cache-control': 'no-store',
81
+ connection: 'keep-alive',
82
+ });
83
+ res.write(': live\n\n');
84
+ clients.add(res);
85
+ req.on('close', () => clients.delete(res));
86
+ return;
87
+ }
88
+ const files = markdownFiles(folder);
89
+ const rel = url === '/'
90
+ ? (files.find((f) => /(^|\/)(index|readme)\.mdx?$/i.test(f)) ?? files[0] ?? null)
91
+ : url.slice(1);
92
+ // Only a file the listing holds — never a path that climbs out of the folder.
93
+ if (!rel || !files.includes(rel)) {
94
+ res.writeHead(404, { 'content-type': 'text/html; charset=utf-8' });
95
+ res.end(previewPage({
96
+ title: 'Not found',
97
+ body: '<p>No such page in this folder.</p>',
98
+ files,
99
+ current: null,
100
+ theme,
101
+ }));
102
+ return;
103
+ }
104
+ try {
105
+ const page = await render(rel);
106
+ res.writeHead(200, {
107
+ 'content-type': 'text/html; charset=utf-8',
108
+ 'cache-control': 'no-store',
109
+ });
110
+ res.end(previewPage({
111
+ title: page.title,
112
+ heading: page.heading,
113
+ body: page.html,
114
+ files,
115
+ current: rel,
116
+ theme,
117
+ }));
118
+ }
119
+ catch (e) {
120
+ res.writeHead(502, { 'content-type': 'text/html; charset=utf-8' });
121
+ res.end(previewPage({
122
+ title: 'Could not render',
123
+ body: `<pre>${esc(String(e.message ?? e))}</pre>`,
124
+ files,
125
+ current: rel,
126
+ theme,
127
+ }));
128
+ }
129
+ })();
130
+ });
131
+ // Saved a file: every open preview reloads (a burst of writes is one reload).
132
+ let timer = null;
133
+ const watcher = (0, node_fs_1.watch)(folder, { recursive: true }, (_e, name) => {
134
+ if (!name || !PAGE.test(String(name)))
135
+ return;
136
+ if (timer)
137
+ clearTimeout(timer);
138
+ timer = setTimeout(() => {
139
+ for (const c of clients)
140
+ c.write('data: reload\n\n');
141
+ }, 120);
142
+ });
143
+ await new Promise((resolve) => server.listen(opts.port, '127.0.0.1', resolve));
144
+ deps.out(`Previewing ${folder} at http://127.0.0.1:${opts.port}/ — Ctrl+C to stop.`);
145
+ const close = () => {
146
+ watcher.close();
147
+ for (const c of clients)
148
+ c.end();
149
+ server.close();
150
+ };
151
+ if (deps.onListening) {
152
+ deps.onListening(close);
153
+ return 0;
154
+ }
155
+ await new Promise((resolve) => server.on('close', resolve));
156
+ return 0;
157
+ }
158
+ //# sourceMappingURL=command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command.js","sourceRoot":"","sources":["../../src/dev/command.ts"],"names":[],"mappings":"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"}
package/dist/help.d.ts ADDED
@@ -0,0 +1,3 @@
1
+ /** `forumulate help`. The resource groups print their own (`forumulate spaces --help`). */
2
+ export declare const HELP = "forumulate \u2014 Forumulate command-line interface\n\nUsage:\n forumulate <command> [args]\n\nCommands:\n login [--token <pat>] Store a token for this API, so every other\n command stops needing FORUMULATE_TOKEN in\n the environment\n logout Forget the stored token\n whoami Show the authenticated user\n config set|get|unset|list Defaults: org, space, library, api-version\n (`forumulate config set org acme`)\n\nEvery API operation:\n api list [--tag t] [--search w] Discover operations and their summaries\n api describe <operationId> Parameters and body schema, as flags\n api <operationId> [args] [flags] Call it: --<param> value, --data @f.json,\n api <METHOD> <path> [flags] --field a.b=v, --paginate, --json\n\nResources (each: <group> --help lists its verbs and the operation each calls):\n Org: orgs | members | invites | groups | roles | service-accounts (bots)\n tokens (pats) | webhooks | extensions | audit\n Spaces: spaces | snapshots | shape | domains | assets | space-types (types)\n Docs: items (pages) | docs | collections | versions | change-requests (crs)\n openapi | sdks | github (git)\n Content: blog | forum | changelog | roadmap | status | events | course\n careers | forms (blog/forum/changelog/status: translations \u2026)\n CMS: libraries | entries | media | releases | environments (envs)\n Site: theme | sites | reader\n search <query...> [--org] e.g. spaces create Docs --slug docs --type DOCS\n items create --space docs --file a.md --publish\n docs schedule set <pageId> <when> --space docs\n webhooks deliveries <id>; webhooks replay <id> <d>\n --out <file> where a file answer goes (SDK archive, PDF, CSV export)\n completion bash|zsh|fish Shell completion script\n\nOlder forms, unchanged:\n orgs List your organizations\n spaces <orgId> List spaces in an org\n items <orgId> <spaceId> List what is in a space, with where each\n piece's content lives\n search <orgId> <query...> Unified search across docs/forum/blog\n dev <folder> Preview a folder of Markdown locally, rendered\n by your space's own renderer; reloads on save.\n --org <id> --space <id> [--port 4321] [--site <your docs URL>]\n publish <folder> Publish a folder of Markdown: one folder per\n collection, front matter, assets, order,\n and a forumulate.yaml manifest for space,\n site, theme, OpenAPI and monitors. Re-runs\n change only what changed, then read back.\n --org <id|slug> --space <id|slug> (or org:/space: in the manifest)\n --dry-run print the plan, write nothing (no token needed for a\n public space)\n --prune remove pages/posts/collections with no file (to the trash)\n --only a,b just these slugs, files, folders, or manifest parts\n (site, theme, settings, openapi, monitors)\n --force re-send every page even if it looks unchanged\n --no-verify skip the read-back --pace <ms> gap between writes\n --manifest <file> a manifest somewhere else\n --diff print the changed paragraphs and fields of each update\n sync <folder> Content as code: the same folder publish,\n PLAN BY DEFAULT. Posts (blog), pages\n (docs, custom, legal), FAQ questions,\n changelog releases and blog categories,\n matched by slug; images uploaded once by\n content hash; README, LICENSE, _drafts/,\n dotfiles skipped. Guide:\n https://forumulate.com/guides/content-as-code\n --apply write the plan (then read it back)\n --prune also remove what has no file (to the trash)\n --diff print the changed paragraphs and fields of each update\n --org, --space, --only, --force, --no-verify, --pace, --manifest, --json\n as for publish\n publish <orgId> <spaceId> <pageId> Publish a page\n publish <orgId> <spaceId> <dir> The folder form, with org and space given\n domains <orgId> <spaceId> List this space's domains and their state\n domains verify <orgId> <spaceId> <hostname>\n Re-run verification and say what is missing\n snapshot <orgId> <spaceId> <label> Create a space version snapshot\n content types --library <id|slug> TypeScript for a content library's model:\n collections, globals, the block union\n [--org <id|slug>] [--out forumulate.d.ts] [--preview] [--schema <file>]\n [--check] fail (exit 1) when the file is out of date, write nothing\n content pull --library <id|slug> Write the model to forumulate.content.json\n [--format json|payload] [--out <file>] (payload: forumulate.payload.ts)\n content push [file] Show the diff against the library, then\n apply it as a new model version\n [--library \u2026] [--dry-run] [--yes] [--force]\n [--rename type.field=new | block:hero.field=new | library:field=new]\n [--rename-type old=new] [--rename-block old=new]\n import <payload|contentful|sanity|strapi|wordpress> <export path>\n Bring another CMS's content into a library:\n model, media, entries, references (always\n shows a dry run first)\n Re-running updates entries a\n previous import made. strapi takes a\n folder or an unencrypted export .tar.gz\n --library <id|slug> [--org \u2026] [--dry-run] [--yes]\n [--config payload.config.ts] (payload) the config that becomes the model\n [--publish source|all|none] what to publish (default: what was live)\n [--allow-model-removals] [--pace <ms>] [--base-url <url>] (strapi uploads)\n translations (alias i18n) Every translation capability, one vocabulary\n locales list|add|relabel|remove|set a space's (--space) or library's\n (--library) languages; set es=Espa\u00F1ol fr [--prune] is exact\n status each piece \u00D7 language: missing/draft/published/outdated\n [--locale es,fr] [--fail-on missing,outdated] (exit 1)\n pull one Markdown file per piece per language \u2192 [--out translations]\n [--locale \u2026] [--only slug,\u2026] [--include-missing] (stubs)\n push [dir] diff the files against the API, write what changed [--dry-run]\n auto machine-translate with YOUR DeepL/AI key --locale es\n [--state missing,outdated] [--only \u2026] [--force] [--publish]\n [--library \u2026 --entry id,\u2026] [--dry-run]\n labels pull|push [file] chrome words (--site <id> | --space \u2026)\n overrides pull|push [file] org UI string overrides [--prune]\n [--format json|xliff] for labels and overrides\n item-locale <itemId> <locale|none> correct a piece's declared language\n remove <pieceId> <locale> one translation (--yes)\n entry <entryId> <locale> a library entry's twin [--fields f.json]\n name <locale> <name\u2026> a space's (or --collection's) name\n switcher get|set <f.json> the org's reader language switcher\n provider status|connect|disconnect your DeepL key (DEEPL_API_KEY)\n conformance <collectionUrl> Run the Content Sync Protocol suite against\n any platform's collection endpoint\n doctor <readerUrl> Check a live site from the outside: health,\n public read, canonical, cache headers,\n crawler access, feeds, HTML rewriting\n help Show this help\n\nEnvironment:\n FORUMULATE_TOKEN Personal Access Token (Bearer). Overrides a stored one, so\n CI keeps working exactly as it did. Mint one at\n https://forumulate.com/account/tokens\n FORUMULATE_URL The site (default https://forumulate.com); the API is its\n /api, i.e. https://forumulate.com/api. A value already\n ending in /api is used as-is.\n FORUMULATE_API_URL Exact API base, for a local API with no /api prefix\n (http://localhost:4000). Wins over FORUMULATE_URL.\n FORUMULATE_ORG, FORUMULATE_SPACE, FORUMULATE_LIBRARY\n Defaults for --org, --space and --library; they beat\n `forumulate config set`, a flag beats both.\n FORUMULATE_API_VERSION\n Forumulate-Version for api/resource commands\n (default 2026-12-01).\n\nThe SDK (ForumulateClient.fromEnv) and the MCP server (@forumulate/mcp) read\nthe same variables. Guide: https://forumulate.com/guides/api-tokens-and-scopes\n\nFlags:\n --json Emit raw JSON instead of a formatted summary\n --dry-run (api, resources) print the request instead of sending it\n --dry-run Plan the work and write nothing (publish of a directory)\n --version Print the CLI version\n";
3
+ //# sourceMappingURL=help.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"help.d.ts","sourceRoot":"","sources":["../src/help.ts"],"names":[],"mappings":"AAAA,2FAA2F;AAC3F,eAAO,MAAM,IAAI,k2TAyJhB,CAAC"}
package/dist/help.js ADDED
@@ -0,0 +1,159 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HELP = void 0;
4
+ /** `forumulate help`. The resource groups print their own (`forumulate spaces --help`). */
5
+ exports.HELP = `forumulate — Forumulate command-line interface
6
+
7
+ Usage:
8
+ forumulate <command> [args]
9
+
10
+ Commands:
11
+ login [--token <pat>] Store a token for this API, so every other
12
+ command stops needing FORUMULATE_TOKEN in
13
+ the environment
14
+ logout Forget the stored token
15
+ whoami Show the authenticated user
16
+ config set|get|unset|list Defaults: org, space, library, api-version
17
+ (\`forumulate config set org acme\`)
18
+
19
+ Every API operation:
20
+ api list [--tag t] [--search w] Discover operations and their summaries
21
+ api describe <operationId> Parameters and body schema, as flags
22
+ api <operationId> [args] [flags] Call it: --<param> value, --data @f.json,
23
+ api <METHOD> <path> [flags] --field a.b=v, --paginate, --json
24
+
25
+ Resources (each: <group> --help lists its verbs and the operation each calls):
26
+ Org: orgs | members | invites | groups | roles | service-accounts (bots)
27
+ tokens (pats) | webhooks | extensions | audit
28
+ Spaces: spaces | snapshots | shape | domains | assets | space-types (types)
29
+ Docs: items (pages) | docs | collections | versions | change-requests (crs)
30
+ openapi | sdks | github (git)
31
+ Content: blog | forum | changelog | roadmap | status | events | course
32
+ careers | forms (blog/forum/changelog/status: translations …)
33
+ CMS: libraries | entries | media | releases | environments (envs)
34
+ Site: theme | sites | reader
35
+ search <query...> [--org] e.g. spaces create Docs --slug docs --type DOCS
36
+ items create --space docs --file a.md --publish
37
+ docs schedule set <pageId> <when> --space docs
38
+ webhooks deliveries <id>; webhooks replay <id> <d>
39
+ --out <file> where a file answer goes (SDK archive, PDF, CSV export)
40
+ completion bash|zsh|fish Shell completion script
41
+
42
+ Older forms, unchanged:
43
+ orgs List your organizations
44
+ spaces <orgId> List spaces in an org
45
+ items <orgId> <spaceId> List what is in a space, with where each
46
+ piece's content lives
47
+ search <orgId> <query...> Unified search across docs/forum/blog
48
+ dev <folder> Preview a folder of Markdown locally, rendered
49
+ by your space's own renderer; reloads on save.
50
+ --org <id> --space <id> [--port 4321] [--site <your docs URL>]
51
+ publish <folder> Publish a folder of Markdown: one folder per
52
+ collection, front matter, assets, order,
53
+ and a forumulate.yaml manifest for space,
54
+ site, theme, OpenAPI and monitors. Re-runs
55
+ change only what changed, then read back.
56
+ --org <id|slug> --space <id|slug> (or org:/space: in the manifest)
57
+ --dry-run print the plan, write nothing (no token needed for a
58
+ public space)
59
+ --prune remove pages/posts/collections with no file (to the trash)
60
+ --only a,b just these slugs, files, folders, or manifest parts
61
+ (site, theme, settings, openapi, monitors)
62
+ --force re-send every page even if it looks unchanged
63
+ --no-verify skip the read-back --pace <ms> gap between writes
64
+ --manifest <file> a manifest somewhere else
65
+ --diff print the changed paragraphs and fields of each update
66
+ sync <folder> Content as code: the same folder publish,
67
+ PLAN BY DEFAULT. Posts (blog), pages
68
+ (docs, custom, legal), FAQ questions,
69
+ changelog releases and blog categories,
70
+ matched by slug; images uploaded once by
71
+ content hash; README, LICENSE, _drafts/,
72
+ dotfiles skipped. Guide:
73
+ https://forumulate.com/guides/content-as-code
74
+ --apply write the plan (then read it back)
75
+ --prune also remove what has no file (to the trash)
76
+ --diff print the changed paragraphs and fields of each update
77
+ --org, --space, --only, --force, --no-verify, --pace, --manifest, --json
78
+ as for publish
79
+ publish <orgId> <spaceId> <pageId> Publish a page
80
+ publish <orgId> <spaceId> <dir> The folder form, with org and space given
81
+ domains <orgId> <spaceId> List this space's domains and their state
82
+ domains verify <orgId> <spaceId> <hostname>
83
+ Re-run verification and say what is missing
84
+ snapshot <orgId> <spaceId> <label> Create a space version snapshot
85
+ content types --library <id|slug> TypeScript for a content library's model:
86
+ collections, globals, the block union
87
+ [--org <id|slug>] [--out forumulate.d.ts] [--preview] [--schema <file>]
88
+ [--check] fail (exit 1) when the file is out of date, write nothing
89
+ content pull --library <id|slug> Write the model to forumulate.content.json
90
+ [--format json|payload] [--out <file>] (payload: forumulate.payload.ts)
91
+ content push [file] Show the diff against the library, then
92
+ apply it as a new model version
93
+ [--library …] [--dry-run] [--yes] [--force]
94
+ [--rename type.field=new | block:hero.field=new | library:field=new]
95
+ [--rename-type old=new] [--rename-block old=new]
96
+ import <payload|contentful|sanity|strapi|wordpress> <export path>
97
+ Bring another CMS's content into a library:
98
+ model, media, entries, references (always
99
+ shows a dry run first)
100
+ Re-running updates entries a
101
+ previous import made. strapi takes a
102
+ folder or an unencrypted export .tar.gz
103
+ --library <id|slug> [--org …] [--dry-run] [--yes]
104
+ [--config payload.config.ts] (payload) the config that becomes the model
105
+ [--publish source|all|none] what to publish (default: what was live)
106
+ [--allow-model-removals] [--pace <ms>] [--base-url <url>] (strapi uploads)
107
+ translations (alias i18n) Every translation capability, one vocabulary
108
+ locales list|add|relabel|remove|set a space's (--space) or library's
109
+ (--library) languages; set es=Español fr [--prune] is exact
110
+ status each piece × language: missing/draft/published/outdated
111
+ [--locale es,fr] [--fail-on missing,outdated] (exit 1)
112
+ pull one Markdown file per piece per language → [--out translations]
113
+ [--locale …] [--only slug,…] [--include-missing] (stubs)
114
+ push [dir] diff the files against the API, write what changed [--dry-run]
115
+ auto machine-translate with YOUR DeepL/AI key --locale es
116
+ [--state missing,outdated] [--only …] [--force] [--publish]
117
+ [--library … --entry id,…] [--dry-run]
118
+ labels pull|push [file] chrome words (--site <id> | --space …)
119
+ overrides pull|push [file] org UI string overrides [--prune]
120
+ [--format json|xliff] for labels and overrides
121
+ item-locale <itemId> <locale|none> correct a piece's declared language
122
+ remove <pieceId> <locale> one translation (--yes)
123
+ entry <entryId> <locale> a library entry's twin [--fields f.json]
124
+ name <locale> <name…> a space's (or --collection's) name
125
+ switcher get|set <f.json> the org's reader language switcher
126
+ provider status|connect|disconnect your DeepL key (DEEPL_API_KEY)
127
+ conformance <collectionUrl> Run the Content Sync Protocol suite against
128
+ any platform's collection endpoint
129
+ doctor <readerUrl> Check a live site from the outside: health,
130
+ public read, canonical, cache headers,
131
+ crawler access, feeds, HTML rewriting
132
+ help Show this help
133
+
134
+ Environment:
135
+ FORUMULATE_TOKEN Personal Access Token (Bearer). Overrides a stored one, so
136
+ CI keeps working exactly as it did. Mint one at
137
+ https://forumulate.com/account/tokens
138
+ FORUMULATE_URL The site (default https://forumulate.com); the API is its
139
+ /api, i.e. https://forumulate.com/api. A value already
140
+ ending in /api is used as-is.
141
+ FORUMULATE_API_URL Exact API base, for a local API with no /api prefix
142
+ (http://localhost:4000). Wins over FORUMULATE_URL.
143
+ FORUMULATE_ORG, FORUMULATE_SPACE, FORUMULATE_LIBRARY
144
+ Defaults for --org, --space and --library; they beat
145
+ \`forumulate config set\`, a flag beats both.
146
+ FORUMULATE_API_VERSION
147
+ Forumulate-Version for api/resource commands
148
+ (default 2026-12-01).
149
+
150
+ The SDK (ForumulateClient.fromEnv) and the MCP server (@forumulate/mcp) read
151
+ the same variables. Guide: https://forumulate.com/guides/api-tokens-and-scopes
152
+
153
+ Flags:
154
+ --json Emit raw JSON instead of a formatted summary
155
+ --dry-run (api, resources) print the request instead of sending it
156
+ --dry-run Plan the work and write nothing (publish of a directory)
157
+ --version Print the CLI version
158
+ `;
159
+ //# sourceMappingURL=help.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"help.js","sourceRoot":"","sources":["../src/help.ts"],"names":[],"mappings":";;;AAAA,2FAA2F;AAC9E,QAAA,IAAI,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyJnB,CAAC"}
@@ -1,5 +1,6 @@
1
- import type { ForumulateClient } from '@forumulate/sdk';
2
- import type { LiveCollection, LivePage, LivePost } from './types';
1
+ import type { ApiClient } from './client';
2
+ import type { Slot } from './slots';
3
+ import type { LiveCollection, LivePage, LivePost, LiveTag } from './types';
3
4
  /**
4
5
  * Every call the publisher makes, through `@forumulate/sdk`.
5
6
  *
@@ -18,7 +19,7 @@ import type { LiveCollection, LivePage, LivePost } from './types';
18
19
  * publishing.
19
20
  */
20
21
  export interface ApiOptions {
21
- client: ForumulateClient;
22
+ client: ApiClient;
22
23
  /** Whether a token is present — decides authenticated vs public reads. */
23
24
  authed: boolean;
24
25
  readOnly: boolean;
@@ -60,25 +61,31 @@ export declare class PublishApi {
60
61
  collections: LiveCollection[];
61
62
  pages: LivePage[];
62
63
  fieldKeys: string[];
64
+ slots: Slot[];
63
65
  publicRows: Map<string, Record<string, unknown>>;
64
66
  }>;
65
- /** Every page's markdown, in one paged walk when authenticated. */
66
- markdownById(org: string, space: string): Promise<Map<string, string>>;
67
+ /**
68
+ * Every page's markdown, and its slots, in one paged walk when authenticated.
69
+ * The slots are what a page whose front matter fills them is compared by.
70
+ */
71
+ bodiesById(org: string, space: string): Promise<Map<string, {
72
+ markdown: string;
73
+ sections: Record<string, string>;
74
+ }>>;
67
75
  /** One published page's markdown, the way a reader (or an agent) gets it. */
68
76
  publicMarkdown(org: string, space: string, pageId: string): Promise<string | null>;
69
77
  pageMeta(org: string, space: string, pageId: string): Promise<Record<string, unknown>>;
70
78
  posts(org: string, space: string, type: string): Promise<LivePost[] | null>;
71
- shape(org: string, space: string): Promise<{
72
- sections: {
73
- key: string;
74
- required?: boolean;
75
- role?: string;
76
- schemaProperty?: string;
77
- }[];
79
+ shape(org: string, space: string,
80
+ /** A post's own kind (`drop`, `roundup`): its preset's fields over the space's. */
81
+ kind?: string): Promise<{
82
+ sections: Slot[];
78
83
  params: {
79
84
  key: string;
80
85
  }[];
81
86
  }>;
87
+ /** How each tag looks now (`GET …/blog/tag-info`); null without a token. */
88
+ tagInfo(org: string, space: string): Promise<LiveTag[] | null>;
82
89
  assets(org: string, space: string): Promise<Map<string, string>>;
83
90
  /**
84
91
  * Upload once, by content. The stored name carries a hash of the bytes, so a
@@ -87,8 +94,19 @@ export declare class PublishApi {
87
94
  */
88
95
  upload(org: string, space: string, abs: string, existing: Map<string, string>): Promise<string>;
89
96
  }
97
+ /** The first 12 hex of the file's sha256: what an upload is deduplicated by. */
98
+ export declare function contentHash(abs: string): string;
90
99
  /** `<12 hex of sha256>-<file name>` — the stored name an asset is found by. */
91
100
  export declare function assetName(abs: string): string;
101
+ /**
102
+ * The URL of an asset with the same BYTES, whatever it was called.
103
+ *
104
+ * The stored name leads with the content hash, so the same picture saved as
105
+ * `cover.png` in one post folder and `hero.png` in another — or renamed, or
106
+ * moved — is found and reused rather than uploaded again. A changed picture
107
+ * has a new hash, so it is never mistaken for the old one.
108
+ */
109
+ export declare function lookupAsset(existing: Map<string, string>, abs: string): string | undefined;
92
110
  /** A short, stable key for `Idempotency-Key`: the same write retried is one write. */
93
111
  export declare function idemKey(...parts: string[]): string;
94
112
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/publish/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/publish/api.ts"],"names":[],"mappings":"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"}