@thi.ng/arrays 1.0.3 → 2.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -3,7 +3,7 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
- ## [1.0.3](https://github.com/thi-ng/umbrella/compare/@thi.ng/arrays@1.0.2...@thi.ng/arrays@1.0.3) (2021-09-03)
6
+ ## [2.0.4](https://github.com/thi-ng/umbrella/compare/@thi.ng/arrays@2.0.3...@thi.ng/arrays@2.0.4) (2021-10-25)
7
7
 
8
8
  **Note:** Version bump only for package @thi.ng/arrays
9
9
 
@@ -11,98 +11,129 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
11
11
 
12
12
 
13
13
 
14
- # [0.10.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/arrays@0.9.2...@thi.ng/arrays@0.10.0) (2021-01-21)
14
+ ## [2.0.3](https://github.com/thi-ng/umbrella/compare/@thi.ng/arrays@2.0.2...@thi.ng/arrays@2.0.3) (2021-10-15)
15
+
16
+ **Note:** Version bump only for package @thi.ng/arrays
17
+
15
18
 
16
19
 
17
- ### Bug Fixes
18
20
 
19
- * **arrays:** fixed-length binarySearch2/4/8/16/32 ([39e5c37](https://github.com/thi-ng/umbrella/commit/39e5c3736135f9a49daceee1fe4da9fbdbb96eab))
21
+
22
+ ## [2.0.2](https://github.com/thi-ng/umbrella/compare/@thi.ng/arrays@2.0.1...@thi.ng/arrays@2.0.2) (2021-10-15)
23
+
24
+ **Note:** Version bump only for package @thi.ng/arrays
20
25
 
21
26
 
22
- ### Features
23
27
 
24
- * **arrays:** add insert/insertUnsafe() ([2a78598](https://github.com/thi-ng/umbrella/commit/2a7859823d2fb56eef4ee7a6919fe70072475f42))
28
+
29
+
30
+ ## [2.0.1](https://github.com/thi-ng/umbrella/compare/@thi.ng/arrays@2.0.0...@thi.ng/arrays@2.0.1) (2021-10-13)
31
+
32
+ **Note:** Version bump only for package @thi.ng/arrays
33
+
25
34
 
26
35
 
27
36
 
28
37
 
38
+ # [2.0.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/arrays@1.0.3...@thi.ng/arrays@2.0.0) (2021-10-12)
29
39
 
30
- # [0.9.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/arrays@0.8.5...@thi.ng/arrays@0.9.0) (2021-01-02)
31
40
 
41
+ ### Build System
32
42
 
33
- ### Features
43
+ * major update of ALL pkgs (export maps, ESM only) ([0d1d6ea](https://github.com/thi-ng/umbrella/commit/0d1d6ea9fab2a645d6c5f2bf2591459b939c09b6))
34
44
 
35
- * **arrays:** add bisect(), bisectWith() ([17d06a4](https://github.com/thi-ng/umbrella/commit/17d06a43e338aca5f2dc61110382363639daecc5))
36
- * **arrays:** add into(), sortByCachedKey() ([b94f64c](https://github.com/thi-ng/umbrella/commit/b94f64c2c351cfed5ea9ade5e42ad0b7076ef9e9))
37
- * **arrays:** update sortByCachedKey(), add tests ([64e8f6e](https://github.com/thi-ng/umbrella/commit/64e8f6e4e83c26c73e23a4831483bd328b78bc49))
38
45
 
46
+ ### BREAKING CHANGES
39
47
 
48
+ * discontinue CommonJS & UMD versions
40
49
 
50
+ - only ESM modules will be published from now on
51
+ - CJS obsolete due to ESM support in recent versions of node:
52
+ - i.e. launch NodeJS via:
53
+ - `node --experimental-specifier-resolution=node --experimental-repl-await`
54
+ - in the node REPL use `await import(...)` instead of `require()`
55
+ - UMD obsolete due to widespread browser support for ESM
41
56
 
57
+ Also:
58
+ - normalize/restructure/reorg all package.json files
59
+ - cleanup all build scripts, remove obsolete
60
+ - switch from mocha to @thi.ng/testament for all tests
42
61
 
43
- # [0.8.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/arrays@0.7.0...@thi.ng/arrays@0.8.0) (2020-09-13)
44
62
 
45
63
 
46
- ### Features
47
64
 
48
- * **arrays:** add first() ([3f5f722](https://github.com/thi-ng/umbrella/commit/3f5f7226e5c0495086c973a33e91fc2666f4c68c))
49
65
 
50
66
 
67
+ ## [1.0.3](https://github.com/thi-ng/umbrella/compare/@thi.ng/arrays@1.0.2...@thi.ng/arrays@1.0.3) (2021-09-03)
51
68
 
69
+ **Note:** Version bump only for package @thi.ng/arrays
52
70
 
71
+ # [0.10.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/arrays@0.9.2...@thi.ng/arrays@0.10.0) (2021-01-21)
53
72
 
54
- # [0.7.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/arrays@0.6.15...@thi.ng/arrays@0.7.0) (2020-08-28)
73
+ ### Bug Fixes
55
74
 
75
+ - **arrays:** fixed-length binarySearch2/4/8/16/32 ([39e5c37](https://github.com/thi-ng/umbrella/commit/39e5c3736135f9a49daceee1fe4da9fbdbb96eab))
56
76
 
57
- ### Features
77
+ ### Features
58
78
 
59
- * **arrays:** add non-recursive binary search fns ([29a4ee4](https://github.com/thi-ng/umbrella/commit/29a4ee4d888ccb049df9b50a57e3884ce2d4d0f3))
79
+ - **arrays:** add insert/insertUnsafe() ([2a78598](https://github.com/thi-ng/umbrella/commit/2a7859823d2fb56eef4ee7a6919fe70072475f42))
60
80
 
81
+ # [0.9.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/arrays@0.8.5...@thi.ng/arrays@0.9.0) (2021-01-02)
61
82
 
83
+ ### Features
62
84
 
85
+ - **arrays:** add bisect(), bisectWith() ([17d06a4](https://github.com/thi-ng/umbrella/commit/17d06a43e338aca5f2dc61110382363639daecc5))
86
+ - **arrays:** add into(), sortByCachedKey() ([b94f64c](https://github.com/thi-ng/umbrella/commit/b94f64c2c351cfed5ea9ade5e42ad0b7076ef9e9))
87
+ - **arrays:** update sortByCachedKey(), add tests ([64e8f6e](https://github.com/thi-ng/umbrella/commit/64e8f6e4e83c26c73e23a4831483bd328b78bc49))
63
88
 
89
+ # [0.8.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/arrays@0.7.0...@thi.ng/arrays@0.8.0) (2020-09-13)
64
90
 
65
- # [0.6.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/arrays@0.5.6...@thi.ng/arrays@0.6.0) (2020-03-28)
91
+ ### Features
66
92
 
93
+ - **arrays:** add first() ([3f5f722](https://github.com/thi-ng/umbrella/commit/3f5f7226e5c0495086c973a33e91fc2666f4c68c))
67
94
 
68
- ### Features
95
+ # [0.7.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/arrays@0.6.15...@thi.ng/arrays@0.7.0) (2020-08-28)
69
96
 
70
- * **arrays:** add fillRange() & levenshtein() ([2f98225](https://github.com/thi-ng/umbrella/commit/2f98225d129c7c1ae6b88a4f0bea9227254fcf91))
97
+ ### Features
71
98
 
99
+ - **arrays:** add non-recursive binary search fns ([29a4ee4](https://github.com/thi-ng/umbrella/commit/29a4ee4d888ccb049df9b50a57e3884ce2d4d0f3))
72
100
 
101
+ # [0.6.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/arrays@0.5.6...@thi.ng/arrays@0.6.0) (2020-03-28)
73
102
 
103
+ ### Features
74
104
 
105
+ - **arrays:** add fillRange() & levenshtein() ([2f98225](https://github.com/thi-ng/umbrella/commit/2f98225d129c7c1ae6b88a4f0bea9227254fcf91))
75
106
 
76
- # [0.5.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/arrays@0.4.0...@thi.ng/arrays@0.5.0) (2020-01-24)
107
+ # [0.5.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/arrays@0.4.0...@thi.ng/arrays@0.5.0) (2020-01-24)
77
108
 
78
- ### Features
109
+ ### Features
79
110
 
80
- * **arrays:** add binary search predicates, tests, update readme ([b8f421e](https://github.com/thi-ng/umbrella/commit/b8f421eb8888fa1b57a9287f6841cd29952bf19f))
111
+ - **arrays:** add binary search predicates, tests, update readme ([b8f421e](https://github.com/thi-ng/umbrella/commit/b8f421eb8888fa1b57a9287f6841cd29952bf19f))
81
112
 
82
- # [0.4.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/arrays@0.3.0...@thi.ng/arrays@0.4.0) (2019-11-30)
113
+ # [0.4.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/arrays@0.3.0...@thi.ng/arrays@0.4.0) (2019-11-30)
83
114
 
84
- ### Features
115
+ ### Features
85
116
 
86
- * **arrays:** add arraySeq(), arrayIterator() & tests ([d94df57](https://github.com/thi-ng/umbrella/commit/d94df5786dddf6ef6915af79c3fbf0331ddfd2bd))
87
- * **arrays:** add binarySearchNumeric() ([7b38202](https://github.com/thi-ng/umbrella/commit/7b38202480db71753d24aa52a9c09d3ac78d36ae))
117
+ - **arrays:** add arraySeq(), arrayIterator() & tests ([d94df57](https://github.com/thi-ng/umbrella/commit/d94df5786dddf6ef6915af79c3fbf0331ddfd2bd))
118
+ - **arrays:** add binarySearchNumeric() ([7b38202](https://github.com/thi-ng/umbrella/commit/7b38202480db71753d24aa52a9c09d3ac78d36ae))
88
119
 
89
- # [0.3.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/arrays@0.2.5...@thi.ng/arrays@0.3.0) (2019-11-09)
120
+ # [0.3.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/arrays@0.2.5...@thi.ng/arrays@0.3.0) (2019-11-09)
90
121
 
91
- ### Features
122
+ ### Features
92
123
 
93
- * **arrays:** add isSorted() ([65b29f4](https://github.com/thi-ng/umbrella/commit/65b29f487459c535acdbed3890c8a4e27d87ae2c))
94
- * **arrays:** add shuffleRange(), refactor shuffle(), add tests ([1924a05](https://github.com/thi-ng/umbrella/commit/1924a05ea093e3d1d0b3f063cb331b330cee0c0a))
95
- * **arrays:** add types, quickSort(), swap(), multiSwap(), update readme ([b834722](https://github.com/thi-ng/umbrella/commit/b83472237b3ba262dcbb644c8ccc516d0021bc84))
124
+ - **arrays:** add isSorted() ([65b29f4](https://github.com/thi-ng/umbrella/commit/65b29f487459c535acdbed3890c8a4e27d87ae2c))
125
+ - **arrays:** add shuffleRange(), refactor shuffle(), add tests ([1924a05](https://github.com/thi-ng/umbrella/commit/1924a05ea093e3d1d0b3f063cb331b330cee0c0a))
126
+ - **arrays:** add types, quickSort(), swap(), multiSwap(), update readme ([b834722](https://github.com/thi-ng/umbrella/commit/b83472237b3ba262dcbb644c8ccc516d0021bc84))
96
127
 
97
- # [0.2.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/arrays@0.1.9...@thi.ng/arrays@0.2.0) (2019-07-07)
128
+ # [0.2.0](https://github.com/thi-ng/umbrella/compare/@thi.ng/arrays@0.1.9...@thi.ng/arrays@0.2.0) (2019-07-07)
98
129
 
99
- ### Features
130
+ ### Features
100
131
 
101
- * **arrays:** enable TS strict compiler flags (refactor) ([8724f9e](https://github.com/thi-ng/umbrella/commit/8724f9e))
132
+ - **arrays:** enable TS strict compiler flags (refactor) ([8724f9e](https://github.com/thi-ng/umbrella/commit/8724f9e))
102
133
 
103
- # 0.1.0 (2019-02-15)
134
+ # 0.1.0 (2019-02-15)
104
135
 
105
- ### Features
136
+ ### Features
106
137
 
107
- * **arrays:** add find/findIndex() ([0007152](https://github.com/thi-ng/umbrella/commit/0007152))
108
- * **arrays:** extract as new package ([361ba37](https://github.com/thi-ng/umbrella/commit/361ba37))
138
+ - **arrays:** add find/findIndex() ([0007152](https://github.com/thi-ng/umbrella/commit/0007152))
139
+ - **arrays:** extract as new package ([361ba37](https://github.com/thi-ng/umbrella/commit/361ba37))
package/README.md CHANGED
@@ -34,15 +34,24 @@ Array / Arraylike utilities.
34
34
  yarn add @thi.ng/arrays
35
35
  ```
36
36
 
37
+ ES module import:
38
+
37
39
  ```html
38
- // ES module
39
- <script type="module" src="https://unpkg.com/@thi.ng/arrays?module" crossorigin></script>
40
+ <script type="module" src="https://cdn.skypack.dev/@thi.ng/arrays"></script>
41
+ ```
42
+
43
+ [Skypack documentation](https://docs.skypack.dev/)
44
+
45
+ For Node.js REPL:
46
+
47
+ ```text
48
+ # with flag only for < v16
49
+ node --experimental-repl-await
40
50
 
41
- // UMD
42
- <script src="https://unpkg.com/@thi.ng/arrays/lib/index.umd.js" crossorigin></script>
51
+ > const arrays = await import("@thi.ng/arrays");
43
52
  ```
44
53
 
45
- Package sizes (gzipped, pre-treeshake): ESM: 2.08 KB / CJS: 2.27 KB / UMD: 2.23 KB
54
+ Package sizes (gzipped, pre-treeshake): ESM: 2.12 KB
46
55
 
47
56
  ## Dependencies
48
57
 
package/binary-search.js CHANGED
@@ -1,4 +1,5 @@
1
- import { compare, compareNumAsc } from "@thi.ng/compare";
1
+ import { compare } from "@thi.ng/compare/compare";
2
+ import { compareNumAsc } from "@thi.ng/compare/numeric";
2
3
  /**
3
4
  * Returns the supposed index of `x` in pre-sorted array-like collection
4
5
  * `buf`.
package/ensure-array.js CHANGED
@@ -1,5 +1,6 @@
1
- import { isArray, isArrayLike } from "@thi.ng/checks";
2
- import { ensureIterable } from "./ensure-iterable";
1
+ import { isArray } from "@thi.ng/checks/is-array";
2
+ import { isArrayLike } from "@thi.ng/checks/is-arraylike";
3
+ import { ensureIterable } from "./ensure-iterable.js";
3
4
  /**
4
5
  * Helper function to avoid unnecessary copying if `x` is already an
5
6
  * array.
@@ -1,4 +1,4 @@
1
- import { illegalArgs } from "@thi.ng/errors";
1
+ import { illegalArgs } from "@thi.ng/errors/illegal-arguments";
2
2
  /**
3
3
  * Attempts to obtain an iterator from `x` and throws error if `x` is
4
4
  * not iterable.
package/index.d.ts CHANGED
@@ -1,22 +1,22 @@
1
- export * from "./api";
2
- export * from "./binary-search";
3
- export * from "./bisect";
4
- export * from "./ends-with";
5
- export * from "./ensure-array";
6
- export * from "./ensure-iterable";
7
- export * from "./find";
8
- export * from "./fill-range";
9
- export * from "./fuzzy-match";
10
- export * from "./is-sorted";
11
- export * from "./insert";
12
- export * from "./into";
13
- export * from "./iterator";
14
- export * from "./levenshtein";
15
- export * from "./peek";
16
- export * from "./quicksort";
17
- export * from "./shuffle";
18
- export * from "./sort-cached";
19
- export * from "./starts-with";
20
- export * from "./swap";
21
- export * from "./swizzle";
1
+ export * from "./api.js";
2
+ export * from "./binary-search.js";
3
+ export * from "./bisect.js";
4
+ export * from "./ends-with.js";
5
+ export * from "./ensure-array.js";
6
+ export * from "./ensure-iterable.js";
7
+ export * from "./find.js";
8
+ export * from "./fill-range.js";
9
+ export * from "./fuzzy-match.js";
10
+ export * from "./is-sorted.js";
11
+ export * from "./insert.js";
12
+ export * from "./into.js";
13
+ export * from "./iterator.js";
14
+ export * from "./levenshtein.js";
15
+ export * from "./peek.js";
16
+ export * from "./quicksort.js";
17
+ export * from "./shuffle.js";
18
+ export * from "./sort-cached.js";
19
+ export * from "./starts-with.js";
20
+ export * from "./swap.js";
21
+ export * from "./swizzle.js";
22
22
  //# sourceMappingURL=index.d.ts.map
package/index.js CHANGED
@@ -1,21 +1,21 @@
1
- export * from "./api";
2
- export * from "./binary-search";
3
- export * from "./bisect";
4
- export * from "./ends-with";
5
- export * from "./ensure-array";
6
- export * from "./ensure-iterable";
7
- export * from "./find";
8
- export * from "./fill-range";
9
- export * from "./fuzzy-match";
10
- export * from "./is-sorted";
11
- export * from "./insert";
12
- export * from "./into";
13
- export * from "./iterator";
14
- export * from "./levenshtein";
15
- export * from "./peek";
16
- export * from "./quicksort";
17
- export * from "./shuffle";
18
- export * from "./sort-cached";
19
- export * from "./starts-with";
20
- export * from "./swap";
21
- export * from "./swizzle";
1
+ export * from "./api.js";
2
+ export * from "./binary-search.js";
3
+ export * from "./bisect.js";
4
+ export * from "./ends-with.js";
5
+ export * from "./ensure-array.js";
6
+ export * from "./ensure-iterable.js";
7
+ export * from "./find.js";
8
+ export * from "./fill-range.js";
9
+ export * from "./fuzzy-match.js";
10
+ export * from "./is-sorted.js";
11
+ export * from "./insert.js";
12
+ export * from "./into.js";
13
+ export * from "./iterator.js";
14
+ export * from "./levenshtein.js";
15
+ export * from "./peek.js";
16
+ export * from "./quicksort.js";
17
+ export * from "./shuffle.js";
18
+ export * from "./sort-cached.js";
19
+ export * from "./starts-with.js";
20
+ export * from "./swap.js";
21
+ export * from "./swizzle.js";
package/is-sorted.js CHANGED
@@ -1,4 +1,4 @@
1
- import { compare } from "@thi.ng/compare";
1
+ import { compare } from "@thi.ng/compare/compare";
2
2
  /**
3
3
  * Returns true if the given array and its elements in the selected
4
4
  * index range (entire array, by default) are in the order defined by
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "@thi.ng/arrays",
3
- "version": "1.0.3",
3
+ "version": "2.0.4",
4
4
  "description": "Array / Arraylike utilities",
5
+ "type": "module",
5
6
  "module": "./index.js",
6
- "main": "./lib/index.js",
7
- "umd:main": "./lib/index.umd.js",
8
7
  "typings": "./index.d.ts",
8
+ "sideEffects": false,
9
9
  "repository": {
10
10
  "type": "git",
11
11
  "url": "https://github.com/thi-ng/umbrella.git"
@@ -24,32 +24,26 @@
24
24
  "author": "Karsten Schmidt <k+npm@thi.ng>",
25
25
  "license": "Apache-2.0",
26
26
  "scripts": {
27
- "build": "yarn clean && yarn build:es6 && node ../../scripts/bundle-module",
28
- "build:release": "yarn clean && yarn build:es6 && node ../../scripts/bundle-module all",
29
- "build:es6": "tsc --declaration",
30
- "build:test": "rimraf build && tsc -p test/tsconfig.json",
31
- "build:check": "tsc --isolatedModules --noEmit",
32
- "test": "mocha test",
33
- "cover": "nyc mocha test && nyc report --reporter=lcov",
34
- "clean": "rimraf *.js *.d.ts *.map .nyc_output build coverage doc lib",
35
- "doc:readme": "ts-node -P ../../tools/tsconfig.json ../../tools/src/readme.ts",
36
- "doc": "typedoc --excludePrivate --out doc --theme ../../tools/doc/typedoc-theme src/index.ts",
27
+ "build": "yarn clean && tsc --declaration",
28
+ "clean": "rimraf *.js *.d.ts *.map doc",
29
+ "doc": "typedoc --excludePrivate --excludeInternal --out doc src/index.ts",
37
30
  "doc:ae": "mkdir -p .ae/doc .ae/temp && node_modules/.bin/api-extractor run --local --verbose",
38
- "pub": "yarn build:release && yarn publish --access public"
31
+ "doc:readme": "yarn doc:stats && ../../scripts/node-esm ../../tools/src/readme.ts",
32
+ "doc:stats": "../../scripts/node-esm ../../tools/src/module-stats.ts",
33
+ "pub": "yarn build && yarn publish --access public",
34
+ "test": "testament test"
39
35
  },
40
36
  "dependencies": {
41
- "@thi.ng/api": "^7.2.0",
42
- "@thi.ng/checks": "^2.9.11",
43
- "@thi.ng/compare": "^1.3.34",
44
- "@thi.ng/equiv": "^1.0.45",
45
- "@thi.ng/errors": "^1.3.4",
46
- "@thi.ng/random": "^2.4.8"
37
+ "@thi.ng/api": "^8.0.4",
38
+ "@thi.ng/checks": "^3.0.4",
39
+ "@thi.ng/compare": "^2.0.4",
40
+ "@thi.ng/equiv": "^2.0.4",
41
+ "@thi.ng/errors": "^2.0.4",
42
+ "@thi.ng/random": "^3.1.0"
43
+ },
44
+ "devDependencies": {
45
+ "@thi.ng/testament": "^0.1.4"
47
46
  },
48
- "files": [
49
- "*.js",
50
- "*.d.ts",
51
- "lib"
52
- ],
53
47
  "keywords": [
54
48
  "aos",
55
49
  "array",
@@ -63,9 +57,83 @@
63
57
  "publishConfig": {
64
58
  "access": "public"
65
59
  },
66
- "sideEffects": false,
60
+ "engines": {
61
+ "node": ">=12.7"
62
+ },
63
+ "files": [
64
+ "*.js",
65
+ "*.d.ts"
66
+ ],
67
+ "exports": {
68
+ ".": {
69
+ "import": "./index.js"
70
+ },
71
+ "./api": {
72
+ "import": "./api.js"
73
+ },
74
+ "./binary-search": {
75
+ "import": "./binary-search.js"
76
+ },
77
+ "./bisect": {
78
+ "import": "./bisect.js"
79
+ },
80
+ "./ends-with": {
81
+ "import": "./ends-with.js"
82
+ },
83
+ "./ensure-array": {
84
+ "import": "./ensure-array.js"
85
+ },
86
+ "./ensure-iterable": {
87
+ "import": "./ensure-iterable.js"
88
+ },
89
+ "./fill-range": {
90
+ "import": "./fill-range.js"
91
+ },
92
+ "./find": {
93
+ "import": "./find.js"
94
+ },
95
+ "./fuzzy-match": {
96
+ "import": "./fuzzy-match.js"
97
+ },
98
+ "./insert": {
99
+ "import": "./insert.js"
100
+ },
101
+ "./into": {
102
+ "import": "./into.js"
103
+ },
104
+ "./is-sorted": {
105
+ "import": "./is-sorted.js"
106
+ },
107
+ "./iterator": {
108
+ "import": "./iterator.js"
109
+ },
110
+ "./levenshtein": {
111
+ "import": "./levenshtein.js"
112
+ },
113
+ "./peek": {
114
+ "import": "./peek.js"
115
+ },
116
+ "./quicksort": {
117
+ "import": "./quicksort.js"
118
+ },
119
+ "./shuffle": {
120
+ "import": "./shuffle.js"
121
+ },
122
+ "./sort-cached": {
123
+ "import": "./sort-cached.js"
124
+ },
125
+ "./starts-with": {
126
+ "import": "./starts-with.js"
127
+ },
128
+ "./swap": {
129
+ "import": "./swap.js"
130
+ },
131
+ "./swizzle": {
132
+ "import": "./swizzle.js"
133
+ }
134
+ },
67
135
  "thi.ng": {
68
136
  "year": 2018
69
137
  },
70
- "gitHead": "d971cb3f9b215a95483f78f1a8614015e331146f"
138
+ "gitHead": "9ff00a103f76cc4917ef3f244132e218f2300a05"
71
139
  }
package/quicksort.js CHANGED
@@ -1,5 +1,5 @@
1
- import { compare } from "@thi.ng/compare";
2
- import { swap } from "./swap";
1
+ import { compare } from "@thi.ng/compare/compare";
2
+ import { swap } from "./swap.js";
3
3
  // prettier-ignore
4
4
  export function quickSort(arr, _cmp = compare, _swap = swap, start = 0, end = arr.length - 1) {
5
5
  if (start < end) {
package/shuffle.d.ts CHANGED
@@ -1,6 +1,6 @@
1
- import { TypedArray } from "@thi.ng/api";
2
- import { IRandom } from "@thi.ng/random";
3
- import type { AnyArray } from "./api";
1
+ import type { TypedArray } from "@thi.ng/api";
2
+ import type { IRandom } from "@thi.ng/random";
3
+ import type { AnyArray } from "./api.js";
4
4
  /**
5
5
  * Shuffles the items in the given index range of array `buf` using
6
6
  * Fisher-yates and optional `rnd` PRNG.
package/shuffle.js CHANGED
@@ -1,5 +1,5 @@
1
- import { assert } from "@thi.ng/api";
2
- import { SYSTEM } from "@thi.ng/random";
1
+ import { assert } from "@thi.ng/errors/assert";
2
+ import { SYSTEM } from "@thi.ng/random/system";
3
3
  /**
4
4
  * Shuffles the items in the given index range of array `buf` using
5
5
  * Fisher-yates and optional `rnd` PRNG.
package/sort-cached.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { Comparator, Fn } from "@thi.ng/api";
1
+ import type { Comparator, Fn } from "@thi.ng/api";
2
2
  /**
3
3
  * Takes a `src` array and `key` array of function to provide the sort key of
4
4
  * each item. If a function, it will be first applied to pre-compute a new array
package/sort-cached.js CHANGED
@@ -1,8 +1,8 @@
1
- import { assert } from "@thi.ng/api";
2
- import { isFunction } from "@thi.ng/checks";
3
- import { compare } from "@thi.ng/compare";
4
- import { quickSort } from "./quicksort";
5
- import { multiSwap } from "./swap";
1
+ import { isFunction } from "@thi.ng/checks/is-function";
2
+ import { compare } from "@thi.ng/compare/compare";
3
+ import { assert } from "@thi.ng/errors/assert";
4
+ import { quickSort } from "./quicksort.js";
5
+ import { multiSwap } from "./swap.js";
6
6
  /**
7
7
  * Takes a `src` array and `key` array of function to provide the sort key of
8
8
  * each item. If a function, it will be first applied to pre-compute a new array
package/swap.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { AnyArray, SwapFn } from "./api";
1
+ import type { AnyArray, SwapFn } from "./api.js";
2
2
  /**
3
3
  * Swaps values at index `x`/`y` in given array.
4
4
  *
package/lib/index.js DELETED
@@ -1,457 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var compare = require('@thi.ng/compare');
6
- var equiv = require('@thi.ng/equiv');
7
- var checks = require('@thi.ng/checks');
8
- var errors = require('@thi.ng/errors');
9
- var api = require('@thi.ng/api');
10
- var random = require('@thi.ng/random');
11
-
12
- const binarySearch = (buf, x, key = (x) => x, cmp = compare.compare, low = 0, high = buf.length - 1) => {
13
- const kx = key(x);
14
- while (low <= high) {
15
- const mid = (low + high) >>> 1;
16
- const c = cmp(key(buf[mid]), kx);
17
- if (c < 0) {
18
- low = mid + 1;
19
- }
20
- else if (c > 0) {
21
- high = mid - 1;
22
- }
23
- else {
24
- return mid;
25
- }
26
- }
27
- return -low - 1;
28
- };
29
- const binarySearchNumeric = (buf, x, cmp = compare.compareNumAsc, low = 0, high = buf.length - 1) => {
30
- while (low <= high) {
31
- const mid = (low + high) >>> 1;
32
- const c = cmp(buf[mid], x);
33
- if (c < 0) {
34
- low = mid + 1;
35
- }
36
- else if (c > 0) {
37
- high = mid - 1;
38
- }
39
- else {
40
- return mid;
41
- }
42
- }
43
- return -low - 1;
44
- };
45
- const binarySearch2 = (buf, x) => {
46
- let idx = buf[1] <= x ? 1 : 0;
47
- return buf[idx] === x ? idx : buf[0] < x ? -idx - 2 : -1;
48
- };
49
- const binarySearch4 = (buf, x) => {
50
- let idx = buf[2] <= x ? 2 : 0;
51
- idx |= buf[idx + 1] <= x ? 1 : 0;
52
- return buf[idx] === x ? idx : buf[0] < x ? -idx - 2 : -1;
53
- };
54
- const binarySearch8 = (buf, x) => {
55
- let idx = buf[4] <= x ? 4 : 0;
56
- idx |= buf[idx + 2] <= x ? 2 : 0;
57
- idx |= buf[idx + 1] <= x ? 1 : 0;
58
- return buf[idx] === x ? idx : buf[0] < x ? -idx - 2 : -1;
59
- };
60
- const binarySearch16 = (buf, x) => {
61
- let idx = buf[8] <= x ? 8 : 0;
62
- idx |= buf[idx + 4] <= x ? 4 : 0;
63
- idx |= buf[idx + 2] <= x ? 2 : 0;
64
- idx |= buf[idx + 1] <= x ? 1 : 0;
65
- return buf[idx] === x ? idx : buf[0] < x ? -idx - 2 : -1;
66
- };
67
- const binarySearch32 = (buf, x) => {
68
- let idx = buf[16] <= x ? 16 : 0;
69
- idx |= buf[idx + 4] <= x ? 8 : 0;
70
- idx |= buf[idx + 4] <= x ? 4 : 0;
71
- idx |= buf[idx + 2] <= x ? 2 : 0;
72
- idx |= buf[idx + 1] <= x ? 1 : 0;
73
- return buf[idx] === x ? idx : buf[0] < x ? -idx - 2 : -1;
74
- };
75
- const bsLT = (i) => (i < 0 ? -i - 2 : i - 1);
76
- const bsLE = (i) => (i < 0 ? -i - 2 : i);
77
- const bsGT = (i, n) => ((i = i < 0 ? -i - 1 : i + 1), i < n ? i : -1);
78
- const bsGE = (i, n) => ((i = i < 0 ? -i - 1 : i), i < n ? i : -1);
79
- const bsEQ = (i) => (i < 0 ? -1 : i);
80
-
81
- const bisect = (src, i = src.length >>> 1) => [
82
- src.slice(0, i),
83
- src.slice(i),
84
- ];
85
- const bisectWith = (src, pred) => {
86
- const i = src.findIndex(pred);
87
- return i >= 0 ? bisect(src, i) : [src, []];
88
- };
89
-
90
- const endsWith = (buf, needle, equiv$1 = equiv.equiv) => {
91
- let i = buf.length;
92
- let j = needle.length;
93
- if (i < j)
94
- return false;
95
- while ((--i, --j >= 0 && equiv$1(buf[i], needle[j]))) { }
96
- return j < 0;
97
- };
98
-
99
- const ensureIterable = (x) => {
100
- (x == null || !x[Symbol.iterator]) &&
101
- errors.illegalArgs(`value is not iterable: ${x}`);
102
- return x;
103
- };
104
-
105
- const ensureArray = (x) => checks.isArray(x) ? x : [...ensureIterable(x)];
106
- const ensureArrayLike = (x) => checks.isArrayLike(x) ? x : [...ensureIterable(x)];
107
-
108
- const find = (buf, x, equiv$1 = equiv.equiv) => {
109
- const i = findIndex(buf, x, equiv$1);
110
- return i !== -1 ? buf[i] : undefined;
111
- };
112
- const findIndex = (buf, x, equiv$1 = equiv.equiv) => {
113
- for (let i = buf.length; --i >= 0;) {
114
- if (equiv$1(x, buf[i]))
115
- return i;
116
- }
117
- return -1;
118
- };
119
-
120
- const fillRange = (buf, index = 0, start = 0, end = buf.length, step = end > start ? 1 : -1) => {
121
- if (step > 0) {
122
- for (; start < end; start += step)
123
- buf[index++] = start;
124
- }
125
- else {
126
- for (; start > end; start += step)
127
- buf[index++] = start;
128
- }
129
- return buf;
130
- };
131
-
132
- const fuzzyMatch = (domain, query, equiv$1 = equiv.equiv) => {
133
- const nd = domain.length;
134
- const nq = query.length;
135
- if (nq > nd) {
136
- return false;
137
- }
138
- if (nq === nd) {
139
- return equiv$1(query, domain);
140
- }
141
- next: for (let i = 0, j = 0; i < nq; i++) {
142
- const q = query[i];
143
- while (j < nd) {
144
- if (equiv$1(domain[j++], q)) {
145
- continue next;
146
- }
147
- }
148
- return false;
149
- }
150
- return true;
151
- };
152
-
153
- const isSorted = (arr, cmp = compare.compare, start = 0, end = arr.length) => {
154
- let prev = arr[start];
155
- while (++start < end) {
156
- const curr = arr[start];
157
- if (cmp(prev, curr) > 0)
158
- return false;
159
- prev = curr;
160
- }
161
- return true;
162
- };
163
-
164
- const insert = (buf, x, i, k = Infinity) => i < 0 || i >= k || k < 1 ? buf : insertUnsafe(buf, x, i, k);
165
- const insertUnsafe = (buf, x, i, k = Infinity) => {
166
- let j = buf.length < k ? buf.length + 1 : k;
167
- for (; --j > i;)
168
- buf[j] = buf[j - 1];
169
- buf[i] = x;
170
- return buf;
171
- };
172
-
173
- const into = (dest, src, max = Infinity) => {
174
- for (let x of src) {
175
- if (--max < 0)
176
- break;
177
- dest.push(x);
178
- }
179
- return dest;
180
- };
181
-
182
- function* arrayIterator(buf, start = 0, end) {
183
- if (!buf)
184
- return;
185
- start = start;
186
- end === undefined && (end = buf.length);
187
- const step = start <= end ? 1 : -1;
188
- for (; start !== end; start += step) {
189
- yield buf[start];
190
- }
191
- }
192
-
193
- const eqStrict = (a, b) => a === b;
194
- const levenshtein = (a, b, maxDist = Infinity, equiv = eqStrict) => {
195
- if (a === b) {
196
- return 0;
197
- }
198
- if (a.length > b.length) {
199
- const tmp = a;
200
- a = b;
201
- b = tmp;
202
- }
203
- let la = a.length;
204
- let lb = b.length;
205
- while (la > 0 && equiv(a[~-la], b[~-lb])) {
206
- la--;
207
- lb--;
208
- }
209
- let offset = 0;
210
- while (offset < la && equiv(a[offset], b[offset])) {
211
- offset++;
212
- }
213
- la -= offset;
214
- lb -= offset;
215
- if (la === 0 || lb < 3) {
216
- return lb;
217
- }
218
- let x = 0;
219
- let y;
220
- let minDist;
221
- let d0;
222
- let d1;
223
- let d2;
224
- let d3;
225
- let dd;
226
- let dy;
227
- let ay;
228
- let bx0;
229
- let bx1;
230
- let bx2;
231
- let bx3;
232
- const _min = (d0, d1, d2, bx, ay) => {
233
- return d0 < d1 || d2 < d1
234
- ? d0 > d2
235
- ? d2 + 1
236
- : d0 + 1
237
- : equiv(ay, bx)
238
- ? d1
239
- : d1 + 1;
240
- };
241
- const vector = [];
242
- for (y = 0; y < la; y++) {
243
- vector.push(y + 1, a[offset + y]);
244
- }
245
- const len = vector.length - 1;
246
- const lb3 = lb - 3;
247
- for (; x < lb3;) {
248
- bx0 = b[offset + (d0 = x)];
249
- bx1 = b[offset + (d1 = x + 1)];
250
- bx2 = b[offset + (d2 = x + 2)];
251
- bx3 = b[offset + (d3 = x + 3)];
252
- dd = x += 4;
253
- minDist = Infinity;
254
- for (y = 0; y < len; y += 2) {
255
- dy = vector[y];
256
- ay = vector[y + 1];
257
- d0 = _min(dy, d0, d1, bx0, ay);
258
- d1 = _min(d0, d1, d2, bx1, ay);
259
- d2 = _min(d1, d2, d3, bx2, ay);
260
- dd = _min(d2, d3, dd, bx3, ay);
261
- dd < minDist && (minDist = dd);
262
- vector[y] = dd;
263
- d3 = d2;
264
- d2 = d1;
265
- d1 = d0;
266
- d0 = dy;
267
- }
268
- if (minDist > maxDist)
269
- return Infinity;
270
- }
271
- for (; x < lb;) {
272
- bx0 = b[offset + (d0 = x)];
273
- dd = ++x;
274
- minDist = Infinity;
275
- for (y = 0; y < len; y += 2) {
276
- dy = vector[y];
277
- vector[y] = dd = _min(dy, d0, dd, bx0, vector[y + 1]);
278
- dd < minDist && (minDist = dd);
279
- d0 = dy;
280
- }
281
- if (minDist > maxDist)
282
- return Infinity;
283
- }
284
- return dd;
285
- };
286
- const normalizedLevenshtein = (a, b, maxDist = Infinity, equiv = eqStrict) => {
287
- const n = Math.max(a.length, b.length);
288
- return n > 0 ? levenshtein(a, b, maxDist, equiv) / n : 0;
289
- };
290
-
291
- const first = (buf) => buf[0];
292
- const peek = (buf) => buf[buf.length - 1];
293
-
294
- const swap = (arr, x, y) => {
295
- const t = arr[x];
296
- arr[x] = arr[y];
297
- arr[y] = t;
298
- };
299
- const multiSwap = (...xs) => {
300
- const [b, c, d] = xs;
301
- const n = xs.length;
302
- switch (n) {
303
- case 0:
304
- return swap;
305
- case 1:
306
- return (a, x, y) => {
307
- swap(a, x, y);
308
- swap(b, x, y);
309
- };
310
- case 2:
311
- return (a, x, y) => {
312
- swap(a, x, y);
313
- swap(b, x, y);
314
- swap(c, x, y);
315
- };
316
- case 3:
317
- return (a, x, y) => {
318
- swap(a, x, y);
319
- swap(b, x, y);
320
- swap(c, x, y);
321
- swap(d, x, y);
322
- };
323
- default:
324
- return (a, x, y) => {
325
- swap(a, x, y);
326
- for (let i = n; --i >= 0;)
327
- swap(xs[i], x, y);
328
- };
329
- }
330
- };
331
-
332
- function quickSort(arr, _cmp = compare.compare, _swap = swap, start = 0, end = arr.length - 1) {
333
- if (start < end) {
334
- const pivot = arr[start + ((end - start) >> 1)];
335
- let s = start - 1;
336
- let e = end + 1;
337
- while (true) {
338
- do {
339
- s++;
340
- } while (_cmp(arr[s], pivot) < 0);
341
- do {
342
- e--;
343
- } while (_cmp(arr[e], pivot) > 0);
344
- if (s >= e)
345
- break;
346
- _swap(arr, s, e);
347
- }
348
- quickSort(arr, _cmp, _swap, start, e);
349
- quickSort(arr, _cmp, _swap, e + 1, end);
350
- }
351
- return arr;
352
- }
353
-
354
- const shuffleRange = (buf, start = 0, end = buf.length, rnd = random.SYSTEM) => {
355
- api.assert(start >= 0 && end >= start && end <= buf.length, `illegal range ${start}..${end}`);
356
- let n = end - start;
357
- const l = n;
358
- if (l > 1) {
359
- while (--n >= 0) {
360
- const a = (start + rnd.float(l)) | 0;
361
- const b = (start + rnd.float(l)) | 0;
362
- const t = buf[a];
363
- buf[a] = buf[b];
364
- buf[b] = t;
365
- }
366
- }
367
- return buf;
368
- };
369
- const shuffle = (buf, n = buf.length, rnd = random.SYSTEM) => shuffleRange(buf, 0, n, rnd);
370
-
371
- const sortByCachedKey = (src, key, cmp = compare.compare) => {
372
- const keys = checks.isFunction(key) ? src.map(key) : key;
373
- api.assert(keys.length === src.length, `keys.length != src.length`);
374
- quickSort(keys, cmp, multiSwap(src));
375
- return src;
376
- };
377
-
378
- const startsWith = (buf, needle, equiv$1 = equiv.equiv) => {
379
- let i = buf.length;
380
- let j = needle.length;
381
- if (i < j)
382
- return false;
383
- while (-j >= 0 && equiv$1(buf[j], needle[j])) { }
384
- return j < 0;
385
- };
386
-
387
- const swizzle = (order) => {
388
- const [a, b, c, d, e, f, g, h] = order;
389
- switch (order.length) {
390
- case 0:
391
- return () => [];
392
- case 1:
393
- return (x) => [x[a]];
394
- case 2:
395
- return (x) => [x[a], x[b]];
396
- case 3:
397
- return (x) => [x[a], x[b], x[c]];
398
- case 4:
399
- return (x) => [x[a], x[b], x[c], x[d]];
400
- case 5:
401
- return (x) => [x[a], x[b], x[c], x[d], x[e]];
402
- case 6:
403
- return (x) => [x[a], x[b], x[c], x[d], x[e], x[f]];
404
- case 7:
405
- return (x) => [x[a], x[b], x[c], x[d], x[e], x[f], x[g]];
406
- case 8:
407
- return (x) => [x[a], x[b], x[c], x[d], x[e], x[f], x[g], x[h]];
408
- default:
409
- return (x) => {
410
- const res = [];
411
- for (let i = order.length; --i >= 0;) {
412
- res[i] = x[order[i]];
413
- }
414
- return res;
415
- };
416
- }
417
- };
418
-
419
- exports.arrayIterator = arrayIterator;
420
- exports.binarySearch = binarySearch;
421
- exports.binarySearch16 = binarySearch16;
422
- exports.binarySearch2 = binarySearch2;
423
- exports.binarySearch32 = binarySearch32;
424
- exports.binarySearch4 = binarySearch4;
425
- exports.binarySearch8 = binarySearch8;
426
- exports.binarySearchNumeric = binarySearchNumeric;
427
- exports.bisect = bisect;
428
- exports.bisectWith = bisectWith;
429
- exports.bsEQ = bsEQ;
430
- exports.bsGE = bsGE;
431
- exports.bsGT = bsGT;
432
- exports.bsLE = bsLE;
433
- exports.bsLT = bsLT;
434
- exports.endsWith = endsWith;
435
- exports.ensureArray = ensureArray;
436
- exports.ensureArrayLike = ensureArrayLike;
437
- exports.ensureIterable = ensureIterable;
438
- exports.fillRange = fillRange;
439
- exports.find = find;
440
- exports.findIndex = findIndex;
441
- exports.first = first;
442
- exports.fuzzyMatch = fuzzyMatch;
443
- exports.insert = insert;
444
- exports.insertUnsafe = insertUnsafe;
445
- exports.into = into;
446
- exports.isSorted = isSorted;
447
- exports.levenshtein = levenshtein;
448
- exports.multiSwap = multiSwap;
449
- exports.normalizedLevenshtein = normalizedLevenshtein;
450
- exports.peek = peek;
451
- exports.quickSort = quickSort;
452
- exports.shuffle = shuffle;
453
- exports.shuffleRange = shuffleRange;
454
- exports.sortByCachedKey = sortByCachedKey;
455
- exports.startsWith = startsWith;
456
- exports.swap = swap;
457
- exports.swizzle = swizzle;
package/lib/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../binary-search.js","../bisect.js","../ends-with.js","../ensure-iterable.js","../ensure-array.js","../find.js","../fill-range.js","../fuzzy-match.js","../is-sorted.js","../insert.js","../into.js","../iterator.js","../levenshtein.js","../peek.js","../swap.js","../quicksort.js","../shuffle.js","../sort-cached.js","../starts-with.js","../swizzle.js"],"sourcesContent":null,"names":["compare","compareNumAsc","equiv","_eq","illegalArgs","isArray","isArrayLike","_equiv","SYSTEM","assert","isFunction"],"mappings":"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"}
package/lib/index.umd.js DELETED
@@ -1 +0,0 @@
1
- !function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("@thi.ng/compare"),require("@thi.ng/equiv"),require("@thi.ng/checks"),require("@thi.ng/errors"),require("@thi.ng/api"),require("@thi.ng/random")):"function"==typeof define&&define.amd?define(["exports","@thi.ng/compare","@thi.ng/equiv","@thi.ng/checks","@thi.ng/errors","@thi.ng/api","@thi.ng/random"],r):r(((e="undefined"!=typeof globalThis?globalThis:e||self).thi=e.thi||{},e.thi.ng=e.thi.ng||{},e.thi.ng.arrays={}),e.thi.ng.compare,e.thi.ng.equiv,e.thi.ng.checks,e.thi.ng.errors,e.thi.ng.api,e.thi.ng.random)}(this,(function(e,r,t,n,i,s,o){"use strict";const u=(e,r=e.length>>>1)=>[e.slice(0,r),e.slice(r)],l=e=>((null==e||!e[Symbol.iterator])&&i.illegalArgs(`value is not iterable: ${e}`),e),h=(e,r,n=t.equiv)=>{for(let t=e.length;--t>=0;)if(n(r,e[t]))return t;return-1},a=(e,r,t,n=1/0)=>{let i=e.length<n?e.length+1:n;for(;--i>t;)e[i]=e[i-1];return e[t]=r,e};const c=(e,r)=>e===r,f=(e,r,t=1/0,n=c)=>{if(e===r)return 0;if(e.length>r.length){const t=e;e=r,r=t}let i=e.length,s=r.length;for(;i>0&&n(e[~-i],r[~-s]);)i--,s--;let o=0;for(;o<i&&n(e[o],r[o]);)o++;if(i-=o,s-=o,0===i||s<3)return s;let u,l,h,a,f,g,d,p,y,b,m,q,S,v=0;const k=(e,r,t,i,s)=>e<r||t<r?e>t?t+1:e+1:n(s,i)?r:r+1,w=[];for(u=0;u<i;u++)w.push(u+1,e[o+u]);const x=w.length-1,A=s-3;for(;v<A;){for(b=r[o+(h=v)],m=r[o+(a=v+1)],q=r[o+(f=v+2)],S=r[o+(g=v+3)],d=v+=4,l=1/0,u=0;u<x;u+=2)p=w[u],y=w[u+1],h=k(p,h,a,b,y),a=k(h,a,f,m,y),f=k(a,f,g,q,y),d=k(f,g,d,S,y),d<l&&(l=d),w[u]=d,g=f,f=a,a=h,h=p;if(l>t)return 1/0}for(;v<s;){for(b=r[o+(h=v)],d=++v,l=1/0,u=0;u<x;u+=2)p=w[u],w[u]=d=k(p,h,d,b,w[u+1]),d<l&&(l=d),h=p;if(l>t)return 1/0}return d},g=(e,r,t)=>{const n=e[r];e[r]=e[t],e[t]=n},d=(...e)=>{const[r,t,n]=e,i=e.length;switch(i){case 0:return g;case 1:return(e,t,n)=>{g(e,t,n),g(r,t,n)};case 2:return(e,n,i)=>{g(e,n,i),g(r,n,i),g(t,n,i)};case 3:return(e,i,s)=>{g(e,i,s),g(r,i,s),g(t,i,s),g(n,i,s)};default:return(r,t,n)=>{g(r,t,n);for(let r=i;--r>=0;)g(e[r],t,n)}}};function p(e,t=r.compare,n=g,i=0,s=e.length-1){if(i<s){const r=e[i+(s-i>>1)];let o=i-1,u=s+1;for(;;){do{o++}while(t(e[o],r)<0);do{u--}while(t(e[u],r)>0);if(o>=u)break;n(e,o,u)}p(e,t,n,i,u),p(e,t,n,u+1,s)}return e}const y=(e,r=0,t=e.length,n=o.SYSTEM)=>{s.assert(r>=0&&t>=r&&t<=e.length,`illegal range ${r}..${t}`);let i=t-r;const u=i;if(u>1)for(;--i>=0;){const t=r+n.float(u)|0,i=r+n.float(u)|0,s=e[t];e[t]=e[i],e[i]=s}return e};e.arrayIterator=function*(e,r=0,t){if(!e)return;r=r,void 0===t&&(t=e.length);const n=r<=t?1:-1;for(;r!==t;r+=n)yield e[r]},e.binarySearch=(e,t,n=(e=>e),i=r.compare,s=0,o=e.length-1)=>{const u=n(t);for(;s<=o;){const r=s+o>>>1,t=i(n(e[r]),u);if(t<0)s=r+1;else{if(!(t>0))return r;o=r-1}}return-s-1},e.binarySearch16=(e,r)=>{let t=e[8]<=r?8:0;return t|=e[t+4]<=r?4:0,t|=e[t+2]<=r?2:0,t|=e[t+1]<=r?1:0,e[t]===r?t:e[0]<r?-t-2:-1},e.binarySearch2=(e,r)=>{let t=e[1]<=r?1:0;return e[t]===r?t:e[0]<r?-t-2:-1},e.binarySearch32=(e,r)=>{let t=e[16]<=r?16:0;return t|=e[t+4]<=r?8:0,t|=e[t+4]<=r?4:0,t|=e[t+2]<=r?2:0,t|=e[t+1]<=r?1:0,e[t]===r?t:e[0]<r?-t-2:-1},e.binarySearch4=(e,r)=>{let t=e[2]<=r?2:0;return t|=e[t+1]<=r?1:0,e[t]===r?t:e[0]<r?-t-2:-1},e.binarySearch8=(e,r)=>{let t=e[4]<=r?4:0;return t|=e[t+2]<=r?2:0,t|=e[t+1]<=r?1:0,e[t]===r?t:e[0]<r?-t-2:-1},e.binarySearchNumeric=(e,t,n=r.compareNumAsc,i=0,s=e.length-1)=>{for(;i<=s;){const r=i+s>>>1,o=n(e[r],t);if(o<0)i=r+1;else{if(!(o>0))return r;s=r-1}}return-i-1},e.bisect=u,e.bisectWith=(e,r)=>{const t=e.findIndex(r);return t>=0?u(e,t):[e,[]]},e.bsEQ=e=>e<0?-1:e,e.bsGE=(e,r)=>(e=e<0?-e-1:e)<r?e:-1,e.bsGT=(e,r)=>(e=e<0?-e-1:e+1)<r?e:-1,e.bsLE=e=>e<0?-e-2:e,e.bsLT=e=>e<0?-e-2:e-1,e.endsWith=(e,r,n=t.equiv)=>{let i=e.length,s=r.length;if(i<s)return!1;for(;--i,--s>=0&&n(e[i],r[s]););return s<0},e.ensureArray=e=>n.isArray(e)?e:[...l(e)],e.ensureArrayLike=e=>n.isArrayLike(e)?e:[...l(e)],e.ensureIterable=l,e.fillRange=(e,r=0,t=0,n=e.length,i=(n>t?1:-1))=>{if(i>0)for(;t<n;t+=i)e[r++]=t;else for(;t>n;t+=i)e[r++]=t;return e},e.find=(e,r,n=t.equiv)=>{const i=h(e,r,n);return-1!==i?e[i]:void 0},e.findIndex=h,e.first=e=>e[0],e.fuzzyMatch=(e,r,n=t.equiv)=>{const i=e.length,s=r.length;if(s>i)return!1;if(s===i)return n(r,e);e:for(let t=0,o=0;t<s;t++){const s=r[t];for(;o<i;)if(n(e[o++],s))continue e;return!1}return!0},e.insert=(e,r,t,n=1/0)=>t<0||t>=n||n<1?e:a(e,r,t,n),e.insertUnsafe=a,e.into=(e,r,t=1/0)=>{for(let n of r){if(--t<0)break;e.push(n)}return e},e.isSorted=(e,t=r.compare,n=0,i=e.length)=>{let s=e[n];for(;++n<i;){const r=e[n];if(t(s,r)>0)return!1;s=r}return!0},e.levenshtein=f,e.multiSwap=d,e.normalizedLevenshtein=(e,r,t=1/0,n=c)=>{const i=Math.max(e.length,r.length);return i>0?f(e,r,t,n)/i:0},e.peek=e=>e[e.length-1],e.quickSort=p,e.shuffle=(e,r=e.length,t=o.SYSTEM)=>y(e,0,r,t),e.shuffleRange=y,e.sortByCachedKey=(e,t,i=r.compare)=>{const o=n.isFunction(t)?e.map(t):t;return s.assert(o.length===e.length,"keys.length != src.length"),p(o,i,d(e)),e},e.startsWith=(e,r,n=t.equiv)=>{let i=e.length,s=r.length;if(i<s)return!1;for(;-s>=0&&n(e[s],r[s]););return s<0},e.swap=g,e.swizzle=e=>{const[r,t,n,i,s,o,u,l]=e;switch(e.length){case 0:return()=>[];case 1:return e=>[e[r]];case 2:return e=>[e[r],e[t]];case 3:return e=>[e[r],e[t],e[n]];case 4:return e=>[e[r],e[t],e[n],e[i]];case 5:return e=>[e[r],e[t],e[n],e[i],e[s]];case 6:return e=>[e[r],e[t],e[n],e[i],e[s],e[o]];case 7:return e=>[e[r],e[t],e[n],e[i],e[s],e[o],e[u]];case 8:return e=>[e[r],e[t],e[n],e[i],e[s],e[o],e[u],e[l]];default:return r=>{const t=[];for(let n=e.length;--n>=0;)t[n]=r[e[n]];return t}}},Object.defineProperty(e,"__esModule",{value:!0})}));
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.umd.js","sources":["../binary-search.js","../bisect.js","../ends-with.js","../ensure-iterable.js","../ensure-array.js","../find.js","../fill-range.js","../fuzzy-match.js","../is-sorted.js","../insert.js","../into.js","../iterator.js","../levenshtein.js","../peek.js","../swap.js","../quicksort.js","../shuffle.js","../sort-cached.js","../starts-with.js","../swizzle.js"],"sourcesContent":null,"names":["compare","compareNumAsc","equiv","_eq","illegalArgs","isArray","isArrayLike","_equiv","SYSTEM","assert","isFunction"],"mappings":"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"}