1- import fs from 'node:fs/promises ' ;
1+ import fs from 'node:fs' ;
22import path from 'node:path' ;
33import { fileURLToPath } from 'node:url' ;
44import jsesc from 'jsesc' ;
@@ -28,11 +28,11 @@ const __dirname = path.dirname(fileURLToPath(import.meta.url));
2828
2929const templatePath = path . resolve ( __dirname , 'templates' ) ;
3030const staticPath = path . resolve ( __dirname , 'static' ) ;
31- const compileReadMe = template ( await fs . readFile (
31+ const compileReadMe = template ( fs . readFileSync (
3232 path . resolve ( templatePath , 'README.md' ) ,
3333 'utf-8'
3434) ) ;
35- const compilePackage = template ( await fs . readFile (
35+ const compilePackage = template ( fs . readFileSync (
3636 path . resolve ( templatePath , 'package.json' ) ,
3737 'utf-8'
3838) ) ;
@@ -42,7 +42,7 @@ const generateData = async (version) => {
4242 const dirMap = { } ;
4343 console . log ( 'Generating data for Unicode v%s…' , version ) ;
4444 console . log ( 'Parsing Unicode v%s categories…' , version ) ;
45- utils . extend ( dirMap , await utils . writeFiles ( {
45+ utils . extend ( dirMap , utils . writeFiles ( {
4646 'version' : version ,
4747 'map' : await parsers . parseDerivedGeneralCategory ( version ) ,
4848 'type' : ( category ) => {
@@ -53,162 +53,162 @@ const generateData = async (version) => {
5353 } ,
5454 } ) ) ;
5555 console . log ( 'Parsing Unicode v%s `Bidi_Class`' , version ) ;
56- utils . extend ( dirMap , await utils . writeFiles ( {
56+ utils . extend ( dirMap , utils . writeFiles ( {
5757 'version' : version ,
5858 'map' : await parseBidiClass ( version ) ,
5959 'type' : 'Bidi_Class' ,
6060 } ) ) ;
6161 console . log ( 'Parsing Unicode v%s `Script`…' , version ) ;
6262 const scriptsMap = await parsers . parseScripts ( version ) ;
63- utils . extend ( dirMap , await utils . writeFiles ( {
63+ utils . extend ( dirMap , utils . writeFiles ( {
6464 'version' : version ,
6565 'map' : scriptsMap ,
6666 'type' : 'Script' ,
6767 } ) ) ;
6868 console . log ( 'Parsing Unicode v%s `Script_Extensions`…' , version ) ;
69- utils . extend ( dirMap , await utils . writeFiles ( {
69+ utils . extend ( dirMap , utils . writeFiles ( {
7070 'version' : version ,
7171 'map' : await parseScriptExtensions ( version , scriptsMap ) ,
7272 'type' : 'Script_Extensions' ,
7373 } ) ) ;
7474 console . log ( 'Parsing Unicode v%s properties…' , version ) ;
75- utils . extend ( dirMap , await utils . writeFiles ( {
75+ utils . extend ( dirMap , utils . writeFiles ( {
7676 'version' : version ,
7777 'map' : await parsers . parseProperties ( version ) ,
7878 'type' : 'Binary_Property' ,
7979 } ) ) ;
8080 console . log ( 'Parsing Unicode v%s derived core properties…' , version ) ;
81- utils . extend ( dirMap , await utils . writeFiles ( {
81+ utils . extend ( dirMap , utils . writeFiles ( {
8282 'version' : version ,
8383 'map' : await parsers . parseDerivedCoreProperties ( version ) ,
8484 'type' : 'Binary_Property' ,
8585 } ) ) ;
8686 console . log ( 'Parsing Unicode v%s derived binary properties…' , version ) ;
87- utils . extend ( dirMap , await utils . writeFiles ( {
87+ utils . extend ( dirMap , utils . writeFiles ( {
8888 'version' : version ,
8989 'map' : await parsers . parseDerivedBinaryProperties ( version ) ,
9090 'type' : 'Binary_Property' ,
9191 } ) ) ;
9292 console . log ( 'Parsing Unicode v%s derived normalization properties…' , version ) ;
93- utils . extend ( dirMap , await utils . writeFiles ( {
93+ utils . extend ( dirMap , utils . writeFiles ( {
9494 'version' : version ,
9595 'map' : await parsers . parseDerivedNormalizationProperties ( version ) ,
9696 'type' : 'Binary_Property' ,
9797 } ) ) ;
9898 console . log ( 'Parsing Unicode v%s composition exclusions…' , version ) ;
99- utils . extend ( dirMap , await utils . writeFiles ( {
99+ utils . extend ( dirMap , utils . writeFiles ( {
100100 'version' : version ,
101101 'map' : await parseCompositionExclusions ( version ) ,
102102 'type' : 'Binary_Property' ,
103103 } ) ) ;
104104 console . log ( 'Parsing Unicode v%s `Case_Folding`…' , version ) ;
105- utils . extend ( dirMap , await utils . writeFiles ( {
105+ utils . extend ( dirMap , utils . writeFiles ( {
106106 'version' : version ,
107107 'map' : await parseCaseFolding ( version ) ,
108108 'type' : 'Case_Folding' ,
109109 } ) ) ;
110110 console . log ( 'Parsing Unicode v%s `Block`…' , version ) ;
111- utils . extend ( dirMap , await utils . writeFiles ( {
111+ utils . extend ( dirMap , utils . writeFiles ( {
112112 'version' : version ,
113113 'map' : await parsers . parseBlocks ( version ) ,
114114 'type' : 'Block' ,
115115 } ) ) ;
116116 console . log ( 'Parsing Unicode v%s `Bidi_Mirroring_Glyph`' , version ) ;
117- utils . extend ( dirMap , await utils . writeFiles ( {
117+ utils . extend ( dirMap , utils . writeFiles ( {
118118 'version' : version ,
119119 'map' : await parsers . parseMirroring ( version ) ,
120120 'type' : 'Bidi_Mirroring_Glyph' ,
121121 } ) ) ;
122122 console . log ( 'Parsing Unicode v%s bidi brackets…' , version ) ;
123- utils . extend ( dirMap , await utils . writeFiles ( {
123+ utils . extend ( dirMap , utils . writeFiles ( {
124124 'version' : version ,
125125 'map' : await parseBidiBrackets ( version ) ,
126126 'type' : 'Bidi_Paired_Bracket_Type' ,
127127 } ) ) ;
128128 {
129129 const InPCName = + version . split ( '.' ) [ 0 ] >= 8 ? 'Indic_Positional_Category' : 'Indic_Matra_Category' ;
130130 console . log ( 'Parsing Unicode v%s `%s`…' , version , InPCName ) ;
131- utils . extend ( dirMap , await utils . writeFiles ( {
131+ utils . extend ( dirMap , utils . writeFiles ( {
132132 'version' : version ,
133133 'map' : await parseIndicPositionalCategory ( version ) ,
134134 'type' : InPCName ,
135135 } ) ) ;
136136 }
137137 console . log ( 'Parsing Unicode v%s `Indic_Syllabic_Category`…' , version ) ;
138- utils . extend ( dirMap , await utils . writeFiles ( {
138+ utils . extend ( dirMap , utils . writeFiles ( {
139139 'version' : version ,
140140 'map' : await parseIndicSyllabicCategory ( version ) ,
141141 'type' : 'Indic_Syllabic_Category' ,
142142 } ) ) ;
143143 console . log ( 'Parsing Unicode v%s `Line_Break`…' , version ) ;
144- utils . extend ( dirMap , await utils . writeFiles ( {
144+ utils . extend ( dirMap , utils . writeFiles ( {
145145 'version' : version ,
146146 'map' : await parseLineBreak ( version ) ,
147147 'type' : 'Line_Break' ,
148148 } ) ) ;
149149 console . log ( 'Parsing Unicode v%s `Grapheme_Cluster_Break`…' , version ) ;
150- utils . extend ( dirMap , await utils . writeFiles ( {
150+ utils . extend ( dirMap , utils . writeFiles ( {
151151 'version' : version ,
152152 'map' : await parseGraphemeWordSentenceBreak ( version , 'grapheme-cluster-break' ) ,
153153 'type' : 'Grapheme_Cluster_Break' ,
154154 } ) ) ;
155155 console . log ( 'Parsing Unicode v%s `Word_Break`…' , version ) ;
156- utils . extend ( dirMap , await utils . writeFiles ( {
156+ utils . extend ( dirMap , utils . writeFiles ( {
157157 'version' : version ,
158158 'map' : await parseGraphemeWordSentenceBreak ( version , 'word-break' ) ,
159159 'type' : 'Word_Break' ,
160160 } ) ) ;
161161 console . log ( 'Parsing Unicode v%s `Sentence_Break`…' , version ) ;
162- utils . extend ( dirMap , await utils . writeFiles ( {
162+ utils . extend ( dirMap , utils . writeFiles ( {
163163 'version' : version ,
164164 'map' : await parseGraphemeWordSentenceBreak ( version , 'sentence-break' ) ,
165165 'type' : 'Sentence_Break' ,
166166 } ) ) ;
167167 console . log ( 'Parsing Unicode v%s `Vertical_Orientation`…' , version ) ;
168- utils . extend ( dirMap , await utils . writeFiles ( {
168+ utils . extend ( dirMap , utils . writeFiles ( {
169169 'version' : version ,
170170 'map' : await parseVerticalOrientation ( version ) ,
171171 'type' : 'Vertical_Orientation' ,
172172 } ) ) ;
173173 console . log ( 'Parsing Unicode v%s `Joining_Type`…' , version ) ;
174- utils . extend ( dirMap , await utils . writeFiles ( {
174+ utils . extend ( dirMap , utils . writeFiles ( {
175175 'version' : version ,
176176 'map' : await parseArabicShaping ( version ) ,
177177 'type' : 'Joining_Type' ,
178178 } ) ) ;
179179 console . log ( 'Parsing Unicode v%s binary emoji properties…' , version ) ;
180- utils . extend ( dirMap , await utils . writeFiles ( {
180+ utils . extend ( dirMap , utils . writeFiles ( {
181181 'version' : version ,
182182 'map' : await parseEmoji ( version ) ,
183183 'type' : 'Binary_Property' ,
184184 } ) ) ;
185185 console . log ( 'Parsing Unicode v%s emoji sequence properties…' , version ) ;
186- utils . extend ( dirMap , await utils . writeFiles ( {
186+ utils . extend ( dirMap , utils . writeFiles ( {
187187 'version' : version ,
188188 'map' : await parseEmojiSequences ( version ) ,
189189 'type' : 'Sequence_Property' ,
190190 } ) ) ;
191191 console . log ( 'Parsing Unicode v%s `Names`…' , version ) ;
192- utils . extend ( dirMap , await utils . writeFiles ( {
192+ utils . extend ( dirMap , utils . writeFiles ( {
193193 'version' : version ,
194194 'map' : await parseNames ( version ) ,
195195 'type' : 'Names' ,
196196 } ) ) ;
197197 console . log ( 'Parsing Unicode v%s Aliases…' , version ) ;
198- utils . extend ( dirMap , await utils . writeFiles ( {
198+ utils . extend ( dirMap , utils . writeFiles ( {
199199 'version' : version ,
200200 'map' : await parseNameAliases ( version ) ,
201201 'type' : 'Names' ,
202202 'subType' : 'name-aliases' ,
203203 } ) ) ;
204204 console . log ( 'Parsing Unicode v%s simple case mappings…' , version ) ;
205- utils . extend ( dirMap , await utils . writeFiles ( {
205+ utils . extend ( dirMap , utils . writeFiles ( {
206206 'version' : version ,
207207 'map' : await parseSimpleCaseMapping ( version ) ,
208208 'type' : 'Simple_Case_Mapping' ,
209209 } ) ) ;
210210 console . log ( 'Parsing Unicode v%s `Special_Casing`…' , version ) ;
211- utils . extend ( dirMap , await utils . writeFiles ( {
211+ utils . extend ( dirMap , utils . writeFiles ( {
212212 'version' : version ,
213213 'map' : await parseSpecialCasing ( version ) ,
214214 'type' : 'Special_Casing' ,
@@ -219,29 +219,29 @@ const generateData = async (version) => {
219219 dirMap [ property ] = dirMap [ property ] . sort ( ) ;
220220 }
221221 }
222- await fs . writeFile (
222+ fs . writeFileSync (
223223 path . resolve ( __dirname , `output/unicode-${ version } /README.md` ) ,
224224 compileReadMe ( {
225225 'version' : version ,
226226 'dirs' : dirMap ,
227227 'regenerateExample' : '<%= set.toString() %>' ,
228228 } )
229229 ) ;
230- await fs . writeFile (
230+ fs . writeFileSync (
231231 path . resolve ( __dirname , `output/unicode-${ version } /index.mjs` ) ,
232232 compileIndex ( { 'version' : version , 'data' : jsesc ( dirMap ) } )
233233 ) ;
234- await fs . writeFile (
234+ fs . writeFileSync (
235235 path . resolve ( __dirname , `output/unicode-${ version } /index.d.mts` ) ,
236236 Object . keys ( dirMap )
237237 . map ( ( key ) => `export const ${ key } : string[];` )
238238 . join ( '\n' )
239239 ) ;
240- await fs . writeFile (
240+ fs . writeFileSync (
241241 path . resolve ( __dirname , `output/unicode-${ version } /package.json` ) ,
242242 compilePackage ( { 'version' : version } )
243243 ) ;
244- await fs . mkdir (
244+ fs . mkdirSync (
245245 path . resolve ( __dirname , `output/unicode-${ version } /.github/workflows` ) ,
246246 {
247247 recursive : true ,
@@ -258,7 +258,7 @@ const generateData = async (version) => {
258258 'decode-ranges.d.mts' ,
259259 ] ;
260260 for ( const file of staticFiles ) {
261- await fs . copyFile (
261+ fs . copyFileSync (
262262 path . resolve ( staticPath , file ) ,
263263 path . resolve ( __dirname , `output/unicode-${ version } /${ file } ` )
264264 ) ;
0 commit comments