cmpstr 3.0.3 → 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.
Files changed (127) hide show
  1. package/dist/CmpStr.esm.js +2228 -4944
  2. package/dist/CmpStr.esm.js.map +1 -1
  3. package/dist/CmpStr.esm.min.js +1 -1
  4. package/dist/CmpStr.umd.js +2348 -5040
  5. package/dist/CmpStr.umd.js.map +1 -1
  6. package/dist/CmpStr.umd.min.js +1 -1
  7. package/dist/cjs/CmpStr.cjs +1 -405
  8. package/dist/cjs/CmpStr.cjs.map +1 -1
  9. package/dist/cjs/CmpStrAsync.cjs +1 -221
  10. package/dist/cjs/CmpStrAsync.cjs.map +1 -1
  11. package/dist/cjs/index.cjs +1 -1
  12. package/dist/cjs/metric/Cosine.cjs +1 -56
  13. package/dist/cjs/metric/Cosine.cjs.map +1 -1
  14. package/dist/cjs/metric/DamerauLevenshtein.cjs +2 -64
  15. package/dist/cjs/metric/DamerauLevenshtein.cjs.map +1 -1
  16. package/dist/cjs/metric/DiceSorensen.cjs +1 -56
  17. package/dist/cjs/metric/DiceSorensen.cjs.map +1 -1
  18. package/dist/cjs/metric/Hamming.cjs +2 -51
  19. package/dist/cjs/metric/Hamming.cjs.map +1 -1
  20. package/dist/cjs/metric/Jaccard.cjs +1 -48
  21. package/dist/cjs/metric/Jaccard.cjs.map +1 -1
  22. package/dist/cjs/metric/JaroWinkler.cjs +1 -53
  23. package/dist/cjs/metric/JaroWinkler.cjs.map +1 -1
  24. package/dist/cjs/metric/LCS.cjs +1 -54
  25. package/dist/cjs/metric/LCS.cjs.map +1 -1
  26. package/dist/cjs/metric/Levenshtein.cjs +2 -60
  27. package/dist/cjs/metric/Levenshtein.cjs.map +1 -1
  28. package/dist/cjs/metric/Metric.cjs +1 -261
  29. package/dist/cjs/metric/Metric.cjs.map +1 -1
  30. package/dist/cjs/metric/NeedlemanWunsch.cjs +4 -56
  31. package/dist/cjs/metric/NeedlemanWunsch.cjs.map +1 -1
  32. package/dist/cjs/metric/SmithWaterman.cjs +4 -58
  33. package/dist/cjs/metric/SmithWaterman.cjs.map +1 -1
  34. package/dist/cjs/metric/qGram.cjs +1 -55
  35. package/dist/cjs/metric/qGram.cjs.map +1 -1
  36. package/dist/cjs/phonetic/Caverphone.cjs +1 -78
  37. package/dist/cjs/phonetic/Caverphone.cjs.map +1 -1
  38. package/dist/cjs/phonetic/Cologne.cjs +1 -43
  39. package/dist/cjs/phonetic/Cologne.cjs.map +1 -1
  40. package/dist/cjs/phonetic/Metaphone.cjs +1 -76
  41. package/dist/cjs/phonetic/Metaphone.cjs.map +1 -1
  42. package/dist/cjs/phonetic/Phonetic.cjs +1 -261
  43. package/dist/cjs/phonetic/Phonetic.cjs.map +1 -1
  44. package/dist/cjs/phonetic/Soundex.cjs +1 -47
  45. package/dist/cjs/phonetic/Soundex.cjs.map +1 -1
  46. package/dist/cjs/root.cjs +37 -0
  47. package/dist/cjs/root.cjs.map +1 -0
  48. package/dist/cjs/utils/DeepMerge.cjs +8 -75
  49. package/dist/cjs/utils/DeepMerge.cjs.map +1 -1
  50. package/dist/cjs/utils/DiffChecker.cjs +2 -190
  51. package/dist/cjs/utils/DiffChecker.cjs.map +1 -1
  52. package/dist/cjs/utils/Filter.cjs +1 -112
  53. package/dist/cjs/utils/Filter.cjs.map +1 -1
  54. package/dist/cjs/utils/HashTable.cjs +1 -99
  55. package/dist/cjs/utils/HashTable.cjs.map +1 -1
  56. package/dist/cjs/utils/Normalizer.cjs +3 -94
  57. package/dist/cjs/utils/Normalizer.cjs.map +1 -1
  58. package/dist/cjs/utils/Pool.cjs +1 -105
  59. package/dist/cjs/utils/Pool.cjs.map +1 -1
  60. package/dist/cjs/utils/Profiler.cjs +1 -133
  61. package/dist/cjs/utils/Profiler.cjs.map +1 -1
  62. package/dist/cjs/utils/Registry.cjs +1 -89
  63. package/dist/cjs/utils/Registry.cjs.map +1 -1
  64. package/dist/cjs/utils/TextAnalyzer.cjs +1 -180
  65. package/dist/cjs/utils/TextAnalyzer.cjs.map +1 -1
  66. package/dist/esm/CmpStr.mjs +1 -405
  67. package/dist/esm/CmpStr.mjs.map +1 -1
  68. package/dist/esm/CmpStrAsync.mjs +1 -221
  69. package/dist/esm/CmpStrAsync.mjs.map +1 -1
  70. package/dist/esm/index.mjs +1 -1
  71. package/dist/esm/metric/Cosine.mjs +1 -56
  72. package/dist/esm/metric/Cosine.mjs.map +1 -1
  73. package/dist/esm/metric/DamerauLevenshtein.mjs +2 -64
  74. package/dist/esm/metric/DamerauLevenshtein.mjs.map +1 -1
  75. package/dist/esm/metric/DiceSorensen.mjs +1 -56
  76. package/dist/esm/metric/DiceSorensen.mjs.map +1 -1
  77. package/dist/esm/metric/Hamming.mjs +2 -51
  78. package/dist/esm/metric/Hamming.mjs.map +1 -1
  79. package/dist/esm/metric/Jaccard.mjs +1 -48
  80. package/dist/esm/metric/Jaccard.mjs.map +1 -1
  81. package/dist/esm/metric/JaroWinkler.mjs +1 -53
  82. package/dist/esm/metric/JaroWinkler.mjs.map +1 -1
  83. package/dist/esm/metric/LCS.mjs +1 -54
  84. package/dist/esm/metric/LCS.mjs.map +1 -1
  85. package/dist/esm/metric/Levenshtein.mjs +2 -60
  86. package/dist/esm/metric/Levenshtein.mjs.map +1 -1
  87. package/dist/esm/metric/Metric.mjs +1 -261
  88. package/dist/esm/metric/Metric.mjs.map +1 -1
  89. package/dist/esm/metric/NeedlemanWunsch.mjs +4 -56
  90. package/dist/esm/metric/NeedlemanWunsch.mjs.map +1 -1
  91. package/dist/esm/metric/SmithWaterman.mjs +4 -58
  92. package/dist/esm/metric/SmithWaterman.mjs.map +1 -1
  93. package/dist/esm/metric/qGram.mjs +1 -55
  94. package/dist/esm/metric/qGram.mjs.map +1 -1
  95. package/dist/esm/phonetic/Caverphone.mjs +1 -78
  96. package/dist/esm/phonetic/Caverphone.mjs.map +1 -1
  97. package/dist/esm/phonetic/Cologne.mjs +1 -43
  98. package/dist/esm/phonetic/Cologne.mjs.map +1 -1
  99. package/dist/esm/phonetic/Metaphone.mjs +1 -76
  100. package/dist/esm/phonetic/Metaphone.mjs.map +1 -1
  101. package/dist/esm/phonetic/Phonetic.mjs +1 -261
  102. package/dist/esm/phonetic/Phonetic.mjs.map +1 -1
  103. package/dist/esm/phonetic/Soundex.mjs +1 -47
  104. package/dist/esm/phonetic/Soundex.mjs.map +1 -1
  105. package/dist/esm/root.mjs +29 -0
  106. package/dist/esm/root.mjs.map +1 -0
  107. package/dist/esm/utils/DeepMerge.mjs +8 -76
  108. package/dist/esm/utils/DeepMerge.mjs.map +1 -1
  109. package/dist/esm/utils/DiffChecker.mjs +2 -190
  110. package/dist/esm/utils/DiffChecker.mjs.map +1 -1
  111. package/dist/esm/utils/Filter.mjs +1 -112
  112. package/dist/esm/utils/Filter.mjs.map +1 -1
  113. package/dist/esm/utils/HashTable.mjs +1 -99
  114. package/dist/esm/utils/HashTable.mjs.map +1 -1
  115. package/dist/esm/utils/Normalizer.mjs +3 -94
  116. package/dist/esm/utils/Normalizer.mjs.map +1 -1
  117. package/dist/esm/utils/Pool.mjs +1 -105
  118. package/dist/esm/utils/Pool.mjs.map +1 -1
  119. package/dist/esm/utils/Profiler.mjs +1 -133
  120. package/dist/esm/utils/Profiler.mjs.map +1 -1
  121. package/dist/esm/utils/Registry.mjs +1 -89
  122. package/dist/esm/utils/Registry.mjs.map +1 -1
  123. package/dist/esm/utils/TextAnalyzer.mjs +1 -180
  124. package/dist/esm/utils/TextAnalyzer.mjs.map +1 -1
  125. package/dist/types/index.d.ts +2 -2
  126. package/dist/types/root.d.ts +38 -0
  127. package/package.json +14 -8
@@ -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.3",
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
- "types": "./dist/types/index.d.ts"
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.build.json",
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,9 +61,10 @@
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.2.1",
64
+ "@types/node": "^24.4.0",
60
65
  "prettier": "^3.6.2",
61
- "rollup": "^4.46.2",
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
70
  "typescript": "^5.9.2",