Skip to content

dayongkr/prettier-plugin-sort-re-exports

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

prettier-plugin-sort-re-exports

A Prettier plugin to sort re-exports.

This plugin is not just for sorting exports, but is specifically designed for situations where re-exports are used, such as in barrel files.

Therefore, it performs sorting based on the source, and in cases where separate grouping is required, it sorts only the connected code. For more details, refer to the example below.

Installation

npm install --save-dev prettier-plugin-sort-re-exports

Configuration

Add the plugin to your .prettierrc or prettier configuration file:

{
  "plugins": ["prettier-plugin-sort-re-exports"]
}

Example

Sorting re-exports

// Before
export { a } from "./a/foo";
export { b } from "./a/bar";
export { c } from "./a/baz";

// After
export { b } from "./a/bar";
export { c } from "./a/baz";
export { a } from "./a/foo";

Sorting re-exports with separate groups

// Before
export { a } from "./a/foo";
export { b } from "./a/bar";
export { c } from "./a/baz";

export { d } from "./b/foo";
export { e } from "./b/bar";
export { f } from "./b/baz";

// After
export { b } from "./a/bar";
export { c } from "./a/baz";
export { a } from "./a/foo";

export { e } from "./b/bar";
export { f } from "./b/baz";
export { d } from "./b/foo";

Sorting re-exports with separate groups and comments

// Before
/**
 * Group A
 */
export { a } from "./a/foo";
export { b } from "./a/bar";
export { c } from "./a/baz";

/**
 * Group B
 */
export { d } from "./b/foo";
export { e } from "./b/bar";
export { f } from "./b/baz";

// After
/**
 * Group A
 */
export { b } from "./a/bar";
export { c } from "./a/baz";
export { a } from "./a/foo";

/**
 * Group B
 */
export { e } from "./b/bar";
export { f } from "./b/baz";
export { d } from "./b/foo";

About

A prettier plugin that sorts the re-exports statements.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published