(opts: SorterOptions)
| 336 | * ``` |
| 337 | */ |
| 338 | export async function createSorter(opts: SorterOptions): Promise<Sorter> { |
| 339 | let preserveDuplicates = opts.preserveDuplicates ?? false |
| 340 | let preserveWhitespace = opts.preserveWhitespace ?? false |
| 341 | |
| 342 | let api = await getTailwindConfig({ |
| 343 | base: opts.base, |
| 344 | filepath: opts.filepath, |
| 345 | configPath: opts.configPath, |
| 346 | stylesheetPath: opts.stylesheetPath, |
| 347 | packageName: opts.packageName, |
| 348 | }) |
| 349 | |
| 350 | let env: TransformerEnv = { |
| 351 | context: api, |
| 352 | changes: [], |
| 353 | options: { |
| 354 | tailwindPreserveWhitespace: preserveWhitespace, |
| 355 | tailwindPreserveDuplicates: preserveDuplicates, |
| 356 | tailwindPackageName: opts.packageName, |
| 357 | } as any, |
| 358 | matcher: undefined as any, |
| 359 | } |
| 360 | |
| 361 | return { |
| 362 | sortClassLists(classes) { |
| 363 | return classes.map((list) => { |
| 364 | let result = sortClassList({ |
| 365 | api, |
| 366 | classList: list, |
| 367 | removeDuplicates: !preserveDuplicates, |
| 368 | }) |
| 369 | |
| 370 | return result.classList |
| 371 | }) |
| 372 | }, |
| 373 | |
| 374 | sortClassAttributes(classes) { |
| 375 | return classes.map((list) => sortClasses(list, { env })) |
| 376 | }, |
| 377 | } |
| 378 | } |
no test coverage detected
searching dependent graphs…