@@ -22,14 +22,18 @@ async function main() {
2222 const pageContent = await getPageContent ( notion , pageId ) ;
2323 const fileDir = path . join ( directory , pageId . toString ( ) ) ;
2424 await mkdir ( fileDir , { recursive : true } ) ;
25- const filePath = getPath ( directory , page )
25+ const filePath = getPath ( directory , page ) ;
2626 fs . writeFileSync ( filePath , pageContent , "utf8" ) ;
2727 }
2828
2929 function getPath ( directory : string , page : PageObjectResponse ) : string {
3030 const pageId = page . id ;
3131 const fileDir = path . join ( directory , pageId . toString ( ) ) ;
32- let title = ( ( page . properties ?. title ?? page . properties ?. Name ) as any ) ?. title [ 0 ] ?. plain_text ?. trim ( ) . replaceAll ( / \/ / g, "-" ) ;
32+ let title = (
33+ ( page . properties ?. title ?? page . properties ?. Name ) as any
34+ ) ?. title [ 0 ] ?. plain_text
35+ ?. trim ( )
36+ . replaceAll ( / \/ / g, "-" ) ;
3337 if ( ! title ) {
3438 title = pageId . toString ( ) ;
3539 }
@@ -41,7 +45,6 @@ async function main() {
4145 let pages : any [ ] = [ ] ;
4246 let cursor : string | undefined = undefined ;
4347
44-
4548 while ( true ) {
4649 const response : SearchResponse = await notion . search ( {
4750 filter : {
@@ -65,43 +68,59 @@ async function main() {
6568
6669 // Fetch all pages
6770 const pages = await fetchAllPages ( ) ;
68- let metadata : Map < string , {
69- url : string ;
70- filename : string
71- updatedAt : string ;
72- sync : boolean ;
73- } > = new Map ( ) ;
74- const outputDir = path . join ( process . env . WORKSPACE_DIR ! ! , 'knowledge' , 'integrations' , 'notion' ) ;
71+ let metadata : Map <
72+ string ,
73+ {
74+ url : string ;
75+ filename : string ;
76+ updatedAt : string ;
77+ sync : boolean ;
78+ }
79+ > = new Map ( ) ;
80+ const outputDir = path . join (
81+ process . env . WORKSPACE_DIR ! ! ,
82+ "knowledge" ,
83+ "integrations" ,
84+ "notion"
85+ ) ;
7586 await mkdir ( outputDir , { recursive : true } ) ;
76- const metadataPath = path . join ( outputDir , ' metadata.json' ) ;
87+ const metadataPath = path . join ( outputDir , " metadata.json" ) ;
7788 if ( fs . existsSync ( metadataPath ) ) {
78- metadata = new Map ( Object . entries ( JSON . parse ( fs . readFileSync ( metadataPath , 'utf8' ) . toString ( ) ) ) ) ;
89+ metadata = new Map (
90+ Object . entries (
91+ JSON . parse ( fs . readFileSync ( metadataPath , "utf8" ) . toString ( ) )
92+ )
93+ ) ;
7994 }
8095
8196 let updatedPages = 0 ;
8297 for ( const page of pages ) {
8398 if ( metadata . has ( page . id ) ) {
84- const entry = metadata . get ( page . id )
85- if ( entry ?. updatedAt === page . last_edited_time && fs . existsSync ( getPath ( outputDir , page ) ) ) {
99+ const entry = metadata . get ( page . id ) ;
100+ if (
101+ entry ?. updatedAt === page . last_edited_time &&
102+ fs . existsSync ( getPath ( outputDir , page ) )
103+ ) {
86104 continue ;
87105 }
88106 if ( entry ?. sync ) {
89- updatedPages ++
107+ updatedPages ++ ;
90108 await writePageToFile ( page , outputDir ) ;
91109 }
92110 metadata . set ( page . id , {
93111 url : page . url ,
94112 filename : path . basename ( getPath ( outputDir , page ) ) ,
95113 updatedAt : page . last_edited_time ,
96114 sync : entry ?. sync ?? false ,
97- } )
115+ } ) ;
116+ } else {
117+ metadata . set ( page . id , {
118+ url : page . url ,
119+ filename : path . basename ( getPath ( outputDir , page ) ) ,
120+ updatedAt : page . last_edited_time ,
121+ sync : false ,
122+ } ) ;
98123 }
99- metadata . set ( page . id , {
100- url : page . url ,
101- filename : path . basename ( getPath ( outputDir , page ) ) ,
102- updatedAt : page . last_edited_time ,
103- sync : false ,
104- } )
105124 }
106125
107126 for ( const [ key , _ ] of metadata ) {
@@ -112,7 +131,11 @@ async function main() {
112131 }
113132 }
114133
115- await writeFile ( metadataPath , JSON . stringify ( Object . fromEntries ( metadata ) ) , 'utf8' ) ;
134+ await writeFile (
135+ metadataPath ,
136+ JSON . stringify ( Object . fromEntries ( metadata ) ) ,
137+ "utf8"
138+ ) ;
116139
117140 console . log ( `Finished writing ${ updatedPages } pages to ${ outputDir } ` ) ;
118141}
0 commit comments