@@ -80,25 +80,28 @@ export class Article {
80
80
81
81
let remoteArticleBodyMarkdown : string | null ;
82
82
83
- try {
84
- remoteArticleBodyMarkdown = await this . fetchArticleBodyMarkdown ( this . articleConfig . id ) ;
85
- } catch ( error ) {
86
- return {
87
- updateStatus : UpdateStatus . ERROR as UpdateStatus . ERROR ,
88
- articleId : this . articleConfig . id ,
89
- articleTitle : frontMatter . title ,
90
- error,
91
- published : frontMatter . published ,
92
- } ;
93
- }
83
+ // if it's a draft, the article cannot be fetched so we just re-publish drafts
84
+ if ( frontMatter . published ) {
85
+ try {
86
+ remoteArticleBodyMarkdown = await this . fetchArticleBodyMarkdown ( this . articleConfig . id ) ;
87
+ } catch ( error ) {
88
+ return {
89
+ updateStatus : UpdateStatus . ERROR as UpdateStatus . ERROR ,
90
+ articleId : this . articleConfig . id ,
91
+ articleTitle : frontMatter . title ,
92
+ error,
93
+ published : frontMatter . published ,
94
+ } ;
95
+ }
94
96
95
- if ( remoteArticleBodyMarkdown && remoteArticleBodyMarkdown . trim ( ) === body . body_markdown . trim ( ) ) {
96
- return {
97
- articleId : this . articleConfig . id ,
98
- updateStatus : UpdateStatus . ALREADY_UP_TO_DATE as UpdateStatus . ALREADY_UP_TO_DATE ,
99
- articleTitle : frontMatter . title ,
100
- published : frontMatter . published ,
101
- } ;
97
+ if ( remoteArticleBodyMarkdown && remoteArticleBodyMarkdown . trim ( ) === body . body_markdown . trim ( ) ) {
98
+ return {
99
+ articleId : this . articleConfig . id ,
100
+ updateStatus : UpdateStatus . ALREADY_UP_TO_DATE as UpdateStatus . ALREADY_UP_TO_DATE ,
101
+ articleTitle : frontMatter . title ,
102
+ published : frontMatter . published ,
103
+ } ;
104
+ }
102
105
}
103
106
104
107
return got ( `https://dev.to/api/articles/${ this . articleConfig . id } ` , {
0 commit comments