Skip to content

Commit 02ff158

Browse files
committed
moved to esm
1 parent 840055e commit 02ff158

File tree

6 files changed

+20
-18
lines changed

6 files changed

+20
-18
lines changed

README.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,7 @@ yarn add cocktailsort
1919
## Usage
2020

2121
```js
22-
const sort = require('cocktailsort')
23-
// OR import sort from 'cocktailsort'
22+
import sort from 'cocktailsort'
2423

2524
// ascending
2625
sort([4, 2, 0, -1, 9]) // [-1, 0, 2, 4, 9]

jest.config.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
const config = {
2+
preset: 'ts-jest/presets/default-esm',
3+
testMatch: ['**/*.test.ts'],
4+
}
5+
6+
export default config

jest.config.ts

Lines changed: 0 additions & 9 deletions
This file was deleted.

package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
{
22
"name": "cocktailsort",
3-
"version": "1.0.3",
3+
"version": "2.0.0",
44
"description": "Cocktail Sort (bidirectional bubble sort)",
55
"main": "dist/index.js",
6+
"type": "module",
67
"keywords": [
78
"sort",
89
"cocktail sort",

src/index.ts

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,12 @@
22

33
const fn = (a: any, b: any) => a - b
44

5+
const swap = (arr: any[], i: number, j: number) => {
6+
const temp = arr[i]
7+
arr[i] = arr[j]
8+
arr[j] = temp
9+
}
10+
511
/**
612
* Cocktail sort
713
* @param arr - Input Array
@@ -16,7 +22,7 @@ function sort<T = any>(arr: T[], cmpFn: (a: T, b: T) => number = fn) {
1622
swapped = false
1723
for (let i = begin; i < end - 1; ++i) {
1824
if (cmpFn(arr[i], arr[i + 1]) > 0) {
19-
;[arr[i + 1], arr[i]] = [arr[i], arr[i + 1]]
25+
swap(arr, i, i + 1)
2026
swapped = true
2127
}
2228
}
@@ -28,7 +34,7 @@ function sort<T = any>(arr: T[], cmpFn: (a: T, b: T) => number = fn) {
2834

2935
for (let i = end - 1; i >= begin; i--) {
3036
if (cmpFn(arr[i], arr[i + 1]) > 0) {
31-
;[arr[i + 1], arr[i]] = [arr[i], arr[i + 1]]
37+
swap(arr, i, i + 1)
3238
swapped = true
3339
}
3440
}
@@ -39,4 +45,4 @@ function sort<T = any>(arr: T[], cmpFn: (a: T, b: T) => number = fn) {
3945
return arr
4046
}
4147

42-
export = sort
48+
export default sort

tsconfig.json

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
{
22
"compilerOptions": {
3-
"target": "ESNext",
4-
"module": "commonjs",
3+
"target": "ES2020",
4+
"module": "ES2020",
55
"declaration": true,
6-
"sourceMap": true,
76
"outDir": "dist",
87
"removeComments": true,
98
"strict": true,

0 commit comments

Comments
 (0)