cmpstr 3.0.2 → 3.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/dist/CmpStr.esm.js +2228 -4930
- package/dist/CmpStr.esm.js.map +1 -1
- package/dist/CmpStr.esm.min.js +2 -2
- package/dist/CmpStr.esm.min.js.map +1 -1
- package/dist/CmpStr.umd.js +2348 -5026
- package/dist/CmpStr.umd.js.map +1 -1
- package/dist/CmpStr.umd.min.js +2 -2
- package/dist/CmpStr.umd.min.js.map +1 -1
- package/dist/cjs/CmpStr.cjs +10 -404
- package/dist/cjs/CmpStr.cjs.map +1 -1
- package/dist/cjs/CmpStrAsync.cjs +10 -220
- package/dist/cjs/CmpStrAsync.cjs.map +1 -1
- package/dist/cjs/index.cjs +1 -1
- package/dist/cjs/metric/Cosine.cjs +1 -56
- package/dist/cjs/metric/Cosine.cjs.map +1 -1
- package/dist/cjs/metric/DamerauLevenshtein.cjs +2 -64
- package/dist/cjs/metric/DamerauLevenshtein.cjs.map +1 -1
- package/dist/cjs/metric/DiceSorensen.cjs +1 -56
- package/dist/cjs/metric/DiceSorensen.cjs.map +1 -1
- package/dist/cjs/metric/Hamming.cjs +2 -51
- package/dist/cjs/metric/Hamming.cjs.map +1 -1
- package/dist/cjs/metric/Jaccard.cjs +1 -48
- package/dist/cjs/metric/Jaccard.cjs.map +1 -1
- package/dist/cjs/metric/JaroWinkler.cjs +1 -53
- package/dist/cjs/metric/JaroWinkler.cjs.map +1 -1
- package/dist/cjs/metric/LCS.cjs +1 -54
- package/dist/cjs/metric/LCS.cjs.map +1 -1
- package/dist/cjs/metric/Levenshtein.cjs +2 -60
- package/dist/cjs/metric/Levenshtein.cjs.map +1 -1
- package/dist/cjs/metric/Metric.cjs +2 -262
- package/dist/cjs/metric/Metric.cjs.map +1 -1
- package/dist/cjs/metric/NeedlemanWunsch.cjs +4 -56
- package/dist/cjs/metric/NeedlemanWunsch.cjs.map +1 -1
- package/dist/cjs/metric/SmithWaterman.cjs +4 -58
- package/dist/cjs/metric/SmithWaterman.cjs.map +1 -1
- package/dist/cjs/metric/qGram.cjs +1 -55
- package/dist/cjs/metric/qGram.cjs.map +1 -1
- package/dist/cjs/phonetic/Caverphone.cjs +1 -78
- package/dist/cjs/phonetic/Caverphone.cjs.map +1 -1
- package/dist/cjs/phonetic/Cologne.cjs +1 -43
- package/dist/cjs/phonetic/Cologne.cjs.map +1 -1
- package/dist/cjs/phonetic/Metaphone.cjs +1 -76
- package/dist/cjs/phonetic/Metaphone.cjs.map +1 -1
- package/dist/cjs/phonetic/Phonetic.cjs +1 -261
- package/dist/cjs/phonetic/Phonetic.cjs.map +1 -1
- package/dist/cjs/phonetic/Soundex.cjs +1 -47
- package/dist/cjs/phonetic/Soundex.cjs.map +1 -1
- package/dist/cjs/root.cjs +37 -0
- package/dist/cjs/root.cjs.map +1 -0
- package/dist/cjs/utils/DeepMerge.cjs +8 -75
- package/dist/cjs/utils/DeepMerge.cjs.map +1 -1
- package/dist/cjs/utils/DiffChecker.cjs +2 -190
- package/dist/cjs/utils/DiffChecker.cjs.map +1 -1
- package/dist/cjs/utils/Filter.cjs +1 -112
- package/dist/cjs/utils/Filter.cjs.map +1 -1
- package/dist/cjs/utils/HashTable.cjs +1 -99
- package/dist/cjs/utils/HashTable.cjs.map +1 -1
- package/dist/cjs/utils/Normalizer.cjs +3 -94
- package/dist/cjs/utils/Normalizer.cjs.map +1 -1
- package/dist/cjs/utils/Pool.cjs +1 -105
- package/dist/cjs/utils/Pool.cjs.map +1 -1
- package/dist/cjs/utils/Profiler.cjs +1 -133
- package/dist/cjs/utils/Profiler.cjs.map +1 -1
- package/dist/cjs/utils/Registry.cjs +2 -90
- package/dist/cjs/utils/Registry.cjs.map +1 -1
- package/dist/cjs/utils/TextAnalyzer.cjs +1 -180
- package/dist/cjs/utils/TextAnalyzer.cjs.map +1 -1
- package/dist/esm/CmpStr.mjs +10 -404
- package/dist/esm/CmpStr.mjs.map +1 -1
- package/dist/esm/CmpStrAsync.mjs +10 -220
- package/dist/esm/CmpStrAsync.mjs.map +1 -1
- package/dist/esm/index.mjs +1 -1
- package/dist/esm/metric/Cosine.mjs +1 -56
- package/dist/esm/metric/Cosine.mjs.map +1 -1
- package/dist/esm/metric/DamerauLevenshtein.mjs +2 -64
- package/dist/esm/metric/DamerauLevenshtein.mjs.map +1 -1
- package/dist/esm/metric/DiceSorensen.mjs +1 -56
- package/dist/esm/metric/DiceSorensen.mjs.map +1 -1
- package/dist/esm/metric/Hamming.mjs +2 -51
- package/dist/esm/metric/Hamming.mjs.map +1 -1
- package/dist/esm/metric/Jaccard.mjs +1 -48
- package/dist/esm/metric/Jaccard.mjs.map +1 -1
- package/dist/esm/metric/JaroWinkler.mjs +1 -53
- package/dist/esm/metric/JaroWinkler.mjs.map +1 -1
- package/dist/esm/metric/LCS.mjs +1 -54
- package/dist/esm/metric/LCS.mjs.map +1 -1
- package/dist/esm/metric/Levenshtein.mjs +2 -60
- package/dist/esm/metric/Levenshtein.mjs.map +1 -1
- package/dist/esm/metric/Metric.mjs +2 -262
- package/dist/esm/metric/Metric.mjs.map +1 -1
- package/dist/esm/metric/NeedlemanWunsch.mjs +4 -56
- package/dist/esm/metric/NeedlemanWunsch.mjs.map +1 -1
- package/dist/esm/metric/SmithWaterman.mjs +4 -58
- package/dist/esm/metric/SmithWaterman.mjs.map +1 -1
- package/dist/esm/metric/qGram.mjs +1 -55
- package/dist/esm/metric/qGram.mjs.map +1 -1
- package/dist/esm/phonetic/Caverphone.mjs +1 -78
- package/dist/esm/phonetic/Caverphone.mjs.map +1 -1
- package/dist/esm/phonetic/Cologne.mjs +1 -43
- package/dist/esm/phonetic/Cologne.mjs.map +1 -1
- package/dist/esm/phonetic/Metaphone.mjs +1 -76
- package/dist/esm/phonetic/Metaphone.mjs.map +1 -1
- package/dist/esm/phonetic/Phonetic.mjs +1 -261
- package/dist/esm/phonetic/Phonetic.mjs.map +1 -1
- package/dist/esm/phonetic/Soundex.mjs +1 -47
- package/dist/esm/phonetic/Soundex.mjs.map +1 -1
- package/dist/esm/root.mjs +29 -0
- package/dist/esm/root.mjs.map +1 -0
- package/dist/esm/utils/DeepMerge.mjs +8 -76
- package/dist/esm/utils/DeepMerge.mjs.map +1 -1
- package/dist/esm/utils/DiffChecker.mjs +2 -190
- package/dist/esm/utils/DiffChecker.mjs.map +1 -1
- package/dist/esm/utils/Filter.mjs +1 -112
- package/dist/esm/utils/Filter.mjs.map +1 -1
- package/dist/esm/utils/HashTable.mjs +1 -99
- package/dist/esm/utils/HashTable.mjs.map +1 -1
- package/dist/esm/utils/Normalizer.mjs +3 -94
- package/dist/esm/utils/Normalizer.mjs.map +1 -1
- package/dist/esm/utils/Pool.mjs +1 -105
- package/dist/esm/utils/Pool.mjs.map +1 -1
- package/dist/esm/utils/Profiler.mjs +1 -133
- package/dist/esm/utils/Profiler.mjs.map +1 -1
- package/dist/esm/utils/Registry.mjs +2 -90
- package/dist/esm/utils/Registry.mjs.map +1 -1
- package/dist/esm/utils/TextAnalyzer.mjs +1 -180
- package/dist/esm/utils/TextAnalyzer.mjs.map +1 -1
- package/dist/types/index.d.ts +3 -2
- package/dist/types/root.d.ts +38 -0
- package/dist/types/utils/Types.d.ts +1 -0
- package/package.json +15 -9
package/dist/types/index.d.ts
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* filtering, and text analysis. It is designed for both high-level application development
|
|
8
8
|
* and research, offering a unified API for single, batch, and pairwise operations.
|
|
9
9
|
*
|
|
10
|
-
* Version: 3.0.
|
|
10
|
+
* Version: 3.0.4
|
|
11
11
|
* Author: Paul Köhler (komed3)
|
|
12
12
|
* License: MIT
|
|
13
13
|
*
|
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
* - Phonetic algorithms (Cologne, Soundex, Metaphone) with mapping registry
|
|
20
20
|
* - Flexible normalization and filtering pipeline for all inputs
|
|
21
21
|
* - Batch, pairwise, and single comparison with detailed, type-safe results
|
|
22
|
+
* - Safe-mode for handling empty inputs gracefully
|
|
22
23
|
* - Phonetic-aware search, indexing, and comparison
|
|
23
24
|
* - Readability and text analysis utilities (syllables, word stats, etc.)
|
|
24
25
|
* - Unified diff and difference reporting (line/word, ASCII/CLI)
|
|
@@ -39,7 +40,7 @@
|
|
|
39
40
|
* For asynchronous workloads, use `CmpStrAsync`, which provides the same API with
|
|
40
41
|
* Promise-based, non-blocking methods for large-scale or I/O-bound operations.
|
|
41
42
|
*
|
|
42
|
-
* @version 3.0.
|
|
43
|
+
* @version 3.0.4
|
|
43
44
|
* @author Paul Köhler (komed3)
|
|
44
45
|
* @license MIT
|
|
45
46
|
*/
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CmpStr Development Entry Point
|
|
3
|
+
* src/root.ts
|
|
4
|
+
*
|
|
5
|
+
* This entry point is intended for development and extension of the CmpStr library. It exposes
|
|
6
|
+
* core components and utilities that allow developers to create new metrics, phonetic algorithms,
|
|
7
|
+
* and other extensions to the library.
|
|
8
|
+
*
|
|
9
|
+
* Please visit CmpStr's documentation for more information:
|
|
10
|
+
* https://github.com/komed3/cmpstr/wiki/Extending-CmpStr
|
|
11
|
+
*
|
|
12
|
+
* @version 3.0.4
|
|
13
|
+
* @author Paul Köhler (komed3)
|
|
14
|
+
* @license MIT
|
|
15
|
+
*/
|
|
16
|
+
export * from './utils/Types';
|
|
17
|
+
/**
|
|
18
|
+
* Export utils to implement new metrics
|
|
19
|
+
*
|
|
20
|
+
* - MetricRegistry: Metric registry service for managing metric implementations.
|
|
21
|
+
* - Metric: Abstract class representing a generic string metric.
|
|
22
|
+
* - MetricCls: Type definition for a class constructor that extends the Metric class.
|
|
23
|
+
*/
|
|
24
|
+
export { MetricRegistry, Metric, MetricCls } from './metric';
|
|
25
|
+
/**
|
|
26
|
+
* Export utils to implement new phonetic algorithms
|
|
27
|
+
*
|
|
28
|
+
* - PhoneticRegistry: Phonetic registry service for managing phonetic algorithm implementations.
|
|
29
|
+
* - PhoneticMappingRegistry: Registry for managing phonetic character mappings.
|
|
30
|
+
* - Phonetic: Abstract class representing a generic phonetic algorithm.
|
|
31
|
+
* - PhoneticCls: Type definition for a class constructor that extends the Phonetic class.
|
|
32
|
+
*/
|
|
33
|
+
export { PhoneticRegistry, PhoneticMappingRegistry, Phonetic, PhoneticCls } from './phonetic';
|
|
34
|
+
export * as DeepMerge from './utils/DeepMerge';
|
|
35
|
+
export { Filter } from './utils/Filter';
|
|
36
|
+
export { HashTable } from './utils/HashTable';
|
|
37
|
+
export { Pool } from './utils/Pool';
|
|
38
|
+
export { Profiler } from './utils/Profiler';
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "cmpstr",
|
|
3
3
|
"description": "CmpStr is a lightweight, fast and well performing package for calculating string similarity",
|
|
4
4
|
"license": "MIT",
|
|
5
|
-
"version": "3.0.
|
|
5
|
+
"version": "3.0.4",
|
|
6
6
|
"author": {
|
|
7
7
|
"name": "komed3 (Paul Köhler)",
|
|
8
8
|
"email": "webmaster@komed3.de",
|
|
@@ -31,23 +31,28 @@
|
|
|
31
31
|
"README.md",
|
|
32
32
|
"LICENSE"
|
|
33
33
|
],
|
|
34
|
-
"engines": {
|
|
34
|
+
"engines": {
|
|
35
35
|
"node": ">=18.0.0"
|
|
36
36
|
},
|
|
37
|
+
"types": "./dist/types/index.d.ts",
|
|
37
38
|
"browser": "./dist/CmpStr.umd.min.js",
|
|
38
39
|
"main": "./dist/cjs/index.cjs",
|
|
39
40
|
"module": "./dist/esm/index.mjs",
|
|
40
|
-
"types": "./dist/types/index.d.ts",
|
|
41
41
|
"exports": {
|
|
42
42
|
".": {
|
|
43
|
+
"types": "./dist/types/index.d.ts",
|
|
43
44
|
"require": "./dist/cjs/index.cjs",
|
|
44
|
-
"import": "./dist/esm/index.mjs"
|
|
45
|
-
|
|
45
|
+
"import": "./dist/esm/index.mjs"
|
|
46
|
+
},
|
|
47
|
+
"./root": {
|
|
48
|
+
"types": "./dist/types/root.d.ts",
|
|
49
|
+
"require": "./dist/cjs/root.cjs",
|
|
50
|
+
"import": "./dist/esm/root.mjs"
|
|
46
51
|
}
|
|
47
52
|
},
|
|
48
53
|
"scripts": {
|
|
49
54
|
"test": "vitest run",
|
|
50
|
-
"build": "rollup -c && tsc --project tsconfig.
|
|
55
|
+
"build": "rollup -c && tsc --project tsconfig.declaration.json",
|
|
51
56
|
"lint": "tsc --project tsconfig.lint.json",
|
|
52
57
|
"clean": "rm -rf dist"
|
|
53
58
|
},
|
|
@@ -56,12 +61,13 @@
|
|
|
56
61
|
"@rollup/plugin-node-resolve": "^16.0.1",
|
|
57
62
|
"@rollup/plugin-terser": "^0.4.4",
|
|
58
63
|
"@rollup/plugin-typescript": "^12.1.4",
|
|
59
|
-
"@types/node": "^24.0
|
|
64
|
+
"@types/node": "^24.4.0",
|
|
60
65
|
"prettier": "^3.6.2",
|
|
61
|
-
"rollup": "^4.
|
|
66
|
+
"rollup": "^4.50.2",
|
|
67
|
+
"rollup-plugin-cleanup": "^3.2.1",
|
|
62
68
|
"rollup-plugin-prettier": "^4.1.2",
|
|
63
69
|
"tslib": "^2.8.1",
|
|
64
|
-
"typescript": "^5.
|
|
70
|
+
"typescript": "^5.9.2",
|
|
65
71
|
"vitest": "^3.2.4"
|
|
66
72
|
}
|
|
67
73
|
}
|