@duplojs/utils 1.0.5 → 1.0.7

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 (82) hide show
  1. package/dist/array/group.cjs +1 -1
  2. package/dist/array/group.mjs +2 -2
  3. package/dist/array/index.cjs +3 -0
  4. package/dist/array/index.d.ts +1 -0
  5. package/dist/array/index.mjs +2 -1
  6. package/dist/array/length.cjs +7 -0
  7. package/dist/array/length.d.ts +1 -0
  8. package/dist/array/length.mjs +5 -0
  9. package/dist/array/reduce.cjs +8 -9
  10. package/dist/array/reduce.d.ts +6 -8
  11. package/dist/array/reduce.mjs +8 -10
  12. package/dist/array/reduceRight.cjs +4 -12
  13. package/dist/array/reduceRight.d.ts +3 -30
  14. package/dist/array/reduceRight.mjs +4 -12
  15. package/dist/array/types/index.d.ts +1 -0
  16. package/dist/common/and.cjs +17 -0
  17. package/dist/common/and.mjs +15 -0
  18. package/dist/common/index.d.ts +4 -0
  19. package/dist/common/justReturn.cjs +12 -0
  20. package/dist/common/justReturn.d.ts +3 -0
  21. package/dist/common/justReturn.mjs +10 -0
  22. package/dist/common/kind.d.ts +2 -2
  23. package/dist/common/or.cjs +17 -0
  24. package/dist/common/or.mjs +15 -0
  25. package/dist/common/when.d.ts +2 -2
  26. package/dist/common/whenElse.cjs +17 -0
  27. package/dist/common/whenElse.d.ts +5 -0
  28. package/dist/common/whenElse.mjs +15 -0
  29. package/dist/common/whenNot.d.ts +2 -2
  30. package/dist/either/bool/create.d.ts +1 -0
  31. package/dist/either/bool/falsy.d.ts +2 -2
  32. package/dist/either/bool/truthy.d.ts +2 -2
  33. package/dist/either/future/create.d.ts +1 -1
  34. package/dist/either/left/when.d.ts +2 -2
  35. package/dist/either/nullable/create.d.ts +1 -0
  36. package/dist/either/nullable/empty.d.ts +2 -2
  37. package/dist/either/nullable/filled.d.ts +2 -2
  38. package/dist/either/nullish/create.d.ts +1 -0
  39. package/dist/either/nullish/empty.d.ts +2 -2
  40. package/dist/either/nullish/filled.d.ts +2 -2
  41. package/dist/either/optional/create.d.ts +1 -0
  42. package/dist/either/optional/empty.d.ts +2 -2
  43. package/dist/either/optional/filled.d.ts +2 -2
  44. package/dist/either/right/asyncPipe.cjs +8 -4
  45. package/dist/either/right/asyncPipe.d.ts +13 -15
  46. package/dist/either/right/asyncPipe.mjs +8 -4
  47. package/dist/either/right/pipe.cjs +15 -8
  48. package/dist/either/right/pipe.d.ts +13 -14
  49. package/dist/either/right/pipe.mjs +12 -5
  50. package/dist/either/right/when.d.ts +2 -2
  51. package/dist/either/whenHasInformation.d.ts +2 -2
  52. package/dist/generator/asyncReduce.cjs +4 -12
  53. package/dist/generator/asyncReduce.d.ts +3 -30
  54. package/dist/generator/asyncReduce.mjs +4 -12
  55. package/dist/generator/index.cjs +1 -0
  56. package/dist/generator/index.mjs +1 -1
  57. package/dist/generator/reduce.cjs +8 -9
  58. package/dist/generator/reduce.d.ts +8 -10
  59. package/dist/generator/reduce.mjs +8 -10
  60. package/dist/index.cjs +8 -0
  61. package/dist/index.mjs +4 -0
  62. package/dist/object/discriminate.d.ts +2 -3
  63. package/dist/object/entry.cjs +7 -0
  64. package/dist/object/entry.d.ts +2 -0
  65. package/dist/object/entry.mjs +5 -0
  66. package/dist/object/index.cjs +2 -0
  67. package/dist/object/index.d.ts +1 -0
  68. package/dist/object/index.mjs +1 -0
  69. package/dist/object/keys.cjs +4 -1
  70. package/dist/object/keys.d.ts +1 -1
  71. package/dist/object/keys.mjs +4 -1
  72. package/dist/pattern/result.d.ts +1 -1
  73. package/dist/pattern/when.d.ts +2 -2
  74. package/dist/string/index.cjs +2 -0
  75. package/dist/string/index.d.ts +1 -0
  76. package/dist/string/index.mjs +1 -0
  77. package/dist/string/length.cjs +7 -0
  78. package/dist/string/length.d.ts +2 -0
  79. package/dist/string/length.mjs +5 -0
  80. package/dist/string/types/index.d.ts +1 -0
  81. package/dist/string/types/stringLength.d.ts +2 -0
  82. package/package.json +8 -3
package/dist/index.mjs CHANGED
@@ -29,6 +29,10 @@ export { whenNot } from './common/whenNot.mjs';
29
29
  export { equal } from './common/equal.mjs';
30
30
  export { not } from './common/not.mjs';
31
31
  export { isType } from './common/isType.mjs';
32
+ export { and } from './common/and.mjs';
33
+ export { or } from './common/or.mjs';
34
+ export { whenElse } from './common/whenElse.mjs';
35
+ export { justReturn } from './common/justReturn.mjs';
32
36
  import * as index from './array/index.mjs';
33
37
  export { index as A };
34
38
  export { index as DArray };
@@ -1,8 +1,7 @@
1
1
  import { type EligibleEqual, type MaybeArray } from "../common";
2
- import { type GetPropsWithValueExtends } from "./types/getPropsWithValueExtends";
3
- export declare function discriminate<GenericInput extends object, GenericKey extends GetPropsWithValueExtends<GenericInput, EligibleEqual>, GenericValue extends EligibleEqual>(key: GenericKey, value: (MaybeArray<(GenericValue & GenericInput[GenericKey])> | MaybeArray<GenericInput[GenericKey]>)): (input: GenericInput) => input is Extract<GenericInput, {
2
+ export declare function discriminate<GenericInput extends object, GenericKey extends keyof GenericInput, GenericValue extends EligibleEqual>(key: GenericKey, value: (MaybeArray<(GenericValue & Extract<GenericInput[GenericKey], EligibleEqual>)> | MaybeArray<Extract<GenericInput[GenericKey], EligibleEqual>>)): (input: GenericInput) => input is Extract<GenericInput, {
4
3
  [Prop in GenericKey]: GenericValue;
5
4
  }>;
6
- export declare function discriminate<GenericInput extends object, GenericKey extends GetPropsWithValueExtends<GenericInput, EligibleEqual>, GenericValue extends EligibleEqual>(input: GenericInput, key: GenericKey, value: (MaybeArray<(GenericValue & GenericInput[GenericKey])> | MaybeArray<GenericInput[GenericKey]>)): input is Extract<GenericInput, {
5
+ export declare function discriminate<GenericInput extends object, GenericKey extends keyof GenericInput, GenericValue extends EligibleEqual>(input: GenericInput, key: GenericKey, value: (MaybeArray<(GenericValue & Extract<GenericInput[GenericKey], EligibleEqual>)> | MaybeArray<Extract<GenericInput[GenericKey], EligibleEqual>>)): input is Extract<GenericInput, {
7
6
  [Prop in GenericKey]: GenericValue;
8
7
  }>;
@@ -0,0 +1,7 @@
1
+ 'use strict';
2
+
3
+ function entry(key, value) {
4
+ return [key, value];
5
+ }
6
+
7
+ exports.entry = entry;
@@ -0,0 +1,2 @@
1
+ import { type AnyValue, type ObjectKey } from "../common";
2
+ export declare function entry<GenericKey extends ObjectKey, GenericValue extends AnyValue>(key: GenericKey, value: GenericValue): readonly [GenericKey, GenericValue];
@@ -0,0 +1,5 @@
1
+ function entry(key, value) {
2
+ return [key, value];
3
+ }
4
+
5
+ export { entry };
@@ -16,6 +16,7 @@ var pick = require('./pick.cjs');
16
16
  var deepDiscriminate = require('./deepDiscriminate.cjs');
17
17
  var getDeepProperty = require('./getDeepProperty.cjs');
18
18
  var discriminate = require('./discriminate.cjs');
19
+ var entry = require('./entry.cjs');
19
20
 
20
21
 
21
22
 
@@ -35,3 +36,4 @@ exports.pick = pick.pick;
35
36
  exports.deepDiscriminate = deepDiscriminate.deepDiscriminate;
36
37
  exports.getDeepProperty = getDeepProperty.getDeepProperty;
37
38
  exports.discriminate = discriminate.discriminate;
39
+ exports.entry = entry.entry;
@@ -15,3 +15,4 @@ export * from "./pick";
15
15
  export * from "./deepDiscriminate";
16
16
  export * from "./getDeepProperty";
17
17
  export * from "./discriminate";
18
+ export * from "./entry";
@@ -14,3 +14,4 @@ export { pick } from './pick.mjs';
14
14
  export { deepDiscriminate } from './deepDiscriminate.mjs';
15
15
  export { getDeepProperty } from './getDeepProperty.mjs';
16
16
  export { discriminate } from './discriminate.mjs';
17
+ export { entry } from './entry.mjs';
@@ -1,7 +1,10 @@
1
1
  'use strict';
2
2
 
3
+ var wrapValue = require('../common/wrapValue.cjs');
4
+
3
5
  function keys(object) {
4
- return Object.keys(object);
6
+ return Object.keys(object)
7
+ .filter((key) => !key.startsWith(wrapValue.keyWrappedValue));
5
8
  }
6
9
 
7
10
  exports.keys = keys;
@@ -1 +1 @@
1
- export declare function keys<GenericObject extends object>(object: GenericObject): (keyof GenericObject)[];
1
+ export declare function keys<GenericObject extends object>(object: GenericObject): (Exclude<keyof GenericObject, symbol>)[];
@@ -1,5 +1,8 @@
1
+ import { keyWrappedValue } from '../common/wrapValue.mjs';
2
+
1
3
  function keys(object) {
2
- return Object.keys(object);
4
+ return Object.keys(object)
5
+ .filter((key) => !key.startsWith(keyWrappedValue));
3
6
  }
4
7
 
5
8
  export { keys };
@@ -1,6 +1,6 @@
1
1
  import { type Kind, type WrappedValue } from "../common";
2
2
  declare const patternResultKind: import("../common").KindHandler<import("../common").KindDefinition<"pattern-result", unknown>>;
3
- export interface PatternResult<GenericValue extends unknown = unknown> extends Kind<typeof patternResultKind.definition>, WrappedValue<GenericValue> {
3
+ export interface PatternResult<GenericValue extends unknown = any> extends Kind<typeof patternResultKind.definition>, WrappedValue<GenericValue> {
4
4
  }
5
5
  export declare function result<const GenericValue extends unknown>(value: GenericValue): PatternResult<GenericValue>;
6
6
  export declare const isResult: <GenericInput extends unknown>(input: GenericInput) => input is Extract<GenericInput, Kind<import("../common").KindDefinition<"pattern-result", unknown>, unknown>>;
@@ -1,6 +1,6 @@
1
- import { type AnyValue } from "../common";
1
+ import { type AnyValue, type BreakGenericLink } from "../common";
2
2
  import { type PatternResult } from "./result";
3
- export declare function when<GenericInput extends AnyValue, GenericInputValue extends Exclude<GenericInput, PatternResult>, GenericInputPatternResult extends Extract<GenericInput, PatternResult>, GenericPredicatedInput extends GenericInputValue, GenericOutput extends AnyValue>(predicate: (input: GenericInputValue) => input is GenericPredicatedInput, theFunction: (predicatedInput: GenericPredicatedInput) => GenericOutput): (input: (GenericInput | GenericInputPatternResult | GenericInputValue)) => (GenericInputPatternResult | Exclude<GenericInputValue, GenericPredicatedInput> | PatternResult<GenericOutput>);
3
+ export declare function when<GenericInput extends AnyValue, GenericInputValue extends Exclude<GenericInput, PatternResult>, GenericInputPatternResult extends Extract<GenericInput, PatternResult>, GenericPredicatedInput extends GenericInputValue, GenericOutput extends AnyValue>(predicate: (input: GenericInputValue) => input is GenericPredicatedInput, theFunction: (predicatedInput: GenericPredicatedInput) => GenericOutput): (input: (GenericInput | GenericInputPatternResult | GenericInputValue)) => (GenericInputPatternResult | Exclude<BreakGenericLink<GenericInputValue>, GenericPredicatedInput> | PatternResult<GenericOutput>);
4
4
  export declare function when<GenericInput extends AnyValue, GenericInputValue extends Exclude<GenericInput, PatternResult>, GenericInputPatternResult extends Extract<GenericInput, PatternResult>, GenericOutput extends AnyValue>(predicate: (input: GenericInputValue) => boolean, theFunction: (predicatedInput: GenericInputValue) => GenericOutput): (input: (GenericInput | GenericInputPatternResult | GenericInputValue)) => (GenericInputPatternResult | GenericInputValue | PatternResult<GenericOutput>);
5
5
  export declare function when<GenericInput extends AnyValue, GenericInputValue extends Exclude<GenericInput, PatternResult>, GenericInputPatternResult extends Extract<GenericInput, PatternResult>, GenericPredicatedInput extends GenericInputValue, GenericOutput extends AnyValue>(input: (GenericInput | GenericInputPatternResult | GenericInputValue), predicate: (input: GenericInputValue) => input is GenericPredicatedInput, theFunction: (predicatedInput: GenericPredicatedInput) => GenericOutput): (GenericInputPatternResult | Exclude<GenericInputValue, GenericPredicatedInput> | PatternResult<GenericOutput>);
6
6
  export declare function when<GenericInput extends AnyValue, GenericInputValue extends Exclude<GenericInput, PatternResult>, GenericInputPatternResult extends Extract<GenericInput, PatternResult>, GenericOutput extends AnyValue>(input: (GenericInput | GenericInputPatternResult | GenericInputValue), predicate: (input: GenericInputValue) => boolean, theFunction: (predicatedInput: GenericInputValue) => GenericOutput): (GenericInputPatternResult | GenericInputValue | PatternResult<GenericOutput>);
@@ -32,6 +32,7 @@ var repeat = require('./repeat.cjs');
32
32
  var normalize = require('./normalize.cjs');
33
33
  var test = require('./test.cjs');
34
34
  var isIn = require('./isIn.cjs');
35
+ var length = require('./length.cjs');
35
36
 
36
37
 
37
38
 
@@ -67,3 +68,4 @@ exports.repeat = repeat.repeat;
67
68
  exports.normalize = normalize.normalize;
68
69
  exports.test = test.test;
69
70
  exports.isIn = isIn.isIn;
71
+ exports.length = length.length;
@@ -27,3 +27,4 @@ export * from "./repeat";
27
27
  export * from "./normalize";
28
28
  export * from "./test";
29
29
  export * from "./isIn";
30
+ export * from "./length";
@@ -30,3 +30,4 @@ export { repeat } from './repeat.mjs';
30
30
  export { normalize } from './normalize.mjs';
31
31
  export { test } from './test.mjs';
32
32
  export { isIn } from './isIn.mjs';
33
+ export { length } from './length.mjs';
@@ -0,0 +1,7 @@
1
+ 'use strict';
2
+
3
+ function length(input) {
4
+ return input.length;
5
+ }
6
+
7
+ exports.length = length;
@@ -0,0 +1,2 @@
1
+ import { type StringLength } from "./types/stringLength";
2
+ export declare function length<GenericInput extends string>(input: GenericInput): StringLength<GenericInput>;
@@ -0,0 +1,5 @@
1
+ function length(input) {
2
+ return input.length;
3
+ }
4
+
5
+ export { length };
@@ -5,3 +5,4 @@ export * from "./endsWith";
5
5
  export * from "./startsWith";
6
6
  export * from "./normalizeForm";
7
7
  export * from "./split";
8
+ export * from "./stringLength";
@@ -0,0 +1,2 @@
1
+ import { type Split } from "./split";
2
+ export type StringLength<GenericString extends string> = Split<GenericString, "">["length"];
package/package.json CHANGED
@@ -1,10 +1,13 @@
1
1
  {
2
2
  "name": "@duplojs/utils",
3
- "version": "1.0.5",
3
+ "version": "1.0.7",
4
4
  "author": "mathcovax",
5
5
  "license": "MIT",
6
6
  "type": "module",
7
- "repository": "https://github.com/duplojs/utils",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "git+https://github.com/duplojs/utils.git"
10
+ },
8
11
  "scripts": {
9
12
  "build": "rollup --config && tsc-alias -p tsconfig.build.json",
10
13
  "test:tu": "vitest --coverage",
@@ -46,7 +49,9 @@
46
49
  "vite-tsconfig-paths": "5.1.4",
47
50
  "vitest": "3.2.4"
48
51
  },
49
- "workspaces": ["integration"],
52
+ "workspaces": [
53
+ "integration"
54
+ ],
50
55
  "keywords": [],
51
56
  "engines": {
52
57
  "node": ">=22.15.1"