inray 0.0.7 → 0.0.8

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 (219) hide show
  1. package/LICENSE.md +32 -29
  2. package/README.md +467 -55
  3. package/dist/random/_pcg32.d.ts +61 -0
  4. package/dist/random/_pcg32.d.ts.map +1 -0
  5. package/dist/random/_pcg32.js +122 -0
  6. package/dist/random/_pcg32.js.map +1 -0
  7. package/dist/random/_platform.d.ts +12 -0
  8. package/dist/random/_platform.d.ts.map +1 -0
  9. package/dist/random/_platform.js +13 -0
  10. package/dist/random/_platform.js.map +1 -0
  11. package/dist/random/_seed_bytes_from_uint64.d.ts +15 -0
  12. package/dist/random/_seed_bytes_from_uint64.d.ts.map +1 -0
  13. package/dist/random/_seed_bytes_from_uint64.js +23 -0
  14. package/dist/random/_seed_bytes_from_uint64.js.map +1 -0
  15. package/dist/random/_test_utils.d.ts +15 -0
  16. package/dist/random/_test_utils.d.ts.map +1 -0
  17. package/dist/random/_test_utils.js +92 -0
  18. package/dist/random/_test_utils.js.map +1 -0
  19. package/dist/random/_types.d.ts +50 -0
  20. package/dist/random/_types.d.ts.map +1 -0
  21. package/dist/random/_types.js +10 -0
  22. package/dist/random/_types.js.map +1 -0
  23. package/dist/random/between.d.ts +33 -0
  24. package/dist/random/between.d.ts.map +1 -0
  25. package/dist/random/between.js +44 -0
  26. package/dist/random/between.js.map +1 -0
  27. package/dist/random/get_random_values_seeded.d.ts +31 -0
  28. package/dist/random/get_random_values_seeded.d.ts.map +1 -0
  29. package/dist/random/get_random_values_seeded.js +34 -0
  30. package/dist/random/get_random_values_seeded.js.map +1 -0
  31. package/dist/random/integer_between.d.ts +33 -0
  32. package/dist/random/integer_between.d.ts.map +1 -0
  33. package/dist/random/integer_between.js +34 -0
  34. package/dist/random/integer_between.js.map +1 -0
  35. package/dist/random/internal/_testing.d.ts +15 -0
  36. package/dist/random/internal/_testing.d.ts.map +1 -0
  37. package/dist/random/internal/_testing.js +27 -0
  38. package/dist/random/internal/_testing.js.map +1 -0
  39. package/dist/random/mod.d.ts +45 -0
  40. package/dist/random/mod.d.ts.map +1 -0
  41. package/dist/random/mod.js +46 -0
  42. package/dist/random/mod.js.map +1 -0
  43. package/dist/random/next_float_64.d.ts +38 -0
  44. package/dist/random/next_float_64.d.ts.map +1 -0
  45. package/dist/random/next_float_64.js +47 -0
  46. package/dist/random/next_float_64.js.map +1 -0
  47. package/dist/random/sample.d.ts +58 -0
  48. package/dist/random/sample.d.ts.map +1 -0
  49. package/dist/random/sample.js +69 -0
  50. package/dist/random/sample.js.map +1 -0
  51. package/dist/random/seeded.d.ts +34 -0
  52. package/dist/random/seeded.d.ts.map +1 -0
  53. package/dist/random/seeded.js +37 -0
  54. package/dist/random/seeded.js.map +1 -0
  55. package/dist/random/shuffle.d.ts +35 -0
  56. package/dist/random/shuffle.d.ts.map +1 -0
  57. package/dist/random/shuffle.js +48 -0
  58. package/dist/random/shuffle.js.map +1 -0
  59. package/dist/semver/_constants.d.ts +20 -0
  60. package/dist/semver/_constants.d.ts.map +1 -0
  61. package/dist/semver/_constants.js +28 -0
  62. package/dist/semver/_constants.js.map +1 -0
  63. package/dist/semver/_shared.d.ts +52 -0
  64. package/dist/semver/_shared.d.ts.map +1 -0
  65. package/dist/semver/_shared.js +168 -0
  66. package/dist/semver/_shared.js.map +1 -0
  67. package/dist/semver/_test_comparator_set.d.ts +11 -0
  68. package/dist/semver/_test_comparator_set.d.ts.map +1 -0
  69. package/dist/semver/_test_comparator_set.js +62 -0
  70. package/dist/semver/_test_comparator_set.js.map +1 -0
  71. package/dist/semver/can_parse.d.ts +24 -0
  72. package/dist/semver/can_parse.d.ts.map +1 -0
  73. package/dist/semver/can_parse.js +34 -0
  74. package/dist/semver/can_parse.js.map +1 -0
  75. package/dist/semver/compare.d.ts +35 -0
  76. package/dist/semver/compare.d.ts.map +1 -0
  77. package/dist/semver/compare.js +43 -0
  78. package/dist/semver/compare.js.map +1 -0
  79. package/dist/semver/difference.d.ts +34 -0
  80. package/dist/semver/difference.d.ts.map +1 -0
  81. package/dist/semver/difference.js +48 -0
  82. package/dist/semver/difference.js.map +1 -0
  83. package/dist/semver/equals.d.ts +31 -0
  84. package/dist/semver/equals.d.ts.map +1 -0
  85. package/dist/semver/equals.js +34 -0
  86. package/dist/semver/equals.js.map +1 -0
  87. package/dist/semver/format.d.ts +29 -0
  88. package/dist/semver/format.d.ts.map +1 -0
  89. package/dist/semver/format.js +40 -0
  90. package/dist/semver/format.js.map +1 -0
  91. package/dist/semver/format_range.d.ts +25 -0
  92. package/dist/semver/format_range.d.ts.map +1 -0
  93. package/dist/semver/format_range.js +33 -0
  94. package/dist/semver/format_range.js.map +1 -0
  95. package/dist/semver/greater_or_equal.d.ts +32 -0
  96. package/dist/semver/greater_or_equal.d.ts.map +1 -0
  97. package/dist/semver/greater_or_equal.js +34 -0
  98. package/dist/semver/greater_or_equal.js.map +1 -0
  99. package/dist/semver/greater_than.d.ts +32 -0
  100. package/dist/semver/greater_than.d.ts.map +1 -0
  101. package/dist/semver/greater_than.js +34 -0
  102. package/dist/semver/greater_than.js.map +1 -0
  103. package/dist/semver/greater_than_range.d.ts +30 -0
  104. package/dist/semver/greater_than_range.d.ts.map +1 -0
  105. package/dist/semver/greater_than_range.js +64 -0
  106. package/dist/semver/greater_than_range.js.map +1 -0
  107. package/dist/semver/increment.d.ts +61 -0
  108. package/dist/semver/increment.d.ts.map +1 -0
  109. package/dist/semver/increment.js +186 -0
  110. package/dist/semver/increment.js.map +1 -0
  111. package/dist/semver/is_range.d.ts +30 -0
  112. package/dist/semver/is_range.d.ts.map +1 -0
  113. package/dist/semver/is_range.js +42 -0
  114. package/dist/semver/is_range.js.map +1 -0
  115. package/dist/semver/is_semver.d.ts +41 -0
  116. package/dist/semver/is_semver.d.ts.map +1 -0
  117. package/dist/semver/is_semver.js +60 -0
  118. package/dist/semver/is_semver.js.map +1 -0
  119. package/dist/semver/less_or_equal.d.ts +32 -0
  120. package/dist/semver/less_or_equal.d.ts.map +1 -0
  121. package/dist/semver/less_or_equal.js +34 -0
  122. package/dist/semver/less_or_equal.js.map +1 -0
  123. package/dist/semver/less_than.d.ts +32 -0
  124. package/dist/semver/less_than.d.ts.map +1 -0
  125. package/dist/semver/less_than.js +34 -0
  126. package/dist/semver/less_than.js.map +1 -0
  127. package/dist/semver/less_than_range.d.ts +30 -0
  128. package/dist/semver/less_than_range.d.ts.map +1 -0
  129. package/dist/semver/less_than_range.js +64 -0
  130. package/dist/semver/less_than_range.js.map +1 -0
  131. package/dist/semver/max_satisfying.d.ts +29 -0
  132. package/dist/semver/max_satisfying.d.ts.map +1 -0
  133. package/dist/semver/max_satisfying.js +38 -0
  134. package/dist/semver/max_satisfying.js.map +1 -0
  135. package/dist/semver/min_satisfying.d.ts +29 -0
  136. package/dist/semver/min_satisfying.d.ts.map +1 -0
  137. package/dist/semver/min_satisfying.js +38 -0
  138. package/dist/semver/min_satisfying.js.map +1 -0
  139. package/dist/semver/mod.d.ts +305 -0
  140. package/dist/semver/mod.d.ts.map +1 -0
  141. package/dist/semver/mod.js +306 -0
  142. package/dist/semver/mod.js.map +1 -0
  143. package/dist/semver/not_equals.d.ts +31 -0
  144. package/dist/semver/not_equals.d.ts.map +1 -0
  145. package/dist/semver/not_equals.js +33 -0
  146. package/dist/semver/not_equals.js.map +1 -0
  147. package/dist/semver/parse.d.ts +32 -0
  148. package/dist/semver/parse.d.ts.map +1 -0
  149. package/dist/semver/parse.js +50 -0
  150. package/dist/semver/parse.js.map +1 -0
  151. package/dist/semver/parse_range.d.ts +34 -0
  152. package/dist/semver/parse_range.d.ts.map +1 -0
  153. package/dist/semver/parse_range.js +352 -0
  154. package/dist/semver/parse_range.js.map +1 -0
  155. package/dist/semver/range_intersects.d.ts +32 -0
  156. package/dist/semver/range_intersects.d.ts.map +1 -0
  157. package/dist/semver/range_intersects.js +89 -0
  158. package/dist/semver/range_intersects.js.map +1 -0
  159. package/dist/semver/satisfies.d.ts +31 -0
  160. package/dist/semver/satisfies.d.ts.map +1 -0
  161. package/dist/semver/satisfies.js +33 -0
  162. package/dist/semver/satisfies.js.map +1 -0
  163. package/dist/semver/try_parse.d.ts +28 -0
  164. package/dist/semver/try_parse.d.ts.map +1 -0
  165. package/dist/semver/try_parse.js +35 -0
  166. package/dist/semver/try_parse.js.map +1 -0
  167. package/dist/semver/try_parse_range.d.ts +31 -0
  168. package/dist/semver/try_parse_range.d.ts.map +1 -0
  169. package/dist/semver/try_parse_range.js +40 -0
  170. package/dist/semver/try_parse_range.js.map +1 -0
  171. package/dist/semver/types.d.ts +66 -0
  172. package/dist/semver/types.d.ts.map +1 -0
  173. package/dist/semver/types.js +10 -0
  174. package/dist/semver/types.js.map +1 -0
  175. package/dist/text/_util.d.ts +11 -0
  176. package/dist/text/_util.d.ts.map +1 -0
  177. package/dist/text/_util.js +21 -0
  178. package/dist/text/_util.js.map +1 -0
  179. package/dist/text/closest_string.d.ts +49 -0
  180. package/dist/text/closest_string.d.ts.map +1 -0
  181. package/dist/text/closest_string.js +51 -0
  182. package/dist/text/closest_string.js.map +1 -0
  183. package/dist/text/compare_similarity.d.ts +54 -0
  184. package/dist/text/compare_similarity.d.ts.map +1 -0
  185. package/dist/text/compare_similarity.js +45 -0
  186. package/dist/text/compare_similarity.js.map +1 -0
  187. package/dist/text/levenshtein_distance.d.ts +30 -0
  188. package/dist/text/levenshtein_distance.d.ts.map +1 -0
  189. package/dist/text/levenshtein_distance.js +134 -0
  190. package/dist/text/levenshtein_distance.js.map +1 -0
  191. package/dist/text/mod.d.ts +34 -0
  192. package/dist/text/mod.d.ts.map +1 -0
  193. package/dist/text/mod.js +35 -0
  194. package/dist/text/mod.js.map +1 -0
  195. package/dist/text/to_camel_case.d.ts +23 -0
  196. package/dist/text/to_camel_case.d.ts.map +1 -0
  197. package/dist/text/to_camel_case.js +29 -0
  198. package/dist/text/to_camel_case.js.map +1 -0
  199. package/dist/text/to_kebab_case.d.ts +23 -0
  200. package/dist/text/to_kebab_case.d.ts.map +1 -0
  201. package/dist/text/to_kebab_case.js +28 -0
  202. package/dist/text/to_kebab_case.js.map +1 -0
  203. package/dist/text/to_pascal_case.d.ts +23 -0
  204. package/dist/text/to_pascal_case.d.ts.map +1 -0
  205. package/dist/text/to_pascal_case.js +28 -0
  206. package/dist/text/to_pascal_case.js.map +1 -0
  207. package/dist/text/to_snake_case.d.ts +23 -0
  208. package/dist/text/to_snake_case.d.ts.map +1 -0
  209. package/dist/text/to_snake_case.js +28 -0
  210. package/dist/text/to_snake_case.js.map +1 -0
  211. package/dist/text/truncate.d.ts +81 -0
  212. package/dist/text/truncate.d.ts.map +1 -0
  213. package/dist/text/truncate.js +116 -0
  214. package/dist/text/truncate.js.map +1 -0
  215. package/dist/text/word_similarity_sort.d.ts +46 -0
  216. package/dist/text/word_similarity_sort.d.ts.map +1 -0
  217. package/dist/text/word_similarity_sort.js +47 -0
  218. package/dist/text/word_similarity_sort.js.map +1 -0
  219. package/package.json +16 -1
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Original library: denoland/@std
3
+ * - Copyright (c) 2018-2026 the Deno authors. MIT license.
4
+ *
5
+ * Modified and integrated in "Inray":
6
+ * - Evgeniy Bushin
7
+ */
8
+ /***/
9
+ // This module is browser compatible.
10
+ /**
11
+ * Utility functions for working with text.
12
+ *
13
+ * ```ts
14
+ * import { toCamelCase, compareSimilarity } from "inray/text";
15
+ *
16
+ * toCamelCase("snake_case"); // "snakeCase"
17
+ *
18
+ * const words = ["hi", "help", "hello"];
19
+ *
20
+ * // Words most similar to "hep" will be at the front
21
+ * words.sort(compareSimilarity("hep")); // ["help", "hi", "hello"]
22
+ * ```
23
+ *
24
+ * @module
25
+ */
26
+ export * from "./levenshtein_distance.js";
27
+ export * from "./closest_string.js";
28
+ export * from "./compare_similarity.js";
29
+ export * from "./word_similarity_sort.js";
30
+ export * from "./to_camel_case.js";
31
+ export * from "./to_kebab_case.js";
32
+ export * from "./to_pascal_case.js";
33
+ export * from "./to_snake_case.js";
34
+ export * from "./truncate.js";
35
+ //# sourceMappingURL=mod.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mod.js","sourceRoot":"","sources":["../../src/text/mod.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,KAAK;AAEL,qCAAqC;AAErC;;;;;;;;;;;;;;;GAeG;AAEH,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Original library: denoland/@std
3
+ * - Copyright (c) 2018-2026 the Deno authors. MIT license.
4
+ *
5
+ * Modified and integrated in "Inray":
6
+ * - Evgeniy Bushin
7
+ */
8
+ /***/
9
+ /**
10
+ * Converts a string into camelCase.
11
+ *
12
+ * @example Usage
13
+ * ```ts
14
+ * import { toCamelCase } from "inray/text";
15
+ *
16
+ * toCamelCase("deno is awesome"); // "denoIsAwesome"
17
+ * ```
18
+ *
19
+ * @param input The string that is going to be converted into camelCase
20
+ * @returns The string as camelCase
21
+ */
22
+ export declare function toCamelCase(input: string): string;
23
+ //# sourceMappingURL=to_camel_case.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"to_camel_case.d.ts","sourceRoot":"","sources":["../../src/text/to_camel_case.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,KAAK;AAML;;;;;;;;;;;;GAYG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAIjD"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Original library: denoland/@std
3
+ * - Copyright (c) 2018-2026 the Deno authors. MIT license.
4
+ *
5
+ * Modified and integrated in "Inray":
6
+ * - Evgeniy Bushin
7
+ */
8
+ /***/
9
+ // This module is browser compatible.
10
+ import { capitalizeWord, splitToWords } from "./_util.js";
11
+ /**
12
+ * Converts a string into camelCase.
13
+ *
14
+ * @example Usage
15
+ * ```ts
16
+ * import { toCamelCase } from "inray/text";
17
+ *
18
+ * toCamelCase("deno is awesome"); // "denoIsAwesome"
19
+ * ```
20
+ *
21
+ * @param input The string that is going to be converted into camelCase
22
+ * @returns The string as camelCase
23
+ */
24
+ export function toCamelCase(input) {
25
+ input = input.trim();
26
+ const [first = '', ...rest] = splitToWords(input);
27
+ return [first.toLowerCase(), ...rest.map(capitalizeWord)].join('');
28
+ }
29
+ //# sourceMappingURL=to_camel_case.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"to_camel_case.js","sourceRoot":"","sources":["../../src/text/to_camel_case.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,KAAK;AAEL,qCAAqC;AAErC,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1D;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,WAAW,CAAC,KAAa;IACvC,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IACrB,MAAM,CAAC,KAAK,GAAG,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IAClD,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACrE,CAAC"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Original library: denoland/@std
3
+ * - Copyright (c) 2018-2026 the Deno authors. MIT license.
4
+ *
5
+ * Modified and integrated in "Inray":
6
+ * - Evgeniy Bushin
7
+ */
8
+ /***/
9
+ /**
10
+ * Converts a string into kebab-case.
11
+ *
12
+ * @example Usage
13
+ * ```ts
14
+ * import { toKebabCase } from "inray/text";
15
+ *
16
+ * toKebabCase("deno is awesome"); // "deno-is-awesome"
17
+ * ```
18
+ *
19
+ * @param input The string that is going to be converted into kebab-case
20
+ * @returns The string as kebab-case
21
+ */
22
+ export declare function toKebabCase(input: string): string;
23
+ //# sourceMappingURL=to_kebab_case.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"to_kebab_case.d.ts","sourceRoot":"","sources":["../../src/text/to_kebab_case.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,KAAK;AAML;;;;;;;;;;;;GAYG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAGjD"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Original library: denoland/@std
3
+ * - Copyright (c) 2018-2026 the Deno authors. MIT license.
4
+ *
5
+ * Modified and integrated in "Inray":
6
+ * - Evgeniy Bushin
7
+ */
8
+ /***/
9
+ // This module is browser compatible.
10
+ import { splitToWords } from "./_util.js";
11
+ /**
12
+ * Converts a string into kebab-case.
13
+ *
14
+ * @example Usage
15
+ * ```ts
16
+ * import { toKebabCase } from "inray/text";
17
+ *
18
+ * toKebabCase("deno is awesome"); // "deno-is-awesome"
19
+ * ```
20
+ *
21
+ * @param input The string that is going to be converted into kebab-case
22
+ * @returns The string as kebab-case
23
+ */
24
+ export function toKebabCase(input) {
25
+ input = input.trim();
26
+ return splitToWords(input).join('-').toLowerCase();
27
+ }
28
+ //# sourceMappingURL=to_kebab_case.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"to_kebab_case.js","sourceRoot":"","sources":["../../src/text/to_kebab_case.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,KAAK;AAEL,qCAAqC;AAErC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,WAAW,CAAC,KAAa;IACvC,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IACrB,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;AACrD,CAAC"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Original library: denoland/@std
3
+ * - Copyright (c) 2018-2026 the Deno authors. MIT license.
4
+ *
5
+ * Modified and integrated in "Inray":
6
+ * - Evgeniy Bushin
7
+ */
8
+ /***/
9
+ /**
10
+ * Converts a string into PascalCase.
11
+ *
12
+ * @example Usage
13
+ * ```ts
14
+ * import { toPascalCase } from "inray/text";
15
+ *
16
+ * toPascalCase("deno is awesome"); // "DenoIsAwesome"
17
+ * ```
18
+ *
19
+ * @param input The string that is going to be converted into PascalCase
20
+ * @returns The string as PascalCase
21
+ */
22
+ export declare function toPascalCase(input: string): string;
23
+ //# sourceMappingURL=to_pascal_case.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"to_pascal_case.d.ts","sourceRoot":"","sources":["../../src/text/to_pascal_case.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,KAAK;AAML;;;;;;;;;;;;GAYG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAGlD"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Original library: denoland/@std
3
+ * - Copyright (c) 2018-2026 the Deno authors. MIT license.
4
+ *
5
+ * Modified and integrated in "Inray":
6
+ * - Evgeniy Bushin
7
+ */
8
+ /***/
9
+ // This module is browser compatible.
10
+ import { capitalizeWord, splitToWords } from "./_util.js";
11
+ /**
12
+ * Converts a string into PascalCase.
13
+ *
14
+ * @example Usage
15
+ * ```ts
16
+ * import { toPascalCase } from "inray/text";
17
+ *
18
+ * toPascalCase("deno is awesome"); // "DenoIsAwesome"
19
+ * ```
20
+ *
21
+ * @param input The string that is going to be converted into PascalCase
22
+ * @returns The string as PascalCase
23
+ */
24
+ export function toPascalCase(input) {
25
+ input = input.trim();
26
+ return splitToWords(input).map(capitalizeWord).join('');
27
+ }
28
+ //# sourceMappingURL=to_pascal_case.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"to_pascal_case.js","sourceRoot":"","sources":["../../src/text/to_pascal_case.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,KAAK;AAEL,qCAAqC;AAErC,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1D;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,YAAY,CAAC,KAAa;IACxC,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IACrB,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC1D,CAAC"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Original library: denoland/@std
3
+ * - Copyright (c) 2018-2026 the Deno authors. MIT license.
4
+ *
5
+ * Modified and integrated in "Inray":
6
+ * - Evgeniy Bushin
7
+ */
8
+ /***/
9
+ /**
10
+ * Converts a string into snake_case.
11
+ *
12
+ * @example Usage
13
+ * ```ts
14
+ * import { toSnakeCase } from "inray/text";
15
+ *
16
+ * toSnakeCase("deno is awesome"); // "deno_is_awesome"
17
+ * ```
18
+ *
19
+ * @param input The string that is going to be converted into snake_case
20
+ * @returns The string as snake_case
21
+ */
22
+ export declare function toSnakeCase(input: string): string;
23
+ //# sourceMappingURL=to_snake_case.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"to_snake_case.d.ts","sourceRoot":"","sources":["../../src/text/to_snake_case.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,KAAK;AAML;;;;;;;;;;;;GAYG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAGjD"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Original library: denoland/@std
3
+ * - Copyright (c) 2018-2026 the Deno authors. MIT license.
4
+ *
5
+ * Modified and integrated in "Inray":
6
+ * - Evgeniy Bushin
7
+ */
8
+ /***/
9
+ // This module is browser compatible.
10
+ import { splitToWords } from "./_util.js";
11
+ /**
12
+ * Converts a string into snake_case.
13
+ *
14
+ * @example Usage
15
+ * ```ts
16
+ * import { toSnakeCase } from "inray/text";
17
+ *
18
+ * toSnakeCase("deno is awesome"); // "deno_is_awesome"
19
+ * ```
20
+ *
21
+ * @param input The string that is going to be converted into snake_case
22
+ * @returns The string as snake_case
23
+ */
24
+ export function toSnakeCase(input) {
25
+ input = input.trim();
26
+ return splitToWords(input).join('_').toLowerCase();
27
+ }
28
+ //# sourceMappingURL=to_snake_case.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"to_snake_case.js","sourceRoot":"","sources":["../../src/text/to_snake_case.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,KAAK;AAEL,qCAAqC;AAErC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,WAAW,CAAC,KAAa;IACvC,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IACrB,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;AACrD,CAAC"}
@@ -0,0 +1,81 @@
1
+ /**
2
+ * Original library: denoland/@std
3
+ * - Copyright (c) 2018-2026 the Deno authors. MIT license.
4
+ *
5
+ * Modified and integrated in "Inray":
6
+ * - Evgeniy Bushin
7
+ */
8
+ /***/
9
+ /** Options for {@linkcode truncate}. */
10
+ export interface TruncateOptions {
11
+ /**
12
+ * The string used to indicate where truncation occurred.
13
+ *
14
+ * @default {"…"}
15
+ */
16
+ suffix?: string;
17
+ /**
18
+ * Where to truncate.
19
+ *
20
+ * - `"end"`: `"very long te…"`
21
+ * - `"middle"`: `"very l…g text"` (useful for file paths)
22
+ * - `"start"`: `"…ery long text"`
23
+ *
24
+ * @default {"end"}
25
+ */
26
+ position?: 'end' | 'middle' | 'start';
27
+ }
28
+ /**
29
+ * Truncates a string to at most `maxLength` UTF-16 code units. When truncation
30
+ * occurs the suffix is included within the `maxLength` budget. Surrogate pairs
31
+ * are never split, so the result may be shorter than `maxLength` when a cut
32
+ * would land inside a pair. When the suffix itself contains surrogate pairs and
33
+ * `maxLength` is very small, the result can even be empty.
34
+ *
35
+ * Note: this function is not grapheme-cluster-aware. Combining characters, flag
36
+ * emoji, and ZWJ sequences may still be visually split.
37
+ *
38
+ * @experimental **UNSTABLE**: New API, yet to be vetted.
39
+ *
40
+ * @param str The string to truncate.
41
+ * @param maxLength The maximum length of the returned string (must be a
42
+ * non-negative integer).
43
+ * @param options The truncation options.
44
+ * @returns The truncated string.
45
+ * @throws {RangeError} If `maxLength` is not a non-negative integer.
46
+ * @throws {TypeError} If `position` is not a valid position.
47
+ *
48
+ * @example End truncation (default)
49
+ * ```ts
50
+ * import { truncate } from "inray/text";
51
+ *
52
+ * truncate("Hello, world!", 8); // "Hello, …");
53
+ * truncate("Short", 10); // "Short"
54
+ * ```
55
+ *
56
+ * @example Middle truncation
57
+ * ```ts
58
+ * import { truncate } from "inray/text";
59
+ *
60
+ * truncate("src/components/Button.tsx", 18, { position: "middle" });
61
+ * // "src/comp…utton.tsx"
62
+ * * ```
63
+ *
64
+ * @example Start truncation
65
+ * ```ts
66
+ * import { truncate } from "inray/text";
67
+ *
68
+ * truncate("Hello, world!", 8, { position: "start" });
69
+ * // "… world!"
70
+ * ```
71
+ *
72
+ * @example Custom suffix
73
+ * ```ts
74
+ * import { truncate } from "inray/text";
75
+ *
76
+ * truncate("Hello, world!", 10, { suffix: "→" });
77
+ * // "Hello, wo→"
78
+ * ```
79
+ */
80
+ export declare function truncate(str: string, maxLength: number, options?: TruncateOptions): string;
81
+ //# sourceMappingURL=truncate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"truncate.d.ts","sourceRoot":"","sources":["../../src/text/truncate.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,KAAK;AAIL,wCAAwC;AACxC,MAAM,WAAW,eAAe;IAC9B;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;;;;;OAQG;IACH,QAAQ,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,OAAO,CAAC;CACvC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,MAAM,CAgC1F"}
@@ -0,0 +1,116 @@
1
+ /**
2
+ * Original library: denoland/@std
3
+ * - Copyright (c) 2018-2026 the Deno authors. MIT license.
4
+ *
5
+ * Modified and integrated in "Inray":
6
+ * - Evgeniy Bushin
7
+ */
8
+ /***/
9
+ /**
10
+ * Truncates a string to at most `maxLength` UTF-16 code units. When truncation
11
+ * occurs the suffix is included within the `maxLength` budget. Surrogate pairs
12
+ * are never split, so the result may be shorter than `maxLength` when a cut
13
+ * would land inside a pair. When the suffix itself contains surrogate pairs and
14
+ * `maxLength` is very small, the result can even be empty.
15
+ *
16
+ * Note: this function is not grapheme-cluster-aware. Combining characters, flag
17
+ * emoji, and ZWJ sequences may still be visually split.
18
+ *
19
+ * @experimental **UNSTABLE**: New API, yet to be vetted.
20
+ *
21
+ * @param str The string to truncate.
22
+ * @param maxLength The maximum length of the returned string (must be a
23
+ * non-negative integer).
24
+ * @param options The truncation options.
25
+ * @returns The truncated string.
26
+ * @throws {RangeError} If `maxLength` is not a non-negative integer.
27
+ * @throws {TypeError} If `position` is not a valid position.
28
+ *
29
+ * @example End truncation (default)
30
+ * ```ts
31
+ * import { truncate } from "inray/text";
32
+ *
33
+ * truncate("Hello, world!", 8); // "Hello, …");
34
+ * truncate("Short", 10); // "Short"
35
+ * ```
36
+ *
37
+ * @example Middle truncation
38
+ * ```ts
39
+ * import { truncate } from "inray/text";
40
+ *
41
+ * truncate("src/components/Button.tsx", 18, { position: "middle" });
42
+ * // "src/comp…utton.tsx"
43
+ * * ```
44
+ *
45
+ * @example Start truncation
46
+ * ```ts
47
+ * import { truncate } from "inray/text";
48
+ *
49
+ * truncate("Hello, world!", 8, { position: "start" });
50
+ * // "… world!"
51
+ * ```
52
+ *
53
+ * @example Custom suffix
54
+ * ```ts
55
+ * import { truncate } from "inray/text";
56
+ *
57
+ * truncate("Hello, world!", 10, { suffix: "→" });
58
+ * // "Hello, wo→"
59
+ * ```
60
+ */
61
+ export function truncate(str, maxLength, options) {
62
+ if (!Number.isInteger(maxLength) || maxLength < 0) {
63
+ throw new RangeError(`Cannot truncate: maxLength must be a non-negative integer, received ${maxLength}`);
64
+ }
65
+ if (maxLength === 0)
66
+ return '';
67
+ if (str.length <= maxLength)
68
+ return str;
69
+ const suffix = options?.suffix ?? '\u2026';
70
+ const position = options?.position ?? 'end';
71
+ if (maxLength <= suffix.length) {
72
+ return suffix.slice(0, adjustSplitBack(suffix, maxLength));
73
+ }
74
+ const budget = maxLength - suffix.length;
75
+ switch (position) {
76
+ case 'start': {
77
+ const start = str.length - budget;
78
+ return suffix + str.slice(adjustSplitForward(str, start));
79
+ }
80
+ case 'middle': {
81
+ const leftLen = Math.floor(budget / 2);
82
+ const rightLen = budget - leftLen;
83
+ const rightStart = str.length - rightLen;
84
+ return str.slice(0, adjustSplitBack(str, leftLen)) + suffix + str.slice(adjustSplitForward(str, rightStart));
85
+ }
86
+ case 'end':
87
+ return str.slice(0, adjustSplitBack(str, budget)) + suffix;
88
+ default:
89
+ throw new TypeError(`Cannot truncate: position must be "end", "middle", or "start", received "${position}"`);
90
+ }
91
+ }
92
+ /**
93
+ * If `index` lands on a low surrogate, back up one position so we don't split
94
+ * a surrogate pair.
95
+ */
96
+ function adjustSplitBack(str, index) {
97
+ if (index > 0 && index < str.length) {
98
+ const code = str.charCodeAt(index);
99
+ if (code >= 0xdc00 && code <= 0xdfff)
100
+ return index - 1;
101
+ }
102
+ return index;
103
+ }
104
+ /**
105
+ * If `index` lands on a low surrogate, advance one position so we don't split
106
+ * a surrogate pair.
107
+ */
108
+ function adjustSplitForward(str, index) {
109
+ if (index > 0 && index < str.length) {
110
+ const code = str.charCodeAt(index);
111
+ if (code >= 0xdc00 && code <= 0xdfff)
112
+ return index + 1;
113
+ }
114
+ return index;
115
+ }
116
+ //# sourceMappingURL=truncate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"truncate.js","sourceRoot":"","sources":["../../src/text/truncate.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,KAAK;AAwBL;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AACH,MAAM,UAAU,QAAQ,CAAC,GAAW,EAAE,SAAiB,EAAE,OAAyB;IAChF,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;QAClD,MAAM,IAAI,UAAU,CAAC,uEAAuE,SAAS,EAAE,CAAC,CAAC;IAC3G,CAAC;IACD,IAAI,SAAS,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAC/B,IAAI,GAAG,CAAC,MAAM,IAAI,SAAS;QAAE,OAAO,GAAG,CAAC;IAExC,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,IAAI,QAAQ,CAAC;IAC3C,MAAM,QAAQ,GAAG,OAAO,EAAE,QAAQ,IAAI,KAAK,CAAC;IAE5C,IAAI,SAAS,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAC/B,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,eAAe,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED,MAAM,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC;IAEzC,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC;YAClC,OAAO,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,kBAAkB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;QAC5D,CAAC;QACD,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACvC,MAAM,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;YAClC,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,GAAG,QAAQ,CAAC;YACzC,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,eAAe,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,GAAG,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,kBAAkB,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC;QAC/G,CAAC;QACD,KAAK,KAAK;YACR,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,eAAe,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC;QAC7D;YACE,MAAM,IAAI,SAAS,CAAC,4EAA4E,QAAQ,GAAG,CAAC,CAAC;IACjH,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,eAAe,CAAC,GAAW,EAAE,KAAa;IACjD,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC;QACpC,MAAM,IAAI,GAAG,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QACnC,IAAI,IAAI,IAAI,MAAM,IAAI,IAAI,IAAI,MAAM;YAAE,OAAO,KAAK,GAAG,CAAC,CAAC;IACzD,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;GAGG;AACH,SAAS,kBAAkB,CAAC,GAAW,EAAE,KAAa;IACpD,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC;QACpC,MAAM,IAAI,GAAG,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QACnC,IAAI,IAAI,IAAI,MAAM,IAAI,IAAI,IAAI,MAAM;YAAE,OAAO,KAAK,GAAG,CAAC,CAAC;IACzD,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * Original library: denoland/@std
3
+ * - Copyright (c) 2018-2026 the Deno authors. MIT license.
4
+ *
5
+ * Modified and integrated in "Inray":
6
+ * - Evgeniy Bushin
7
+ */
8
+ /***/
9
+ import { type CompareSimilarityOptions } from './compare_similarity.ts';
10
+ /** Options for {@linkcode wordSimilaritySort}. */
11
+ export interface WordSimilaritySortOptions extends CompareSimilarityOptions {
12
+ }
13
+ /**
14
+ * Sorts a string-array by similarity to a given string.
15
+ *
16
+ * By default, calculates the distance between words using the
17
+ * {@link https://en.wikipedia.org/wiki/Levenshtein_distance | Levenshtein distance}.
18
+ *
19
+ * @example Basic usage
20
+ *
21
+ * ```ts
22
+ * import { wordSimilaritySort } from "inray/text";
23
+ *
24
+ * const possibleWords = ["length", "size", "blah", "help"];
25
+ * const suggestions = wordSimilaritySort("hep", possibleWords);
26
+ * // ["help", "size", "blah", "length"]
27
+ * ```
28
+ *
29
+ * @example Case-sensitive sorting
30
+ *
31
+ * ```ts
32
+ * import { wordSimilaritySort } from "inray/text";
33
+ *
34
+ * const possibleWords = ["length", "Size", "blah", "HELP"];
35
+ * const suggestions = wordSimilaritySort("hep", possibleWords, { caseSensitive: true });
36
+ * // ["Size", "blah", "HELP", "length"]
37
+ * ```
38
+ *
39
+ * @param givenWord The string to measure distance against.
40
+ * @param possibleWords The string-array that will be sorted. This array will
41
+ * not be mutated, but the sorted copy will be returned.
42
+ * @param options Options for the sort.
43
+ * @returns A sorted copy of `possibleWords`.
44
+ */
45
+ export declare function wordSimilaritySort(givenWord: string, possibleWords: ReadonlyArray<string>, options?: WordSimilaritySortOptions): string[];
46
+ //# sourceMappingURL=word_similarity_sort.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"word_similarity_sort.d.ts","sourceRoot":"","sources":["../../src/text/word_similarity_sort.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,KAAK;AAGL,OAAO,EAAqB,KAAK,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAE3F,kDAAkD;AAClD,MAAM,WAAW,yBAA0B,SAAQ,wBAAwB;CAAG;AAE9E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,aAAa,CAAC,MAAM,CAAC,EACpC,OAAO,CAAC,EAAE,yBAAyB,GAClC,MAAM,EAAE,CAGV"}
@@ -0,0 +1,47 @@
1
+ /**
2
+ * Original library: denoland/@std
3
+ * - Copyright (c) 2018-2026 the Deno authors. MIT license.
4
+ *
5
+ * Modified and integrated in "Inray":
6
+ * - Evgeniy Bushin
7
+ */
8
+ /***/
9
+ // This module is browser compatible.
10
+ import { compareSimilarity } from "./compare_similarity.js";
11
+ /**
12
+ * Sorts a string-array by similarity to a given string.
13
+ *
14
+ * By default, calculates the distance between words using the
15
+ * {@link https://en.wikipedia.org/wiki/Levenshtein_distance | Levenshtein distance}.
16
+ *
17
+ * @example Basic usage
18
+ *
19
+ * ```ts
20
+ * import { wordSimilaritySort } from "inray/text";
21
+ *
22
+ * const possibleWords = ["length", "size", "blah", "help"];
23
+ * const suggestions = wordSimilaritySort("hep", possibleWords);
24
+ * // ["help", "size", "blah", "length"]
25
+ * ```
26
+ *
27
+ * @example Case-sensitive sorting
28
+ *
29
+ * ```ts
30
+ * import { wordSimilaritySort } from "inray/text";
31
+ *
32
+ * const possibleWords = ["length", "Size", "blah", "HELP"];
33
+ * const suggestions = wordSimilaritySort("hep", possibleWords, { caseSensitive: true });
34
+ * // ["Size", "blah", "HELP", "length"]
35
+ * ```
36
+ *
37
+ * @param givenWord The string to measure distance against.
38
+ * @param possibleWords The string-array that will be sorted. This array will
39
+ * not be mutated, but the sorted copy will be returned.
40
+ * @param options Options for the sort.
41
+ * @returns A sorted copy of `possibleWords`.
42
+ */
43
+ export function wordSimilaritySort(givenWord, possibleWords, options) {
44
+ // This distance metric could be swapped/improved in the future
45
+ return possibleWords.toSorted(compareSimilarity(givenWord, options));
46
+ }
47
+ //# sourceMappingURL=word_similarity_sort.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"word_similarity_sort.js","sourceRoot":"","sources":["../../src/text/word_similarity_sort.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,KAAK;AAEL,qCAAqC;AACrC,OAAO,EAAE,iBAAiB,EAAiC,MAAM,yBAAyB,CAAC;AAK3F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAM,UAAU,kBAAkB,CAChC,SAAiB,EACjB,aAAoC,EACpC,OAAmC;IAEnC,+DAA+D;IAC/D,OAAO,aAAa,CAAC,QAAQ,CAAC,iBAAiB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;AACvE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "inray",
3
- "version": "0.0.7",
3
+ "version": "0.0.8",
4
4
  "description": "Inray SDK",
5
5
  "private": false,
6
6
  "type": "module",
@@ -41,7 +41,10 @@
41
41
  "test:media-types": "vitest run --project media-types",
42
42
  "test:node-cron": "vitest run --project node-cron",
43
43
  "test:phonenumbers": "vitest run --project phonenumbers",
44
+ "test:random": "vitest run --project random",
45
+ "test:semver": "vitest run --project semver",
44
46
  "test:streams": "vitest run --project streams",
47
+ "test:text": "vitest run --project text",
45
48
  "test:unidecode": "vitest run --project unidecode",
46
49
  "test:valibot": "vitest run --project valibot",
47
50
  "test:yaml": "vitest run --project yaml",
@@ -468,10 +471,22 @@
468
471
  "types": "./dist/phonenumbers/mod.d.ts",
469
472
  "import": "./dist/phonenumbers/mod.js"
470
473
  },
474
+ "./random": {
475
+ "types": "./dist/random/mod.d.ts",
476
+ "import": "./dist/random/mod.js"
477
+ },
478
+ "./semver": {
479
+ "types": "./dist/semver/mod.d.ts",
480
+ "import": "./dist/semver/mod.js"
481
+ },
471
482
  "./streams": {
472
483
  "types": "./dist/streams/mod.d.ts",
473
484
  "import": "./dist/streams/mod.js"
474
485
  },
486
+ "./text": {
487
+ "types": "./dist/text/mod.d.ts",
488
+ "import": "./dist/text/mod.js"
489
+ },
475
490
  "./unidecode": {
476
491
  "types": "./dist/unidecode/mod.d.ts",
477
492
  "import": "./dist/unidecode/mod.js"