@scalemule/news-publication 0.0.72 → 0.0.73

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.
@@ -56,6 +56,17 @@ var PublicationArticleClient = class {
56
56
  `/article-workflow/options${articleId ? `?article_id=${encodeURIComponent(articleId)}` : ""}`
57
57
  );
58
58
  }
59
+ /** Explicit approver-authorized onboarding for a legacy article; never called by get().
60
+ * Existing schedules are cancelled by the server; public content remains unchanged.
61
+ * Missing immutable media identities must be resolved through newsroom media controls.
62
+ */
63
+ enableCollaboration(articleId, reviewPolicy) {
64
+ return this.request(
65
+ `/articles/${encodeURIComponent(articleId)}/collaboration/enable`,
66
+ "POST",
67
+ { review_policy: reviewPolicy }
68
+ );
69
+ }
59
70
  get(articleId) {
60
71
  return this.request(
61
72
  `/articles/${encodeURIComponent(articleId)}/collaboration`
@@ -132,6 +132,15 @@ declare class PublicationArticleClient {
132
132
  });
133
133
  private request;
134
134
  options(articleId?: string): Promise<ArticleWorkflowOptions>;
135
+ /** Explicit approver-authorized onboarding for a legacy article; never called by get().
136
+ * Existing schedules are cancelled by the server; public content remains unchanged.
137
+ * Missing immutable media identities must be resolved through newsroom media controls.
138
+ */
139
+ enableCollaboration(articleId: string, reviewPolicy: "NONE" | "FACT_CHECK" | "CONTRIBUTOR_REVIEW" | "SUBJECT_APPROVAL_REQUIRED" | "SUBJECT_APPROVAL_PLUS_EDITOR"): Promise<{
140
+ post_id: string;
141
+ existing?: boolean;
142
+ current_revision_id?: string;
143
+ }>;
135
144
  get(articleId: string): Promise<Record>;
136
145
  processing(articleId: string): Promise<ArticleProcessing>;
137
146
  /** Existing private narration path for a saved revision and a before-publication audio policy. */
@@ -132,6 +132,15 @@ declare class PublicationArticleClient {
132
132
  });
133
133
  private request;
134
134
  options(articleId?: string): Promise<ArticleWorkflowOptions>;
135
+ /** Explicit approver-authorized onboarding for a legacy article; never called by get().
136
+ * Existing schedules are cancelled by the server; public content remains unchanged.
137
+ * Missing immutable media identities must be resolved through newsroom media controls.
138
+ */
139
+ enableCollaboration(articleId: string, reviewPolicy: "NONE" | "FACT_CHECK" | "CONTRIBUTOR_REVIEW" | "SUBJECT_APPROVAL_REQUIRED" | "SUBJECT_APPROVAL_PLUS_EDITOR"): Promise<{
140
+ post_id: string;
141
+ existing?: boolean;
142
+ current_revision_id?: string;
143
+ }>;
135
144
  get(articleId: string): Promise<Record>;
136
145
  processing(articleId: string): Promise<ArticleProcessing>;
137
146
  /** Existing private narration path for a saved revision and a before-publication audio policy. */
@@ -54,6 +54,17 @@ var PublicationArticleClient = class {
54
54
  `/article-workflow/options${articleId ? `?article_id=${encodeURIComponent(articleId)}` : ""}`
55
55
  );
56
56
  }
57
+ /** Explicit approver-authorized onboarding for a legacy article; never called by get().
58
+ * Existing schedules are cancelled by the server; public content remains unchanged.
59
+ * Missing immutable media identities must be resolved through newsroom media controls.
60
+ */
61
+ enableCollaboration(articleId, reviewPolicy) {
62
+ return this.request(
63
+ `/articles/${encodeURIComponent(articleId)}/collaboration/enable`,
64
+ "POST",
65
+ { review_policy: reviewPolicy }
66
+ );
67
+ }
57
68
  get(articleId) {
58
69
  return this.request(
59
70
  `/articles/${encodeURIComponent(articleId)}/collaboration`
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@scalemule/news-publication",
3
- "version": "0.0.72",
3
+ "version": "0.0.73",
4
4
  "description": "Shared server framework for ScaleMule local news publications. Walnut Creek Times is the broadsheet default; each paper supplies its own identity and feature flags.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.cjs",