1
0
mirror of https://github.com/lensapp/lens.git synced 2025-05-20 05:10:56 +00:00
lens/packages/utility-features/utilities/src/orderable.ts
Sebastian Malton 500ac15703 chore: Extract sidebar item injection token into separate package
- Add unit tests to cover custom resources sidebar items

Signed-off-by: Sebastian Malton <sebastian@malton.name>
2023-05-31 14:23:53 -04:00

15 lines
403 B
TypeScript

/**
* The Orderable interface is used to define an object that has an order number.
*/
export interface Orderable {
readonly orderNumber: number;
}
export interface MaybeOrderable {
readonly orderNumber?: number;
}
export const byOrderNumber = <T extends MaybeOrderable>(left: T, right: T) => (
(left.orderNumber ?? Number.MAX_SAFE_INTEGER) - (right.orderNumber ?? Number.MAX_SAFE_INTEGER)
);