File tree Expand file tree Collapse file tree 4 files changed +23
-19
lines changed
src/common/backend/services Expand file tree Collapse file tree 4 files changed +23
-19
lines changed Original file line number Diff line number Diff line change @@ -13,4 +13,3 @@ webclipper.zip
1313
1414.now
1515release
16- yuque_openapi_20240904_green.yaml
Original file line number Diff line number Diff line change @@ -67,19 +67,14 @@ export interface ServiceMeta {
6767 permission ?: chrome . permissions . Permissions ;
6868}
6969
70- export interface UpdateTOCRequest {
71- repositoryId : string ;
72- documentId : Int32Array ;
73- }
70+ export interface UpdateTOCRequest { }
7471
7572export interface DocumentService < T = any > {
7673 getId ( ) : string ;
7774
7875 getRepositories ( ) : Promise < Repository [ ] > ;
7976
80- createDocument ( request : CreateDocumentRequest ) : Promise < CompleteStatus | void > ;
81-
82- updateTOC ( request : UpdateTOCRequest ) : Promise < T | void > ;
77+ createDocument ( request : T ) : Promise < CompleteStatus | void > ;
8378
8479 getUserInfo ( ) : Promise < UserInfo > ;
8580
Original file line number Diff line number Diff line change 1- import { CompleteStatus , CreateDocumentRequest } from './../interface' ;
1+ import { CompleteStatus , CreateDocumentRequest , UpdateTOCRequest } from './../interface' ;
22import { Repository } from '../interface' ;
33
44export enum RepositoryType {
@@ -53,3 +53,8 @@ export interface YuqueCompleteStatus extends CompleteStatus {
5353export interface YuqueCreateDocumentRequest extends CreateDocumentRequest {
5454 slug ?: string ;
5555}
56+
57+ export interface YuqueUpdateTOCRequest extends UpdateTOCRequest {
58+ repositoryId : string ;
59+ documentId : number [ ] ;
60+ }
Original file line number Diff line number Diff line change @@ -15,7 +15,7 @@ import {
1515 YuqueRepository ,
1616 YuqueCompleteStatus ,
1717 YuqueCreateDocumentRequest ,
18- UpdateTOCRequest ,
18+ YuqueUpdateTOCRequest ,
1919} from './interface' ;
2020
2121const HOST = 'https://www.yuque.com' ;
@@ -102,7 +102,7 @@ export default class YuqueDocumentService implements DocumentService {
102102 ) ;
103103 const data = response ;
104104
105- await this . updateTOC ( { repositoryId, documentId : data . id . toString ( ) } ) ;
105+ await this . updateYuqueTOC ( { repositoryId, documentId : [ data . id ] } ) ;
106106
107107 return {
108108 href : `${ HOST } /${ repository . namespace } /${ data . slug } ` ,
@@ -155,18 +155,23 @@ export default class YuqueDocumentService implements DocumentService {
155155 }
156156 } ;
157157
158- private updateTOC = async ( request : UpdateTOCRequest ) => {
159- const { repositoryId, documentId } = request ;
158+ private updateYuqueTOC = async ( info : YuqueUpdateTOCRequest ) => {
159+ const { repositoryId, documentId } = info ;
160160 const requestBody = {
161161 action : 'prependNode' ,
162- action_mode : 'sibling' ,
163- node_uuid : repositoryId ,
164- doc_ids : [ documentId ] ,
162+ action_mode : 'child' ,
163+ doc_ids : documentId ,
165164 type : 'DOC' ,
166165 } ;
167166
168- await this . request . put < YuqueRepositoryResponse [ ] > ( `repos/${ repositoryId } /toc` , {
169- data : requestBody ,
170- } ) ;
167+ try {
168+ const response = await this . request . put ( `repos/${ repositoryId } /toc` , {
169+ data : requestBody ,
170+ } ) ;
171+ return response ;
172+ } catch ( _error ) {
173+ return { } ;
174+ }
175+
171176 } ;
172177}
You can’t perform that action at this time.
0 commit comments