Implement Natural Sort Algorithm for Bases

The sorting mechanism for bases in the sidebar appears to treat items as pure strings, resulting in inconsistent sorting when leading numeric values are present.

Bases cannot be manually ordered currently. Other areas of lists in the app support natural sort (e.g., folders in bases). Consistent usage of natural sort across the app would make things more intuitive for admins and end users.

Expanded Description


Unexpected: Current Sorting Logic

  • 10. Base E

  • 1. Base A

  • 2. Base B

  • 3. Base C

  • 9. Base D

Expected: Natural Sorting Logic

  • 1. Base A

  • 2. Base B

  • 3. Base C

  • 9. Base D

  • 10. Base E

First approach is probably sorting based on the ASCII value instead of splitting the strings into numeric and non-numeric substrings before comparison and sorting.

Hierarchical Alphanumeric Strings Unsupported

I also don't think the current iteration accounts for mixed hierarchical strings like this:

  • 1. Base A

  • 2. Base B

  • 2.1 Base Ba

  • 3. Base C

Currently, the sort orders 2.1 Base Ba before 2. Base B but will order things as expected if the hierarchy uses uses consistent digits. It then breaks down again if you introduce another hierarchy (e.g., 2.1.1).

Please authenticate to join the conversation.

Upvoters
Status

In Review

Board

πŸ’‘ Feature Request

Date

Almost 2 years ago

Author

Skyler Reeves

Subscribe to post

Get notified by email when there are changes.