@eyeauras/youtrack-cli 0.7.1 → 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 (164) hide show
  1. package/README.md +161 -50
  2. package/dist/src/access-catalog-commands.d.ts +2 -0
  3. package/dist/src/access-catalog-commands.d.ts.map +1 -0
  4. package/dist/src/access-catalog-commands.js +24 -0
  5. package/dist/src/access-catalog-commands.js.map +1 -0
  6. package/dist/src/access-catalog.d.ts +12 -0
  7. package/dist/src/access-catalog.d.ts.map +1 -0
  8. package/dist/src/access-catalog.js +44 -0
  9. package/dist/src/access-catalog.js.map +1 -0
  10. package/dist/src/agile-commands.d.ts.map +1 -1
  11. package/dist/src/agile-commands.js +14 -5
  12. package/dist/src/agile-commands.js.map +1 -1
  13. package/dist/src/agile.d.ts +11 -2
  14. package/dist/src/agile.d.ts.map +1 -1
  15. package/dist/src/agile.js +29 -2
  16. package/dist/src/agile.js.map +1 -1
  17. package/dist/src/article-extras-commands.d.ts +1 -0
  18. package/dist/src/article-extras-commands.d.ts.map +1 -1
  19. package/dist/src/article-extras-commands.js +23 -6
  20. package/dist/src/article-extras-commands.js.map +1 -1
  21. package/dist/src/article-extras.d.ts +15 -2
  22. package/dist/src/article-extras.d.ts.map +1 -1
  23. package/dist/src/article-extras.js +49 -2
  24. package/dist/src/article-extras.js.map +1 -1
  25. package/dist/src/articles-commands.d.ts.map +1 -1
  26. package/dist/src/articles-commands.js +11 -8
  27. package/dist/src/articles-commands.js.map +1 -1
  28. package/dist/src/articles.d.ts +7 -5
  29. package/dist/src/articles.d.ts.map +1 -1
  30. package/dist/src/articles.js +13 -7
  31. package/dist/src/articles.js.map +1 -1
  32. package/dist/src/backup-commands.d.ts +2 -0
  33. package/dist/src/backup-commands.d.ts.map +1 -0
  34. package/dist/src/backup-commands.js +16 -0
  35. package/dist/src/backup-commands.js.map +1 -0
  36. package/dist/src/backup.d.ts +7 -0
  37. package/dist/src/backup.d.ts.map +1 -0
  38. package/dist/src/backup.js +30 -0
  39. package/dist/src/backup.js.map +1 -0
  40. package/dist/src/bundle-values-commands.d.ts.map +1 -1
  41. package/dist/src/bundle-values-commands.js +27 -9
  42. package/dist/src/bundle-values-commands.js.map +1 -1
  43. package/dist/src/bundle-values.d.ts +31 -12
  44. package/dist/src/bundle-values.d.ts.map +1 -1
  45. package/dist/src/bundle-values.js +61 -1
  46. package/dist/src/bundle-values.js.map +1 -1
  47. package/dist/src/cli-support.d.ts +10 -6
  48. package/dist/src/cli-support.d.ts.map +1 -1
  49. package/dist/src/cli-support.js +40 -12
  50. package/dist/src/cli-support.js.map +1 -1
  51. package/dist/src/cli.d.ts.map +1 -1
  52. package/dist/src/cli.js +25 -11
  53. package/dist/src/cli.js.map +1 -1
  54. package/dist/src/client.d.ts +29 -9
  55. package/dist/src/client.d.ts.map +1 -1
  56. package/dist/src/client.js +180 -52
  57. package/dist/src/client.js.map +1 -1
  58. package/dist/src/credential-alias.d.ts +7 -0
  59. package/dist/src/credential-alias.d.ts.map +1 -0
  60. package/dist/src/credential-alias.js +21 -0
  61. package/dist/src/credential-alias.js.map +1 -0
  62. package/dist/src/field-catalog-commands.d.ts.map +1 -1
  63. package/dist/src/field-catalog-commands.js +30 -8
  64. package/dist/src/field-catalog-commands.js.map +1 -1
  65. package/dist/src/field-catalog.d.ts +30 -11
  66. package/dist/src/field-catalog.d.ts.map +1 -1
  67. package/dist/src/field-catalog.js +56 -1
  68. package/dist/src/field-catalog.js.map +1 -1
  69. package/dist/src/group-directory-commands.d.ts.map +1 -1
  70. package/dist/src/group-directory-commands.js +18 -9
  71. package/dist/src/group-directory-commands.js.map +1 -1
  72. package/dist/src/group-directory.d.ts +13 -4
  73. package/dist/src/group-directory.d.ts.map +1 -1
  74. package/dist/src/group-directory.js +41 -2
  75. package/dist/src/group-directory.js.map +1 -1
  76. package/dist/src/index.d.ts +20 -15
  77. package/dist/src/index.d.ts.map +1 -1
  78. package/dist/src/index.js +19 -14
  79. package/dist/src/index.js.map +1 -1
  80. package/dist/src/issue-attachments-commands.d.ts.map +1 -1
  81. package/dist/src/issue-attachments-commands.js +7 -4
  82. package/dist/src/issue-attachments-commands.js.map +1 -1
  83. package/dist/src/issue-attachments.d.ts +5 -3
  84. package/dist/src/issue-attachments.d.ts.map +1 -1
  85. package/dist/src/issue-attachments.js +12 -3
  86. package/dist/src/issue-attachments.js.map +1 -1
  87. package/dist/src/issue-context-commands.d.ts.map +1 -1
  88. package/dist/src/issue-context-commands.js +42 -6
  89. package/dist/src/issue-context-commands.js.map +1 -1
  90. package/dist/src/issue-context.d.ts +20 -4
  91. package/dist/src/issue-context.d.ts.map +1 -1
  92. package/dist/src/issue-context.js +43 -3
  93. package/dist/src/issue-context.js.map +1 -1
  94. package/dist/src/issue-fields-commands.d.ts.map +1 -1
  95. package/dist/src/issue-fields-commands.js +26 -5
  96. package/dist/src/issue-fields-commands.js.map +1 -1
  97. package/dist/src/issue-fields.d.ts +30 -10
  98. package/dist/src/issue-fields.d.ts.map +1 -1
  99. package/dist/src/issue-fields.js +71 -9
  100. package/dist/src/issue-fields.js.map +1 -1
  101. package/dist/src/issue-query-commands.d.ts.map +1 -1
  102. package/dist/src/issue-query-commands.js +28 -6
  103. package/dist/src/issue-query-commands.js.map +1 -1
  104. package/dist/src/issue-query.d.ts +12 -1
  105. package/dist/src/issue-query.d.ts.map +1 -1
  106. package/dist/src/issue-query.js +24 -4
  107. package/dist/src/issue-query.js.map +1 -1
  108. package/dist/src/issue-reactions-commands.d.ts +2 -0
  109. package/dist/src/issue-reactions-commands.d.ts.map +1 -0
  110. package/dist/src/issue-reactions-commands.js +11 -0
  111. package/dist/src/issue-reactions-commands.js.map +1 -0
  112. package/dist/src/issue-reactions.d.ts +6 -0
  113. package/dist/src/issue-reactions.d.ts.map +1 -0
  114. package/dist/src/issue-reactions.js +15 -0
  115. package/dist/src/issue-reactions.js.map +1 -0
  116. package/dist/src/issue-relations-commands.d.ts.map +1 -1
  117. package/dist/src/issue-relations-commands.js +23 -10
  118. package/dist/src/issue-relations-commands.js.map +1 -1
  119. package/dist/src/issue-relations.d.ts +24 -13
  120. package/dist/src/issue-relations.d.ts.map +1 -1
  121. package/dist/src/issue-relations.js +50 -10
  122. package/dist/src/issue-relations.js.map +1 -1
  123. package/dist/src/issue-time-commands.d.ts.map +1 -1
  124. package/dist/src/issue-time-commands.js +20 -6
  125. package/dist/src/issue-time-commands.js.map +1 -1
  126. package/dist/src/issue-time.d.ts +18 -4
  127. package/dist/src/issue-time.d.ts.map +1 -1
  128. package/dist/src/issue-time.js +22 -4
  129. package/dist/src/issue-time.js.map +1 -1
  130. package/dist/src/organization-commands.d.ts +2 -0
  131. package/dist/src/organization-commands.d.ts.map +1 -0
  132. package/dist/src/organization-commands.js +14 -0
  133. package/dist/src/organization-commands.js.map +1 -0
  134. package/dist/src/organizations.d.ts +7 -0
  135. package/dist/src/organizations.d.ts.map +1 -0
  136. package/dist/src/organizations.js +16 -0
  137. package/dist/src/organizations.js.map +1 -0
  138. package/dist/src/presentation.d.ts +39 -1
  139. package/dist/src/presentation.d.ts.map +1 -1
  140. package/dist/src/presentation.js +254 -0
  141. package/dist/src/presentation.js.map +1 -1
  142. package/dist/src/server-settings-commands.d.ts +2 -0
  143. package/dist/src/server-settings-commands.d.ts.map +1 -0
  144. package/dist/src/server-settings-commands.js +95 -0
  145. package/dist/src/server-settings-commands.js.map +1 -0
  146. package/dist/src/server-settings.d.ts +18 -0
  147. package/dist/src/server-settings.d.ts.map +1 -0
  148. package/dist/src/server-settings.js +101 -0
  149. package/dist/src/server-settings.js.map +1 -0
  150. package/dist/src/time-settings-commands.d.ts.map +1 -1
  151. package/dist/src/time-settings-commands.js +15 -8
  152. package/dist/src/time-settings-commands.js.map +1 -1
  153. package/dist/src/time-settings.d.ts +15 -7
  154. package/dist/src/time-settings.d.ts.map +1 -1
  155. package/dist/src/time-settings.js +35 -1
  156. package/dist/src/time-settings.js.map +1 -1
  157. package/dist/src/user-directory-commands.d.ts.map +1 -1
  158. package/dist/src/user-directory-commands.js +80 -7
  159. package/dist/src/user-directory-commands.js.map +1 -1
  160. package/dist/src/user-directory.d.ts +26 -8
  161. package/dist/src/user-directory.d.ts.map +1 -1
  162. package/dist/src/user-directory.js +80 -1
  163. package/dist/src/user-directory.js.map +1 -1
  164. package/package.json +3 -2
@@ -1,2 +1,3 @@
1
1
  export declare const articlesExtraChildren: import("@eyeauras/cli-factory").CommandDefinition[];
2
+ export declare const articleReactionCommand: import("@eyeauras/cli-factory").CommandDefinition;
2
3
  //# sourceMappingURL=article-extras-commands.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"article-extras-commands.d.ts","sourceRoot":"","sources":["../../src/article-extras-commands.ts"],"names":[],"mappings":"AAcA,eAAO,MAAM,qBAAqB,qDAiCjC,CAAC"}
1
+ {"version":3,"file":"article-extras-commands.d.ts","sourceRoot":"","sources":["../../src/article-extras-commands.ts"],"names":[],"mappings":"AAkBA,eAAO,MAAM,qBAAqB,qDA8CjC,CAAC;AAGF,eAAO,MAAM,sBAAsB,mDAMjC,CAAC"}
@@ -1,16 +1,24 @@
1
1
  import { command } from "@eyeauras/cli-factory";
2
2
  import { inputFilePath } from "./client.js";
3
3
  import { articleAttachmentDownloadCommand } from "./attachment-download-commands.js";
4
- import { pagedRead, projectedRead, updateCommand, projectionOptions, readOptions } from "./cli-support.js";
5
- import { getArticleAttachment, getChildArticle, getParentArticle, listArticleAttachments, listChildArticles, uploadArticleAttachment, } from "./article-extras.js";
6
- import { articleRecord, articleTable, attachmentRecord, attachmentTable, uploadedAttachments, withView } from "./presentation.js";
4
+ import { projectedDelete, pagedRead, projectedBodyUpdate, projectedRead, updateCommand, projectionOptions, readOptions, writeOptions, notificationOptions } from "./cli-support.js";
5
+ import { addChildArticle, updateChildArticle, removeChildArticle, getArticleAttachment, listArticleReactions, getArticleReaction, addArticleReaction, removeArticleReaction, listArticleTags, getArticleTag, addArticleTag, removeArticleTag, getChildArticle, getParentArticle, listArticleAttachments, listChildArticles, uploadArticleAttachment, updateArticleAttachment, deleteArticleAttachment, } from "./article-extras.js";
6
+ import { mutationWritten, articleRecord, articleTable, attachmentRecord, attachmentTable, uploadedAttachments, reactionRecord, reactionTable, updatedAttachment, tagTable, tagRecord, tagAdded, arg, done, withView } from "./presentation.js";
7
7
  export const articlesExtraChildren = [
8
+ command("tag", "Read and change article tag relations", [
9
+ pagedRead("list <article>", "List article tags", listArticleTags, tagTable),
10
+ projectedRead("get <article> <tag>", "Show an article tag", getArticleTag, tagRecord),
11
+ projectedBodyUpdate("add <article>", "Assign a tag to the article", addArticleTag, undefined, tagAdded),
12
+ withView(done(context => `Removed tag ${arg(context, "tag")} from article ${arg(context, "article")}.`), updateCommand("remove <article> <tag>", "Remove an article tag relation", (client, { args, options }) => removeArticleTag(client, args.article, args.tag, readOptions(options)), projectionOptions)),
13
+ ]),
8
14
  command("attachment", "Inspect, upload or download article attachments", [
9
15
  articleAttachmentDownloadCommand,
16
+ projectedBodyUpdate("update <article> <attachmentID>", "Update article attachment metadata", updateArticleAttachment, undefined, updatedAttachment),
17
+ withView(done(context => `Deleted attachment ${arg(context, "attachment")} from article ${arg(context, "article")}.`), updateCommand("delete <article> <attachment>", "Delete an article attachment", (client, { args, options }) => deleteArticleAttachment(client, args.article, args.attachment, readOptions(options)), projectionOptions)),
10
18
  pagedRead("list <article>", "List attachments", listArticleAttachments, attachmentTable),
11
19
  projectedRead("get <article> <attachment>", "Show an attachment", getArticleAttachment, attachmentRecord),
12
- withView(uploadedAttachments, updateCommand("upload <article>", "Upload a file to the article", async (connection, { args, options }, context) => uploadArticleAttachment(connection, args.article, String(options.file), readOptions(options)), [
13
- ...projectionOptions,
20
+ withView(uploadedAttachments, updateCommand("upload <article>", "Upload a file to the article", async (connection, { args, options }, context) => uploadArticleAttachment(connection, args.article, String(options.file), writeOptions(options)), [
21
+ ...projectionOptions, ...notificationOptions,
14
22
  {
15
23
  flags: "--file <path>",
16
24
  description: "Local file to upload",
@@ -19,7 +27,10 @@ export const articlesExtraChildren = [
19
27
  },
20
28
  ])),
21
29
  ]),
22
- command("child", "Inspect an article's child articles", [
30
+ command("child", "Manage an article's child articles", [
31
+ projectedBodyUpdate("add <article>", "Add a child article", addChildArticle, undefined, mutationWritten("Added child article", undefined, "article"), notificationOptions),
32
+ projectedBodyUpdate("update <article> <child>", "Update a child article", updateChildArticle, undefined, mutationWritten("Updated child article", "child", "article"), notificationOptions),
33
+ projectedDelete("remove <article> <child>", "Remove the parent-child link", removeChildArticle, mutationWritten("Unlinked child article", "child", "article")),
23
34
  pagedRead("list <article>", "List the immediate child articles", listChildArticles, articleTable),
24
35
  projectedRead("get <article> <child>", "Show a child article", getChildArticle, articleRecord),
25
36
  ]),
@@ -27,4 +38,10 @@ export const articlesExtraChildren = [
27
38
  projectedRead("get <article>", "Show the parent article", getParentArticle, articleRecord),
28
39
  ]),
29
40
  ];
41
+ export const articleReactionCommand = command("reaction", "Read and change article comment reactions", [
42
+ pagedRead("list <article> <comment>", "List article comment reactions", listArticleReactions, reactionTable),
43
+ projectedRead("get <article> <comment> <reaction>", "Show an article comment reaction", getArticleReaction, reactionRecord),
44
+ projectedBodyUpdate("add <article> <comment>", "Add an article comment reaction", addArticleReaction, undefined, reactionRecord),
45
+ withView(done(context => `Removed reaction ${arg(context, "reaction")}.`), updateCommand("remove <article> <comment> <reaction>", "Remove an article comment reaction", (client, { args, options }) => removeArticleReaction(client, args.article, args.comment, args.reaction, readOptions(options)), projectionOptions)),
46
+ ]);
30
47
  //# sourceMappingURL=article-extras-commands.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"article-extras-commands.js","sourceRoot":"","sources":["../../src/article-extras-commands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,gCAAgC,EAAE,MAAM,mCAAmC,CAAC;AACrF,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,aAAa,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC3G,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,gBAAgB,EAChB,sBAAsB,EACtB,iBAAiB,EACjB,uBAAuB,GACxB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,mBAAmB,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAElI,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,OAAO,CAAC,YAAY,EAAE,iDAAiD,EAAE;QACvE,gCAAgC;QAChC,SAAS,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,eAAe,CAAC;QACxF,aAAa,CAAC,4BAA4B,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,gBAAgB,CAAC;QACzG,QAAQ,CAAC,mBAAmB,EAAE,aAAa,CACzC,kBAAkB,EAClB,8BAA8B,EAC9B,KAAK,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,CAC/C,uBAAuB,CACrB,UAAU,EACV,IAAI,CAAC,OAAO,EACZ,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EACpB,WAAW,CAAC,OAAO,CAAC,CACrB,EACH;YACI,GAAG,iBAAiB;YACpB;gBACE,KAAK,EAAE,eAAe;gBACtB,WAAW,EAAE,sBAAsB;gBACnC,QAAQ,EAAE,IAAI;gBACd,KAAK,EAAE,aAAa;aACrB;SACF,CACJ,CAAC;KACH,CAAC;IACF,OAAO,CAAC,OAAO,EAAE,qCAAqC,EAAE;QACtD,SAAS,CAAC,gBAAgB,EAAE,mCAAmC,EAAE,iBAAiB,EAAE,YAAY,CAAC;QACjG,aAAa,CAAC,uBAAuB,EAAE,sBAAsB,EAAE,eAAe,EAAE,aAAa,CAAC;KAC/F,CAAC;IACF,OAAO,CAAC,QAAQ,EAAE,6BAA6B,EAAE;QAC/C,aAAa,CAAC,eAAe,EAAE,yBAAyB,EAAE,gBAAgB,EAAE,aAAa,CAAC;KAC3F,CAAC;CACH,CAAC"}
1
+ {"version":3,"file":"article-extras-commands.js","sourceRoot":"","sources":["../../src/article-extras-commands.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,21 @@
1
- import { type Connection, type PageOptions, type ProjectionOptions, type YouTrackObject } from "./client.js";
1
+ import { type WriteOptions, type Connection, type PageOptions, type ProjectionOptions, type YouTrackObject } from "./client.js";
2
2
  export declare const listArticleAttachments: (connection: Connection, articleID: string, options?: PageOptions | undefined) => Promise<import("./client.js").YouTrackPage>;
3
3
  export declare const getArticleAttachment: (connection: Connection, articleID: string, attachmentID: string, options?: ProjectionOptions | undefined) => Promise<YouTrackObject>;
4
- export declare function uploadArticleAttachment(connection: Connection, articleID: string, filePath: string, options?: ProjectionOptions): Promise<YouTrackObject[] | null>;
4
+ export declare function uploadArticleAttachment(connection: Connection, articleID: string, filePath: string, options?: WriteOptions): Promise<YouTrackObject[] | null>;
5
5
  export declare const listChildArticles: (connection: Connection, articleID: string, options?: PageOptions | undefined) => Promise<import("./client.js").YouTrackPage>;
6
6
  export declare const getChildArticle: (connection: Connection, articleID: string, childID: string, options?: ProjectionOptions | undefined) => Promise<YouTrackObject>;
7
7
  export declare function getParentArticle(connection: Connection, articleID: string, options?: ProjectionOptions): Promise<YouTrackObject | null>;
8
+ export declare const listArticleTags: (connection: Connection, articleID: string, options?: PageOptions | undefined) => Promise<import("./client.js").YouTrackPage>;
9
+ export declare const getArticleTag: (connection: Connection, articleID: string, tagID: string, options?: ProjectionOptions | undefined) => Promise<YouTrackObject>;
10
+ export declare function addArticleTag(connection: Connection, articleID: string, input: unknown, options?: ProjectionOptions): Promise<YouTrackObject | null>;
11
+ export declare function removeArticleTag(connection: Connection, articleID: string, tagID: string, options?: ProjectionOptions): Promise<YouTrackObject | null>;
12
+ export declare function updateArticleAttachment(connection: Connection, articleID: string, attachmentID: string, input: unknown, options?: ProjectionOptions): Promise<YouTrackObject | null>;
13
+ export declare function deleteArticleAttachment(connection: Connection, articleID: string, attachmentID: string, options?: ProjectionOptions): Promise<YouTrackObject | null>;
14
+ export declare const listArticleReactions: (connection: Connection, articleID: string, commentID: string, options?: PageOptions | undefined) => Promise<import("./client.js").YouTrackPage>;
15
+ export declare const getArticleReaction: (connection: Connection, articleID: string, commentID: string, reactionID: string, options?: ProjectionOptions | undefined) => Promise<YouTrackObject>;
16
+ export declare function addArticleReaction(connection: Connection, articleID: string, commentID: string, input: unknown, options?: ProjectionOptions): Promise<YouTrackObject | null>;
17
+ export declare function removeArticleReaction(connection: Connection, articleID: string, commentID: string, reactionID: string, options?: ProjectionOptions): Promise<YouTrackObject | null>;
18
+ export declare function addChildArticle(connection: Connection, articleID: string, input: unknown, options?: WriteOptions): Promise<YouTrackObject | null>;
19
+ export declare function updateChildArticle(connection: Connection, articleID: string, childID: string, input: unknown, options?: WriteOptions): Promise<YouTrackObject | null>;
20
+ export declare function removeChildArticle(connection: Connection, articleID: string, childID: string, options?: ProjectionOptions): Promise<YouTrackObject | null>;
8
21
  //# sourceMappingURL=article-extras.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"article-extras.d.ts","sourceRoot":"","sources":["../../src/article-extras.ts"],"names":[],"mappings":"AACA,OAAO,EAOL,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACpB,MAAM,aAAa,CAAC;AAUrB,eAAO,MAAM,sBAAsB,+HAGlC,CAAC;AACF,eAAO,MAAM,oBAAoB,uIAIhC,CAAC;AAEF,wBAAsB,uBAAuB,CAC3C,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,iBAAsB,GAC9B,OAAO,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,CAKlC;AAED,eAAO,MAAM,iBAAiB,+HAG7B,CAAC;AACF,eAAO,MAAM,eAAe,kIAI3B,CAAC;AAEF,wBAAsB,gBAAgB,CACpC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,iBAAsB,GAC9B,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAMhC"}
1
+ {"version":3,"file":"article-extras.d.ts","sourceRoot":"","sources":["../../src/article-extras.ts"],"names":[],"mappings":"AACA,OAAO,EAYL,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACpB,MAAM,aAAa,CAAC;AAUrB,eAAO,MAAM,sBAAsB,+HAGlC,CAAC;AACF,eAAO,MAAM,oBAAoB,uIAIhC,CAAC;AAEF,wBAAsB,uBAAuB,CAC3C,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,YAAiB,GACzB,OAAO,CAAC,cAAc,EAAE,GAAG,IAAI,CAAC,CAKlC;AAED,eAAO,MAAM,iBAAiB,+HAG7B,CAAC;AACF,eAAO,MAAM,eAAe,kIAI3B,CAAC;AAEF,wBAAsB,gBAAgB,CACpC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,iBAAsB,GAC9B,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAMhC;AAID,eAAO,MAAM,eAAe,+HAAuF,CAAC;AACpH,eAAO,MAAM,aAAa,gIAAgI,CAAC;AAC3J,wBAAsB,aAAa,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,GAAE,iBAAsB,kCAG7H;AACD,wBAAsB,gBAAgB,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,iBAAsB,kCAE/H;AAGD,wBAAsB,uBAAuB,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,GAAE,iBAAsB,kCAK7J;AACD,wBAAsB,uBAAuB,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,GAAE,iBAAsB,kCAE7I;AAKD,eAAO,MAAM,oBAAoB,kJAAgE,CAAC;AAClG,eAAO,MAAM,kBAAkB,wJAA6L,CAAC;AAC7N,wBAAsB,kBAAkB,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,GAAE,iBAAsB,kCAGrJ;AACD,wBAAsB,qBAAqB,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,GAAE,iBAAsB,kCAE5J;AASD,wBAAsB,eAAe,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,GAAE,YAAiB,kCAE1H;AACD,wBAAsB,kBAAkB,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,GAAE,YAAiB,kCAE9I;AACD,wBAAsB,kBAAkB,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,iBAAsB,kCAEnI"}
@@ -1,5 +1,5 @@
1
1
  import { attachmentForm } from "./attachment-form.js";
2
- import { encodedID, fields, readCollectionAt, readNullableObject, readObjectAt, uploadObjectCollection, } from "./client.js";
2
+ import { encodedID, mutate, mutationBody, nullableText, requiredText, deleteObject, fields, readCollectionAt, readNullableObject, readObjectAt, uploadObjectCollection, } from "./client.js";
3
3
  const attachmentFields = "id,name,size,mimeType";
4
4
  const articleListFields = "id,idReadable,summary,project(id,shortName),updated";
5
5
  const articleDetailFields = `${articleListFields},content,parentArticle(id,idReadable),created`;
@@ -12,11 +12,58 @@ export async function uploadArticleAttachment(connection, articleID, filePath, o
12
12
  const path = `${articlePath(articleID)}/attachments`;
13
13
  const projection = fields(options, attachmentFields);
14
14
  const form = await attachmentForm(filePath);
15
- return uploadObjectCollection(connection, path, form, projection);
15
+ return uploadObjectCollection(connection, path, form, projection, options);
16
16
  }
17
17
  export const listChildArticles = readCollectionAt((articleID) => `${articlePath(articleID)}/childArticles`, articleListFields);
18
18
  export const getChildArticle = readObjectAt((articleID, childID) => `${articlePath(articleID)}/childArticles/${encodedID(childID, "child article ID")}`, articleDetailFields);
19
19
  export async function getParentArticle(connection, articleID, options = {}) {
20
20
  return readNullableObject(connection, `${articlePath(articleID)}/parentArticle`, { fields: fields(options, articleDetailFields) });
21
21
  }
22
+ const tagFields = "id,name,owner(id,login)";
23
+ export const listArticleTags = readCollectionAt((articleID) => `${articlePath(articleID)}/tags`, tagFields);
24
+ export const getArticleTag = readObjectAt((articleID, tagID) => `${articlePath(articleID)}/tags/${encodedID(tagID, "tag ID")}`, tagFields);
25
+ export async function addArticleTag(connection, articleID, input, options = {}) {
26
+ const body = mutationBody(input);
27
+ return mutate(connection, `${articlePath(articleID)}/tags`, { ...body, id: requiredText(body.id, "tag ID") }, fields(options, tagFields));
28
+ }
29
+ export async function removeArticleTag(connection, articleID, tagID, options = {}) {
30
+ return deleteObject(connection, `${articlePath(articleID)}/tags/${encodedID(tagID, "tag ID")}`, options);
31
+ }
32
+ export async function updateArticleAttachment(connection, articleID, attachmentID, input, options = {}) {
33
+ const body = mutationBody(input);
34
+ return mutate(connection, `${articlePath(articleID)}/attachments/${encodedID(attachmentID, "attachment ID")}`, {
35
+ ...body, ...(Object.hasOwn(body, "name") ? { name: requiredText(body.name, "name") } : {}),
36
+ }, fields(options, attachmentFields));
37
+ }
38
+ export async function deleteArticleAttachment(connection, articleID, attachmentID, options = {}) {
39
+ return deleteObject(connection, `${articlePath(articleID)}/attachments/${encodedID(attachmentID, "attachment ID")}`, options);
40
+ }
41
+ const articleReactionFields = "id,reaction,author(id,login)";
42
+ const articleReactionsPath = (articleID, commentID) => `${articlePath(articleID)}/comments/${encodedID(commentID, "comment ID")}/reactions`;
43
+ export const listArticleReactions = readCollectionAt(articleReactionsPath, articleReactionFields);
44
+ export const getArticleReaction = readObjectAt((articleID, commentID, reactionID) => `${articleReactionsPath(articleID, commentID)}/${encodedID(reactionID, "reaction ID")}`, articleReactionFields);
45
+ export async function addArticleReaction(connection, articleID, commentID, input, options = {}) {
46
+ const body = mutationBody(input);
47
+ return mutate(connection, articleReactionsPath(articleID, commentID), { ...body, reaction: nullableText(body.reaction, "reaction") }, fields(options, articleReactionFields));
48
+ }
49
+ export async function removeArticleReaction(connection, articleID, commentID, reactionID, options = {}) {
50
+ return deleteObject(connection, `${articleReactionsPath(articleID, commentID)}/${encodedID(reactionID, "reaction ID")}`, options);
51
+ }
52
+ function childArticleBody(input) {
53
+ const body = mutationBody(input);
54
+ if (Object.hasOwn(body, "summary"))
55
+ nullableText(body.summary, "summary");
56
+ if (Object.hasOwn(body, "content"))
57
+ nullableText(body.content, "article content");
58
+ return body;
59
+ }
60
+ export async function addChildArticle(connection, articleID, input, options = {}) {
61
+ return mutate(connection, `${articlePath(articleID)}/childArticles`, childArticleBody(input), fields(options, articleDetailFields), options);
62
+ }
63
+ export async function updateChildArticle(connection, articleID, childID, input, options = {}) {
64
+ return mutate(connection, `${articlePath(articleID)}/childArticles/${encodedID(childID, "child article ID")}`, childArticleBody(input), fields(options, articleDetailFields), options);
65
+ }
66
+ export async function removeChildArticle(connection, articleID, childID, options = {}) {
67
+ return deleteObject(connection, `${articlePath(articleID)}/childArticles/${encodedID(childID, "child article ID")}`, options);
68
+ }
22
69
  //# sourceMappingURL=article-extras.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"article-extras.js","sourceRoot":"","sources":["../../src/article-extras.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EACL,SAAS,EACT,MAAM,EACN,gBAAgB,EAChB,kBAAkB,EAClB,YAAY,EACZ,sBAAsB,GAKvB,MAAM,aAAa,CAAC;AAErB,MAAM,gBAAgB,GAAG,uBAAuB,CAAC;AACjD,MAAM,iBAAiB,GAAG,qDAAqD,CAAC;AAChF,MAAM,mBAAmB,GAAG,GAAG,iBAAiB,+CAA+C,CAAC;AAEhG,SAAS,WAAW,CAAC,SAAiB;IACpC,OAAO,gBAAgB,SAAS,CAAC,SAAS,EAAE,YAAY,CAAC,EAAE,CAAC;AAC9D,CAAC;AAED,MAAM,CAAC,MAAM,sBAAsB,GAAG,gBAAgB,CACpD,CAAC,SAAiB,EAAE,EAAE,CAAC,GAAG,WAAW,CAAC,SAAS,CAAC,cAAc,EAC9D,gBAAgB,CACjB,CAAC;AACF,MAAM,CAAC,MAAM,oBAAoB,GAAG,YAAY,CAC9C,CAAC,SAAiB,EAAE,YAAoB,EAAE,EAAE,CAC1C,GAAG,WAAW,CAAC,SAAS,CAAC,gBAAgB,SAAS,CAAC,YAAY,EAAE,eAAe,CAAC,EAAE,EACrF,gBAAgB,CACjB,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,UAAsB,EACtB,SAAiB,EACjB,QAAgB,EAChB,OAAO,GAAsB,EAAE;IAE/B,MAAM,IAAI,GAAG,GAAG,WAAW,CAAC,SAAS,CAAC,cAAc,CAAC;IACrD,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;IACrD,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,QAAQ,CAAC,CAAC;IAC5C,OAAO,sBAAsB,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;AACpE,CAAC;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAG,gBAAgB,CAC/C,CAAC,SAAiB,EAAE,EAAE,CAAC,GAAG,WAAW,CAAC,SAAS,CAAC,gBAAgB,EAChE,iBAAiB,CAClB,CAAC;AACF,MAAM,CAAC,MAAM,eAAe,GAAG,YAAY,CACzC,CAAC,SAAiB,EAAE,OAAe,EAAE,EAAE,CACrC,GAAG,WAAW,CAAC,SAAS,CAAC,kBAAkB,SAAS,CAAC,OAAO,EAAE,kBAAkB,CAAC,EAAE,EACrF,mBAAmB,CACpB,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,UAAsB,EACtB,SAAiB,EACjB,OAAO,GAAsB,EAAE;IAE/B,OAAO,kBAAkB,CACvB,UAAU,EACV,GAAG,WAAW,CAAC,SAAS,CAAC,gBAAgB,EACzC,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,EAAE,mBAAmB,CAAC,EAAE,CACjD,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"article-extras.js","sourceRoot":"","sources":["../../src/article-extras.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"articles-commands.d.ts","sourceRoot":"","sources":["../../src/articles-commands.ts"],"names":[],"mappings":"AA4BA,eAAO,MAAM,oBAAoB,qDAiChC,CAAC;AAEF,eAAO,MAAM,uBAAuB,qDAInC,CAAC"}
1
+ {"version":3,"file":"articles-commands.d.ts","sourceRoot":"","sources":["../../src/articles-commands.ts"],"names":[],"mappings":"AA+BA,eAAO,MAAM,oBAAoB,qDAqChC,CAAC;AAEF,eAAO,MAAM,uBAAuB,qDAInC,CAAC"}
@@ -1,21 +1,24 @@
1
1
  import { command } from "@eyeauras/cli-factory";
2
- import { articlesExtraChildren } from "./article-extras-commands.js";
3
- import { pagedRead, projectedBodyUpdate, projectedRead, readCommand } from "./cli-support.js";
4
- import { addArticleComment, createArticle, exportArticle, getArticle, getArticleComment, listArticleComments, listArticles, listProjectArticles, updateArticle, updateArticleComment, } from "./articles.js";
5
- import { articleRecord, articleTable, commentAdded, commentShown, commentTable, commentUpdated, createdArticle, exportedArticle, updatedArticle, withView, } from "./presentation.js";
2
+ import { articlesExtraChildren, articleReactionCommand } from "./article-extras-commands.js";
3
+ import { projectedDelete, pagedRead, projectedBodyUpdate, projectedRead, readCommand, notificationOptions, draftOptions } from "./cli-support.js";
4
+ import { deleteArticle, deleteArticleComment, addArticleComment, createArticle, exportArticle, getArticle, getArticleComment, listArticleComments, listArticles, listProjectArticles, updateArticle, updateArticleComment, } from "./articles.js";
5
+ import { mutationWritten, articleRecord, articleTable, commentAdded, commentShown, commentTable, commentUpdated, createdArticle, exportedArticle, updatedArticle, withView, } from "./presentation.js";
6
6
  export const articlesRootCommands = [
7
7
  command("article", "Read and write knowledge-base articles", [
8
+ projectedDelete("delete <article>", "Delete a selected article", deleteArticle, mutationWritten("Deleted article", "article")),
8
9
  ...articlesExtraChildren,
9
10
  pagedRead("list", "List articles", listArticles, articleTable),
10
11
  projectedRead("get <article>", "Show an article", getArticle, articleRecord),
11
12
  withView(exportedArticle, readCommand("export <article>", "Save the article content as a file", async (connection, { args, options }, context) => exportArticle(connection, args.article, context.cwd, typeof options.output === "string" ? options.output : undefined), [{ flags: "--output <path>", description: "Save to a relative or absolute path (default: <idReadable>.md)" }])),
12
- projectedBodyUpdate("create", "Create an article", createArticle, "content", createdArticle),
13
- projectedBodyUpdate("update <article>", "Update the summary or content", updateArticle, "content", updatedArticle),
13
+ projectedBodyUpdate("create", "Create an article", createArticle, "content", createdArticle, [...draftOptions, ...notificationOptions]),
14
+ projectedBodyUpdate("update <article>", "Update the summary or content", updateArticle, "content", updatedArticle, notificationOptions),
14
15
  command("comment", "Read and write article comments", [
16
+ projectedDelete("delete <article> <comment>", "Delete a selected article comment", deleteArticleComment, mutationWritten("Deleted comment", "comment", "article")),
17
+ articleReactionCommand,
15
18
  pagedRead("list <article>", "List comments", listArticleComments, commentTable),
16
19
  projectedRead("get <article> <comment>", "Show a comment", getArticleComment, commentShown),
17
- projectedBodyUpdate("add <article>", "Add a comment", addArticleComment, "text", commentAdded("article")),
18
- projectedBodyUpdate("update <article> <comment>", "Replace a comment's text", updateArticleComment, "text", commentUpdated("article", "comment")),
20
+ projectedBodyUpdate("add <article>", "Add a comment", addArticleComment, "text", commentAdded("article"), [...draftOptions, ...notificationOptions]),
21
+ projectedBodyUpdate("update <article> <comment>", "Replace a comment's text", updateArticleComment, "text", commentUpdated("article", "comment"), notificationOptions),
19
22
  ]),
20
23
  ], {
21
24
  examples: ["article list --page-size 20", "article get KB-A-7", "article export KB-A-7 --output onboarding.md"],
@@ -1 +1 @@
1
- {"version":3,"file":"articles-commands.js","sourceRoot":"","sources":["../../src/articles-commands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC9F,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,aAAa,EACb,UAAU,EACV,iBAAiB,EACjB,mBAAmB,EACnB,YAAY,EACZ,mBAAmB,EACnB,aAAa,EACb,oBAAoB,GACrB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,cAAc,EACd,eAAe,EACf,cAAc,EACd,QAAQ,GACT,MAAM,mBAAmB,CAAC;AAE3B,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,OAAO,CAAC,SAAS,EAAE,wCAAwC,EAAE;QAC3D,GAAG,qBAAqB;QACxB,SAAS,CAAC,MAAM,EAAE,eAAe,EAAE,YAAY,EAAE,YAAY,CAAC;QAC9D,aAAa,CAAC,eAAe,EAAE,iBAAiB,EAAE,UAAU,EAAE,aAAa,CAAC;QAC5E,QAAQ,CAAC,eAAe,EAAE,WAAW,CACnC,kBAAkB,EAClB,oCAAoC,EACpC,KAAK,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,aAAa,CAC7D,UAAU,EACV,IAAI,CAAC,OAAO,EACZ,OAAO,CAAC,GAAG,EACX,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAChE,EACD,CAAC,EAAE,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAE,gEAAgE,EAAE,CAAC,CAC9G,CAAC;QACF,mBAAmB,CAAC,QAAQ,EAAE,mBAAmB,EAAE,aAAa,EAAE,SAAS,EAAE,cAAc,CAAC;QAC5F,mBAAmB,CAAC,kBAAkB,EAAE,+BAA+B,EAAE,aAAa,EAAE,SAAS,EAAE,cAAc,CAAC;QAClH,OAAO,CAAC,SAAS,EAAE,iCAAiC,EAAE;YACpD,SAAS,CAAC,gBAAgB,EAAE,eAAe,EAAE,mBAAmB,EAAE,YAAY,CAAC;YAC/E,aAAa,CAAC,yBAAyB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,YAAY,CAAC;YAC3F,mBAAmB,CAAC,eAAe,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC;YACzG,mBAAmB,CACjB,4BAA4B,EAC5B,0BAA0B,EAC1B,oBAAoB,EACpB,MAAM,EACN,cAAc,CAAC,SAAS,EAAE,SAAS,CAAC,CACrC;SACF,CAAC;KACH,EAAE;QACD,QAAQ,EAAE,CAAC,6BAA6B,EAAE,oBAAoB,EAAE,8CAA8C,CAAC;KAChH,CAAC;CACH,CAAC;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,OAAO,CAAC,SAAS,EAAE,gCAAgC,EAAE;QACnD,SAAS,CAAC,gBAAgB,EAAE,6BAA6B,EAAE,mBAAmB,EAAE,YAAY,CAAC;KAC9F,CAAC;CACH,CAAC"}
1
+ {"version":3,"file":"articles-commands.js","sourceRoot":"","sources":["../../src/articles-commands.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { type PublishedFile } from "@eyeauras/cli-factory";
2
- import { type Connection, type ProjectionOptions, type YouTrackObject } from "./client.js";
2
+ import { type Connection, type ProjectionOptions, type WriteOptions, type YouTrackObject } from "./client.js";
3
3
  export declare const listArticles: (connection: Connection, options?: import("./client.js").PageOptions | undefined) => Promise<import("./client.js").YouTrackPage>;
4
4
  export declare const getArticle: (connection: Connection, articleID: string, options?: ProjectionOptions | undefined) => Promise<YouTrackObject>;
5
5
  /**
@@ -10,11 +10,13 @@ export declare function exportArticle(connection: Connection, articleID: string,
10
10
  id: string;
11
11
  redacted: boolean;
12
12
  } & PublishedFile>;
13
- export declare function createArticle(connection: Connection, input: unknown, options?: ProjectionOptions): Promise<YouTrackObject | null>;
14
- export declare function updateArticle(connection: Connection, articleID: string, input: unknown, options?: ProjectionOptions): Promise<YouTrackObject | null>;
13
+ export declare function createArticle(connection: Connection, input: unknown, options?: WriteOptions): Promise<YouTrackObject | null>;
14
+ export declare function updateArticle(connection: Connection, articleID: string, input: unknown, options?: WriteOptions): Promise<YouTrackObject | null>;
15
15
  export declare const listArticleComments: (connection: Connection, articleID: string, options?: import("./client.js").PageOptions | undefined) => Promise<import("./client.js").YouTrackPage>;
16
16
  export declare const getArticleComment: (connection: Connection, articleID: string, commentID: string, options?: ProjectionOptions | undefined) => Promise<YouTrackObject>;
17
- export declare function addArticleComment(connection: Connection, articleID: string, input: unknown, options?: ProjectionOptions): Promise<YouTrackObject | null>;
18
- export declare function updateArticleComment(connection: Connection, articleID: string, commentID: string, input: unknown, options?: ProjectionOptions): Promise<YouTrackObject | null>;
17
+ export declare function addArticleComment(connection: Connection, articleID: string, input: unknown, options?: WriteOptions): Promise<YouTrackObject | null>;
18
+ export declare function updateArticleComment(connection: Connection, articleID: string, commentID: string, input: unknown, options?: WriteOptions): Promise<YouTrackObject | null>;
19
19
  export declare const listProjectArticles: (connection: Connection, projectID: string, options?: import("./client.js").PageOptions | undefined) => Promise<import("./client.js").YouTrackPage>;
20
+ export declare function deleteArticleComment(connection: Connection, articleID: string, commentID: string, options?: ProjectionOptions): Promise<YouTrackObject | null>;
21
+ export declare function deleteArticle(connection: Connection, articleID: string, options?: ProjectionOptions): Promise<YouTrackObject | null>;
20
22
  //# sourceMappingURL=articles.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"articles.d.ts","sourceRoot":"","sources":["../../src/articles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,EASL,KAAK,UAAU,EACf,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACpB,MAAM,aAAa,CAAC;AAWrB,eAAO,MAAM,YAAY,kIAAsD,CAAC;AAChF,eAAO,MAAM,UAAU,iHAAiD,CAAC;AAEzE;;;GAGG;AACH,wBAAsB,aAAa,CACjC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAE,GAAG,aAAa,CAAC,CAc5D;AAED,wBAAsB,aAAa,CACjC,UAAU,EAAE,UAAU,EACtB,KAAK,EAAE,OAAO,EACd,OAAO,GAAE,iBAAsB,GAC9B,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAchC;AAED,wBAAsB,aAAa,CACjC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,OAAO,EACd,OAAO,GAAE,iBAAsB,GAC9B,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAYhC;AAED,eAAO,MAAM,mBAAmB,qJAG/B,CAAC;AACF,eAAO,MAAM,iBAAiB,oIAI7B,CAAC;AAEF,wBAAsB,iBAAiB,CACrC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,OAAO,EACd,OAAO,GAAE,iBAAsB,GAC9B,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAQhC;AAED,wBAAsB,oBAAoB,CACxC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,OAAO,EACd,OAAO,GAAE,iBAAsB,GAC9B,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAQhC;AAED,eAAO,MAAM,mBAAmB,qJAG/B,CAAC"}
1
+ {"version":3,"file":"articles.d.ts","sourceRoot":"","sources":["../../src/articles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAUL,KAAK,UAAU,EACf,KAAK,iBAAiB,EACtB,KAAK,YAAY,EACjB,KAAK,cAAc,EACpB,MAAM,aAAa,CAAC;AAWrB,eAAO,MAAM,YAAY,kIAAsD,CAAC;AAChF,eAAO,MAAM,UAAU,iHAAiD,CAAC;AAEzE;;;GAGG;AACH,wBAAsB,aAAa,CACjC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAE,GAAG,aAAa,CAAC,CAc5D;AAED,wBAAsB,aAAa,CACjC,UAAU,EAAE,UAAU,EACtB,KAAK,EAAE,OAAO,EACd,OAAO,GAAE,YAAiB,GACzB,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAehC;AAED,wBAAsB,aAAa,CACjC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,OAAO,EACd,OAAO,GAAE,YAAiB,GACzB,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAahC;AAED,eAAO,MAAM,mBAAmB,qJAG/B,CAAC;AACF,eAAO,MAAM,iBAAiB,oIAI7B,CAAC;AAEF,wBAAsB,iBAAiB,CACrC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,OAAO,EACd,OAAO,GAAE,YAAiB,GACzB,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAShC;AAED,wBAAsB,oBAAoB,CACxC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,OAAO,EACd,OAAO,GAAE,YAAiB,GACzB,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAShC;AAED,eAAO,MAAM,mBAAmB,qJAG/B,CAAC;AAGF,wBAAsB,oBAAoB,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,GAAE,iBAAsB,kCAEvI;AAGD,wBAAsB,aAAa,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,GAAE,iBAAsB,kCAE7G"}
@@ -1,5 +1,5 @@
1
1
  import { saveFile } from "@eyeauras/cli-factory";
2
- import { encodedID, fields, mutate, mutationBody, narrative, nullableText, readCollectionAt, readObjectAt, } from "./client.js";
2
+ import { deleteObject, encodedID, fields, mutate, mutationBody, narrative, nullableText, readCollectionAt, readObjectAt, } from "./client.js";
3
3
  const articleListFields = "id,idReadable,summary,project(id,shortName),updated";
4
4
  const articleDetailFields = `${articleListFields},content,parentArticle(id,idReadable),created`;
5
5
  const articleWriteFields = "id,idReadable,summary,updated";
@@ -30,13 +30,13 @@ export async function exportArticle(connection, articleID, cwd, output) {
30
30
  }
31
31
  export async function createArticle(connection, input, options = {}) {
32
32
  const body = mutationBody(input);
33
- const project = mutationBody(body.project);
33
+ const project = options.draftId !== undefined && body.project === undefined ? undefined : mutationBody(body.project);
34
34
  return mutate(connection, "api/articles", {
35
35
  ...body,
36
- project: { ...project, id: narrative(project.id, "project.id") },
36
+ ...(project === undefined ? {} : { project: { ...project, id: narrative(project.id, "project.id") } }),
37
37
  ...(Object.hasOwn(body, "summary") ? { summary: nullableText(body.summary, "summary") } : {}),
38
38
  ...(Object.hasOwn(body, "content") ? { content: nullableText(body.content, "article content") } : {}),
39
- }, fields(options, articleWriteFields));
39
+ }, fields(options, articleWriteFields), options);
40
40
  }
41
41
  export async function updateArticle(connection, articleID, input, options = {}) {
42
42
  const body = mutationBody(input);
@@ -44,17 +44,23 @@ export async function updateArticle(connection, articleID, input, options = {})
44
44
  ...body,
45
45
  ...(Object.hasOwn(body, "summary") ? { summary: nullableText(body.summary, "summary") } : {}),
46
46
  ...(Object.hasOwn(body, "content") ? { content: nullableText(body.content, "article content") } : {}),
47
- }, fields(options, articleWriteFields));
47
+ }, fields(options, articleWriteFields), options);
48
48
  }
49
49
  export const listArticleComments = readCollectionAt((articleID) => `${articlePath(articleID)}/comments`, articleCommentFields);
50
50
  export const getArticleComment = readObjectAt((articleID, commentID) => `${articlePath(articleID)}/comments/${encodedID(commentID, "comment ID")}`, articleCommentFields);
51
51
  export async function addArticleComment(connection, articleID, input, options = {}) {
52
52
  const body = mutationBody(input);
53
- return mutate(connection, `${articlePath(articleID)}/comments`, { ...body, text: nullableText(body.text, "text") }, fields(options, articleCommentFields));
53
+ return mutate(connection, `${articlePath(articleID)}/comments`, { ...body, ...(options.draftId === undefined || Object.hasOwn(body, "text") ? { text: nullableText(body.text, "text") } : {}) }, fields(options, articleCommentFields), options);
54
54
  }
55
55
  export async function updateArticleComment(connection, articleID, commentID, input, options = {}) {
56
56
  const body = mutationBody(input);
57
- return mutate(connection, `${articlePath(articleID)}/comments/${encodedID(commentID, "comment ID")}`, { ...body, ...(Object.hasOwn(body, "text") ? { text: nullableText(body.text, "text") } : {}) }, fields(options, articleCommentFields));
57
+ return mutate(connection, `${articlePath(articleID)}/comments/${encodedID(commentID, "comment ID")}`, { ...body, ...(Object.hasOwn(body, "text") ? { text: nullableText(body.text, "text") } : {}) }, fields(options, articleCommentFields), options);
58
58
  }
59
59
  export const listProjectArticles = readCollectionAt((projectID) => `api/admin/projects/${encodedID(projectID, "project ID")}/articles`, articleListFields);
60
+ export async function deleteArticleComment(connection, articleID, commentID, options = {}) {
61
+ return deleteObject(connection, `${articlePath(articleID)}/comments/${encodedID(commentID, "comment ID")}`, options);
62
+ }
63
+ export async function deleteArticle(connection, articleID, options = {}) {
64
+ return deleteObject(connection, articlePath(articleID), options);
65
+ }
60
66
  //# sourceMappingURL=articles.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"articles.js","sourceRoot":"","sources":["../../src/articles.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"articles.js","sourceRoot":"","sources":["../../src/articles.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare const backupCommand: import("@eyeauras/cli-factory").CommandDefinition;
2
+ //# sourceMappingURL=backup-commands.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"backup-commands.d.ts","sourceRoot":"","sources":["../../src/backup-commands.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,aAAa,mDAUxB,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { command } from "@eyeauras/cli-factory";
2
+ import { pagedRead, projectedRead, projectedBodyUpdate } from "./cli-support.js";
3
+ import { listBackupFiles, getBackupFile, getBackupSettings, getBackupStatus, updateBackupSettings } from "./backup.js";
4
+ import { backupFileTable, backupFileRecord, backupSettingsRecord, backupStatusRecord, mutationWritten } from "./presentation.js";
5
+ export const backupCommand = command("backup", "Inspect and manage database backups", [
6
+ command("file", "Inspect backup files", [
7
+ pagedRead("list", "List backup files", listBackupFiles, backupFileTable),
8
+ projectedRead("get <backup>", "Show backup file metadata", getBackupFile, backupFileRecord),
9
+ ]),
10
+ command("settings", "Inspect and manage backup settings", [
11
+ projectedRead("get", "Show backup settings", getBackupSettings, backupSettingsRecord),
12
+ projectedBodyUpdate("update", "Update backup settings", updateBackupSettings, undefined, mutationWritten("Updated backup settings")),
13
+ ]),
14
+ command("status", "Inspect backup status", [projectedRead("get", "Show backup status", getBackupStatus, backupStatusRecord)]),
15
+ ]);
16
+ //# sourceMappingURL=backup-commands.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"backup-commands.js","sourceRoot":"","sources":["../../src/backup-commands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACjF,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,iBAAiB,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACvH,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEjI,MAAM,CAAC,MAAM,aAAa,GAAG,OAAO,CAAC,QAAQ,EAAE,qCAAqC,EAAE;IACpF,OAAO,CAAC,MAAM,EAAE,sBAAsB,EAAE;QACtC,SAAS,CAAC,MAAM,EAAE,mBAAmB,EAAE,eAAe,EAAE,eAAe,CAAC;QACxE,aAAa,CAAC,cAAc,EAAE,2BAA2B,EAAE,aAAa,EAAE,gBAAgB,CAAC;KAC5F,CAAC;IACF,OAAO,CAAC,UAAU,EAAE,oCAAoC,EAAE;QACxD,aAAa,CAAC,KAAK,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,oBAAoB,CAAC;QACrF,mBAAmB,CAAC,QAAQ,EAAE,wBAAwB,EAAE,oBAAoB,EAAE,SAAS,EAAE,eAAe,CAAC,yBAAyB,CAAC,CAAC;KACrI,CAAC;IACF,OAAO,CAAC,QAAQ,EAAE,uBAAuB,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE,oBAAoB,EAAE,eAAe,EAAE,kBAAkB,CAAC,CAAC,CAAC;CAC9H,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { type Connection, type ProjectionOptions } from "./client.js";
2
+ export declare const listBackupFiles: (connection: Connection, options?: import("./client.js").PageOptions | undefined) => Promise<import("./client.js").YouTrackPage>;
3
+ export declare const getBackupFile: (connection: Connection, backup: string, options?: ProjectionOptions | undefined) => Promise<import("./client.js").YouTrackObject>;
4
+ export declare const getBackupSettings: (connection: Connection, options?: ProjectionOptions | undefined) => Promise<import("./client.js").YouTrackObject>;
5
+ export declare const getBackupStatus: (connection: Connection, options?: ProjectionOptions | undefined) => Promise<import("./client.js").YouTrackObject>;
6
+ export declare function updateBackupSettings(connection: Connection, input: unknown, options?: ProjectionOptions): Promise<import("./client.js").YouTrackObject | null>;
7
+ //# sourceMappingURL=backup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"backup.d.ts","sourceRoot":"","sources":["../../src/backup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiH,KAAK,UAAU,EAAE,KAAK,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAKrL,eAAO,MAAM,eAAe,kIAAkD,CAAC;AAC/E,eAAO,MAAM,aAAa,oIAAoG,CAAC;AAC/H,eAAO,MAAM,iBAAiB,oHAAmD,CAAC;AAClF,eAAO,MAAM,eAAe,oHAAsH,CAAC;AACnJ,wBAAsB,oBAAoB,CAAC,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,GAAE,iBAAsB,wDAajH"}
@@ -0,0 +1,30 @@
1
+ import { encodedID, fields, mutate, mutationBody, narrative, nativeInt32, nullableText, readCollectionAt, readObjectAt } from "./client.js";
2
+ const root = "api/admin/databaseBackup";
3
+ const fileFields = "id,name,size,creationDate";
4
+ const settingsFields = "id,isOn,archiveFormat,filesToKeep,cronExpression,location,availableDiskSpace";
5
+ export const listBackupFiles = readCollectionAt(`${root}/backups`, fileFields);
6
+ export const getBackupFile = readObjectAt((backup) => `${root}/backups/${encodedID(backup, "backup ID")}`, fileFields);
7
+ export const getBackupSettings = readObjectAt(`${root}/settings`, settingsFields);
8
+ export const getBackupStatus = readObjectAt(`${root}/settings/backupStatus`, "id,backupInProgress,backupCancelled,backupError(date,errorMessage)");
9
+ export async function updateBackupSettings(connection, input, options = {}) {
10
+ const body = mutationBody(input);
11
+ if (Object.hasOwn(body, "location"))
12
+ nullableText(body.location, "location");
13
+ if (Object.hasOwn(body, "cronExpression"))
14
+ narrative(body.cronExpression, "cronExpression");
15
+ if (Object.hasOwn(body, "filesToKeep") && !nativeInt32(body.filesToKeep))
16
+ throw new Error("The filesToKeep value must be an Int32 number.");
17
+ if (Object.hasOwn(body, "archiveFormat") && (typeof body.archiveFormat !== "string" || !["TAR_GZ", "ZIP"].includes(body.archiveFormat)))
18
+ throw new Error("The archiveFormat value must be TAR_GZ or ZIP.");
19
+ if (Object.hasOwn(body, "isOn") && typeof body.isOn !== "boolean")
20
+ throw new Error("The isOn flag must be boolean.");
21
+ if (Object.hasOwn(body, "notifiedUsers")) {
22
+ if (!Array.isArray(body.notifiedUsers))
23
+ throw new Error("The notifiedUsers value must be an array of users.");
24
+ body.notifiedUsers.forEach(user => mutationBody(user));
25
+ }
26
+ if (Object.hasOwn(body, "backupStatus"))
27
+ mutationBody(body.backupStatus);
28
+ return mutate(connection, `${root}/settings`, body, fields(options, settingsFields));
29
+ }
30
+ //# sourceMappingURL=backup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"backup.js","sourceRoot":"","sources":["../../src/backup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,gBAAgB,EAAE,YAAY,EAA2C,MAAM,aAAa,CAAC;AAErL,MAAM,IAAI,GAAG,0BAA0B,CAAC;AACxC,MAAM,UAAU,GAAG,2BAA2B,CAAC;AAC/C,MAAM,cAAc,GAAG,8EAA8E,CAAC;AACtG,MAAM,CAAC,MAAM,eAAe,GAAG,gBAAgB,CAAC,GAAG,IAAI,UAAU,EAAE,UAAU,CAAC,CAAC;AAC/E,MAAM,CAAC,MAAM,aAAa,GAAG,YAAY,CAAC,CAAC,MAAc,EAAE,EAAE,CAAC,GAAG,IAAI,YAAY,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;AAC/H,MAAM,CAAC,MAAM,iBAAiB,GAAG,YAAY,CAAC,GAAG,IAAI,WAAW,EAAE,cAAc,CAAC,CAAC;AAClF,MAAM,CAAC,MAAM,eAAe,GAAG,YAAY,CAAC,GAAG,IAAI,wBAAwB,EAAE,oEAAoE,CAAC,CAAC;AACnJ,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,UAAsB,EAAE,KAAc,EAAE,OAAO,GAAsB,EAAE;IAChH,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IACjC,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC;QAAE,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IAC7E,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,gBAAgB,CAAC;QAAE,SAAS,CAAC,IAAI,CAAC,cAAc,EAAE,gBAAgB,CAAC,CAAC;IAC5F,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IAC5I,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,aAAa,KAAK,QAAQ,IAAI,CAAC,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IAC3M,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACrH,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAAC,EAAE,CAAC;QACzC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;QAC9G,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;IACzD,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,cAAc,CAAC;QAAE,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACzE,OAAO,MAAM,CAAC,UAAU,EAAE,GAAG,IAAI,WAAW,EAAE,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC;AACvF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"bundle-values-commands.d.ts","sourceRoot":"","sources":["../../src/bundle-values-commands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,KAAK,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAqBxE,eAAO,MAAM,oBAAoB,EAAE,SAAS,iBAAiB,EAyB5D,CAAC"}
1
+ {"version":3,"file":"bundle-values-commands.d.ts","sourceRoot":"","sources":["../../src/bundle-values-commands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,KAAK,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AA0BxE,eAAO,MAAM,oBAAoB,EAAE,SAAS,iBAAiB,EA2C5D,CAAC"}
@@ -1,30 +1,48 @@
1
1
  import { command } from "@eyeauras/cli-factory";
2
- import { pagedRead, projectedRead } from "./cli-support.js";
3
- import { getBuildBundle, getBuildValue, getOwnedBundle, getOwnedValue, getVersionBundle, getVersionValue, listBuildBundles, listBuildValues, listOwnedBundles, listOwnedValues, listVersionBundles, listVersionValues, } from "./bundle-values.js";
4
- import { namedTable } from "./presentation.js";
2
+ import { pagedRead, projectedRead, projectedBodyUpdate, projectedDelete } from "./cli-support.js";
3
+ import { createBuildBundle, updateBuildBundle, deleteBuildBundle, createBuildValue, updateBuildValue, deleteBuildValue, getBuildBundle, createVersionBundle, updateVersionBundle, deleteVersionBundle, deleteVersionValue, createVersionValue, updateVersionValue, getBuildValue, createOwnedBundle, updateOwnedBundle, deleteOwnedBundle, createOwnedValue, updateOwnedValue, deleteOwnedValue, getOwnedBundle, getOwnedValue, getVersionBundle, getVersionValue, listBuildBundles, listBuildValues, listOwnedBundles, listOwnedValues, listVersionBundles, listVersionValues, } from "./bundle-values.js";
4
+ import { mutationWritten, namedTable, bundleValueWritten } from "./presentation.js";
5
5
  const bundleTable = namedTable("BUNDLE", "No bundles.");
6
6
  const valueTable = namedTable("VALUE", "No values.");
7
7
  export const bundleValuesChildren = [
8
- command("build", "Inspect build bundles", [
8
+ command("build", "Inspect and manage build bundles", [
9
+ projectedBodyUpdate("create", "Create a build bundle", createBuildBundle, undefined, mutationWritten("Created build bundle")),
10
+ projectedBodyUpdate("update <bundle>", "Update a build bundle", updateBuildBundle, undefined, mutationWritten("Updated build bundle", "bundle")),
11
+ projectedDelete("delete <bundle>", "Delete a selected build bundle", deleteBuildBundle, mutationWritten("Deleted build bundle", "bundle")),
9
12
  pagedRead("list", "List build bundles", listBuildBundles, bundleTable),
10
13
  projectedRead("get <bundle>", "Show a build bundle", getBuildBundle),
11
- command("value", "Inspect build values", [
14
+ command("value", "Inspect and manage build values", [
15
+ projectedBodyUpdate("create <bundle>", "Create a build value", createBuildValue, undefined, bundleValueWritten),
16
+ projectedBodyUpdate("update <bundle> <value>", "Update a build value", updateBuildValue, undefined, bundleValueWritten),
17
+ projectedDelete("delete <bundle> <value>", "Delete a selected build value", deleteBuildValue, mutationWritten("Deleted build value", "value", "bundle")),
12
18
  pagedRead("list <bundle>", "List the bundle's values", listBuildValues, valueTable),
13
19
  projectedRead("get <bundle> <value>", "Show a build value", getBuildValue),
14
20
  ]),
15
21
  ]),
16
- command("owned", "Inspect owned-field bundles", [
22
+ command("owned", "Inspect and manage owned-field bundles", [
23
+ projectedBodyUpdate("create", "Create an owned-field bundle", createOwnedBundle, undefined, mutationWritten("Created owned-field bundle")),
24
+ projectedBodyUpdate("update <bundle>", "Update an owned-field bundle", updateOwnedBundle, undefined, mutationWritten("Updated owned-field bundle", "bundle")),
25
+ projectedDelete("delete <bundle>", "Delete a selected owned-field bundle", deleteOwnedBundle, mutationWritten("Deleted owned-field bundle", "bundle")),
17
26
  pagedRead("list", "List owned-field bundles", listOwnedBundles, bundleTable),
18
27
  projectedRead("get <bundle>", "Show an owned-field bundle", getOwnedBundle),
19
- command("value", "Inspect owned values", [
28
+ command("value", "Inspect and manage owned values", [
29
+ projectedBodyUpdate("create <bundle>", "Create an owned value", createOwnedValue, undefined, bundleValueWritten),
30
+ projectedBodyUpdate("update <bundle> <value>", "Update an owned value", updateOwnedValue, undefined, bundleValueWritten),
31
+ projectedDelete("delete <bundle> <value>", "Delete a selected owned value", deleteOwnedValue, mutationWritten("Deleted owned value", "value", "bundle")),
20
32
  pagedRead("list <bundle>", "List the bundle's values", listOwnedValues, valueTable),
21
33
  projectedRead("get <bundle> <value>", "Show an owned value", getOwnedValue),
22
34
  ]),
23
35
  ]),
24
- command("version", "Inspect version bundles", [
36
+ command("version", "Inspect and manage version bundles", [
37
+ projectedBodyUpdate("create", "Create a version bundle", createVersionBundle, undefined, mutationWritten("Created version bundle")),
38
+ projectedBodyUpdate("update <bundle>", "Update a version bundle", updateVersionBundle, undefined, mutationWritten("Updated version bundle", "bundle")),
39
+ projectedDelete("delete <bundle>", "Delete a selected version bundle", deleteVersionBundle, mutationWritten("Deleted version bundle", "bundle")),
25
40
  pagedRead("list", "List version bundles", listVersionBundles, bundleTable),
26
41
  projectedRead("get <bundle>", "Show a version bundle", getVersionBundle),
27
- command("value", "Inspect version values", [
42
+ command("value", "Inspect and manage version values", [
43
+ projectedDelete("delete <bundle> <value>", "Delete a selected version value", deleteVersionValue, mutationWritten("Deleted version value", "value", "bundle")),
44
+ projectedBodyUpdate("update <bundle> <value>", "Update a version value", updateVersionValue, undefined, bundleValueWritten),
45
+ projectedBodyUpdate("create <bundle>", "Create a version value", createVersionValue, undefined, bundleValueWritten),
28
46
  pagedRead("list <bundle>", "List the bundle's values", listVersionValues, valueTable),
29
47
  projectedRead("get <bundle> <value>", "Show a version value", getVersionValue),
30
48
  ]),
@@ -1 +1 @@
1
- {"version":3,"file":"bundle-values-commands.js","sourceRoot":"","sources":["../../src/bundle-values-commands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAA0B,MAAM,uBAAuB,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EACL,cAAc,EACd,aAAa,EACb,cAAc,EACd,aAAa,EACb,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/C,MAAM,WAAW,GAAG,UAAU,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;AACxD,MAAM,UAAU,GAAG,UAAU,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;AAErD,MAAM,CAAC,MAAM,oBAAoB,GAAiC;IAChE,OAAO,CAAC,OAAO,EAAE,uBAAuB,EAAE;QACxC,SAAS,CAAC,MAAM,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,WAAW,CAAC;QACtE,aAAa,CAAC,cAAc,EAAE,qBAAqB,EAAE,cAAc,CAAC;QACpE,OAAO,CAAC,OAAO,EAAE,sBAAsB,EAAE;YACvC,SAAS,CAAC,eAAe,EAAE,0BAA0B,EAAE,eAAe,EAAE,UAAU,CAAC;YACnF,aAAa,CAAC,sBAAsB,EAAE,oBAAoB,EAAE,aAAa,CAAC;SAC3E,CAAC;KACH,CAAC;IACF,OAAO,CAAC,OAAO,EAAE,6BAA6B,EAAE;QAC9C,SAAS,CAAC,MAAM,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,WAAW,CAAC;QAC5E,aAAa,CAAC,cAAc,EAAE,4BAA4B,EAAE,cAAc,CAAC;QAC3E,OAAO,CAAC,OAAO,EAAE,sBAAsB,EAAE;YACvC,SAAS,CAAC,eAAe,EAAE,0BAA0B,EAAE,eAAe,EAAE,UAAU,CAAC;YACnF,aAAa,CAAC,sBAAsB,EAAE,qBAAqB,EAAE,aAAa,CAAC;SAC5E,CAAC;KACH,CAAC;IACF,OAAO,CAAC,SAAS,EAAE,yBAAyB,EAAE;QAC5C,SAAS,CAAC,MAAM,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,WAAW,CAAC;QAC1E,aAAa,CAAC,cAAc,EAAE,uBAAuB,EAAE,gBAAgB,CAAC;QACxE,OAAO,CAAC,OAAO,EAAE,wBAAwB,EAAE;YACzC,SAAS,CAAC,eAAe,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,UAAU,CAAC;YACrF,aAAa,CAAC,sBAAsB,EAAE,sBAAsB,EAAE,eAAe,CAAC;SAC/E,CAAC;KACH,CAAC;CACH,CAAC"}
1
+ {"version":3,"file":"bundle-values-commands.js","sourceRoot":"","sources":["../../src/bundle-values-commands.ts"],"names":[],"mappings":"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"}